diff --git a/code/base-project/base-app/test.html b/code/base-project/base-app/test.html index 0cdbd84c..7dfb59a7 100644 --- a/code/base-project/base-app/test.html +++ b/code/base-project/base-app/test.html @@ -1,34 +1,716 @@ - + + + + + + 船司跟踪查询系统 + + + +
+
+

船司跟踪查询系统

+
实时追踪您的船舶位置与状态
+
+ +
+
+ + + +
+ +
+
+ + +
+ +
+ + +
+ +
+ +
+
+ +
+ + +
+ + +
+
🚢
+
请输入查询条件并点击"查询"按钮开始跟踪
+
+ + +
+
查询状态
+ +
+
+
1
+
发出请求
+
+
+
2
+
等待响应
+
+
+
3
+
处理数据
+
+
+
4
+
查询完成
+
+
+ +
+
+ + +
+
查询结果
+
+
+
船运公司
+
-
+
+
+
提单号
+
-
+
+
+
集装箱号
+
-
+
+
+
当前位置
+
-
+
+
+
状态
+
-
+
+
+
预计到达
+
-
+
+
+
+
+
+ + + \ No newline at end of file diff --git a/code/base-project/base-app/test2.html b/code/base-project/base-app/test2.html index f47df07b..3e882311 100644 --- a/code/base-project/base-app/test2.html +++ b/code/base-project/base-app/test2.html @@ -33,7 +33,8 @@ pageSize:30, onClickRow:onClickRow, showPageInfo:false, - showRefresh:false + showRefresh:false, + data: createMockData(100) "> @@ -57,20 +58,23 @@ let editIndex = undefined; // 初始化 Datagrid 数据 $('#dg').datagrid({ - data: createMockData(100), - onLoadSuccess: function(){ - let pager = $('#dg').datagrid('getPager'); - pager.pagination({ - showRefresh: true, // 隐藏刷新按钮 - showPageInfo: true, // 隐藏页信息 - onRefresh: function(pageNumber, pageSize){ - let newData = createMockData(300); - $('#dg').datagrid('loadData', newData); - - $('#dg').datagrid('clearSelections'); - $('#dg').datagrid('clearChecked'); - } - }); + data: createMockData(100) +}); +// 2. 获取分页控件并绑定事件 +var pager = $('#dg').datagrid('getPager'); +pager.pagination({ + showRefresh: false, + showPageList: false, + onBeforeRefresh: function(){ + console.log('onBeforeRefresh triggered'); + }, + onRefresh: function(pageNumber, pageSize){ + console.log('onRefresh triggered', pageNumber, pageSize); + // 刷新数据 + var newData = createMockData(300); + $('#dg').datagrid('loadData', newData); + $('#dg').datagrid('clearSelections'); + $('#dg').datagrid('clearChecked'); } }); diff --git a/code/base-project/base-app/~$箱数据2000行.xlsx b/code/base-project/base-app/~$箱数据2000行.xlsx new file mode 100644 index 00000000..1e0c8b3a Binary files /dev/null and b/code/base-project/base-app/~$箱数据2000行.xlsx differ diff --git a/code/base-project/base-app/箱数据2000行.csv b/code/base-project/base-app/箱数据2000行.csv new file mode 100644 index 00000000..745535c4 --- /dev/null +++ b/code/base-project/base-app/箱数据2000行.csv @@ -0,0 +1,2001 @@ +箱号,箱型,制造日期 +PCOD9683272,40HQ,2018-12-10 +WANY7746203,40HQ,2023-07-15 +ZRKP5321921,40GP,2017-12-27 +TSLI0699579,40GP,2010-08-25 +WMMH3875740,20GP,2012-05-02 +GFBH8400948,20GP,2013-12-07 +AWUP0048636,40HQ,2011-07-23 +UHPB3087280,20GP,2008-04-29 +UAOZ1566221,40GP,2015-07-11 +DGFY9848704,40GP,2006-03-21 +PJPV5111909,45HQ,2016-07-22 +ORRJ2504453,20GP,2003-01-30 +CEFZ8107130,45HQ,2020-11-20 +DBGM0924271,45HQ,2015-07-24 +KDXK7861954,20GP,2004-04-05 +GDHH6226012,20GP,2019-08-26 +QUMR4726225,45HQ,2007-05-30 +AHMC5758303,40GP,2015-11-14 +EXJX7415494,45HQ,2020-02-28 +BOQN2283499,45HQ,2006-12-21 +QVQY6358155,45HQ,2008-02-04 +PDQI3809868,40HQ,2004-01-01 +JBJG1945799,45HQ,2006-10-15 +FNFV0386520,40HQ,2014-10-09 +PIOK5663994,20GP,2004-02-14 +RDLW5104403,40HQ,2024-07-14 +VARC8140886,40HQ,2010-08-15 +WMJQ8081829,40GP,2023-12-25 +YCRM0413222,20GP,2007-04-07 +HUQF6085948,45HQ,2015-03-11 +HGCR2700087,40HQ,2001-09-08 +OWQV0164465,45HQ,2018-07-14 +MFAG1201364,20GP,2020-01-22 +MDYC1268850,40GP,2007-11-11 +SRTC9033151,40GP,2022-08-20 +DMWV4393756,20GP,2020-10-03 +TBIB7877644,40HQ,2008-11-11 +NXXT6741803,20GP,2013-12-19 +AJSC5854808,45HQ,2019-09-05 +WXRW8922602,20GP,2020-06-12 +NBUI5110933,40GP,2020-04-01 +QMNZ4255021,40GP,2012-07-01 +DLSB3361443,45HQ,2019-09-22 +LBNV2201725,40HQ,2014-09-16 +CTVZ3347038,40GP,2005-10-28 +UFAD4291746,20GP,2018-05-04 +TGAP7156327,45HQ,2015-11-23 +QRFD7234813,40HQ,2017-12-27 +JHGU6267610,40HQ,2009-07-26 +QSFB7447806,20GP,2005-06-21 +LROG4563467,40GP,2024-09-21 +DNXN3807112,40HQ,2024-01-30 +UDZB5098963,20GP,2019-02-21 +DFJV3073295,20GP,2022-07-12 +PBVT2603532,40GP,2023-06-08 +OMKL9310018,20GP,2013-02-20 +ASWN7844568,40GP,2002-02-07 +OUUH5290316,45HQ,2007-12-22 +DOIB4225005,45HQ,2016-06-26 +IHVV7247184,45HQ,2022-11-01 +UQSU8686242,40GP,2009-03-21 +LIWL1139865,40HQ,2014-12-28 +DHLK9171755,45HQ,2017-03-02 +QCPK6443690,40GP,2013-04-06 +YFQE5259659,40GP,2005-07-31 +YQLV1324667,20GP,2005-06-01 +MHMT3995794,40HQ,2016-08-27 +BWIT5286120,45HQ,2024-09-02 +JLCW9576993,40HQ,2017-01-25 +JVVO0564364,40GP,2017-10-17 +QKMK9280539,40GP,2015-10-11 +AUMO3446484,40GP,2013-08-16 +UXVH7630877,40GP,2015-04-28 +GRVB5009666,20GP,2015-08-26 +MUKH9185622,40HQ,2018-05-05 +SADU9962817,45HQ,2019-03-30 +LGST0095271,20GP,2005-05-16 +NODX0755928,20GP,2002-09-19 +SGFJ0258249,40HQ,2018-06-22 +VXES4132756,40GP,2021-03-29 +JDPM9577513,20GP,2020-06-12 +BJAJ8511284,45HQ,2020-03-21 +MAFI2211303,40HQ,2005-10-20 +VWCZ0647783,40HQ,2003-03-13 +IURJ3562307,45HQ,2022-12-16 +EYYP8167530,40GP,2008-08-21 +THGG2787766,40GP,2013-01-09 +IGWH3310325,40GP,2004-02-18 +IXOW8271043,45HQ,2005-04-14 +UGOV3502917,40GP,2016-06-13 +DEOR0653209,45HQ,2007-02-14 +HSCY3214406,45HQ,2021-01-27 +NALO3402499,20GP,2009-01-15 +TOLT9057475,40HQ,2011-12-01 +ICGD7130096,45HQ,2023-10-06 +VSDB9208303,40HQ,2002-07-17 +VXCP1074477,40HQ,2004-04-18 +YYPU6589583,40HQ,2009-11-14 +DVXS6731933,40HQ,2019-01-21 +WQKH6005661,20GP,2023-01-11 +EDNS9431937,40HQ,2010-11-18 +LMMM1292502,20GP,2021-09-30 +ZWML4598486,45HQ,2001-03-25 +PMVJ7459874,45HQ,2018-02-28 +FRXI5396785,45HQ,2005-07-28 +CAPR0031480,45HQ,2010-04-30 +YUKG8039916,40GP,2005-04-07 +HLWX3378057,40HQ,2010-01-02 +IAKT9907562,40HQ,2009-12-10 +SRHB9916992,45HQ,2009-09-07 +QIPH6093114,20GP,2004-05-24 +CTYS7436966,45HQ,2016-10-26 +XIRL8979530,40HQ,2007-05-02 +WURO3285048,40HQ,2021-02-15 +XQEW6113687,40GP,2005-06-25 +MPXL3531928,40HQ,2000-04-15 +CKHH1896506,40GP,2017-06-05 +OVTS1950839,40HQ,2017-12-25 +WWWZ8081374,40GP,2007-12-27 +LVJI1758103,20GP,2005-08-25 +VRDX6220046,40HQ,2006-12-08 +MERH8077746,45HQ,2015-12-12 +LKKH8269217,40GP,2024-06-02 +POVM3895342,20GP,2022-03-06 +UNOW6728940,45HQ,2018-11-30 +JSBU1660107,20GP,2003-09-17 +PADM4647802,20GP,2007-05-31 +GJER0194360,40HQ,2018-10-07 +UNSX3970473,20GP,2022-09-29 +NQIM2125585,40GP,2018-01-29 +QCQA9110680,45HQ,2013-01-31 +AHVO0454298,45HQ,2011-05-14 +BPRW6022229,40HQ,2012-08-21 +JOMO9097339,20GP,2001-12-31 +GQEX9564443,45HQ,2012-12-20 +IMYA0116220,20GP,2024-09-10 +FNOP2964664,40HQ,2013-03-31 +QDHM1730019,40GP,2000-03-23 +BCJQ3927768,40HQ,2009-10-31 +NDMP3658692,40HQ,2000-01-24 +RGDT4600721,45HQ,2018-10-09 +UUGE7461870,20GP,2019-07-29 +GWYP3022871,40HQ,2021-01-28 +TUEJ9020413,40GP,2007-07-12 +OVUB1007937,40GP,2008-01-21 +NKAZ6540598,45HQ,2007-11-23 +QHIE7245159,40GP,2019-07-09 +YGLT4321998,20GP,2015-02-01 +BAPS3949675,45HQ,2002-10-10 +AUTX0491393,40GP,2006-10-02 +XEJO8647989,45HQ,2017-08-17 +GUHY7014823,20GP,2020-11-15 +HMXG3139863,40GP,2017-12-12 +OLCN2691749,45HQ,2014-10-02 +WMRF1837214,40GP,2019-02-19 +FKSS3646017,20GP,2024-09-27 +OIMV1174012,45HQ,2023-05-23 +BNFY3340160,40GP,2013-04-14 +UTMV6963847,45HQ,2006-03-11 +VIYM3572451,40GP,2005-03-17 +JKYH3570742,20GP,2023-02-04 +PTNX2905603,45HQ,2006-12-18 +PUSC4291731,20GP,2000-05-25 +IWMD6180179,40HQ,2009-06-01 +RKZY4722247,45HQ,2002-05-27 +WDQM8755949,40HQ,2012-05-27 +CBTP1361244,20GP,2023-04-09 +IXVC7462331,20GP,2012-10-05 +CXSY0236269,20GP,2002-07-07 +AABR1879179,20GP,2022-05-04 +NZJT2114310,20GP,2018-07-09 +SFFY9099547,40GP,2017-11-05 +AANA4457738,40GP,2011-12-24 +JGZM2374906,40GP,2003-11-16 +YTMN0950762,40GP,2023-03-10 +QFMP8836067,20GP,2010-05-11 +FEFN7091602,40HQ,2019-11-25 +VZIS1513015,40GP,2023-02-11 +EEGV4431198,40GP,2016-06-30 +ECSC4542969,40GP,2017-01-10 +ZMYC1870191,40GP,2012-07-02 +DPDL1758433,40HQ,2014-05-22 +HLIK1139117,40HQ,2000-09-20 +CQZB6191679,40HQ,2022-11-09 +MTIC6165168,40HQ,2006-04-26 +QFFM2444790,40HQ,2018-09-02 +KOOP2399091,40GP,2001-09-09 +FKDF3484813,20GP,2016-02-18 +QMGZ8126826,20GP,2008-07-18 +HAFL1429530,20GP,2023-05-30 +LZDQ9188830,40HQ,2023-07-13 +JCIP8555485,40GP,2011-07-17 +NUET8050082,45HQ,2009-03-29 +JAGF5415398,45HQ,2013-02-22 +VVAS7522135,40GP,2007-09-02 +WBVM1057899,40GP,2015-08-30 +HLPZ0391823,20GP,2024-06-21 +HGSB4104868,20GP,2016-09-20 +CYZN2687667,40GP,2012-04-23 +FJEF6661406,20GP,2005-11-25 +SPSN5697257,20GP,2018-03-28 +XGAF4393995,45HQ,2018-12-10 +IXLJ1202168,20GP,2013-01-20 +JLQY7677366,40HQ,2011-06-17 +KRIE5981632,20GP,2010-04-07 +DHUR3583305,40HQ,2001-10-06 +FBWZ4466975,40HQ,2013-11-05 +QVZN0965271,40GP,2023-10-16 +QIKS2564471,40HQ,2014-11-09 +AUYY5132009,40HQ,2009-11-07 +MTXJ4956007,20GP,2000-07-21 +XDAT8424161,40GP,2020-07-12 +FDJQ0385648,20GP,2020-12-31 +EUDY1543109,20GP,2022-02-12 +DWZG3534384,20GP,2003-08-13 +RWIW4442918,45HQ,2004-12-03 +PGCT6461046,45HQ,2005-06-23 +GDCE5697351,20GP,2022-06-26 +PFPZ6315837,20GP,2010-04-01 +RIUU1107908,40HQ,2002-07-26 +LGFZ0211144,20GP,2007-12-17 +SADG8444305,40HQ,2014-03-03 +LRGF3107181,40GP,2004-03-18 +YTHY3155361,40HQ,2002-06-24 +COBM2922006,45HQ,2019-02-14 +TDAQ6188736,40HQ,2017-04-13 +TZWD2089390,40HQ,2011-11-29 +XZIA0349622,40HQ,2010-11-19 +XFBJ4164895,40HQ,2006-08-24 +IZNW7385385,40HQ,2002-05-09 +XQKM5318870,20GP,2012-10-16 +TQVI2036775,45HQ,2008-02-17 +DKUF0154397,40GP,2003-02-11 +UFTP3037368,40HQ,2003-02-24 +NOAY5543573,20GP,2010-02-15 +CNMJ3692035,40HQ,2007-06-14 +KYNH0975467,40GP,2021-12-11 +WBTN4938767,20GP,2011-10-19 +VXVQ8692023,20GP,2007-10-04 +RVZJ6176580,20GP,2009-09-11 +NGGP1124944,40HQ,2016-12-08 +SIKE9539323,20GP,2018-12-06 +HQAB0734942,45HQ,2003-07-29 +CADW0006179,40HQ,2011-06-20 +EIRM5382501,40GP,2005-08-14 +QPQD6518676,40GP,2013-12-09 +RMVJ9359257,40GP,2023-05-25 +YNEA3640380,45HQ,2019-02-11 +QWGX3011407,40HQ,2015-01-26 +GIAI7114721,40GP,2022-05-02 +VGHC7945891,20GP,2023-07-10 +YQAW1831131,40HQ,2008-03-11 +KQSC7847325,40GP,2001-07-12 +GYTT4462239,40HQ,2024-02-18 +KBBW1290403,40GP,2012-05-19 +XZCR9591376,40HQ,2018-11-04 +QBLO8677145,40GP,2008-08-09 +XHTX6921245,40HQ,2014-11-14 +VGBD0699751,40HQ,2007-03-29 +YEER4566388,40GP,2024-11-27 +CKYD3827637,45HQ,2023-07-15 +UEKO3239144,40HQ,2019-08-26 +JCLO2373920,45HQ,2007-01-01 +TUCW0331036,40HQ,2002-01-04 +VQMC8276477,40GP,2006-11-16 +HOQT7188597,40HQ,2014-08-24 +WEJL4499930,45HQ,2000-02-11 +WFBK0061165,40GP,2011-11-27 +KMXR1366849,20GP,2008-01-27 +RIXK4098097,40GP,2002-11-08 +PNEM4741211,40HQ,2012-09-19 +DVLX5252381,45HQ,2004-06-29 +ABDM1623961,45HQ,2010-03-13 +DISA6002288,20GP,2018-08-29 +NSNH0916171,45HQ,2021-12-08 +GSBQ1210554,20GP,2005-02-23 +CZWE7125400,40HQ,2004-01-04 +TYOI4010852,40HQ,2004-03-07 +AOTG5141913,40GP,2019-06-27 +WVEO5066253,45HQ,2018-04-06 +NZLA7645745,40GP,2012-06-02 +CRQI6948258,45HQ,2016-08-10 +VGMN5926394,45HQ,2003-09-14 +WWYP2219114,40HQ,2014-09-29 +HIVT8531515,40HQ,2011-11-27 +SXLB2192642,40GP,2006-02-28 +RQIF5561252,20GP,2017-08-07 +VRSC7266064,45HQ,2007-08-08 +XFML8875286,45HQ,2023-07-03 +ORKE4886891,20GP,2012-05-26 +OCJB1150912,20GP,2008-06-18 +GKOR2498630,20GP,2003-08-10 +YRIT5025530,40HQ,2011-05-10 +JVNU4921864,20GP,2005-03-16 +IDWA5743387,45HQ,2020-05-11 +LPIQ6794900,20GP,2020-06-22 +KIWA7149670,20GP,2022-11-08 +OQHN5040607,20GP,2009-12-05 +OYMV3452478,40HQ,2017-04-22 +VIZR1249022,40HQ,2023-01-17 +XSWN4908219,40GP,2003-09-14 +WLYI1880632,20GP,2003-03-09 +SGMR5014508,20GP,2021-09-21 +XZTF1694463,40HQ,2002-05-07 +POIW2482904,40HQ,2001-07-30 +QDAI7306699,20GP,2024-12-20 +CLZO6643751,40GP,2021-01-14 +RKXY0373120,20GP,2021-10-23 +TTZP9650995,45HQ,2006-02-08 +BUJT5407344,20GP,2011-02-23 +QSPC5753139,45HQ,2018-08-29 +NWFL1330733,40HQ,2019-02-20 +HXVS8982374,40GP,2009-07-08 +VDTS4883577,20GP,2018-09-16 +ZUVZ9218956,40GP,2016-06-08 +OJBO2852046,20GP,2009-08-22 +WRYC8133521,40GP,2007-06-16 +PXCP2212842,20GP,2005-05-17 +NZVG8478431,40HQ,2011-08-03 +OFOG6574876,45HQ,2003-01-08 +GSWR6137319,20GP,2000-05-11 +DONN7069760,40GP,2024-05-04 +KXXW0862178,45HQ,2009-01-25 +PKID2784018,20GP,2003-11-29 +BESU4055595,40GP,2024-01-12 +RKSR0669012,45HQ,2016-03-01 +ROJL8036244,40HQ,2003-02-11 +DTST9234811,40GP,2008-04-30 +RTTC8611495,40GP,2019-07-01 +PIIM4040452,40GP,2008-03-17 +TZYF4212628,40HQ,2009-05-07 +MKHY1224999,20GP,2013-06-25 +ELAL3987092,20GP,2020-01-11 +SDMB3845480,45HQ,2024-03-21 +ETPA4870877,20GP,2017-04-14 +HRLY5559648,40HQ,2003-11-28 +YRAD8475851,40GP,2009-11-18 +NOXM2269638,40GP,2000-06-21 +NPHU2770828,45HQ,2018-07-25 +TXGW2599993,40HQ,2008-11-30 +OAIU0866771,20GP,2006-08-12 +JCUY9967501,40GP,2007-11-15 +YIQA7109748,40GP,2023-12-20 +UKRW4604930,40HQ,2012-05-04 +BPVO2515315,20GP,2001-01-01 +EQEP6294826,45HQ,2001-08-31 +TLOU1618700,45HQ,2021-01-02 +XLBM3976974,20GP,2010-09-19 +FKMO5562353,40HQ,2010-03-03 +OQXO8843657,20GP,2000-05-01 +WOBZ9216081,20GP,2007-05-21 +DAJI8793201,40GP,2014-10-15 +MRZL9336226,45HQ,2014-11-14 +CLIP3910256,20GP,2010-04-16 +ZEPD0944383,45HQ,2014-08-30 +JQOZ1617010,40GP,2017-07-27 +KVWR0801977,20GP,2021-05-02 +XPLU3941344,40HQ,2020-10-15 +VYZZ5259958,40GP,2016-09-16 +QRHC8020892,45HQ,2024-07-22 +VSHG8114356,40HQ,2003-12-14 +WJNQ4744333,20GP,2018-10-07 +GOTJ8149080,20GP,2023-02-26 +KBKU3159387,45HQ,2010-11-03 +USSX7731524,45HQ,2001-10-13 +VVJK9509640,40GP,2021-05-16 +JSWA7961762,20GP,2003-08-09 +GTPF7187411,40GP,2000-02-17 +MRTM2752094,40GP,2007-04-11 +JSNU6909925,20GP,2006-07-06 +XVNZ2713181,40GP,2018-09-13 +HAAZ2810613,20GP,2011-03-31 +YJIP8878296,45HQ,2013-11-06 +BXHO4818398,45HQ,2001-11-25 +PBEW2356827,40HQ,2004-12-06 +NNJK1475901,40HQ,2012-09-04 +IYMS5118807,20GP,2015-11-10 +ZIIG7905050,20GP,2021-07-26 +IISR1214490,40GP,2006-04-03 +UVVS4449570,40HQ,2013-01-19 +QRBJ1952715,40HQ,2020-08-19 +TBQQ8957901,20GP,2004-09-30 +GPHX0638670,40HQ,2013-02-28 +UZRS5425602,45HQ,2004-03-28 +FZUS5941209,40HQ,2009-04-26 +NYIU7987441,40HQ,2012-02-22 +OMZT5335336,45HQ,2013-11-23 +MQQA5312128,40GP,2000-10-11 +KAIY1326132,45HQ,2022-05-09 +JKLM3910179,45HQ,2020-07-25 +RAQQ0525685,20GP,2009-08-15 +TQYI7491025,20GP,2016-01-14 +TSQH3921366,40HQ,2014-02-03 +QRID3381566,20GP,2011-01-07 +NMGJ0283999,40HQ,2009-07-15 +BINC2758397,20GP,2016-12-18 +HHIN1647426,45HQ,2003-02-11 +IKDR6224768,40GP,2005-09-06 +HGQA5031086,40HQ,2013-07-05 +HCHP5424826,45HQ,2008-09-15 +DGIQ1613925,40HQ,2021-08-16 +IWZS1552234,45HQ,2024-02-28 +WAML1707153,40HQ,2006-09-04 +HFNW1084571,40GP,2005-11-13 +UFVW2555571,40HQ,2007-12-31 +TWRI3690272,40HQ,2017-10-23 +QFXD7768012,45HQ,2021-11-23 +PLRU9922003,45HQ,2008-01-09 +GJWI4113265,20GP,2001-07-16 +UXLF3467045,20GP,2017-11-12 +YDBO4631994,45HQ,2013-09-11 +KMWN1345945,20GP,2019-03-18 +HJYV2977258,40HQ,2024-09-20 +QEPC3945841,45HQ,2022-10-12 +GSGN2993633,20GP,2019-09-06 +DNHO8443338,40GP,2011-08-05 +SWNE7544384,40HQ,2022-02-07 +PUDI6994953,45HQ,2006-01-09 +KEXN8582437,40GP,2005-07-22 +YBXN0884552,40GP,2020-10-20 +EDSD3448835,20GP,2013-12-02 +FJVX3709585,20GP,2007-12-27 +URMI8210513,45HQ,2006-06-13 +QVCI9507664,40HQ,2021-07-09 +ZQYI2028780,45HQ,2013-11-11 +OPYX2652702,40HQ,2020-10-29 +UMIK3207940,20GP,2000-12-23 +YAPD5403555,40GP,2004-02-21 +JODR8330030,20GP,2023-02-19 +CXHC6800818,40GP,2016-03-07 +XMKI9033103,40GP,2002-08-01 +MIXX0910713,40HQ,2015-10-14 +ARGI3549121,40HQ,2014-02-05 +GJVE9758257,40GP,2022-10-16 +KBNA2876828,45HQ,2019-05-26 +LUXL2549268,45HQ,2016-12-24 +UNZK4111118,40GP,2005-12-14 +GZOP1505543,45HQ,2011-08-16 +LVHD5458818,45HQ,2009-10-04 +HQOD6270362,40HQ,2014-08-23 +HFHU1700269,45HQ,2003-09-24 +ZBPF8554153,20GP,2022-09-03 +EUFU5241238,40HQ,2016-04-16 +QRMG6201554,20GP,2023-06-15 +VSDX3506440,20GP,2011-08-23 +CQQJ5477482,45HQ,2000-01-02 +RODE1682910,40GP,2002-04-07 +TCMD4807131,20GP,2018-05-10 +TPPR7096039,40GP,2023-04-01 +PJPZ1697444,40HQ,2000-07-08 +PKKJ8832548,45HQ,2009-10-12 +YNQZ8382329,20GP,2006-10-18 +AAHZ5974227,45HQ,2022-04-13 +IJGW8551316,40GP,2021-01-25 +CYXR6264603,40HQ,2019-05-12 +ZPEZ2878742,45HQ,2017-11-29 +ARYN4305399,45HQ,2017-05-12 +WXNZ1295367,40GP,2001-10-22 +JZMA1913941,40HQ,2009-02-25 +HGGR3470853,40GP,2022-05-12 +OOYF0641025,45HQ,2008-07-17 +ZCTS4061547,45HQ,2002-10-18 +EBGS8897218,20GP,2024-10-22 +ZFCL5619391,45HQ,2017-05-16 +AWBB5621362,40HQ,2007-11-01 +VEDZ3886758,20GP,2023-11-21 +OJTR3380875,20GP,2013-05-06 +VGVQ5602433,45HQ,2004-05-03 +BBNZ2692889,20GP,2016-07-19 +CEZZ0992778,40GP,2007-10-21 +BHNZ8172420,40HQ,2016-12-30 +QBSS4971242,45HQ,2010-08-15 +GEUK4032766,20GP,2013-08-05 +FQEB8657470,45HQ,2016-05-22 +BUVS9112123,40GP,2000-08-04 +ULBV2660904,40GP,2011-03-29 +WODC9401706,45HQ,2011-08-01 +GJYK5112135,40HQ,2016-02-12 +NYJR3696809,20GP,2004-11-24 +RHDB5966810,40HQ,2002-03-31 +IASO4110557,40GP,2017-07-28 +DRBF0442832,40HQ,2017-03-26 +IUBY6642621,40HQ,2005-08-29 +JJGM1777912,45HQ,2004-02-29 +GKPN1188534,20GP,2003-04-15 +CIUM7016120,45HQ,2015-10-25 +UCQP2112836,20GP,2001-05-22 +UNUO5115381,20GP,2003-08-18 +PQNR4363404,20GP,2019-02-06 +YFLJ3391286,20GP,2011-03-25 +YEIP3303432,20GP,2019-05-12 +LJKA5950416,40HQ,2020-01-23 +SVLM6421442,45HQ,2008-07-07 +HNCU6580762,40GP,2011-04-12 +XDCY6988117,20GP,2022-09-13 +CDZG7352981,45HQ,2015-06-25 +COSX7466226,45HQ,2013-02-19 +GHHB3875610,40GP,2023-02-28 +OQRC2874253,20GP,2005-08-25 +OPQY0696786,40HQ,2018-09-10 +XRGH9105727,40HQ,2018-11-12 +BQVB3655030,20GP,2014-12-02 +APOX4065334,40HQ,2008-01-21 +DICM3952733,45HQ,2015-04-13 +NMLC8398046,40GP,2007-02-24 +LEAB0073989,45HQ,2013-12-10 +JUKZ8721890,40HQ,2020-01-29 +ZDKM2652853,40GP,2010-01-20 +RBJK9275119,45HQ,2016-04-28 +OFBI9961314,40GP,2006-05-31 +ALGD9034146,40GP,2024-01-06 +ZIMA6056697,40HQ,2012-09-13 +HYEX5262405,40HQ,2020-07-28 +OXTF3895134,45HQ,2014-09-30 +UTWX6377913,40GP,2012-03-14 +OCZZ8772728,20GP,2015-04-26 +YGMQ6484097,45HQ,2013-08-15 +BHDJ4655338,45HQ,2021-08-05 +FNAQ6003736,40HQ,2015-04-16 +SJUC7856042,20GP,2018-12-30 +FRXE2840136,20GP,2004-09-28 +KLHL1912245,45HQ,2010-01-27 +CQVY9324330,40GP,2019-12-10 +HTPE1384786,40GP,2004-02-23 +QIUP0933120,40HQ,2005-11-27 +CNNC8982549,40GP,2001-07-08 +HWUF6787948,45HQ,2021-06-26 +JQDO5554035,45HQ,2008-12-05 +ZPQZ5233787,40GP,2008-05-06 +BFIC7370983,40GP,2001-06-24 +EVLD2644282,40GP,2013-04-07 +ASSS8836310,45HQ,2019-05-15 +QOWP3900665,45HQ,2011-01-19 +LVHL7571819,40GP,2017-06-24 +GCBQ0906776,40HQ,2015-05-18 +WAIG4489153,40HQ,2010-08-31 +LNCK7718105,40HQ,2001-12-29 +WQOE3282376,20GP,2007-05-26 +JSLD9653661,40HQ,2002-02-27 +RFSX0423582,40HQ,2000-04-03 +SKKD3851125,40HQ,2012-10-27 +SKJT3459027,40HQ,2019-01-22 +YBRO6897509,40HQ,2012-05-02 +QQWW5147283,45HQ,2002-08-26 +DXOY9318596,40HQ,2002-01-17 +EOML0473146,40HQ,2007-05-30 +ESJF1033275,40HQ,2015-05-01 +YYGM1052853,40GP,2001-03-31 +JVSG5572709,40GP,2017-06-03 +DMPW8209099,40GP,2010-12-30 +NIMR5005487,45HQ,2002-06-30 +ENZR4318395,45HQ,2001-08-26 +FYBM2772696,40HQ,2019-06-01 +KVKL1333878,20GP,2002-01-14 +KXJX8501966,45HQ,2021-01-31 +TVOB5564764,20GP,2000-05-14 +GAHA9495023,45HQ,2009-01-16 +KKXU3685733,40GP,2009-10-06 +DPZW5083399,40GP,2007-11-14 +QPIT9538209,45HQ,2003-02-20 +FEMI4123286,45HQ,2020-03-06 +BISJ5245985,40HQ,2014-01-04 +KTVP4198355,40GP,2004-11-08 +OGBJ6265145,40HQ,2013-05-08 +KJCN2884874,20GP,2002-11-18 +QXRZ1063919,45HQ,2021-02-23 +QWDP7055860,40GP,2014-09-20 +LLUW5116680,40HQ,2014-05-22 +YOIB3853400,45HQ,2018-11-23 +GZHT9081275,40GP,2008-07-03 +FZUH7583175,40GP,2013-07-01 +NONC7686388,40HQ,2010-01-20 +BFPB8618179,45HQ,2010-11-14 +BMDP1995315,45HQ,2001-05-05 +OIAK9235676,40HQ,2021-11-03 +RYIU4464475,20GP,2013-02-14 +JXRO5545712,40GP,2010-08-06 +QBQN7310631,40GP,2007-06-08 +VPJG2575410,20GP,2013-09-24 +ZCGM8659887,40GP,2018-05-29 +GHZX6277364,40GP,2018-01-19 +YFJX4891631,45HQ,2008-10-06 +KPWN8392377,45HQ,2010-04-18 +YPRC3200713,40GP,2003-01-07 +DRQU2258966,40HQ,2002-05-27 +CPEM7866435,40GP,2004-12-28 +PJZF6709774,40HQ,2007-12-14 +XXVA2642999,40GP,2013-03-02 +XDOU1321936,20GP,2001-04-01 +ILUO9495911,40GP,2006-11-11 +PKZV6630921,40GP,2009-03-20 +CQVT1086043,20GP,2005-12-23 +PKVA2601593,40GP,2012-11-13 +RFCN2738456,40HQ,2001-03-12 +BXMY0860041,40HQ,2006-01-18 +DPDW9684751,40GP,2009-04-18 +VIFE5652835,40HQ,2013-03-04 +JSVP4307084,40GP,2000-01-07 +OTXA3833608,20GP,2024-12-24 +QDZL5182254,40GP,2014-09-13 +STWY7968491,45HQ,2003-05-25 +OUTQ5259135,40HQ,2009-06-23 +TESU0776952,40HQ,2005-02-22 +XFDU8239060,20GP,2010-06-05 +FARI8947501,20GP,2013-11-01 +FFMF6169336,20GP,2018-03-11 +HSTL9831339,40HQ,2002-08-16 +IHKO1678132,20GP,2021-08-18 +WYQP2536303,40GP,2014-08-14 +XFOO3216140,40HQ,2006-10-19 +QEXW9579212,45HQ,2009-12-23 +BJGG8550140,40GP,2011-07-31 +UCGZ4178435,20GP,2019-04-10 +PTPH5279008,40GP,2016-06-26 +HHEM0224359,20GP,2016-01-30 +OPXI8280422,45HQ,2002-04-25 +NZUJ7233598,20GP,2023-04-20 +NBVM4503903,20GP,2008-09-05 +JXLC0677967,40GP,2013-11-17 +EYMV4003426,40HQ,2014-07-23 +OUNL0012306,20GP,2021-11-04 +AMAR9128115,40HQ,2023-07-08 +RBSI9029375,40GP,2007-07-22 +FTTI5434029,40GP,2018-07-13 +RZIV0104135,40HQ,2009-07-02 +RLCD1419086,40HQ,2012-01-14 +CNDF8986365,20GP,2001-07-07 +MIWK6685232,40GP,2015-07-09 +FZFK3349821,40GP,2014-12-28 +FAKT9419229,40GP,2020-03-30 +NIKH3856473,40HQ,2016-05-01 +LCOI3799402,20GP,2016-06-05 +QRQV9527168,40HQ,2013-02-28 +RBEF9681938,40HQ,2007-01-10 +DNNT4812255,20GP,2024-04-19 +QCFI9532373,20GP,2014-02-14 +LSQQ5896539,20GP,2008-12-02 +TBRB3322300,45HQ,2021-08-11 +PZDJ6103208,40HQ,2024-07-23 +PMXX4243357,20GP,2001-10-02 +RURT2970358,45HQ,2001-10-27 +QCQJ5029455,45HQ,2023-05-21 +VNUV0301635,40GP,2001-01-02 +WVAR4464583,20GP,2023-01-07 +LERK9462487,45HQ,2000-01-14 +CQSL4469834,40HQ,2012-10-27 +WAIS2750137,40GP,2016-05-09 +OWIY0115516,45HQ,2007-09-03 +DOAE6186272,20GP,2011-10-04 +GVNK2942241,40HQ,2017-05-29 +VONR4018009,40GP,2004-10-02 +KMDT3857824,40GP,2004-01-11 +UWAJ9856772,45HQ,2019-08-24 +ERGR0061844,45HQ,2000-07-16 +SZIN5848457,40HQ,2018-06-05 +OIFQ5750040,40HQ,2010-12-23 +RHYZ4129517,45HQ,2001-10-25 +CKXZ7039868,45HQ,2004-05-14 +JKEC8102820,40HQ,2007-07-17 +FVZO3551631,20GP,2021-11-13 +HFFW3566377,45HQ,2012-02-25 +TISY5333250,40HQ,2001-04-12 +TWSN9144002,40HQ,2008-06-30 +MLQY3802136,40GP,2019-02-08 +HTKR9661112,45HQ,2007-04-07 +QOVR9044724,40GP,2013-02-26 +RFZM2939597,40GP,2008-08-30 +KVWQ8270228,45HQ,2022-07-18 +WDYW3338096,40GP,2008-08-16 +FTSD8850901,45HQ,2021-09-28 +GAWA8985741,20GP,2009-03-04 +YIGL7680900,40GP,2001-05-05 +VVMM1950412,40GP,2011-06-14 +XLUP0065029,40GP,2023-07-19 +JOMI2359117,40GP,2015-03-04 +ZYSJ0942503,45HQ,2016-04-01 +WWSI7874947,40HQ,2019-10-13 +SLUM2915922,20GP,2009-11-06 +CVLW8825977,45HQ,2021-09-06 +TDVP2090460,45HQ,2011-07-20 +YXKO0855144,40GP,2019-04-25 +RVZL7824575,40GP,2011-03-07 +AZWB5213456,40GP,2022-01-31 +IKOM4416921,40HQ,2019-03-28 +XHWB8843112,40HQ,2011-08-24 +DGTN4344477,45HQ,2003-01-12 +NUIK4936882,20GP,2010-05-06 +JMXQ7205695,40HQ,2021-05-30 +AHDZ5029760,40GP,2004-10-14 +USCS1542470,40HQ,2019-06-24 +MRMJ1393820,45HQ,2017-08-28 +NRJP6094074,40GP,2007-04-13 +DYVA6258945,45HQ,2009-07-13 +UBKQ3984650,20GP,2012-10-13 +YFSZ8094975,45HQ,2015-10-25 +FJSM2977189,20GP,2018-02-02 +SOAU1617077,45HQ,2007-05-10 +DJNJ6414727,20GP,2015-12-16 +JIWE7138334,40HQ,2016-06-05 +LFHD8268020,40HQ,2019-03-08 +RHRS6167428,40HQ,2002-10-27 +NZSB5285806,45HQ,2019-11-26 +ULAN4074360,45HQ,2018-11-14 +AUGD3882787,40GP,2011-12-06 +JOVI1999571,40GP,2001-01-30 +FCWI6224997,40GP,2010-03-29 +MMWH3979208,20GP,2021-06-23 +DQMX9110546,40GP,2021-06-17 +IRMR1581553,40HQ,2003-04-05 +XRWJ5236509,40HQ,2018-12-01 +UEVK8837314,20GP,2019-01-22 +CIVK4382110,45HQ,2016-03-20 +WBDV5006351,45HQ,2006-08-19 +JQOZ8416216,40HQ,2024-11-20 +JLCY5481318,45HQ,2017-07-29 +BYCF4987758,40HQ,2017-09-09 +PYTS6068303,40HQ,2001-07-30 +BTFG0444524,20GP,2006-01-05 +DTWO7716294,45HQ,2021-05-05 +VLAW1796830,40GP,2005-08-09 +WRXJ8213680,40HQ,2017-10-21 +FMVT8904839,40HQ,2011-06-14 +ABCL7335897,40GP,2021-11-13 +JKWP6311881,45HQ,2010-07-15 +JFBE1909126,45HQ,2020-08-05 +KYBS4224408,45HQ,2017-05-29 +PYCV6088471,40HQ,2021-06-02 +NWQM5555214,40HQ,2008-12-01 +TDMI6090085,40GP,2009-05-18 +VGAB8146954,45HQ,2005-03-31 +SKPQ1850894,20GP,2011-11-08 +AODG1056968,45HQ,2001-06-14 +MBIH4625814,40GP,2009-02-10 +UIKF7044663,20GP,2010-03-13 +TTVC5489818,45HQ,2005-06-15 +QCUN2341670,40HQ,2010-11-16 +QDMM5048943,40GP,2019-01-04 +EZJL0772265,45HQ,2007-01-15 +OWUZ5582153,40GP,2003-03-06 +IOLO5029185,45HQ,2015-07-17 +SDNP4173747,45HQ,2019-12-24 +IKPV9602242,40GP,2021-05-10 +FNOK3404853,45HQ,2020-10-17 +AFPA2172387,40HQ,2021-11-11 +FJHE0645842,40HQ,2006-04-17 +TXFJ9522834,40GP,2008-08-17 +UAXC5791263,45HQ,2021-05-20 +XVDU1678286,20GP,2003-08-22 +FZXR3231908,45HQ,2010-03-26 +KIBW6855475,40GP,2021-05-13 +XJLA3300037,40HQ,2022-03-03 +GQGL1204224,45HQ,2015-01-07 +VEYC5797850,20GP,2000-12-19 +MZOF9527874,20GP,2018-09-04 +YEXI3944185,40HQ,2016-12-25 +FVVY9049993,20GP,2016-08-16 +NCNH8078032,20GP,2021-08-09 +XSMA5666138,45HQ,2005-08-07 +LEPW2192375,20GP,2018-09-20 +TNEU1306144,40GP,2009-08-23 +WYFU4986484,40GP,2023-10-12 +ECON1059378,20GP,2006-11-06 +NNUM0112948,45HQ,2006-01-21 +BKMD6440912,40GP,2000-11-09 +DZND3929706,45HQ,2014-04-25 +APWK8447143,45HQ,2015-09-10 +SYWE5663912,40HQ,2017-06-17 +JEID4268865,20GP,2018-02-08 +REQE9265936,40HQ,2007-07-22 +YGVY9959353,45HQ,2024-10-07 +OLCS0942783,40GP,2005-12-16 +ZVCA4907676,40HQ,2003-10-08 +CIRP4300467,45HQ,2024-12-10 +SHXN1817152,45HQ,2001-03-19 +QMLV2242332,20GP,2019-10-02 +NCGF2430092,45HQ,2024-01-11 +EVJV0165908,40HQ,2006-11-10 +ENGV1208890,40HQ,2019-09-23 +VTEK8680418,20GP,2023-07-21 +LARU6493809,40HQ,2024-12-23 +NRFA8898646,45HQ,2010-02-02 +NHWD6997830,45HQ,2006-12-18 +GJUZ0628414,40GP,2021-10-19 +PBRJ7784237,20GP,2011-12-12 +GBPE4838692,20GP,2018-01-10 +ASZS6191862,20GP,2023-03-29 +LPYV9571448,20GP,2011-04-03 +LKYT9200720,40HQ,2010-10-07 +PLNE8120112,40HQ,2000-07-18 +AVDZ6282997,40GP,2007-08-16 +ZRML4261626,40HQ,2023-06-30 +NTLC4141640,40GP,2006-04-15 +XQHN1363771,20GP,2024-05-10 +JLVK0623246,20GP,2016-11-08 +YBQX4792698,20GP,2014-12-01 +OEKP2318418,40HQ,2017-08-08 +MQEH7075147,45HQ,2004-07-17 +JIVK9828930,45HQ,2015-01-07 +ZOTK8181125,40GP,2006-02-16 +POCL4922163,45HQ,2000-03-07 +QMWJ0414547,40HQ,2018-08-05 +CNES2940515,20GP,2007-03-22 +AIIK4931121,40GP,2007-02-27 +HUZR1565299,40HQ,2003-01-22 +ZHMP0525633,20GP,2006-08-07 +NHQP8548973,20GP,2017-02-13 +SHPP4006532,40HQ,2009-08-10 +VFXE6348036,40GP,2019-12-30 +LXNZ9399190,45HQ,2019-09-03 +YGLZ6849914,45HQ,2021-09-22 +JQCY0719511,20GP,2020-04-08 +BJHL1626350,40HQ,2024-09-04 +NOZQ2325996,40HQ,2009-06-18 +AZGJ7711708,40HQ,2023-04-27 +MDFC9538724,40HQ,2004-05-02 +BNWI2823811,40HQ,2010-04-26 +OLRM9745296,40GP,2013-08-14 +XRKF6421119,20GP,2014-11-02 +UURR3586779,40HQ,2013-01-26 +EVMQ6665646,20GP,2003-04-13 +DUVQ0686286,45HQ,2019-03-26 +FHJK4121687,20GP,2001-12-17 +WIXZ9954771,40GP,2015-06-05 +JYXR7805973,40HQ,2019-07-21 +WRTQ8989713,40HQ,2014-10-01 +CUWQ5821543,45HQ,2012-09-19 +WXPC1629174,40HQ,2012-07-30 +ZMDU4969551,45HQ,2008-01-06 +CBIO4727774,20GP,2018-10-06 +QBWS2449678,45HQ,2007-04-01 +MRUC8507082,45HQ,2008-09-03 +DEDJ8182618,40GP,2008-04-06 +TBDK6257989,20GP,2005-11-08 +DMTK5177994,20GP,2013-06-21 +KVUF3961560,45HQ,2006-08-03 +EIIY9335131,40HQ,2023-08-15 +ZOES8411769,20GP,2002-10-11 +YXPV7094124,45HQ,2024-09-05 +NXJB9941796,40GP,2007-12-17 +QRCO8248183,20GP,2011-09-21 +CPXA7149321,40GP,2015-12-03 +JMJY7001186,40HQ,2004-09-18 +RCPW6467104,20GP,2002-10-27 +XOMP3956717,40HQ,2014-12-09 +NEVJ1987223,20GP,2014-08-15 +GWEX5509710,20GP,2015-04-01 +VEVG6613066,20GP,2016-07-13 +ZWHN8185365,40GP,2020-09-16 +GYYQ4253960,40HQ,2010-04-03 +BSNR1477514,20GP,2008-05-11 +CSHU7356229,40GP,2001-04-17 +ZVUQ8334056,40HQ,2009-08-12 +LDTU8620515,40HQ,2012-05-19 +KCIR0674909,40HQ,2001-04-13 +IRVL3172756,40HQ,2015-09-29 +HNDL7959869,20GP,2002-08-05 +TDRO9588449,40HQ,2008-02-22 +KAFP2119054,40GP,2017-03-01 +FBLS8002557,40HQ,2005-04-08 +EAZN1328185,40HQ,2002-10-18 +LGWF0553840,40GP,2012-06-13 +RCKY9695659,40GP,2008-01-07 +UEOV6441843,20GP,2008-12-24 +ZIKP0159039,40HQ,2021-11-09 +WYYR3092454,40GP,2017-07-21 +TGTG9941045,40HQ,2015-01-06 +ZTQQ3613902,45HQ,2002-06-13 +CIQH4308433,40HQ,2014-09-11 +DJBX7264664,40GP,2015-09-11 +PHLP5313786,40GP,2021-10-06 +HOAE6959329,40GP,2023-11-04 +KSDI5745206,40GP,2004-01-29 +FHIP5377840,40GP,2010-08-29 +CKLX1046024,20GP,2004-04-03 +CGYF1321898,45HQ,2015-04-29 +ISIZ8838159,45HQ,2010-01-19 +TEHK0075578,40HQ,2020-01-15 +KNIO2064336,45HQ,2010-11-23 +TQDF3647915,45HQ,2013-06-11 +SNOV3045371,20GP,2014-01-16 +NSHH6654640,40GP,2003-02-07 +JZZG4123374,20GP,2009-02-04 +TOEQ3447225,40HQ,2023-12-27 +WPHP5129934,20GP,2014-01-25 +OZGU8176461,40HQ,2015-04-07 +YAOE5903378,40GP,2023-12-23 +BOMD1790198,45HQ,2012-03-26 +ZOTL7662025,40HQ,2015-08-28 +YYYP5145704,45HQ,2017-09-03 +GFJN6830343,45HQ,2015-10-15 +TJRT1857776,45HQ,2023-05-19 +QBEV1611332,20GP,2024-09-11 +JUSI6555595,40GP,2020-05-26 +FDSN9952593,45HQ,2006-10-17 +LNCT1708188,40HQ,2009-02-17 +XWRP8199974,45HQ,2016-09-26 +NBIF2018302,45HQ,2014-02-09 +ETFR8137577,40HQ,2018-12-12 +DTKW1296775,40HQ,2007-02-02 +SHUI7083438,20GP,2019-09-14 +KFAI0481637,40GP,2015-08-27 +YJOM3176291,45HQ,2020-01-21 +IJVX6189220,45HQ,2001-03-29 +GQBL4770073,40HQ,2022-11-10 +UBOF8681118,45HQ,2002-12-11 +CHBS6239901,40GP,2014-03-17 +AASW7520072,40HQ,2004-02-06 +OIFN7310663,45HQ,2008-06-13 +TGMU0293608,20GP,2014-07-21 +PFMH1143133,40HQ,2024-02-04 +STZH1423272,20GP,2018-01-16 +WKZC1163294,20GP,2022-08-14 +MXQE1621078,40GP,2012-01-07 +LWLG3845732,40HQ,2018-01-05 +NJXJ8834270,40GP,2016-09-14 +BTJQ8483172,45HQ,2024-06-06 +TGWP8980378,45HQ,2018-09-29 +BUMB8626427,40HQ,2019-09-20 +FIQY6962547,40HQ,2019-03-20 +MSIY7836779,45HQ,2018-04-08 +DJUF9809908,45HQ,2005-08-08 +BKJB7431848,45HQ,2024-11-08 +XCSA4953729,40HQ,2005-12-14 +ZFGZ0644845,20GP,2018-05-16 +RJQA9682150,40GP,2002-12-09 +HEGW4144655,45HQ,2000-04-22 +HZFS4505631,40HQ,2011-04-12 +CLQB1571435,40HQ,2020-09-28 +VRDN9402546,45HQ,2019-03-26 +BOVV1936805,40GP,2003-05-22 +OLHC6592433,20GP,2002-06-10 +IVLK5139861,45HQ,2009-07-31 +NKIR3212042,40HQ,2002-06-14 +TGCL2283076,40HQ,2014-07-02 +DUTY5457793,20GP,2000-04-02 +ZBRS4336001,40GP,2012-02-27 +GBHY3408749,20GP,2016-02-28 +GZXB6370169,20GP,2013-07-08 +OXPU1594118,40GP,2018-11-11 +NEOR4394697,40HQ,2014-02-01 +WDUV8127838,20GP,2017-12-21 +NQWM2123366,40HQ,2008-07-25 +MBNX0442414,40GP,2007-08-20 +SBAA8245532,40HQ,2018-08-06 +ISMW9342231,40HQ,2008-09-07 +QBQJ2430881,20GP,2012-10-30 +SXGM2967234,20GP,2006-06-29 +YIIS7335077,45HQ,2015-11-20 +BCYI9759822,40GP,2012-07-08 +TIZC9051293,20GP,2021-04-08 +OVVU9315604,45HQ,2024-07-07 +COJD0139679,20GP,2004-05-03 +JHUF1285790,40GP,2001-02-18 +CQAM1498781,45HQ,2007-04-01 +KBPD4404031,40HQ,2005-04-08 +BBGZ4940484,40GP,2001-11-16 +DFKF6260731,40GP,2017-02-22 +VIRD2148390,40HQ,2017-08-13 +YZTX7027620,40GP,2001-02-24 +YZWR8034908,40HQ,2007-05-20 +OYXY7424490,40GP,2013-01-06 +VUEZ1278766,40HQ,2010-08-11 +WWYD4604208,20GP,2009-08-23 +MUGF0218400,40HQ,2005-03-09 +ZQDD9063937,20GP,2022-03-08 +AHMU3415068,45HQ,2009-06-23 +BNAR4542880,40GP,2019-12-09 +BVTO4422712,40GP,2017-06-29 +TWCJ5069530,20GP,2019-05-09 +JOYA6944873,40HQ,2018-03-19 +OSAB3142242,20GP,2001-03-25 +NDXT7774976,40GP,2005-11-06 +KKRM9542400,40HQ,2007-06-04 +SZNP6140417,20GP,2018-12-19 +TJVE3370837,40HQ,2014-12-08 +ABGJ2672862,20GP,2012-09-15 +PCCW1207816,45HQ,2011-03-23 +GADQ8736530,40HQ,2018-06-20 +AVXN8818368,40HQ,2014-08-23 +LJJS1303673,40HQ,2020-07-12 +OCGZ6624179,20GP,2017-10-26 +OZSD4129470,45HQ,2011-03-16 +BRRN1561655,40HQ,2013-06-20 +ERUY9328441,20GP,2014-04-14 +JXQW3965010,40HQ,2002-08-10 +GXIW2314526,40HQ,2014-03-31 +SJHQ2304716,45HQ,2022-01-20 +NVTN6673950,20GP,2002-09-29 +YQDJ1745659,20GP,2024-02-08 +HLVW5431049,40HQ,2003-07-15 +FQMM3890449,40HQ,2024-12-16 +UGLQ6042902,45HQ,2021-08-29 +OGKL1512802,40HQ,2004-07-24 +KWHS0140931,40GP,2009-10-05 +BSMJ7316464,20GP,2007-07-25 +UCEX4151403,45HQ,2021-06-01 +IQNA6643691,40GP,2002-11-17 +GGQR5172977,45HQ,2013-12-16 +UMNU5869353,45HQ,2011-12-10 +ZYTR7143873,40HQ,2006-01-27 +BEKT8172235,40HQ,2009-11-30 +XWIM5571686,40GP,2013-04-04 +KUII5542107,40HQ,2016-07-09 +QPZQ5916899,40HQ,2008-10-03 +DFDF7674628,20GP,2020-06-27 +UCHQ9905258,45HQ,2007-05-15 +CEEW0981500,40GP,2000-04-11 +LBZD1126715,40HQ,2019-12-21 +AMZN3545741,40HQ,2003-08-30 +TWLT3713814,20GP,2011-03-07 +BQDM6574212,40HQ,2005-04-19 +DJDB9277303,40GP,2016-07-13 +OEEI9466280,40GP,2023-05-04 +GXKA6289636,20GP,2001-09-17 +JFQA4629502,45HQ,2018-09-29 +LJSO9430261,40GP,2022-08-01 +YUMX3851628,40GP,2023-01-21 +MZXP9014953,40HQ,2011-06-06 +RDGB7560720,45HQ,2018-10-02 +IJGW3641042,20GP,2012-12-19 +XIHW0129818,45HQ,2024-12-30 +VVSB8042148,45HQ,2007-02-06 +WZUQ9908602,40HQ,2012-01-30 +WUTY4957227,40HQ,2010-03-08 +ZYDA3172167,40GP,2003-09-27 +VBZC0756482,20GP,2006-09-07 +DXBJ5416583,40HQ,2002-09-18 +ICEL8255528,40GP,2003-06-11 +UTMI2783641,40GP,2000-06-10 +WMJY3138833,40HQ,2001-11-30 +VSRK2674249,40GP,2014-01-06 +GZYF6083735,20GP,2020-03-12 +XXXX6241850,40GP,2022-05-21 +HCTC8375755,40HQ,2012-09-01 +DHXQ1964348,40GP,2022-05-16 +QSRJ2331453,20GP,2002-02-15 +MUGG6316265,45HQ,2013-11-24 +SYTP9550239,40HQ,2002-02-20 +BMLO0733861,40HQ,2013-02-05 +VFGD7625639,45HQ,2002-11-23 +TRCF2611504,40GP,2010-02-13 +WMJB5997966,40GP,2013-07-19 +COGB4417865,40GP,2003-10-09 +PXGY2805786,45HQ,2008-12-25 +EURB5392018,20GP,2018-11-09 +XJZY0182061,20GP,2003-07-09 +NRDR9611237,40HQ,2013-10-19 +RVSA4556021,40HQ,2015-02-02 +SURB4862872,40GP,2005-01-26 +RQXH9368775,20GP,2002-02-28 +RTVI5402086,40HQ,2014-03-07 +ZXNQ3490070,20GP,2019-01-09 +MEWQ3282323,40HQ,2008-04-20 +MSIE8675172,45HQ,2002-05-27 +VSKB1987780,40HQ,2018-03-31 +SJYQ1883926,40HQ,2022-09-23 +ZTYT7325551,40HQ,2014-06-19 +NKZQ6844748,20GP,2002-11-27 +RTWV0419011,45HQ,2021-10-10 +UTYF1399417,40HQ,2005-01-17 +EIZP8235319,20GP,2017-06-29 +KKUU6303239,45HQ,2000-10-15 +GZBA2597644,20GP,2024-02-16 +IZUN0775002,40GP,2005-07-28 +KUZA9553640,40GP,2023-01-22 +XTJD5453470,20GP,2012-06-16 +ORGS7827593,20GP,2017-08-03 +OSOX2446024,40HQ,2016-11-28 +JQHS5249490,40HQ,2016-01-17 +GRMU9830403,40HQ,2005-12-19 +LAZE4458702,40GP,2003-02-04 +ZWXU0789493,45HQ,2003-03-21 +LZTK9070527,40HQ,2011-08-22 +KPSI5898715,45HQ,2023-02-04 +XXRF0495095,40HQ,2013-09-28 +ZBPI9931895,45HQ,2024-08-06 +LEFS5939981,40GP,2010-12-14 +FHRO5247079,45HQ,2024-04-10 +DWCY3508174,40HQ,2010-09-12 +WBGA4899403,40GP,2001-12-16 +JMKC1909865,45HQ,2024-03-27 +GHBQ2694397,20GP,2022-08-18 +SLML7394217,45HQ,2008-01-26 +EJTT9774247,20GP,2008-12-31 +OMUM8372531,45HQ,2001-07-30 +HRTA8570814,40HQ,2008-03-26 +WLHK7699432,20GP,2020-03-26 +PCJD7934647,20GP,2001-10-02 +EQCE4118423,40HQ,2014-05-06 +APSX4193823,20GP,2023-06-19 +BZFE0609706,20GP,2014-11-07 +HZWV6582015,40GP,2020-07-16 +MTKV6587075,40HQ,2011-09-10 +YWHK0027351,20GP,2020-01-19 +WTRQ8708117,20GP,2003-10-01 +PEXE1675305,40GP,2019-06-05 +GDNQ8306292,45HQ,2021-10-09 +UCOK0219760,20GP,2007-11-11 +LBFM3955280,40GP,2021-11-13 +FGJE9104241,45HQ,2003-08-30 +PRLX4894429,40GP,2020-09-24 +SCGS7165488,20GP,2008-12-01 +PEYJ4668793,40HQ,2010-06-11 +XTIJ5874246,20GP,2010-11-08 +PVFJ2715883,20GP,2016-08-28 +EESF6725174,45HQ,2004-05-21 +FIJJ9940687,20GP,2018-04-02 +NZCR5032846,40HQ,2017-04-30 +PKYX9690214,20GP,2008-12-31 +JNPW8252274,20GP,2014-04-20 +CYLO0535893,40GP,2018-02-08 +GDQK7129506,40GP,2005-08-03 +ABXR2014483,20GP,2006-08-10 +WTZV7720835,40HQ,2009-04-09 +WLFV2791630,20GP,2020-06-25 +JQHK0127089,45HQ,2012-02-01 +TWKM0895538,20GP,2020-11-02 +UHXK3987229,40HQ,2016-09-22 +JWDP6568850,20GP,2022-07-19 +NSWY6201719,40GP,2007-09-26 +WPLX5210899,20GP,2021-07-05 +APDD6534889,45HQ,2001-04-30 +QMRP0874607,40GP,2014-03-13 +ZKQT2694747,20GP,2005-03-01 +LANY9903472,40HQ,2003-05-10 +BHNF8078297,45HQ,2016-12-27 +EIBE5320373,45HQ,2019-06-04 +WCXG4764218,40HQ,2012-11-14 +CJHU8685350,40HQ,2014-07-28 +IZLH3750330,20GP,2002-11-24 +REXY6979897,40HQ,2011-01-10 +NODB5380830,40HQ,2019-05-09 +MRDL5810672,45HQ,2019-06-30 +DCZW5149522,40HQ,2023-06-29 +GOFI8619290,40HQ,2015-04-01 +MSGK7551908,40HQ,2014-03-03 +DXRK8956775,45HQ,2018-04-28 +QZQU8397236,20GP,2006-11-03 +GKXA3895980,20GP,2010-03-13 +NZEP2418949,40GP,2012-04-14 +YPJO3977355,40GP,2019-07-15 +OGDP7445556,40HQ,2020-05-03 +ETFG8822487,20GP,2016-06-24 +FWXZ8414434,20GP,2023-01-08 +HZER4707322,20GP,2017-12-19 +RLEA4828235,20GP,2023-04-14 +MKQP3037350,45HQ,2001-12-28 +DUKX0035560,20GP,2001-08-19 +VVQJ4484149,20GP,2022-02-09 +YYDP1928045,40HQ,2016-04-22 +YLSP3420799,45HQ,2010-08-10 +LGYA1566954,45HQ,2022-08-02 +WATU7222809,20GP,2011-01-14 +QDUA0936822,20GP,2018-11-17 +NPKX8974822,20GP,2024-11-24 +ERQF4387852,40HQ,2007-12-27 +ANUD9345325,40GP,2018-06-01 +YCFA1988677,40HQ,2013-05-18 +RXKR2453226,20GP,2022-11-03 +BXGT9325156,20GP,2007-09-03 +FNQM2331586,20GP,2015-07-15 +QZBP2273621,20GP,2020-06-24 +MFEY1595631,40HQ,2002-12-09 +CEQV6112644,40HQ,2006-10-10 +IDGJ3739902,40GP,2010-12-17 +NYMV4383723,40GP,2022-06-03 +YCRW3837508,20GP,2020-08-08 +YUYK4293563,45HQ,2012-07-09 +NZNA2152400,40GP,2018-11-30 +CXDW6652000,45HQ,2002-03-12 +ZTYU1205604,40GP,2019-05-12 +DREB1742663,40GP,2009-11-16 +CWIC4323400,20GP,2020-03-29 +OASB5631938,40GP,2006-10-15 +GFDT4052817,40HQ,2017-10-11 +UAEI8814983,45HQ,2020-03-07 +HABO9700477,40HQ,2004-01-22 +AEVA1097235,40GP,2013-02-02 +FEOU3162239,20GP,2013-07-22 +PIRP7904696,45HQ,2011-10-17 +BMWM2586107,40GP,2019-11-29 +DRIF0772831,40GP,2003-02-18 +YVZU4970003,40HQ,2020-10-08 +WXYD3162498,40HQ,2023-12-20 +KIEO7528093,20GP,2024-02-12 +JUIZ2431613,40GP,2002-07-04 +MRKH9592307,45HQ,2004-02-21 +SUAX4874022,40HQ,2024-06-11 +FOLB4724304,20GP,2018-11-03 +KPHV5601257,20GP,2013-07-29 +RJVI8939169,20GP,2018-07-26 +ACBP0358311,40GP,2015-12-10 +VDGM9881381,40GP,2005-01-25 +TESY4866535,20GP,2010-03-25 +YUCB4656281,40GP,2024-11-04 +CBOF8276394,20GP,2013-01-18 +HEQE7013949,45HQ,2008-05-29 +DIAK5061306,45HQ,2022-08-22 +KUYV7565768,40GP,2019-05-24 +OBUO6136632,40HQ,2008-02-26 +DHCI5440979,40HQ,2007-10-06 +OPFL2902120,40GP,2009-03-26 +NAGZ3255205,40HQ,2019-01-30 +AHYB3079571,40GP,2000-09-27 +LPSL7948414,40GP,2003-04-24 +POIF2028017,40GP,2006-12-01 +VGDM5402270,20GP,2014-11-28 +GPIS5886580,40GP,2011-01-02 +IQJK4252828,45HQ,2008-06-08 +QMBV2917028,45HQ,2016-12-26 +EJOC4133588,40GP,2008-04-25 +GLHG0274312,20GP,2008-11-11 +JEEL6968968,40GP,2006-06-07 +KYMQ0801023,40GP,2000-01-02 +NVNR5753414,45HQ,2009-09-23 +JGJV5380856,40GP,2002-12-31 +HJWR8701130,20GP,2007-04-25 +CQQY7095470,20GP,2006-10-28 +WXNT2111013,40GP,2023-08-22 +XQEV8061071,45HQ,2011-04-16 +INPD7630898,40GP,2015-06-22 +VEKV7309957,40GP,2007-02-02 +FFQB5734599,20GP,2003-07-06 +GNPN1411217,45HQ,2024-07-28 +IWWT7156229,45HQ,2017-12-24 +BBSE2699078,40GP,2024-11-14 +XSFG9976574,20GP,2021-07-24 +FXVS5015763,40GP,2017-06-04 +MWHI8345600,40HQ,2002-02-22 +GNSV0902319,45HQ,2001-03-17 +GKYK8042730,40GP,2001-07-12 +RTBB7885526,40GP,2020-10-31 +MSAR5381161,40GP,2003-09-27 +XPCJ3714274,40GP,2002-02-08 +TNCT8872987,20GP,2023-09-27 +WFLF5532340,40HQ,2016-09-11 +SWGE0155177,40GP,2015-03-18 +TQKG3235193,45HQ,2013-03-24 +CNIJ5554979,20GP,2022-11-21 +FDUD8068584,40GP,2021-01-05 +CXDJ6873646,45HQ,2011-09-02 +FOZU1286117,40GP,2008-03-17 +DKVG2038488,40HQ,2024-04-19 +GIBM8719407,20GP,2020-09-30 +SHHF7272957,45HQ,2003-11-20 +LHIM7343529,40GP,2017-04-29 +KNOY4581943,20GP,2000-05-12 +BWQY5018774,40GP,2008-02-13 +RHSK3538383,20GP,2008-06-07 +GIDA1860023,20GP,2001-09-17 +OHZK6946476,20GP,2003-08-04 +RHZD4185024,40HQ,2008-08-18 +WJFV4677240,40HQ,2000-07-15 +TDKT0144642,45HQ,2006-12-28 +DCDR9729660,45HQ,2009-09-25 +WPTW7126180,40HQ,2006-03-17 +LICR9930294,20GP,2002-08-14 +UUNF8573249,40GP,2007-05-07 +BJGP1928028,40HQ,2004-03-04 +KFKY4300191,40GP,2012-01-09 +YHPN9883152,20GP,2024-07-29 +OLVJ3062359,45HQ,2006-08-19 +BBMO1311240,20GP,2012-12-10 +MYPR2172168,45HQ,2009-04-24 +ENSN6282555,45HQ,2015-03-28 +BMDL0009096,40HQ,2010-10-09 +GIYD7977089,45HQ,2016-12-16 +GFOK3455225,45HQ,2013-01-05 +QONS0044018,20GP,2002-04-07 +GVHM6318764,45HQ,2001-11-06 +XCHL6766218,45HQ,2022-10-10 +QHYM2546308,20GP,2003-10-19 +LTYR8318735,40GP,2012-01-19 +XHJB0427302,20GP,2013-09-26 +ZVCD3119280,45HQ,2018-10-23 +EORN3726468,40GP,2009-06-13 +NFUT5634167,20GP,2013-10-04 +XDLV8670385,20GP,2018-05-04 +CGWI6678798,40GP,2024-09-09 +LYDL9781395,45HQ,2012-07-30 +YLLU2479759,40HQ,2007-02-28 +TRWW2987453,40HQ,2014-02-11 +GMMP4970548,45HQ,2000-01-12 +IXHY8202081,20GP,2021-02-24 +KPQB2528820,40GP,2006-12-21 +BZHJ7884227,20GP,2011-04-17 +OOBX5607957,40HQ,2004-03-11 +GDDP8448045,45HQ,2022-07-06 +TFMB7533713,40GP,2019-12-12 +LSVL4831030,40GP,2015-05-04 +VVIG4683474,20GP,2006-12-24 +EITL1547362,20GP,2019-11-30 +EHWD8981748,40HQ,2018-03-04 +VHAS9775959,45HQ,2019-01-13 +IQMR3843355,45HQ,2008-02-23 +DMTQ8196130,45HQ,2016-01-10 +YAFI2558712,20GP,2009-04-25 +XVFO2753404,40HQ,2010-08-07 +MNNN2655277,20GP,2017-02-22 +TYQT2917621,40GP,2020-03-12 +NGJY1867543,45HQ,2009-11-27 +YMQU8223279,45HQ,2014-01-25 +EICI8462555,45HQ,2006-03-31 +NXXG1286888,20GP,2008-06-18 +YAMW9006088,40GP,2015-12-05 +MWDO1032077,45HQ,2004-10-15 +XIIN0944172,20GP,2001-09-12 +KKTO5139966,20GP,2017-08-24 +SOFH2135296,40GP,2011-05-07 +OZVF0904804,45HQ,2009-11-26 +PQEM9110266,20GP,2011-08-27 +AGHP0875874,20GP,2017-02-11 +QYHB9112367,20GP,2005-06-19 +RUPO9346071,40GP,2000-12-21 +IHZC4451906,20GP,2018-11-21 +DPOD9209630,40HQ,2015-06-23 +UEMW5573189,40GP,2003-02-11 +VAWI5888487,20GP,2017-09-16 +IWYV0765604,40HQ,2016-01-29 +DEGJ0542310,20GP,2001-12-14 +SMQR5728580,40HQ,2008-12-17 +KHCS4119962,40HQ,2005-12-04 +AURV1265858,40GP,2005-01-21 +YPPU8454072,40GP,2010-06-09 +CEVS7047556,20GP,2003-07-08 +DUMC3527218,45HQ,2017-08-11 +QFCR5221682,40GP,2023-10-14 +DLGV5489012,20GP,2016-05-25 +OISH2970374,40HQ,2023-10-17 +LTVM3299489,40GP,2015-08-05 +ZLES2828466,45HQ,2005-09-17 +BYCF9540635,40GP,2005-10-25 +DDLQ2512621,45HQ,2019-10-31 +VUHQ6137308,40GP,2013-05-09 +DFGZ7547706,40HQ,2017-11-30 +MFTN3473584,20GP,2005-03-09 +COIW2960592,20GP,2003-09-22 +YYWR1137393,45HQ,2007-12-31 +VPQN3572815,20GP,2015-05-02 +QMON7039641,40GP,2003-01-18 +PTRM9678879,45HQ,2017-11-25 +ERBP1066770,20GP,2024-05-21 +AUAP0996004,40GP,2021-11-23 +IHFU5412706,45HQ,2016-05-02 +IZPC4661559,20GP,2017-02-23 +XYVJ8646918,40GP,2011-08-06 +HYZW8492273,20GP,2018-04-10 +ZKBY5044663,40GP,2015-11-01 +TQRZ3282308,40GP,2024-03-25 +POLR6002840,40GP,2022-10-20 +WUZP2168406,45HQ,2019-10-22 +NZFJ3709496,40HQ,2014-05-11 +GXYW3292882,40HQ,2002-10-06 +PWJV9501897,40HQ,2020-10-02 +CKLY1997526,45HQ,2016-04-18 +CDDC9163622,45HQ,2010-11-02 +FLKY1798618,20GP,2019-01-21 +DRPT6962411,40HQ,2006-11-16 +NDQY2651698,45HQ,2021-05-09 +PPKT5980898,20GP,2018-06-11 +OTXZ1225550,45HQ,2015-01-31 +BDAO3502296,20GP,2022-06-06 +XQWH7968774,45HQ,2017-07-11 +HZCC3556531,40GP,2005-01-13 +CFPF9232837,45HQ,2013-08-16 +AGZG9054003,45HQ,2009-06-05 +CQWC6865805,20GP,2023-07-15 +YIQA4884510,45HQ,2000-04-12 +RRUC0747446,40HQ,2005-08-30 +SJAD3066970,20GP,2022-04-11 +OVED2642838,40GP,2022-02-24 +AAMW1407980,40GP,2013-12-13 +JGWZ5685555,40HQ,2012-03-24 +WCLV8539878,40GP,2019-03-10 +LFQN1861887,40GP,2022-07-23 +YWPH4596139,40HQ,2014-07-28 +CTFE3439842,40HQ,2014-06-05 +GKQX1437771,40HQ,2000-10-02 +TQOK4724336,40HQ,2022-04-25 +GELZ6734101,20GP,2014-06-28 +ZJIX3554431,40GP,2004-10-02 +KHYL7909337,20GP,2009-08-25 +XSIY3571862,20GP,2024-09-08 +QFWE0382869,40HQ,2017-02-16 +SIUS3249494,45HQ,2007-01-19 +ZQMX2661595,45HQ,2017-03-22 +KOBG0795938,40HQ,2003-07-23 +ICSN3245789,20GP,2018-03-16 +HFPX6887185,40GP,2020-11-05 +ERTC9325246,45HQ,2012-05-04 +JGIV5261450,40HQ,2012-04-21 +YXNB1616342,45HQ,2017-03-20 +DSSV8691049,45HQ,2007-10-17 +IMZH8253660,45HQ,2008-03-13 +NYAL2472735,40GP,2020-06-05 +FQPQ7996186,20GP,2006-11-29 +IAZB9091620,40HQ,2021-08-23 +QUKJ8250800,45HQ,2012-02-27 +CWBW7406922,45HQ,2013-08-27 +AGXQ1951384,20GP,2012-11-03 +VKJR8033325,40HQ,2002-03-07 +ZWBA5386590,45HQ,2021-10-17 +IMTE5414169,40GP,2023-08-10 +LOTD2556842,45HQ,2011-11-29 +BZMP3080422,20GP,2001-10-22 +CBIY3486721,20GP,2009-04-05 +KBDC0056148,40GP,2008-02-10 +ITVQ4774449,45HQ,2015-03-21 +WLIQ6646853,40HQ,2012-12-26 +KCNN4691386,40GP,2017-10-10 +IKAU5688593,45HQ,2018-03-23 +UABF3496079,40GP,2023-10-03 +TJYM1878076,20GP,2000-05-24 +NMEH6153243,40HQ,2014-09-18 +PTBS6557463,40HQ,2018-06-13 +TQYA1260281,40GP,2017-09-12 +WRLS4951226,40HQ,2018-04-21 +YGLL6789880,20GP,2015-04-20 +DNKH9606668,20GP,2023-04-18 +KNWJ5832002,40HQ,2011-02-19 +QMGS6760592,40HQ,2015-12-27 +WWSQ1562376,40GP,2006-05-27 +NXBH5275200,20GP,2016-05-21 +ZKQM9528154,45HQ,2020-06-01 +IUCK5920647,20GP,2001-04-24 +AWDM8481941,40GP,2018-06-13 +EHKH0339957,45HQ,2006-03-15 +KFTE2551220,20GP,2014-05-01 +BTHQ1482681,40GP,2021-12-02 +LSBC0537390,45HQ,2014-06-26 +SISX7801322,40HQ,2003-12-11 +QQJS1948773,20GP,2022-04-05 +OYWY0870748,40HQ,2004-11-23 +JFDG2339589,45HQ,2004-03-12 +EWGF3839253,20GP,2010-01-20 +BBKO2519872,40HQ,2005-03-25 +DGGO2731955,45HQ,2011-02-09 +JNQC8288762,40HQ,2009-05-23 +RPFT1925747,20GP,2022-05-25 +FPIM8887836,45HQ,2012-03-11 +NTLZ2735553,20GP,2013-03-25 +VTZH8636163,40HQ,2010-12-22 +XCTY2694795,45HQ,2014-09-20 +ONPR7269030,20GP,2022-06-20 +IUGW1995372,20GP,2021-05-28 +VFJV7914693,20GP,2003-05-02 +PKEP3158017,20GP,2000-03-09 +MGGX3687671,45HQ,2002-11-12 +NIOL6420674,45HQ,2011-01-30 +PHAG5249031,40GP,2023-11-28 +NQVJ7319168,20GP,2018-10-02 +VTRY1244751,20GP,2002-04-24 +HGPV9792157,20GP,2012-08-03 +ETSH8362287,45HQ,2017-07-18 +IGUT2999504,45HQ,2024-11-23 +ODWT1551970,40GP,2013-08-15 +IABI1148516,20GP,2022-03-27 +NPPA6305784,40HQ,2018-10-04 +IIFJ1332656,40GP,2005-01-09 +HJYA7264374,40GP,2004-08-22 +LKFD8675980,40HQ,2024-01-13 +VHHJ8629363,40HQ,2009-03-25 +JNDH1165267,45HQ,2009-11-19 +WMBE8905536,40GP,2008-04-08 +WCLV2616581,40HQ,2016-06-16 +LRGU2493929,20GP,2011-03-02 +XGYB5498808,45HQ,2012-03-06 +SWZV6865090,40HQ,2015-01-27 +IVBM2508726,40GP,2000-03-07 +TGCS0486990,20GP,2006-10-06 +AKSS4937804,45HQ,2013-11-19 +GUER1385192,45HQ,2018-01-07 +JEOG2953023,40GP,2016-05-08 +IXCM6983889,20GP,2019-05-16 +UPER6711386,20GP,2020-03-09 +INEK3470032,40HQ,2004-09-13 +AXDR9502243,40GP,2017-06-08 +FXYA9939295,45HQ,2002-05-07 +QCGS4236678,45HQ,2009-02-16 +NYYE1086570,45HQ,2002-12-09 +BKPX2109244,20GP,2009-12-28 +COCO4885680,45HQ,2011-01-05 +RNSG4962495,45HQ,2013-08-09 +FGDJ1278624,45HQ,2012-04-27 +KWGX8244145,45HQ,2021-03-28 +AVQW7881587,40GP,2001-11-13 +REOC3772422,45HQ,2022-08-02 +PXSJ2801022,45HQ,2002-11-19 +SPMW8681801,40HQ,2020-10-03 +NJAU6496537,40HQ,2016-11-24 +CYMM8457389,40HQ,2007-07-26 +DFFE7796982,40GP,2008-07-21 +XDNQ8952628,40GP,2013-01-07 +EGYM3829052,40GP,2018-07-16 +XRDP2880788,40HQ,2022-12-13 +JLTT6272788,40HQ,2005-10-02 +OYFS7986248,20GP,2009-01-12 +BDKM3431112,20GP,2021-05-29 +ETKH7149927,40GP,2006-03-06 +DZNG9395844,40GP,2022-08-12 +MFSX9565931,45HQ,2006-11-16 +VKCQ5277324,40HQ,2012-04-28 +IPGT1618033,45HQ,2003-04-17 +DZXW0552193,40GP,2012-01-31 +PBIG9338275,40HQ,2015-08-23 +XVAK3338541,45HQ,2000-10-28 +TYCX1184465,40HQ,2014-07-25 +JOBW6495571,40GP,2017-03-20 +RKCT7378692,20GP,2005-04-02 +LVTU5095406,40HQ,2012-01-31 +PBDE2305896,45HQ,2011-03-18 +ZNTT9050607,45HQ,2009-02-06 +LIYY6795709,20GP,2015-08-18 +HHZJ4303150,45HQ,2009-02-25 +QZRI7750559,40GP,2023-03-11 +RBDZ2822646,20GP,2000-11-03 +ZPXW9119984,40GP,2019-07-19 +EQMI1852740,40HQ,2023-07-19 +VUGU1457103,40HQ,2012-12-23 +ISOM4133048,20GP,2022-08-28 +KQMC2002215,40GP,2005-12-13 +JGRW2279275,45HQ,2004-04-05 +CICE9266155,40HQ,2017-04-16 +QKGJ5610304,20GP,2001-08-25 +EIOZ6361791,20GP,2021-02-06 +SOPL0620388,20GP,2023-09-22 +UXMW8916521,40HQ,2006-03-20 +FAEG2617102,40GP,2018-03-09 +GFQD6241877,20GP,2001-12-24 +VEOZ5653529,20GP,2005-03-10 +XUQS6415735,45HQ,2012-08-23 +VNBM9909118,45HQ,2023-03-08 +VAKI6867004,40HQ,2021-08-27 +XCOT5698599,40HQ,2022-01-19 +ICBD5121911,40GP,2007-09-23 +IVHN4981969,40GP,2024-02-11 +BBUL6262089,20GP,2004-12-14 +UWAD1328015,40HQ,2017-06-24 +KEUF7870483,20GP,2002-11-05 +FBAT7833106,45HQ,2002-05-29 +JXTH8622662,40HQ,2005-07-07 +RHUZ7274571,45HQ,2016-01-09 +CDXT4687028,45HQ,2007-01-02 +NGKZ7095873,20GP,2005-09-13 +ACTG7289614,45HQ,2015-11-21 +JVNZ1291425,20GP,2015-07-02 +NJXT8812551,40GP,2021-03-11 +IXDW4502311,40GP,2013-08-07 +LVQO5651515,20GP,2021-11-02 +GRKB1827325,45HQ,2000-02-13 +CUOC2688652,40HQ,2012-03-25 +KIZP4899915,40HQ,2005-07-25 +STAP9769366,45HQ,2015-01-26 +SMGP3020310,40GP,2010-09-19 +IZGF7836367,20GP,2015-05-01 +DQJI9643300,45HQ,2015-05-19 +WJXS8574508,20GP,2015-04-13 +HHFI3469849,20GP,2012-03-07 +EQUR6383874,45HQ,2006-12-24 +SJPD4965197,20GP,2009-07-20 +ALTY1932915,40GP,2021-03-05 +XKAY6337406,20GP,2014-08-16 +DLUF7098114,40HQ,2005-09-28 +RAIP9659592,40GP,2018-03-02 +LHUO3130765,40HQ,2004-09-28 +AXZO9857305,20GP,2013-01-11 +IBKS4639200,40HQ,2001-05-17 +SPQC2242922,45HQ,2022-09-05 +TDRG0503407,40GP,2015-01-21 +RTTV9433025,40GP,2006-01-24 +EOMH0523083,40GP,2007-05-30 +EIVM7864458,20GP,2018-04-30 +AAQG2126126,20GP,2016-01-29 +QAIA6866248,20GP,2007-05-17 +TSZC9832223,45HQ,2019-01-21 +TVRB9928847,40GP,2010-07-15 +FYND5782843,45HQ,2010-04-10 +HXIH3925670,20GP,2010-08-23 +BJNE3376763,20GP,2001-11-14 +TWZZ8323105,45HQ,2008-11-12 +PELX6004639,40HQ,2018-05-03 +GSAG9915825,40GP,2003-03-09 +VBSK3781169,20GP,2021-12-11 +DHCN8794073,45HQ,2020-03-23 +WRCG8192820,20GP,2012-07-27 +OJTD1134684,20GP,2024-10-18 +IWNG8134554,40GP,2017-09-16 +LXHR7931006,40HQ,2015-05-03 +QNCD6057142,40GP,2007-07-08 +LLOB0592606,40HQ,2017-07-10 +HATI1166578,45HQ,2007-12-04 +MKXK0785304,20GP,2014-10-14 +MUJI3864312,40HQ,2017-01-06 +WGRI0287861,40GP,2012-07-22 +KANG0875687,40HQ,2008-11-23 +BNHB2798797,40HQ,2018-09-10 +ZDJE5638640,40HQ,2016-12-04 +NAXA2872741,40HQ,2014-05-25 +JNFR7814972,40GP,2017-08-29 +EHZO7171775,20GP,2004-07-09 +ZRPW8400477,20GP,2020-03-30 +WLTH6705226,45HQ,2021-07-12 +JXUE2081419,40HQ,2003-12-02 +SLCT7714102,40GP,2011-12-01 +PSFG3617108,40GP,2024-11-10 +AYNG7287194,40HQ,2006-12-03 +JBYI0317694,45HQ,2020-09-17 +KBPW2010151,20GP,2003-08-31 +VRFE9868200,40HQ,2015-12-08 +OHPG5603960,40HQ,2012-09-15 +DQUX8971725,40GP,2009-11-30 +LBNJ5939134,45HQ,2001-07-10 +QYXH1896117,20GP,2015-12-14 +AUEB1283480,40GP,2001-08-14 +CWFA7019023,40GP,2014-05-26 +IFXE5332901,20GP,2002-12-16 +NYMN6914753,40GP,2000-01-07 +VGQP9779489,20GP,2014-10-04 +EMIZ1403665,40HQ,2017-05-14 +ZBSL4179352,40GP,2003-12-31 +QYXQ0385727,40HQ,2020-08-13 +CAMH3158354,40GP,2009-10-10 +HJTF6649667,40HQ,2023-04-30 +SNUH7638234,20GP,2005-10-11 +GEUK4784648,40GP,2024-05-27 +TEAA0871636,20GP,2014-07-02 +RQGA9048742,45HQ,2002-05-22 +VJPX8673799,20GP,2004-06-15 +QDFD9434332,40GP,2016-11-23 +OJIQ0342749,20GP,2016-07-12 +WFMJ6472853,40HQ,2014-03-02 +ZNYZ1973034,20GP,2020-02-02 +FIGP7312291,40GP,2003-11-09 +LGKP9522946,20GP,2006-01-10 +OSDF2844006,45HQ,2004-03-23 +OOOV0091325,40HQ,2015-06-22 +BLGT7778676,20GP,2010-07-22 +IARB5367766,45HQ,2013-12-21 +PRIV5974830,40HQ,2021-12-07 +TQDH2855865,20GP,2009-03-24 +INQG0872283,45HQ,2010-02-09 +DUYF4863572,20GP,2009-05-07 +DBCO6484213,20GP,2020-07-08 +QNQB3096729,40GP,2014-01-21 +MPFH3137341,20GP,2010-11-21 +FEQV9719498,45HQ,2013-07-31 +RKAZ7264615,45HQ,2005-02-11 +XQZJ6585638,20GP,2010-10-13 +XWRT2361398,40GP,2015-08-04 +ZZVH4536713,40GP,2000-10-04 +ESHQ4035556,20GP,2000-11-02 +NGPD5126076,40GP,2009-12-09 +MSOK3072130,40HQ,2001-10-26 +VTNC6423241,40HQ,2004-04-20 +FUDQ1621996,40GP,2010-12-18 +PDRC6898459,40GP,2010-09-10 +ZKIJ9257594,20GP,2018-09-15 +WBIV7125793,40GP,2009-04-18 +CMQY6849641,40GP,2003-01-05 +UTGJ0029127,45HQ,2017-08-15 +GNJF9276796,45HQ,2018-04-08 +HDTI5488190,40HQ,2006-03-20 +ORLG2701940,20GP,2008-01-03 +QEFV7323357,45HQ,2007-10-13 +VQQJ9347047,45HQ,2002-11-20 +BSIK9033122,45HQ,2003-05-25 +FFRA8474871,40HQ,2020-05-31 +QPUB3574467,40HQ,2003-12-27 +FMEV5709478,20GP,2020-02-02 +XRAX4810626,40GP,2002-05-19 +IKHQ0197043,40GP,2014-11-16 +OIFR3627406,40HQ,2007-04-15 +YSHU7959083,40HQ,2013-03-29 +YJJF0966242,45HQ,2010-09-14 +UPCJ9606843,40GP,2013-12-25 +QYMI1880855,40HQ,2015-05-13 +MQSI2580414,45HQ,2019-01-04 +TSEC3346665,20GP,2020-05-29 +EQNN1043707,40GP,2016-06-15 +VXUY8775194,40GP,2009-06-04 +DDIA1507264,40GP,2009-01-20 +PURA0374595,40HQ,2002-10-29 +YQWY8001676,40HQ,2001-08-18 +UOIF4483113,40HQ,2022-05-29 +CGNT3991359,45HQ,2012-03-21 +DLDP8332811,45HQ,2009-11-06 +QHJL0781260,40GP,2000-10-24 +UZHY5446756,45HQ,2007-09-06 +HLZG2222047,20GP,2024-09-22 +LJWC5448614,40GP,2002-03-14 +NUSR2354565,20GP,2018-04-11 +GPMI1372499,40HQ,2009-04-20 +QSVA8643685,45HQ,2004-04-02 +IPSI8226399,40GP,2001-06-20 +TFKF9288531,20GP,2009-05-27 +KIZE4840575,40GP,2008-11-15 +LDPA3533221,40HQ,2010-05-09 +TGBS3521295,40HQ,2004-03-27 +ILKM7458392,40GP,2003-08-25 +BNUQ9837940,20GP,2004-12-11 +WPGE5679976,20GP,2024-11-18 +ISMA1322892,40HQ,2004-10-06 +UYFQ1181678,45HQ,2024-03-03 +AJFD6659270,40HQ,2021-07-10 +MXIO7644347,40GP,2014-09-30 +CGVD7639726,40GP,2009-03-21 +OROQ5469476,40GP,2008-01-26 +DFZG4049433,40GP,2011-06-27 +MOEN3371661,40HQ,2015-02-14 +JTVX8584099,40GP,2013-02-04 +FOVB9322656,20GP,2005-07-07 +GQQB5344791,20GP,2012-05-15 +SWVH0254708,20GP,2009-01-16 +GCMR1301897,45HQ,2024-10-15 +JTGF6105373,45HQ,2023-05-27 +FZUG3866473,20GP,2023-04-21 +FGOQ5965004,45HQ,2024-03-13 +GUGU1671277,40HQ,2022-09-23 +CXYS1129604,40GP,2001-05-15 +SYRF8560166,20GP,2008-03-12 +NGFZ3292919,45HQ,2012-08-04 +BQOW6041266,20GP,2023-10-11 +UWIW9652728,40GP,2023-12-18 +MBFS2659097,45HQ,2009-07-16 +DZJF4148735,40HQ,2016-08-09 +EXUU9046914,40GP,2021-09-23 +YQKT2213770,20GP,2007-12-15 +MJXF9123321,40GP,2010-06-04 +PUTA8164231,40HQ,2024-10-29 +ZFIY7155069,20GP,2011-12-17 +EGZJ7131276,40HQ,2006-04-02 +VTMO2697363,45HQ,2001-03-06 +MBFV4058066,20GP,2018-05-24 +VFKB8049707,20GP,2017-03-18 +KAYL7792824,20GP,2008-05-23 +BTXU5666097,20GP,2022-06-14 +OPXG9939069,45HQ,2022-05-01 +LOBE6215743,45HQ,2008-01-18 +YQPA4645079,45HQ,2006-08-20 +SOAI7845555,20GP,2015-01-27 +WTHK3163474,20GP,2014-09-23 +ZHMS0943403,20GP,2010-02-19 +BGJF6359360,40HQ,2015-03-09 +FQYE9719120,45HQ,2007-06-24 +QZPR7733840,40HQ,2013-07-04 +LPYX4573774,40GP,2012-06-27 +DUKL9081936,40GP,2023-11-19 +KRGF1438781,45HQ,2019-07-07 +BPGX4317949,40HQ,2014-12-30 +IIYN9345170,45HQ,2004-12-20 +YMEH0482112,40GP,2007-07-26 +LCYU9321256,40HQ,2007-08-20 +ZFDH5385115,20GP,2018-01-25 +LWLC1272157,45HQ,2022-06-08 +RWPI6786689,40GP,2018-05-28 +AGUD4140923,40GP,2008-12-01 +XHYB5135869,40GP,2001-07-13 +HYWJ8145638,40HQ,2007-02-17 +EYUR4352465,40GP,2018-10-24 +BKNP3510449,40HQ,2023-12-29 +QRZV9501882,40GP,2007-09-16 +LFOH5538424,45HQ,2021-01-27 +ZEUI5276401,45HQ,2014-12-17 +RGSC6910216,20GP,2019-01-10 +NTPK4501282,40GP,2020-03-03 +TGTL5141326,20GP,2018-08-17 +QTAH7834078,20GP,2001-04-13 +UWAW7994270,40HQ,2009-06-12 +GYOH1663406,40GP,2006-09-11 +WPFK0855500,40GP,2023-11-12 +SOTS3131539,40GP,2022-02-19 +URQH8013263,45HQ,2020-10-06 +JZBB5734464,40HQ,2009-12-13 +VITV1711478,45HQ,2018-10-22 +LRHJ4776783,20GP,2001-01-14 +UGFB5943614,45HQ,2008-11-20 +OWNS7167589,45HQ,2021-04-27 +OPAQ3754591,20GP,2001-08-31 +IZJD6052565,40HQ,2020-07-28 +VAHY3892583,40HQ,2021-12-23 +VYIM3594898,40GP,2002-11-08 +EYDS7160999,40GP,2006-06-04 +GJMA0452036,45HQ,2014-12-15 +HHXX9037187,40GP,2021-11-18 +VSAV0641085,40HQ,2001-12-14 +KTYF7394269,40GP,2000-10-26 +PFNT5371225,40HQ,2018-12-28 +UHYO8137468,20GP,2017-05-15 +GAOX6747218,40HQ,2013-07-23 +XFOQ8357948,45HQ,2012-04-15 +VDXL5581306,45HQ,2019-08-30 +XNOC7984068,40GP,2015-10-29 +XONC2639151,45HQ,2018-02-28 +BBKJ0401261,45HQ,2017-11-21 +NXFD4142027,40HQ,2020-01-01 +VQLK4159031,45HQ,2002-09-16 +IHLU4402515,20GP,2017-03-28 +MDBQ4196655,45HQ,2006-07-24 +MVSU0245884,40GP,2004-12-17 +TLHC3342500,45HQ,2008-08-31 +MPAB2926397,20GP,2020-08-24 +PUWI3582716,45HQ,2023-08-14 +WSLS9961016,45HQ,2004-12-19 +DLQT2451733,40HQ,2023-02-25 +HTUH1190291,40HQ,2010-06-27 +DVRX1439873,40HQ,2012-04-22 +NFMA0033838,45HQ,2017-12-10 +MWLY1782922,45HQ,2007-11-24 +GZLA8817364,20GP,2023-02-10 +HYJF6165820,20GP,2013-08-09 +PEAY6490433,20GP,2019-09-19 +XZIF8423835,40HQ,2009-10-07 +LOBL4362958,45HQ,2005-11-01 +CXVF0741257,40GP,2023-02-15 +TCTI6582459,20GP,2007-05-02 +KSZI6626185,45HQ,2012-08-07 +SCJG5339551,40GP,2001-04-03 +UTQC7891023,40GP,2019-05-09 +OYMJ4347304,20GP,2009-10-08 +NTPF5169165,40HQ,2011-10-28 +HYJL3666594,20GP,2016-05-15 +CNBM7378723,20GP,2007-09-13 +QJDL1985599,20GP,2001-09-06 +RQED2565802,45HQ,2023-01-07 +ZMFA0331112,20GP,2005-08-01 +QRAT1254999,45HQ,2010-06-01 +FMUS3740511,40HQ,2002-02-26 +IPGG6166682,45HQ,2007-12-20 +UIQW7954063,40HQ,2011-06-13 +IKJR8139285,40GP,2019-05-02 +IXAE7336317,20GP,2000-01-05 +RSZF2922150,45HQ,2002-12-26 +YFML9880756,45HQ,2014-04-24 +WPCL9114372,40GP,2008-09-13 +YHKH0010020,20GP,2001-09-06 +QEEG4890223,45HQ,2024-05-18 +JAIC3882169,40GP,2004-07-02 +IDMG1080469,45HQ,2012-07-30 +FYCE5037104,40GP,2024-03-15 +HQKD4826115,20GP,2005-04-19 +WUXD8789382,40HQ,2008-07-23 +IMIX5730737,45HQ,2016-10-10 +FRRQ3952591,40HQ,2003-11-05 +JYRI3412366,20GP,2013-05-03 +YHSN8298264,40HQ,2011-07-16 +VGZK9814838,40HQ,2020-06-04 +CPSX5296049,40HQ,2023-12-17 +ERIM4937421,40GP,2022-01-03 +LRBT8664680,45HQ,2011-06-11 +FDPV9070521,40GP,2020-05-24 +CFEH0990059,45HQ,2017-05-14 +FNHY0013123,40HQ,2011-05-06 +EQGN9812519,40HQ,2022-10-15 +NXLG1587640,20GP,2002-10-12 +HOVI8210269,45HQ,2023-10-01 +FZPJ1094434,40HQ,2008-05-08 +PBKU8890301,20GP,2024-05-24 +WXLA1385406,45HQ,2019-10-05 +BUGX7629730,20GP,2018-04-21 +FEUP3054717,40GP,2016-04-01 +VDTF0821113,20GP,2008-05-19 +VLRS7617847,40HQ,2016-05-07 +EAFW7466488,40HQ,2019-07-23 +IUSD0129571,20GP,2010-03-04 +ORCM0225491,20GP,2007-08-06 +ERBK2070288,40HQ,2021-09-13 +EVTL4893864,20GP,2013-11-10 +VQOA4865106,45HQ,2017-08-31 +EMTC7630379,45HQ,2006-09-17 +FIOE6143958,40GP,2023-02-28 +ROBS5412681,45HQ,2003-08-06 +ZQFH2953424,40GP,2018-03-11 +SLAH1397751,40HQ,2013-10-23 +KJXU0605280,20GP,2017-06-19 +WIAT5404025,20GP,2018-04-01 +JDXR0156604,40HQ,2017-03-28 +BWZG9220266,45HQ,2014-04-08 +MHFV7981127,20GP,2002-03-27 +QTTS5908144,40HQ,2004-05-01 +KFGX5865195,45HQ,2016-03-13 +NLVP6233848,45HQ,2000-08-03 +SUDZ4003953,45HQ,2000-07-10 +EBGE7649512,40HQ,2009-12-08 +BEZF9770751,45HQ,2016-07-06 +IGAO2041815,20GP,2011-12-11 +CTJI7330115,40HQ,2001-09-07 +JPGI3877973,40HQ,2018-12-07 +YFBV2916382,20GP,2014-05-01 +TDQC0951884,40HQ,2004-11-25 +EIKA0965231,40GP,2005-07-01 +POAU5640362,40GP,2012-12-15 +KVVA5966027,45HQ,2018-08-30 +DONE5534567,40GP,2024-11-22 +VCML9741466,20GP,2001-08-28 +HEZI4090611,45HQ,2006-01-09 +FDDQ2617392,40GP,2003-05-19 +YOMI9346890,20GP,2007-04-08 +JZUQ1041044,20GP,2019-02-23 +DHMV0387589,20GP,2020-03-03 +ORYR6611756,40GP,2011-09-04 +DEDN0048341,40HQ,2012-11-15 +VJWT1420556,40GP,2024-12-18 +BGUM8163336,45HQ,2003-01-28 +LYUL0213122,20GP,2023-04-22 +AOQW8474269,45HQ,2002-06-27 +AOFX0283239,40GP,2018-06-21 +JOHI0844445,20GP,2000-08-22 +DCOV1724832,20GP,2007-10-04 +ASBN6641710,20GP,2009-06-07 +JFDV3399361,40GP,2000-08-05 +EYYY8898171,20GP,2011-10-21 +LIGE0850221,40HQ,2024-06-02 +IZIQ1122445,40GP,2020-11-21 +HDUS1715941,40GP,2020-09-30 +FETL8664670,20GP,2013-09-25 +VXNE0608850,45HQ,2024-05-06 +KMPJ8892994,20GP,2024-12-19 +AWXE4417078,20GP,2016-07-16 +BEUU2208119,40GP,2004-10-14 +NMOS6941745,40HQ,2022-07-09 +UYZJ3225303,40HQ,2009-06-28 +VJJD0215854,40GP,2007-11-30 +VIJA0322336,20GP,2022-11-14 +ZANB6939532,45HQ,2000-11-17 +ANGX5543698,20GP,2024-05-23 +LWVZ6752118,45HQ,2003-07-07 +XVDZ9156948,20GP,2011-07-17 +BKAR3946562,20GP,2008-03-19 +KZQU7315325,45HQ,2005-06-01 +RRIY3292374,45HQ,2005-04-26 +EQGS8827299,45HQ,2021-10-02 +XDAW9078691,20GP,2006-10-23 +NWQA0888658,45HQ,2005-09-05 +SISY8752328,20GP,2006-09-26 +EFJT4723858,20GP,2017-12-12 +UKQN8152524,45HQ,2013-11-08 +CMPB3497313,45HQ,2024-09-09 +OZVO0392499,45HQ,2018-04-28 +QTXH5186230,20GP,2010-02-06 +JTTL3627945,20GP,2021-07-09 +SKSJ8743281,40GP,2010-09-22 +RYJB4054639,40HQ,2007-02-13 +AFVY4299985,20GP,2023-03-01 +NWIV3006689,20GP,2007-09-28 +EJPU5855661,20GP,2023-10-28 +ZWNO9224064,45HQ,2019-06-29 +ADZU4370833,40GP,2010-12-23 +MLSK9247334,40HQ,2013-08-14 +UHEV6532208,40HQ,2014-01-15 +IUQJ7501054,40HQ,2001-03-21 +YSEA7042400,40GP,2009-07-26 +CDVM8690883,40HQ,2013-11-16 +UVBL0730932,40GP,2015-04-03 +KWBG7443072,40HQ,2024-12-02 +XZLU2906939,40HQ,2009-07-28 +FPKM7410356,20GP,2001-12-16 +JBJZ5789461,40HQ,2001-07-05 +VKTS3341165,20GP,2021-11-15 +YLKK6634370,20GP,2012-07-11 +FUAN7308127,40HQ,2019-09-04 +QPRO7294990,40HQ,2012-01-31 +QIAS9522049,40HQ,2014-06-18 +CTWX1599649,40GP,2010-01-29 +KVOD4702411,40HQ,2003-01-14 +RNQF3713492,40HQ,2000-06-06 +YSDC7071745,45HQ,2008-06-16 +ICFT7972687,40HQ,2001-01-19 +KSEE6298974,20GP,2001-12-30 +ZVFQ0266832,40GP,2013-11-06 +SFZI5300058,45HQ,2009-06-07 +ADTM0918958,20GP,2001-03-07 +QOSE7466078,40HQ,2020-07-12 +JAFD7573030,45HQ,2005-04-24 +MYTM4752768,40GP,2010-11-28 +PQIE6509359,20GP,2003-07-26 +FUQA6299212,40HQ,2023-10-25 +IJHU9951337,20GP,2012-10-18 +PHIC4840554,40GP,2009-10-27 +PLAY9434957,45HQ,2013-07-19 +RUJZ4233676,45HQ,2012-07-08 +BFOB2931851,40GP,2013-12-02 +KSEY9416604,40HQ,2004-03-05 +HRPZ3267891,40GP,2013-07-30 +OLDP7825598,40HQ,2005-12-04 +LSDJ1081774,40HQ,2023-10-31 +CKAQ1277415,40GP,2017-02-12 +YRTH7423218,40GP,2013-04-23 +BRAA4730185,40GP,2000-02-21 +OHSG6523860,40GP,2005-02-26 +KLLE7470324,20GP,2010-10-27 +OYRQ2870116,20GP,2002-12-27 +GCAV7989675,45HQ,2024-05-11 +NSTT1249541,20GP,2008-10-07 +HRUG4001373,20GP,2008-06-11 +YUHT1060463,40HQ,2024-01-23 +KKYZ3415598,40GP,2008-12-27 +OHXQ5845695,40GP,2017-05-18 +NBRU5884889,40HQ,2024-05-13 +NAMN5532251,40HQ,2013-04-19 +MJIQ4590559,40HQ,2019-11-21 diff --git a/code/base-project/base-app/箱数据2000行.xlsx b/code/base-project/base-app/箱数据2000行.xlsx new file mode 100644 index 00000000..4e5b1bb5 Binary files /dev/null and b/code/base-project/base-app/箱数据2000行.xlsx differ diff --git a/code/base-project/base-go-v2/internal/routinex/routinex.go b/code/base-project/base-go-v2/internal/routinex/routinex.go index 6793a035..6919bb69 100644 --- a/code/base-project/base-go-v2/internal/routinex/routinex.go +++ b/code/base-project/base-go-v2/internal/routinex/routinex.go @@ -1,7 +1,3 @@ -/** -保证多routine共用同一数据 -*/ - package routinex import ( diff --git a/code/base-project/base-go-v3/.gitignore b/code/base-project/base-go-v3/.gitignore index 101ea87c..869d2763 100644 --- a/code/base-project/base-go-v3/.gitignore +++ b/code/base-project/base-go-v3/.gitignore @@ -11,8 +11,6 @@ _cgo_defun.c _cgo_gotypes.go _cgo_export.* _testmain.go -*.exe -*.exe~ *.test *.prof *.rar diff --git a/code/base-project/base-go-v3/biz/handler/auth/login_service.go b/code/base-project/base-go-v3/biz/handler/auth/login_service.go index 7d04de9b..d6c6fdc9 100644 --- a/code/base-project/base-go-v3/biz/handler/auth/login_service.go +++ b/code/base-project/base-go-v3/biz/handler/auth/login_service.go @@ -7,8 +7,9 @@ import ( "cn/oneao/base-go/ent/userinfo" "cn/oneao/base-go/utils/jwtx" "cn/oneao/base-go/utils/response" + "cn/oneao/base-go/utils/routinex" "context" - "fmt" + "github.com/cloudwego/hertz/pkg/common/hlog" "time" auth "cn/oneao/base-go/biz/model/auth" @@ -27,23 +28,32 @@ func LoginDefault(ctx context.Context, c *app.RequestContext) { c.String(consts.StatusBadRequest, err.Error()) return } - // 假设 ctx 已有,req.Account / req.Password 已有 - start := time.Now() + // 查询登录用户 loginUser, err := db.Client.UserInfo. Query(). Where(userinfo.AccountEQ(req.Account), userinfo.PasswordEQ(req.Password)). Only(ctx) - duration := time.Since(start) // 耗时 - fmt.Printf("登录查询: (耗时: %v)\n", duration) - if err != nil { - c.String(consts.StatusInternalServerError, "账号或密码错误") + response.Fail(c).Message("账号或密码错误").Send() return } + // 异步更新登录事件 + routinex.Go(func() { + err := db.Client.UserInfo. + Update(). + SetLastLoginTime(time.Now()). + Where(userinfo.IDEQ(loginUser.ID)). + Exec(ctx) + if err != nil { + hlog.Errorf("更新用户登录时间失败,UserID=%d, err=%v", loginUser.ID, err) + } + }) + + // 包装数据 token, err := jwtx.CreateAccessToken(loginUser.ID) refreshToken, err := jwtx.CreateRefreshToken(loginUser.ID) diff --git a/code/base-project/base-go-v3/biz/handler/hello/hello_service.go b/code/base-project/base-go-v3/biz/handler/hello/hello_service.go deleted file mode 100644 index d6a91719..00000000 --- a/code/base-project/base-go-v3/biz/handler/hello/hello_service.go +++ /dev/null @@ -1,27 +0,0 @@ -// Code generated by hertz generator. - -package hello - -import ( - "context" - - hello "cn/oneao/base-go/biz/model/hertz/hello" - "github.com/cloudwego/hertz/pkg/app" - "github.com/cloudwego/hertz/pkg/protocol/consts" -) - -// Method1 . -// @router /hello [GET] -func Method1(ctx context.Context, c *app.RequestContext) { - var err error - var req hello.HelloReq - err = c.BindAndValidate(&req) - if err != nil { - c.String(consts.StatusBadRequest, err.Error()) - return - } - - resp := new(hello.HelloResp) - - c.JSON(consts.StatusOK, resp) -} diff --git a/code/base-project/base-go-v3/biz/model/hertz/hello/hello.pb.go b/code/base-project/base-go-v3/biz/model/hertz/hello/hello.pb.go deleted file mode 100644 index a02bf1f1..00000000 --- a/code/base-project/base-go-v3/biz/model/hertz/hello/hello.pb.go +++ /dev/null @@ -1,216 +0,0 @@ -// idl/hello/hello.proto - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.28.0 -// protoc v6.33.1 -// source: hello.proto - -package hello - -import ( - _ "cn/oneao/base-go/biz/model/api" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -type HelloReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name" query:"name"` -} - -func (x *HelloReq) Reset() { - *x = HelloReq{} - if protoimpl.UnsafeEnabled { - mi := &file_hello_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *HelloReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*HelloReq) ProtoMessage() {} - -func (x *HelloReq) ProtoReflect() protoreflect.Message { - mi := &file_hello_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use HelloReq.ProtoReflect.Descriptor instead. -func (*HelloReq) Descriptor() ([]byte, []int) { - return file_hello_proto_rawDescGZIP(), []int{0} -} - -func (x *HelloReq) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -type HelloResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - RespBody string `protobuf:"bytes,1,opt,name=RespBody,proto3" form:"RespBody" json:"RespBody" query:"RespBody"` -} - -func (x *HelloResp) Reset() { - *x = HelloResp{} - if protoimpl.UnsafeEnabled { - mi := &file_hello_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *HelloResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*HelloResp) ProtoMessage() {} - -func (x *HelloResp) ProtoReflect() protoreflect.Message { - mi := &file_hello_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use HelloResp.ProtoReflect.Descriptor instead. -func (*HelloResp) Descriptor() ([]byte, []int) { - return file_hello_proto_rawDescGZIP(), []int{1} -} - -func (x *HelloResp) GetRespBody() string { - if x != nil { - return x.RespBody - } - return "" -} - -var File_hello_proto protoreflect.FileDescriptor - -var file_hello_proto_rawDesc = []byte{ - 0x0a, 0x0b, 0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x68, - 0x65, 0x6c, 0x6c, 0x6f, 0x1a, 0x09, 0x61, 0x70, 0x69, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, - 0x28, 0x0a, 0x08, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x04, 0x4e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xb2, 0xbb, 0x18, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x27, 0x0a, 0x09, 0x48, 0x65, 0x6c, - 0x6c, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x42, 0x6f, - 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x52, 0x65, 0x73, 0x70, 0x42, 0x6f, - 0x64, 0x79, 0x32, 0x48, 0x0a, 0x0c, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x31, 0x12, 0x0f, 0x2e, - 0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x2e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x10, - 0x2e, 0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x2e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x22, 0x0a, 0xca, 0xc1, 0x18, 0x06, 0x2f, 0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x42, 0x28, 0x5a, 0x26, - 0x63, 0x6e, 0x2f, 0x6f, 0x6e, 0x65, 0x61, 0x6f, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2d, 0x67, 0x6f, - 0x2f, 0x62, 0x69, 0x7a, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x68, 0x65, 0x72, 0x74, 0x7a, - 0x2f, 0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_hello_proto_rawDescOnce sync.Once - file_hello_proto_rawDescData = file_hello_proto_rawDesc -) - -func file_hello_proto_rawDescGZIP() []byte { - file_hello_proto_rawDescOnce.Do(func() { - file_hello_proto_rawDescData = protoimpl.X.CompressGZIP(file_hello_proto_rawDescData) - }) - return file_hello_proto_rawDescData -} - -var file_hello_proto_msgTypes = make([]protoimpl.MessageInfo, 2) -var file_hello_proto_goTypes = []interface{}{ - (*HelloReq)(nil), // 0: hello.HelloReq - (*HelloResp)(nil), // 1: hello.HelloResp -} -var file_hello_proto_depIdxs = []int32{ - 0, // 0: hello.HelloService.Method1:input_type -> hello.HelloReq - 1, // 1: hello.HelloService.Method1:output_type -> hello.HelloResp - 1, // [1:2] is the sub-list for method output_type - 0, // [0:1] is the sub-list for method input_type - 0, // [0:0] is the sub-list for extension type_name - 0, // [0:0] is the sub-list for extension extendee - 0, // [0:0] is the sub-list for field type_name -} - -func init() { file_hello_proto_init() } -func file_hello_proto_init() { - if File_hello_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_hello_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HelloReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_hello_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HelloResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_hello_proto_rawDesc, - NumEnums: 0, - NumMessages: 2, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_hello_proto_goTypes, - DependencyIndexes: file_hello_proto_depIdxs, - MessageInfos: file_hello_proto_msgTypes, - }.Build() - File_hello_proto = out.File - file_hello_proto_rawDesc = nil - file_hello_proto_goTypes = nil - file_hello_proto_depIdxs = nil -} diff --git a/code/base-project/base-go-v3/biz/router/hello/hello.go b/code/base-project/base-go-v3/biz/router/hello/hello.go deleted file mode 100644 index 56a3056e..00000000 --- a/code/base-project/base-go-v3/biz/router/hello/hello.go +++ /dev/null @@ -1,21 +0,0 @@ -// Code generated by hertz generator. DO NOT EDIT. - -package hello - -import ( - hello "cn/oneao/base-go/biz/handler/hello" - "github.com/cloudwego/hertz/pkg/app/server" -) - -/* - This file will register all the routes of the services in the master idl. - And it will update automatically when you use the "update" command for the idl. - So don't modify the contents of the file, or your code will be deleted when it is updated. -*/ - -// Register register routes based on the IDL 'api.${HTTP Method}' annotation. -func Register(r *server.Hertz) { - - root := r.Group("/", rootMw()...) - root.GET("/hello", append(_method1Mw(), hello.Method1)...) -} diff --git a/code/base-project/base-go-v3/biz/router/hello/middleware.go b/code/base-project/base-go-v3/biz/router/hello/middleware.go deleted file mode 100644 index b0bd4359..00000000 --- a/code/base-project/base-go-v3/biz/router/hello/middleware.go +++ /dev/null @@ -1,17 +0,0 @@ -// Code generated by hertz generator. - -package hello - -import ( - "github.com/cloudwego/hertz/pkg/app" -) - -func rootMw() []app.HandlerFunc { - // your code... - return nil -} - -func _method1Mw() []app.HandlerFunc { - // your code... - return nil -} diff --git a/code/base-project/base-go-v3/biz/router/register.go b/code/base-project/base-go-v3/biz/router/register.go index 78b63983..b01850e6 100644 --- a/code/base-project/base-go-v3/biz/router/register.go +++ b/code/base-project/base-go-v3/biz/router/register.go @@ -4,14 +4,12 @@ package router import ( auth "cn/oneao/base-go/biz/router/auth" - hello "cn/oneao/base-go/biz/router/hello" "github.com/cloudwego/hertz/pkg/app/server" ) // GeneratedRegister registers routers generated by IDL. func GeneratedRegister(r *server.Hertz) { //INSERT_POINT: DO NOT DELETE THIS LINE! - hello.Register(r) auth.Register(r) } diff --git a/code/base-project/base-go-v3/ent/runtime.go b/code/base-project/base-go-v3/ent/runtime.go index bdc4c1dd..bdb3fbbc 100644 --- a/code/base-project/base-go-v3/ent/runtime.go +++ b/code/base-project/base-go-v3/ent/runtime.go @@ -60,8 +60,6 @@ func init() { userinfoDescUpdateTime := userinfoFields[8].Descriptor() // userinfo.DefaultUpdateTime holds the default value on creation for the update_time field. userinfo.DefaultUpdateTime = userinfoDescUpdateTime.Default.(func() time.Time) - // userinfo.UpdateDefaultUpdateTime holds the default value on update for the update_time field. - userinfo.UpdateDefaultUpdateTime = userinfoDescUpdateTime.UpdateDefault.(func() time.Time) // userinfoDescID is the schema descriptor for id field. userinfoDescID := userinfoFields[0].Descriptor() // userinfo.DefaultID holds the default value on creation for the id field. diff --git a/code/base-project/base-go-v3/ent/schema/userinfo.go b/code/base-project/base-go-v3/ent/schema/userinfo.go index e11b9229..0678f4dc 100644 --- a/code/base-project/base-go-v3/ent/schema/userinfo.go +++ b/code/base-project/base-go-v3/ent/schema/userinfo.go @@ -71,7 +71,6 @@ func (UserInfo) Fields() []ent.Field { // 自动更新时间 field.Time("update_time"). Default(time.Now). - UpdateDefault(time.Now). Comment("更新时间"), field.Time("last_login_time"). diff --git a/code/base-project/base-go-v3/ent/userinfo/userinfo.go b/code/base-project/base-go-v3/ent/userinfo/userinfo.go index 0aabbbce..62c5fb74 100644 --- a/code/base-project/base-go-v3/ent/userinfo/userinfo.go +++ b/code/base-project/base-go-v3/ent/userinfo/userinfo.go @@ -76,8 +76,6 @@ var ( DefaultCreateTime func() time.Time // DefaultUpdateTime holds the default value on creation for the "update_time" field. DefaultUpdateTime func() time.Time - // UpdateDefaultUpdateTime holds the default value on update for the "update_time" field. - UpdateDefaultUpdateTime func() time.Time // DefaultID holds the default value on creation for the "id" field. DefaultID func() int64 ) diff --git a/code/base-project/base-go-v3/ent/userinfo_update.go b/code/base-project/base-go-v3/ent/userinfo_update.go index 7874d5d8..1cc56e8f 100644 --- a/code/base-project/base-go-v3/ent/userinfo_update.go +++ b/code/base-project/base-go-v3/ent/userinfo_update.go @@ -132,6 +132,14 @@ func (_u *UserInfoUpdate) SetUpdateTime(v time.Time) *UserInfoUpdate { return _u } +// SetNillableUpdateTime sets the "update_time" field if the given value is not nil. +func (_u *UserInfoUpdate) SetNillableUpdateTime(v *time.Time) *UserInfoUpdate { + if v != nil { + _u.SetUpdateTime(*v) + } + return _u +} + // SetLastLoginTime sets the "last_login_time" field. func (_u *UserInfoUpdate) SetLastLoginTime(v time.Time) *UserInfoUpdate { _u.mutation.SetLastLoginTime(v) @@ -159,7 +167,6 @@ func (_u *UserInfoUpdate) Mutation() *UserInfoMutation { // Save executes the query and returns the number of nodes affected by the update operation. func (_u *UserInfoUpdate) Save(ctx context.Context) (int, error) { - _u.defaults() return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks) } @@ -185,14 +192,6 @@ func (_u *UserInfoUpdate) ExecX(ctx context.Context) { } } -// defaults sets the default values of the builder before save. -func (_u *UserInfoUpdate) defaults() { - if _, ok := _u.mutation.UpdateTime(); !ok { - v := userinfo.UpdateDefaultUpdateTime() - _u.mutation.SetUpdateTime(v) - } -} - // check runs all checks and user-defined validators on the builder. func (_u *UserInfoUpdate) check() error { if v, ok := _u.mutation.Email(); ok { @@ -387,6 +386,14 @@ func (_u *UserInfoUpdateOne) SetUpdateTime(v time.Time) *UserInfoUpdateOne { return _u } +// SetNillableUpdateTime sets the "update_time" field if the given value is not nil. +func (_u *UserInfoUpdateOne) SetNillableUpdateTime(v *time.Time) *UserInfoUpdateOne { + if v != nil { + _u.SetUpdateTime(*v) + } + return _u +} + // SetLastLoginTime sets the "last_login_time" field. func (_u *UserInfoUpdateOne) SetLastLoginTime(v time.Time) *UserInfoUpdateOne { _u.mutation.SetLastLoginTime(v) @@ -427,7 +434,6 @@ func (_u *UserInfoUpdateOne) Select(field string, fields ...string) *UserInfoUpd // Save executes the query and returns the updated UserInfo entity. func (_u *UserInfoUpdateOne) Save(ctx context.Context) (*UserInfo, error) { - _u.defaults() return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks) } @@ -453,14 +459,6 @@ func (_u *UserInfoUpdateOne) ExecX(ctx context.Context) { } } -// defaults sets the default values of the builder before save. -func (_u *UserInfoUpdateOne) defaults() { - if _, ok := _u.mutation.UpdateTime(); !ok { - v := userinfo.UpdateDefaultUpdateTime() - _u.mutation.SetUpdateTime(v) - } -} - // check runs all checks and user-defined validators on the builder. func (_u *UserInfoUpdateOne) check() error { if v, ok := _u.mutation.Email(); ok { diff --git a/code/base-project/base-go-v3/genpb.exe b/code/base-project/base-go-v3/genpb.exe new file mode 100644 index 00000000..cff080ba Binary files /dev/null and b/code/base-project/base-go-v3/genpb.exe differ diff --git a/code/base-project/base-go-v3/go.mod b/code/base-project/base-go-v3/go.mod index d345b222..1e8c377f 100644 --- a/code/base-project/base-go-v3/go.mod +++ b/code/base-project/base-go-v3/go.mod @@ -7,7 +7,6 @@ require ( github.com/cloudwego/hertz v0.10.3 github.com/golang-jwt/jwt/v4 v4.5.2 github.com/hertz-contrib/jwt v1.0.4 - github.com/hertz-contrib/logger/zap v1.1.0 github.com/hertz-contrib/requestid v1.1.0 github.com/lib/pq v1.10.9 go.uber.org/zap v1.27.1 @@ -29,12 +28,17 @@ require ( github.com/elastic/pkcs8 v1.0.0 // indirect github.com/fsnotify/fsnotify v1.9.0 // indirect github.com/go-openapi/inflect v0.21.3 // indirect + github.com/goccy/go-json v0.10.5 // indirect + github.com/golang/snappy v0.0.4 // indirect github.com/google/go-cmp v0.7.0 // indirect github.com/google/uuid v1.6.0 // indirect github.com/hashicorp/hcl/v2 v2.24.0 // indirect + github.com/hertz-contrib/logger/zap v1.1.0 // indirect + github.com/jmoiron/sqlx v1.4.0 // indirect github.com/klauspost/cpuid/v2 v2.3.0 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect github.com/nyaruka/phonenumbers v1.6.7 // indirect + github.com/syndtr/goleveldb v1.0.0 // indirect github.com/tidwall/gjson v1.18.0 // indirect github.com/tidwall/match v1.2.0 // indirect github.com/tidwall/pretty v1.2.1 // indirect @@ -44,11 +48,13 @@ require ( go.uber.org/multierr v1.11.0 // indirect golang.org/x/arch v0.23.0 // indirect golang.org/x/crypto v0.45.0 // indirect - golang.org/x/exp v0.0.0-20251113190631-e25ba8c21ef6 // indirect + golang.org/x/exp v0.0.0-20251125195548-87e1e737ad39 // indirect golang.org/x/mod v0.30.0 // indirect golang.org/x/sync v0.18.0 // indirect golang.org/x/sys v0.38.0 // indirect golang.org/x/text v0.31.0 // indirect golang.org/x/tools v0.39.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect + xorm.io/builder v0.3.13 // indirect + xorm.io/xorm v1.3.11 // indirect ) diff --git a/code/base-project/base-go-v3/go.sum b/code/base-project/base-go-v3/go.sum index 0b75c9b4..629388a7 100644 --- a/code/base-project/base-go-v3/go.sum +++ b/code/base-project/base-go-v3/go.sum @@ -2,6 +2,8 @@ ariga.io/atlas v0.38.0 h1:MwbtwVtDWJFq+ECyeTAz2ArvewDnpeiw/t/sgNdDsdo= ariga.io/atlas v0.38.0/go.mod h1:D7XMK6ei3GvfDqvzk+2VId78j77LdqHrqPOWamn51/s= entgo.io/ent v0.14.5 h1:Rj2WOYJtCkWyFo6a+5wB3EfBRP0rnx1fMk6gGA0UUe4= entgo.io/ent v0.14.5/go.mod h1:zTzLmWtPvGpmSwtkaayM2cm5m819NdM7z7tYPq3vN0U= +filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4= +gitea.com/xorm/sqlfiddle v0.0.0-20180821085327-62ce714f951a/go.mod h1:EXuID2Zs0pAQhH8yz+DNjUbjppKQzKFAn28TMYPB6IU= github.com/DATA-DOG/go-sqlmock v1.5.0 h1:Shsta01QNfFxHCfpW6YH2STWB0MudeXXEWMr20OEh60= github.com/DATA-DOG/go-sqlmock v1.5.0/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= @@ -38,17 +40,25 @@ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/elastic/pkcs8 v1.0.0 h1:HhitlUKxhN288kcNcYkjW6/ouvuwJWd9ioxpjnD9jVA= github.com/elastic/pkcs8 v1.0.0/go.mod h1:ipsZToJfq1MxclVTwpG7U/bgeDtf+0HkUiOxebk95+0= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/fsnotify/fsnotify v1.5.4/go.mod h1:OVB6XrOHzAwXMpEM7uPOzcehqUV2UqJxmVXmkdnm1bU= github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k= github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0= github.com/go-openapi/inflect v0.21.3 h1:TmQvw+9eLrsNp4X0BBQacEZZtAnzk2z1FaLdQQJsDiU= github.com/go-openapi/inflect v0.21.3/go.mod h1:INezMuUu7SJQc2AyR3WO0DqqYUJSj8Kb4hBd7WtjlAw= +github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= github.com/go-test/deep v1.0.3 h1:ZrJSEWsXzPOxaZnFteGEfooLba+ju3FYIbOrS+rQd68= github.com/go-test/deep v1.0.3/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= +github.com/goccy/go-json v0.10.5 h1:Fq85nIqj+gXn/S5ahsiTlK3TmC85qgirsdTP/+DeaC4= +github.com/goccy/go-json v0.10.5/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= github.com/golang-jwt/jwt/v4 v4.5.2 h1:YtQM7lnr8iZ+j5q71MGKkNw9Mn7AjHM68uc9g5fXeUI= github.com/golang-jwt/jwt/v4 v4.5.2/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= +github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= @@ -66,6 +76,11 @@ github.com/hertz-contrib/logger/zap v1.1.0 h1:4efINiIDJrXEtAFeEdDJvc3Hye0VFxp+0X github.com/hertz-contrib/logger/zap v1.1.0/go.mod h1:D/rJJgsYn+SGaHVfVqWS3vHTbbc7ODAlJO+6smWgTeE= github.com/hertz-contrib/requestid v1.1.0 h1:+y1cuNlNX2KUoEC1SnBJ6M55/TlMTx3M9yxkqi0oTkk= github.com/hertz-contrib/requestid v1.1.0/go.mod h1:+l5CbZl//cSUoos421fnDFKQ6YYlVHcYc3Ri7AS8DUA= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= +github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/jmoiron/sqlx v1.4.0 h1:1PLqN7S1UYp5t4SrVVnt4nUVNemrDAtxlulVe+Qgm3o= +github.com/jmoiron/sqlx v1.4.0/go.mod h1:ZrZ7UsYB/weZdl2Bxg6jCRO9c3YHl8r3ahlKmRT4JLY= github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= github.com/klauspost/cpuid/v2 v2.3.0 h1:S4CRMLnYUhGeDFDqkGriYKdfoFlDnMtqTiI/sFzhA9Y= github.com/klauspost/cpuid/v2 v2.3.0/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0= @@ -76,8 +91,12 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= +github.com/mattn/go-runewidth v0.0.9 h1:Lm995f3rfxdpd6TSmuVCHVb/QhupuXlYr8sCI/QdE+0= +github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= +github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= github.com/mattn/go-sqlite3 v1.14.28 h1:ThEiQrnbtumT+QMknw63Befp/ce/nUPgBPMlRFEum7A= github.com/mattn/go-sqlite3 v1.14.28/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= +github.com/mattn/go-sqlite3 v1.14.32 h1:JD12Ag3oLy1zQA+BNn74xRgaBbdhbNIDYvQUEuuErjs= github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= @@ -85,13 +104,23 @@ github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLA github.com/nyaruka/phonenumbers v1.0.55/go.mod h1:sDaTZ/KPX5f8qyV9qN+hIm+4ZBARJrupC6LuhshJq1U= github.com/nyaruka/phonenumbers v1.6.7 h1:WmebT8TNEzNaui5QlrGqbccRC6dZkEkYc+MGQoILSSo= github.com/nyaruka/phonenumbers v1.6.7/go.mod h1:7gjs+Lchqm49adhAKB5cdcng5ZXgt6x7Jgvi0ZorUtU= +github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec= +github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= +github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= +github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= @@ -102,6 +131,8 @@ github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8 github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= +github.com/syndtr/goleveldb v1.0.0 h1:fBdIW9lB4Iz0n9khmH8w27SJ3QEJ7+IgjPEwGSZiFdE= +github.com/syndtr/goleveldb v1.0.0/go.mod h1:ZVVdQEZoIme9iO1Ch2Jdy24qqXrMMOU6lpPAyBWyWuQ= github.com/tidwall/gjson v1.9.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/gjson v1.13.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/gjson v1.18.0 h1:FIDeeyB800efLX89e5a8Y0BNH+LOngJyGrIWxG2FKQY= @@ -138,10 +169,13 @@ golang.org/x/crypto v0.45.0 h1:jMBrvKuj23MTlT0bQEOBcAE0mjg8mK9RXFhRH6nyF3Q= golang.org/x/crypto v0.45.0/go.mod h1:XTGrrkGJve7CYK7J8PEww4aY7gM3qMCElcJQ8n8JdX4= golang.org/x/exp v0.0.0-20251113190631-e25ba8c21ef6 h1:zfMcR1Cs4KNuomFFgGefv5N0czO2XZpUbxGUy8i8ug0= golang.org/x/exp v0.0.0-20251113190631-e25ba8c21ef6/go.mod h1:46edojNIoXTNOhySWIWdix628clX9ODXwPsQuG6hsK0= +golang.org/x/exp v0.0.0-20251125195548-87e1e737ad39 h1:DHNhtq3sNNzrvduZZIiFyXWOL9IWaDPHqTnLJp+rCBY= +golang.org/x/exp v0.0.0-20251125195548-87e1e737ad39/go.mod h1:46edojNIoXTNOhySWIWdix628clX9ODXwPsQuG6hsK0= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.30.0 h1:fDEXFVZ/fmCKProc/yAXXUijritrDzahmwwefnjoPFk= golang.org/x/mod v0.30.0/go.mod h1:lAsf5O2EvJeSFMiBxXDki7sCgAxEUcZHXoXMKT4GJKc= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= @@ -149,6 +183,7 @@ golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -156,6 +191,7 @@ golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I= golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -199,10 +235,17 @@ gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8 gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU= gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/natefinch/lumberjack.v2 v2.2.1 h1:bBRl1b0OH9s/DuPhuXpNl+VtCaJXFZ5/uEFST95x9zc= gopkg.in/natefinch/lumberjack.v2 v2.2.1/go.mod h1:YD8tP3GAjkrDg1eZH7EGmyESg/lsYskCTPBJVb9jqSc= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= +xorm.io/builder v0.3.13 h1:a3jmiVVL19psGeXx8GIurTp7p0IIgqeDmwhcR6BAOAo= +xorm.io/builder v0.3.13/go.mod h1:aUW0S9eb9VCaPohFCH3j7czOx1PMW3i1HrSzbLYGBSE= +xorm.io/xorm v1.3.11 h1:i4tlVUASogb0ZZFJHA7dZqoRU2pUpUsutnNdaOlFyMI= +xorm.io/xorm v1.3.11/go.mod h1:cs0ePc8O4a0jD78cNvD+0VFwhqotTvLQZv372QsDw7Q= diff --git a/code/base-project/base-go-v3/idl/hello/hello.proto b/code/base-project/base-go-v3/idl/hello/hello.proto deleted file mode 100644 index 5e666c53..00000000 --- a/code/base-project/base-go-v3/idl/hello/hello.proto +++ /dev/null @@ -1,22 +0,0 @@ -// idl/hello/hello.proto -syntax = "proto3"; - -package hello; - -option go_package = "hertz/hello"; - -import "api.proto"; - -message HelloReq { - string Name = 1[(api.query)="name"]; -} - -message HelloResp { - string RespBody = 1; -} - -service HelloService { - rpc Method1(HelloReq) returns(HelloResp) { - option (api.get) = "/hello"; - } -} diff --git a/code/base-project/base-go-v3/utils/routinex/routinex.go b/code/base-project/base-go-v3/utils/routinex/routinex.go new file mode 100644 index 00000000..6919bb69 --- /dev/null +++ b/code/base-project/base-go-v3/utils/routinex/routinex.go @@ -0,0 +1,73 @@ +package routinex + +import ( + "runtime" + "strconv" + "strings" + "sync" +) + +// CurGID 获取 routine 的id +func CurGID() uint64 { + var buf [64]byte + n := runtime.Stack(buf[:], false) + line := strings.Fields(strings.TrimPrefix(string(buf[:n]), "goroutine "))[0] + gid, _ := strconv.ParseUint(line, 10, 64) + return gid +} + +type RoutineLocal struct { + data sync.Map // gid -> map[key]any +} + +var ( + instance *RoutineLocal + instanceOnce sync.Once +) + +// GetInstance 获取当前示例 +func GetInstance() *RoutineLocal { + instanceOnce.Do(func() { + instance = &RoutineLocal{} + }) + return instance +} + +// Set 存储单条数据 +func Set(key string, value any) { + gid := CurGID() + v, _ := GetInstance().data.LoadOrStore(gid, &sync.Map{}) + m := v.(*sync.Map) + m.Store(key, value) +} + +// Get 获取单条数据 +func Get(key string) any { + gid := CurGID() + if v, ok := GetInstance().data.Load(gid); ok { + m := v.(*sync.Map) + if val, ok := m.Load(key); ok { + return val + } + } + return nil +} + +// Clear 删除当前 goroutine 所有数据 +func Clear() { + GetInstance().data.Delete(CurGID()) +} + +// Go 自动继承父 goroutine 数据,多 routine 的时候需要使用 +func Go(f func()) { + parentGID := CurGID() + parentData, _ := GetInstance().data.Load(parentGID) + + go func() { + if parentData != nil { + GetInstance().data.Store(CurGID(), parentData) + defer Clear() + } + f() + }() +}