From ef1aea9b48ffd79cfc7015458309772606ca8e64 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 22 Dec 2024 22:53:16 +0800 Subject: [PATCH 01/80] =?UTF-8?q?Java=EF=BC=9A=E6=9B=B4=E6=96=B0=20APIJSON?= =?UTF-8?q?=20=E5=8F=8A=E6=A0=B8=E5=BF=83=E6=8F=92=E4=BB=B6=E7=9A=84?= =?UTF-8?q?=E5=90=84=E7=A7=8D=20jar=20=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONBoot-BigData/libs/APIJSON-7.0.3.jar | Bin 0 -> 248133 bytes .../libs/apijson-column-2.0.3.jar | Bin 0 -> 8213 bytes .../libs/apijson-framework-7.0.3.jar | Bin 0 -> 48019 bytes .../libs/apijson-router-2.0.3.jar | Bin 0 -> 14215 bytes .../libs/unitauto-jar-3.0.5.jar | Bin 0 -> 4905 bytes .../libs/unitauto-java-3.0.5.jar | Bin 0 -> 66868 bytes .../libs/APIJSON-7.1.0.jar | Bin 0 -> 249172 bytes .../APIJSONBoot/libs/APIJSON-7.0.3.jar | Bin 0 -> 248133 bytes .../APIJSONBoot/libs/apijson-column-2.0.3.jar | Bin 0 -> 8213 bytes .../libs/apijson-framework-7.0.3.jar | Bin 0 -> 48019 bytes .../APIJSONBoot/libs/apijson-router-2.0.3.jar | Bin 0 -> 14215 bytes .../APIJSONBoot/libs/unitauto-jar-3.0.5.jar | Bin 0 -> 4905 bytes .../APIJSONBoot/libs/unitauto-java-3.0.5.jar | Bin 0 -> 66868 bytes .../APIJSONFinal/libs/APIJSON-7.0.3.jar | Bin 0 -> 248133 bytes .../APIJSONFinal/libs/apijson-column-2.0.3.jar | Bin 0 -> 8213 bytes .../libs/apijson-framework-7.0.3.jar | Bin 0 -> 48019 bytes 16 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 APIJSON-Java-Server/APIJSONBoot-BigData/libs/APIJSON-7.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot-BigData/libs/apijson-column-2.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot-BigData/libs/apijson-framework-7.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot-BigData/libs/apijson-router-2.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot-BigData/libs/unitauto-jar-3.0.5.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot-BigData/libs/unitauto-java-3.0.5.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot-MultiDataSource/libs/APIJSON-7.1.0.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot/libs/APIJSON-7.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot/libs/apijson-column-2.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot/libs/apijson-framework-7.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot/libs/apijson-router-2.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot/libs/unitauto-jar-3.0.5.jar create mode 100644 APIJSON-Java-Server/APIJSONBoot/libs/unitauto-java-3.0.5.jar create mode 100644 APIJSON-Java-Server/APIJSONFinal/libs/APIJSON-7.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONFinal/libs/apijson-column-2.0.3.jar create mode 100644 APIJSON-Java-Server/APIJSONFinal/libs/apijson-framework-7.0.3.jar diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/libs/APIJSON-7.0.3.jar b/APIJSON-Java-Server/APIJSONBoot-BigData/libs/APIJSON-7.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..a6332a9bb96b14676894022abd4ca1501d4b4349 GIT binary patch literal 248133 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�AfFF|5+baG*1bXH|@X=Z6gMmV57ekBj0%)a&}( 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
  • _p{O8m4E4NK}* zvCR?;fCzW}h7u^7gUnAt2P9TSL>l*x*|sD*6sMmfh4GIc4A)v3ZO$eJ44vR&y9hvy zdql=>;kwJMquv-9?HVUw4^tEZpydX7n-dJk3LR%J&|MLL`R!M8jUS4=_sdeRtjmoqz1 zJ?|qp+Mpc>b(Gjee_OX^(6W5(h7RzOacc)tfnC=N@MCy@emM-zL%;aUnhWzk1z(xg z`&&U?R6}Vo8_f|5OzrjLru~DTL0IvyL9tcl{d5@k@DDMTqHTwh-Y7Cjt35m zrWX($*KvGnX`A;{TZ^(3PMWxc-N>8o=27m_gTerx9xmFQzf#5HatzNaoot#h;~zKK zyc!leIR_t~ppKvgxgNT@O>_ssa*`_1*|D83ZF@d_?Ghn2deOYHr`+{0RkR2@`Wrqz{wPI=a_vrDGBq9_8ng0W_9vN}4?!EO zZrVy-l&g~bX5QH8leRO}i04M4ha10xxR|lhv6j}RJ*WVUBS@KhgEJ-G7t|7vwp9@1 z5+|EUi3ag_5`cb{T4ZXaOuE6vib%1KiScruq!|fN!miq?p=0_U&6D=DV)s-ierzEw zg0so%N%6963A{Mzq+xg=?7g=uu-|xRu@RBMS(LFRGKED$p$V}X`CK4mooTfs&3kr` zW^q#3KG4Ay*D#ZTsz4!A2*+3v;4vG@%f*>`$f`U!q`7^RwMvE42d-nDv9R@ko29TjUt>1zj$i8 z-L(RuCS-YaJ3lRxIdW~e9ll_YIu`$hwEg8*>)re~)U_hV>3XD(xlW}XA3_jTf1Z9z zql}u*)TM$Nr-F)x4RJ5B{bm-|oLY_M$iopVOy~d;-)$Wr<+gLgNp

    UU%7w{EEET zr#pf4+Z>@T|HnfPsxs{lt&>Bw`Y=;IpQ>!*%RK2wM1%EA;M_w6k6vV*ML(i`Q%#7_ z=V~Xy^`-k0bR7dvy-ONNue?zc$Ba2=X+0OAf9Q|+gDJlR3?B?LjQm>)e*c4^H9>Az z$i3#8d~54RIAlcB+x;UsxXm!iSxl`6suVq;l^{?6;c|x0CjP{w14;xAL6q>&oU?J&f4@=v_-XtD-f$VA}}i zQ`t3AFy~S9vIX=70u(e3W_2)#l!_<(s3L5=h)d3qI?RgCuXuI`z8K1B_~>P)y%k!N zhE3NADq8rt)t9FG4Dkd>xl z6AuTa@2_W}Jz&nDN;2UJR7<=4Y8ufUe-CTf8>`!!KaF(T8OIa-s-p}0x0X(S^SV1wE z!jXnrE**0gO>KnDaf}BHcNpp)sa$yYstKjiawA{rtSzDwmbvOM#!^X1$L(Y7%sgWZ z%*s3aeJQifhSQQVB%+7krtNNHtNF`nLg!6pO4$i}(&kOZSE3qx_F5I{J#1`ALR^m< zYhk{mDpB6=>wC|CpLgU(L-JH0MbkbQob{0M6axLsGKm$D5c2~R--CU6F-!HoF+?9` zJCir8L*{-0zE|?Wc|%z~e{f2gi(S;>D4ygko?O)I_j*uuBa(42%lxHa^fhO@HszO0 zh9tD8-OKhW3?e4vL-%d7oLAd+Y2ci?{zZ5SS#pv+tYyqanzW7d9lW(TT4F!G{34Buq`f6NCzoXzB z%3TNgHl2R8%Tz@8PO@v-loKx8c0JIPY+13b3S)Rkx|A#LXttONAa|N zMP&7E^^~#dM};#@Wix{^py(~$JY1TWvpx#;;0fXV*PyQ3Yo)$B;M>CZNco(X@n^cL z0>26Jtse-UFT8CxOiy3KLtpfX=6+qGRBA_4sn9}8TdEqiUEmSum*LiB9mb; zWd~nJ$(Ic$Z;?evn^0P;{?H6GuA;%L>6uVKr~j9JD893cPN+=xwEWyXNdvKMbl{{Z zri^-9U@VP@K;sr8w{(-DFmd0l*@kAOfIle2otlm${{{)5LkP9S(nx4o1kj)tsslzL zw>PGqkMJGPsdk6RqfzZ1;X4T0>|*47Bm#I#B-Y_*wFLeW#5!E0oB3tSu^5q}Rs0L# zJT{10HIlOch8 zes-X)ojdH}E$QQ^TRwj;49Okuea1@x=v=?dhyUX{k^3D)J$j3o zE&LrT@@V*&M84X|ETUr!(Gj-r`0vd4H~6k4<)~~XB~NmGU7FQ|15e=+cb)38&L3RD z7RLJB$=uF&1}=sDmJ-+`F4gx>VD0FUp`tQeZ3Vodl20nCa`B7o-Y(D@8pV%XNrKXT zHaFfhZf=%0@MSEhHeWdV__;|B{3J=|Vu3_@j(2|3R#Mmw=(8n0J#@AiQ zRIs;Bkj&82-{c?%5&_=T^%SnfX=-;^eD=nE4L+8EUB&6oVB*u8fdD^$*bmg}LBg%D z7==&_L$og}{Gq;u>b`#P4_w!S-F?#!i0;sDxSRd7Ta*tetr0B=@+}7=5>*ejb)X7n zM+!x}=SKJF(Q11P9?IT{gw#g6RCw`1w(8StL*7%^3r=&5InE)^S*%qjxwc$X4wBsb zOr<7#zK?mziUPFeCu<9zKP%YAD@1@w!%YCJQg7)Qq#9V5Gp=apZ?#MfWL=axL_ap( zqX^l^_39BmFfWVSN3?@#dxFn#AWKWM4I_c2xSH_6V^fJDbM<^029K5w=i?E*QUad_ zHko=%l(SR)Wf8rqp?<*z(YP_=p%(W!j!M>|P6We0YEcZS<~BNClUJggttt1eCh0Nj zAJ!GOypUndTs*xH6`j9;chXZrwST=HDZp&oAnYv(A1={#5s~F|3T|0y-ex}{X{+gQ zsY=f&nWqcrk(3uTB-Qoyqog>Srhyg~v^$3sRP&g$P}u*1BxmFFi5_;ACv&r@@FYUU{eGl84L25Zr;n}Q^qur0xLCEU$Sv2B=^jw^HNh%fn< z1{qxh^*oFs{D;>~=s=K117=sc4R4I-P4W?V)%&-tg_NgM=ane5w3Vk+D=!nTsePTN zx0fqbTB14OOm1>+q7~h7nMNnXsTd$+$B4-YdHD|3X{^>IQ|K|&KNbAY&9 zu$bKZ_?1o;enrW+_>VosIN0TcbJu>rlR$B{4PiB^p^(4B7aBv}c_Fy^>`|}MGq5JnDdy^AGo(Y@8 zQ2D<}oF6`Ee8?c~nS98YP>UACiW(pa2NB{%23j{mJ>;p(lKs!j9w+Z8+4@QWribsHKqgnnD1yBc^ z(nvc4bqDTe^tW|=*dbse(31%6J69%f7!e{l#KU@(=rOMm-7{pAc@pw{W+p5GB;{L4 zCOCZ}p7#+O9@>*V2M2;&bf-Jv{b45~zFZ8`SMkp8D#|g2Vd6@sZDK)M^oaxC1x=N3 zd=-`#l#PTHs>#y|1)BFulh?qHCv6q0(*9F>B_7Fy-%wvrPX|B~0f9_i|MYD5CNWF=iSPu9imJ+atpGUntBbF}%?HXxtVu0hTHZJapE59P--(^qy8jL&H+STAzhsmWf(G zx0sJ9R{R-q5F5s4ASufEmTRI_I?vO~bv%1qjME#>1k!*7s!i7(y@&nOL5qU#*I1sK zPk}yE6fr~A3y5uWwB!rIFG3&Cd{ifVsboamf~rLMyhsCp4f_Ef?4oublT1$e6tN+4 zX&MQ66qb+B0njgV_M6Zm#qU*rA?@rJ$WaTvW?hk9EgN?b_tG`F5`Uw?!eO~CHVuwe zdwyur4V$l+DsxB=<;fS{en>;N4S8LMs{9>Na(>l7$mHHnrG=hjkev?@D%b@2XaP@0 zE8{KD;M^zt3hn(M@|Q);v)IuGd0pGMjqbZ(8RQ*=%wR}G`a2czonm5DRqpH!dTHX{ zGv4i3o{ve2A6B3e9gBuTNxJNxw7Bi)81!W1CBn675pGaK55lbi#dbX}mYOIrqvtj) z@h?&6U}8W=ceU#Yt`)cNmH=qvZ&`u(R=D0@3ccXw>`T2Mobu+tgBAzWGrlQH!nweM zY(|J44|632F%*V)mU+}WWW_JyErB;$>25P;{)u@}F1DpilANUPV+nDQL5Cvu)Ll@h zKb<}`J;Qfo#V9plA=10&KYV|5(KK?-?u+O~@Ygl$=J56Swy33F1abDj+fA;;>m4E( z0{!u9Qpm8eZmY`Y_wt~>4I9`DVx#2t9ZYUmbG41MtHcxVM`A%=;ynA=yuPS_TR2c{ z5$x7Jp>Gb|i*0)u^#m`RrKP)h?PXE24fYh7H;4&d9_ig(6-V+Vm4~_MgQKO8iS-^t zNJy_{j9qKzrDuXpqIQ~mO~2<(V#Yin*F>jwmee2@)Xk9Pzp&qQv&01f2iw`%OiUtH_0}K<%lwD~4Ypo(!7kFA>8>{}0On zIUCUlIXnL*Kn#Bh`M%cV9y5yPGcz8g_xj|uQA2|Gb24_xE z{(R%Q?Uhi!!y9}k?Z!`BYde0b@5WD9E4ug8(UYIN;Jydwdidz;&5d8Y96bqpd=_+n zN$B~}*72vTIo$(bJU&ypzqIuHXnY|)P9eZ>iKO@oD8Id+1qAEA|CdngvBhnV6$A(< z_ZJWl#s5PnrmQF<>TYW6;%w(g%JiQ)v5>^Swo3w-A#(6noHjaX64df*Q{s4|q9uxZk;T z{Cs&p?*3grmM^M^hv@>@hH|jey{GFXWusO7w;!GRFWL0M9~v6Nun!>zf`6*d^^l=R z(TX`{{aI+g967HQE4J>u)z5mLi%WZ%9{b(4KDdPG>w4IHdekw3KIU`3txv}Ve@kMO zag-*Qg|}pCWf48Z!QMNWam*T~3Oa1nTEavTX;G@7WtTnrIM7O^)+0#6iNieZ)LLrj zuDIZ-+a?~j6S7CN=C+XOAN@?!>nU1WX{Rir#fHq^OTf`Z;i?bm3}>R=<4zUSm!;Au zX&h5Z7z#mW23o_OD@L1@*`4tTAN1O0w4U?BE?qAH@XD+iW!7XiEkMQbhWz}ErC<78)>}GK^mcoV(|3&|Id<1Ojqf3LTb zMBu=->K(Oyh{zI*LXu4p9e2xI@Z%tBXcR0Re9pf`lPG_6lTR3-X~Gyrn_4gAf`+qR z*cro2t)kkTulVN>%(+q*c26XL|mXmoW6{XQskd zc#%A2v!F48TSeKh>`aQn7v#SciiAJ1)j9Y?(2<|O8wCdfBK>~^o|>tnrJ1FvBPsKL zMqQ7}xe|&X;#X)eZSb)~Jc*0cHo1s$fZc@^2tw$qC`uTFEoY26J!5bdER#RlR6;>toS<`Bnj6HUOW8E;>v zk1cq?TunWtx7Q}RuV(_0Z-0)nYB0B6gdwFL=q~cjvnXP1MGQq^v#>bD0c@u;34_0YCsDusCWptLLp2FaH^bXxuCSC04Ez${fh9z0y2z0@9zf7JB z?V9)$z#WS;1}(xKb&fU;G%SWnC2BS4a(zuEO3a`dWeTyzuDy^r1Rt_!Qe%9?m3Xq3 z2KCC7PBD#`CfnxFzw16$ZQ5#(wUTnpf+)E6R9)BDWuzH|)&|Nx<*~Eu;7|KqU|C@P zl}l5^H`h0gIO9R)iQ40_iFWa>s{Cr#ab9kIun&7mC&b}o#j=Rh|Gb2e=q^LM2|u5G^rL&5Y>bq&pTc3+T?5}7RCvgHXo z)sm1^R5_HwU1m`St6%}=;vxwJgHX~*Y2rGxIH8PmhK9@%GC>@t#z7`%pWHI*u_hs# z&CJ?hR0l4TNnbcEA#!!zxOl@_0=q&3E@)I;=d=2Qg_-`1L}?KAymL8Xp`Uhw@`O>I zazd{(yO5M3n!%vS>4B70OSjq6g3J=mcj%~$rP)-}dRZ5zSxGxTh^fTXK^o5lq)jr) zKoQKWUHJP2b<>AOfh{w{y_{CrU4&Uu3+G?on8x6e#;M)^{Tm3=AT$5{34f&@1^53} zZ~y<{FYIV)_=COw`470n3Ca%&AcpL!Sb`-R90(eBACBx$B_blrgQ8frGt5YoYPwFi zPQ^X!A>4{%wITB6&mNoZc-t{Q+`T=+?;-VoBJHdFDXFfOtl2D0Tb43Qbd* zka`%#yhy>YrXD<&ceMTNUgf$CQsm3V%S(&#(+-{;T&>-sSlExPD&i-|6p$gz&ZmO5 zYeOUvLhgh#w}6Nl>TbG0u*Ep_>UsSi@bDk1cBTU2nKu|9AY4KqAe{dN4?p=x*v{6> z()>TaNREc30nP}TFV0jd?UdXB?r;RuzS;pPJh)JJlE2Nw^C%atq^kr-a7%M5dqRsC z4X50Vl9p%MP6@=HbHSTM8o1=r7g6bRpP$*Bnzu%47Zsqb~`hd zU6Pk<;==979U`ecj?H#544R>u zDi)^h#vkEqRW2CK2PST%I?RztJ%Z2*O?iPtRt51wSE|a-j~0I^DSt+L63qyfV>gDN zby4*!CYL;M=$@7u5$VcYF&$wjkJzi%A7$R!h2ZvMAbvF~5t+g$YvUC*S-_!Co;-Cd zgQlJzE1Nc23pdAdp;@(3AEq*Pb5&R3BY|1)>fmj7;w^0=7CN2tgkaZX1S+bX88IM) zb*H)j>zUdmfL)lU)&cxRPQ$!7^ShqO{RcavA4PXUVc29eEM zghb7yA7Kf51xnJew$Tfv%f$=)6=~y`e({7<=Fw-Roh`p2@rJduh?4x3&?iOV&gSsP z9#CU&E>WPd8l$!zH1e+UcroG2omRjH`uAU+%GHdR=O<7|5;%kU(hU$|%iqXXF!P9x6hK05Cr#8@xN75L z9Dns$6T`_MekBLjG!0of#xntLgf*)nNlhe#kC0?kZ{$UYE`ACFPYzym6LCs^ zI<)w?Q~sX3yb@2f(uj4Dz#IAy9G>LhTtzZr&4QkH312xmmYptLAtkr#|FU=0J4vee z{B<|Z2z#n=Ql$_Z%VH^#421~IpfS`~@+CozA}O|%0EAV4B)~Zvj7@+Og2oz2o|WcQ zNe*#Pv{wJgn6N~hNYm znKAk-4^nrQdRb{{8zaArvY9mC%69G%VFVco-HtjZ++;CejQ2-LD zw?vHi0>}!uv!~GHTX|*-*}8vVH|MX`%l$t#Mo^>+#p2D0BiNHx&Yo{_KmJ{sbeKt^ zH9AxS`&{w`x_@nM@X0M#rvE^BX=c@3>2S|q-6gict*L88zFz66x@?|9E99C&r)uvn z+WWi#VuS22w-N-UL9BHfx?sTUC=xacf$ATOXR307AtBqQ&f;mM9b~^Uh&*YC2y|6BtyF{) z)eh_&p?Lp2wHW!9IQoPlX4qLlIsiI1hfF@9z0sM&+TLo!tt{P9~LgM-kMY(5UxwUw&SLQ-%$8E#^vu zaS3|!8zGu7lJ$FIGb%d*V7 ziwM<>8AF5w08v}LfXq}q#+K1Ucv$UzBx1oPZLGMBZD~GMAr+^;Xy*KsGC5nm@V|J= z&rxVcbNL91D#y)1m*IcnTjTNx??nT)6*e1I3E~Zn$@kjSLhod$l3rVL5WGtedl=^_w!Es5h=t zo?3Nv1bb`PH~7F)hT503P^guY(YJMYsVtAuk4Vld9#un#GJ5;?50DewU^WnysY8Zo z`v7Z+P=d6+ksCm>>vZo0=MbAmzKPr+xnqwKbIKi#raTh21&m8rkLkazW*nsgX5DHw z{DG!5=yx{Zhh4?GWFB_?>{(tpvnn$s7pW6xHFQ5E;AEH8V1mPEZuraI({vA;tRIC4 zfl1Z&{g^|@1Bmh*$Lz=)dY@*^TdN(%(w@9Iz?t)uzA6Kye~uyj9~ceCa}qp0?{oT0 zLs6ff6hlOjz9|!z1~U!IbGd;g7QAKCM;f}Cw5o3g%XPcH86Bn(n{o+{->w$CSLbeW z_SD#gdSXy+VnBwJ3!WEGGI}NL{Uzl6%U!gZQJloH5-{PW%W0U_n$Cw6{o~B5&@lox?paEQ+?zg{Io4DB&ewK< z3vp<2*zREAXIX`iOTG=A%u3Q9kzhtl8Lm1Q2s^MaOfYcr{)bVOTTSKi26J=y)z zPP$#=2BO|gGr743`G+SP{>z)3j*LWctm-y75`TskVDCoJr@+}AQlcixAvl;DrI!+2 z_wK9byB5H0?WJ5CRvio8^ey|E|3EJBpV?3w(?Z!-;zH?&Gu(gqQKcV{hv}W7^o7eExirc|zd)aL=^&cMTWp+cUl~Jd$7TYfx4_F`?4@Sb*U6b{hza;|u!cMIHRkq70AJlw&tuvnzlrPliz-(p~??R~e;O83m#? zLVZNE+H0C$52CCqlmpYCu<--yl9`bW(G$lLO8_0IS{8TkG; zbpmXlRN4jGE*ty79n}P*JXB;2n$^52fb9#=h}h3+VeN_ZbT2f zy*wekaR~&GbZ2P;G(vR?!_-^@%}hl-71-81f~6IgXusMvMcGY0@aO4 zteva_zE)V}a>uhToBH}o|9+9;)Sd%3*^!-ln#jLP<`=;F^OmBEA0z#SRJk$zS;g+1 z{_N5Z+Wu`)58M5l!=3a<7gr87H%e;&dZ!Vu4w{{-TK8J}ktX5SE~VGa^TZpMi5ukm zu8fI4LNF2|O9B)RuwU%8?}Tcbi-a8P_ycL}X9=x%kbF-CixS4l{I$rni#rOENY z1fSZ3=G#mpy{5!9#XY8p3*SBK;1A&A{HaAEq_LLT_By8#pPqVqjgA4VwfSZnTb&7q z%y0hxuB85>Vi;N--_ZOa6E5L^fH3}7#UNv6ZfX2q%$54KGKxCt_n$_|)Ovq#w3r4o zeo9c(k-5pRd4J@PVB})Zk27Rq+F;Nm1L>$gHF+zm&np`c+&%`SPXnt`8FClK1b}tF z(xr^pD^53dqTm_Gq;0R+p3|+}w;ZQA*)Q+63mBlQ*GV{>OZstYTzjc?#v0v~OcX80 zMou0+yf{-bj?Ks7+^cwlIy+2P;r(M%WHu`&fHQfDja-R&*1J-YXLa<+q-uG2JfS(p z$pLaPAx)KvO}`kFX+<+%1;yMb2B|wh%`MVo$~ z5y9s8E}7XJ8SSWPTr~$!aVSPvs8l+3?2~L<^*i#@VLlXngC#YzKNb}Fp5)nVIbKqj)A}JDj?G{6{x2&@!{>+4?&r<1CsT+Tf@=Xs(BL0=$T; zGn5L9Gg*Zf0`Tw6aA2tOJzGK`&`2XrY8Bc7IkAHWg^!}sbfFQX$_aCsHR&?&%xo{6 zDFp|jESU{8CnroM8e^uhni$oG!_`hgL%l{#r=t>>7($Ko%#6rXp3W!SEqq;ha`AsK z%z-bZB0Uvzb&+eTRB2Z3T*TF7w-aSo>Xk&3j%}%KCL<~*$?W`3W!rc?Xv)b@)gJ*= zDK0wf7}JJWC3qH{xPVYXI{DkyY#}8G%F;6x1QBf~^~%6M^!(n(}j0`xO; z2|e0)bID#c!ZL|o+Dn@);gPJ^a(6q#o0{g-PF7xi;&a5F3dMo_Z?MHUqrYQ&qay>? z0nt6L!D5vSkZX4p<#Z5QG7x1JWOXh{zta5Po!ZrVR05@Ia=TgcqvhDWHjJv-c<&_8 zoEzqfN`J_uKssUA$=z4nlo%Qn)tISu0Al263z-UQV!d*%#%M0ua@#w;Vba_kUM2Pw zr;l>p4GzcUmG3Td=4UbQaQh|5ns4$_Q-Z4{vCccBIZFZ0I9`Hn)6iKVI40qSrvu2R z1zNiscKCg}aG+Ym*tN*$sss~K}>I25PP3<7$LHq!1yO*isbueNvU_7l?x zH}j69M{ezF`-3)l)Y(C?vlb^tb4vQ1QG>7=K$kKgmL#h@YPV?k=>yEF`$gZhSWQ7> z^HDQvjaV`07C>p|Iiv~}^g>Qz!7@#q>-JQbGTX^A^|o})<->LceXU|X%?r01eCRW6 zSu&|_NXqs8VXXd0sM;&Ea1_BrhjT9Vn22wn13@b>6|LY3-(PhI3mF_sKX;q8N?&-j zv%V3w?wuYyqpiPuwZ)g10e*WA$f&mh>WF!q3Vp!v^X3VBU70+;rZBz3wYusfhn5%+s>`F8OOM-Csz7K-`&PM-1 zZ|54`apwMTdbB@%73}|!jbu%oE$mDLjg3v6oc=2zB~Hn03ZRC5L&@pnW8?>e&>fQ# zbz0&BxfqVn$Jk$vJ7}ru!JQzIGqX)bC%FGc|7oH?J9JA@uc)H0`qA(5JH`H%pNsPY z@*YZv3GFZKRz}f1%Hhk%I+&DHUfc*Jt7l7iX-t~%-hyJFNXEvY3;6U=dj95V;Ga9S?0)-)6A#|Og@e5FCO0PK6jtz3r+UOK;JtF>Xc z_{3?$x+7H`KGO^X_BrWccG-@sQW~^^?8j?M2FmX{b8kj2b+OQoSxauHNpkmYWc$=e zpf5#CZI|gjRkU=?So0KNZ~-keU7}h$O15W_ZCvH%#LP1G!x9gAW@P$)jX-#)8Bzr6 z2I578*H0cFJ)Y9EWyZ`h_$x0x(Uri5VcbUJk$wo>-*OvMb{3VDrgEUK-*;P8RT z^>>j?rn4JRTG%w$RoHdEcPzSB+|_wgM#cfKeu2<*e|B8GMTa0 z4}^XZ)X#Xr!f;o2!TOSV590Hw8-fU~j{(C6VEp%~{>L3-o9-xY1r!L#_Q!tXf3lKF zrVcKqPR{>%xc|jUs#z=JsABr2249ln3SpDNrDLArl|j3HyOBm|P<5Z)5}dX5o%I>{&=8-#N}wfmisRj>qwX~+|3Qle3XqX&T24s&?a>4TI0 ztG)}W!vtx;J;El3>x z{Ws>XkZl#+OkEb-FK8l0Pq|BX$3Q7>Ohbfx1+5z?lG5nK`P{4d%PFtWFW5%yLp|xb z8I9B3RY#F?m}0jbfoffi3N4d!all>Jz@6?zu*O?-7V0NeIAGjvk?wi>z@wIoqE2PC z6+e4$XSSO4gYl4+${ou;D91N)p3 zzOGTI1SdAbi_7?0ibpG=WSghrXDe`w>#z$)YI#;F3r%ZL-F~KSatd22%{Y$Z7kX9~r;G0c56$t&-TO&BBZ2#oO71Np=PK z&FH~^-#J;gvgJ{Ivd$-Qhg@b74|EP|5%+ohz@9sML2m7>^4TCsy?g~Qi9WbEi@xFY z?W~Au$l~pH@RPm$buDudl!KAihI(h`4h0P2n89Jbz`qyP9?*U2zDIOJ$fO*l-Gw6N zyGT$pNhDDga))ouByjs5@B+6P5Q~lXyvldfZ#{iUd&N!?=eM!v?cpdt)fY3B z8W5px`5};9@%5ON6XKs~lB>hwW2)0U4NS5uzoV<;o`=ROAt13duYj(^*hC5;krG|7 zpWI}GBhYp7X_Vtwnuf?6F4BO-$DsHEF(d* zcz%*h3$>gT;Pxpx8${bGbh8fcm3&;{f?s@wU#bse9Y*>Pn0iFHK42)6y+2-~EjTyd>Vc=->h&%ZczOCB>Rq5E zXeD|6W4M)Es7!qxxCjsf0lrZfHvqq`Ns5Z;HN`H0Ax=%GSYmaAUKIMe{kTkAte{b% z%3{V#CZTk5tTyaNvG-!YyMur7Q1&&;hS3d>_uLb?Mt4qm^)|UB@E%1=L9V*wiN_)6hz`Tn$kQqMG|WwD zwmsO~9Wg9|U3~W9(Bl)zNMd%qa*1t~WCX+JCCuc*KKA~+ImeYy+-23pjoqc?#kKa* z!VWpv{1!{_Bn#u#_Tf5n?HnqkJAeq&jRKByyl#n67d!T{;sLRgo424B*iJxU=3Hm0 zv3o`Xlt~bp(?Xw6QTiUygf#UpSOQ#;JG@i@bYHJ&lT0V+pT^d!e zmhE&q0^$NzWedKqOGii*3u&M!fIzw!xLg6h{rGI|HOTVB#lhn#m@0Hs0K_{?3>1|! z1D^eSnhOAWn}YJU_em?jkZ2!;^>q4xKz#U<@lAk|wcB}zhi&{97w@>ga{Rwv1%#(Q zG5CWSlTLx@!&(HZ=Z334cjnICs@fhyQ#<)I6;GWqlEg5E^-G+`!72#cM>q|AklVLY z2Rmq41tLFhTQr8=LeMZ#fGp2IF25;@M8+%Y|pRa=WG4|kw8=@;LfxP*1N%X>f zNG3yH0+>@~|1uZP&GpcgtHJQEAOqpJ>R{#c?ImuDaSm1 zfqrIS_0pA3gCenT0>>Xd#>)M$djs!)PZDkLo+{oT61|Lk9K6RD`wb`$w~&*J?95N# z+tstY@NcIf{uCz~8s#(H(0lq%?XvHAsMkR?&XmJOCP5wF{3S^Zf{fy-l7fo1j-slX z+RYe=EyOu;Qq-M^sQkM6b7IN$2Aa*!UZPf?Y&0mTG*Z31>L}D5qb`Q=+8NzW`bE&m z`Qp9Xe1!V6Y|YmZr0Ff@j7`>B+_~T>z^jdwD07)>)@YTw8EzC^PpZ*z_pI=MvJr{{$l`RFY# z6N^goqUOb?8L13~$!}etH2{LYqjO;Jitq@?PD;Z%Omjrk4&&j}xG+g!Rf;~K#;|-X zdu=LIErntj4}UY5V}>eCH{<#DOfM`!Tq;{VgiS{hWlcrPafgj`X_2H8wBlt#69nZo zImRmZSOb)PyF7r)kD$4rT@0w8v?z(BcPc1hrmFBJCmqDR^*E(XUW*B~{i&tyFtD5% z{i3mcj;3F)_xKtel_jiviKb@*pc`V+Sfc}VF)3Pk2!9Q z*t&F$r|=z*YSWHuE-%g#z1+uNK5+JHPs{ro=GuR^w=1Cf8yyzHxZquM?abAconUOO zDw0Izi?_C2W*lYO6fmc4Y%Tu`@)mlPbO@ll2*uTm>r#>e?`|(^uBonV2TU2aK4ISc zv9YSXu)I=(;@8p99)nfmAvFry;+;8(C$><_R_(FY0xIoosr5mdQ!+Nkf;BSxYY-0Z z$KOp?w8DP$8+y`q4t=(NR?RQZ+`ffk&v@gqIRxBWfxpY;pYl5MA@eTcXJyI>ya&Lw z*&|dI+_mqG{v_Merr-Fz-&?HEnn;KUQ+t`zcVA%30|a>PI=z#Mm}ZCqfz;#l&ktY) zzI)Q!&7Mip)OL3VBXGmt)ria~(UtiU_18luO;mO{_45y7nXSLd?Gw{sc5e~v3A1^_ zWL-+#JEp|C--4-o{pzjhGSywX{yV{Af&|L{1f~d&<5SU_k5h7)FKD@sgQJG!#zu$* z1v}~S1U#p(D}bOpp-sMtmDE;9-h0=tAIke-V}vk>+5I{3RWPt^+v`VE4BLt%Z+Ln) zmC77;{LZLeFxeE}^7D=e=XBACi_7+Zib90wf9Cfm7Dq}c8=!bOE z*v~+LE2ZHT{tVhNP^{YRGd6i$4slu*damPGl23}0L5G8+YhyUlEv1t9X{BcdK3+uM z0|rY%sLtB5;*hP`qbWlTihohSV^%&LQZL%S#8zdn7^-95 z7EpDblci{`(3;@7WgJnE+{M;fFH?WdaxeJ&^LZ{&I!E)?N}AG1w3n>UFAd2J<84d!tla! z859KNi_<=u=DTU0ZRgiD&llzMn-tW6__Tz4L7rLDJ-X!cn-$bSd_uu|O3t%uoXH3E zP6+M70$9)iYV&Q{XLEu0P4ixYezQVuiqPMI&{sUZ7spCwUQP~Xsy;F^I`d~eCLIj{a{AM55>30m8uiL)>{-z&_^ZKK+VPkzD z06v(RkL$L1{a>H{A-;%@f-s+mj~rC(HeHyx{|Mno!UR?jPpu0{*N~J55|t59zE|Z2 z%;9yo)On&)ZDo-4F%Dnl(8b3snbR4>!rL1~_ ztf(^lwv8Pvn2CzJrk~)~I81SqP4`HHQqXbF4{#1BCuNdM9fi}6-^i!X$fu?mr%cw^ zArlCunui8im3fGJEe$tN&9sb}YuGbNLo+sX8a~vtUrQp5FT;?0F)}}fi^%(=l#WEY zq;vAOG=iSAH2#hlA86aSea)10cw$vJ#^KU4IR(x}>hck$onk9bA8!F#U*SiwM%~I7 zsg(~IJ6VB?SR-PPj&Y(vDf&sHYkY#CS2>qr=PzB?P?lAmN&n`YHdn&@;bdDYdbjlb z!jyG7Ua$OvqQWZn{3}^M!T247a}r)5ktIevRtai>Bc-lml^j0XyVEF}nxfolah?8^ zVu6zHMS;r)vezBW`^hRZCO%JkO#w~lop?USxkrSbpxtcV2mlQdnDn?2j&Ci?+dfjN z*x#g!i?SO;y3-Ern4OOcftKyBXx5zXfZUXXd*Ex1JWZB*0GeA)B7%h5+R`$_e%naB0>tNdwEy`h&0=?k#_ zgfKd?n-2M%{B-DW$1Zlu5UhWnKKq&@JKOA_g*0`T9ukJXP$0`=c&`x)XF4WphKERA zbscAT+dR^hBukbqnuA6D=U{@PI(5|eNeGojIFC|o*|t#&L928v!#EklHHsspnz^;& z@GCqGhx1iES&Ttb<22pM(KWT2Bw|H|airNpDsW#RYQ&3&dVt6DTAyh~(tz8IHps0I z)z>QWDsln^Vf>#4-;F3R6t@sljjX|&2BCeEvUYDe;1D=ta105I^ipJ+&-ErP zE|6sFdxICYT;*}qZG&yJmrfX!X3kc>ll^4kIB8ZoxUXh1aU+%R(Sbxx?1vZnag;aA zy=Fp8j_KcZQl+a*aLi5OO>DlfMT58)uL;ATca37~&SVW|Nfx%TBM5P%M1A+7O_}%7 zE`zN?5m*{Jg(Z@%9DFd<1=-bH4h1h12R&3UmwUuk0bLw~fB!^a8NvgxpTj^E-VX(~ ze;7t5)a8kXZIBiUd=)q1&?`lSA$UZD%2!{|e_BgX59?7qUR07Pxo+X$dl5m0sOiar zea@t)pP7&YpY&nTy69;4!wAIGgnvr~CYO+Ys@r4`dU-X|jTgmdqRy>k##Dj4D%vfW zLO51st2>!szp4qp&WUgObgRHxiQ%^*^x35%&Qpn{KGa>l>jug9OG$$~9D_XhAwKpY zzBZA+r(q4xZ;B$5)XGw|!#C@0RdwvA(pKn6*Cu2ZKkOMlQTC z2ap44kpK=j7ZEmSpfvZ$$&eNm4Z~0?ww3VHqnen2Qbnao4#6gS__9`}ol_Ebx1r$b zHKn~7^KLJyQ^ajUpf3iZQeih_elhPJfu<38S~YEKm*aXg$X}yz^1lvezagU2fDYIE z?>3i)+=)OA(U)G(`|)}WAVuzmPA$aEMs<_Vw@$mg0#Tt5xZ8!4^M({9Hhdy+|izc5aIfRwEs z>iIt7;7uf?OaXzp$vD7R?M|UEW+of-sfy@P(fSiT>%d8XS7sMOG{VsrHL9mG)^U1Q z5mrzj&tyvDR4zi*I!+st$|-&_NrIHYeR#F3tW-&l6BkFeRpG&?Pd2R{l#>~kqZOQ^ zh1{a7wqP~MivB56_`ZN(bWI-FqL$uGz?*dD%WCSQz4gAplJKs${4juEtnM~eW13fB zKC^O@p7tcSWbbOeF)-fKGt*v8a{H_dMt{V~wn-*|c!hTFzcfYjYU}IoTgu;#}ve$<>4Zlwtiw-&E>1V?qulVq}*&_0KBEf^DOR}$!^Zfm^vHNU_f<EMIRi#3aJEIb$b+LOHJ`io)NwHN!SvzOKT8U3yMb@l<-4h(`v zFF^LMc=+d8(R)iJY@$N~+;jH%xR7SYwL<27IbUWKoWi};e6k`1%fR zRD10QRW~ty!R90x_mK(3+*};5(WJ*hnz2zQAa?fF`SgR7nEw;nZ=2^=1~8pLhsL;{ zhwMKmS%r=}xG6awuo?Fhn&gu*9rqlKU#?V)3axjnXUaZ*LC2+>%I_>Ygx%9?6m{ZF z%7f36p^yaU#HdXfRb&j+ zRlmti9?y@@TIt1cYI8z(+ex?Fc)z5Ymf*#%)yG@SDd21*rGjHItA&y`bvfGwfv>W> zIRu5TYaG80pt@E0{(f7`^v1pfh@+s#V%Ciue1mXY5qs>YXxl64-ROab6kx`f+;SlO>eK9Y>U zjYy`@v8c51E>gy5lZRr?glG>h77qe&v-(V(o@;74ZmNC@8E@NXsCv4wSXNxQD8$qLC+B&$8JcI%yq_y{Y52bFsjA`R#+yaF+xH#Wim1C#mSaF>B zf?AFDTT*y*tS~Ar5g*JI4#{Jvbb-CRFG#$0ch)wfkp(SBo0FiQ5))Y5)1(qj*G{)L+~ge==^1WlG+pqBRh8~m9!p6*taRSGTgM$@hl zz@JeG=NwHHe)M2Gv2BU`H)AYZ)4X9@FUL1?T=8&Z?{#V6mMuW}&MBSGmTe}VMAhG3 zmVsBzq(uvI;%II0n1+#;X1r?89IqCUC|WR#?F)%}NhGP-C)=d#fDQE>SHMz203VAh zf`ltVdTTZzY;kmoX)R{p!bILUK+{6tb6r~k1D(0oSdOsKDnz@>QlMyKXlHJJDvj|= zzg_OW3Q*JFc~py;Lj*ak-7`ZXt0KE?>e&9J*c%vsy-(+jSN{g4Fr$bev@q0JBCs&D zLs|~GijM%S_|1Cv3?wW07+&LCvNxSYjv*Z;8VVRtH%PbAN+eI27{*uM2U%-lm0BDd zrdKZz;(%!QooID2hC!#5Mn&o-(tg^FO54gG#an{)lk1^diN0lzg6mgw|Bn?AZ#4$593Nqb z`F3K;cj`;)VP5!moLta{(vfMxhtuec(Q7)5;KHG42#ZWeiCos7mINvH@Bfu^@gJfh z+ij0d|3_uA|5^W=sIdD9w$L{nAFtruXQq}yez zHEDyy9M5@Ag3k|+Z=f4LM?_vY_V(FE+4DMA4AS z%S!2l#Xpr}C*SfRcT`g;^=B4^SQWkDuG7PI$j0GIj*msE9tMlcEe35DCt|SeSu`64 zR8_@eRCgS@m{{zp;pmycB=+`5VIy@SH8zZ=3stXKq5YWMalH{I`v2t2L%qlf>@|as zMa)md1=2zGS6<=c8q+dnQ_Ffm=s)BnrH zcN1)jMVazkPcm0^7ZS>k0EG-ius}FNh_SmsgQ4Ua!oGq3AA#{dZ&niWD@5)GwV=la z0{S`rU$n^|McKdqja>XUY@r72g{O@D-D}mrDp_Kk!9j11Y-Ucp#ReZ5KnA{9B-wd+ ztjB2%g*;%yD#Nih8ML(~EGm!2Cv+3!kyj7~NfTNWOcDV@L*RB0&6(pyxcRj+X~a4< zT|)oa%zN#5-}C*x{mr}0>3zE9c?D|MQdTC6Eetcxu0%v9S1DUc>5#J4#k#hz#mb^z zWaWRe+?3ujgAB!PwXO}0o(xk_B;5QDrdPPXjm!41%-%u7OL(V})6~haird_D;aIKG zb{O2oxlj1cv^>PP44Eo-dV|}4nRFo*(rUY+ASGq}EiED$WL$?dQ%bWWLYZ%rfR?v- zgC+*KZ1?PO`uhLvMHLGlot6xdi!*Zw621n|e`ELc%E+m&EH}8tYf5 z5EG?*U6W-Z205mpz2Y{xJd-^Qe~S$Z!j(pytRzk=9E;RH12_x;(?Mfc$7%dmMn2L# z66RRJeST9%;tm853nUnN9^|0r(gR%cla8o?JNBTgdn}k=B@H&+YURzdM@R zRa>n|E$3AeN2${0_4+gT4Q_cLfD^gd8Mp)D%5-9v}bDc^HwzrQPxLz)%a zoU>8)BD=3$wgcBWaI4DAG}(B>`>bmq_H%Fl_ye!%K5?*2e&t~Pdd}V@G+o(pRFjhb zL6MGSi?O>dh657p0>Ag1+vrx|e0Iceb~ua8ks|)zCvtc!CBJs}U08C>?9Nm@%}Dp$ zCH}UZsccl#;`pAI9mIXt*z|8%%=`oZvtsMLy4Xbs_|=ZaQWJO8vk-c1zdK-}Vc?kc@Z4s{Xcs_uFc~ zh1vrGd7{!?zZ}s#(ky$@ycTku%ChFbl~YD4xSgZx$ljjGN(bkSd&9Rq<4U%bBH7h! zJYk)13rCTcs9#KCmzUp)_m#=#uO7e} z6qn=Ie0B7Y2|EU_x|oLQz`YW@71C(b0^=Q2A_PEt-x-qkNhTJT?6qnrGf-3mnB>HG z4^u5y?>Z@m#ii8IoS;W_hDFYuR7_@}!8wyze1wisZN++R>s4B;V~Dk6=a4>0-(+g7 zb!yzm$v_p|NGyXWX7{l=YWj)ek^Gv?zX2^Z6~3Mu*7#69mCTx-T~Z7mliE!yZ?6th z+F#7slIFnMMTxxHi^JHdq`1)1%fCT1z&@gC?LzDUz%W42D&{!R|DubY^Dhx5C&3%A zK*#I&UNY6aT(p;d-BOY5G2UXtvAN4Rt9cr5H9IvI6~BShS~d3Zun)h*CyHGJJb}1y z=!tacL6IoE0fF0RI#!8gfLl5worvinHggn}MdCJM#Yd8fj*P-(b6ZU3dSy^`fUh%* zYf0W4w;lL==ir&!)oVw3b_?uPN5oj_l_;wt^eQ6I9&;CJ?O0`^9#&;eCgnB-r??XM%D@PT(|ARk3G-^19S3R#qVAjySg~=B``d_4j!0 z<5+ak_5GMk(%OsMR~D&n&Ik0X{nXAowhhi^q*GD3ToSXH7I8Ena3tidnp z3K#YpmFV^EP`CTgUU+)sqnb#d%B#WV|9CA3d0_3(h*iJ}ud9QYqxW1Ad51#XYs=%8 zYj-~poq_&ixb;`Y{8wQgg?cCKgM=A~uM2W+jN78yqP6Ql@E+}#T{kAVnK`WO{CGYSgD zD{3Bzz-D9oF)qe@^&v}jXLUuM~}woe)cD({hlB8L;)Ed`5g9&MvUeP9U^ zFUvA(x*Sfn8b9m}U_;Upf;`4Co=Sv9YrGs>1C=S_03&n*E_OVh39@F`+Ab79VVVWoCs}B_G zG-h)5BgNsX=OQX%7JIM5PJ2k^H2emeq1Oz8l>U$Qi&#|;sOMQSw)CW)hainH|0-|Y ztI*=TnCGjH(u8Ym2Y7{7Pm8E|!b~@)YRC}%%+@kn;L4Qog!v?JovYF<*>!KJn=fDV z!42H~oqAUE$?UX`Whd1@Z~O~pS=%^ufw70 zBPMyVZ06&;-1cXM(-&BRlUr4Tu#c_Dw_DE94bBg|Jv8vZ>75C*2ih0j>fPh$tctB+ z!dtMZlqLpP_a=|S<=;o&?jF>x6{!vpo(qgl>omG2dq*{eUx>1wXtjeuq(#rsk>;V@ zO3Jr0!UvAog|Jz^P^t@!w(Y1Z+y0i8syorGsrtVVo@d}=b8%}jadWsht+H@A+6OkW zMWj6c8vF)^m>4B!$u*=SJh0N4uj)k&Gf1dU=>sZ}80yVp{lNXUw?cnm{N@*-oIv>< zB8r`@_3isVW$1sX-xA}QbBv!dl;)=fMfv}gq5n;|shhhgEn)j0vX0SdfkXv$Gtn8a z6b%BY7_kzQ1;B}ABY~m;rVdeT(k2JfabcjAms_ruuL882l*{Rxk?CWos$0-gE1EsO zA5GsM0C$Do9c#~7o+ig8EX2Ts1k?PEDc7F8&zjTRH_PACUr;}ud;(FDH{iRRa={k< z=AXwxjm*X+?>M|3Z`DPla^2fMnFwOQy4v2VNJ79tuci(_A^y~5*!9$VMwd>6oa(Lc z>E&6!thKwe4m;kog`^KMwgCA`7P3glPqwL_hC-7_Hxo8ktjx52YY;z4H-7pE>!0n? z9k*}4N8mx&y;Bx4#!RR$Jz`+A_LL6-)LJWj9@MbzZ}WjLu++lJeiacdXK(MVQu~*q zZKpRwR&58cPtZuzQh8Be;Hm`_|G03GEk>ZgutlXH6$BYW)cnf+mo;U5Nzc2V?YW_e zlC7}3{nU~&jnCOiPG#fDmyT`5rsxv8X2@~H>KMafI6HY1Uuu@GH(GSdJVVoYp{k0KvKQHQ{2T|3< zGP4|?JffLn2>kE>-9W;GT5WIf7dol?HyJ_QuT=DWKyWx`#$rssjj~loOoPho@nF`J zgiqVl#uMI2d}b6{^>#WOJy$h^B~b}~UIc2xW|wHBt2Un(G`U|EHH<&s#Nf}5%6yq{ zzyRXU4t#;8#ze70zgFeW6=idgQhZ$)r3h~xX2LOiiHF)G70|o%Psb~2uKc0G8l;kO zy4_->gUADHIc4xSW5z0$O>~`JZG794q?UK`fmIb1^%@2kt9~Zt1mu$k+`CaD7f9}J zED??6{-}R7FhjO*JM;A%kg>D9;RdY0rlM#(kXsbdIfe}M=w z%{t6}5#tT&gNobno_|J@4RCMP970!hfZdbTIblt;i5y>1F8X)Ug7lI#;=2CEDuFwb zg_UMpYobn+R5#)An~C8HvBknUt#1I{B&{<7;YRDE;*WWaL?0wX|WQS+3(h zL75b&@J|FnfD&AKExwUs%{#NYh+prH>(RMIYb4R7>AI~+uBmf!5y`TrmwjPkX0a{1 zMGKYZ#}$#>)ilARVuH;0qZ;ya+9#7UDx>Y$hNyU*+nsv$Ik16Nf>_nHp2Pk=Daeol z(TWqYSvo~3doO_2;sAY`!Q#f)<4ruH$gq+QH&Td8XQ`C=^Nc{TxFL>#Ai0ljmsFCA zPmRdH5h1|Qz~04ySuwmPT!-}s!ULsy0PhJx1U3*8P) zU6YlWH+YcNvQAC&eg`y>y0`r{wUuQxuI51)(I zY#f$|ja{xLMw)IVWASt&gXshLxE=%M!f(AfFc$NMPSMg^Jl;}EBk^T=YW%hSV!k$k z^m*G%I}+9;8I8-9$f`%C?&O?_kPHH zj5&)E1?Y`>H%zXXg33QUwZJ8bn}qO@MB946cO%4tG z~D*K>%CYS9ncWGZ}dWrc0 z4m|FOYf>EH>+jo0Frc%9PQfq+Nfeb!IWW>|c*N)&uz5%1k9dy+haLrr4S_+dPU^M& z%)LhMY@&zQ@?xyvr1(2unOz^qz{u4=~2%NoE^W zObo2T#i9@f9ogSIh-#hOJV_`9l3b;r*t25ON1E5`mS;&7`-wWga~V38IUG_y5h(k8ikac2SNBO8@3?X`Vai(Ku9Go4 ztVx}2kI}6w?=O+><%I?z^+aCZz8{7mr=!-KUenIaDBb9^o_E_^cJm)?^NL+>38lO0 zta^HZTI@Xo)U0oAY-qMm#^Trc5{k_(>Ej8A=k6os&Juh$1KL7apB;~Z1vUtcoCLI@ z)?ahVtY?d)B!pf_G|_5NRuI{8@o`ioa60%9E3;uceXtt)r+e zGDCHiIN1Vq{a4%w^!nOPThDPNDfH_)mY#{mi*AxmN4|??OS^_=K6n)JG;14s zJQ@N#T4xV%$yGgq_Peu3NLd>2$R*3N(*R31j?wmV=5KDiO#pASNH||iO5|&y_@q*n z{Ee`if1Wloqq%I2v!zq=caqeqgCy3uQx>y^h%N!Izu!06M~|ZD&UX3feRe^S`Gb@< zwzsc=%nPgYXK+Jj*bm5)W0P9} z-$=iz4<1L|Dl>^^Gm$4WxYt875dmj?kuOn^FB$Fcql@=68L!7K`Jq9wD&!^O5I$aH zkq%lchZeI@86Ku%bNPgLH|(p$ZKZY_q$^c%1l6AO2B@I~&??{l@`TSCWU_NAVhbx!4X$EBXa zb=}?6ILexTwKupQ2##Nf|F??NFj1a+Mg{`fW%$3-68~vt${JW08#?`WFH-~7OX(TdnA#ie!Y(uQ!|@#^z<+W1a;U)Gn$ar*hi_uH}O zKKq&%b?5!%h8Cy}s8<(+fyz!KA4Zf3Vy{4=p;at$WZC?@DdSOtr;#{YdXWykm94dE zBTt+K%J6surG8R4sDFG~9iKe!S3T|@B`R?AzQV^Lu}L{rNtJ(hw#ICR z8a5n{)d4$=7VYjvle2yHZe+Q84oovs?rti$N;NzOlH%(_FpUEcoDQ5cH)poQ(w)$M`=szlRbloE$mK`>)huKf6v z;5PeLP~n@|D#Qa@cLZd68S<>3S&MF_w*MD3@Psas%bV; zn#<%jBo5mjU2L`@n4}CeO9Sn74~skD!_r|k`$}9i{d5)fYUpB9l$2ztZ;X%Q*^WH9 zIXs*qqHF7t<~gWufN&=!+^DVv%KAlanEKnhHDYygrR5%O{3)oj=TPttS&KKA3MBn& ziS^*c2MqDxd6ACCNp=;?{K_<(nc%$gEL9*G;6QjW8a1`p5_Wh-vb zyfR(<5H0gs85^ zu%-$01E0$42odD;8ie$+2qNUmR$OotD#dT$1l%-0@WjmbJ!G!KI z$xvtvvmapFPdO#^%e$??*VYNf5=ZeD?u;I1dwn9ZZlBY10oy8&?nR$5k5yaaXSI$g zb6cXjVd~@PdvxPAyY*ga*ZrHo?(4M6=PWjTQ-l^FPyA_OZQc085cWS?>0|y;ND_VvrnvL7_2zpMIt|1lzs-bIQpB~vP z&17sas=sL+ENqmR2v$0q+60%Db}A`Z{4+^C2oa4qzDxS;xr9Q)F^t zzF+V1^@x4v^?(2So@ZY_)RXp+x_J^Ua4gby4)P zm^0fRpu~;NhVhzIck!lKtCU-m8^2Z<*)$Q@F@3!nvYLd&-%5cTHad#T+c<2= zclpII>!i8*iR*w&L#Cy>DQAtd!I-x*{d~UcL*{0&ZaD1*q|q7oLP%_wLM9dFOyShG zQEU!E)@Y{pLIRF1Lv#xFi>qSIp@KlHf!94EvePiGXBEvOmRx**_7x)9FX&hMUJIZm zedGMrKcog5r*_uQN=p^&yL)?>>y`-%Dxm|xhuf?SEu|FwxfwThIdP~^#;eUO2du06 zj>%!(ptt>~TTL{*2P^#^v~mSkT7%v{7Eeqxtg9=*`aFC!y-AOdQ*bpj%|@i)nCsg3 z7b(^=H{6AW@Cc?`T3UieIV+ggWlM($5yHmwHM+(aa|$*wZOm<}5yLnw^^Wf11Xr!9 zWdn!0-csZ|6&w9@t<)4OS~%%pI3Ne3$gAlu)ia{M5E}kg8PQmNPQe=(Nm+{IDXU3; zLzgf03e)wC=>nzOGm2r=S3*(K{f;5@w+u=!J0?O|pz@--PWM;Di*Y7r>)@qIpW?kI zno89|xf^JxONr>}IwVb>8h|-Zl+T`_>lV&@_gn!`7e?%PkYncqEmK8FVnzq2Uty8I z-8NM25ZgP?mPS&?pRn@@ijeKAqw4V zC*|e=<+jCuO|E-+~kQJ%Ku^N#jnz5egYb*T-4X1c~?T&@LZXw7yADNHZ+^ zc$og6j8Norcp^npqgkc|HWkNIeDCDlf&Spe?fU@^o~RLqrpUj$fCVZ%S3>O7dH-V7 zhG)kc=cJkBpm|a%t{csy+iIEJeXPcU%r5z3lug-ZxE$g4iML5tOqa!#mEcO$mu5aa z$iaFFJ=B31Unw{GN%Pcmy=>BJeA^3kBbgOmna+*GN4ITwlW>$exNfQ4fToS|jf_oR>Fve`zet}e z@`yv3XLq|UN~LJDj-E_DE;B3t=V2) zE4O9lD;t;b*cgj1vvFdx_d+z`f*;(GO;Vk2V6~xrDCK!nq{k>cdbG z=lTmBIltM0ND*T*V5*3*5ilW%xb{FWpK0Ym2$;y6G5%2Mu5#cDMxqOLzxUCxpphSP_mRH_2DsO z8$7XXvh~5HEd+)|BUr;=(Sh9l_Zz_hEglG;UewyJTyild+5C7+Jw(Y0ZkU5r%Ooe! zG$be=oH4^lZ{>kqf`Iy0q6I+NB-1a73{Y?=Dai{^HmKyW-SJR8FM+Js-3q*28v|J^ zJ5=yZ6kyde+yF;!7c++LgxJiPr#-&R~bwjOKeIM?TEX}*s zDsDSs^O!|mxJF)yg*V;WFXt}24QCG57mQ>3)Fh0nwxK7tV z-ed|AArG*SMZ8m>LAnX{7AeHpPQN;&>^d|*D~B{GgcR`*@l(YSB)E4ehA8d%J=ER2kiIm> zOIR97U~&=hN5rN}u$&i3q;e5sFIxvwT_H)pf-8jAR@h+)a6+Bm)mvDpkz=SpUk%pc zwsX)JHtP(ZSwO1rf>**%S9RRiW5o1Z1V$;xMk(u|sYsftbib;}AXK?Pt4Ly33Sd`q zK&o_tRYtK^DhVuS$a^Kn*Po@cz5IGQ}ZdR5UE z)^$u7DAU$$_EZE2y$B1;s^G?LfH=S^z%?lYkwb^&${lzqy7=v{wctkZZIHK;Zb85S z*daCJ4#3EycK(fog9-9c1X`BkCdrl+`t@uvB}Zs0<^^9nJdI|*hVU^(h+idKE^IY; zdpuOV2fYNr0SK_?Q4u6|&?I&eh_@(3*7;#dDUBtbC*q#6`C)FUKU#iSPOD|4EZ%X(!N$GMBjvidMZ`{xu2G0iQT~x5 zs*(pxJnqTAiyf@ifnGhWl3ZJqX_*~@k720AD!AEdD9o64up#Stlp|Knm(W=!^j*Bj zGAT=Eg$oij7q$7(S&q^#B^*?&`SC)?%{rJ7(%8d_rA_-}qh&*9)Tp&+73lcV2NY2P zyC-GF?u`m=$Bz?yHWoU}FyH5iH_v1Hu8S3JXXrC)r?(f>>-U@Zlq26a7nGnUGr2s8SK5Eu;^R-ez`z1_Z6f{8@I$KiW%8qN)90E5=M~&fL9Cn)~fpmij^6W^aVMMccRUgu4OYmb6p1j0zvdQ7HlSzW(VpFR!`( zw69KjzcqVX(=>mjE>|)+KS`Jh1y>Wy=xD(7Bz+DIH$zYMR`l+@&IB^0!q}72;(_&^ zv_j_l!)WI-a)b10vV(nlBl!pd^*%Qd1PFHMfk#?%*OOA#OonH3+spjb%0>OoK=pJm z(EWQc6Rzp7|CH56Pr03qdOa5Yd^Gs(xKEj)=5Lk=Yvm9xk|l5tl9d#=7LMU@^02h z7>Efl@d)>Tq_&5jb1y&@nV+Ew&jyMB1K3Rt%pd!6f*+TmpPteGBj0|k&;P4S6s-pBrlpK7 z;JVB?R%ES{nZ#x;X}& zUak^KL+ekJl?_o_VcTv%+W`neSODGENl)t7`6O+U5BGJB_<0+9m`I>ymPft-jFP8bJ{){8QtU@x7D8%6S0 zaAk}17dM7%i*sH^xG6UV1qm{+CAMoDXj#(7qsH6CQ=VWGsDMv8p{rqure67A*os_} z1w0|g#C0A1q`yN=AFsC`SYqv6DdQ(#^yUnq4ML_f7Hie*0V(TgtL{Y!c|0z9IeCs& zR)0PAAOxpQg1c|EOj!~I|1~J8FH@DRO=I)guAZ`SXpof+Eua2Yk@3;!7jhCxQi_*X z&c_gndBjE2ppdXq8k3~4%(*J%*tS*{mW_5uOT?zHyr29dnB9j(U?@h8SxyrHGB_|e z@mqhtkR7kF`N{sOCE5|ZT0TA#-l}a*fMV+@#iv5CJR-nqjlpa~vKUZ=QaTSeoHJ&G zVOy19*p%GS-83b8;=r_M;4PKt?}fL-@2E8MOgj5kM_ipp5aC8WUcTY8iOh0*G`3bP z$H;=bEBE|v?l-qp??jxeD#`B9xFFkU1YrR9O`NV!zsHlJyIaa>Kb;gWOp_8@%FG&i zhK92%IVCH?r_RidJxR?LMeZ0}But7$*8B+*eM^+1V1@^3y+f5r@sV^$=i$(i5*=Mn zHB~SPeP`$!V6pm2F#bv{3+@!;#lu!&9Jp5H0tCLc*+5w|E4u2Q_@~*)ukl6Yy&rn5 zf97Z~tG_5_jE~~ciTgmSFM4>pqHpw2*{35TmOKk*)ab!VVgdlu4N80(^U%0*eYemF zAQG-D4RPFb#hNd1i|e+Guf3FCrFMdX?B>UTcZDE@+49r=;dDLFJQ&$J`saw)Y=o6~ z3qUXT{ss#GUB*nyxymBZ&o{#(l~vxc+fkHeY$MRi`{fdXNsyiwhI19DopG#kiov(2 z=5LU1z%FA)IZ-{>UsYn&16`tP^a%tD4E>xr&LBK78@DDqNI>`MgmaIS-Js%2J8h9t zV7w8C_35wX?Q(|{ULym%ehkS}ao&y(!CIJ%jcD3_%pjro?4RHt{GPyES&pE%0(o1Y zc#3OTS8>;QR(mZyPxPp80EjN)5S@CF0RWeMk6j4sQq;@K(+gv8VzZoVVO>`vskTIR zyf&>1wt#qTzDqPE>+Gv@#HXkGAXv&Ro;hrQUVZ1FWx1_7LaLc{c)IbjCQD~_v}eF) zel=eu5pDiMT}<-8Z4v=BS?GgRFGtdByU{!|eZ9!Ua5`sj&4(JEs*&=l17cyqG22EK zOpp_&()*o;m2GSaGcwp@GMbHb;Nx%>Np8nq9%IJrRPD8>f9pz+ydR(Bt#1P`}E4VY!ovsUjnP ztk;O+CBR8|MPaTA+3@tC7yYkS)sEwYIJjCP!G_5@puiFDD*nmA{pJLfRL zGiplLAr|WD&_;WwaXPYSx->-g#;l^zxSWU&EO7SXRwR_Pp`TC|XdR6|{mYwB7wSf=W-ULoePFb=pNGX*eA2H%;%R%l?pNO!8N=xd@E zb}9ugJDhBpuDo8}WMO5>Cau3S?%>;EGL*_>I`!(a0V}G(D0?P+_GXYE; zXY`xc0F@iUh8seNZ)DhS`5RZYmstPrpx}{>@EElh*?``KeqWrAEsQVL-B^tm&wsw# z{l35-%&@+UFF%9PLN|#R0uWyl7&?%?xxs|szP-V*fxdnOba#mU-x0yzG%vO4FSUW+ zA;G>_AEX#xnY)C|H$V4J3I67IxmJ6*4*1Rq{ubE24DfaL{{l+j@B-Im@%NP6BvmFj z;T46U1%&4Li1_>bmfbxMd>ARY_2LfXUIBBD9q)8pZAU@aZ8YB!#;0Qvyi$-UzjL(rX##6&BcW|mj|r>*h;wktF>hw`kdp2zpVYBXf$ zTVvi0y{=W5?CLA8A^?L_k2Fl z&tL1o$ayYtsf3cx1BJAdE-?Ay^i8msYfZ$^nO@Q11q`iS7us$spZ& z9F^u2>DE>S)v8#1LC5N4(jhN^{AAl;+E?GQr(*L1Mf0A#<=8YiQ`gw?OG@*8 z>F5~Jddk<>(#NI!HM-?kc1~l#t2-Ss2|$*uXyaQ+4!z9s*=%Jj;IU3%uFXAH|pi#qesnQ0ij@~zX>*#7=th0J0vt|hO7~RjQg*qw}l%yiy4@B;KHuZcKK1z!vIN8>XxcXdjy0(3i zz(10R?FF7+Y8hHmM|dc*w&%CB+*Y>vYN~#%DR3WT%Z(6 zY;&Nl6*;56YXTawHwjzm(KzRuLu*jWQcvr*#VN@<-tE~3qN?Bj`rhwi+ z$qY}E*TY+A<;wURk8=Y_%Mi#(RPG%bsCkA?MvU~2QPsmx&`YfhIB-PBoOM4UEY!O zI!b&E+x-D>xx%jzu`MHZG=7+}&YYJ<-0dePH9g>rzqe*u31P zD${VMv7&5af7on#rX{ZL%&aN1Z<8YI$FyhjL#rVB^+6Ua@edfOz|fbk|93Nnnd!GL=>l|kVNEwL<%#4?-KLu+l~?I~8zb2u$P$i6x19z4tp5#c}(S(_8V(CQr{fs4?T*DS;vI`u1y#19ZwE^c zU$!#Q7vSenh_?u~_&f%jw8NO(&F~<9qCI4{Vqi&DBU)BlxG+c@^zOlfcmSZe8X7L~ ztT&k|!$^TpLRRO5}$B>*K#0U#=mPieQx~0sIPU9S69Y zi8x7*&W4K&5$iwXAoQQ+=J%dji)YzSEj~!@^#z}6!li|G3Q%YqZoI_A)~W8^o$lu? zPs;DF=UrPM%A3w8l$Q@GWw{WCkZQ-Xfc3)4VQE<_ix^7$kh_D7d~QbOm-Tg29|<`4 znz(^lUVeM}?73IJvm2p>Kb0|Xf=2$$!TBxp3F48wDJGK-&6G59;WUC3=vG4Ips>PccNeP>4aF1RT8pQulNV~Qx}5F5Z$ ze!^Dd9MzkLWVGx(jlPX|lPvPXJRJbNa$Z6N>&r5K6ZD1vX@3cUGwve|#5D2Dh?K-D zWjkiDO3`k}!-raRsU3pkUKNEwv&8I{5ssieL>QG*qx_EeC3fK?(r>>`)^GS(@1_Pq zZU~qi)sxnmlLQyC7ZhMU58H&HF6#pV2PUR)9NkF&rdnA0LMCV2tRS zlW3uKxzfail`YSf<;K>n8(%7ca8$kndnjsw51Cf+JI{P~?>kX>F0`!lFy;Qi-f7Wj z-k5*>;Owuo@tg?L+RddU=SC^7fI^Xh+f@mvzfGcH9Vh$c(rcJ3icSkl$WyzdYY%9x z!%NiJkrL^W%CcoC6i?gw<*c-SdRP=@&)>{!9VvHa%La;;IV!y;I0^Vf4cAMY)2A`p z{#w|J%S?+eMTJf)7`>LvB>O`bL=&t&q1TB-Wk)8(6nMMC{ma=AiX9rTQ{WB z&&n3&G9BUsI`Nfz*1~ezm{gMyE(XP;v~SYajZOJ1I9ZJ-u*zReW>9x_;OS1hK(DlaA#EDqv=yiF$YdAK6DN6&Vq|8Eeqp_?IMwM;!71x`-^HsMw!%K8 zDG~ZbJ)2gnjW`u`+z|7w=i4C%%a+m^n%pKr{SN618lI$rCu{XAq2gahd-Iq23Z_y@mrzssCiK;01-h5(dDr&Fv#-q|A1K8G~2T znrVu;il6jAx&f;V?+MN>V4rHD3+_c+YxPgaB4Pd{>VTeyVK}Xa1#(4*U=8aRnUP0X zk6{O8*3=t3cHmmqdjzVGw;hF)H`SYK@^jx)Y~N*tCzjZCSwMff61iT$f~g=)H>$Lc zQc7}C>9{axYX3Eit{yk+JhG_&L*n)WDiw(nq5r}Z`+)nb4nzC*$FeQ~Qq$k{rY6*7 zD3V{awf%tDg0ki6yYfOH#4CCt%t_$ism3e}_p|{e3b?<;uqS~y>-GqwOeYjl03xJYd1 z#BD-goZ-9CQ^*o8R@H}$?Lhzh=RHpm2UYE!2q-{OH{Ds7j;721Me$k|G=O^aG^JaL zfcgV3Q59bm%-ZlS$)S2{mfODGv}e-k?nRD2(}&If1H*e4amNL_vU~7FV6fw zTLnE*epWRa5YQC+|DACCuW?65J6jt^TtY@S^B9`Wt?G{jx(4Z!so~BNtDAo+XaT5Rs(+x!=ChwZ8w~>GkQRm-GHS z=XuWaoacPb=bj^`*HIjk#X{`cDWW8+n3M~T8mb%|6dEi|vg=@$Ty1({YBjXV;uFQ% zPhjwi==zk8<)-7%b72kd$@*+{2zc-O;R#g}-J1K-B>Lp^o3$gY`Yc8z&sxCT>I>2G zOY*!~zfqItxV1*r7P%*M3OP-B7>)`0&%7eY_x)hPLQlvrL9(9tw><%)QppH37k$O{SNYT zh#cMqOQrV_f$a2Pf+hPy=VkpU5`xl&DofqEzJD^7>viwfk2Iir8z^umX!F9ri7>~N z+ktoD$5d6zk0yj@3U-h7bx_iT;xU_w$JFv1{>c0`Nlsq(vnnz5Q^XPOp7!o08=meF z9u9@VNbu61e*1wYtjcx|L?a!<0#TS)~ z%y2RaaLJ(wfBBO!(BMI>jlL`$rK&MXn8E06i)0sFp5F?}?R2+LX9wk-1~Q(>&#Wl} z2K6aZ!L|3VY*ZGyG!M5)WOiEa}C!P)0514vigd178y zMjxIynV4mgqnF8QNTfd8ukoNOmN_mX-6!WSapl%XjS0ud3Tec{j%Is7Ip4~(_Lzu^U-YfkT2B2~bLGkkp;r4T&kMj18|bpfF#lLs1To8|&f(B~vx`VeGNF~U^Jh^mG7yJmllFt-TP z=tZ6k#*@7yp;jo;q#w^@_md@_>yn(Rp9sHBb+u+mTaM3T{cML1`L!^+AY(bhwt9hY zHie{84;=B@?l`q7gw&YDMR*@JHx7Eg=uDJ+%l~Y-vR|%&p_*8dU?x#Pm&y4rh@l!B zzr`vpBaO_^sn8>7^7@azYU@&y+r-#^(4;nobB*P(T_9!YLsh(HWIrny?Y4_m4lf#&=aI#-v=hu(7Anez;@glKb7( z+7Fs;suz1`Cmr14GG~6!Z9u#g$=PXC4&CR;_GZugrSF$ksMf8?FmP%(qwai^7o#)H zFQQEYU!S&-tD{qaw%JmZegpA3Ou2o5>+82X*^H}#_|7=i@E=_hCiXu3B8yl=$OOtl zab)c~{fCzLV^>cdAAfJ6I>iXpDIkOa$BJoj!ZsT4fRoLB!s~!?1`2*ke zh&SW9dyB!N*XGDz7aB;no)kS60A*?LMbfg)@6EGRcg<7*W~`XLO8n zzPf|Li<-aw1|P3!sr*BkdgYIUaU&^@)5}8*r*aj0@%W&T+Jt#y-(2*+$Ktn~((4UP z{7Ix|TaMeK-A!?v=$f^#N$rW{%wtNfmCwSpgrZM% zwej+Pj_-9OnLe*r)MtAf-tUAx*wwA2H)X>-Gc5%D(v1J$epP*c_Y+viD^+T|INRDj+6;cOIT8KU4UrO8dNIXOuPPXs$Mr_iZL?bYCgZF7fPEEm5-~snTO>EhH%q@^&*oF)q9bPrq>Skbr+14 z6i3Qw#+XZ%3|yDIO1LqQ^TN0@_3;?-oYAHv!YJf%*MqUUf({H653Ft4(g=@8P(7-W z#ToRqu6!X*H8Pc;Na}GvZ6os2(>97>au#MQ_p?>H`OOHw45EQLzt=0wXM0l4!ztu) zhpAUr=WG^9m3yHc6^Q83wwpJ^i`oY(0^GXZJd`lL+mVF-kv;p$qQp~!ci8>kYXgLI zJuI=~knM%mON$O%bRD7C_X_V;t&0j=Oyx;Va$7uMqxGgOZQl82TDZ)n*N>*MM&c=$ zn!!?)Ul1%UQp(-S^G5|;qNy$6x7$CFMH$k~J!N{~@%jSl{9d0a)=yA|2AL5E~k_={(i64T-j5;WX zmXQRE*ZS6UoA4;gmaSz9CXh_^IVIc@_c0(FpH9Fp9a0=<7Cqijf&W5xTJ%nPQhB=} zE@vhK@0uSQHLSc~>3F1Oj^OO1R&CGgoE1sN?}sC+c+XPJ69^s>T~`;t-GC8cedQDu zY-4pi`L<5TE<4u*uM6ZscF8F1-dDW^Ya2yt$pKUKZ(oX(lPEijUt^mxzOX__yb_Y* z{Ul>Zeno}I^?X+)@yf|Zt8|~R9<9=T`l&N)nuGVSxcUE4#>tFz@Ticp zD>LwV=qG1cuREVA8|NCDbE(nt>2i#3%|6@OR z3NMHb$*`)OlG9tmNygKhA*4u;ySSvERAfdKGaeC7GB)ug<4_ZkSNfsRcKf`0@3R>w zjYgdlQc22UUev$Ab`u|B9MP?(BXCRgZ+1NyFhtR@pHY=%+vcc!bug51hWTsToM;HrdMO0`S?P`MPoQ@ESahhl!rxH-vg2lNzEGl( zEz7FJkAB!25l$1Kg8x12%*5E;ycBL`&*KUid?{7qw7o8@ zz2bVUW$&&tgq&p$wI#4R{ty~)uOP4UoQ1$bK+r>3<=IopT-I^o*>xFV7dn(QJKUCS z1DoQKLhYWd!Du;z$Mviw{N^J~Drs5uJ5$0Y!lGRe2q49)jU8jcqJn2}y%+%u|q4zu`y%)#bdpKHy-)LEDke+rV zB!08Zs6n48RVi!TZ1-|3AI5!H=s%d4|zKhK)}gV)NLo zOBPp`wQuoz(1qPf^Iy&;kcPfdN+@gF`EzuhWd+%Urf_656X^!TbDn)B1SU)br zwCbL9Wb^XQZMkT-JXVWTj-Mv6Z24D1irE>dH&sN=cFB5D3-r3RiDcy`{W~4)73c(Rb$ zCp|N0f27B1CrK$=;X1J!sll7?#ylFhb*8pi6#1!BHrj;wwwa4$*jRMkEQw;l#|!jn z6lD{K$!fC~4RIfL7^X&EDZ`C1I`Zp5gzTus#t;}WNu7cVdb%x=Zn5XYez|jcR^K3z7+JiFIUQuh~VvCtkYxVu%_0W?pE%cwRuQTSjw$l1i^2XjWP>_e+>YTds z%p>-ePTQleuk%ZTmHFm`$1|YsbV5Cvxtf?~;wh8#$ddFZlJsh6-FeSEJH^GRblJD3 zo=rJyz#S(!T)3{GvnK@aP>6baIYl@AXVug31=zxEiKj!n+$qvB-w909ZwkdC!wqXx zy_$S3d(bRUB@<9{E%K)_#Pha##CO*P4*Mcz=A>y;KRzu=YQoJP4A-+9LT0Nq2s#5ii^?X(8`ImY>}0yGjvwBejg38;CYUoV1tw6}?nG<|R8aD1x zMZc>vk1>{#CIlPGgsIqJshdpEH9hfzW!24D(?2g|zf`6D=<>NI$_k_W1~G`j@bRKz zusbEi3jNzxQ^ap{lwe1u>CR+@62G<4j*q13OEApVVmSKQ7n^GsN9YlWU&^KQehy3h zhk67{=PoDd5pz!p=5>mlPGfp}@f#`k@YLEARbx*v^?Sn@xe#o}h)0ffh6qP~rdcYw zlH1nfYCl)C*7zmPdM30EYPpwvC#qVI{+etm#(E;DSvBTQ1s=MS3C5LL-%))x#Gct!M>tpm$P`o?o<@y+-c>Ys_N{=+pyHz+Mf z4NsH$s8nv+>j%BaPFTaU1~W974a&(eA4-;UGuN6S;!dUf@X?wmYvY7Sjy6AxY_MR*-vGhc%%Izcv z%|X6PQxyF8M@*8GuxHzpN^efAMW z^tq{7S;>J-nOaR<>B==_>g;;npVl!Gteo(um=7N2mJ=4SzR}L_@5jVaD(I>o5pdQP z5M>XWOODB|KX*e=ot{?o^}D8^FXJxS_hKon*wjnaT9she)Z?=1UA+X=xdaf}v60ay zPNhW$C=m)N656p?dNgnpD8`>nh}z7Wf4_*!?4W#Y8#iNxbk~Y3;^F zYLgI+6hBs4x({PP4AVdq^BWkK>t3j61VlF?*f6z^tOZAnjM4wl8I?ULHSNB~(DX$l~a(uhAvVtaO zO6_qH-#2N;bM0fWCgc0KR%A>2bQA06UHiY~A{(WopOFfMr7);d+g1drM-A&Lu6IE9xuPp+1^=bd)J!qq4#-8z&fUmY^ z!Ii0)taNmB5if$dmF1YeMjI^IVF<6`%khnn^E!ozn+kR7H(g@*U`S;3Lku4a5XFb8v(1M-0ST>r27(wa)>$E|-j_z*H6^rqFldR1%) z!~&czeCB`RH~|se?d?i*)ExUy6G`^JU|JZ|PA0M@=is~c;U>vz?Y#NITr=)4sNq=_ zQKer$IeM2A674GIETh6Fm`}l$ocKasM=He5?#4k9k^O6I~T1S zjH9xA=)DoIUsZP(_IT7uT7}~KuTvQr1vZKe#x<;M9_devqTiKV=UJ2)532-dym z&b3nHfhV{;;MC9`@r)?c?5?CB=!)yQTB+v1*ve&}oYBBo==Wh&kyBfD!!9e#{?16` zJ3LJ`d1J{eXC~#C$?I1g+X&|Zoz)6MutJqnzF6O{UEf$ydGU7`LwqP0;w-#jo zaE}Zt%TdtJxDk(w;ImpsT1V8gsH9W2xAJkYIiW#sxr^wJr9n)dzA1}(<96#d1WM4E zOQUIaq+ODot*_f7l8M#kULk+}^ph_7oDBj29wr0UbisEKIj)yx4Fep;RG;8TYEOKl z7$lcK(8w|KDr!w0j=p1ze0H=ts_(5?rBS%i>oy%r)vL{Luw#V8z|%_)%_I)9In1Yw z4b7%pB*iERTU7M35xVQ z^PAavg)dI&8Q5q!TY9JFKTGvZJ#!3fpoxV|g#)(K0cB@UAo%Bh(SMOa=B3e}e?r7| zHGBwqV;;ddrYbw|3x41N>n48+%9kDd`%g7BX?3NG@=zTwf5(_Kp@Xy94V}ZdLzB zQSv+LyO<;3PUv{Jzv$E$fNMJdFn4p96B3Tm{NHLvR|CQDpR&z>Kv2Gq{$V)T!Ocz4 zHTkx?*R~wL8Bb7r9v8q#s^cUO$ccYh=ns_d$PPKcE6?)oFmqR=BjWes*WV~~=fS?a zOs)qieFql<2FehG>)kq)wzJbQHM9G7DQzc>P3hiaD?nlbE#$zUE#U1%lXpkL94ufK zn!i2CV{aL|Iv<$m0_w^x8B;)i-z_85!{q=O1J>YB7$6-7GNOC>Rzdlm0q>0Orfs!Y z*3sS`43c|`C`3|sLkd90z{R{p1fMA1e$dBvLp80Wk>H?5Ggst3n%rC~TA>E8o8UTy z0lW;1z8i?Kqw7wyjNj0IWeXsl;9|jm<%29@H*EK=z&nW|otL7}PUiD1=KO@kZT59n7(%8*q*%oy<-)N-Tn%|V1u5=h#^`W zI01CGXrSjE)Y6K_r5pwTw+=2$oB-J3c{dKY#X&ffx-gkIK(&Gkv&S`q?@{c=XTershGI zny10qVU;}Ry^+7=+}&FA;AW9y$Ls=yKwxio#)6*ty=l5I1l$r1+h?%6W{Z9IEwG9Y z7#e}||0yWnU}-Fj2Fp7j5qpegXssbyNTnTt`dvWhMUULTW&aeEuiQmUvIfXoePd+Ia}kye%3@w<@o$ART3a2f;f(uITdJN(v%(H zdyEeMbXlz;!h0ZTFasGcdQ$3+?6y`Qs9cHuN-5w=GZ-rrFd$!t;0I_V4Cs zB^`N*dN~2o%T+LxgMsN!LHU+|`q_(?CIRRPGdjGp!=&u)=V$iz=icra zbr=xG6jPM9M7JEu@Ky=MA*v^zKw8fa69F#tn809}k11B~yoHyEl7cGCDSG`i{e z!Ivk9fz0TU9y0@W@z@jnUr@9nYP+5y+yQV7m|Oru-iGU#(CxVqh-wyabXq8nKsX}g zx8_WH8~fWQ8o>+LN!spu#P0sGO> z=_2Tg2V0XuvM=Bx5c?JIcP0$6C899FTT$(IjAYp-q{(*E<`aQf`w^s}n9~b0kfZ&r z++F8(?93a7ut*Q{9R?8tOk>Yti1si66SXDUcHRhu+dJ98_D?U+77O{z$vkr&gpE)L zgbjnwp1L>x;K2{gJeAX6jRIMQGZ>FC$8?<`Os1wOe4nf=|CmobAyD5t0KlBx@_%D_zb$sm5JMI(+v zupr%cuy;H#P+Hyl7JrPjJItVE&ay?Yb%Tz18pzG~M`E-;rLAIPXhFl_pDww-vC+8l zvsT69tPn`K`A(-V{*H;;QtDQl56TIaOWZ~Tfy1W)@4*~-22bH&2)RWCt=<|Z_p%nc z54|IaI@AE5ufS-DX@6a&y`g{Xe|EPn(L`BpinF~yhuT1&n7TA(#UyT#4$RBWWH7aS z2Tn=Purn`rWy8e%hmGsIoB9kuE9XGJ#GHR*pTz`$FbOx`yK$+ei=x0^Aw0kam|5aE z(QSwt3~B9XanLk%kar@j3q&pl;Ch&|4MOp4&cDy4e&covgzjpu-$$#607*0@ccz=P z7q&rA@VLyu>Jk$E@0n14M?bX9cAjvxe#LhkKL}m`#T=n9FPM5&Q?A2Cwk%ZcOirP z`lbE|XM3?@YZ-O_$Nt-6KDx5!?#g>EtM1R^+L8sVL;U(x`Tyc=FSBlO_g-k-LW600 v?yg4eA?FtN-(}Zr9qzqYwvA8C|6lQcuWcL#5e)*-2Y*^Y6fi9SaS8H&07aZQ literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/libs/apijson-column-2.0.3.jar b/APIJSON-Java-Server/APIJSONBoot-BigData/libs/apijson-column-2.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..b8d3c25791a168d771badc89eaff8561b8027c7f GIT binary patch literal 8213 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 OzY5T-vIv5Lf&D+*t`jBz literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/libs/apijson-router-2.0.3.jar b/APIJSON-Java-Server/APIJSONBoot-BigData/libs/apijson-router-2.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..6576ef9bc763b5556a920332fd8e9f0733d8ef76 GIT binary patch literal 14215 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 literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/libs/unitauto-jar-3.0.5.jar b/APIJSON-Java-Server/APIJSONBoot-BigData/libs/unitauto-jar-3.0.5.jar new file mode 100644 index 0000000000000000000000000000000000000000..346459ce4e227beb3d9476309c2252f471e8fea2 GIT binary patch literal 4905 zcmb7I2|Sct`<`g*#4xfY*_Rp1NMx&#B{P;WC|j~LG}b{Pk?f3JqGD`WBm0_tO|&Rk zUdu}eS+Zq`>8!Rt;;`del?WD zUQZ^@qIDa5BhIIW=>bPtir>ovEfpjcE(FIhT`7pQi-IzHkS(dksn(d(m;mkzkzjh5XCt= z;xNuPuoxH8{WyN28thoIODO;VI0FE{MMUk#u{(f1F(^1OC^!zsD}u5;+-9>fy)|5V z$->^^-8;2`CsMPyA@&0{Ht*KA?ysGjF0h{w_;TAiKB!VKIXLn5=h`W+H)mbGbjVFz z1s0O*2&<85NXIoTo3YvfS*1-1I|`qNQ_1r;no0*2X*b@H9xCiulA*gecLBtqhr4L% zZQzg;HL70ag|N`BUSjZkA0GK(oYRveId)W+N^xG5A~|}r1mvmZ`v$oPq^uK^Qsilj z?^wiCamI~`fHJ%9UWzV+r(i(U6=d@`)Q+R-1?N?1J2TTe3ytDEv%>}YG zl}tXF1>>F~TW|Q_>3DM7tO7S(U2=PqM?>m)z&)VaN7#0+?_HQ#C@W zUv!sT*{SDGX5DkdgwHx3<>X1yc<7Of&D1zjbfsbVne>w^d!GBHOf}h~v)88i?^{`G z!16re$b&AoKD2MwiBJUgz4oJyp6q+(7fA!vS zS<`(AA)7?)S3ggpatYmFoe3-djH?hJN0U^zvE;N>njf>;WGCQSHK7XqGVl-6+L)Lx zjrJ;K6U@UMyp@Iq4+?JkD#Q50PWhE)|UDnu^OzLPlUU$Q%!CpF~%C}qCw2cjH zn5g5#Jav8WhO~a-b0GL!i-@r4{n50c?-b{(-s{x_CJS!l;FCXq#|UA}Q|#T+Q7GKU&|qp!bc_JH@e6@0-NbV6xsfR`2NO4UrM;){zOX zl=FN!8`WX`=Xl+zcbF6 za-OL^<7(xR|5*q)mwXLd;i_ALxtjOD>Tbi(!$gc!rx-O73aLMi*KN2$YNrMS)kSP) z4Rw4mejOLUn$*5-YkV{1d|o;(*HzH|7_v=C;lZ#8!EElL4*bPtZJ_2FCnZLfSr#%Ec>)Zq z&6Tv?wM31UwY@Ub8s9J~zCF^AY%A*~obc@9toyR zd924jtGs^6Kb;GMDv@2St&$%UJ!kVeQ&wIou?lgon~st1A*+QfOYg+XmN={d6!x_= z`*H6;;wNnuj*6NuC4(%8$Vi4hJi(JM=3}zpjzY2BtJ0^69x@l2y5FO{+*FYU-4x5^ z2$EyrC4&O9nK<=W{x8=|X3PNwsy?{XhuH?9tp;`2<^Ikp)Jv<4;X7k2fZ~;VlwzTg%>@5V@13b z>|pt2w@i(@_uPfbhWT%ZCxcs|-O-*?6|-PH zI}uZ7=KI5jdaJ-rHI&qyfd(G$lM5sa+U*1tS7k7RqtiVxWuZoh4L3Ly@A7~Lchphc zE`M}NoGFJ!-?S+Wg<-A;GfOg=3g_bL`^vM}zS_$mXu*U5U8T>V(g$~U@CcqbAtyBN z?Cwx~dM&LaP~LDzky|V|dh#nfM?QpE);dT@|GQkV!TX70n~`XX9>Mo0{jP<9Xcc>2 zda7$nNioNHF$ELG965CQSK|i5Q{SOh&kh;-*QLy|2q!Oxq=-#>B)MgC1Q>&?bfjg= zxzbIQwA*h}x}=Y#viajy@D?>JE)gxn>}9KUEfeA&@O7_2pS= zpjaS6TbxQnB{!G{GT=X%x7B)TiFYT!6*b2kv@+}Bxfb7|?(}FqsMV>;+Tz7Exi=c* zx=#}+nJpqj&EiC@Y@itQQ#0YGRFO7`#arpHX^t3Wrf)l;*;?ZYLiH2Tu zwH)U+WpMH@Z&|QE4^Ue==?U0rrb|^~1P6yyb+w{tg85ro5py8hDEg-?Ap47Vtt zPMwZtyImC0yO~n~ydqECH6V@Mx{#edzmrK$Sk$>gzTMyP3=&+=XJbzWlQSrn(1;MI~KBcKZPIGS%d$C?A@z5NZ&o(axk?Ns~gBrGjn;@L?~ z&nPNeRP4Gnd2PFTx8T!cH%H6w`g%ga<@nsi5I0-_J(b0GiI-{_By?k>-$W+N-}^{R z@#dRFv6EKfgMA6Dv$s6KrcGaca>I~=ElC#OIS=-g-WcmJ8*9F`dO?q1_BX1&XM!Z| zK4O>TURSeFDt^|+V(7}xi8dV>0(ttJB1gj5F^XA53HFSOD|W1bPM34Ojex#p&F$<} zUOy`yXHhRo|04jvV`8zy`TtZrKkJ?Fm|;ZodHR4ivE>G)7yzU#-0&Pp=sHc2a*>o7R47!IoHd`z_Q@Y`FT1lx8et=`3r+df==-u04 z9PJ!nK6wt<$dkffc{_tpcDr1~C6DgYJ+kc!FHom7YE2ymHj<{M&r!on(BlO-BTWknZ@x2AqFHK5IGtV49rMyTuCSImP_>Kk>m?Ca!r7}t#jWh+I##?+~@n*|+)ky$y z$N2irulS6vgu~y(9k1tFEz#bd(e)GYGx#f{E$dCN!!tIriTNe^xdf$YCPRDwyklg` zw=qemoLFR!hi95dlS^dB_+5*S$Hz`l3dDAQX?{5lq`{A*M#gHC8J!-|aC$?byUaE7 z+FvEOjpy0=ulcK6*a=ncO)EVL7-Y)Xb z*)09KDAU3PvFZ!eS_z7%S*=U865~z+m!^-{_kD`En;5&IK&zB$RB3scyBB3^dtued zNCW>crUY(WI^g+DTj37BUrO>5`{ebS)mm*z#GO=0LhqLuF^^P1g*Ic-_zy;gA7WV- zmS!j(O)WC$fCWC7g(pX$j)u;#ebUg~Aa84;zNb`kZgE5(8Q}x<`-qRUj@}0DZFhQ|ICny+ut3^3^z+P79*5*eRwf4$~Ju zT@EWMgq^-jLF;r$93~E%6#gZOrFtd1BtIg=I>exh8b#1ooe*^h^hIAM0y2hx2*1!k zYKX!?eZY`iWqE{ziS(bPIx%{p(F5k;yZ!#TJ%IgLy6-ygTDp$_vE7ILCgcwo4y)!} zasAVF2Yybx-8-$sRB;gR?tcb*j=TM?*#2p|u+PNXeb~=Kz6brY_}&Aj`>+xZ|DUD! z!SH{U;s+esM2`P6y#8Tf{@-l>{hB*qgA-TipV)rB^bWWV=fd5T`_t$FJ3B{cep`{f z1ibfX4uf}7@Bvu#FnBMnUkUl2nRZk10n_#W!L&#FD?#tk{y9bO5vThU{2SU|3H#vL s{rUVJurJabdUktp{+RyWmmfjzvLBpg6cR|bOGHEb*pLDMIX_nAKRCXt!Tt+?M!UjHs9DzCbs#{z2CW~&abZO-Mgw+bwAy; zs&=o{&sGG0g2DXwU&YDPOXGjP{MQ5eUn?iBDoigeFTtqzUofa2j{jf=g)!Rp|GIzw zt7!idCMPT}Eg`O=${;6kFE=$Q3!rBJ!UO1OW~OEvm6;YV#%-Pk-%mwtn1NqNJ8Mie< zKmHr~i|EG>s{c8IoSCbogQ=RUl`WaHy{nnCxsi#PqO*gi7lVndk&8>UHmtAeQpR_{ zxan2)c+NQJPyK`7G%hb>5bMPpK3?1vuog3=a+I^oh-S-owBJ)>w@6+9XegE?AynoDk z+#kGTfQJ3hm096Z3eBT_X-DPulrf~wO-&|sc4Z@+-Axa&IC{sF|3LXBBbm45l+}+}izchgMy6vJv>bvc-gZH`=pec-xo+Es8 zZaU9L9C!{!aNZIkbdhUpr@qHZ>-aNbe=S6K+(2@_F@k^7r@sdrt}}DL72Fkv!;cCp=Coh4li=j}Z~vPln2xQ_ zssfeudV#}2C8&2@X@|fc$wGE8p!EaTqh>(J3Z;3?N-Cpas&5_vlTc6sa+ca7m$Isl~&C z=lI0RZ=CYwzs*0+7A7mHkn5U$>Lg0P`@oiS4KJZYHa|fAOhpF5kuuzyt}@97=vFfW zLa^}!DqwOXSNC7P>-@VY;9#kZVl9eVE(%c24g=3w$5{+XIZ6vy{S(y38?E-f*cR3s z$GAJq4x$4G(-xijHEZPY!}iX<)kVKUNewxJHbit@iJD7jwbt5)ucMZVlt{j=ekAQT zSaU?1GT=&+aFP0tJpFO|uoLc%Gnhe(N4gupz{9ZE@Vh#JsAJ=wA2ehqj-rNZHR2zb zSk)@eT#Mv16&_7Q7Q^NSf2MNn5y5n<>|5s0J--h-7(0Oi$33{Ue(xQrB(>>F*5_YE zkM~$xyr81X=Ny;Yc)>i#>lfsxAd@rIaUgr3jsQg|G!t)m3M12YJHSMl{*c5=)_7dPGm&M+?>W~sk6aOn~oj&LV zm%f1)ct|h6DJp)Mp0Ha4{Jm*P&G!49$o{)6$%wr=|0{g9cPJiHT=)!aDsf-U6{tG$ zo?Kz(-ITVMfVrztkF5bnwW8rLBt0mL+?jX%ZH_daCplPz`*L9b9O zN5NIwjH^YS81ZYZP!(@f^$o6Q$587CF|T9`tKi=DH7H|CV^BL~$)r5;kBflo48dEo z;qqQXt(0~e62UM;qOdR?EAS_sBd71lK6cUaRP6}rqFGX`7SX6^`X$i6$bw$0)Evos z!=8dMZ~Oa9Ra@*)me~HC0gsfGhTSks25@KsLa%0p?M}5==G@sPl24J6SuP%GOHO#G zN-@P#Uomb!zV}ekBm;5po1)$*+!VTwrd_GbTYXSf`5>)bs~oo2C@jD+uSR26Fb&sl z!6?~&Z=K@WUY_Jj<8}*W(1)oeptwczs8}l!Dx+grDFbo_z~cFcE=L0k^U=00XGXet zJ^>M6`}F%Vq>CW&RV>NI`v9UbbW=NQ-mGSM>^vX$@a}kjgi%5wGSOSmbfP4JT$2c> zER2je_N;_%UFn`;r;k{0us#k-sfS>*hUM|B`M8g5v(7G9_E?w;cU56=5JxTP{_%Z9 zInKl9n5B5i2F|63jt}?JfZkGiPc#_yL}{%Q>B(H70er>`wOU#pD{<(0I+~)+=54!e zA`{(zsdQS)(l$IYJ^d0~MLlO1q;5;l(A0`@YFqiZ;|iLHDV*h%O4=Q9*;>>{dOku)sI`KEx(hqp|azE&yFBV3_t(YS72 z&P0YjX05O_RqHJb6dVoFlw=%C2+J8On79nyh<4^MVoKza7zB_F7|xFn+D}Um5%uT7 zTE5oN*u#ulQXiZ3H0bzaF(_z|r`fQ~7!{P_$P>uZz?P>U-Q?t= z&dxL(84mfDTofkPQ%dgZf~ZYy9gQ3VFdqRpMyFhQ*qu2OOPw7o@_NRcm=b|gaxS79 z4JlEaE7e--6Eo704{k0lTQsmN%6Ag)ir5=)>4vH`us2Gy1h>=URW(Jyaxv9*cas#0m#TWqcc?;tfy)^z=R6)@msxTW%+(z1?93@IupH zGqy2+#ntlA>R*F8iA`X%Md6j-a) zUxB5tfo**l$1{5#PF~c2Dc-0dt-8h`5+ysCY}3m~Kysk~m=*D^?jXD^?hHrBtX@cBLg=Kdors8AaMHZviHp8Di`fSBQ4v6aI%HPX69Du+% zG;BbqAT8}Rj7){zxhG3L{IHmMeCjNVL_5z%FYT?3!dR4Cnz(-ejNx03UntwXCv05e z{!n*RxwF&qxi1Uco#C-RE%3zHWI;j~Rdja5ik%9tl3|_AVVjN7sUyXHVvMP{oNQyS zsZQEym$pk0MQYdNBzd&Sk91c#K#TGTk>GxVu{XI=wIn-oFVS4~byKx@A&sQAm7A%| z)`QF|UP=LV^tQ{qjK37v>`U@>$W3jW=h&JY?%Vqi%(W$J=*6H_y-1)ahG4LpB_Ns{Ac94ND)qEg0 zpcFd42s&vkB!_BRv75zA`IZ|xw#zlPf(>E%u%>Tp_N-FqIY-yV6#NJVQC`bBaA-tPc){7WdyziP z^ex9g4(?%O;QMH_iD}>m<}sqto{lm+QOKK-H3g(^(@Eus>-n9dyXdYRsMi)&*u<}Y zoVqMWw=z#8iLoNcl*V_R*5`(^fbOf)-(9+=bb}B6oWuDF$|axAmZQ$CriM;&&}mKp zC0F(SCAP+TbIhEwK+>2(yO8R%-s=!ruxTul%b(yFCh6qiY1+=J3w)*%=dki*j>^^Z zLW8*sHC`rLc~m+C<_1%liSa2M6!7-G{Pe#$`yHIl5?-Fj5<>`@e$|{d>7Bi&Hg--` ze;G1aQ6J?#D50-pyzyJS%juYiVH?_mTn)bO0KHSGm|CI0ma@cp!YJ7*C)0&-0#b1g z-Fb+&q6?u#N~LR`XkvM?a@9DKJ^V~qm*v;m`4oR`HNa?0}LlbsqFI`>#m|rrGo5yXSr9>FV}SCP7TmHWJ8ldv&Yl(OIc} zeR=~JhMlNPkVS7bIer+8d9+-a*4ierO33X9M^9Q{s;vi$>SA!UgRu#Gwv3XOPH*E6&=>>oo-bf39EuWjs z2v_WYC>7E8H{6YcLxMWnFY{?9v?TTfSA+DcR!@A$dS^e9QTGg>+6PmTqyMe7za;{< zHmM|C>5|N|e-nRx1V0gvEaiz80~M^K{-|$F3*jKW{{U74B)KtT4chx05y3Ev`Wo?* zNh6l&6qblAUY`Y5C1=E_W0ohLN0jI)d9LBq3pW9Zf>Ez0j-W|!9>zaW!xf6Uuhm88 zAGk8ic-!L{o4v0^gGO1V`jKfKj#(z#CFL>7xv4SV6gM7y5z7$!V{+>dKg_=tcQ&O5Dpfz3g(IPtm#=_V2=N*k7Z z;JwxGR>+>oI12GP(cc3+QP?wmAtT>;kB_Q918FJ7xMqeCfWiEIOSU74*eBQ8aQU90 zF7)0;jB|M2F(<~mCZWj^su|ks&RZ)T&8oOxW`V{F4koI8 zpQx2KkUwW)PpJbp=<& zCZwnv7hecfy=}eol<}9h*}zIfNqxL>`#P7FBR)tz6(#%v1Y_J59dzUHYV;zHq~@n` z$9EeqD&@OMMVC@bz5G_{7Gdd(<9AQ}O^uszM=3Cn!hRNS)dunanj=s!aT)Yc>SpOO z%$Y%Aa537{c1m2$7Oer4<$dqpCN>;lzStJWI#lhE`2tIaNOD(`c=+UzVKZ{jtt05R z0EWvfI)vmLYKOkzGY&fe(oQ9$%#fv>ELRPb`fdV17i(_ze1~T3)RP?&9 z6sPjwKqu!ec^0_N&Bnfu)swpvhINW9R;@)``jkFCaopauc07F2scFK~lbxliXkT7N z_v4%Uy^~jZxf`QdKDmW^D{#B|FVKD7oS!nj3hRFycY%zED3%UD=g4&82yhQed_ZeY zy=&}1E3G4E*a{@IXxpPXbDBy=da1@(H*ZeTWlTlHS{}1bmHEcZ5mazRPJI5~=k~Szn zM2Nu1;%$G4hm;|a5R)R#tbf7CbJ~JQzC&*;(N#iqZ^Q z>)bA9H7}`G+XXbwE=xMkJBSHN)&B{?_Y3mV6AJOY{)YjK<4Z%N0l%YX8)+W5|&`S~`~! zNMpmmWKNZ3*itCyeaeGxFRv1LM0HM;)w8p2It=+deuWc<3`0DO$@AMsI<%k45ip?! z@rYx4(_q6ItSoe^Su&%pkQ)P+HTmq}$k0_6Q*bXDmQi`A`ZM|QuE&J+OX%-h(jc& z`ad(_`sb0r2j6XC*nJ7irc@hmKUfwl?m?Bhr zcLpaFhwC?U=NF%;PbFAg@M^j4a|#>V+`!_NChu78Txluu<2ASk1>)IqLBpfpQ}auS z+$n6Ndkm~j<3)9zVz#7Ys)~t|6^7C?>Pb=UWHz%)XEL0ifaR{-q zC4$<3A!K-ZSd3>IWut9tR$1o_JE0hgL%(1BOWlkyb@;eM)h)y%TSqo5-6ei)toXu{ zlmJ>4uU9JlTqGaiPZ*l%p%P6x;}hUjo8OZA=z^g-_tJ2TAF>Qglz`<z*l79GZYPtGAWS+#`D^Lj z+8W~FurDz4SE#`OCysxV2Kxs>ZH1@Y;PoveIBY41!Jz#G@}U0SG6r~BJB#M}zEK83 z(3czdQLN9J(Kzl)VW{Aqoba&F?}qZBe?EedXpB%pNqakmy`u5rn{I8seKyFtODZ8?K;W7>0nI--Ua2A6kRFFR&?G z=j4SUOg!`3^?E$WK3ZT}8D=Y>2C3Zm(t`%S8xl9QO)+p=iyoj1)Xg$X8}YaMd&Gr( zRi8$tjZB#Ij8jxb0%xPA?JntgJG`ImZPvCITKpV*bO6_}mv$F0TTT>Z%&Yb|3Busb zS4(+03j6KSmpTta)62A-3!nMxr*ElLbCMF#RBF}fKvGThc*~z6#R*a;?`vQa=ek+N zjM#v}d^5%K$XgZWtr*w(zyO?RfQor@=?pcFD}s5A;meR9XaYpEbE@R2hY57vV?>B2 z^j-5RK^#2n3gu3MUr@k&aAd6Ih9>v8=;a+t+dk+P`G*6LgD;WK6ufiR`eP&A%Y43T zsgL9|7@=3|bV%7QL&8V|N=8r(AYo%~u!=WJWLB6rROm#@vXqYhx7q;}&K3$Cf81`33l(f?T)y!umbnYgV7Akgngn${ zQkoHTB)RUrr9c@F;P>117BDv{c+88n5~umJ6kmg(#&_CGw>8w5gJC#b)Ru4u<|}^F z6-865He54J^Je*J@2jf4L+_HG4WU6090#Eh3*$1%?7)WFLNYm+b@Hu0P{F%PpN3Q0 zYKcCL(nCqgH_K8e=$6_%L4BrB8g(mw%-N_E zr7b{uv{H-g2p&^u9tlTu8VjSIKm?-;{y>w@`jsQFUvKeAT6NbR5@HF(pne{xkOPW+ zF+B69DQH!ruTE&oBBQ||^DZ-_yl@X34FV9H7Gp9_U1cK1F_nhAMucRW&IpoC&`pwR z!w+n8oHwtizMPr5MqckKy7n3b-YYJGzlA& zB;*tK3+a&I@%|N?IfbHz zxx#DkI9D?#*~BDW*iVf&%S+a5$uPcXh>cv7MQg3v-;)rtB_Ppe*Xv}Uc9N&Q;#_yn zXG47RxE#ahc8w>sV$HUC;r1kf@ScPlttLp*+_6>W?U3qk%r{7q^;9;{kv8lBh_g7R z*U;@2zU0}zcgF?2?iim+0~&e1EF!PcuT%?o2~xRWNH;EIc@x{aH7339kQ>wv+W4No zzG@5IeOU~H1mVAzy8aAnIgR;%RC;*L>__H0RgI(H=ZeZQ3)pM@9ldN5jr3BIs2}Wk zzw0iwo2x8~lyDIWC z<{B~nr-}x^fBYc%pXbv5aiJ*eY~f~SX7Bo+W2#@`j{Kq!+DPwd%f^iIs#~C%Be-g^ znXo!|H!z+mV#IVwEPiP6YMzd~nEg|9U&pE--E$B0MRA06L3x$M(`6=OhI8ljaq8ps z{had`JzsU8Ni_uQISJn`8i&|P#EoKzBn5|@Ei+a^)(FF(>-QM9lXnklv^V46oJYUi)AOMlysc+@_gY1JX9FUH-MGFES0>!kGX zsz`d(=bR#JuYYvtK5h1JsD8dZ+CM`hUW=6THGbN-rLiJA6df~BT{0hugJSJsJbya6 z9nFOGfVICW=rY<=Fzd2Sl35QVk#gG4Jd1V zM(HBzUmFO`7P-*0UNl98yOn3SQ)DX<$p$5uv!H2dXF<}$B&mfp^%o*fN-JL%6Jo1b z#d7OWMRle+a|o;^K@B|nJbgd3Np~XlD765kOIAHdv+#{#-78DK{}umjWuS{jz`4e> z>-X=E8;)}J{HvPJU;1AFT!_46glbteBDEtb@dNRJZaCv)VH_DGZ%`VfLO2#VB36xG zrj15zQD)#$&2aO|L36ySfvS^4E?_JH;NfjJKu>Wmc602aYOvF?+7Y^7I+U?_bRu{! zb{zGi35<9*>TP?f z>msAi1Re@2u`V2movy(oUJk__IgCk&jEp%ds51!GzO8_Wq#&p>oE=O_SG%5}dby+d zbE!iZxV*l;-ck24+kQQ5iUJY-^!(Y2xYzT3<$TrtH`k}dXXj4wmGbCIyxoE7*y-oY;C7%q&v2c!f=7zML-DIU{+p zK$pV}R)rxf(LL4HL7EflH(QFxT7N3O-C9ILPOu_Tr{aB0>Qu8Cr;dB;k&`f1cyUA6 zh1Ixz3*UCCSIY%{h_N;8utw?>;>1raDblC>Z9l7Q|Ktb6Tcf)WqD=}&q93=Q-MLb7 z5X$!PKkxrWHQH&JPA1WLIU|)I^{E6gsbT0i*L6I^KSR&?L>68Mxid`9 z7%S9^s*DWuBnvL0NxNq|CiWhtT8yA zoHRAtVbWQLq0VeE6*i(N%C>zq6oflV=8U%os1WHx4zxDO;DYd?{B>!5S<#5s@md1p3KL` zsveE>4*7qpTe@P*x7JcyH=N-gyMrgL;U=1$@sF+wHoax8S`Hy}woyYc<84+|oJrMo z0B!aShkh+xJE@3ZMy;d%S@iAXP_gn= zFqbd`4u|*2K7omt^smZ_U%FpG%ll>pQ;s+e9*R9A4#g0?MOz=}Dcv&THX(!O$z8&{ zAx|A$AvFHtq@-*9a;O1GiLGVt4pd%Q@qCt(JL`8jKi+eES5mK)qMo5=AX`3i=mQj3 z-#`<5QH9?L0bdEZg!3Zb5fpF8{ohEOxIJKbvP$^EU2aX+ERq zzh!0_?Or*pztJxjdpGU~RbQIvzolmblu8|JUmd)^DEsaXTT{i#-LpPYE$_Mo9!VW= z&s73iQ@^SfO8vbHUJDhr_ENxBh0Y#>3BHzy7c#xC5RFd*f6$gx1be@9VZx;oVc@~k zsnn|m5`2}4GI|!5(qQzd3Fm8vl8R>RgK)&+L=fSYn*NF@#Y8tfNLe0i^ve!az`nAe z&^-cMpmZl)r5>BZeNS%PL zaIfet-Xw~uK#(F@QbKI)&Zl3Z9-C1b>#MDtNfoIvsOUhU+>~n91-QXBxFlGuwpVl( z$HF#vzp_v~%nvH_2isVr&yG43%etCAL&#OjWHDKrzsDL03M+m&{daKls|(m zXqI5PMIKw1pj&VZD^cy(=hTC3)l4gsY~5HI+Ifc6hsA#Pa|CRui`ud;st?A4E|pUy zqdT?W2#-r8pIIl9t3xbVdU29#B_sKiGpDPVP-9DuTM<9iMXy#2sgqeQowCh<0p!TI zlIYmEhX~YEsJI8!RU#}}3nf&Fh1E(*w5)kp>N16?rix54$Q!9MM8`9dr^xqn%__Yf zoH?X>RYdC~5L(d@cz4u~TC@!-%c?Pq>$#-d(hLhQl;*e8qsm`?BqD?NR0#FU4CxDp zbiufs;h|xN-=XNJp-cdjP|9d<8hFaA7u%B;wJR9P&eTK|b4q6r_YsE4KXbGt#+_vt z{ybq8xGHXyKdF0nkEvsl3M)=j0LoaUE!?zzl=^u6`c%_H9y0x1td0Uw)3l`4(y^|- zvg(^vtqzo}ZC-MF=-NJJTt9=zs%=_|;SjXEXSDm`)Tu6+$g%~F9{09zw{*;?b8ehr z=ul<#+TK^UbS$a2DphXSHHYSUte(kx*EA1n>O?mVTeV<0L>aYU*_XQs6Hvfxp&wqJ zv{IRgIBK=HMR;?;%xAg|&Di5MIe?TKG0Ok+2ZBeFRH=4V~ZDy8zd6GR~~ zSvufl?~BX}GRVm#A5AEPzFOmAbg;t>Nu?>T4k{ASJbpuM%=PA_DMNkHnM^@KC0=84 zH1t_KcBNllL?7r**^5}LT-nlMJHxm{uloU zkP9>X1@EDde?HwD7sOK=bdqGOkQ8-&hZm}h%p}VCOcs|h42nRY;{60gno?TRasOxH zLkJKx${3%24qD0wJVNT7oLuS>IY}ZWgVSDCYYmIcD-If74gE18^zFvLa zw(J6!2$E30Sq`uEhz=-Rpgp5G){u}?Ra0A$Jfn@@2uD32qEK5=ur8|_LNFps7$=n= z1+b%*dd%M@Ucm30uVX{|by8ktwfWVlq)NVea>mVAZQEP*A$(FuSl8+OX);z)E9%L| zXqA?pTqlOsnKa}e3s~JHougLz2}i(@9wHPyWWKv*2jVwGk@PnYmA;nH*K?eSRed?R zoE#M}AyX1}yRrr6HJ`Be8bpGP0>!jVi;f<1XM|!a^pT32E6O6}tu=WBwRJFr%}Eg|8RAss;}+HDIt{4KF*S&u ze<#ty4Iro&^gYO6!ARoYcO77mRF?{W)PmXGAU~W$m_YO2^v!piYLdQhwIoq z=t69*&uQmuAXSU=6Q!xAG4{_iDxEFUX|Yi^paGjFXwSQJ9n1SCe54=s71fgIYl*89 zd=3L87MCSbQO`+QN6pP8_xV}>HkI(TpfBCe3X7~roa4}(BbQPsRkdra?XRERN93+9 z4n%N>o!60z&A=*1$$^oJL6U^!1MQPO~o($U5(zbHH1 z1_+L~M9a8RP4b!#=85PxqqU=0B<9xjmV-EXcaJ)=7;BqOOH25x;o6lAHjm4c;c4mV zVaKQfmopU%6^nPzOv$1ZCB!uuY0o5#P<@QV)ry>H?E2>lCeB_HWOi1068Ei%;}gEq z#Omw07?mRi)l})j83zBRS9q_N?xhA*hEbQqC`xuz`w|>O^`Akka~(kIC3D?(RbM1f zVC{6j6og}GR!`89V(KF0sYP9;Ury&YAEnoGDRa&&4zXeH>ta?rl()$gim6w2^=v2M zSM+d*Oc4tC+MGu?!o9U>R}o8(qczIHZy?A^gcjPwfR)V3Gayqm4f%`(Fpt#rr;0%~ zL>Nm~44{P3aZkO(@X|#rZ@+$@Z|*GnJsWQu(fX=x`Mu!9Db05s#rEiIG@vKiie!T} zB4mj=yM6Yu#F(%g1a#90=Ags}&e_luJ_51PAEQPWm(>dmJ1$N{KElZlk}6hB=!~74 zJo&Gz3HbAiw_|N^P@sSn;M>Qom~4wUm3U?%{O|zhfkX@Dw(IZSh$gFy#98(>D($#U zq4?;O8`3AY%`#qDjfjpn?FI}bll(EhS(j)taX(k;b@7Dt^@W(AKDgAxe#7x7EU|A+ z2#4Scxnb-ytb?%&ezua0CdKZgvef;&rg>S(16MSX>=I-8$E>n8&;U~3MlE}(bqDC%j-Q*0sTQjRX^@=`F8#?ngw%GD4K$>|IHGO&6Ems$z1)n)M+P@B>bV@t*rHj7y$ms zKM#^qrI)HQQBn2jwcPFW*+A{8M*$pZ>o_y!PqB@^Wx*T@wiVaoJC8e9dEZ%~X7hH% z)_kK9%WAqp{c({U%mACSdLhO~ObS!H&Q+FM?gMJsUo!37Gu5`FkTv>YR(wx>vX;fPjKw4^O0WQ+FK^GY;z^rKK`-sxS78 zAbB|PmLq!3{RQR>gy{R$GOZwpppivac%{{<4*w|@6KL@7sMajDQ@w9yF3Na2*OdnNNu~LYw%dvto16;P?S4M$N&6J&as;~I(eUSP| zE6ZTb+QAn}XhM{*Sb>I~xaygDuThj?IP0(063=C&67}(wUP9&gpsA0=pXTdS#>~p zk7MO!(nw=8K2V+5b5tf1I?R_rC!&K{p1<)L%=p3}x6;A8!6JrR3qOjxNNrmxE-_`|c6q@6KM`HkVBwN%gi$ebA` zMLe6Iuu5}4r{I9yjr(wOHNZ6UL)o%u6m#MeBDvw%pU;H1e`YZdl1AG8HEkuqiwWj& zJSer^677=hr;dm)inXeNf@+Z|wN>DRWlDtN3PPX6F;r{!>5EKE$QT} zWjF^?-S+rKdQw_Kij)PKaeYfwjoIOPc3}LaN}xPRq?kV7>Vi8&o}Ij@%MF(KGTxSd zR9%c#8ugB6k*y$dz5cfos({zR?-Sbd-wzTCwW2E0^x?~kj3YH%0=RY;wc=90^X+n$ zk)z9Vt4lMQa*8Rm3)Yo89dqVb^2KB9WQH6b;tbnKS@;r5dMX|xM0Hzl-e`=|ajeyX zt2^+a+`r)qCb@>QIPH;rZ;!1RqmzU*GB*Hl>&>~59@P= zKu7gYbwTr3$p==KM4{|0AC8=eKOwBSbS!|WSp4J=kPQ+Sa&+Y4=!iyuTD8U-Nv>RlEd!5AWSmd2mPqUS5s^OVpOw z7Z+7mmL)M|Ya+Z$18xU}4@Z`11sg!x`L)l>o)_Q865D<3+Xd2upEqYS?N?j(+h;ZS zp4S?2d%d6Dy3ZLmT)ugx0+wCZEaVUa9xsk!d4&Ch#6EKdd-uN0<2NFCk}A$e_n)-l znY`cS>;m*#?`9RQ#L80Nx(mOE1jNuX`&0hJYNC}# zuf;a}e;ZH=Pzq>XM3D58Mt#eAqZ!Gjj{%kZ%&C~y zVT~yK53<3xZYxZE z?;-P`DTRTy6=ng`Rbw~~jcerw?sR+zIuB;!>_>_%SEi(VRxbLA|FHLq8!}O^6#6*s zpl&>Gd#r8y5Ujd9y0rQG*mr<}C(n1vcs1Gj zgw@pKDi))TkO%k}W?)IHaa5h3P6+KND{O|4)LD0T6@tXaSFUZ^wL6&iUgs-{8^2C;bxg_GfR~D&W0E#G%&G8H?i7p~?g&D7N)N=EvmFAz# zpCZ&Av&YULG3xLv0JX>tXa73+PKST>V}fSeaM&B+QxqrDG~neF_J~aX*~lj-7@m@j zABZAtE_VIhSb=xCs9(sOU!VpLaKYaS%#^n?@7{b-a<6H{@eC_7tbKkiCNXgsjyl*VAaOS5r3emCj6qo(lEkK;y>b%_UKG(S1s=K?N zM#|3^Vy`NYzwOV|Bt0}3nNAYhepx1~W$mGIX!>7S z@Di>zzO9GkXL@7{Pi}ayWedb|h$C(-D1lm5cQmC6QOqa);1lz9o;C6CE}$Uy*txe+ z0?C(Q8VeH-OCRC?Kw1EHKisBzF9W?gJYbI>;@I$WYU2ch!ucY&D*AwyS(+Vjh3{wn zvHx-(JzN9)f(ju|Q1ST{5uII;d;5WuK>j>CAuSIB45#4l4n7#KAd|HMv< zN1SY%`^Eq~h&5b-(P6>-+3iVpZ(pWAv$?c{AHKuEu?!OD z0K{ccJc43Bc2z`|7m@klC`%VN?l*KxK;GHOo;Mh>Sy7?nDKM4b;07j$4I>7PUq0_R zoN`EAQf$aqGVSEH4bg||&6U3&h?=Zn}v-@)3_`>8rwoxZ{#d&ADsUWAti^$`cT zsj%hr_=MH+cWH$|3sZuzjAb@vD7z_f>lUzhXr4G`!!k4X>IC~t4KVBaK*zrUbfMx_ znRR>6^3KH^dD_=mObIC=B|wj3w!D_~C~c~dWLLtib||a98{yGmEu@t_D2GNz_QUBA z+h*66oGmp9J9DMl+^xiSL`h>;v6BqC# z1@{(b6*`vbz$N%Y5JN9`^1mYz5t6kg+9g-I*Ev`n9QAXZ%V}%-_~jjF?4pP&QXY

    ?B2e(gOZ$KQCo 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 IA;7@?A1!2VU;qFB literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/libs/APIJSON-7.1.0.jar b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/libs/APIJSON-7.1.0.jar new file mode 100644 index 0000000000000000000000000000000000000000..1a16cb618317f3a52f2f64c78a67b79b66e173fb GIT binary patch literal 249172 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


    1u#025Qd$%WGaPx7JfH= zI*62st*xnvna%kMn&;cnxM+ev;CDYaX&n=x0dzg^xU)@mK5uw%SrrUG+<*&S)sHlY zaN_-Ux70k?KB5npausN{%g2HNuh0NbT6h+ah#_X@3slQxSvgAw0@VW9ju8%m!U7LD zR`58U{$^1WQiowqz|)cds{-(o0uA6)Kc9M%RgX8josF(?D7&XP;A*qjAQ1Tp5T$n-w$va=F(%+C3&02i-cwYq;Bo&s!dSPBUa0f|CLp8;Aj%WHVNMrs3y(V1 z{BKd=+=U|nbbTP;mIsIxj`m>reA;PL{JjNJ*1!2u1LOk0+U#&-@s9-`@H3Jm%F#Cd|>mV<=} z0vQ3;fRD1Stuvgz57YRtn|#E87MlSs8n_lCID!ZLJ4v#Xa0Ld%rf#nP?#nwHw$)k6 zyZ8Xi7r5XvdkhE(F0=mx{W8A%E8vn?hk_-s473MFu;Kg z8sSF}4oK&*)GVc7S?PQ;9`04_z-FPqc;*aj@xpnqf9FK!!xH-47zTk*00D6dnDeAS z1B8&zgGoD>x!D1?@Xn{vD?Bc>1jM2SybQi0Q$;_ICgb4>wl@cxtNpwY`3Jw9_0fA{ z14!l#T<}At?-=J%|GU?&FRfoP@2dmWe5lksa**+?Klt40g8wC?Wubm+=$MAE1AeG163r# z?jHfqw=!9jrrsmKXZC?SLJik?1O(@zfEl?4*v!G%{CwWPha6)aK&&0$qJ-m36P?Ec ztnnA=5F@_e=>nv0ztP-?&!Zh1<9yj>Nh7MP0MgapJQ|(!544|F_^WLNK4`~W0;qw% z$yiHv9`$&*cfO1_zrXwnqy3)sFv!oN{hT&UV%SRZ@9VMu+T8E zw*>!($b_Qc4mSWk0>Ihe;NJxQ1PAU*$#_6qfPc)uj{htIojd-;5q#sV0-!knH0*x$ zae)TZ3I7SLZSUgd=;+|=3O1KEaW&EMbo?&`>aAit&sV@u^iQ7x8`1&`SpTJfwI3;+ z7ofl_pa5`N?xa8iu3Y~U8fY6}l4c1uSNJbyX&iXw>;ce$u@{K@gbnLI=EVO*2Lv~V zz*=0!+1bJQKidC7hKZWD0thsob9U}lED8Ss$6@%(?C5+4Kl=#xvDnZ6n{asK=>y$o z$3$lzmpWxg#ltg>#rhe`f65JKpQ}0LStp+Iet*j5tXyZG8=PHtr9Q3;tXLc!J^a1$ zxeKd*<}t(Z+W#ls@ha4*lIJhA9;2ZFxTU`-d5)aN+{|}BI(@X#W literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONBoot/libs/APIJSON-7.0.3.jar b/APIJSON-Java-Server/APIJSONBoot/libs/APIJSON-7.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..a6332a9bb96b14676894022abd4ca1501d4b4349 GIT binary patch literal 248133 zcmaI+19W8h_C5|r9dvA)9ox2T+qTo`*fu)0ZM$RJw$VvC|LQw)?>jTUdB3&Ru1Z$z zv(~BoY(3BU$V-8OeFpmdBJkW)|IZ(PzCi&#Wki$(Xe4As>E!=(g9O3_xG|p-by@?y z4geU+U)^K`WF@MDJwAe@IKw(9Xb0(NIo~Pt_~Z&ogZwI8sYaj!;X{2tq>a z7pNwpQT33xw`N8tB1_WSvHH;sNCm%3;){1^VyZ{l7l~5^#40_7;{-cDDcf4gaqf%wN3h9Buv& zPo#f%+SnPJSpOgX$p7$nGIF%Acm6*vK>No9ChkTi_Rbc6x&1#N0Js5x{C)$x{7SMv?)_F15bQ5Z<`&W-5=a`acpse zK&q-?Y^e(weZB7!e2>r#1J!6ed_0YiPwvC`=aNntZv%$}A-- z3K@Nerp1~!Dw9@1Jo?dAp=8J^m~Od{pVUd@Kj(aZiZ0a$TQu!iB$2O$Bz1@9a7{J; zJaEjY^rjX~$j<`*11y<%ZQ~JY4zc;G!DGnz7o)voOek9l>`so{2Mc-Q7cz)Y{&Y`-@Ql|u#b=!;;ns8vK%yKPG7P!)hLL3UG zUDV;86teqpkBx{B8(x3N$9jX~=1$(X(*{#V7exc8^(^)0z|YpQ&XOJr2rZfF?omCB zqXW!#YEwfXK4`7PY*Ew%z&5uc%))LVP;C;Q1{1j9yoGb(zKu(NC0!|?o*S6B$clYH zX=kn*KHZdRuM^U>fD>{?ovQHz&-yj|3p4PGQJ5wx3+`#{63&kt-`cux?en?>=I=_( zD|?5l75x+3Z~WVaC<58JH4HS%$p#Ijzse!Pc}+~d!tj{zL=a$@*|pT5K>ZK&ywFjT^J3<9agbsErj^ zpo#fROIndTYV-C1g3IXm^N{8iB9{6sS`cmVh9f2zNKRnzDBKS0dp|CG9+2A(-lQJ` z^OFht6Y6Bt?epqh964`HrZEG)&{Kv(+ou+MDYoxHTcXF8olI@;q9?mcLNFVrkUGp2 zJH@hOslLZDDUJrLU8BVAH~|mF6ePS-*E-g_QhR5@TN=CA`C)rYvM?(XHv`S~%_BFM z-d9mr(TKlTEl+EhiYy|{U5Bk7<@fATePD19F^T2B28@EU6%jHAplJ3!b7R2oh}peK zMDLt-eI>Sgd(r!ESBCu0XaR}3M^pm_0(t=$!9QBhA6-Z5DjXY~W0d1* zJtHF{W~$i@D20982(%Pu_LFg}Ny+#N6Pr&}k*OUwdba6^t~lufs?h1PacV&C^uC-U z-ls8`zMxh}vOYGNEw`6t^nJ%luHdqITIT6oNWSHU6NM1NMAjZ2E#VXIP1_MXnct z8W1`{R0#-iL`1n03bwwQ9|*rpoq9To7ftg7|Z`L zQ#}3vCrIIkY(G5$&K!B6y!jV-JO~7cZGPUbAt;jD@w~!9bU3jYnu98qYGD!E_3VTW z+n~=B17sp!w|jbxraWDT&wRZ6JU-cfs{}EP9V65c2Gsu*@?Jdd0^ z?BySt)i@PE3vV*c7hvH;{>5VHy&KfiEH|G#myXsrQ}dmMJ(A0)L`Nnuj(8?1js#xo zi%m=1JYoM>ikwg?*G99Co-m?{Y_k?_%&!t3nN%J(?O~^yC>&VO2Fp|tU>GMTDkQz< zUMT=pEs!Y`hNL(nINSj|r16XftWdN$g6f%{Ya%TjyW_Vh7tO0@bzr|#Y$2?K8YFCk z{=I@0<_q;z0bo7+|E(Y;52wFZ&>tYFQTQmB=N96$07KjYa~H^iq}&r?dG35&pSRR0 zgp<@J;f+8>g5docBWNv{tIh6yp0=@~vxfiO?h0tK_WLlFB1ZxA2*D5ev>S5UpV~6x zo91NP6R|uAlBdwY^E)&25COTP_y^RV6EOpwobV!p?BKGAQ)0XYG^$+sF z$>{Z(4-yW;^`<*%SV@f=q*`JpqQ4@reIr4@$q5rgq%u@bhlzFR)|DGp(8gt0;@l7p zt7bY7&`OclC;ysH=kb_!7U|`>^d(O=YNd*cY^`PP$~7yS&3MGMgxNx;RM-wrRyeUp zyv*`D1To%dpdVJfDWy@c&ePUm>ENvV6tSN6i15nW0iU#~p}F2fQd};^sCxXIswB28 z$;8m~&$3xm(=t1oEp!Lzu=;>s)A?JN+Q^4fxJx%U=Q;dZKv}G43LyQ8V`Bs5eC|=Y z)GNq4j2ab*psfMqHN(sW0;zIQDisLHd?3>UmZx@wEx|5rYNJb{;Mi=!tjNnm?ht>k z9#*(MZ(aaWy8t8pSES_41e~26Eeu_p{~SR+@;_wz_)&O>V+?8F6%?c+9g1nsA#%u) zax%V&iZ>f;l9`Be39XiX9E=SF;cts!7AHa4YLAa*dQJNH`gZyOwe;48(Imno(kRQ5 zn$sLZHxg3{zRu{?@FOZ$w{D*%=Q#WBV3r_ePLt{tC@wRGU8qm08}kK4D?&Xn4K_IJ zaw9ZsxK!3I3NI6vJQa$gqK@S&3|W>SpTCW=kWXfDrABA&off^+6WG`trG6ycT|+v! zwa{?Nv|IeT&{A4PjgYK0#WOz{^zk8rHosgWh*9aGKZE~0{J);-AJ71y{|Yete+|E) ziGz!Y)1L+60to%@0mEhiLfB9!PcjgOZBKyTBUDC^2~xQl3r$YmSW-R^Jh1b>0wGgg zuPM|3Fb(rgy)FFjK(q|E)BXp2k2692^y)Wic>CHspAwu&8T+@j#Yrbn16;i0TbA|N zx2GIcEKrZ@AU}5^c+ex$HI|gDc9Bg^#}ptvxx|Gt9$Ltb(a&N|A?uC>SBtDsn+)1x zyq~#GZcn)AnC_~w;{MX)vjQ(vFl}V4LkO!N;fPL}4aP1-ZN2x3+7fU^rpTbaiZNlO!8pP)YNnB(;m?ol)bj$5!8)oYpP-Vd6>w)sUj z!Uu*TnxYvLx?hZ_9rhgY?Js2RH(B5FRv)qggwhLOB>x&xdjlgY12YpE3tLmWKN=6$ zgWVD@I5@Z#xT`35>%h11irqKv_qROl_w~2Ld7Sre1N-L#_sSdN9Sz>D;G&}7{uKjt z!ta>_9nL-<1r_uANUq?fqTm9?E}jIWkuci5FNGqbrM77trG_vt(lFF82t6Y`LqNOr zApf{o_IZ_fQ~>q?03-Ob$4>mvlPJs0Ax&mP@)-196!j<0%5Ga7M4M{7LuN%oa0Z4$=YusYseTJ>_xv zYhZ7b{`&p}dGkV_;jRU*4|g9>`|u6UL;12k%bdv1{kMsH4qUsI)>|;eM9eTr$bfat zh~fetOl2NJ^G!iksnR-Yz_mh*sIHxJ%us}-%W1IY^nDCQnrPuUHFsr!l0`f1t5{k| zuEgw?jms8bXAiL|K3c39mxqlI9@BS`_--(oAgOJ3BTvGMFG}=1R|xMDcO1vZXH8S0 z($c;6qgd~G2u>+Mhc9=*K^o5#Pd}!+CKBUnA&n^|rW61ZreHG4`j`1*VA^pUaxjsM z#MJ2)jQ3BEkLVi59nY#OLwFTU>f;867*2D=UaSH1k84uTTJMKIDilCpON7_!$&QFu z>61j%9>6j%QvK>;jq)-9(mb8#72s%-INeHKm(>r~OaAu`haIb=9t{cv^b?>t5&bJ1 z%7FH!XkujNX#D3EkZ7lbtcEi59UCOBB@o4;3{t&xm#n0>%m!6t4vYb#2T6R`;dDH{ zqD8t+>dDr7M$W|Sr`^vy{2ctUxg*=;KoYieX~#>Rr_7_bOCGnUt&d;7AbO0H6G9EB z{agGUq#+ApDxXxlELz20Hu{a)@gSwS9kt2T(J`3n8%ZWhuO<9F&IUM=vooIFRJ#sX z&P{!{l6$jtp58=}jtofXO$dT4{FUVzcU#3k!k$#?ZLYddTl8&BsNR2Am5rEzo7xNL zYp)8l64qG4iJDO16RT$wj2wY8J_`~Y$`kTX2^ZR7 z(5q~7Y$cOtQ`sDhW2!@Cp*UkFZ;5ZCMFfFFr&OJITmt5g#({0P=q%2kB z72k~dt*5ZF3ERG!MU3-Yv)84w=d(NZa;tQT#TwkEN0eZvt&~J^?L?FhYeikV#%3-} zVpCES-xfupeNqZNxPL~2Q%e;0aCrwW!}?B)oDzF>#JQmHi*aBw8()K|v6^5;5%?DE zTlbF@9ZdnQ>{sO7CHix`kA(=x#4sbMCk{qVfoJfovb7&GZgD+mL(iWSQN;JF-h%e= z#XpvnB!kMAN}O?()ZrEwb3G{)mGY%qSo|T}F-{KK^}7uoh16_`oHyqMZ%|Q5`3xE; z<3=jqqF2^K{Cz4JPbM+rg;Pin@yg0Nibz}8#U1seZpGys9YXhk6Y!!5(jvt1tR!gR z<14Hr79U7bLd3hw6dk}u1%+?H;;q;Uv`90I>w`KsMH8HW{{Dpf$o;^kKR4RCV z=B6MNNhpMG)C7l;DH4PU(yWh7hxg%AVap8ZzF|WvYqlwi3+Ch@mHp#a) zgK*%GDxBRCw`HUBz?_w&?G`r6h=7bKrASjKIMG;;hPldz`YK4*mv-Pm6kVFhfEBIt z^WiwV#@^<)NP!@-`sLWUHkuKGl~I*Y_qG4*-tc4*icNxn32t9bw^z3=k<5S)*=m`n z!kb(lyOMfyvL*nxO$+6WC}abI$m`2FvN!PGv3LR|x6uXQ00JOcg#X%E0VM0Mv(87M z{rB>~Q*@>H8AX#K#vc}A1mZeY5R&>th}qeoWL@9Cd_Xj;-;aTi;rFQ9CCix&>mBAj z>Z<1J-sA(yH0q8fMWLi%l^0Aiuo=>8L3MmEhb>}4#0b7kQ=ZkPM}dnOLRH3eeW}kR z1t=5I72%GHh38+q&mR|hcN-8z4T<{rzlFuE&-`C`e4oZnec)H!l)@1zbh?sXf^aE}HW zY`qriotE*=THu6Qr42G4B_~(|1z*~fMMe&&lf~DqN?PMZkC`7YTb|7fcE z2_A_2She=+w;)5<2nq&jxfiBpp{k+B342PAetFJh$#kXQzRh1f0PHgOMlJG^D)&aB z@5KXMKS)nb=%Y}QUM5NV%btqo*=m*dh=V=l$_MOCz`3PGFkOPjw9OXWCb^$(R$Co^ zsGHV&C{D)iI`6`~ys!x;cv*bu7Z2PQdc+^@kO(^D#tl5h1vtpXdrgH+@v9j$TL z>L*;H9dJ_UpZSltf^&gw{T-JASvCYN049?F`**@6ZzlBnG0%V3!~b&KMNKdT1?K}< zon`pzIOT7)pRoux;&Y|PVqGQwLUrw+1=wg0jVD`=HoZ){y7+j3*LMf{&?v#nSS?GK z8qnU7xDeHH@0fK$`I+YJ3gUl8=Q{fCVAEr^d4ECI$jc;&%3@Co8}WeiLY!h`jM@+j zZhGP}D^M!!vkDfaQ%F0MeB~Ys3Ih+QJ*gkM>|FW|vmvl09MP*CoS?5#_Gtb|Xf8n# z=FXjRmf^c--f}z`_pJvdbQfB=CvEA;{3{!YNUf+uHu$ap8t$WJHzniTnXY4@3AJ~c zMEWshl6e)WiP^Dr5nNz4ITITs80-Kh%uliD6GLn?3|C20T3IpoW@-9(%c zovwh+q-0iuP87FVIrC~5_8tR`t3>y}y~b+jf3h;o*Urb^M8^kU|Gt$g{pT6rpJ9*f zl?7oy2>$4+EC2eHLbTIE3H}jS9y!llGYHc0MmbqD_`J!u`OM3M@dlux$`7p!y4TBe zo$xWe&rL2p4U>PRx<4(+!RoQf1J}!`SFDyC8tWLD@h&7L-`0yKbfb~y;mP>4jKr>N zrD?J#oevos?q#+5(B#bziZV0>;C`H*#6Y0XOm|Ybw7>m0qp_- z8qM!9pgoH=GYuUwCR4dfS*x&nt(O_g{(BA>A|nv6+b`Feb+*@^`S^JG0s}N^$|8A+ zeD!{2K(-Zyz^uU){E71qa)90t(HG5O`Ss}u!;<(((Tcyp5z_BtXSq+FAb-28rK z#pr0FT#Cx=wG^0$O}F0cutF?+hI!oI&P`53r?PL)`)KsK^AJgOJmY@faa8_~JHc5LWYu_|=5@ z?kNdJtya`5VN;Vr|2=s`6g&g$>hEnQdCrA=5x|0g0EY?){&iLh+Znn1MF~yxQ9~93 za3Bdm5Qi`f2Flf0)n1v3ise;w1$xrZTwoMI>&D_E>QQD|8CM6hJ^Xj&$IPy*Uo-I2 z@CP@O=VXBs!aF_dD?XP_eq3&*zx-aW{DAPbi>Z;sO=B79{h9m6^6fHrKcaYu;pG&OIiDv3bQ>S{6OLfrdv27i;jvbUZzyg#b(_|#e zeUZC)BG$vk&C~k{J^1cWwbu3LLpZg=BtPB}CK(uf8BH)LQx)an(2`ynQ3N#j=a!LJ zdkR0YY+BS5*l`JwHu4rdn^7?}Snt3XQo^U8y;foNL=6|v&BHFqUjseG&yj=&t2&dh z`0*DIUC2o-w)z5P@jTtcM{F>uj@dUa<#_1+-l~lD$lnu`e!z`busS1EbEOH_m@0#Ruc5Dr0?Bk=|082K1@^S-KFmvC16kFhm>v?5@S?#RYMfy9kP~$T-1bk zI2A0wDBa)k)9?-Ml1$FtiFQMv%bGm4^Aj=lkzR{ntYiJ#*lFoq&^lg`=&Wj0g3us@oXhMB5+ z)t$1t6^pjMbmp^=Kr?9RSaJd_o3#%V+MsK%LSF{1vnz z#o5@^)UL6STdTd2Y;<}fn&xVFJ1USRJ4K?y(@>L|XXFl{C;vujGX!=yi;t^=IweA! zCCM_IrnD!>oIWE?E*_Pfel!|U#q{%oWuky7-y!dwZTU*_5%xWW4ZkK7#dcdOJW@W; zOFho)Ti$D2FIxOP^!^BeQu+tPN;m!8`M{UrO|;R{KnuY*+fN7C5$ndvq5OFIEVqr| z`hNP46Fsz*c(hiz$EuO>OX4(A#*%Cw1J)-p=k1q@vuZ*lX}}VqG*uP9sS*l#YcZ)u z33)5CV4b9dm67-%Q9NVUT j!f&pmFcYVZNw`u_Fl;2g51x?3b}cT%h)-T>A;CJT zE5yhrcpDg>9ZeXgrL9_JDN!{j0oOpHpeXP)WK{XtETGA|~!zSTKo!JlI;Dqf|tP)HR8HJpvU88m=c7 zApylDgvMu&ZO^0b==JChx`*Wt=}+gk^q2e=1(5!#f01Z}1EfDSK+o>i&&nR8ZNh+i zk))OSL;5=+x*N8j9E-8~T0tD&y+KhX@eOQouZ<{YQrtFm!TuG%#`ooaGU+vo*CaBatu`GO)Hb1PH-@ zEF6uBKV$>>5h_;Dp{v4U-0u#7=^Wh_24XS7N))aSO}-)u;4G#I>{WYQgT7Jh)%05L zV!@MfrAWFJx3^iH{zq6PWQBEx#Nix;)^KP>in(;4PRa@UTn$pa>*mq4SByvVBb5vu z+!M@I;Crc-Vs>kaLobrZ^wIgC98>|acTAh9981D!X6Y*>E<}B{d|0O0$M`uo-{>%y zX{uRfnI`===N)X}xFQ@=>6a5sFVYqlGzaYrA`FWn>`~z#hd9EocUU;@WD%&UjpEA^ zx|TXkhg~k!7BeZ@=25a#r7#tU)*mNeol#R9$hs1R#)?Yg6$}If$9Wz)Hu1dRoUG3C zz4F6k)Xaw(mI$3qjD5E#YBii9*k@QY%=OmRFysF_oAt+uDc*|;`YS+`6Mt_Y|A@A{ zfuoa&qmZMC!T-)o*~Cr&_BoWGDO?v(UuEWjz|@*x*m}3G1F1Dc=El2S(pa++7Ba;L zJL=Csyot3z;$Y{8O;6s`eGhDE=(J5aD*Vx@_ zx`?!P3gN?=TA zJb)@|nMYW5W?6c5qFo#UOtvIp#hz=bTaa5?#Gu*_+DV}`RaaWuR%EQ%V(?I5--++} zZ9mxu_85W?tU5Sc5<$_lNu@Y)M!T{b7_>!G(L~3FCO6EphzK4=c*M4xr@qbAreF+{ zXbFpG>Z`Y{l``A>Lf}P_w!Aq%A`0@*S^rEhBq5!XDYx&@>H3T=MeZm$e-k>K5XLHk zE`FNE#x%y~nROvCJj^nivQj9UWrVVw@#WX$+FbL3+Ao@1tML6h_VAJPIVhq;V1~q# z6!8Xp)Sv5>b>q-GciQ zGxlOtg)S=g$cY29n}%(VbE-gKl#9kDhDHcIakbIGEv;8&g_aspRjDqbE+VZ4rmgvW zQjywt+C`25$T*`u>$reC>_V|{gL<;l<4k0h2V`%@ZJ>Fo+^%Qr<-0uaEc7tZeT?Yh z0;ypE>ySY>HM2gV(twQ$d=C=)Ca4swI`|L7Sr(M}^jHZjeVxFdt(w8d<0A2UCu z_U7KB;N)vnVfRBR{UG2Zd65p2CkJUC)Q2BRveObA&FU6Cl{u!uQtW>|sEXBhZ0LAOX6VyCN@H29Nz;?8_inG3>G4!tHU-1}S-i-J?u(Ht0QceD+4U z!zOvC$Mp7tm=Gjw)&m7?Y(kc4?#yRJa)->7NV=o$(~%o?+2_92t6S*@lDk9$AN6@a z@>+T;`pC4jsmi${rs(MR1YKiO=4(uZGgnm+Go}ZwU@YGeku!^6ofDnD8nz68cC&0N zwot=~Tv%Gba?&7Gg?B!Vo#nNQpuwnN*poube$`LaT9ThAOS!9N-NsrrKal&(7H`jt zkZ*kG;{PB6t_{7Up;TMPMUnq#jq`mlU&pQomOI^6R?<+1Ju7)P1EvMjHg~~D$K57S zJ%@4K-P&c(Qj&!^*a|z$#q=;q?kbw>5{*E*V-2Q72e~>tX$cp69jd#&g-=#nY#&!0 zv`&6JO4NKXFNl3n+N!@@CGydzR3en1`T{X zB?+R&wtq;NC4;#}xdPuqU{5G|6JZNwrD|nOKWGfbH3c_XJs2~_L1R>$O2?_^Vu)2b zk&|lOe1lSw14v5-e$5BDZ1Jz9R4fRnni7FkQ<^b)m!2@c4I;?AQ z(T-wTO%)yNDuc4Famwc@NS^ln2uJw0Aki=(Eg2bOl@?QP6O#ge6d{v>>`znB)kOQg z*F7@$*1TtXhf;iPPhm0Dtxo}W)tg>=XJSuV_rD$^o;K?pu3X%_Z;q?quRnK82Kweh zUv&1s+x2d7UpE0?^=v^k39F}Cttpo_#vxOsGgG5w5WpFK|P1M4L!&3l4?QFN$GL0jJ+!X+4M5ub5`I5Kg z;qgQ*u|ftjKf}hWd?B{;qfYX}s>Y+q3XJQcz;gvp+*!h#)jcPhJI5e6=67zR}lT2T=pTBIz7 z9jdLg8n*nlFw=(IPi0Bun;AI=Lv8kOxJ0HYB;<}Nk@8KBM_kn0bPa`UF-~xa)(*(5 zhg$Ro2lVLndNr*M=b_m?+aL9Ouy`EHZ@n%*CXL%}r!LGXI&A{$a}0w$aQyeU0_+Mc z1s$uGRSS=sY*eo`U2X9M%z-F0?3O_68;aqoXkp^>Z{xSSjAb>w5e7d;cRZ88RR{0y z=goDHTQ`fhB|+5)JwU30f2N-f4cOZJ+67BSs_JdTt6;FlT^u@pV^xedID})P7eE9* zq`7oFv2*&BI{5&e-Q)bIy12j^pS9kj&xWx)GH0ZliKZ(T&>r&>?H->mJCNM#8U<8t z5cY!IPPHYDTt%t*v?h04JmHqSbyy>+hliFadBo=I$QpF2*J*{Ynk!E8P$rLTobCwQ z9az^~qqhLK&l-yOUgr3HU`&EgI}qLL8VS_z$Nklci^>mQ;!O)pwQ`NXV(&Enls(kN z)VZ@VD;n;iBT{}%VqKH%h4K6Bg&pv!@zC{=%P9}Mb>YOYrBLl`**+KC^3I8@Ov8|- z3HJbhwpCeZ3p(53RyJ&R=uON1@p9d9s)#3z)pA|%8&}ZgYj5vKWsWCVP(SoLx{_bs zXzY{SYdv0u-ke=Uoa;Ty9aBA(Fbr!uZHMRAoQw!m_QZ5R@L10Xyw;-}m;{jMZjDGJ znvih9qXBe@2e>3mxmpVTYcT7R9k`)4ti7WY8wT6Nk+UQji)fkD=`onk?7Y1@UC8Nu zEU*XVmJ)h0^Rnt}0df&78RW2UJiH<;wQVQUEob`3uffj{pl%Ggykq5r(0aG5=G2pyYwSn`|dkJGCzeO)i099-CN} zUCyxk=~1NUUwUjG%^Km73!2jP!;NyB=a4wzM#5Q|AKR*ZGk$yA^jL z>NX1jaTY*E)Pq0)mMbMEY{ee9_11hi!!f%mbJtxd!Rda@xhuTG7^vm0-a;HD%Uy1! zyW~yg-B5<4t&6BXH~yJ9f<%ZU0wp5X2EtN01!eGAU%0*?rtCaw({ zzMkF`j6eNpk8@;(4urYK6aPJfu-;4zJ!+{i33N^A3tH&4Z=Fs;ncpgJ>F0Sl+@&wHB zuM}uP7AnE;94zAq{VStKq&~nQakIVTqOnCNg<Xpas!71~E=f&V zFm*0_Ns!QRRX$s`3MwgRad|OcHODHL-G)n=Z9r7Q#YQR6`)$WCoUka|!Wc|0oqH#> zw85J0Hv9xK318doW)s?ObS_eRW& z=W!=r?Yz^>$Xwg}ZM`-3#A(bdgm>NfaTEIT^|*+O+D*MW2lzQrRfr+N!z^DdHY=84 zKofdTP16xsz!R*sBw&w}3Q4O~%5*8tF)ysS^1zUnV?4^!V1c?Mtsv^>0Ai9RMF_jW zPj-@*!I^7MPK@g>GW zX?KelhLt6RMlnxdWYnR;*pQ9&8H+462}#{8nP>A@d9}MliK!X^>wKo}gw4F{|&w=MV{S6|X_7*%MT8c|I|QKZe%BIz$tg%@R;91X5K} z^b6$gLSWIUWKJQs0~!1zl%+Okw%BD`zYwViLblE)xi{(9MFLF@+akho*><_eS;IJq zjb17g0@pnXC>}%&Zc)@0iDdTMWJr)WM;>^XBUFkM56M{`k!QOzWcBgvE8Nu#{KlR^ zKR<$|a&)0dr6*@uPgsS{rrvJ0pc0o#)4KDKOD^I0L>9Pka~BFhJEf?O!@b{qRu*1y zGQfIszC@&Gt=-wtMCpjsSy5G0ns<4JY`BA_S^B9ppY83tTsw4mb-omCg#NC`uB(vs zPAY#qvg&ruSG9EssYS*r`xL^L%tKh__*q61nFlXlda0I9^`|xfhW8CYqVq_%UL`cR+yv7jZ zBKXud=?`Y}<_z{0%F?eK5sAk*lxww-^Vu2G%@v43g9R9C<234)_8*_Apok zfChtM1yMI&j7ABi#xGP4% z@0IE!w}$wY0NXi;jAXOuF<^E>EK?B2y$d}H;C-^@nyvAWbi8Ju$7kw6r)@~(1d1$l zNJXd&1iYvptOI@n9|%EdA7RbrmhXLI->p zyJ8b)^HK}annO@XHwlD~Qu@Q?UA&4~N$zwN_1R4XcoRI_Qa;4-7?LL9=n!u1DF&Qz z({wzuXK}njKS?=aO;b(-YbxbJao?5&#;-(!=4J`8c^^g+)v3Q5yRfvnmY?g`bW4*x zCY|6$kc&{3F9lh>F-8e&eF+F2kKbnoFFQ>acQOAVhkuv4pY1;H`#$`hm~|b1Fct3` z?*qFM^PrTT|2@^Oa^&y}V@N;?4qgH%Oj5fO+Zus8bX-s9fyJ z&kC`W(}9@IX(2}92$&WnG-7F^yB*G9(M|LW8y0n@B zcNRoEk3d4HgOSvsXk0{LjM=ED_NJftppJ>ucOx^wIK(lLUqT;U#MKtHz7A!rrlx+S zLpry?v9IHPRN%g55A28AZgq75**E0qjYWQWmIX{~OKakE2G*5WrE_(v%I&CfNM{@8 z9~QyX%|h0RN{C@q&wq`t_Lfj%mT9Am=@?4tM#jFC9%a5>Ii0 z)8lOW4AjkOSmJ1!@PTP#;8V5ZkH!rI8$#)c>Np{Iq&B$tGE|pu?>S~3ZRCC%Q^1Ug1LFn zs3p)@+RZy^@gbKxcJ) z2u!Bq)={u#>wC|IY=|xn87^rx;<+5pX2NtZgJi94VUm5n3UGi(W z`xIoeDTPLK#>=(i0!2!~UI=_`nTplIgltyHV0imVh`&#bPD8sxp;C7qf+l2JzmieV zkXswgqy^jBA8j&D?pwM?i_fxe6iUs>`~S)6@*VCNABetoJcCE*9ERA#nJnB!QKL0<`&V* zwUu!mVUvB$SERrx(T`&(CHW3_L-<_L{mFPQW<>fSxofsmBQJZ!NN$6&I;%rb)p?#O zHmPr7k{M7v7)*Y@j%y2S&>Nl(hj5rj_zrVu_tZCT5I4?S0u;B4@{w3CIM)m@DAz+{ z7)4dUY2C8g)kLM15G)Qp3*(re;w4rZ`WO$@`>lOSX;?1xZ|R6s>4=#B#R=WJ$=iH^ z2mPcyb94K7RBL#`xsY~xwMojGPAD1OQinPVpN!Xmh$L#?LdN77W z_`CW8k1P$9DrsS=lwgQ9=4y**6~tUKD=4{~??-V1D%BCxCAKAp%LeR{mu5yJoLx;# zRSec@l1>EaI!hzuq@v9i<~a92UK}8*r&hvYm?jEt(zy0F&_Xy z3fJU`^EI`)nNb_Rs^X9fKU?xlAGfftQDyNmQsB$CqOr?O9rVUqP?wn&Yj}f!D!I}Y zkR?i9S+Ox{f2L6gh*svs2TPy8sJ12~*QT;6%4!?G$i+0zH{+~?FzyvBI8#Riemllu zH{LLQDz^j4uIi>>{k^?H=rXE{Wrt7S$HTIwci1=V4a>)h%+L8#l9~j!b%|;#C)i7; zj4eJ{p^{fa-_??Cly`X^*i~dG>S&o<_(1=_l(1(GX>G8jFV=w^=w=HxDGfE_9{W!y*FI-GT0!~=_& z#RsHkC-jl)a-M+H+U8NFLFmo<@|)YoUbUqrCBd|EdsEZpfF_l0I;NXh15q#w6)PT; zn#NDEY!_FRj?$r@T3t+s*PP4LZjJuRJT4mIW3QKi1+n=0 zce}JNWP}`-lpo5qv)LL%kNN z>+-wg7`lAn=o(@tCcuJP8o>ON?P;c$A`>mjOVINAk%A&^ToE3O3dz&9TAF{0s!-f9 zmra~x6kw8Cr~gW|l3BJV!yUNvv6WMDru3;B$08bNIOF2cl*_=7=RIrSCWMvk%OxJh zLh8Gdg5!3lWndkst9uVF5^jA1F>5m6+VrHh?0jEymyJf|N>r<}7Z+4+TSm#tftJt( zuWFu}?~HmBeMfsqWCS`<>P6OxD{sTpOO?cHy-e+No(s#sWx0R8Ka?9ZLO3!S37mnY z$s$6;P;(3#JA-FTTib@(m(?<=;Ly%cQO`8zW0L3?UX=Gpog+tF{1=b>Wc<_C2KVga zNtxN_pQIb1{mt-?MT>z;l_j5#R;$!5<`+Ty+1an$gag^Fb_5>C4@9VGavMK%)+2qgI8c#*Xcm9t8l%V3n|w*Kl%R zX5%9^frlzPsv$RqIO&h@)1eXb>NfNpgOAkj@59}0YoPeL9{mtUdRTqa5E*u#5n10S zXIzI5;BYYo{gU3_VSO=iEvL7JYv$fi(_``B4{jUOY)E&828X>CKp{U}L@#oYZyO1` zcJ#8hPy~8IVt1Yr#>cU$v%p|r;nwZi{4DGbGpx20P#40pJXY>HAJ2{AKEmnzl@sl< zyx9uHZEB6TP)~b#c;K`UOz7a|+R6aypji?xQzM^^j0r7bjnF(-w$I0|vr1d?T|8Tx zB=JalaFUM&Www_@2BdEhE)Wq4zSr;OSOm-16?-TcKwss=xAf~kv?AiZdY~BO22{&} zGRUsl(q0#SLl~+;n&y7jv58*AE+A2fd0jxZEEeOjDA_76M)>JwxSXcBRRdMaNT%fP za%1QBwv|$IiLNPx*K*-sz^L+`yT*o#j_}L%wYNN*VIKB$NVzfO?NQj^C4fq=`X_PU z@}rw_`tAYwFHdobUKiAfRyqRaK|l6hxJnHWJ(DX>iz4ffPoFjrC8Y5V@mGgYI!@(6 zhIWOZPE#~eGCkAPI=|7!n`*l4)@jEPK#I*NO!LYrI5;&U%s>xU7W@AJeL#Z0{?1?6=mdN>)XUG&E?)H>!h|@U zc5eFE!C&2D9CtHkJ7w{F{eHU-f;jMY&EAK`!yh0dFU2K87Ke*Z8DG5U_`+PT`iR`E zSRgMHvX&w3zR)-s6mH+Z9vdQ~QE6AEvTq z`nkRc#HP8vTV=T7fbwNXf}Zjf zOri8&04Q$=`1tcPI$Z?Cl>b*w%U9_=0EW&_v47L;-yme^UsL}o{*I;7?lpQJ5cmE% zC_YN3)0gV@ia$!}l)nLmfc!~N%6XG=t_42z3~*GzHoyY;FnIWp#E;Yh-@}l>kL-d+ zpy$GE(EDNN)0WJkWG*EKJq&~Ir!J&?i=KnPN6#V}b_}JCgk%^C888caz-;IP$3vdF z6Nanj;_G9qXU z<$Edh0nD)x9zPGy-5usJp*!=Sjy_D-T~f#HrgXErj}ms5+OfOo-R$mTh&tT~r@M@M zI&^n*H@o{JVRzXbyIat`?)c8OP5ax3_Z9v2Dcl8~qTLWkACf+FI}E#@y6;n1)CxyP zIF>nE>0z>n7XVh0Xs;p>T@9(Q7J5UC9=5>h$l;DY!pB0dQvvx;%^!W_r}8rbnSlz? z&{q9-?fL=vxl`*4s`aH7UE%fET=W(7HU*~Ips(hy`_gZ+2DKH&3fKt~I*LW3hRqr) z*?}$Dfh}1>B;t5D*?}lo!y)X^zoz=r<-hFFFDA$s7ik5B#Vs(YOcj`_H>IX^6ra-x zS!ZY<4!0UOK%_Z9q{)91jf75V1o4-MHPTcZs?r?5(kukowLYg>7Ks005MhQ5;tSLx zk2tJwH@I+XZ^F?`gqy&FTOg^hcPq?gj8&8=Q|$t;skVUs5vU+-cFb0X;OUyE=g{+9 zLg)nq$%S!q8RpDon1&X0UTiMI?74&>UH*^!rrlhIIdd7NXMlG77}?XogW=Zz30_j=k8+hp9#(?2RjWmIB5({gy=GymD zD!r)GL+Q&Y&l_}aA~RwkEplo(SrydNNPqeeUi7m3ROc#$?a)k#%{pPacEF85savtk zz_KJPOYYqaQSKy-J4xkEQW>0r!WP(4mQrA*n64JMtIRM{TH#(AG1aM@LG^MXVKQD= zq}4XKzszU)(p!Sm!S)t-{8)N+(X%7?Kf4VA{QK4I(7*5j_;)LOLkw16(~`jYp^)*$nWnES z-86PVrfIaoegx8lWf^8h3%bqptp%p5kTraIfteokQgT|EFMWvV3VKc74)ig_hMB%y zFwY@(63;%#Oy32jnXZ+tx)qX5-velv=?q@_kPM_*-b&+UbR0L+%;a%1wkAdZxlSRE97-Xn^jR)!doS>%}&Y)84fv^b*AHiM=GqBG#?6)05WhouorkbhT zHf5_ORbeaUBI(gArkQD|Rvaue?zhBc6$sdlLpb*l98PSABg&G@B-7W5M-bY#cn0&} zV-R#Pr;kFgDp7g@4U5;8rO?DuT5#$PoUUgTV+WrqP2GYG7SYSn%(N$QMl+1O(Fy)34h=^1!j%$8st*bRND z(jo+^Ah*yuqhDI_c#RV?LzA~Ovt0*EoeqL#&}!#5gI3L~b~TqfHM7m^Sj}v!CJ(iO zGy_J;Ow+Uq-KP0?Y0qHK>xr|>?O1JzNGsL}qJ&$P_M|pZnouvZSFE>Q8rIU@!PN6I zv5B7B@x)-}d6mJe&EQF<8ku-nFzdX!U=J!ky{ zO+7mmnNq=2O(ap8!a6OLiFKZZ##a0d4VJ;onN4L`smz_(w!c)CjAfZv7L=t~vNRjZ zc!rl!JClB|w0Oy6F*jTB8fHjKH_?2FSG~cWn>60M!HmbSxvUqD+}q~eX7#o+VsAa7 zE9Ku_7O49A%L7~p;_cz<)O zr=nm{vj!xypwJ{G6ihMu1#`^g7JQ(rI9Nn_%j{p!4`0tnKTW% z>&JuH)Kyk#aj=+(#9-eHzcbBXv1LmVS%#QHc<>={*rIf6S&3N^!$gUNfuX@7bLcJt zd#FwABua6YTcEc&(9GP9k2Vu83^Ie;ac68I%W3$WVA0JmguAg&Tw-H3SWLn-q^!SL zLbMrLmP`1Pr6H2}vx{-d{<*O^B;JRieRXjlG#)~-|WAeD)lJq zzXd#I|FRxt?rtbf$i%G)nK*YB%`R6Hg>(w_X~~4yzkA^%#YE`?8_}b zZoyA!Ir>b&v1bq7zh(bMMhf>EFmr9&&SCO2UY)<9MIFofZGq_w_`fz;6Z#*!^t)JT zk(taB8EZLG{mg#5!F1G2KQ1);Sw3_-x$Do8_d{8~vvY9E52ss2W)c52ANuk-Jj_{#^JrnF<IuqVtU%jaXo>28MO`7zw|?PiNB zW)G4j#O6C$KN-Snn?>5N3cA}0{ALp8QAb&12&u=YwKRPdy!NyR!}M(pdN#r9F$JGO zQzp<;0a`_-0Ge460V{ftp(T0~caaIvDnizB-6{q#hZSPlN z*G8m)w(Nh2?He;mbIlHMxHh}U1WU4=+9ca`-2y3uNw4GF`hwm~Fv_k*X4num)$&ar zX~#{FL&Ov#sUvP|`nHKtY=W|xrYBv%1M)Ok^O6~ol|ujdBSG&DF-8-IrVmN@8U7o; zK_w!hM%2;oQ(}*Jo__aBxAc*hu~eQW&%nw4^Zb|iFC$-L1AgSE6-l62u76J!kL%x8 z#rOOxGyG@rum5KMo&LK~`LFeF=6B1FRWBpW9k!7NvmKIP2YIEBKp%J%`oR-0n5H}& zeh;JJ4=|2Qr0MW1%z-^{96S$Ucme7u-2gAcdiXP(46ncjcooio*T}zr9exXMz!mTo zDdNAut?)LvXz#!S@OSF*AJpo7s<{_Fg%9Bi_!z!{Pp}9+$HU+Y91UOMQSdcRfq&r) z_%|+uZ*VDmi>u*BTt|F)3L>6~g6sl`&FI3L(TxwI5C4FEd=UfqCK~uYrr<|n5q>6? z;J?Lk{6;Lr@5D0v2~z}l6~d2MB8b^yAodUiXcC9?6r-?@D965HK8C1Oj#w@h5e1eI z4VH^Ku~eKOmWlP0e=_EZU*SM;J`NHWVV<}G^TkFoOz*@J@dyqTk5jv+sNEiF_dK7dgoQmV+ z(Ktaa#c6USmdo`xU7m)&BI?hSXW}e*8P1WLaIU-&E94zGUv9-?Gx86({l~J<+&06=D8E!_S}Pi_uP-~dLG92JgxY?=TY42c>+K1{GR%H20!(@gr9l- zf}eX{$1gl@;a8q_@L!&v@Za7f{KlJu-+Bk)ciw#b-dl`6dWYdY?*#nGI~VtRR}1uR z5Yl^waCy%bZtwZRgXBi8Sy1BGcOt7#J5}w^+m*CzIrjt_bV~ncZoRM zcZC??+bWLm{fYAbD#rLe7Gr&1i=%wsi*bGs6a1-SqQ8fjOZ``fW&VweYu;cpRD{zpW_|Cm_q-zBR3&xtkuKZ&*eH^e&sd!p9=wW#y|AWjIlMMJGsgfx#ORa`GR0`!~ zt5e`=l}dR%)H(1Qm8R0cR9C=hDueQRsuozJGO6cY>KT}(f|S>r^ulVDrLrN7w8CT? zf-|w1;OhY??p-hzP7~9h$o(GlS0>H3*i!;msGh194Dn2bQ&n&I8I*VyLbVbE!B9^S z9#nm(mts#EY*T$HRYdYQOZB6bqrf{C=IXYE-qmn~Zd>Fng?inhz-@}JRfzHixC_PK zRSxx+>poJvp!(Ce1Ko4PqiO)92Dy(F52;)#9qg_aH>-ivHqX65{8kMjNb`Naf_ZAN z%7Z-LB``tdQ;U4xT3D;c80?!3=c@v0JJ7eB)}`5$H^?^uU8<1A&Gmf@OH~n%=K4lO zR53x?-!}k9sUega;Cfq~4W-l~$MuT3OO+6%`?_9JThvfW^>e+cZdHd71R+;nSCtw@ z^-^2|T+7sOnt7_L$hANnu0}w*YXs@Vm#H+vHPDs71QDfAR(95-1?Ir%mg5Lfs zYz|8iuX>)gc+!8boi{A7j=16|H4f4PL*RKeo;V^UFdObs6VybK05JN+BAt}tcr_6>W1NgPt_Dkd0=$leI1$i`dhHtf&k_O{-mZ- zTR*H1+^OTG2AmwYT}`7ICBcTkEvlSgNj7}M)6=P5ijJnf4OzB4eNHl=r9;h#Nr#$A z(xGL7Qb9`+D3xvTx|#*OY%cvG#-&s`)aJe~h&L^s`y$43RGMq?7o}`&QL~9#EFSp+ zaxEIDIbhm&oEyWVe9gh*(GDKpb@2EF;nAAy=dszUd63NUd~X=;+z0)X2lxC01!TeO zhiQ=H0j~!dk#i{v6n{JvCU{^Jz&~F5#fs0Q+I& z!Mfxy@&tgM`=KYKccZE^{P!Tz_e1Z4gD{|Dza6VUyD23d00{2xu#O{k0J9CePk9JVY1i{UXtNo1|jc;T4d})&vDe%KFG4*W63p`1id`?#w5KQWD|71 z5F@eK^V=J&BfspxkQ zEj^nw@IjVI8e=jmrJ)B{Ne}jiy6En@;r3>Pa>P$i$|^?Wc*NlE;jp|JRO>q!6Sobm z&kd+!I&McR{)Y&xjdH`FiRDq&8TOV5pV?4NrfL;Oq28CaqG@Ucr#PC1&1G)W-6FU}}aa*P&B4$ArE7^C}0zI1uc!1Hl|D zO*Vbf3C;RVe=IcX=g@4x4D5!!+#46f1!lzzJ1|Qw=FBp~G!j%3vz=)Z zp-tmdHLc1+QoT39mHf7jXr38NYla^DR^&|mLP(WF|$ zi95t80A*Rh~XHnUp9S!VVQaUNx6@IWS&q<1Lc zkuqo|Uh4=%W-znUafe{~kSuDrLtJPdY{>SF?7{WY+ih%*>`_1{&u9@Bmt{Mpyt$p# zL+@_O(w?H!-to(}_8R+|eXYI5ejRrHVxi~|SI^;@`hz`#DL2FS+>|#9;Y+7Ujq zb9OJ@EbO&IT-tuKaDXb!4dw>>-2#0W$ZWH3u$MU?n2X3E`~hd@5^KF@wY=Wt*6Kj2$Quj1bHFto5SLpo%pWQC z-bpa|X6SDYB??r67ACwxY#;WnC#7;Gg{60|g)Izlcm71Yu@w*kL#(QBc zX|+4SD}Dz_;%+Ds_rT%eUKk_pgQLU)Fhx8FGsHu1w0Ibnh#gQV9)&gHF}P4X4x7Xi zaD&)Mv-mwcDV~B|;%RtSJOiJIJ@Bn~4qf7p*i*cKh2ljVA@<;C@n@VZUcrUpHH?VY z@kH?^UL-!jtHeL?M)4^=EWXCa#lP?w@gICi{13h*zQcFK_X1^-;BN!x$y8A+)5JuX zE|$tnu}Wr%25E}RWgl^^>?>}R{lxENe{r82ARd$XVy7$=Pst+jj4T!}%OT=bIaItW z4-+5AVd6h>g!opD6hFvO5@eb5$j;N1pFGHBr`*XIrOcQ2sp1Ur6aCl)senE9D7lrEE}ZWuw|4PgJMN zQ#b~PJD><%FjOs&-#`kI5221#*|c7M2D5dXC7JyG^VM-2ArZw8Q42XjA|}EdwTMz# zVksQ17E>x)HbIVVkt?I{n2t6KkdMOw0~_Z(EI<2mLdp29jEz33sn#WL8&Q8DoY zj?~ebUJ`Jaj@I;+KFrtAn!Yj}Lpoa1PZpq8Erk$-WC=i~fh+2Vs2K^IxIbrLcWKv%x zK2%kV1LCN+RD`2R#8Bq(6Y9*!8h{qn%QJ8e%u+3@}r82~|_^yt}WQzOn zc^z>Hikr;zfb&`%hS!XNj zAzFz`hT18O#5K+jQCLy|q}yUwUzIHP_Z8&$p*8&%DrQNIL` z^)O7EwG+s|`4RH8z1v&cy1gxXQBEg&QTr;kr5gmpGMr-mGdGQymzGhl?MvZ>8|Z(w zw7S2td`QkEsT>oav8B3jO6}P#`adVtEyel~=>jvKcDnCRiso>odLe7R=6>-ujr8_7y zJ#MMyfmfgIP6n0QdmoI@R1&^U_^;EhTaMRu-Qu5Zzm`jPy|}?56Wpc`Py?hC^LdNg z1g#TywBWNHZk$N##Pd9>s)L;r2RkVac2XSdq&V0~aj=u(U?)Z6#1l9F6leY^&iqsK z{5{TGd)afX*K;MYKJZ)>|4WGWDeuh$9up(URHoZ9R!!C67`%LxDDs$|>olvfGuI?% zu1U^ZlbpFG=`~U5Qr_Qi={%mbJ8p(a&J2^B87Ap8K%&YzE6#px=wy51m zpz=kwC>zXPO~~Joo$q%X46k-D3R}fJ?0C$e#8z@%0uP7>&4A?z;2!pgEoYEiPpv|3Qpr>l2R1z#Dqoj#UmSmotLyD+F zil{@1s6&dV!*)@J?V=9bMJ=|Y+;!Rn@)G7MwV4$!icyD9QHM}bn-#y*vn4vsbj$$+ zYl+a|Ue&guffeTrbrRL}-DTh5;#P~u@(BVujjdxQvag7U%txKe0uGUVn#i)$FauA* z)6L-Cf>S6dc9Qd6U|4Gh&&CY+VMZ96>-%0tn zrx~&e3W;S+Pm6f7nU7N&Ti_CI@=h}p(%U1rXCb$I$FHBQ;$4LETg5*VX{rymiI2If zrCk5hW>~=W#pesRi7(5N9uZ&ZhM%^Q&js7WH)Y9Ya*Oz$12?;9?a*h!_8n{IZQ1{+ znbab&EI=7jw4F2$8k=B1VXKs=Wq}VDCUM9`A9l7wD@M?0h8!9U_iUGLhA5NI&vA#w z4w8;1 zKZohWhR4dUV43_HYDmX4%KyNxiM=n7-$Jwe9&VC9!2Ki)t;B545(mAl5Z+f3K2-|7 zP%g|QzU-~M*iZQ}PX%zaGH`-Q!l^15=cp81sM2t`%EXB3!F&I>MrD&%)C(I`Z``2z z;FYQ$Hme-GMdjk{sz2VL2H-X|SPOCs`59|srx!2}rm7RwN#w1JCQs~SbqaYa6QEd~ zNGUh#vL)?rj#w*l(L1JQnqkYY6Feo(J5=i zb>YKW%zZTSU3$e0Kn~4=PcIl+;0s8VYM9ha2aE})eU zR3Ru;1a4JA>(NjMlE2$q9S*r_B;>0xq|=Usv1(l0EwyouG9E`*J)N+WPd?-s>eu!y zHS4a^IQy>CmwJ75xs#KBgiJ|D;D2b#T9%RbCfTZ($a>9H)TdSUA+_dl)SAmWR_@s@ zL(L>0cax%!{WIji7CD&S)!i(qE;0mVfxKI<1cRUqdy&Iks(<5FCvr1gAz<6>^W5$k)47REI(q1wlB3Col7|rNs>UCwJgNBLD znlw=}tI&CD3P_#DjH%)-@J)19n28pfX(XkA+DAa?RU?Ir@?LJ6Ss>D~PEua%$owmX1$hK!|NNCBk8J7S3CkqB~1P#VwXclQ= zr4|D9y7BpIL{BQ-CrizF3gs(`rk@FG*S$|EGq z-U6pt8T39@zpsm3bd%$oVSb^GQE!65)ZHXb^tJlk1VKtn<%B_r={!;otEV*iS(^N^ zRnAh}U0*A+Rn8UsniBtN&7oQMP{9F8h1Olw!wEd=&Om`Ibp>7YYV8vA;suRfgD$;S z&>|PiKHG&`_P`B|9fg7VVRS<*GWC* zr2YlDI!4Bt)O574>1biozRUPWm}R$k7miTpwZ9dtTfXbGWUZ-dscI`a1AQQnd1T6{ z%w)bvE0?E@Bi*=9pDrK;IiM4ho!{wFB>#I)HmiR?BeL+7m_+|YWZe|?QOlWEmPsN{ zPwOqVE2K!>waSQuq7K)I)s5g)H$j%Vm6oR4 zrb`^*DT$Nmk)X2nGlFenQ7-4B0w6fCpYLzC&zCxZdsHW%=K_tCG}U3LVC0m_k)#`0 zoi4T)h+BwVs}ZaVo;zd>z^sCThajiOviIevhh=TSL$Y=kaXbCA$|y7WT)r48Yk5md zHfFTX*dos@4tZ{gBToT%teDem9dkx#((Z1q{iO_dL9d79C2b%4&>pOM zh8DSJ=+^DW=HAV40&0v9r6mj=fZ?-l~*FnD%u6L zq!~Bz^=SL<#L{AGvsaEH#r+TrW<{uXms)vY-USA)&dt4UfIO?T7dZg-rjqK_Dz6j3 zA)6;73xiL z=Kcn2)!R_7-hq?UUN}|#15Q)#!I7fY?F*BBCI2nekOVn>klR*{YQql#jfpIy8Qa*MU7Zh~Hv zxD`pQX?!x$i>>bvFlrU6L_+Q3jM~Fs0W5S-TdITapOO>yFUU~;CWG!jzy(S!I{o zBH0UE`=GCdz8_&Ep|2~%$-8XC)lzrNwPz9H3R!)LU+Ini(eO? zvrdN*4zr%+FzZ?B3NjB!EyHo0nDs0h+g4eOS%-snmR5bdCXwnR%fi-ssrw)^Muo9m zQ(>#azF9W=9UXM7>sodhe@sxFvnE}^IS*3eAg(#^JrM&I@00U`Efj(=kV^+PscRA;b222mrV>J@5#yFaAJ+`XbjkAvt9Hlj;l zRwqPnun}#Q#Sq;a+ymqIa$q}5^G8p_Z|$(?4Ey6aD`O`7;6nSDN?+^fO|y1D9*+43 z+c~E|+y0~w%gU6q8nDkyfX zBuuS>(XJX|zj|2gI)N~?-ia^|ha7c{#>HsTEF0wyTAWup;=Ix^L08&#_+kjCjoJ>c zq;;PoB=IKbO2@`o8E4~+2UWbERwb8X+UO-|i6!u`ge{j&WtJVZMEjz$lj+l(==(04 zY|P(d+YlRL7GR0Ssy-pcc%5C`8L9e1Fr`Xg4sU@ivx|4i<*o85q`aWo3@NebwOf^{ znE!Z0oKsmur1*n%3T+o@YnOe>CRk{?oKHZs%4bNM1l8RRt;#sG?D`dP`{|JCI)ga< z92n+07e=_wCz@RVQ(PAj-7bb>U6(?Q>oRC`T@Gitu7Imt*Jv6p0Us&%{+fm^=mC8+ z4JD~0sm~E8XoMV1CFaD94qZ1oblqsvbu=7rx19p>thRA<-RRJDV;o&4gL^*-m%EL0 z1Q3xA&?ai<5@C__Tk!4UW7N|A2G26U>({_s<#zD^{xryBcEU_Y=ndOaEP zPY+#XVvYLqSc1P4AnjQd7pmXub&U<=fnEBO+Q=p z^AVbeR8Om2>RJ8%oPIv9pD*g?OZxd|{rro5zN(+E>*t&L`8WN1M?c@y&wuFWUj6(~ zKR?#bf9mIF`uT-^enloJYgPr%YCiGe8`w-Hs!tTdDD@w=PyLVjR(%iV{|8V@0|W{H z000O8AbQ?d>t*EU?Rx+K?HB<7AOHXWVQ^_`b8l`hZ*pxfL1J@sa$#e1P+@X&WpXZK zY+-YA+LUO$7(@kJ8~=S(eGeAS$yS@Rc8tVuMl70Tm$kTpF!3N?;5jSVKC_TmDUEm0W61TPHn4<2_vXd zfdNBcD5B{L%&M-&me>LvE@sfJt>{!=)e3KUxV2$sYr_q=j9SxIdHhwFL1|YQ;HEUE z$M5%8IGDpd&QrF`Yn2*lz$hx!MV6Z8@l}O#b+{7wLbe>ZzM^1UbyXEY@Ksk)wL$~N z60y4?7gYs3GQBuZUE!e@qWE|NieLhRq=45VErUxF5`Ai7-bBJof?^#e8!&}v(<@%l zxn93-iH{gLqiA~J*r`Q}=N8Q>o-lv$tQk{_2%TvLOotiRO+;t9*IOb=qgp_!1-(^4DlpH0tEoUrRDonz01I`v z#(+g|EoMeB1+v;wFS5aa?5VL_h%{@Lq{DSl{5l&Mu4-u#ltP&fa&xz=te^EzUzOifPq^71gShWQP?{p+ltsRZtxvh|KIc*cAlo3lvq> z1lQnvhy!%Npaq1%^#=GMfQ4&nEeyuSDI5={^9&x*x7L7_unLKZfEipKhnSrrFM(QP zzzuLC0~-#if6Z(foG#geBBnAXVZoc>79DOSimZ(qQ&|DU2Ttqtp=lk_m9e$HigK^t z4(p&l0oh={9dIYM<_miLo?x|~=oi^qv6YTZ-UWB-u*rbU)MQ5cB1qR|p1^eP>L8W9 z$AGP{je$~y3COhBaoOoRApsC#$o@st?PS;vI}Esw0BFcAQ@k>1rvVR8k`0sQdMawY z#2LE`c#zn_?h8z>4oW7-K()2ofIY-*-6}mRyf{h9Ji&Rs;4*v*1U*&30Fhv?0sG() zY{FAh4qXw1_w&0~qWkIFA|dI2=H{g4Je;*#26eNUl9;z*F!v(rTqI;FDBy zL~++#GZ|^~Yywea@?HO-c6bI3k`6gU66Sm?I%qDneAs{&;6>yXf23$c3MG)4Nl*_* zbZ9W3k*Yc3mO^HmScKxK9*!Dt3|>a?zQ9$rUjLd@vn zHQ+V)9)b>fkdztm33<|hQ&h-qb!X13sg(Q!1AYi^wDmHiQu|IVtFA2YRQO6grJjN% zotliuJxD6TE8>kJwhwR%q&`6 zQ-OMva^5%K4^%DL%#o^q zBAY?a>_G|ZCc~%jZyi1};B)u_c{o8i(>w^-pas#hBs4n`HbR~H%7Cxo9M0{PVGAHD zdcs=i)E&kQ#+g9cncZo#8oI~yC90NcFpcTNMkv=pVxe1X4NEX2vm|EMS+ap`rJ$gR z2NgjDB0%M5$AxqrjM5C2&blDO)ewzlc>^^lH@(upiX$L9npt+1$-3&yVX!RL4S7G( zlfchlHNAu+XGf+;*eFn#ld$Z;V0?CmD0GaZjrGEDi!b}+ z%K93tAG;83Zj_1xJ7;*zrEXqiumLm}hBX+nah+v{bf>IQw7Se&W7)kG_!7d>pUW!U2dvYA&=ZmHpO65NvkU3X3ZIIgVzY~41>)ilZBv|s1od12Aj>$Rn`#C64Hl5;?BYI zA&pSx8f+e!C@BbgR#;(D&U}L{U<+~h&`v`mD2iQf>v&>C;8L>8U%kpxTHzhh>6y|Q z#zSf?GT60bTcr8|GiysLd}Ss;LjO90dB`B`g63beE~DHsgO!tyol;#Dle5HNOQ~LF zWW6?Liunw-oNA_pYDVN$7_5@&rbpH#9cg1|h^k}!_)6ujH<+J>jvTUyVGF^=kh0nm zX*uQb>yw%U~bmT?hZJ`9Rug-|m$809Q^>!=r9!r(&&jg8%ghTE8cG-9ae27}!}McXhj4ICTWh!aynHH{i7e7C_iQQ^!e zxMseMZ9$bg#%mfnRC=qywoxb3!=)`N$i~o#(8iQmmJi!uu=@yXYPg^@icpucod$b= zLJ_IglYwe7xeRhBY?r|vq~X@9tHydwLx}A**d8)X?XviIl$FaUd9T6tG4vWTz0ywb zmZQlqzSb`T6DZs#6S(~bdyG9U`7R z&Q2KY74~X`C1on0kjaze3t0Fw=-&xLV*!DE4gE6qz0OsbYhx!-5d=|f+S%*u2Ri$q z!QNm$LOyNl!PIK9jr5g-_lzY-*=R*d*-|SdP_ZspOisRV8Or^g!QP|XOw286n?f?5+JE0*f1rG7f0}1?C@TZA zJ|HvVG+EQd_$Qv3g(N`VW+gil6NYI&l@fiORd_AwbxSCCo5z!{fTRIeTiHVDM-8_d$54SLUmP} zNs02|YlEHRV8&j?d1`59bc>2{v}u1E=g5GhRlM#XrP|>_t{7b9npMBTL$fI}s=iDd zVdplUq;tE$lS#Cs#pIjO!|9$%uZ^dK8wrrKvhy^auJbMi&)}I+rg0cEQ&hFdHU_Tj zK?|cu6Ur*8@K)l~A$iFi2G6o|!?=oS>BsZ#26vJt+_QN0;+eCGrnWy=|;wl1I&xdzXZG3|C}7EK>tQar85ESXbgXZn=sGv-aV@fnzoL@%CBM7ql0v-oV( zOD2&DEj`mCJ3+IgT{8I`gU=<0Fj9e3Ms*|c_f;3nsS4EA)KvRXz!X)LRhMH| z!n4`N7oZ3tdbaF6)_iR1>4q)M+cvhmaNmc=*4gu}%5k!otR%LRZwD zpPzqIKK&`2SxmXE+4EKRKY{U9DLN4RXJm^mh!->bBIa>Th9nXwTG5uMx3QV7m!2j9ce<3lJj^ZQAm8HzTVJ1hhJv{ER zbEoDxx&;gP#|##H%V=AtT;nhJCkFo~|ChO-IxT>6VNiBlaBA#rRWLUhbDxl7W~^r7DxE$#m=< zawlR6jv#0$hDZ%zPsOb~n@GoLbNP_VhuB4i$katwLpVehg8^+csPt5!LZZGFObfqG zK(SKoUt{`mGb=nniswxmi?eIC*T0f_=CaUP9R;AR#0Xtgby; zJdA^Fctep4mlUn88DSF_VXKo$N@f-e9Xym;9cYMbF$l+er5SLKze3aww3!ozOOSF6 zktgyIQYBfH3`(;*gHeZ|<1{XbL3zodKn&5vP(ut87o(SSzVQmh0cm6cr0UzlZ5z5c zXoVY%-OOPVm*T*Xv5o^PE;GdCv zTde|UEOim1QN)TX8BG3`YAN2V=V|O~U5rJw9p0oR145P~kpUTEbOvOKB5E65srvsx zmH0oXT2Z=*NrosElT8nC910{7C-J3YF)B(i)ezIjez*Col_r}&zb=b3qQA;h;WAmq zB^OirqKp?;8Ddr_BsR^ndQMHbC+H1@yhI84#2!0L5_1hPkEEp|6gop5m_Q3M(yUFw z67vnQfP&b`Ay0l<;Y?jz6Sa|Mw)Fg_d1{iyLRd&YYjkm4)ONxWznAvlWk6R^YKSs{ zX0(o41U*V`gea9o$H`>rYuUwOu>?IMv6Mnf@yiUFOAXf2W~N)Hb1Mu{Au3UGhnM(6 z#+bAH0)N=OzEV^hP$X*PdRJ#Q^+i|q8zMm7y-lu~l}eXi)EZ)?px`L&3GjQVuX2OR zf<%yPVhuTDL4R#ou-5OjiyOsFy13a8w}@LqYoN0G(wz#>PNKk6A1R}YvLoY4(XmEr zn`Iyjqr$lAirUJmHqG2tGBJi5u+>UQ5SzFY!C3ofMvo%kcNyYtvB@OE zyk%Y*+w4f#v@bL<=q>1W<=VtneB@_<19lV0?-=6V5M^ihQHfLHeTKMS>@*XtU~rGv zrPPQ4f=@-AA$Exek?E`;G=mX|f*zeSqr`6XHpLzWbHB~5g?Fi^qR_vzmb6TSZ0;rwl2}Hk%iXEg;>Xj)GyEF6ctO0Vi*mxm5BH)h=@e}bTa%hdYP+8FNAV$F@7(X+_TjJ+v zmj}F&E_bi&4(h#Qh+j}WyCn*+E+zlU5bsi;*ygv^;%K7%#t^@iiWeuEw5TZYJwyCn zyl-xtkcucsk%oAlFTwpIq4|N_>rq_X0cy>LXd&HYEREw|WJv{RtR6(t zu!%`fuLuK^C=NNPsBk={DjF(nMQ3nv=ahCV!IdOKvD2WZhS$I3(AyLPCBdQso05t= zT4t^Xc8A>=;G{62qGT9KrqUJb)zq4N5sH>|u+b{K2#bVKvJ9nLh`GjD)KZ*=(jz49 zXQDB0Q+go^!Rnx=!lqn6mb*-JF%XrW)i$LcCRJAZF{wY6TjKKvf;MFUCQ?W&19}kB zJ;i97l0$nZDy@wy^-7+>-ca&8T7`%vrmhrV58H}Ig#E*z*$9=;3u&bcMuE=U(lk>p zF_cTm+N8j1VQGM5rcJpF(Uy#0Q*aj8sOMrNc3yjy9@oj zI-;PuN}8l{X1QF}Ug*KrA&KlkuF<105pCKkS5<9A1#M4MmKe%X8EHo%^<{rUyG2=! zc8jv2vlhgHcm@kCf{>6_stl!?Ohi3k&Lc{@-cbA@voR#im7t;2Dl0=$&XneP9dBfc zmQ$+@WsPzJs?O@F$;flo_M4)3Co?+UI@;c9S8g(to5^Y?)l3agMh5g#Zly@)Au6%X zP}Ya~Ynh44?S`^}(xd}onTbitoytaCxyw-QrT}W61Oe=}9nA)XSZ5W^TRgRRc8RWR z4($^OBbcmgf?M!M*=i`;lP{;|cQKRIfcinUoeI^zPy7FRFR6$AKzk>=M>`Wl)yc<^A^n;TsN zqlyi5-*|JLYhYAinMM_EcD0_UJ9A)5^UIGkAKOa(M%~e9C{48fr2EXZrwkZC`gS0H zpN93gp`4(_RLvKlAYBGz<8Y%Bf&)JYcIygGzY8K6qoQIab}#7lM~u};WS$_QgJcg; z(yqKl6d%ZUWIzsu#B%xj8IZ@{w<$kHc{+xa=bMJ|Q_>Ggz;^>Jjw){%s1wlYRkMp1 z&=!w;sxz2s7tq@fLRnGXHI!c~zcKA08E6{2#`J7DIy)D3j4xCsWWZ2@wpjVSp}a3w zljZgyxpQk-d=}B$7l!gBl_0HBSmE;oDDi7UIY&G4WY_|o3_m8S z%uqQclD%$OR+Ow5;(k>%*VAxhhS7LjOh1><&!zM;oCfML{=TlJ#O(ecochnGva5#d zgPLxrU1Y#^X%xQV?^r_ZYN!r1%k*2Pc-ItGl~Zbad`O23(Hpjh{UY zwHMLDkP#c-QePGALcoj*47Cqsq=qxheUX^e*HHU~vPwMuuxEl<{SEb^=q!`Sm^IK) zvqLSJS#)v_`DHgzBG*v!)O=I1&!{rvWSQ+FU2}1Es0D^PM5TkuXwORpl+iA1HP@zI z%wR6r>dSl;1 z5O#7cbhJ7S6|Oq|+w5@+S&8Zd1`DE{C6_CDU-aOJtuonCv{Ub-nusZgaI%T6c}PV{ z8-z$+3A=47n(i~AC6~+9c5HWW+mX#S_<63Nzt%g5hHMF%|K3=wWK+=z2*d&n`q!ZP z2yuWbyG=0;ibWQyN@NF(Kpj#>YfV_w9;#ba9d!BR8PPIt^^yn$+m}XfnxRf7!yrip z@}$3{&SWqz1|38hQ(Q~XZ;xp`qBmBH5+BrTfrTp~xH8{0bP-W;j5>>Ua(1(+D2jW< z_BxU-N$Om6o~~YPsPokY4EmZ&p}y*ZvSpmBY(BxJu9oh$6=G6vFw`3<#FT~x8pRHL zWdX0pU$%_$ZZ_0gC=V?eB8*L4OIH5%6_mH$P;XOjHyc3Q$PQi*htyQ`4nw_D9w4vq zRr-Q$JFUmEzh%HU^=^_fo8m`w6Kuc!LfvAh_o!P@d9L!){Q~3SpEyetw2E8UrlJ#* zZnwuC&Ks}Xnhc++I}G(cQrF!`>%_S&!lt6jHDYA^KQ6y@q5;_;?jM)kPL0$V>MnU` zB2?a{K7schN+)Fq&NGy} z-!2N-)AUwHKM&K-lgY3^Z7|eEs}*Emn|c%tx{$SnWnMPaZ`=t-(@hRb6fU0xsdEuzh|i5r~4Z;l;*R&I7X+C_vEIz=7Wu`&+iNGxovs& z(KGv=bD`s6zMa|Mbo%%v{J;6}^{#$%kiq-8T{qsG0TaQ4;yOsym`t0=gyFB--ByF$x2x|${|uNSof-8#L;bz_zIo!yLO#5q zBfO&`I;0e5Bsy`RM*SlWz|g_N248-$O+8H~$*@wXuL@nhsf6$}^$ZPvtGoat!KURz z;p;f2)SplgxT%AGG1R}Re>0D^SoI<}dfGSGAl<1YPxT{1{k!@x4obC53+=>i`hT<& z`@e7sn|k$$q5f0-7mivfU9=(3yw?0j>u%rXyfz!C{u@1X^|Qn~LFQ7RZG&C?QvFI- zzc$z#>ba;hTSZm1l`$Kl%tJ2c$AGGl-wu!2G|r%?_27}_hn{G8Xl?WU`1CEs0DZGVY>Jlu~Z8p&9b*&(i2aq{%EvOEt7KEgcOO^Sng36L0(%JMrJy zUHu=NRzMnL7%JB?8C=)H^ykgQ$0MSfiy#-L}s zYcIkDF2UZ#A3HR$OA03<^Mx)EvhEm2n(bR!H1h7Xuei&I&A~T({&=c@gdMTOIeHA*!(gH-ku}ioj zy6+Sw#qvGlUM3QP_Ki>s_nN_|j_V~{PNw?(W8A_x0H~PV+yp;;Lh(e4&eCz3+exe= zz;`rT&7oAxErw}R(Ihd~A4<&gi5YS~^IVVLN8eVW5?n@iY4keZM5SA4qN=W`303cV zo_eA2v9=|eNLm}Xtd&eNwq+)r=b+78q+;8xK%rxGbj4u*^WT0KLO}`2$Y+W?gNf9( zuurk>YAaqsS1piRDKBoD_#a=~7HXHRz`rZ$8m_3pHZLL@5q*s!ZP%s4o27KEQEY3W zYr)Xoj|ZyL({gHbgCqX~U<599`%TO|9~D^MP zGno7I(2%PxtSX=A3r?ynrOR-!bgjRF!QgmuInntKVw20`hdw()gvbjAL*_N{ySc;G zMi+LNuj(puSGO88)upY>Iy7LODW~wWJO~i2-@@kuM#yWd%$;&mI#M*@ZAcv(ISj7( zhFa_!04MNM;`QcRBb!ngd7B3gc-a!-{6KB#^=o49`wMTAlxN9tTGQmE;@n>&cR~l3 z&GdVh_*To0rM@al66xNM{EfWOvW@L)BDO6jdrYIt+~R4c8)(c%>ByJ0Z-_R%_~~Np zIQvnEf!go4mbc_uW>va%9-USXtR&2w<&_tE@amda?;y&uW^hG&@SV1A`XmHw%1>Q; znZbtt$%~TAb~+KPkSe2XBOQZf{~ff>*R*Vo=A|6)VRYF?HSHdi%jKHMCFG2UR+~+3 z30)2l%Apl*Yj?6VCUAHcS6Um$l^R)1rH!iyUq|Mr4S8~10r?q|Tpgo#@wae&X!lDY z@vJShgT~bN7T?QnE>XgnXQHH__8}SsSI`gfW&mZm@X>9(+)rX%g0iGxlBxP6prq>1 zRtH(gztn3@E~}8tNDa2_ZIB7cW`YGTIU+m!C3ic}B&mwMyVu(KF+%QHUlNkg)wJ6L zla^bXKSJF%b-dKB*hAH0g2f>#tf?VLQZz4-eK9M@yPZSV-OBW2c~o*XvJ~M*#bp_` zoP`I&Z`X4wHvhk|_cH-( zTWC`WgBc^|y5sce+iiL*nLEN<7n>W}9YF`Y+TH~!1LVY&^izXB$_j}?7uqxvvuJ)% zLWenW>kWeUnBtDWcc~0%2l6OPCYjVRoX&^>YAT)&-=5%|5i5>%y9A2mm89_w<#%Ff zg)ZB?zQPnwmevj(C%_pOzLAVJlU-k7y^cArPtYk{lN1Oo7o#N_ZxLD7dxvgbkIEod zrY$wXqNQMkcPN87|G|+Vvjg$An$ZQ_r4K%3^tg zcoI&F(CI177nms>ge3F&R#Od>#au&`VrG_9)|j&zMeFslI~T^4a#Gv{uFg) z^(S`mr`>804dd#tq%-Z?1PA|!kGxpNx-P9tyXNJ^MYWaWr69S=&9e+9vgz&H&5Er* zvZP3MQQ(t7@yH@~OeM3x=yv@!)7y6*lLtvyx@D4DgDnR}zDfQtFRt}egvPPt8?5-W z6UT|p)6njXm|$htR7?iZQ2Iez#x}C7!un@$9voQ`PaVcl#qII3Bu~P{oH+S0t2uE> zM1@-Hvt^WQf=|ZJVz%HDia0~2OHxye9;Z|K*y`#am9kD_2GTVB8oRzozgE{58?Z;e zE_4Z-?3=G@W%UZLHRk3&LJ__=GTgguo3vO1gD%G|0LLMl<<$86-3=3A3lua z8s)MxyWOUvp)oV2NI2$)h1fT4(QZe4Q9w;ez$E=heE;c|sylk{oR(Szw88I^3?oJhH=3GaoAZ2AohmPf4G zTiabDPJhti3Dz+^l)+K=t!0Og0uH7-+y>L_Y}tb%cE4tam4}P=-BQChG5(m#-m-O@ ztF(5hi*_Jv-HyL4&#!O(&gSNOw=_5HIJ4{a57usLer|KieJ{3be5(2Rtsku2{^7CB zEr<6tKX@E-Tkm|Tb>HUJ1CKV}@xq74*17D>$JP>u0k zH{30uV!@WJTU$>YI^D3P_2A=Yj^2Tp@;C|Q$kGMP4Gpaa)}7t?+}TGSa5Wz}j0l{0 zc1O#;jZ_rzFmsx>9&Eks<1by5^?GU9@ovVLotA0UdMM zx~choq{4Ot5m~vl;gRM$o6a2HkK`~xpKg5ED$uaybkjy83bt=TmkromIXP$UIoSNj zZKqG{YguHAWy^ETP4~K8u~(SUkh$!W$4{|}TDP>h zU6&0WGWcSb-Q|)!h$Mm>s$I*1!J2@(pkS#lxU9BxFsZi^T2iKqc1#!rzCZvOuHfR~ z62#fHyUy%*B0L1015sL0U0P6y>eA~k7++l`&6UBGX2b;RL;z~5-R#p4UM_JHq`YmXkG1mw?u`S)_&g?YstEO#gSiAo0(Far65p&2}k8=LE%Xu0cN6alA?K6bic)7g8Ex7_ns z%fpYId1#Y48)DFxIGX5pjD2+7Gj+#ts>Z8Z>hYD=npLm#c}K}>$_A_|AH^a7oW1R3 z6k#oQ9dF)v$P^ME9(&kCz4b)h>4v9F)FWux@${+kuDTLUVBgXzuQxDiK!vB&TY*pX zQP8;zdPn8wqnM>RL9_n$`sQu-py)l_wBMYpBvkKtqIJtQoO>qqTAtX~virp86VJ8m zXr$a1o@lv!D~Zl6kD$msePVaZ=5;L%8(QiPk<>YO6gkxtVtellPkv?!g*!GhKi6ob z*zGwvW|O8w&B?K2DZ88q&4*q-d*{|jai86K=L^k;wl{Cy(7f&GHs$c(9!xoN^xl>| z4#F@7@ntR~_{oFU+ zjJnT`MGst){9(`-noiCQbHdUJJX!&`Tglx*> z%E+%D{m)yNozFCzJb&HuS*7Xv_L%dy?c?ns9&Cjnt({x~v%hUsCXtdUEKuZUC#ykj%c8zOjKIYu9!PVEM?0%s4EvPB2=5VKGm}0APNOyw>I3#aq-mpc|Oj{`LcF1$d3mx)Yg;S?43K8f@1|!LwUh4fu(1)~<_-O{CSb<#E z__iRP#Zid9PC@q9q`8D_z7m?|n>?>AN8uoY=+Sf0@!#n3HvM@93?DBrcp_%7&+F&7 zmQ?#)**RV&SiFPo-|URLO+U(Duf%a68%Re=Oi#?juH}J)CW0iI?mKkm=|qEci9pNIeXaE`H19uv+P?YOoh=8q zkmI`lMRIBPJz<;%8sSDzJif-@K-^YtjAF!_Bif5>>HqEo z_&z#x36PcQ?Ef0FrkWwlWO?E+dFYkcW{6ATdWyl@5?3a%`TvM9f52dc*|XR|VDUyE z5qo0qo40K?jl1S!_o4CL`qCyOY3q@L&Bt%I4z$Y#-(YY}c-Uiz86$;pJS?XGDKW-v zlBK}!T`~p5i8T{Ok@SE&P~4Ny5R31aFe*p}UZhWd701TJ&Bc@sDQN zHyL~vP1`7d=FKx3UT9snqfK&SyU1!L?_X)*EoI=&dW$J>Y7E6fi}e(7;oGWZ)HVbg!dpfsUbK~qR3t@w}G?e`1@S$m~i^0Jg@ zH#6GEx9NW%AC|nA4;b_d*RxD+*3MeD>CFr{L!b8yRixPGSq9_n?Hq#eE|-vRE0d)M zkif&R>3?Q0E+)}scg0?s5d}FOG@Jfc1_g1i^pGhL7e<&&V0v*MGPo*g;U#n{iB;Cz zsT{L5gX5KOCFVx-Q*8R*QJkI6v7$cO?Q&J)t^=+6HoHiMx9r~Mq9`@xoY!Hp2IU_( z1}z((YQ6IXGj0(A6#_&-#`_Ktuf&aMM0m^pL@Ff0Q{ESVL}`DmfaI(M*ty6x`;@`7 zL}0@=IE44lxLEjVkHjE9V{p9XuH!UMHXd?Wu_3pM<+;p_lJYg^SxQm-HrW!s44h`~ z+1-0kh_>uFZiPQXleu}@J!hUi7>-V&e8suhvUlIvr#819xV?E}ovHcBO}lr?>6ag( z+slv_n;&1_vge_*53NN-M}?5GF(B?g)cnYvvm3UYdHFdxS-)T~%9J%YiO=4-rFs9B zJi_J3(dN7NHg9|yQ=2z8HE+Db)z@WahfAXraueHr#UMXy4Vfkd4)U3!TTPKAjY_h2 z&FZq%a|{&bUbx6+V++GGIY4}1H0l3@S+>s+mA+itFuA^IRT`hM-#KdCi_qEw{2HnZ`mhm+jvXEg$ssoJT zsw%HvZh)Z!3aYiKiO;CgZ3csjIu)SRZK+W=)5R;wKr;&~eL;Z>LDBNH0&S>vG2}uo z?Naz2Fl{&h%HE!sp9lH)eHndgmqQZ$TZZ_aME{(ieCC-?(7`63$<{N~dUmm%U9D#~ z>)FG4_LffthDbP0?TWVcH8-YT7SaAl{C*0a#y9hOlr|cl8s=XqVY~n@%I7N<%-0YW zJx^KBAHo~*`4f0kKHsv^-?5&*vYx-Op6^-Z{$PEdkvJ;wC+qoF>-iD zZvsX)&|=O+{2Buc|HIY}gLnp?LYrjL41Y_sV*EACd~LEe1v92brA)&oqx*5&LraQ< zc6BGAT^kRY5ew~_&OxJpE2BNMv{-1@bq*T+bF%HBWyC@&?;JF3dOT>3SZK>S32jC^ zXx(F>Rdlkae~AaJXDqau&Orkg46vXPA5xx{!;ZiO&xhgJF&$tvsIVpirq&Lo76G%b z1@i<5S^KJ-BhWABC=8r`1O~kXIXTKpFc`mw;rAsk!KH0km$$u+$Pq8Wn4H{t7&kBH zFifn6sq~y#53}dBp*I)>7r-qzsV;>y*n;BfLFl98LyrCmTx#oyQ}tFP)LNJX>tH6V zmtDv*kutkLZ(;)qAQsV?tJ*rF&9pjm6gwmEIq^U4Os{&F8_|Uvq%pw8^K{`Z?84nR zLYpM|E)$I~`V&p`W!hCJ*?2@pCWbpQ1c_jFq|o9UHRnYb9LqRcBL-P*H^^$3sb|3q zY>2>Jh14W^>N!1$5Qkzo=R3$b_ePLi596&%-4RK4-2`t*#@U#*415;W6;?A&#QM@x zptA#zPOrI*FrTC5SbRt_c3V$&M>OgTH|o?%q%dx4)M+(3N20`&r|Pg63(SRp)xm8@ zZv~&d4}+%;y3-&onVzpS!16k<=j7(qL(ROLw$`(-!vK2`i+$L_BRHIoLQi;HVv~b_ z3`pa3hyx8`?=W7yO}ymWJba5B#NH7Y3Sd1g`dp2f{xFssEcSGn^hu56NFq~SBLoFR zBAOw4^(1!sDSUqhE`Vnv_{$YW%@sz?)ebdRG-?@bsL?+hZw?*Xk7J-?`r~awXV7aS ztY$DZ_aqoNh&M5)1C<>*3hNN<+ooaC?F^>pH^N5BS%xoL7>@IHx8hVxASq6z5$>hL z#ctK9MkL;ECTdR29476+xkjgo?{#&MmgiKP;30r|cz9l(Q)|NUk?#l2-G^hjzl}g{ zG=>0;69-POe()0XhXypO8et+d!8Irku7_iA1H243V`F!~tH|oF!5$>gJ~$}}IU0H3 z8W^k1$21j7=W7e_O~d;0l%?82N&d$zGCN?qvQ4`NiJAvDXp6LKEi%(!nB^CT%TEiJ zzYZx(q#p}L@+2K@{t{B~mwg4PI;_*-t}mgN4%>^7qrU_@{+e%CW^vbZ*g2ttg5|NS zR4p3Qaq1E?d9f`T-tIU|Pn?1@WTt24quhJ$C3u38+Gvz2ndMC!-=9Jz{4PRzbZ;j; zx<@lhro}9tC~J_>RW=qH3&Wx%ml}>0Eq_3&{xN}QA#>B5LV4P#u=!Q0l~EcC zw?2s#TQe$BPCnn(wkciCc1BJ{cMOV9gqt0E)aqE@oZM58bQoSb019^T`JCJaXsQEU z;I~c+BbLyALk;mE^ns5ey4^S2?Y`|4S>Fhf4+dol4){6hw;cHT&~tj6j$sbPns; ztfU>*IDW6jV$D<(X<7oTUyD&h(O56RX6D7k`unk1CwEe3FO84&_uFBeidd&5!1`22 zSZmAp6>+eBJr-+6=dh+*vf^R=dONJ0h;@(nSZhA?AQNM~9BF+cyD45XKWf)ZA8f{z zfH>r!CT?a0=2eLI;}GXZvBc@$Nk;U?AJU(;!#W$W9+Uvlis%D9a9(^#zYJBjtW z_*nnE9o9n;>tPA7ey2mMlj36i^H{8hcM|J6;$!`bc38U+>k$dC{#A!q8*#DzMJ(1= zc5>2J#Rd0nEV%KVB*LcnM0mFy5hfxLCM6)kZ#tBG+v3m0-?nRJ8a6XMK{M}lI2)_u z&c@%y5@%K?iF03k;{3iH)^ic-c?q!oLx&tv6L&~|AB*+E&S4E#hh4cP7S>&Jde*}q z=h5#}`8#`FL>Hvrz^((0dB9+$kip6#y3#e=m9EkojqFO-SpNtt6> z$M;H`+YLY^4nS3c0XWlp#b0 zeRC(Vo)aJIKexkr9b&yc0oH%*5bL+$pBC0NR)ne#V*R&Mkd>2D4gDc5^I|Y|p=u}B` zYUYK%IzUGj3)HjPdbVbs^?9>|ack&vz5KjA^m(WJyess%S=PNL^toN;-a9W0c-*`& z(9rApw%0q`UN^VBZtnnXLvAgH!cdvAb>Y&R}_VRrCI>Nq7!12wkBg)SUS* zV&74SHnNYff_(W01CIwul4Zx@4|^{&sOrC5S@tYjmO)8P?B5nlq{V2b`YQXP4lD7%hNY{sb{ z0u>xE8|I?CxeFeKNAUSN{1KY*`4y{U53zylZT2DiI3$nQ1XO~+egF#lA<{oDj?KfY1zS4} z`&lzIu|L7<>@V<39GyS1kFfQ>!5Q`;V(}>td@~=wzrzRe6Fi&0 z!*lrGc`pB)=ZQ={Saj#Z#3lS9v>l=@sT3HM~U0%UliwK#M6ANIL60` zH~Dz+Yd%5B?nhA8UkzDOb}O(y{B|bv#`c8YK7kbZrin{XeFwE#Nadfyd~GFr1O+vU z>5$yVH>s;Y5$|fNFqb18F4R_|E>MsX4s8uWQL)FTWQ<$m0k&Mb0c+@dHS=mWVhtO= zg)P=@!Z&-H_K+=vw8taR`%9Ruj71I7?IOE;ET^AOVGljd!6;BE#Kzo;4vR4f82+T% z#W?&t2i-u6%9RTdGBnpUP7XIya>wD%IXF)7-RKhZp`Zm+sPnYX!PT{Ax+A@JjAAQ? z0hVT-Y}tf%oP|Rg`Na%k)&TibNaE8X3>kYnL&k2=;$|{~5IXjcEf2R)Y}s!~D02C5 z6o0V|%tR7j712Oay9SclH=x}jKEp{!4gAxxVoIev%)nWmE2V&&X7~tG?M=#U1H+&25Zm6*XP4_-T+8K%;zJ+ zEC2^z1ikpRa1mb&dHgzX^HP}0z2M=?BFv}KuqjfiuGVgiic*(`qtukQ){5@;2F=lb zmd>v{M;)YL=2zmAUx|aP+S`a>*^TR>L)uAf0GeNB+_~IZkj=_z;3ZRYPeJNYK5u>| zpMQieJdqpY;&DGthyV_H5W4b}5k1I~CKUPt&_!D>4M4)u2JB1dicA-QP!zNA%elwG z<5?_CTONAg09{iDno~WLlbhGusW?@K=G5!?wK0}7zZoauEnw&CBp$QO+F?re2rq&5 zkYQCW-zY3h#%2$`g{HZzK|(;4Z?|EtCf{z?HlX9t#$`RC?eRzo6J;}X2>mg8W}3pP zrkSR?;8-}BT;$%nKvxc+$QiEWp(@PFt>>k6;BqK+;LJM(#!=>;uN>h^rsbgpm`f@! z?@(?g_tov=6LAGq~Ax6P?H@YQwj zOUk~tcOCpB=POkr~Bz!c6`ERP$Zn=MTaS{2{oN?}qJs5A5Q5 zVL#soFYw3U75+H9$q&HW{0VrEKMiO3Gw>;Y9$PyIU-CoD;D=cne~I?B7T%j=dZBY{8hGye^2u34aixqz-3wqa-SW(gmhF|wfKe@Xm=oQCK0zt9tIg& zdCgpKW!GtUVht|eHlnL6Aeqh4?!q?(MzIUEyYWqhnJk@Ok8c`O!{4<{SXT!>{7u`8 zb#0Q1Yrtt6gVQsGb+OSbWnv6FhbE4$L%pdf(As6R9=Mn>S_z8DP-F(v#^CcSxX{e` z68g&J#Gd$``Z;tTEA>nlZglOHic({*w#9N?M_5uv?~%(I_?|;jN`-w({*$QKz&&zm z)7w@_1O$Ww656Ap$O&!hk((zP_#?59ejTxXZ3{!PS&-;Wu3t--`z@GPApsRBCJ|`w z2L4zq&@Y}88N|anPJJC2%bu6X zpRDIk4_8fB!lCSvu0(-DeGszp9IDLrUsunctLM)jfNqERi--A-GGNQ;>k3RDRdRtX!d6G^a5B*QLYz~dqf4vTbX5?$b==n8KN2fQt^ z;J2b1vAebR~EYR+4N7!6M=A&3ZbK(O8__LO zTv9KFyHlJgCUl$APCk8#n;r-+$!X6E?_|iU7gy8^cas=}b3cb-E=go5Nc2ohsCV|< zdND>CE@(--Dhh`u=bL2^n5{{S1HwXeB-fE4-iul@&=jyyg3W12!@QSMbz;x+o5Xl5 ztrBQ0w?RxCuH~Q^sWOKmr+@<2!V>VIl~99P_%(dCz(?>8e0E_|P*G}Gi@)?f2~^nZC8S|l?eHE|*OUlhoVOpD3gC8%hDpSMB?a7stzxcMZbsDqLs z^jiNJB%ebcs>6OIkHOz_Fc4DC0~yO%fdE8;b*5+-<&@5pRw6q=9%d)%s8O`1YU!ZG zRx|sE9G9!@i=!XdpjbItAE_T?Scg<)F3YoOZ^uz3D=aSuZ4Y$RpF%J8AJcMh!lU&v zJ-=Q|$zxJybYY)lis>w*KSbM-fjEwi6#9kYHAoTP1BW;XF7bn~g_i=Emi6F(WbGd9 z5h>I2EL`x-+OleShA!#UUSY*I=354cjPO$o@>SXxg;I*bkva8ZCjOlrv#=t5-l>(L zh~h-VUd&yvjggxuwE#(IYagbU-mHz7s76knYjq~eO_(Roy+?2N zQ{+TDaPDUgWe+$Uik15c{{;@uUTiFxR6w7oWQXzyRZI(OQ*RW@1k95pzz)g1uGGyY8TL)b^hV*MZmH}Lj>B@)RE?sF zLvEwEp3Ayvi|30>v3hocxS>(3#YAhxK?2zFl_Ljur0YUm)M+6$gLv3-8Jt!w= z%yscc$P%Yvh-ijOMGI=CR+uZ!qGtLttQLQP?c%SnLwp2Ji@(D`@iAJ{|Ag;}f59p7 z8N4Arho6Wq;RA6FT5&4!lbhUrAvFN*6Xx$zW5JOy*G>Y`K!f zRw~`tdd11^RC=(TN-wrg>CKKQ7qIUuec8{IY{|#B;|y92v$aRHg{Zma!`<3`d`m(T z>ZfvdtBs9=Z8GX*W6Qy(JqG#G_x)`sl7nxLTfXmaQKL#bp8Zz(!$Q7MOh-ZXcn2AV zcGYIFliCy7lQ^4(uxGTVC}1n+&m`1-CMHjZF?l+S$unV0)`l?A3d5LC1kQx}Eb20v z>#LyaS5jT+V&Qb@`ljLU1XMX+(+*oyJlo}N+oAZ9rFH!bG+Qwi_#9Zb&!K0xuVAT+ z)-9N81@UC8HY7Zm30I0wDijLseFlAFB2OtwM8t{0w~w*MO<9msi~a41{BcD3l3g=d z&%AsY{S*(&=x6RJ;(WPtTF_KOrrXP4xE7T{w^8YNnd0#V@r2vv(09QEr|pysKj8#9 zu3R@fiI$8UNsmB&jw9(MbMl8u)sa#M*(g~r z&l8C8G4!KV^ptBY@ps&v>P*dR6tB<>OQj{b+&rh^Ky%Vz)Qj)AQ*&~isi-kt$6rTE zqxccdxm4y(bEcl;L86J%nc66RiUzQFn|^+YLNM(BA4cf?8mW{{D6>x->2>Twq!arS zW&92cWjHfV!UkuCT+h4NnJNU%=sze3;xy)FIx`!^8LZ#cnThFtBGDrLI{%3H(Cu(K zDDxu*_2M7&UN8Pdg36uc%nC`Q&)X!DGt22{6kn3uaAt{man9Yvnd#_i!aM*&5q*Wp z7E=!^yirj(MD$0oVOAGsDz->D^PF8yBEw`V$rO&rbYworQk-2fm6UpR#qh3q!jXxT zZBo+E$ads79ZgC)fTJsg43sX|aTE|RJd0ks<4ZS3SEbyMRWZD~qx(Z>OAl`g^*IqJ z+g#7zaQATbc$K;9Al2!_6lV_^QgCJ}Jx#FISBfJm;;Xl#Tf|o%NB4-YzK(8=?vGgf zVMRD7{X$2#UF}mZqSAY#(`COCc$K-7-lGwVX-m=mMK%AN|^>hWjfrf%z*DGB~Yi#fk&0A;VET4 zysa#NX5|_b`HN8GU(1q|#VkW9MUh{|1}aNX+%IJ#6dxO{EJv|l!6qq{>{_LUEmZ<+ zm9my$cPqddgdD7*Q3We?w^Jj}N#d-=V} zqkOlrpC3>j;|G<;d6V)4e_eT!|3Z0+pH`mcA1luYyYj4XDbI<^l|!OPIV@%x4CA=4T)I(tfQO)_j;AU0|xauK9ZtkjO;n+}sjrFKkv8Q<%~1*klaqf&fS zbd^fk4o`^`?F2cD@HYQIdj;PNXy$Keui{$@wDLE#?`p3>DjUt$h<6c}G^vV5ql;)# zbS+ZUq~2P{vT&bf;ogX8iq$GPwkEXiLn{EVqO~leg%V>E{=Eo5>** z94rFoH>kmwnFv5WE>*hl99kPazXb@hHktvl9(kVs0Tf}@W3-6;zX+ME|4qoaz9Da* zf1mt0^t+I^TYEi)2HNY|4@{3R`4IAPKP>QBtWl<9n?_ltGDybY?WAGQE#2k8m%EfLC>kh}dZXI7PuV=Mx zTP|sE#qCbQm)`VZ$CuHhev`>HN-Zi>%|&Z-m|UVoD=6y#a%k3ZG>I}Pxk0I@gCu%$JFF#TcNel@rTs+Swj)FOx@d7L zmH03kl^PCCTcZ-dheNvJInHG4;HpODMs&-&DZ`y&cn?Ppxo)OV?=l{NALZnl>u3}d z*5qqGcFfVENx20LxNc~Up^5D1(Wu;p52chA9BeiC*#yGzoc>-c|KdlK*}ilnP& z`k2Z2l9!iclDr%Qh~_1LTuK1BJ`Vz%v9F zbY+78d_aT02j2I6->Z16iU{Pds+l)=9Q*x>qUq_^(^K7DT~l3EU0riI`O=lfN@z-B zDLY897o%gRdo zNqO}I0$YLDFDxyr!2e38Hp@jk1&vUMb&9>hCb>8%mrj^nA{tw3W8PwzOwW`MiZi{u zq`YY{x9xg)c2eHlQ0A3ABAS*Ug3BI}w=TgtWskryw2$s-s-8zr$En4V!Z`j{f-T^^oyY|5ly}oL5OWv7RLs7OV(vRA=Dv$!?mH;vehA&=M=(%+3}fV{aD@B}j*?%% z6uB9u$*v*+~HC^p%%~bW)HL8TbQEdRqTc`&-|tKGx5w zuWhRX?F`k=&QtyEVl}|7Py_9bYLMMo9c1@X!|Xn4gnft_Y0pxl>?_r1`)W1TzE(}J z?^BcP4eAK{1$CtTvO3y+PaR`_rjE0}QpZb6O_55SEc4X}S*&KrxVlibQy0nJ>S8%g z&5}o`OXaa@j{K9FFE3PA$jj6Md9}JyE>#QVa&?uw6U$d)`FbpW9Lrz8^0%=3UG+El zvHH9GK`mmj_(JFii^0}Upct4X&I)tqhq;-loc$FPv2$F7eJxzTj&-G|_fOGJqWBlL zH^6AU31_w3o&}5aQ&?7P_k-80zW8j3YzK$(6D6`Y^wLkF;9G_)u7Kgit?8&nJd5@6 zt!u@MsmSgl4$#lxvgOg@n-Y*Q z7YN9h3j}2OQ%XR_vS!}T=q~@QpGQ$%A>Cc0U*J9BX>vXa+_a-|j=Y40a0e;z&oW0Z z!zKPQd4?>2+#iiA4T*z2ceW56(Zs~W)O!O^@1e0D5x_Rck@gU_pVHpga3kk!gMpaR zZdu9Rca4B&;wlRGIcw$JlcMt82jxH3*ZTsAsZYukK2#2K!7(#@LGXSS z1lP)y2x@hMqPw(lqiHXMHg3!+$^{!YyaD8Iv6wJ|hQp>_7K9A%yO7BiN4o@jg3@bL zCRuQHd@(Z9bE5Y0q-^S$5zAN_$k$G@TpP&OjvdQDnG!V(Czc_}hlv`XM^NyJyIjN1x3?xBeOP#~gbFZF!`5LhhR zZxyp_f6n!C1K~E}MVjP4mjr!Ak^JGH&$&tY2vx}Q@_fgp5)^0JYUVY|e+4yjHnQ~T z*3sF81!UGup)TrWQAxg+PtLXSQN-K7ACw!{H$rto!7d%o@(Pmjv1a*r3Tg`ql2Knp zYuVEqq4#l+@(lo&`i|UVc(OEgzK6HN6|ssX@Qhcu5uWhMCE>Wzs|@Z{#i~-IUTMdwh}7G8?PwdMGFHVC z;#a&r&dEil8Y_UW0mu0Pg!?PwN=Ih{bL9*epRPV+6hA-Jqrz7im~%nkDQY}pcJ*6bckN1U;RWfU3d`!_LgtG2vGU< zVnF@sJ+Ewy{K!H^Hh=&GjUd-7OQEx1j{rVR%FmY|18aL``!*W$3ZEL7HO8azOQ!tY zU*WZKGjhsrh)CK7oRr_PJm9^RI|FjO%AFv!Yooh>g|_$F?-6$UX5|F1s{>}* z!Rz2N)AnA6JwDT+S-HV8?S27ZCiDdj9f_gV>{6?pS3?X{Wd!g#Zrlw}yJnRcP=Lys z^q|UVsPSsN(xl3zB;Tt@swhHHMcj=TKTSWIl@|c5p*kga38yNl;`p?ghl|h8Z7l7xT*>AR5KK-wa`U91ijTi;UKjR4pHmjSiGL7{sn(f zkHR#y0nSq!VUBtXu2GM}jp_-wSv>`Js%PLa^&GsVo`=oqMfg#@BrNrsh^f~_iF!lq ztKJsf)cfK<^`RK1J`zW&kHv}V6I8W76?4>Q;wJT_Sfw_Lht$`iMSUZlR^N)Z)Q{p5 zwMA@EKUqdwR4T3HP`)9R}otDknQu{y&#N@rWg>l|yE&b8*~sI^cRSU2dH zmDDBH!@A6RMweS3=nCsoU1@FARd!T&v@3Ou-CHN@ak|bvO?R;`(B17>x~Dx~A7Edp zd)fEt2D@4Jwm0cM_H(+g{i5z~f364EoAp5ZTRm9D^blF5hsqv$7%FTB%b|L>9IHpj zDSDKgs}GUO^%!}#9xGSrL*-NYaQUvDfQr|V%GO6It&dYV`gj%BC#bG^it3?HQbY8q zYOFp@9j&LSQ}r3@9DSymtItta>vPpo{bzNP{)<|!XQ;LMLiL26tzOWVs`oWwPtR3f z>&w)S`f@GwU$vv>>1;h;7wIc>yZ|m4eYHML|6Nbh*XVQfB7LP^q8IDy^}Twj zUafD?PwSiYtNIrGzFww()VJ$az1+CE(d6knOs&4#bl3No!TMfvv|eG3*Y}%K^aJJ+ z-DKwJhs*-qY!>RZ=03g7tkmnxCjBq-l77^DtT&i%^uHZjKjviU#~n{U;Z*7;of^H# z>7<`_4$#jyz4dd>K>dONlKI^n1=U{VACdtUk~SmCOoO_7!x2p87RZ z)1_4lQT;k9;`vrFbkJ{LE{Z~Yxqefhg^K+`=&0X9Wx7BPh4t+2SSiQCYW+4ssghG* znSKY$+R3>vQ@^X%LA5LswVHxvl*=9>Prr}#DpU>}pg%xGywYwK?{fgQGJBJFR!_#V zxP71aN`I)2fKpwAdIKr(Wo91A`X6CmI+}$+UuyJm;uZZdK3k!ui6`|Z)E9lPn5RF* zT$TP&4A7rZUv#VJr9Y>>7*}-GUtn2#(_KjYAIxF|%>MctyqhVGG&%ZPa?ung8mYfygTndx8$Ldg zBOcQC@ortNXwkRvZe2utqA$_^#ate}VFAV|=VSa~b(j90b~deN)b;uYEQ?tmAkEV8 zkwSZx{1j>FNGP)B%eVCwHr!k(-_SpiQAI7cHt4N*w?w^QU8{fA+YpmIt?qie{1D3E zF|&-r+ZocBQpOi&IvYj=m;HecwOG#SdI#ogm}5R?_aF&(nvJ>@p(r+j{28)>dENlk z{;VO;(g5FB=Hn5|$^#5+fLy=tMnI9@Pt2A0y)#y-cLu`V(f%X1kM)A~jg9S-dF4i! zv<>o5hs;B*Rkv)1Vob$PP;TXzK^$%`f@#KftRv^K15o)+;r52GLRx^SGgNGY82;^p z#X}99qA4J)bST%Q)0*xuF0J+VoVLNfm^y>8?d^~O>}*7KhCF&ql7>rLQ4QpJ#4WP} z(lMmbru!7FNol-Pm$o!5Un%}|kMki_a)07y_UXJGs%R%{7q78k;n4NwhscrFek5 z?YYDpP{ z;zYb_lj`0eYdw^BmyVcii^kUXYXf6RZK90sqMp^}#mn)Bkws@Cb1p=-T&#bDI5N!k z$SU{ITOpyhLpNk|4OrIS`0)k1W4F42;bloe1yu18NuI{z*hWtO#u|sA*-@CYofok&SeUrAh5S za@WJYCKEYU7DP=BcqWo|Hl~zK<-l9*4o6NI&sevj3S8MEZ1RKPxXn}wu8?R}!J+FW z>#Y$9Oh(q)tOe|w@UPXiVb}cQ9U6b)W4!@JG=fTus10w|lF~eaz&5KsKGa?CZ#>90 zCCJ-Kp~#dWUB;26mcw9Eg$$t@#+vpp!E}TZOikLrrt-2&|EBUDfIqM@Q0E!n4?b|C zPhDM+i=uX~)PTjspm~%0-rA_lY_jhdRo4Q`>ek8IU}?fH8C~B33+vb22=mzHhxeu| zgLCU*s%r~Or%OHlv3822cMKNDW4rRGQL)YPe>Q^WXY91wO{BBQdM@x}v+4_gm|6mb zT;v6Jn$>|wMr=`>Q%@aI{Z^#S`hgV2#_R`<>57Q!1|_BkzGeGEXLA4?WKeQ5eQ?-) z;aqbd%r^buuVw(;fcI}T2f^KDXc*x3T&OcH6LLqG5y*Na_|9h_`4UOr8`96cKK)>g z+f63k^+~z`Oe;RB+bp`eg~Wu)qVYTrH9Oz(neb1bw&DsdWKgK|DhBfXyO92&NIi!^p&5@nZ$jExuIli7c{S6D;M`p(#-xWpu1>{M zlCR4*{LWaP(J4@hsz;q^RzrPn4_}@4InXe+*K)7eWtFH$)vXYt1qH7Wi#Rs2Z#Gcm z)X&cMM^Y{@8?a?JFdLYJXHsOa7`o9N-*0|&BSab;Zg4m?NEBI=po5)f;ycx(MmESs zGIQO`Zon29FCEP$RRk) zm|DvF@wvWr+h>?Gygc%MX;xzy8Fee@R0Oi3kxg>(9_})@ahMf!%KL1%2rdbOKP@9; zyg3%K%yGyBkH>}Q1bpYG;yQdHF3u-G7jr6fHK#!jGYyU~r^89+k8rj*11>V>z$NBP zxYV2l3(VQD(3}f@H|HTa{srzZGoi^`1nbPjC?d{+P397K#>|1&%v^XE%RWX0;d3(| zzB5+{7ZverbEWXiLQ!fKp>lq$NSN!y{${c0WtNJ8#*aNd9eLBGkjbY<95@LMWGXUn z1Po^nc@3`xtAK$=paZ`=nqx7hyx|WDUYS}^f=VIM9ds4>yhhm2L*$w)QmCK_=JOh% z!blR_f`JfPDw@Gqh*Yr9TD^lqHSh~{ImIP$QXc8mVX?n*v-Fqs6N@^$@s}Y)_Esp2 zjUbsUjx4cf7^5r|uQ{{!0X4o!9kF6$?Fv7v8#v(^eU9f~mSc;!7@0dlj_iUJo|w#J zHN@|;1~JUw)2_7;1#-Wk3$Z@Ep%jeWTCidi(GFXFj$`r>eya)>%9`}kKV~H|lT|2E ztcFaJ#KmqkzV%Jv8*d;t3>a1%p5rX$zKB#`hWKGyvT>pG#f(z}#*>W%-FtTy!=X*g zzmQlT-RbOYinU~$+|=1y6G6?#N(%>)9fkwJd-~PX_ft$B2sK4b4LWdGfb|^ifbRe= z=k0RP$oxBP>B|XQ&+%JNV`n+(5%^3#4mE00JoZMg_y86z-br;lF_Y}F`ZelA0k`-P zQhnJPbrK&kYCE^$Bj7Q_{NrgS>C<>?h=6K#Lbb5NarPRp(@>G(vV0FwVe@=sgH8IC zoM+Q<3lR3p_Vxar9TKzRARI}Ga>Cr?WLyTsibU-ib&3TO617P+ZH<~9WY1iq&c=BhuQANu1|?(yP4K}4|K{a^ z9aOCtU61^G{`v;zf53LzU{g4dSVqhZVPk%0*nBeu+o3Oq3`Wi~8DBQK;(Lwx6X+U{ zRWpiyU|zzBei`46S0LBCj>6v?xP-q6_2z9r0Bi`k3|!Pm(6zeUO9J6LIcfQQVF&|h-R3Z&Y*IClrMH-(tf@DN0UvXfvA$D&g3DzYOk6BVcm(>Iy4sKxOXllQie zaCq>P+<<{NN(i73LKceM;UyYW#!jCiU z+}!f8xjS}mt~WN<2b=5rOPWLeaDCXw)S!_9jx9XXhD%h>10=-i(txRn4&ala)ScT@Peb{8gAK3l0oM7`w^#Cd*BT?K~c|X=I zf>J0)-1uFg!#d!M#%>&fR6YiZoWr2hnF!_1;ZWgBfNEz_NDCDpTTyVQQSPPR|$ zqyu)*5MvLJ*wcT6J$)*WI6I^xC#hC7LX3M?i;QtKc6C%8chy4KBNy_qt3^--6=9dz zT;Uvz*gFQheFEe<({Qe)A{I}??w<^0&S}{7Q=rm071}$ehZ18YKK~|m-$I6%XDWh$ zbl7bm9nuC;0y2{ZLgrAWY9cC3w$d?rt1ukev|!%jIG$v!py0BCUK!{+-2vW#wb!wY3q7$=e~$6+G3f9u7Pn;pTbsTThvhi@gxq>ut+CDCtC?h4;B zLLpc0#ku zJQs`n4SYqQpCr#R_PfdU3l?y=o`@IO2utw}`3GL=SLuBZBj2ThGH*jQ{^)` z5@54>g`#Xza2$3h%omNV%NyH<`)VLzM<|q^dTr8!>J7qigdAtEb3QKfz5KwRs+Mwr z#VPc1%l4w7>8ZdgU^l8~Qy~&!UJT#i)Ztd-mbG4i7YhO+M19|@La#8uSi~zxVXVk2 z+6aB{4q>bsp@>lw;m3E&a=ZdM>`~~$X%tubUVCg3uQLn2FGIw_ z=@)ExZY^Gq^5PVtIyehePG_Ow6uvq*3sp{Mq2d(UIyehePG_Ow6e&D73sp{Mq2d&W zJ2(qfPG_Ow6em153soK~_s>Ed3jV+Jvry@Oz1elkcX|u32PG1*w0p7LxZ@e}hU?16 z_i3ykps@m*W@;xIQ(i&vmV9=Y;;4`k0zLrH|VmzT?)K|dEW zhUqL&?jzQ$#p3aR0UZ}GAR6<=z^yPZSWwv^)#s=Aw5alIq^hV7s0zN{wB|-QtbE8Y zKJs6$Mwq?Jd~zel(&R0NE;uO-krc|Ytv$?BehTTm6T4PT?73n-_devm5uZ>zFOs+& zqHH?wBF*aK6i4GwvgwHWX>(l*^r(xf&v;8EQR_u$(fy(!k8`PLvtC|OZEm3TA)hTM z*OQZ0RssdN@3^Ly#}DQELmgb_oALVwZrg;mREvIPgd1hJ`2@FsJ5<2$hVR-~6joDV zwH3sV+IkKJwAv)aU28?nBroSd_2c@+pQ=1}joO;N)ZuKUFLgBg6ac^VeTt2$VZQx{ z$rm;D231E_)me|HtDdOm@pXX_bTyXArEB0?HXKl|bgo4a^*R(wm!K$dJ#=xFLT~3L znC#pFXF1DYmUBDIckY1Y&Yf_#b2qGZ?uB*EeeiZ}qO z&T5h8Bt@z7pr~`2MPFyF7?0OUc<&fzojBfkSe)T(5ObXtvE11x);f=ghn>g8qs}I= z$$3h=<~%Jvah?@lJI`6ldEUx!Ua<0=7p<<&E7l)RT_La^L_ASnjb`xILIa}>VoS*Ft zu4O;vO8X^O*&n&a{@iu#?QVw5bu(qTn}Xm?G(7xD$A`=?c9A- zox88Q-5>2t7UFab-TO2TJ82y&2EEw#Ov^aJ4TOi$LjI! zp?ab_UZ3b5uBW>b^lTSt!kwfSxJT+G?os-7_h`M!Jx2f2JyvgYkJE3u$LlZL6ZBW^ z6l1w38s(m3a^2HRzWWDL;GSYU_f%8uPBR_d>1MEdh8g9aX~wvJVmB~=ZXyqcnJN?? zqr!rtc%LI5K8LeSJN-|{vo03eRFjLAb($#Uosm*&xcHN4uaAUcYm_*{bRf4QvDUIp zM>_o_Hi>Ud4b($Sd@Y_f`{)Ou&{ATJ*%yV?BC*^mHnj*P3hQib5_mTkUa-F5Sk)0R z*Xqm8MtQOZ$`}gHA(Z$z`y+fG=+o&DH3kkf^%QtPodEqzCu}!g&A}%+(>T;w(3MY# zMbt9^lzi2KOSfOPHGr3|zJZQG*=jh0A?NAoP|jj?o}LXErVBY{As#xJ{m3y(zX`cq zR-ik=oBp$U37l-Yk}H?K9ggB>^I^IEgXxBMbL^+=fqE8=(i8+c7&$OsUu(K^Scb{^ zan@_H%wTX#4?oJE8JAK3%(#>SV8*2s0L%rkv(30v>}-4@h@FkOAa*w9ICeIU;$YL0 zq76gT^f&v<4^gnMHeJjCh-W`o{sPGHXO|qf{Mj`Eiv5|?18^pJ*6?oBpCP;(%n;rU zW{7hB3}G(7Jm&I!d~=SmO!a~>lFr6`(t}ccGQF@*r zJ(K-HGA&Fter&?u1Dx%HBcHj*4sutUA@(>DQoB>97o%Z3iQm?E&=@-xwL-!_lJ?s{ zrlaWh0@;S9R(vO;djXY4xrKbdhO=|qE9!pz#~aHT{F#&0I6U4BTmZmud|PY7H<41vVvv*TKfVC$J_B2C3dr z?*`VS0}wm~zMe?3a@k_YO0X(LVRS>mJp2@Prl;z;v@I4S$|SU7?#EM%d8VGjk7QxS z-)7v!wB}v{W$tX~>|P4}-MKK@y&NXE^U?xvPYmry6a8&+%9$Y??wE2zg8_eJ^s3IXK=Z&>v@QWCpD0E zE;&52ACy9_@MPfa!=@@NSVfU-yW-{4n!5mudnFXQ3nAfN1w-Ax!5H`NaD;npXtXPY z{Q`s~aH;Cb2*X~6Xg@l%V;;>DK*&3qS9C)A(Y&I!*)bU!p)-JyGT)Vg;c&c@4`$Ti zGFY8CfL~e^qNMspeH(nZ;}Kj$Gsv=#sPi1zr0oWmKZ}COj7#cFZBiTjqa&m`+l5^| z1?b)g8Lt1Gx)Xgc;W%nSGh|I@hO7y{;87EP!J{Vpf=5mG1&^9Q3ZdLwmO?Th&R;)p z)6A7MyT(#wl88Bb;18Hbfo6DMAO9jSQXlLqfP?B;`Oc^(-5YxBOepE!rcddvL_Lo{ zl0u^>)MI@oy!4msE{M5zLwolg=;huE1Kj(N5*`Tc*X@!05d}!-1v&b8qyQTI!6D`j z4l#FdNC5}iBonv!PcRIecNsjHn)e9E*fuB%CVngAMh3umGa?xHz_!iIBBS!U#J@DfR#x0mq5I5TPw@Wj}? zg*U*A-otoBzrDrZV3Ya|XnOx(&|bky|6&mKHOq|I18iNecd*kxixkPgrR2~65u;Kb zREfX~GJ!m-Xcun)X{CEmp>nZ|U%wo480LI`2*oaPD2a?uZLW!_Tpi#ed!O%U7r6JEY}n((?PJB;&ci|i|e(-)!l(1I1vY< zN;Vv^Hv;dBgi6GDM;MKQ(;?6a#z0qf1N2ch!Z39c9HwrDW7REinpy_usas*Tx(ybp z+hM6%4tJnZVbHW)d))hkMLq?9}VXhK@k4 zejKMKa5|OKlQ{hYr>Al{jnhAJdIqOwae6kV=W=>Jrx$QKgVULuUd-twoLkG}*<{JLJh|}vhUBc;7PH*J&W=@xJdK;(9IlY6^yEwgv)B8AG!RZ5>uHrPwX%nZ- zoIb?qI!+(v^k1BA;IxI)$2fh0(@mT{&FQn8KF{fkoW9KItDL^h>6@Is&FQ3=x=iqo$-{g%`Ja{2?OTR7dy={8PxQ0f4u7N?R^?a&I|4(IwRnC!UP zg?s!ZTxH44P6oJ6rjzaDg7<$=O9KQ70000803dqaSY)VdBXd�AfFF|5+baG*1bXH|@X=Z6gMmV57ekBj0%)a&}( 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
  • _p{O8m4E4NK}* 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 OzY5T-vIv5Lf&D+*t`jBz literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONBoot/libs/apijson-router-2.0.3.jar b/APIJSON-Java-Server/APIJSONBoot/libs/apijson-router-2.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..6576ef9bc763b5556a920332fd8e9f0733d8ef76 GIT binary patch literal 14215 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 literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONBoot/libs/unitauto-jar-3.0.5.jar b/APIJSON-Java-Server/APIJSONBoot/libs/unitauto-jar-3.0.5.jar new file mode 100644 index 0000000000000000000000000000000000000000..346459ce4e227beb3d9476309c2252f471e8fea2 GIT binary patch literal 4905 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

    ?B2e(gOZ$KQCo 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 IA;7@?A1!2VU;qFB literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONFinal/libs/APIJSON-7.0.3.jar b/APIJSON-Java-Server/APIJSONFinal/libs/APIJSON-7.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..a6332a9bb96b14676894022abd4ca1501d4b4349 GIT binary patch literal 248133 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�AfFF|5+baG*1bXH|@X=Z6gMmV57ekBj0%)a&}( zSw+pLa7k2D4AH1!W@`h}gJk2DlisQ;o{Y3JR0Q=aybLF?XQ{3=nRJ0Mmd- z6WTyq1~It{3oa@xE=tb!UtI1lEt}{syRbMP!Hi3v!k}Yj*y^DX&SID*s?z8!Ro9Q07y)M*Fw%rH7{$OF05u_JQdW=; z&Pty#J7WyihJSyI3F-851ht!*lb(%@JunW&8<1hb1URb^cjYWDE%PrxUdk&kDe)JT zO(|I5pIA^>SWv1MZGs0TLY4uOOqdL3GicNBW@d2_j>=e+TUhR&G?zhi?1az}Q8nU| z15*r`YQi*_&Y){3Y0~DDmX+k@l}+=P6wEE~mk_Li(t@&LOvPk|wwz`cBTvqNa}Ahj z!g(+YI}FnX=NrkKk>8ZQL3YZ4*(O{7xeVM+Z`9ZuzGhNvI``Zv5ewWzdw;lkpQGJpQ0h5nM9rS?a zkbT34`{w2rmim45YpeEEudcs+bN#BN_4hw;aO0{2mA4*Pxvl=5YY$ee`Euvdx((MH zTz|FQpzivL15fVS|Ll{#6Y9fPR#NWwAq)@9h54j)3Q3%svsBzP;_o68iix>hNZl#9 za|-=bc(Dm3RA^vfc5$KK1<0Pp)U30zCQZ*G`Ykfy61WuKqCRI&OqRWcJ3MvcUsOCYW`VJTdL!ZF{!ILD7@v;|C`y0+z!H1Fkn=CEU;mBL&zfD^4pZ$z9w` z`8oJ_U=^%3;3gAphBYA~Y?E^;!a>$Ug4ucGpV%-!!l(u>+KF3DxD9ScrM)0`z902U zUT)d+g0c%SRa%x?R94zV(K>I2nbUAO`&yXqfwgd#0Tm{!qsfSB+6w85Mgn=$gOj`7 zgnP(TMJysdTbx-uub_yy;yx4ZhX?FI25gOmvk~6T5Tu7pco-gG;ISbQD>0ZFn;BM- zh8a!^pu_PpbysP^qtsnnySuc)!s1J)PpaE!!sApIY1g5?wi){gq()P@@&bd+G$UIW zObSQ$6GkiCbZmpC40zgvXP^pc8~}w>M$MB?Y;!^rJ&nY$+JqVsLr>c1(djukB#0z4 zJ51OK&!U>2M||BcoNP5OGGI4q-mpghd3eEq7fpBxUJme%5*sBh$eVg@X=XtwcGb5P zmRE03Gt>-w;S~d3HQ_a4#x{+sQK?@tUSoDelnaOPfz`CbsPnfU21Cj1rNMP5T1PYc)^rOOgp;_t99*TVZI{0%<9 zVPA-@-ss|dzp~F6F8By-Ugo568Cfp)JF2JAld`6yjh^CyPmtoHGqOi#rn_Jtwn3eo zp6!BqOs0*Qn2|-+^neKm;ZvL~L~k^aGY@U2O1!U@i5MW z!KBGFhHB6Z_0>?;7Uq_e`W;I#IJPM%<1$@U z1>Qo$nQ5{})&`*#l#!1@K2wKAbDiOo4~<|^tewHUCW~em19+P^L4HGa%<^AarnvE3 zdZUBMI+A-Pi?G;WRwFx-RlZ=3zr@2ju`VX-O1`MO5FN#7(db999yFeGlZ|ELa6F}fQ8I`NBUmkQ{^=~kWD^1qY>J?YW|=0N7~;pICIFg7}+e*MP%6+7yly`%p6JMF}Q-7D(X-}mLtRY+yK zq;Abkb<0=R-?n<+v+K$GW?AHRtzuJXUZ#>Lh7;#=T@1sgq+rD2tGjvQfoq?wziYFP z*xH93`fN7y?cchi?%o>_w2RGPure4x_>|K3*%5>tJJjF19w*odAGU18*{^$I4ZeSH z#p=4{6$f@#?5o~be`ihoQ+L$g^N1aQG=Z`T!5_SO9S#%24`11ZCB>Kc!kgcoMCzF) zJCC7iFdawFztEqHnj`gOt*=9u331b0Y&L^aL&5ooPbr2fDlaVbU4FUGX4yc&h!MUL ze_44+5xH0_*JN|ZzhbC-TyV%>sA4;YPCF@N$9?ml+cgjE8@uqh-dBM0r@2`^oaqHO z32QzpG@&C~a9k(7W#@}%SZuO|>|&&0UI~uYKbg#oqryWGx64t5moiksw&c;yYKE>`HbOzN3s}w!d^C zMleYFF|jS1#UNFV*TTb=vTF=>t;v?L>lpMnPJ6@x6=Z1s)Ubx+c-LWi;e9CcA~*ifWA3KZ%VFzGb~jre46qy~WAI%|j2EWE<4whJ8)Tf2z6rNj6*MS)GV({~78cIQ&6_{8 znaLr^ME~jdOyg$vvil5nzsVk84>IT+uFHU!MommRXZF;|W74Li&mKK#YSt7~TNy;s zhl!*ZvsV6hN%)HgO*mH)&W|!?{Qjo>f5Qk!lZ_^OoK_oS8n4$;K$o61#l@araPM)} z_MEn@E+Hy^Z{N=Q>u$aVby3}uHNSKrG1ytdS|Wx-n@zTbJb1ILn8s(*&bssdmDSkWL3(t7r0n8gOQEYjn7w>TY`Er)J-UHs+u_pDvRp97GuNK*01{v z@~|4VlRSiH8SMEj8T&uXwk^vtt(URgCVP%OkG4ixYsT9BH)Zy}BcP4SClx7`8+_@6 zTn^ab1(Ur*JpM9+^M2ua(h0G*7b3}@T*_XdHRi*Vdd+07vp4KLrr;U^gCQs9$=E9o zUTDK!@D|RP=9?eW!|S*OH2UFxih(WMrpL&P*Gv$_|_C zCo0p@&&kM{LMs-pQ1Q@iwcQUy}TO)dje?jpgzrnjSJ8hBU zFZ1xuAiNL*hrG~%ZKI9DZw%fOrzUh!s%XAHKkx#A?rriuv{UKw7nPMPR#1HKCBDms z&>z#_ag7$)C+05flTJ+|cq~sac_OW?>Zn`J@-IfOkqDcZrZQre`Z;wdJd%BRtaQ#q+uwWHi*>DNJqWa$+zSa7QsI>Xy8 zK9d2sIC3o;Nswln`~vC#r6@lLevZlWXn9#L^cT&ui~Q8%Tv{H>2-l4ly1=a@fGEaY z(Ufy!a2^}yg>HNS`WhUy?eG&fTwy!t&KDA-i`5?SFE`dFB$~RS)Uzk;5%IT8{wMxU@GuZ~}p*=aLeybd+c^odKgS(JB9uXp+Bcml$65m zbcz0`;rk%>ia1lmi-h1oJTx)+1$KyA@{4@`6OrE*#nUB{5U(o@k&G-E+KLV~=6S>b zn2&$NV2Z$odH7l}#1yBB6y%5^|0ON0xg9^~a9n#h%1keu#_mM@E>cY~lx%Ut=t&bN zXV^B?5W^eAl_map{!5c5=a!+qE%JzA;!IPF6lo})*ww-U;^(B6O;mFbLkY%cQ;ZR4 zfDAOp=$4h7z|@C8nrOd-kj9DehR86*1Ufd<4C#ph;7&KCMAuAHOr+MDiub*6x|oD+ zvzYt~&gQkU3yB?Nn<9rgk_DxcN~mC}DW*9+rxoS9#5t&OmRv#Syk2n$3_D_jTepta ze&B&eZH7H~-Rk|%K51{|(t!(s;fYw1d4)^NMpjBBC#F5|`5aT^iF{OA&LZKo6F$C) zk@6X0l1rfD#fOa`-Y77|MFL&e7-thE6OI3r@#v3DnUbEJg|1606Fg2VFh!9X{M>?~ zd~~hELUOUkxda`YpIcB;T1KtPOi@k;>a=+!#pMfK;u2KYrT#n=PmfqEE;GauQ(R7a z%^|8g0}a3O6I@ECV%8(B6jvGIYEvwwrIe866MKS68ML8Imx2<1R&f!z4=!;n(rtuG zT!+IQG2A6qV0M^GtfbLn_D0P1N2-d|CcGwYLPx1(?nKI^!l4Lpi$J}7n<;J=cVHk9 zUiwi3*@r1Y{9G%xm6Jqbt;rUNyBG{SvEverUtVX5yTy8>lsd>%UW9Q&X9|K_e&b$K z+(&O1_{L;($EfT9Q#>dhvdgBZE%eS!Ph2zrAwGY^6dMAk^@&zq7%Cnm8GEdWjGe?H zYPiT9N&dJgHi;+bQb~ZU>6iNR$`z@*G$(AJ65rh{wisfoDYl8Hnw-RG1jO*GBr3U~ zEghph_xJ%Rb@z-Zs_68WmRDF@>i4i4MYSnvM6G>B&yMOO&JOa^Fp@;%upw#E5warE?PZuwk;zjY2%_8bVo;oiahWz2j?uFrEk16(wSLoDr z9(m*H>_)2xj+JQ6EiY0>VUtG{(5-^<1$1HuE)%br;&t%`5(Q(m^xV7)G02EL&TC{+ z-(oPh)srs{5lj4~<%PlB5<~nkU^YTVJF2{(FyD_V`wz5QGeW#W1N^_RzOU2txFhqz znc^=b0)Gu_Et`O8yhoHH-osE`yw4!}mmXhhbtOQ2K;S=QkpGLppTzQjOJEey_%u=& z*7U+ivBxDoIq~yMq0{PxH1UoXMv1?8VKlk(Iby#l4v2%aP8d8Mug+hEyZsdxc7Gys3M1mf0^P7@g;Hp!iD~#{8pWzFf;BF7`zy^Fe`Z961;ym0n?(R(E#Rq zG+92f+drD(5FPIDW#j}FO=vS@_V~1E>9aG&&|!)(8MJ!u5*YIIj6HLhGRGrkju<{{ zR(u@hZ3{eN=D?&guz+A5HO0^BnqXsJAbVz@P49Qy9i=eBb5~zi2;_a%f29FdV zT+%=ql&c$yBhc_mw+WM_N3ErX4%xB%L-8ePnxM(ZChkqktI5+`vMnk(yN@MTxMVv9 zk$Iu_5L_}E<2t)RQf!<{#soKEM;Daj75b^HBhItk#3ilZ(K2oIn?cP zX5>sspE$eW9*iNoGw2jbfCa_*{=#JY^r}btWKTo(GG%YFoNYs#jlx{I|4K&(a|#wL zEcB~|DQw=?l>KCXyC$uusJP78v}+U=sJ9#OO>VGha>HAsWn`Qw<7I-qJZWR4F2;pi z9|^sZ+eqa(GdO4b}S`Gy=87M;oS6jcp5BJ5bx z3Jab7N1}MOTtB*a0o?{P6ezFV)N%uE}_-5vc-nX4BOF|;=FPjk*p>caGhDfIm|}YQiAb-At#dnpG~)ank+Wc z&7I5GaB4G!+Dx_GBD!BDr?SjBCe5POu+jnsE z+}O0U(r4SZ*6mBU=bSXACrqoNlL4KhZnrdP7O*GBb>Hm{hn-A^jU!@uy>mEUW7w1_ zs#4nb?AoH?^xHR=9B16C7Q3e9mK0FlDU@Xw(yjUKt@|lBEsbAZyf6TucdKs(kWvmk z8J`Z}Eda{b0!t&+fK)} zZQD-1*mgSU*tTt+{AbsxQ~$12@7=naHCL^-<}=55Kxq}BSWU`32HnTg4%eA+gS;T0 zLk?M!6ftiw#6Xf&%7`gZJLnCzdrSLjDU+ACK!N*b03Ch| zwbsl)?#>m8>x(rDJ&2w^^N}k&ILiH)P&57vxyC{Dt1INGne(8ndh*boXvjkvPz15m zeIZYZ$bm+#m4cLXoO3|z*y2f~gS9I~ISAHJ*kyOf2-U7(%N9g8fMtxIW|{T$5ppjz8S@B1vj*AZBi0d?V&9h3`e8;2jjZD+^*2 zHX9i$tn_zJ#`z1#JKBMH_m>~h_;NE$t)a& zMyPzo3#JA|~_u@g4vjtQL5*=Gn-C8my zeS+Q|DT_-3H|0o-{GTKW)!(hjv2dtq1<|Q#Z;R$7?&HL7K{8_#w{Cn9FFLrKYz&l2 zwdS>-pJd0FnR*JDdJ-2j_bSm7Cm+WH$h~-giQg_ZQu+rvBTF#xi_$0ie-0;}74X*w z26WJfUN3d&ySvJFj0W`SDb-(*L-2?hI}PZm(%P{~pov6mkWcgB+aC@|Newgw?FugE zqo+##X=6QAcsSZXsZd=$>?_C2$DEzh9^>d1CVyFx-7n79ztgDFyT#LcGEp(n9=tl; z$e)HJ4^*4m2`btZ>{FgwK`zAcf)ig0;V=w@|6q$*w!gG3P*MdD;Mn;o+7|kE7WA7$ z1_+sLQ17GS6|9AJbH3g0e8fKdh*x^G6^~7w@w;r0hAo>yunoO#ix_Ari^uBoS&GIY zfKD6X3y0#6D-YMmw1{$W3Qg0^!Xi|7>M4bN+!T`)fheUXs0LUqt_Ss1(62DXcbsG1 z^gu2_O;Z^1KUeOE*Z!&_X&Sg~SV_h2fOjTZttBxxJ;n5>F^2GM8rCJ>%yIUA4PIET zJ_|SjuDkZ}75N1D>`Y0L`&WA%-Wyrd4}0;BC;+38=mF^z7-dM!ODlVcJEI69npa(7 z+glbM+sr0-Or?x&{n;NId<9;$K5~YP4Tm`wC|D^%EVw8AXZOmx7!Go%4)0?Ai&uVm zg1b==#PSG}G|qgU+Q@ooc;;I;b>cZTH;}ow&5;~xcx6$Ru6Vg`VkPk{$UItwsU{X6GHtTbW;12Lr-6l{!}p)?Qx^f>rzteZma&L5p)j3Qn~v@Tx)l71sRA2pN{q$mn(xyXn%5VmY; z%7vYDg2T4K9`9cJ6-(zLUoHD^=~s=O_s(wUw(i~S`HC9u!|i(E^#qUO(z#y&+aTYz zPY8z;v@bLF5HD{ATHBO|_zZg0M)Q=>Z@_bRhAcA7iRlJLbWn^l2~z;u=6 zK43{M3Dht}3qB|`auK~ke)^Tu%rQw?Enh8yrqcSsr6d?>BQgC(k*64M#*B$$z*wl_ zzo@oc)86w{!Cfz_yxV+D^CD60wxQ;C{X4URO#MXx-zg$O9y+zdcos9c<2=8hm4iR{ z`dn?{s@HO|XYH^>0p%t)ayw9pitw`PX>kLC)_Empnrvyaqw?yA``k|N^1PzKT5a~( zAa^q+Q)U*pMoZBmtdehq?lfIn{d38uu*gaAJm|yroyH&@J5?K3g8RC)J*2sh=3a8Z zn+Qm#>}iMhdFisNj+S5jdL3>~(Al4R? z9oML0%(&8pDd@DOxg`WIOtIJ3cr)qzX|bAAsuFK4qfyD6zTGIb&ewFRAB}xoAD_ql zJ;_D=x_Vuw$X`EtPoedw^fS)>2~1`<00N&(5H5pKe?MXUqRW1iWTmtq^3f-JzBE#8O?gb`a1qwME(tT+#-zzMcn^6-r67 z&YIEhkK&?KMhj)eWsJ!^Z)qMrg8O`C2e1rEghjn!16N3BzK4s6`;(c7e|#VI2nLdf zbqb&8ft!`!r}hd~J$(oCrZa*$na`}=h{0FG2|`cVkFA@*{ud<$J1$&lu0M8T!+(~@5Ul02DUf8QgS=sV>c?q|y8413 zMGW#g7C1eil_NO*NKI5NzwBR-OIiZ^bDv5JC%{hGET(`!%EcI0eG32tJg zUyja_F6MfEg)wYJe_f7uaj<4}bb@JKkZx7>`k8M|XN_C@?eqJ&%ag}o-5*Y$KVNnL z>;_qT`avKNWUx6nEN}W4+^Eq6C}aUi>zIE(M027E@;VFztt>5tF@nI$;Bk{ZrSd^K z=ELwd0u&$XaEFtRd{|-4rIPGGmZ1RW&9J}aLN8kA%z?AE7V^~@G2MReBy*a_s@hx4 zU7P*S2A2hhRpE$lzy;@7DR5B+@T;Wr5D`<~W(0gAIr23bH8FW5mJBR1%WQ#kA#pkHV6Rv@cjlsuc=BVPH( zx!u;)xjjyz)Nd=)5x$X~1r)I!{_{L3KS(icU9XKI+qqoECJI^G#+H)V@85%(kYg%Q ztSFzR?M@)pXh<+ZPWB(i>hyA5b5{+IZra+H;fVZeMlJ3Ob-oR=f#Gj|f6u-5g_fN3Eb6-XY(BazUzRspb|?AsSX=ScP#n1` zUvVm*%Mt1meltSex%Yobv)qqI2V^L!955(~7g*v9p}eia$lB6lu2sRl<<5LyuARqR zy@Xj$2(;o%=Ej5Iwq^IH2~nKTnh#JK-0=X>Zi3o%eEVCne=@k7ND_1om4TTOT}m;1 zD@uF`|NZ7A{boAihZ_F|xqlbB`yTT4k?4Wna7^XNdn>XhFF$VdP8-<&Nmi^+mAc;j zqLn`a33}D>uA^CUqTm-l+EpHX^M16GophNaP-1VD+~g#3xyN4gIH3>o)FVAY(LI58 zsJ{$}S(AF(rUE;M&Roz1YJb56js8+M((pt&nqwTjsTj70XhA~}nr_t}=uI*u`eMBV zcMPBvq8yHqLZ?31H~r-*z5^d9u=gu@=o&1>b`^Le`f_JlW(7R=1v}hG0gP#$$=tBk znsFJ=i8rWyEBzef@30X)QM&ZNMxTKl+Oe5k~!N^Mgh?X9$^vx>xooNNFFfy2!by~9VIB_8o<7UAv znZ~R7#Zc*y$X_Hvk^*o!o20?f>cZM#Ke|Xf9B8ltrQkpnDj`8@IXiQ)G-B%IF>Ao+ z$lWcA3AA0;>7;w8A-pkB&>1SV&22aAKhC!l$K zMk776utZoK9cw^NEgn8~4w#Lbb%73cVf;4OiLFhefdE9yZu4DVa zNMcUVrA29)Z4l=&}}eSa`M8RACj=<7$J=%LtA%=W(uPbPBO(} zpAr0dK0~QB5Xgy2J4kI#g2^~`Uw9L?U3G{yP|F}*XHr**s>3lC<6hN{U9bxSYplFP zlZg@<4<$Po)Nk}PBD)*`b9AdTyO|)Du&ru{2h(oCghw&mSqLQ!Kg?kxqNHI#_^2@N z)Zlb@|EN_1jlXgM)+-f)p%cM!cb@G^OcM=+l4+~R(7b(h>0!de*(CM~)y7Fz*IR@>m`Zjo9MUzzV9Z_E1zkq4DopNjw$Z9K zHu263&n0Fj>Mq{k0><(8@?yDn9hc*D*aw@#@FhJ)5!ATr2F?q8TZ2Ad=TR$VfKUOc3Z5) zA%wQGs@m~;4lSnc{31v-{s7`(RVWgsZ@@&E#00|72fs>Bo|p&0(Ralip7VsbVUOIQ z3&}9r{u-pS+xnNd<2;Jr`%143{gSB4U7aMza-T1_m*l5+XzXw=HBqKgf9BzGy zYJ+rBzELh!!1UGnbx3UL`fqDRV?ow?&S>5!%=I~1=Dv;cK2#?XAPsHc@l?&Jx0<3q znx*%0I?~q{27j25tu=ogY3yB17&}p~nq}e5l&$qm%at2S2D9@)P@9lE38)KwqJ|oD zr?x{71287k1aOoVW-nCcrqqH<7VGCZibY05w&0>FW)*^GmaNVd2;-C_0*(#rt&-82 zA=XAjv=muwFoPga8#C2ZWK7_=lZ35ss;2Ns#j>o}B9EjLMJm4Nr~7^;a2khzNU64r z(#^>HS24)&c;-=Cs})Qcj*9>e&avjkHO?_pr3t}lYY)q0J@aHZ9aHKXy>fp^WdUJL_$%UCKMrR7|l$|l_g=9=y)Xr2Um{tr=>5U*Qmrt7R0k<*w2gspLyKBTRflSix*r1Y`kM-%90(5 zQo2Tj2FG5Rvg`-iognRi@H_1ivq#kQC0p3an4!`vHKfwx&Na0=ODehIRII`u&<-(e zu@+h#QL-S%I@xa`!Mhq`!4?xO79@{`fNzrSSv=tTP{B7m^T`Z5!7sl2CXG4X6WF-2 z%oyVX(S9)+A8#So_;bSfi-R7Xu6CjD$UeW9vK3>C2yya|P%T6nohaulkbUr=PN@qu z)sdz)HC*w(`+)i5I!4Q~vaQ_ExLf@Xj|H>J`uq&AP;gX}!` zBYPoFxA1Dc*d}ia83eCqLRfKTCD~?7nY*(Jf98HLE#$oa+`*chs@-yJyWQ$Pup%Va zS2t9;gGjFnf=cX-!I~`)^Mi&U+ass)VqJ?Ya5Pw}gNw`u=??|!$TYZm)CcLswXHQm z_i44ngwQ(I=mo&FVo`g1xjPM8O+^|PRWFXb`a6R*Lw%MSxFJJ2h1?B6sTp_h;`#6t zQ(OaGyO^E#bn^+We^jXm969ehv|BKd?)q(!&q1bL{2PDw4e;W^M%@bwPu&k3aed-T zae`PjF^f;dvP!8R{k;(@I3Up{!wv>HTtpdV_=wpJ4z>htV~DyIk#y+Qy^z&Y{Xmgn zTUhY?)-_{F_w6)KL0_K(alS#EOUK7!1!-)tZd0o=RaqilUL}6=xUT1fZ+ci7o;L#o zxDVZTiXsZ-3&QD%)Q^~JFtQ~U5kl%zT7`@%Rz=>pIz+;EY^KC$uOn^QqQN8I8yxu* z*}zj`GYhh$fM+(>xDdxL#F&tB7_gB%K$t+Ch^RwHcYGo0*kH;c(uQP7Gg1Rx6D2m^13o-16pDbtpl zR)6oWSChAro!UMArp;D`9n5dHL5mBtj2bHyyiLR7ZT$73rxgtb5qKB2ziT7-+Tvf_ zmb0?OqTN{zZHpJlfpwrc+y2nIpLpG+}R`7%E{T*BpAg9)r4f` zU{stm662bJQq#~%j%x9VjSF+R1xg~yX;MhCn?x)*B^GB&XM!NJwNaf|9<5Y&TDjWO*&B9DcCx5h6l)lGeX3z~)N4^6O0VKXoBCZ=kG~1!0F}tu`xDyDb=O6%peM zO)8@XJX#=%@LJdxr<8alQ>!AoGb0VXMi;{SylSU>^y|Pv@y#3>Q#B zqnbhn_F!6SfL7zCFw26W0OX>@2L9D%VlrZKAyyB>+D0BGB-M+5uI1P$bEo>a3a$rh zRYZ>65ahwOV)&wNlTDuyUsGAZ$sddKn&|!1ak>p?6y`iKBS2>DBo1UVXyfl#Yia)q zaK14}@9k$xy&+CNyfFXy1&@C~9^42srVxaBd{Cm^1%e(w564oi)J#M)C9_`JK~`(fO(a+KwkoI z#O9Uh5a2Dtb`WK|;$Z~GGH-Ov7)%#f5!?Wi!`&x42g2n-IueG2)t=%vPUyb|lSTU- zc)-)K0=R0A=PsCQc%_RP!3*n<)jX{?>M@bs3~nLK5v1?8Eq30m5q79ly+1=i__ZN_ z5w9R*TWz6raz2W@Z&tQjpI0FcZV@$!L_E*d2t4Fd3d1m0h|BnfNNUlS+;}|CJl^Y* zGixg3zJ`mD%2)d-m3xSE`3BWSSc`q$od%s0%C3tdtXsI@_0{bx8Ve>6mOu1u!!j0O zr%y)c&S=NN1WY(@5j>c*cSO<$Au{H!@j$DBzf2&Y;_*lYS~5i{l%%sy|E4k&{$5h0 zX3SZgDoxU|?birv^MM+xy)s4=HdG8AJc^t@4P#&(q66ng1DQmpjuY%$+P0}_$Y63m zb#HlU-*;H5EzNFzA>}wfL^-HVFU>x@pqT$oXUI+yE@#RTu3Y8MlDdnb*gfpReQ^Ax zOn{f|x!wxs{>es&vuAm(PtI!Rd#Bwb+hgkI@baC5<8E7OII9+}Im&H}oK>wHqi(q~ zelk$t1)SDpH$|M<=Qxv=_PWj4GWtlAJgYU5RM;|kH4)*Yw8aPux8RwH3NJ-zb`#;m zXtqxD#IJ2x)%`V2Uer@_YW#)QDHTslMow;qCt^&dtp$vv_I|vgL~CAwR}Jq~P`2oc z;9P<}5lOMKW96Z}?oRwt9=gS)by?}*Y(-HukB@2LvgX1tq@ANgH@TKFr&;VAaf&?u zDtKa{$)pQj<|^CJp>`WPpXOrN#By1JQG?fYAAQ+nZDl^W2GV%b?Pb_uTH*@mxR5%f zR_YjbjyioKj0SWJIpbun@s6Lx?ytf4Fe*-3_NO}H*`V0Fw01RPLa)UNnpb(jUH2Ql zHQ23e#tQK3x;kt}4^eMfb6;nzEuLu&zB6fz?oln~30kpNWp(RJaw$coT6@@7xm9)I z^@<@cxN8mSW~~jL0ghL=*WD8rh3O*HXA<9|77P%7-5D}X3Cd5}KGu7y{iEhH!E1K! zyQAvJvwYkD$*IXr*Ay4D-+-+Wr;~5qw|ghc#;BtBs@M}&_EE#Q5RWNGrWe9=X!=zO zZqPT2h-uCi2rP~Sj$5-wqU>|KPWXg$vqNGD(h<#D`I-*xj3rDc&YI7S|Nd|Z%p3t- z>3;Muk$0Y0`65!R$TFq-3?%ENvH4tYU47MgWts*t;jQL|>-kTYs#`?rI(>_&8{Y&& zgV)#-LGIG{v0w_yHFc39(_Hm-9PK7%QC#g7xB5=g$Lhto(3C<8yqHzh+)R9JHK^ltl158! z*D=aWSf^ZO@a@~MRT3ZvO?$Q1d!M1@_16#yck>wuAM=@Or3ox&2JgBwkTu5x@X5;6 zaxJ}`a5)B+H%T>y#Kj3?ZmJOPjrB9MDF&s%E2Bp>E3!Q!lbGx0}cuJ;qhJ__qvs2wWz zbF>RBY9frEDW>4_+gb_z56@~i6gj9<3(hRc=CXy;>l9cAY6+IIwk~Q)fXN%c(;lD{!S6p9+JfWSTxz zFD_+|ZgNy5BbuK|`!z4RR8YiZOyo@DyMi~Gw@eX1%1PB6KRZ8C161X^G+@)N#FdS4 zDAjH7pO&=j8j7G@y^DSbGL3H}H{q0@ic5Kj-k~ALfHpxeH5^+IjL)!KtoST(RIcXhH9dwew zJO)c!1f~a~ap#28%70Abw3uRwsDF~5}Y9tod%S34cAP!Ou4D7{1Xc1S>-#H^3ViE+d1(K3a-_eE@6Yn1M)cc*G`g*UvB}*-{+e|GZ2_1_4;nR0D+t8h@(ILbSGXg->qRRJK0kEit&{wEi2CDX`+|^b3kBuNcNL`ufbBz=BJeKsk z`oMRb!repQ(CQkP_FUK`yZWJrvM#J{(K}^7A~u6w!-hI-l3x55!x2`a_Kcq*Ubx={ zKY}`kDK=2w-J{F*H$`~m5#L{dZmHyv@@{AMoO0=Uc6@Kq7?AYuCx_U*Ltaw1se1O~ zA_!jWZb|%vKZdqZ`0wL}n0oYoe^of&*A!C-y>etrA_1=vRc*NAbXFzY{+}5x?tc-0_?$L5EhvfMyG<9uxHSEP4+wH z%OngQSl-!WP@9hzG|1#q)g|k-%fzNsnTBqVQjA%7q13VElFtv^m4a(!xfwE8CL)NNB;&t4}zpRwNYeX4qY3G(HC%i8_GW>emJ z4~jyG2$&g{nBK-Hq66+EjkCSi(#i9frqfi#Dymsijk3`0IE}l#x5`r)u{fPazd2k6`sIDKS#qbc*QQphCL zjV~)Aw+!km*5+aMkx#NSE{Zpq!yINglD(MVRj1nT;&d}XuaQvQot5N4DB8f6CO$A5 zG_Ap&*2M*?xTsLc)df(#idW<1Z$q6{vZ?hVgjTG%8)K7>wVvt@`cJC#MvSyFN`FbF z;DzA6!h0ctw{Z<%-F?^7t}fz%-^c8P1=Ir1NPlHq2MX4X?jkSR#h;scr>()cb_36= zbSmo*^l2>Gg`Xo1jrSU?R$O6*C;JV%Qq`gEf;ns6*kZEnpg4m@iL0 zL()L+{$eV7uN3$jVJi1Gf{Nm3C>h1cXd;4>$)&y9GnmTU6i?a8RJVlk%{gef8_3iI zBs6++vmKcek(h9cSJl^_3PouHi;@?I5Lv7}Y%-2<5q#PeA)bKbpv57eGpv~8SW)33 zb`QODtv|(%{5yb(q1x4l!~`exluuGva(r6Y&Dz zZAh0Y>4r;2f_Zkli=ELO6|R!oyc0nr=JfiC z$iK}`$$H|1S~0vRPCoDf)arJfM7}qyOSD zg3U5(BgA%g{$v`31z5m+-8Wg?P18q|QjR@#BOn!k=QF)slOThqg&WUY`UxfP#7${% zL|A*xu7YKjTCB~y5*UK+2>sb|0hReU$2abi7w-%5V`|p9{l3eK(0hPK*-swxqT*FD zwCmsbNoXVeGXN>|eN|Ht_pTC({e(|IVRMA;9s5pEVCj#0nOziVCxNNPi{ix%!C#P{ z&!Cvz(Y7T+0io)RGMu^P$H(!vn9l-M=IHQU=2%9ms4R|pLo@@ zJ#@A{6$xp~5dI#uJMLL^I@zADRg&teK2nE07ou_Z7AJFWx!t@~{SfWYTQG(2GX-B1 zxnHIh99h0&2Wq)zccWmtFn7sM7dVIPSc2lR%qgf^0t>a+T>MJ?cO@vw)O61pKU^3$ zosZ(It_Z81l|YqWP+(%5@HINqjUjlr8(90|6x{(mQLP)QiQ(?fsegcb|BfCZ=w(Sj zegQ`JM|w~1n2^^`8ZTm}2McN%KfI~9d#-qP*Rxsg1G6MMg?w`kghtlWp(H{sdxiVQ ztv4NJSI5=9*9!22HL#c>2V{N&kV}omd)WlERTEXFzUz?13};(4k|j*7oPZOVbceTV z{NXj8KfzCslrUmM^$qhE6r5=(0ETg|-Y4NA@}L!DM7v4-MR38Gm#DCOp#qt%)H3r* zJ3^N%>2)PS8Emkr7K4WEuH@BAVnQKo&{xZ1gXFffJVh}blFarfC#rj{INPK^1*vZDyBBYeuRPX!}PCxufZ2&y+@s*!<0 zz}*I6&{f!WS1XM0B(R-VkV{B3q=6N!oRu=Vm!2N#d7uSje7@F~D17yP$w*}QwA z8e%rf+=6(pN)S8=PTP&_5ql^OLMZ!HD=>>6pP@zNdXaycR}CyM2#M|!;=d5#uWG^t zzCCG(8C6R|vD!+oQHIE;`N}B*6EWkv`EL<$Q7JemJN8hJMOnWcXh5Ip785jTAa5z* zPq)!7wnIMGxrgYRUHi4q*k(9g-T|96e;^{M!OsgJBEvQ^5vRUuTiBI{tg!(6QMG|E{c(Y~fP_ z^Udq0KOFxYQlk?c*3@$aU2T|1q#D$-f?zjwo2pVjH8n>*bgGp~eK0hiDj19lbz3+z zpE_709Cf-Nn0|R6Ee2Y2Szw(?{|)7%9CV6zkrZ;_g0xTh!FJ_Pq>{Zy#Q}<{kx098 z6Q*rZ=6xCNu(Z@E%STQ?uk`IR(}xe9pI;vv?~NPoSD{M1HgewacAfDgTC1xv_4BCI zOwsGEmhX_+<`A`SlU5&R%0-|GuM9Vl(7L3Jo9Bxwei`04gf&5}Xs{EuRyuP$)sh{C ztpbG)HolfN1a?amy5h=J$jzmZ(7H>X>-j+IIr3U9O$!awcCEPsYFbTDwF8|enD$2# zJn~@k2_DBI9y>{a+5^BzThLt92E!|t&Ya*!ni@}c4Dg2Jhs#rb@$hEjV>q6Cf%fM6 z%YHl658`6qPes`srAVg_p6LqKv{)M)ySC_1*@8M^x!eb8im zZoOo4BzM`)kin|8A+D*pTCXz;Z{f-)&l2r|#ujh6*~_EYmEhUx`Cj7^iBH5UItJNSt*uaLL@-+as6>RJ+IcGjzoEljVDS17~0)eCe@WZgo`eO8mzSN#+1b}{ci zcI(a;HCy(&x!iqw3x->_rnJ}2HT?7O zm_Tg}OSzZPN*Pm;<2mR-7}VOS1-cDe<1M-(d1oD}1&sMNs+F zh+!`dgj@y$%f_ESY?q^+Z!k~IkQ2^EV|R3zDZ9VbpRk?T(#%2NN}p zb;+;!ypvjgI%@b@BbZO7X*bC+22UKX^*XjHn_eMZmem{Uaw8R0jc7L|YW>}X_Gn$M zcC|pogeM$ZqyT#t&?jWd8!0nEj>-e9RXnbO(O!7YE}3DLeLcdzWz-j_r0WqP4EY2| zpO!&gfJmwWgx3C0iX2BbQ8Nh_`0{r)YNnlerg5lq=FAT82{;vPKJJCuJ?uLNweVyy#v6Ot~Pw!4z3P|&yyxt1|NoG420`sEfcabr>Rh7q)1U$%H+ptS%ey;4Z*Ug}@IF zGtShSMiDL5nqu@@y3(;1bRLbYK|aAn&+yda1U;(XNEQHBm3%xd8_FIZbB zO|;d#Skqvtk=rm-`rOjv8q<|36#N8=yPPP&Bu0*rm-v+W2wLl`Hb#6~=#W~~!uns} zq-s%n&=x_r8EtJ+$!dWz+35=kEo1c36O}wq;#M8-JaV?-frE+C$}H7AfvEw`xkmYC z021AgR$KwR0sPS3d4Krqc`|-R%IU1If7Ul1RD7pgwjCwnQPwKi9D>D|DU6}esTG0D zq-fbfV3VqX)nZ`X1abI4MK9C^ z(|%H?7wCgDK3Z$4e{!Yf{}`g*q*4pE$EIi18$I6W;KCj?BhYs@-l%3}&2a*WHVs+7k`DbiADo&x~NrORSI~)u>Yucw}bpQ@qXrFU3eaT`<2WNWf zlNykXLT6WwTt#gYHZ^BGJQaXr#cBlSLq4QTa#h?pR2Udkj`Zw6s2unDeyWUVp;r+X zwr?#;CXiUqZ%}YXQ;wg9GrKgm$Tn%)j@b9Jz**NR#xs?VyjB=yP*xMZnQD&Um^#|y zqeIsM!2{0ARH1fJf4dfW;0wtn3>Vu0?pj{PyE#9z4fe@rGWK53`33YaPY?|HNhGnr z-bdMuJiWv&l<>u&Q)nNW^*~pzwhjJ#F5fTw#$2zt4X^6Sy0CK(=G{}hJka?D&r!~g z6U~w^p`~qJbFN%smm!7cbj9jZnG8@cee#Kkz4<}5V>^ejCrd3C5Ofu*bO4Jww7;IjBat0*Xl~S;6$jDo?Wn5+3i5}Au&GL0e zeyPaA2*2ZC*G4}Vfl>G{v^}U3O8KF!oz@9ce8OdywGwK6gJc(cBORY!#=kQaErvKK zRJ><556_+nai~*q9g?a@ZN7(?Skz5(pZ33#Rf>Ea=+MnEe*I~-_qFA`VUU1i8F?zH z7DwXSRNTx|AaPB2E~f-!Q6ixtR<--*ZwxPoA73KCFGi*%s18@*{+jc5ZeS5d6|&oo zVi&gG-Ub114-uHzVAz*+Ak(VXyd;5yz!xZg{hQu(;-!?bqp)pHNjK@|a>q>Y!({s@ z9GvC@6;<@&#@jmwm>)>p7gFN4F^BFqcky{%zS;)F@tI3G+W9W=Cs6YFPlE4LxlQpK zcIi~V59BTFhLJC??->2FYRB^mdoHw2eTqQox{S~0lL)+?=&j2GMYTLDw&RQ z+#v=T3=S} zY?NTbLT1~xVXlTiNRD^oWFH}*pe<9hQUUeI7D6FE5mFdoRYHrcZ%RmZSM0P{K^9q0=`2VjCRhL+r&hKZL1Z z+;)`l1Wk7(>v@{@@(Lz?-M{0S?m`1PYyCILOaY)z1M3`ft-E-SO~=@p#u@+c5=^bQ{Qy&5Kyb8}^(t&XPAL_II|fh>{(=6FZof732yetDzwpPT=KZ)y*E9LlS7n7BxQXr(?&7{`GiyES*LbPI68g##>&|G4@|Trb3lzE{?3C|8 z`e(7prP4!|AlU+&#(l8}ZGy=H95XhHtCv&&oef>m#ezIOYhf z)A+W@su&K!4TXQy?6Y0ir^Ub;W8u7{T(`)%#V75)>twm1EvX~-Ilj1$H%Oo!4eWP? z88ofKs}oj#GqYxyRn;?AltUs#goj7QBVi#U{Vp6@7!sP2k(}G@rk|uWjF}al>EwOf z@&e6yU$4REV#xEl?s5AubLD=Av`?Guk039vHUuV$QlNHu@TW4Tt{a0HhwzGFlB8nd z{ph5W#+9ir|J4~)H;iH$|HZGus=5S(0!Hwyv8*ovv4ClO988=GKmuSEe?R(|B1N;@81w8&l=6qm;O#Dkh$ z>nS3GlhV(Y`Ig;MnySjMA#`LUdg``%$)orXDNB%Q%>GGj6mMyi&rufT!v4&Nx@eE_2%|<7B^b0r?F8k zZ57(z{n-s_D-(zvk7b2MIrAQ$SXsUx{~OuqYW*wb?=K)AKX4!*jQ>J*irP6ldi;me znWC~SKd*qww<*;bGhh%~a3`z~YzIv8J2&V5?GCg6`a0pp!i2u!3N$A(KFp4AxSVWN?p zuTbA2V5`n#NN6zRZt0~`RARu!l2X(vfgKDZ!)9N19kk|5N%hiMb@hH$DJ1hL%QNA{ zr^2>Wh_PUi(o`VO9Q!+L2#dW;IhtR9(zpsxnUHpt2IB77tnOl6hcP^SsMU3o>D|{d z*r=+#w=zg+)gnNexLS#Qtab9XX!klYoZkzq$y{ZTSw1>uqWKUpY>PspFws$djiC+S#hg_oTo$x()G~$8dI}s(4yA{%bh649O=`tRt zVt}TDujCD9FL44P)@|;-+;8!truWe=Owiq~#_K;*xD1OqyXOdDB5d)PXME7pOHC}$O}ckPC87IUM3w^nJ&2eAm=Adm7!QFt zIJD_fN??@UCCe1NwBpf!X-G_z<=h06E^hCg6sCB#G%T5(}g+tBA$)iyXeeOPPUV(ehE3= z(d;>EF+wJQU zJP<{_u|RYm-{oy=;y|+DGLK6Nd_`FfPA9c!*1MM~HYoigK3q7;nCl5MD+slB9ca@&t^jXmt4tyXeLMVhep>@ov(}5=4x>A?x!8*^eC}i5t!@tG zKO7eVgdQ>b?eWkxt&#?Ab|??pvXJO%AeE@f8n~QHcu)c`C>jIiSbkBMYa9Ngg$sy+ z*tgIoh;_uV#yW#8*^>h!lt+a8kzkZYe|K@FQCpCyOlbRDi66oKcj2;y`j^dWo#XPfrN#Aj zU#I^KR3F4(3i|UK5SNoA_;2drZByp;Pp3UXPA*PJFrqLf(!ghjW|G6Adkyns4YY8w zHi>GD20JUgEF-zBxGdu1hz`iESq*wr%6Ywr$(CZQHi(Q;S66lSZ|!HTXD^oflBX)etI!qbO84da8-Y+lE+JP^{<7QW5ri7O38| zy6Ru_$4U{;}z(R>X z!=n$MWm4>yKJHu(-aTSVHe!No5i`LP$*2!l@pVs>udIO``QvvbvcTSFug^QP`szv$ z2c~|GHF{NNKZ*YX*ny(^DY8pW*KTX%4;~I&$e5zxm!LZ^3_K!GUPV%$5JM1dU@6K2 zewM0Q(NzruxP)S24_PURTiew}#du?gUm2u$c42sDyO@9=wc>QUyP$ygv2-(}c{>P| zw*d0Lf9^c6n*ZE}$==&P28XOiLlifatRZch)iTC)VzDjeclQfpbAqXe>`1q(Y4? zwrCKnY4gRtQrH4}!4_rXN86S^+TQ1U_x*Xx=-saXNwm|GA!u*+zGw4y_)iD0L*{DSHVf&&dKOMxkpsewhR(K{D_H}nVE;|pga|?FuZzs=6Aj*s$@d?FTtdA zo|k573AN6x-OWYdFA6Cp5}p^Z7f}q87Ey=^?URAai|I?x;|4~L%Wa>YFMwXk6^VX$ zp*?tJU37imVVP4jbM*!5jHV-Ui&tQM&W$7QFg_w3QzBhpM7v*@u|NTQ!P&P8Gj&oU zm#L4|_YNs-$H4g}3%vMra$SlQZ!|6I>jd7DzK!70Y&13w9ywW1*VI2qc3AurXV!C- zQxH@un=_-usJ9BG%yAWFQcky)EWo&V%Gk{Kl*vS5v`PrEU7$xHMrtG4(rzZv=_tA4 zWV#&hL8*GRxU?qfV%#!%6(7gdwp1qWhFHpzvj~O6RNAIs+p|af^8#d_p{f8&<*Ij1y}Q(NrFrhU`+*<8b~Mj$R`zj6hu2uG-^1R};(A%JdD zp+EVaRRjWEt{l?25o{|XD)(BJ38h5a2UDRe_Zqf*Ff*FP!ZvFb+$xD~ zyi>_}vuaQTNsKm=qn089>a75bUeG?H;{vl4QIHKRLAH(#Ap$lA5;Tgt7|B#Ls}{UK78*Ph+G8_)B6bmGJrWv zF|tDU0JxxJ#L#G>5mhKY0`Kv}8%R?s3(k~$5M;>}?M z8u*5*xyBjl_2fyG9(488+^dP=$^vnl@b#K}Pnr@eRq;t+gdTaM8Omc6WOpQimMnN4 zVTY~KEG6-ma3akCKI@qE-w`taVRL-LJyFrvM8nCef9s_G7b{sY!flfIM#uWMal`uu zIz*hT4gRuivU>Io|Jg^sNO4_xo)4K@p*G1pZzUXv!d^~+7FbT(bm&lCt`HUNa<8w& z3|qpSqi-^>sOKo)=ZqWLS zb%WHp;+JHQ;?OoT9HzH>ll;$0RpMBmk11VJZHu@7a-gDal5luccE>g*kBd=c<8}R$ z_@`9EX{c!{F(nqiRd=?6U}~&tBfZy_WBNbzi>HbqVm@x*lV(Zop0A!;NX%2PC38-; zai|KyP0AJR`{cqs8^y`W)M;58_*AkI5_c6bk9N9}j)7#n*k&)I(8AiF67CFwn{JA$CojF+XRRO=f>-Ds`EzV5# z;u2-|K5j5b5LQC}Ip@Tc??(%WsP9YmgtB|Cge;h-Y+(hr{g|~7Qf}4}-RCR?Rgn^p zr1t!v2IPv``<8V3+6kaG$_G13bcco?Qy>5ul46_NE$-;{i-{2dja&_|7-0%;ln>#S zN;AwB!VaUFViQ|4;^jQ_SdafU!j^E)hM*fnBD@D?0-?v>6=ey2n?Ey(YAeVC{gFAH zA(c?B7Lloy_xBEeFE94aPmuRN05v5{TWk$>LcGCJk6#CHe^=Euol(dc-v==r2><}~ zABR!g#_V4tD=Fz(16c`qWTqDC%|ccUL}*Sx&IQfjBZ(IXVPmj2NO&0!e@qWucge_j zGi{NHT4JJ}in6Luhew9iGmiGmZ7#b6t?NP9M?psBcya?Lco&wZ%h%&N&7u3a;dsm8 zdi(416%7E}A55;)j}P3RU_l@Yzyfj(gj_4Jan;efJa@Dhz-hC*IGq~^7;$VCJP;qz zzZ9GvepZX33`B5w&fSfNyR;%5ps8MamQE5KZ(E6=GME_%SR$UCl#i>UG>3JfoMl~D z+YVtVUZvF+v4kcGnSmwzx6rVGG-_u!$!o!-Nx^rVv7<9wFufgTgW~T5EyPCQE`R}35v}e zOY|NKfIm`mIiYLzej^3*W6SG}?$uI54*=;NA!uqs42WT`_1i**jL}8z#exr$gDNkfs)ZpudCC$I=GH%!7{RN*O`o=$rji#%9VlVYGWdbeBW zJ}%@u=N`Lcuc|14lCc)a8TMUNQ&I?~yjKu^Ma~lCm}sX$5iP10w=jlIcPQuI?zAsO z?!SvxwSs3TZy+u*V3yVg>_5q(71SC@bLjLuAwVG)$fI_-O%4812|Elw zfHIfuYAn=r!+s{#p>L@^!%?tyN1d9p{cvJI^|%>(V^`!@VVZ+h1ImQ1Er>FDSvLq@ zcMbVIaNwp8KLaC1th`sc3FiD`P;p=pwskzwX~0(bM|yGMB}(w4O1Q9x-1msnYi0Rk z5A7`FOyL~k@~3=U!pD05EaMt1L$L<$nNkXs=PvrXPVV^ql`9bBiSwlT%7=;r^gNj? zM-g~k^cK5cd7w-JH$QM$rqvMm8oh;!$uNTbMY~8!__4O2m|xb0Zg_b_*eddlhcPo& zR{BLe7b_8TP~dgP(QOrd!~ z=WSEz1X-fWVf&}LftuuBLNw5Y6aY{>FeEWWKUA?iaxQ$GfiI{HS5@z*lePjJtJ=c3 zE9AE;ju@0a7t82M&dHnBcclVNmC7czg5P7u{w9PQg{27v{lgHeER8dV-Y^eFWLyUM zAYjLb*@?0`078CCIky9{8bbf(#kW)+o_XwFdGC*X;Gg)4cixG&iS958Rv6}ot{H1g zJE}($ItFI;PJ~G$omn<>JG^1vF{3wGlG>(A2A8T9_Sh$A0XOqfMM7_ z0IOOat78JFtEc-dcFrKx_U6rF5gdb6tDHA9HO3j8%vgP?NIapAak6_Bnz2*bv0P{e z+&rV--$gbY`Rd!q82h}-0cKc%W|#?O|AS}8&+^efvoBTbCw#j&`E7`1Y$4hK71{yG zPoh(hIC|qXu)+X8&q0vYU68b0f6qytd%szlD-)K6gNYz7Tk5 zE_;pv&~z8TMaDK6s@8N>+M#RvhvAj^1rZmw8$hPn{X68PIr!~+VD0wngo1?gFW(XiY!^g#2~>7jM0ZnT`i-jlO|XLie+E@( z2FsK{8&DSrxumdY1lRM&*kq)ZuC=ya zYefhC^gDvTXmGiffPIAcd6uDhR>KDA_A^LBGpGYQXxS6l+5zRt4tdxU`N|fBsAuhG z)zasR__s$}sr%W-;;Sj)9(7{X@`;L^2`IKyo?@-dH1f%<@?2)rLWCqdIj|qgwE8w zcRE~75&5fm_i4%N#CSU31^|Z_)D2EFzvCOOcOy%Pu^yGy0q@_TfIcz+ z0LK4d&WL3GWzn)!p==cwF+M-1tgnpQ{0#MeOb}9~vRdjdiondY`UC3|0Q>I*XvbT$ z*0yzAZQ&`_$qwoR0v_V;{IH^50?HQ%1s+s6jm%m)eW1@WD`}p$B*UP+U-s(avl zwr0_D2!Lj^oo@Tu=iL6v`Fel0=K0)Ca{-*}mEp3*6ZBUIhDr;}TpU*~BB(r}MtP)E zsgMH2cW5uR7?uJD-58DEiKB;R&?`h-R30I87baR#r{~Q-1$pGar$n4rXY%rE z&)%uJ6t$$&Pv2sY(uGc;7XW~6ki<%|&7e4FW9UQ|vkfAoR!6dt<+Ke^$7lNZ?yw)& zLs}e+BB<5LW8NMUw~MwH$$aL1%OySR>VPE})>JyIZ)CL6IFUkc=iA9qNp6RqLu61N zYocZ!-5Ui2H1(7VK7=T4n3#VN&ZNeVuu;B+ty7Ls0p13l>VAUYXE4@ z-Xm3!sLG61(@rYlw9BNILJ}t^(jh6)vwwBAY zQG6yvftH4a>A^#y2NSYp(MY>Cv882@)5}$PzIr9z%wJQ!vgri7sDxezCoIDam}Y^DO^EC_T}(0C9fM zLH>kE*(_63r%LKsUoq`<>Dh&j-Fs;NCUMD9ohq~hVuQNu;)QLm?{pW@219iZb$IU+ z)#%c`2+v55rNR$Y%r6tM&=k&fvRPiKidBPi%RB42yD{!OB4T28a5G%sT_=%ZIZ)JM zmXMyga1bLa*#T48L8NL*GZ+QEebYltr9IA!{VQr<9aXnY?d3skgn@Puu58gg>JA(ZS0mWg?G>s@$^(f{gDbZ zo+zG)b^%qT0p_0JeO!G-^XQ0v#66R|SljZr2^)+a*gSToi)~xv3~X9%6V^XIkIY`F zYjIhZ8-_uiq4<2iaHcFAWL*C-6f~spV~CP%$EDfH#k#Xq7|%I}bGzfX$+yh~?Ur)S z0%>LQ)p2IY3r)xMc5k?PW@~c_bW=;i{i$=d!Al|6Ro+fFcetNh6x@ruS~&5LN-rRL zzXY*khS>S?gx!orN zYZWk+(C6pfI6lw)WE$`JBs=Zvh0OQu{(kU)Yc+F-GK2S*+dB=f(#>RzaO=2qz!uXK z%YCXDq|6QkuF(X5#tqR-;I-Z+-f=>#bRm0AgVR>Hnb>ifB{jh~RfavJ{MQn$!XMnX zP8)&)HDxj2I!xny#O!+F_$=uIK@EcK7Sg|VKyUAk-~@#6Ld|*|FmaiV1iTHz{WV^k z1nj3m-hDhd(ELJ*zALUFRw5!rNUufIajQ=l7)jCx%NO?<_@M{HjCY~bakJl_HIeu( zsrtXW86F>W|4?4B12d1xx>Hpj!%CTuUd)`qH8ZS*m51C{j#I*1Ku$(-~*gWm$c-*tb!E5nT7>_%=r(uRSI8@)BA)I?<;^%GTA=iXF>klsM zhppd!{XcF%8U1lm_bjjYgta(DoOX|l6pBFuOm3uhn5=n!K1j2|d>HA|&oj6{+*6ov zYJs~~ye%vSEMD^4j4JwY=w?uqY_IyUgW(x98U${8GB7hI(b$wy%pZ@FdqT8vRk=do zW*g%S^W;qAxPiL-P)hSQ5g9);*NvB{_a%b*g~-?PhbZTqP9&Ty!21|u!yxE1A-LZr zWP5Li*^7-4CRrklH-XT41dRV$pK(;fe@jGLv3=aL`iHFt*7`1DxuJ5PtbNl!8qgNz z!`6CAmj{>;ociyMPMI#xT6gc?9zHpLJ`*`Wc!*EDYGpolbelAfK9Xa@fwlR{wokQI z{f+`gj}|GkaeQl_Duk&+se*(@tByNzY415@2-OcM?mIYcYSGs?>OS#?i6}=BGyC?v z*b!rJUZTm?p&KlHC@G+H@Swg1(chtpUTCfRi8q34=-^W7Vz2w;2|l}0{m9ts{4`f& z5MggkRv^arY*65MNH8`NqiD_8mY>1L@oA$9;*g1cZVI@)i}5C#tIA94n?XqBf|2E@ zn-N$Q18|Ean375rcRBvR$rIp^7IuseKP99n%2B}h2rvGvgMMnGD6JzKG{DcwzTwzl zfUd*=d7>;zEajp&4?UvAG*K67%&AUx5IUE2gmSU-Jb)eT@KcA2G+m*>y0X`s3oLA; z#nxAa279mOCZKZaU^_BL)%gM7OO+?^csGB_tNTIR{L$O|v1H-Q-W;xb!Am7ag;o_N zNQL%pT(5d?ooj$T(kCJVH`;t7H08zXs9(?79bVz`#un-M}CRbv# zp!4?2?|R!-XPC`U+_qu(59yx>q64O1SGC!+gf6iZ0i^m@=!JIan12wj-aYw6$VLvd z`=b!Q(0$TyGA$n^R6Q#OSv zri{e@fClRakBkhKiLx;4w-Xv4O5hJVkSK(Dk=_hGb*?yst4Oo6hShqDOvB|Ha`#%{ zE-p}HrulNfE&q7@>hkgDW1kd&E8r3O0iLabbqXh>fvW}UHE9aRytShJQkL^a2n6)i z$zOlAp#hm?d!n7v-4~_++%_3lAEmf^ia4tm8dSB^o}|DCvMtnK>rY$z`#yxgJ-oUT%$y}zr^*jT5o5Dvl8~B%{Mm8GB#?N8S za^!J&n#sU2Ka8>pC)_bsj08@IqvmmBAF4tVe>nCM5G%;B%Scp#S0GmMJG74c0V(lfCgPt=S))VSa z3#RuTqkk;KS30PVD2Iay7v^EnM_y0#Y{_hDemwD777Z#I)!}u{HkOup4Hpkr>&bl~ zU3O6L8lB-GYTSC_S=6~jzQh$cimUHzAVdCxSed6T}CIzqO2oJqw- z15CSaxIbJ|^FrVbk2rt^@Zh$S=MJu40k{eLnV)vx8y;5Q2l%lrz@Xp@I(E!W061J9 zL}!-J3*BDGk8!iYOuq)m@zBCd1=(rBLm*Ad0?qz)J~(aKec?}nd6e(AH=z*p%eu%m z{@+On&GfC^J=Iudsn-6*H!hm;*5qU@arPw@lUk`Kw!A%Hj1bQpbkDo|U`O~|@~W;> z~(qIb^g1CqX z+*B&Q_;#>(>D>l|Ua*Tl@_SblqeSG5g#BgxQ9m8rT52z^_jmYf*jxDds18USIJF?7 zW2>!D!83#Y$rD(FP7Ep2_e@MPN;rK|1q?F!*)>(`qFHjmw<>kaj>$v<@3%`H&Iq~! zZ0IhZFSK9bXG?}+WJmH4kk4bhj@l zBV%Y0s^3s+D0w@!g!b%6t@t`jonIZtIb%4F&Ity}SKuH_c=+X)(Un-LrsOn28o`ZV z&T6R{)N(FtOQ~=a?4wem(_E<%7zhn9_Kf4r1B}>3YV6@$(H(FyqKo&>FUZcDoUi$< zp4NK8ts!3vabbMZw)?P_p{x*?yu6jaHenuyMi@%)`e4vf)4lwEpq4p z+^$?B&nL{^{U(rug@Xsc007VM008L!fZ4xW*d`S+AJSDQS zJa|Yu%=D(#!qrSrx^q@bx0Kwqt`$uRGp}cv)HBV4KwV-(`qG8<)0pK6hdAuGcb_Zk z8>mTDVPsG4eqEo%^*NsEX9M2K8P-XiB3K8g`AoUwrME$qrQ^x=Ij-9^s}3Y~Xbu_R zNaQIZ$=!Py?*dW}UJ$XMFl!hzi&|YQIZiSJf~jZ5fx0NL(i$&s}L{7N`^}$wQG;_?Q2FNGM!S?4qd-ndvtd^8SFe{t+X8fE3SH}F$t_v+JjX4y%}fdGRvS-`-N>s! zKqiD~3X^RB2|*|W#jg|Lb8xJZTKX^u3OT|w4LyqF)L=HE{+fLp=g2(u?t{Q*`nma? ztye}w&B~DYA^bYe_V5e0N^70y6Q{WMIh=4eDbIKjAR+JR>Qju4=`I^%vc&;->hGB} znBAgsMf~KH$}%B;#@fc*A^SQ)ys`X|d_Z($I%^5VnR=3{V2UkOc@U=B$7B|h4g$2y ze&2`$Q-BX1-<1uS53UI@_eHg0dtg;FY{2T@M?q6B5)x_FAi-H2r$}?E53vk zl0aa-$>dfOe28=FyAEUSTLSR1P4H=m<;#B(fL;A(2N60CTgVIdWu{FJ9m1)AE|{St zXxuKf_iG;(Bo!K`I39N1R&BIJ50u`_5oB3qH@&xJz%q2Z_mR_9VW(wh6TTMKku)dXOvGppqvn}@0B0>vu{M42l)=^prEhBbUVhLA1?-R^!P>? zNG%X?7!D!H27)<8k6rJLm`e&V0aSDc*HOaI5Kt((`$+P%iS=_qM0l!60 zbX03a;$Z8VkHR*#{|Lk!b~gigs-^T5wp=fzXXFv?#-Q~RVwrbR%Q(_4^h={146e z-*X7*|CN*$Z=vuVvJc+Aq_%>AM=%wRqX1E-Riwye)Hdd@ijD3vqwwB|SZ8W3!!HvH z=N+3li`-{}Dm>-su9cu`4f*-kjFF)||mmm>14&{2Hk1plhC zf;*LRrb#I8 zZ|ZrL4^h8$FOJ#^N0{KWbTh1|S-lb4^-cph(nrG7 z;~*Us5kNM=&bCS!pv=<}$uG>LV)l><)nZsu?7;$C&2}OgHruA?Gn^oEi@%fp*O9~f z=De#*r_x5>N6qPb{qxdm`<w6bF#D1(-~Am1k|r`uwLjRbFkCV>#MMG;Q-MY)K~_u*GX_+4;@M3b>(zvGO z9;6pr3kg(E2iqvIEU@CCw}l}=y@+HSTA4`Ne}n+y)g29_+qg8)Px}%B^l9|tN*dz~ z3xh=9*o;r!ks+LPjJ_%rL1@`_TPx!{msEI^~k9sa9Pac!gFUK|4 zya1hpT^tlQ<~LZXd`Y|bIiq^X<#>zxcoL17sXKV?Egf%6_I+Dzzw8stgU_JK3f+cw zoZ3kvR1HhvUP-lW%}W`%QcHwm&4|CG*3h7*WGU=YV+`_Q+_>^3DJ7A3ICj<7S|$G+ zDHDxSqGl=9Hz^P$eN*L`B-X? zq|I{CzqN@+N}}L1=6UGFNB`i7r;l;Fi8C2SfXy!$C~zf1oX=o>vn5yZZ*L$!yBk!a z+vpL;hn^6tZjvpA*IjwFv0`F%zc5>)Ri95^M$b71eC*^dF%J%&G?g|H-o{|zXn@>& zK0qvLlOF7D6x>M9T0olUhfO{SY0QB$_7PLBkwgAHZK~t?0CPc!Lt*+`-D!*?*~|(V zpfdOLq(YT)EJmV!x!fx)zgjcj-KUhgQR1ww!k^7Debsr=WXNi)vBb%;^$n7x?r=-K zkEJ@HoqMxaYVO$%szoB?xREpQ*=<~Jo!v4S(+8(A-Rn0F+UCcNK=~AENic!thB0mCEx%YL-Pil;Ha%WQ+TQ=+v z$rR08ZFP}edS|B6F%Xm5Kv7K`j6fMrqd%gW%H;AeU#1~xAx;3Zl(vPD8+2n(TBr}3 zZO%0W;|Txomm99r9DrnE9NUA=1N7Q}SH-oFkSfV`wwxb#CLdD5)K`^SRvS=ZbKX=C z8$LF76)6XuFN#&I(8I|__-!nLS8EK&90mhKNx9^qY4{MAnODD7s)xh^MWshwjnTYs z)*yaAtU|98^0-o-hhhhKYCuzaemeH3xDeuuXqvK8tjFn0mmV%2#}$NVaF%MeM5wyF zk=ER%fXMmXBd0`0(lFBB;HZi$ex*t;hQP+l&yK@PbVd`W{xLF7V68-tH@nDZ$p)1K z%8j!(pDMOWXxY-QkzIQfV?@#-Q5B`&Vv#zH*kaUFwbv6vCS@JG~7f zIvN=V^ztFOGEzJ;UU=Y2ypBkW+a&sg(EYAn+fg$};k3`M?dH{~y|xsakc|XhPtp39 z6I(PAVpq94DTuOSAxqLi<)7Cp)G$-tmIo%%aq4`yK5+R$+%gTvb9P_;Fh@R~&PXsF zov5MA3d7J=Od}MR;B#a35&Okjn?xX-05PYi%5#Uq8Zt%tuag@7?&R~}QbPI8yd@+g> z5~>GRrcL-eb=>4(qt-g(Y&{2>-GJn~d`sQXLI;|U8 ziMe4kwMM#W5M{9)a{`;@4^WiDGKMuxP0Zbidg`0PQ7}ldGOiZTIqIM$AN&YP8O5fQ zTg%40aoGBjs@zX!vsM5*WSW4PRhiSTWl;sGxd4IS>0Y7B3UX4aMVyfKHk6`&jOHa9 zY<0b0A4{_OV*|p3y}^ft#2#N4JmKcMXqiRGI2rt)Wx%f#$R?ah5CyEcrPeJtS?7?@ z5O03P$22XbPcoH}%r`@%yw;Q2lV07E9|yER&K4<59D0=bhh zlK$2myiATDp8~&q?cJT^oa?nFx)Q~}GvM6YQYC`aI_>1gdQ)ukU3Q1O*TH;?wZzr` zXRukUk*hZu0F({MYWowwia)a>YP9!B?4tcV-3OGq6Bbx2q~a8Dg}*f+b9*W&Yb8`` zCA`ZT-UGs&u+Ia^M!|qEYqOV=2EOXBSN*mcD;2X0{)cOfL6|R19JJl8mp;7gZMctF zb#g?Dq9e4m4M5EAS+#rktiVrQ6SmoID-SBBFu^Pak}m--sts2rlApODYFt7;gQT5A z^y7w)*S>L_1owc zZdduYaPTZ(8MAPh&bS)xDgP6g5u)QGX)In#Aehs{2_Tu#85ucBh(0U%ZGwRrj@V`--;~LZm zg$&yDzXv*2CY2_j$G(W~VTE0fN5q2_yW9SO5LA_=IT;K4TF2|T>55?Zg1dPZbo=Sj z>Um_Xj2iUo0;G2vC7*AmL>4L@brsk>t_xob@;hC}0M&KWxbc9b!wx<8Jy1 zXC~kN?B9Dq0I1kv4*2$AG?zPzI2asnKvbyDOyCYfk#pEsLVu4Z!_CDC`%1VC@yUv-?I+;6qm~;uVquxadPZ zT%HF2sm|Y7Uf*K9z3cbWy!gKPG5+I;8o3%6+5VNJP5WIqW@z@;PT1bw#$Nb8-~SI@ zo)kABEkF++`~`SG=8p%Nzh_mFn+ak@mI?5YQk8J5ykfj-bG#&DaC zl);!VBFe54!P&+e=uf^u<@q-A zaQShF(hK2?1deZs7cYcNFVIYj8^{i?yv*fsHX2uA83E6!oP1XvxWT`#@%sVW$cb{O z*_g_dFH`oV%=8iaO>P6$5Kny}pD2$B>|Qj(&qzQnQgOS9dfqv>`2E31JF2VV&EhJS zx3gI5l#Jd~V&w3>*jqdos$YJpSyM(;TLXHSA^cP{@Yhs#LZG6c+MPXDXOgr8uhb~h z1*`+`JR4j%LQRRLK-;a2D2jmVi8J%{@}%X|e$g~eR;=loK?&hZl6NZ|m{;LjZ49wC z^^8AEVeFAdPy;*zxWlAR(u`8IVq39OoxB^6`x7%e50W?Y&^Xf__F)M{W!}y;S+EmH z!c6##0Y*b5G-ZQNElV9rZ9HJbG|zx1R?*!qaG08EbjBTzr47ZKKZYMYj+tfXzEzLM z@jqff$lONbPTw+I`pWGT@VRTZ-Bza!z_6ve0mX6zHf&Dy#F_ms|?VX0* z{Ow~w>-pF(CKF){0V5z|@r(es{%rJ8>s)S?H!l_MSNodAGVZe8cl&g>!Wy9(@(G!Uzdmmngp#pLdSX@e((0(+9%5(3qETyD%4+hSkCJd$KgjuGts-`QJ3fv2Uu zvexhOGYI%waBIm=CfY2s1*L>KhR#XL$|3I#VnLpcRhj30qSH)n>(AU>yk!TN>8UN3#xGRmuDvgK+G_9#Y@( zqy3g2+y9C|C2I#KTU#4@MJ*2M_Fg0f0m*=R$_{ z8<=qxB*n`QR3g}!0j(hBFnllwZbuM9#)OVOJ(W$&!(ICGi?d|@IcAv^K*jVRmX9Gq z5!cKReVp=hl)9{H_v3M1v(;}Q9N&RF3ECZcOxeR6n^UBFLe^|Gu5Z`eEDA`b+^B_n zNBxH*&7+Am)96wq6k zr)4J$dqNy{2RlNkm?ND;g?$mEBec19Q@j|UA+K>nvN`=D3{&31adu%5`ps3}E}?kD z%eq%^az)u<1s+tnB1HaEy=Grr@+g*h_Eo&M1X)5OZURMv#bjM+C2Y|ti@1_ch`)=d z-8A0q{|~Xh3Z*U04E{UBX8ux=!##kOD01*cpIpy@1OVNR= zCB6s+bNUI=jT5M);r&*R<>zxw&WdZR9&T6~xSXsv_^Nat$afrwkt|Yov)_E`g)hY+?Bjr_6d_D3;`v@r{^QO_FUI+I?=q-{~s* zrIdlz&nCQejm;%RF*9~uxlgxV{$b`^P3D!XzM3v@+|ILZ`mw&|E`IF17q%HQK$e3C>1*K>-uDDJ8y59Xs|8$bS;0u>V@<J9sLDK{kIonSb=v=_8X*B`}DwVBptDDfJ)1wEh=DfxF2K zae-+Cbrz8TER04=8-YGXoFnjJJ05b9f@(;JkgYG#as_SPS#XMISSISW9PDF)_dm46D0Nfjr? zr45X{>%%LlKKkk%)Rv4dR^9*M5an~&CH(>YUCQ{~V&tC=(f_i}f;LuG-#q#6wmC}` z!ZUFQy!}RZ>n^wD&fO>< zmrkG^W6f|;?zDWJp?*VN1y1fEz!A(xnZo(i4=G4=amZ0c7kOl zXuf=3v3SbifjI)iZ^fny51J8Ms0SVl34KMFqp7^2_2@o^=$F{|ev7~qDGFK5pqCoF zi;f=)&*P9cf)Afzk)cE{%10HSu0_qvzIbc8s1X z)tb!`ZVQhz3<(W0K}|+UPP6FcgxeBBX$C~Nh}v>BGk*VeF7DLhqSSIpjSf~3>`1O~ zAM7kvkQPgB+qHK3V5rpU_2}e;TccA`*LF%(vOYW2A4uh=IAEtqv#IA|q@r@pljC;= z>SxET2pUc7)V@q(20f@lWOuMb{`6u+nZ?uN_d?<~>viaX^VrnB{)<(uca2t|eIjr9 z04phV99-G+{6ktrxoJd8>-sU?NV%;+`FR0LP3Br<8#~4$Y(mY7s9O!ML1z!Mgdu48 z{1&r$gMyCy4mAMZ;nLgVwVY$KmR3X8^T3Pv@iU&dh$%IWOH@}ehB)F}tJ)1$B>##T zcoKbuX%aMGtsj^&Kj9KK`1H3nz1Gn)gGlj&du&Y}fI}L3yGPLcxt&A_IME|E~5*<}(D=um+yO`8gMVaeeaoMyqdYt%}0RDB0Z zB@x360nycS7iE#t>GwLbCx#0+QGC&qY3eBgtY=ZAl(}WP@=Go)n304t9ejdO(l-&oU%w;oGw?<*xnUm*=oHe+Q3wFOu2sL zes@PebFsNLSNHl^9Ple5VPmFB@Npk zENN$G$gHdju(xVxpoE-2J2p-+nHi^PP;1>T%43;KZ)9LD|8DUDh`W$x+X7mnDaBIH zQY*Pbvya*n>@HR#_FgHzd9Hxq1gD%{D?ZTG8iRmygyN_UVgX7xeA=+M^r|wJ{>JDNGg#!Z#kj^ax&r zkF+W(1FTX|mb3HG{A7sdCrdoCoK?tPDDNCr7m>lC!9}ypRrC?wAy}OH#Mx_OQK_qI zs^+>5<2$H6vd!=660nZ(4I_QZ66!dwASrPUlV2|vCn7GK@In23#t>o(^a)0N4XNtv z?zZmer$(OV(VmzA=5v>h>2^CB2M!}Xo>P*_%_1$O<7Nc6_nVd>4$xbkGwbN|?aqp_ zX7S{hm4I%UmGHsj476Ljtn`UuDqt7eEB?d{oY34acvL*DN}FxxrL^h#8%kJA-nqWl z6D^~heimh8ZuhdiPx`~%I3RiB6TT1FVwEx3wyU@%pW|}^S1em9JH(`**r&`w;|0XLS4-??s$ zoiLZ@5}oEDDaq`A&unueMllM1h+*<^qe;1sSbRtF>)cuvn)yF;eN&JqQIzCs+jwo; zwr$(CZQHhO+qP}ne(m0#n4Os2+1Q_o`m3KCdC$p8T<1YLUq~a79 zNZBrTIHaYa98N=28%~cWT}PUh#*s*5^cri9JGVPnM~(lzIpsq5Lb=ZTOsA537OGC7 zhbPrz5REujX+NrK7tjMPA~yt+V+AHfn~)9;_Nk^TO&| zs{}oaTgabPw!dLy5hNiJ4Vq`k8&4IjF{mGRQV&%HFa_))tfb=27}PCqKq_(~ZqUmy zkT$57lf98XK=qtSDRHM~KbFT?Y+)zdR}`R(cUixh!9>8{K41<8|I>)u@)Np57h>*1 zUJOb*Lnp+f>+`^nuSOehC!27?K8aF^;ur#fQbw1qYG!++k_sFy4P}_s(*i4$*a!tW1<^im2)M1D;JwpH3gLi|hs%uU)u2DwStV*+6jvkL+ICw7Ml za+A0x1;Rt!uMTO&MYQ}I<4zKFk~VVMntURDYRMG%(?ExUWY1{B$6_OdV>7@d)emT3 zI|{92Zwz75&^tM@JvJ<{X2)B;LV$}Y7gkL+AoGjJRae67FN?-t=rE#aaHDI^u6wW( zJy5m%F}Hc3yaq_`uqhO$YJo1JtoPJDp>Ze79TIY_hZM*KWrI9jGs|Yj9Zp1WIpj3> z@>5LubHqcAP4HNb;ytUQL>kb%9j{b9*bxQUpA&0nhTM^A^HQV7s3pBIYfca`G!uD0 zLP%0iRyMM1(FS+`G#6@;+81$sk8nn$oN3$UkSb+JMWE{;GI4(TT!&halKNia-Gxaz zg78SL5U5ByZNSkHC-4NnHAC?VB(<^=TauPrtFjZwWbOhjFZd?v7O+DMoDUvq!{kRm zAyr{8^$1t8J*(B?PGU&$J0SywspbtSRx8hi;as(HQxXDGpGG9ti3ZZVkwPai!WwEM z3L=;%*w-yiasNC>u0aEp6+7HZgQ_U5J5eW+PyQMB{2rNtpxM0CMMI@_eEr~9{Mr=T=kNv|k zhPY}dj3o0yP6NALxWr6s`&BTAXViqG?9Tt`W95UMI+Z^EgDS0aY>j~6oR5~%;!r*pX>reryAu8gKDmcwYAap)@;Tb73$$1 z${WY3w%NuFEQ6EYF)z*mHj9%QR0Z6_3Hz98CoRtGcZO^?K;B{Ttiqt!v(MhSjb}lTeNwXF5y5``k-=)aGle%S^NR5QQ6 z&t#otJbZh(oK*cYi=YxGxFgsvia;FV>_hNdgk8x#N?1PhedLDMfP+gEv{b-!BA#oykR#h4FrBM^2)R5mLo+zBzW0xm z(f>d!?Iup2+)CthvY>4uAB)_EB)vFfS|_&7Pk^JG!AZ~+OcW30plOHvS&t2E-k)t{JUAtIlMZ9fA;E)DJ6CHZBFQ5+=Yg#Yo8-xlGBhHyG z3hR3LdNjAMg?I4djE&Wd8UgGz2BVr%5%oe1FiY9#+ql7dH1q9@zFxwra;GHm`FJhV zv4S`2f{DQuqn#^s%jt!BV8!kuH-q;_&@uZVSHrb#|3&%&Rjv>9<}hEd51v5KZDk}BFZX{&gMJRLZ= zb$1hpBeO=ef zYY|2RgXzqbt?$R?DW~J>$1d+T@Ex;{!mlQeUq}#{-rv64{H7UGMZdX0MTgbr8qHc0 zufmeEgoEY&jMb)Ub94*8a9%> zQXkn6P@>VWHPw>YU!AtYFtd5Uuv=X!H2|>N3`IPOlC4%BFcDC3G)|;)M_W_~5o(J& zyJP_#hjbSNW-%?Fun0Mgm)LMODI)ehJRlN-X1~D?wMqtWV@cCmP|qfAI&h3<*c6gy zl`fLq|A;=F(ku}NvdpA&tL}C+^F`8s9H60fag#zpjB?CujDVDGB~uJfhxsZwW2Yqj zusjdZG~t(p&fDt_HrZzAfCL0~xMK(5BC_z@%2JwMMUQS+8Tk-9dt{tTHOrZ?@iUXnoQc4IB6Z zf7y^YG*w~IV4yDCD!)amhVd>PNjEC5m&D1o>iS1Q_(DtKosL5hnOV1=o_po$51e9X z)UYe^Vy0~?LA;G>_tu%*Wrb7Oz6hf|_0nkaAxss|AWvVJV&ke|q%PY{I(;|1pW=q^ zZ6ZAj!(unJqG?4;BRIU`n#&lj%75=`bALm0j)Yl_*?EVP{;4e4%@_}tjr)gtS<~OM zXW^{LB^s>6$%G2;CjdrNtk<}fgON22LzLzu3 z_N|hmKQT-Xk`l|D2K=AhF8(q9J^~d2d40Xq3%msFpfCX~J9Hw=gkfAE*z1fqj`JGv zs$kF?7+Jd24ZH>II#u8aR>LIC6sh7JcVIAMLKA+>Tg;yFLX9Wlp~68rX}WjJAixfm z`y)WSeJ*Q^G8cjBcq`uw*GbuxndV`bExoKyd=&r_Bd+t5O|c>ySS)`fE0J8Uo)7I%TK7;^l| z@eUrvi(~D*JbPkv*GTeio{=tp@l7Sz*y%3cc((wNZ&;?Sb*?^79J4?@y_FuY>^kwR zn*g^nvXPdJF8>TI#VHE&0I2RMSrnvcW!OlJ9V`NfI0zJ^!l%I9P1xslBmTdeFk={Z zzZ@|A9~-Om$fkXDJHojtAQevZHP)O|nb(rPK3~^8?0waV1%^IMKk*pI-ltCUNNewO z=dwI}?@XyH(LKk+s*LNsb#a(;A^f1rzQO2URq;wzD$+zcWIcRi+)0jM09&oieQj$cp(^{q!OLFw2DUeVUsWLIBCd zDXqvJ@|_c{7Oh!3?Og*IV!%YvX*~}8VzAoW^?|eeHIz)a-0lpqXmz^I)+(|-!LUY8 zx3@`}%8Thd*1U87x#!02KGx6n=>Bj&g7}%{ht@&D5CqX-An2K;E6tEWXwyf8$8Qy7 zxS|1eXXLYcL&IR-&%G7mrv9XGZVrl74HQ>GMS$f!`3qf4(cZ!Tj&=A&B* zHwD$hRzpuSPdAw(qYp7g=*WwXps%<>4=+N+dbYiU(6Km_@@KOZYH@%=z=eec)k9>W zw~!fIFR(-hnI|KDv2WHVbrIr;0~c$q1?-%{hE53W;8Jp zL_;dW*|^*WmTkHPHC?EtSAE%{&{TD%k7LFIMa9zyw-81M&-B)|a%Ez%a3_n5*qOcT zq9mQ8iA5QJ%J=y}T@;37Ladn=$+cA@BX(?2D2XM`_AK3-ugps3C6X_pfBPUz;v^=L zB<_zZ3G>`SVnVM0M#Uvo-;8C@NhgQTO zX#%h7=sv1(>$9z7Uf0;x^mwdj^TZA3iio*zUipn+mRHO8u(rw`bcw)kz)vLQ%-3{CEIo;mnb>r-qt<`S*u#K9L z(Iu&oOyo-vKIQp#vN_?p_vv&qe>r(3tAr5Ywzyeo-%Pcc(eC+mBZ@XIo|=~KejHZM znwFXthzPI#d|pXkJSFLusVJygX%^?NciE-LBUm7L2Izl8D3BT?=wCh*FgbGR=VN=G zAr8z5|1^teoD&G#lA5o|QXXz)v-Z^>&ij>~O~>MU2bYG!dIGwEZa2M9?L93_oFy!Z zp0u~q;`1Hx&YFiUsx4xN0oNFQF*nVBdZ%LMzTv zjEO^C6xgFsHy(hb+sXsvwJB`Uvalc<)&$4gP6d$s6RAP>eDK0%X#z*M|Bb%?G3rO& zkQ1Ks{%V$@{`?{N|Df;x>+l}#hVW7nZejD1S(dhOJtZN^W}2&lX)q%8Lt~-}+2&I- zV%|ed0M$rfazR8LMnFOSyVWWr1VS8B0G<)|Ct$|R4!d=JUf$G+2%M3o@VBZ5blg>D zds8w2R%rL*tJmG3(}udVLMFR=X4>=mXb0#Iok-;}Ki+Sr%PURgU8<>UHlyRn)NrbM zB&G8lyjH)5ZyuHB%o_;O=dq-hq;r_CSPT}!rl)&yYrz66OWoxj9Ud$+uw=lQJ)J6w+jUe_Ws4n#ybxa;+2uzloa0I4wzZ~ zb}CFu(BWS9Zh#~K+=e4=6O|H@AJ3Pkf8d~xVBiW2C8)t?nM)b=D0Mj|woEDj%;RG6 zH2=WAqac4wHkeOFMxy>TrX{Z^vvRyEbkiyUP^SyB<2x0E%28Hok18wrqS|sT0~kc3 zw-@&3o5w%`(()|E&lq|<5W~P3Z7{R3Duhys*dNzSigieE2H1h{GsMuB2*)tSk z3zVy%@Gf50D%Cr}q(dp0_eu@+AQ8D_-S$K8;@novCpqX)2hEyw4)2Mu?+Q2!mu%gsHOQq0aoQt>D0F1*KDU8l*gEPIv>BFL!pxN4jvg;=&ywgbFy3~ z6KVSNxp#o&n80OH@I+3L5ie^X37_6eBbmGj%wPoGMZAUvT zv_>><`0%nW|FT04{D}MyQ?9y1jlT}-?vK^VK0i=PpI}h-7*dY%5mcH$@c?Ie))^c= z^TZI;qQJ zF$0CN5^Az4Vzky8dDPE@qCFoF(?#8?pLboZaAR;4Aa6ZvicsmZnZytTIG7tPm^p3v z8`NKs^eG5Hog<#!LmsHY7kw6=@a5%6A(C<^>1(GkKUFo(b-{7wFhUz7;5 zA^OND|CG;f_6j~Q!=HZ2x_*%aMJIum9@e?(+>CY3-yR&IT9}Nwr>v+bdIU0JGZ>m? zrwCr^-x>=UIztKg{|Roh{dWMdgaNmMF1pAmncxs&-Pm^ZXx78ln(W zjn28g$Tcc@z#Wug;o+U}o2xewR(kZcjZpD@UG4kI7iTaJ z=^7?u^A39oS|x?EeUoujtN!sLfvjucMvm&gA7=`y>!9d6qQiH%%s-LGX7e?d=VZi8 zMOT~YkwUbeNmBSZC|C#=HgZ5#cC!{+TzizLQoX^Vs|(cSM?3&V4F&d;WX@`6s zz*a?X%ittw4ba%Hg+xZ$q7*wOZ!-abQ?uMte#LAE762ltCQ163Q1=n3*?9mB`&g-0 zxXb898)^pC8FeHH;*%mP09m&K%2w2=SMTv35<|sZjRxHr@~K$VTU^|3_ zbW>~gXO{A=CpwCd2!CO5+>8<+726t6ne6V$4~6jpZlx%RCVDq6FFl@{S(As7?H?g2 zWwXPeDgxs%*>kC47WOWRWc6D zIz3q&G~KV?>@!Wq*Mop#Xv;3ry#!Ad1HE0+HD3|oo(JV$b?<&H; zSG%qBkXF%^SQ+;;FDOa9>;@@8dm?HPLW3}S$^ClDu}d+)D_$plvCyB4K2lI5(%w9` znQBcHO+c+|5e!OvJj{2r5@BFpB*CNy_p{KSSU(~Rq3XWjtb5e7FB)7f9I`w@oAqvK z;Z<*|YY6(i;Jr+DWSqihjr+UdG6F>WA=K2IVkkJXYxP)el~s^Qo)kdJIt#5ZugU(p zjiK0#_6x7>idL`G`)p14q-ScQX0JPazWC`g_d$~&!u}7R#Ee}!4XY!r3zIy;R7)~c zue_k&p@tw3j-%1EX-*KDO(1WMCmV5B_YHF{RNqg~7)RpTH` zD>ctTz&asKpzK6t4d?7_zPdV_;9b%&^#b7L%0(vAUvx=tG6A<}E-reyLtVT?ie z2X9npK5{>JT3@~=zCVzSHu#z%?rGCJic`?W%slML0$l6cupmF6c%4n#3VSut)?lG>H__UC3qAeFNE~{ z0DkRPck?5%?MnApUgejUOE`izWns7+qRyURuH42(R26_CSS4m>p^-K%!ameaAp7?a znqDWab&)f}4T5?R8oD91T)_O)WoI}F<5l0iczwvIMLqKCcZS94M?OU-(3OH=Fi!Ka z`B8?oHf^u5-fBhyJAel<=%6t{Ga#v?bq)Or*Iv?bviG6k8KG_vgMZSn zK82QZQ(Z=;A;B>y9EFb>2IVAg78X2(DMI8pU(^FRiI|I?Ca>JGhM9&=*IE?`HNFoe z%MvK2pYl6qp2Gxb;~rE-!q|tmEkT>gkWp8Zn(MUw*bV9kSM1*O9@`C;5W3!SIZQI^ zuH0~{e4Vv^)Y=QMn!Mcr$3p8jw3LLSgtTS7=~Uin?;l4%0yPR5clsqb%h?;C&nymC zz*Y;D+$iYUuSqxsXjbXVi_}&n@3yy!By7ThcTLkKq2*v44dzE zsh8if3ey}SK}>}L?2(|A9%0f?&oLDt{io=!1Z|gzZ}Zm`UR&ioogh$^4ysT{9Q7-L zyx;=Y;c2KKQcZ2wFw8R@KF$2Z69^>*vTGN98Now;2eJpazGn7d7${_o3Wo@T26m2W z2mJg*=30!gj>3Hm9uBM)^HFjwgG5ggraqd`X}kxr<c?gM1_+P<-!Vd-FM{*F6qikZNSMd(wNh6UqS1=tHhxaUHZJ9>> z0B+e+O5M+_2VKCDXJoe2#jFtPX(7@JESeZ>uGncn8GyANH%{ z#z5A|#CD)R-tMyH%c_FYW4IpD4lb~b-hYb>){1rk>Tic%V z{J~k>Tlq(~_vm}*$2h;H@Kv@HsV=Kh>Ms2-R`#^&#%vz%8D!EY6x;i^9&GI-;eOX8 zBwut;j()-&Lpk3l8@>})MAZ06u#nfp*SM%9hg%A$MgH7}sHK@T0pF8L4B;;l-ALJ? z(vH_i{BH^#!jagqT09l433H;32SgJZdHI4dV|8wDGIRSu;0)aX6+daL62<4_R5#Ve z2p)ql+F^M~WmM&Q`GxA_3TSet=Fwiv1Kg?B`ksh&pI$_6UCaYaejoh=S7wN?1aW^q zUihtl1G+|fA*B~d=dalLk=E?CHpFm7*59;(pM3{WiPUPwn?pZA9PzwrU0JQ4h4?;* zqtw?k$&T&V{fQeVFPv*k$#X$T2=ED9=@;Ni#ixsVYyVwps$jZmWQ8pbTy>li9VhN18fjtN`KUgmgF z7i1cX=!GZ;#sT=9V?vAql7XbvFQ}^Jk`+1E&$@N;Fisc@>0l(mOr~||tXB+1s_WBI z!{9c}mY88HG>1i+FLTDSf-eU!&X;-$1TwW032zQHSB7IfSi0xzHFQEf&8Q|E_|rcw?9zEz9Hz6-|s1mSYNjH-9RS+oQRw{c%;sovCJ7!Gk*QbjkF za`ZKO!WywL;ELK9<4l4jlhBM4fB9zu6(1iT3q>t8vRMPi7>?l6r&l-hWpf?{IXHdL z9GC2L%tMW?`w;De;C?asq|Us^2u)I^hHEqKv@X%AGOP^Ccx;}3)*aQIP>VH1g+hdZ z{0Q9vOB4adx83}4>c!EiM@|MWkxy%IGQ((Woa(S#@=U5dvModN5r#dP@I$+*vM#Kw zmx}Jl$;MGGGgmu8f_Aefm+gqky@$pWb0E$U{#|rXhAslBsL#0f%!UFjP#q2Xx!NBN zyeH-~6FxMH^z_ofAD>pQKI02&RFhn4WqBH-eJ(EYD461Dkl%_ixYBYdDlOQH=`ZF3 zA`6qcnYx@Azi@~aRpdB8)@qz28dlUo=$hlIWCSbTt$BZ_duKSC+Dj>96{?Y zTvRUerp{)x$nV>rIM{0({i-wSA)kg8W4W@~B4Yf=9^*OL`*jbFt=M(jSEDF3`k_qy zd)vyKeB}E^Z&iv_+M|Xge-;=2-n&`;u~Y%}hvvCH+r!VXml%M4kq93F6q1v#2oxL< zHNhr&BdYfT*%N3vY)#M=TakQ#KzwuHf)9IVowRSRmMl5uroHA@Qon4qUp z@I*_ZNHAh~a@L`d*p?0|`gL8I;tr%knOYl=NI}@h#$KF|btM5M=8*KMr+_lg=bBLs zr6J4u?h6prpS|c4o{bFbL^654D=`BCx9!`oZF5X$S7YdBRD0^gPMj5r13qPRHF-ds z^{Uxlg-$){|IRTLshmh*F#Q)pZ3IHDqt>9KwyQ#5nB64VVgIlAY*_bjs<4hKq8S0P zql_o9ym`5L%iBciYjr_|3fWw{O0t1c3r%}?saPx_RDIR5cm77G1f}9fnvDsUaCEC( z0xNAoNF24%4*7-uUUnL|)=Vr47Hb9CsC%hBNzX{SVTZ`{=pEYU8ZO&n46?^`YVP50CbSH<-|C;k9~4uVs*%#p0uklJvsR*I+3Shk z=4-7HU67X3VkSdth<#LRuaSQjk8%EfPt{<6hvW51X)EOl2 z*YZrwBMt02H+@e9&?>C6OMVb%kO3lbZ64i?;$daoQkCiIZ#>SBs^zBPN!?5-WwXyP za-QO}*3Wtt=QOn2ezcin;;fgthHplpIcS8oPW$C&+u3eHr!#oi*d#UD=q}^O;jMF= zlv$mR^SEei$uo+hlL;KS_4X!cs;0Tso*`CFJD8nXHac6!061@GDeUaOc^^}LO?Iz* zPtOjJAnEaHI{y&bx_!+Y5`(7*5d$42 z%M`g8A2JiWa~s$N^Bi%rOA6&>V3JHW8A1HJ{LewF$^0)~R3vOT?>lp6XhZf?>PqfH zh8`+GR2b~Ygm1$N{9QW8x7sq6JHC1QNvRF*!%Zbjpy!c_eNx;5x&LE7e z`gq86E4Teq$0@tL@qAlAfYfXodhlQS$5iG^IMyo8tvg`dDT}{ILxh>E%)3uwj?ahF ztG2%Z5{IKVH9Q@Tr@ud&*flz@$5J*oXGR^bo`J1xWgllo3OjMkeVkV3PjM9CX@%3~ zU7$-HL^Tg)Moxa?QbDdc-^UI~$lzf1WHK{yJ9^z84%g6-!nX_@{1%K`8XcSDAeueG%;L76q9bKs$VbT4$k`a&y+n)VbcbS;Ev9~~c%o_> zv2Z;f$6%Ad{3dqI1c`OB$POS$#hkKW$ktJ5P&6bEO3PWuFdU*H^wjR!866^t+PbZ9 z^%DMD&P>z@?cibyqLYOgwQ0LP^9P#7%-v7iX#6ny3Nc)6MH)}P%rpE4J*_~;{bhww zo~4#G8IvSUxJnQDIG)&GUgQXJvd;9tEX;xppnl9@qMGqlvq!(qvusZtP>UqS-tgE0 z9);C;^9HZ5VGuMsje!k<+smJZ1cR$D^(nzsMTkLIIPF+GDDwj~&#gEOpS+ZiVUZw^ zF^p_p*mkP?iKnjJHI<0rfXJP-I2GhcZE#ZM?#P`cF8S)P+H*q9`p9l*RFXLw;b`h1 z^_q^ucyRLeP>wl`KP|iMdUW0~IEzb^^9Wr+Z2~<*JVhaOZ<+EY@k;+TdnNlph=sNO zg@wQgiU3a&!97T;7eZgo$dD3R%@Vp{nYtRFSp~k; z1$Zo>=|n`Dua%IB$H9=Weka~D*LG_=stp7%Y?T~5FyR$chV<(c1QbIHVH!|tq<*p|df_L?lgvIWu_c!){UCiwM&J#3hOqF}ff} z!U=3e)^sc@udnK3bY_4Ahu0q|Kz?bn<1w7}Tm1khqsM5`n{~IRH|(l%Gx28D#+FAf z_d^(=p9?aUMy6SjlpRfY949vd+5_%F*?Znl({SEB@#kb!k2MJlk(LzGrqU#?ar`WY z%nT6}baZnZ*)dsW<(A_TjS%JJbc=pl*x5D3ui1V4P@3MZElj!fA)NzZG#UxVM)&_j(13E^eDnya(RBN8Y=qEoxhKbn92%z%KteU;e{(V{M8# zJ^T6!`^Vw&LwC@fbCPXYZRr2(={>~rBKO17_Hlh;!7(7Lq3XM5R zRRBAy&|>sa+WovHje|_gb$F#;D#wO}_r!Q<5QM!$vNlA>r#B5(xS5WQ zdr(~gPO^<;&^?_3rTmuyyXbcEr!2uJqn3k9Zf9w&22eTOSloUgsq4H3!%<4y+4&*i@x-on@dm3jPRDj`{&Xdwx=Z9QYguzjfU429&f685vyD-6u<9fp z4bj^X;9AB3s%b%6TVjWf3kdHJa@{1}5tr<$bd)^eH8JS#n$s|Vq@LFnEa=3ssQ}fk zB*t$fB(j)7*+l~2F2;UJ0zZiYNymExXD~fY+u-*Nwm<^kbIK_YnUua&2Fpx)u#q)& zm@)I~yx8l3t_H9$DKcFi9Hi}g;c&}}l&v^eoYAfz6j$Mw#nP z_uPN8yVgS-e{!V%qTGO@Edy2Ly$T!097k!QKRZV;DVYXg7qj3a-CVOSN{Zxmn4?Tdd~%QHJ}e@wZWWmrp(@ zcgm7jj_c#z?ofdvJ*jHdx1NOhfQLlK;;&F%aN;CS;3ji0+@kN4XEC5cN6=!LDwql{ zuGaetoKuUCh)`jVnc6|v<;U%4eg3@GiD6)ApSWpKG2+%*jWF&~1f^|Ob z=FM%x1d^29;?2k-sPSjm%)JFGn7E{DfY@mL&-fo~*f>27aB-oe?tND~(9ayF6-hf- zrhY0mp_NHWJLWFX%YB%J?42ObJ?e(}-H_3-86Uu%!0bCwyobD2-u_b~Z`|P6J>5G~ zHi+Cj?C%IruMq8hM=U<6T+mQ^V5UPdwt&Bbsb__*yk5bq1FLSVUV(7^aBV2xfwTj$ zuaKWXwSy3!&^{x#`$XSh8h30G2%=N0@XqnUEc6&K^yrB}aM=ZjiNncj%37h@L(*&7 zR{c2zu%6-GYpPwbIQR4~NTYYq=R*Juq_9cmX%wP*8C;m52r3N6Xj2JD_F-B6g2z@^ zG^hG8UGSn4kX)KJeOm44qT{9ZQC{ey6TJIuZ-239f1;6?uu09m?HX8+p_<~^v@s(a zo5k5gCr8^in6&bg`eDTixMSmN;Z2;Uf*{J%*tiQ+H@0&I$l$E=Rt z6*v3=rl*FtRZq7Tfx>)0{{>=!B^UD+#e24=Z}it$*5WL`9*&o$W5rV>D;JyGD!~H? z9RO~y%RA>B3TM?>DXELyN=aMU+`~9JozVoOy&}?CQ%g?VLC{wOAr}ja7ke>o*n5#R zlVaaOyQcH-^Hs7{?4ulL$&yG*2K9}D80d8Q*j5YTXSdNPDa7(By2N{%7Z(FHk_A7{ zZTe?7Ul_N9dw|L_gVkuapPs1hS3Ez5eKE2&X64f5L&1`aD96#2Ll#BG&F%VM!-4Uz zaDfqS3NQed%%8hfF!vqO03FnuvHH%d<&>I*?G_I&j@5qV)J|uG>!O?kDQ>Ziv8BKw zvgkM*B7CeRpL_i4)IAw+i(WUy4`+KX*TBvA8R)bn9r~J)Lnw7&D|In1hbLSl-K$R zJxk3h(PMdpTRVQaM;7N?^SX|PS)E%MoF=qB{4Xdt_M=z<0;e@bTp}YYHlL!*PkZeN z_n3~J8#I#88?wClS^D2wn3SV-mAt23x}Xy#V$f#$DOa~dT-lY5KrBNFxGfhhX9AmJf`|!*nn;O^xcq7;!txV zTK56FuxW=l?Z|hcDerK!0{yW#4@F1JBgmc0OY*o=tULD>w3+Hoeo#IdYN+R`2r zzLKmQ(0c*)4wBY`rNE*`3_rj zvV-9SW**T~n7?9cQU1tOMj+(QPl(uOzmlsZIO0iv2UZbkU-_pl^Atsa^)BCntkL!! zgvGr2;rUh*a1>z#Y@|!rX8t~`0Ma(nT}=%365&C4g4rBt-e9h$f)JL*A?RL-e(YDS zP2!G$pH}QMvV?3UmQlW;ZB|T*prB+0RF}`8im5*08my`*eFJ)U{m*;=J2hR zeh83#jB?Y)c%F3sHcxk4@b)-#!&KF~x)?YzM$f9=4#Bt2nC>S8dZo(WRpt9uHc%h+NER=L$?=>SVyY@mr((7EI9A$CP-}FCap^S z7eS>*=npAa25;LQSEc-8!A>V_Big~a<53%&%D_IQKf*RfCMR}4?$Kt&TuqnlEg>~) zA~nlG&&@O{6TD92i7BNxtz&Pp=EHz6MVc|TXMiyb4shj2nHAYM$VR%WD$GTd#psQO zwXHH!MiG~ebQt4Jf=p83|JymnJr;2b;T;SH8txN^|NbkJ1UH#Cr$R25qgu#QDjM|I z*d(Dx#z7s_gQLEarU&FfHtqjQ5XzMw&lcB}2Vnq>8dlFHn-!@OAF6BsSc95qM>ziI zIfPt=vS`;z*4J&o(IfQmB~6dSi--ObokprK1Q?G`18*8GU?0<__C`s|$AB!z`&Rv+ zK+pgZ^&6r5?iR|BgW)F{A;Kj~>>2L3){(5e7sX-4$n*E$B5 z+iXdO@na-BBM&nbyw+FFN$G!sGU> zJ9sCF-7T_I3R{yZ+TCqsI>^^3l41VC3xVB(4eKI#!wnV=zE6LL7*LoR6;V#omD5Tq zu&|;qM`1_IP^kq8^l{M}>Hdi5AICGsarRP?y z=PWEYo_Z!OuI(_JLPhQ|QDszHa`>awk#QWW+w~g1IG6=_M&VjpL3;3^yX3WY>G76* zfB-abLz}6wio65iO-|7&x>2)iLSMSp)W}>TGf$YpG*JK$xNrSD%#a(Y)L&uL1@KY? z0r8tT_m>DK@^jm;X5azF5K-u~lm^V?K@Nu~(nQ24;8puT4lLBDR``?KKv(81Zjf2~ z3JnOa;927(Iui4Cp+APG?+Vs{X(KnqO>6>Mhq;MZZ-afq!SaQlLnsnh(&sM6L#&57@ipm-ed*a4g4Wyfv5(cf8h{cW)-e?(|8^FI6%G6PpEB8kgt~=c8@`l ztPQ5E7MpQ+0AOQ49<{XiVv@8krvS3j5 zS2F=9-#6e9n8+aDkZ1~ABPrMly@hX8Pb;WO61us5S@^(0W%XO)g+xDxCMA21_fIpG z?7ArsKFvEFMst*hpUEJ?ldfC>M(HIk(t7T9#Tz6ih>1;ySuwvaJaZT z7k77ehY;M|-Sy(`?(S|OxH}0D2*aCsZ{$_Y&#Aqu&e>n5y1Kf1uho%~KgC8P&q1eS zsxWK_~7&rLVcLd>mbyPeZ&1dZkAY z4RD{C6WD2B4lHI=nPef#I+r`zP)_DQM;l@Ld5f+@QUk43=T@+xlKD$+hcVw0yy3Et zUv^hQ8M20M#+CLOz1uB?jc4?j?4GD+WWsfn#;k~cvn)s6kA(+dz>c=n&)-Qx>l#X1 zhVypRrSHOpcIip%?gfA{*s0rLSyRQ>q1Utx;-`)&QKG*|g=yp&FT1c{mVHPycPTXN zNnBpN7J!nyNu^=kpwX;~>N!SLX&wK$Lq4e9F)!1D?e69j z4e)YpdZ9%nyZ+q^A%*>U68#C4ac?BV(Cj@>7PdAXKRE9m&nEgeuW}&u5yFw?(uokC z+UZN;aJENIT#nHjfFOHNpD0G+=5)`~6wn`Nzo^jk4=xtVNG$(_|0pJ4!2X_#3FD_o z)C-Pg^sRB+3&~n^z~JfuY=_P}oL5qTe?Kn@s(h$JOZ-=px;g~|MF!b0h3$@}@u+(V z#%P)sY7=|%aSSgj5M>kkunaSg9lv`D>x#15tnDfY&_sJOZOAMAdknD*He>3CHp5@D zG6Bf-3GfbJ`2jLJ^6l3oNz2Tbfh!$%H0fQT0OrqR$~!Y39FlavOS6D9To$7{K(6D+ z`d5;fWS4+eF7x9EFTgPO8*L=w5fyr3%BY5GbcaShE%&rdu_h4L!!_Jnb`Ha7@=*iI z9PTNon@lB!Iw~J3A*tinHaP8ApkA83vUKp4y&%}VO;NkJ?wP}^vM!x0 z(aM2F54GggItE;{RK;t}T9~fcnL@z=#wxNzo415~aWe3~ z=YnSP+E3i}KI(n84&gJH1CzI`*G7rxntW9H2RP)6EkPE>8Fx#VT>M+jK;hg-1_2qc zznC+{92+|qC*l#8SPH>Rsqqw?HX)#4S8?hh(~{+qMU^YYzz9vet9NGJ?Saq(N>Ioo z;%fZG_m<$-iuU9459^Z=EF}$6NUIAXK2%g*kodn@iK9qm+9dhM?+TwFUldjkS8e+d zR>Pn3L=1;z+ZEL*6NRTr=ARN@e-CbeA`hY=bxqR(aWr=q~s!3(jPwF!97h^sRpo)oxPtQkw>1yiiMNS`6Q4S_~n8 zI#3_SrW4832#_ao(h;nzy4S&MUk?QdbK!WDYpa$mXa;E`$X{2Bj>3W<>?7ypr=j)p zeO}53>M}Th^>et5d4tMxxEyv7j4=b>Fp@6s?hPll#AcjlGWS=()rRi(^w44M)0Zs!qF z!{`I?tHtkUPN!)nz~QNNSK9b+;Q3DKt726>ZArVyg@h%8rV zrsRy_(I$+kBL=vM)do$&FP~YfGis|aS$!Cc4>4%&`OeR$mM`KFPTV4~>RC0|mqtO8 zVE_iOzv`<8AN4H^cuwuXog4A2mv%u%hRto~Z;rXB#QXQWEYev)i1*;whoQ$_&Bg3h z4zXj{1?3gtL73XgPshb>;~%E`>4-SSd-n775`|pm8d2$~TKZ zDqC(lIVsB0V7tu0BTm~JAu@}>16`ecAEK+y1`ufmlXoxGkaX7}=l;eKdQN=)#K=oG0 zHl6sD5YcyJG8TH35Sh7<@vKj~0gyxItiX^^vdvg?+h8AnGKpTI(LEVwCqMAWNGSj+ zkTwtCnRGnMolZgDU*T%fxA*y8GsTwSw$ur{Q{ji)8^|SK2~%wb>9z}>%P`!|VbXN* zWMK&@765qm@NCU#C|8n70w|{O2oakzYTV6o7IsMWD0vUKGdEBC^F2cDpeIhtbV1ke z#EBokm)Z>b?_qbv~{D+jEL%0I_vD8%mu=Xo08Q7YtL?jImfiWmDHO=vbDt-JcDF04nInVtpqz#ZXFcqXIx(Xum@-Kif-D^+oy7% zY4bTvuyY`qIItTk-8_AqSj1smpZH6tIVz-QRiRzRx2j@Wx=zYz7;_OTs8}0ZRLBwQ z%cdNyzle1mgPhl1$>#3Tg)ySuGobF__jzZveK0K1+f(h}lx!jL*IE(_nQ0GxF_93D z4Iy~YRt_?CXg^kFqL5RJ81t|0lBXQ^URWkUUnA=Zzb1_u+oRA~>jw0}t5fPoR{e8V z)(p5tx|oM;geP)=<~wP`8WU&|>VLt1TgIfVtQO@b6wh3Oz#RIOC*a6^>2bCB&$q55 z-r@FaV{MJ%ZyV0>`{(sYDQshSTe1kV5oX^y4@kc9d5{Q>amjAJ#g&AZC?GTIIDS?C zHw=J-hb52dOu5gyD#HyxENPb*wu*Mky>lP;K!K8^O!(Z{qLSV);!gNU;L2 zi_N*NcsWOW*|a`gCO1nu%Srjmg+&?}=^!WnhofGK9EtZZ@i_ND*5DC%Hh~;2lwOW* zJ9k!XdSTx@@i>TP<)2ArHp>Yex{sbkxB4tTE-!`Rr4)ZO2q zVpn05`+18SlcuiNjRlZaVL;vasttCY58txb`cW1S*P+yW!qu&I*OkwSr$s(=j|c3k zjH>R#s*clHkP(NM%vRPUUQ?9EYS>VI>^Z!exthn?F957lM$k>b_vV+MGGr#}-i zYv68<3Lmf&mdRYn?l6|Jj<2w1Yr+Qw+XwJ*D6M3EILm0gnX%N4^ZTw%4?O95;Fs%3 z?cDixx^@xSoj1MA?7AXH1>-8uuPOwRKGy{O+117DncbT2+5SLVrZ92m^d=z+|)7jEURL1;O^J)F48I#vPBTwMHPxAD zmZfGhhF=zE9}g_6O)~=e$+d~)1_nK?E~Ep>i1j16ik^t64f&A`ZZcR8-ickt5QYO= z&3g1Np;{%#`S^_&p$I+9Fk$0=wh8+BS$E3oOzRn&DBp*j+7YnN_u;9Ie$Z zHEk#rw(AE(*L*!P+m&bL&{0E7i437M`+7|Y08Yz@KPIVJBk~B|ed&_LoHz!FH5PVP zFc>2~q+#!87)^jP3wyXYaWflDsHQ_{gud1 zVb5!CHEeQrnW;#wT(JDFqc#)e;lP$daztn78}b7;Bd0!AO@FLW@Uyu&>9I77aMLSW zCh3J)3XcM&z>7=N+ssi&11lk-LFELM0pxD$?1GkGqRat0ulzPb=N31wmLCL-t&&(@ z8>FSR(jbuot$v{(B(6=jabp|5Y0Bs|w+>N|^8-tlS4rI0G;4F)WxKgTbQelMY^ry7 zYnL_|5CV z41}-J-^*bAc%Am!@^rukpd#GcU4MPCcYbs+7l&|j-?qPZdvqZs1^vfe&zaN%V`uYV zknSg}RXg+_o6~+&8pT*$NA-r@t>BLX++bqKx2lhmoULHNt;yMhc!Zm{w*9^fstz`l z!QL&L9btZW#~M#ZETXV04LK_ZveB9|&_JsQ&q zp3bPBTOrFWpv8T`H@jaRX}eo&cD*$p8oboRHmX;gwIUzDb<2fYD^}$k*%~$_LEK8K zB3~BO`IwbQjAtg*dDG{os#DeHC(xUC|?V7x_aUB zwXDb|TzQ0f?oknR(wtYk@X7JrE6Vo*oeEy~6!>aZpF&=|7XC)NZi1D$it^bSZuA5w z%~9lx);X+_thR;x{rtZS0RI6CAgvs=E`XnQDrF^QD!W7JGtiw zbwO#}Wdi2tr#ua-)wWpM(ruXWd0TpZ7Bg&Sx~3FQAkPwc&7dwmI`pNo^d$~5-;$Ms zASHRJ9%Q+{H;rA&ak#ZnXWYx=NeYp6NU$_-Rh14`%DT7R*Nl}&NoaP9Wdf_3m_bV? zJ9oS(W<*2hOb{b2EV*lg#vnJhmg0$TE5Ne$bQ}emf00VGQ4wY^N^S^~q)5{>n^A`= zQcfgP6-#X)SQ9>BrgB+#h*PynuxeZF$zrq0L=PidAlExHR%D2Tdkt&I@Vok$83M_; z5PWq^RaC5P(kSaS3uxY)V=ItPEhy720iC~apDaHS?FjlNKSyBUQQt7c6WYaH*|*tt zZfVCh#<#q^zL+H}4A^$p66#qmY1rVMr4u6Fldy(1Btv&LW&+>j*m*1^8PEhnnnKpv zES3;#c4h%>CdMz!OJB5y_({Uj_X8Rduhh0tqBRx7V#+a8MXKdYBwM9ctz3Z$*`(ZQ zB2aA%RgwzJDD2qjV;%YX$@_q03?7=+CHi2>T52mF!|y7|#aGsg??mSV0Bu#MYEQr1 zps`zsV8ay0%vN@iyw%xbS=!RE97zw2SttmF=^v3idHRNmtda+ie^^;`_^{ZTa#ll=oMY8?ZDmkdKnoVH>w|oa{Lcw^L8%$Iq$&5bFQJ%G^E-q&LGJR_Z3hPdtn-TZ>}I(c&41oTKUKz|pValtDv#1Ks|v9n>u9f3~oB{R`bS+gQICu3>a zFQcCIqB5)UM9a{A$f5?FaX%j7D~?%#uw#s=W)#9H78J$DPO0o=vp5`VrAW2LSKDM) znP3U4`P}OK1tmws`q>Tf7FJncZIo;Hx3QRa@NQy< zv6tc8i3RxUuEPx1flAOEWtLJaxpOVkNE>QhqfHOZq0Evt4^48wf+C#KdFLffwPmb? zZoW!Ac#ez`;^;|(&3#jUO(Mlhfsqzl8)di6(E$R+RsL|l!(mF(6ls3nZN^KJk&yLs zbj?Au2-@wVmiG4zchT}O%<-&5(pXKb$LKL;aT%e?z#dmkZjmomVD{dz4}_2CZa@3% zvHa|@^Twt7Wk-I#tCVFsH|T^z9R`w7Kuq(hTn@>vs-J}KfR>2oCbe!U*X(lgbND^$ z^Yux$F(#7N6xVJ?&=ytT&Q}$0Y0t(TK{fXL<8wAq`wEsF-RK9$bShbW-}}OZ7T$z7 ztG^5$7cnT-j|YW%_B%@%@#3h$!Fg*$#=_Ty?ul}7o!Q@Zzf%DwwRK}+aP2PAV+MT* zAHbpbVvpTSt_m(5^V2>r3B^sC)62LegYM|~#gZzvq{SLy|8hXyyzk0D2+l*xqq1=8 z_tS0~3|pF%6^FRG>RZ`6*=w$jai^%R(s9<7+(4yf^LL%0IqWc&!+Li)=6X3?TDGZ=&M!-_TE8e3$(RG#Y=3b&;zZmRQL!?S+7C-SPR; z$7A%x*29(TzEs(XP%EzOlKA012!;~kHoP%hL{)uLb~Ppe|I{lz#$BrpYaI_ghOuh3 z%j)k7uTOa=94c_K!(Bz{i*iaL=q4=T`Bs(ALxRj?e3*uT8iav*pS*E-@6aQ9 z%P7yQb$;!uyWSeP=q1yG`F97|vx8)F8)plnw{6)DoV3$0aM~q<&IQ+n2kXd4xUNhE zw<>%CwleA}Tbk7qc2;DX_zI>jW6-SzDj!CF*b7C%fdq|S_Q2@r(k^KUteBcrNS9#lwtTs)D0UZ#;dMEx>;tCtL@o8Wn0TaUV07gkaYIibv`i(tPq5FhnnXr?UZ<3(F8qZ&Ny(Fp58+AO#wsxdF6%Q~q*^JMx&+Oa7jWuxTWdFzl1Uo0~7H z{<8wCicTEkqr_e%VEIu9*N1+Y_R*-r3t#6s!rJ}*d(7SU?!=Riqu7wDxK~Oubwd)_ zF8$=ot!VxJIHOL`d3o<+{`1nx6F&$a9rSvHO$Usp!|a<|%fb8Uj@&xL)}9!EX|c~u zlyI*5T0@k<&#X%_K#sVn z9-guyf)?-X*ffXL*K*McWFpnln7R!UcgaX9PN0qgilPdylW&&4T?UHq8$fu!35BQ( z{pPpFHr)jnZ|&xTmqX|I4H9I>7K& zTs(F=`iS~M`SLyOj<)GhXzlaAxf5z}1BMa5D3&}9&)rE&+U~47xcOsrE#ypljNsZFpjm~TEXjo} z9B>db&Q>&+=0c&scQVvT42Wo)u(dWJ+tyltxy{6<`&X_0e}@%u!Iozoeq z^~0)DNFqw2?Jrcqqx^sWdb>{BbW|92M_-qr6Cocy+OyZ#QU%!3(c9&@sVj0hnNQHs z)nKcPIBPIm1j$I)BvM)|hHIx3XJKCs$u)y6bXkImB!-YuRaJA2xXkNt(r35To0I5< zQ@NInD;e;}ettY|1(Y{@rVe`%AvzL=;W(rp&KM3x5XDVbUK?xT+eQ4QWMM)Q!n-bI zh;yRWbXtCQG6u23WLgvo=6HUb!A!)t3I|^;C8^dd3yf20wlFX;;AUvl9>IXu(4JCe z)lXGbOcoCEWi<9GUG(?iunFETeqv5ho@JcttUUOg7WB#jCEC!VIHcv%kDq~~j1*s{ zvC1W&rO&!EsnU}y`p>C>PvO)&R3emmMg06YN+WGn zPW>col$Bdq(XpPXUYA{18M9Ki$DqxU6$A0ZKi}s?xp8U#}ExAKYj!<>I_`z%anQbwM5YA>(x=Tfz(vV&;CVQVo z8J@%54IJ{_5f@bFx@ucbnU{quD`|+I=5qG`Bl`l=C)+Dv?xe~nZ5q8gexbh+_*c?C zwc!hWSdQc=$L39cG+6dHZOc$&T(7UKskcZAyAolujl4neYuh`qKtH@*e2RT4%NYiitqm0d(PNkaN=lr|U5Vs-UW{-RDD)#gQyyNdb)bC)z<`a#x zhHGx-|1LRxy5hzWF}ctwRK!Sb>w1 zycJZxD^b!NMSOBVm;ZRjnQ%x}og576R^nxd`Ie7NT8vc?I|?i_sRnxJeV_;Q+^FEo9kcA69k!ZW!qUR*AP62~f40(C0Zg!XU&iW+Kd zIk_z|V3lUnw{a&oHudj8+#1@w8()`dzL9>>1*Zk!*j^F&X)KM;?&{jCL(tS8d@q|P ztGhV5B5YmWVnQra!pt6({^`t@&-Kht+S+X37WL7)SYG>2755C*SMFI)*4QNA`&iu1 z11}1p{k)q$NU!u98Vsp8`4}I2S5Yvn9Rc`Q|NYEUB$;k)}sl7jN0xkNZJq zl-kXGI{wcezP&8TYtt#f4kF=@$Po} z%kM|Zrhi!KHHfFRUe+H7vFU~OTR|hB+1*-NK2pKVjV?grM`zvIN7UErDD8&c_G*9T z3~=+$&vsnShN2W({7l_)NBB@3`G5YiKN$FZvv#<5?~~GLd7b#MS#9-3;#bDu;J!Xjr_HTiHy*3&YZxB)SA=ivmg69aaYKFzgZo*7 zina~WB6&5DIog8HG=Qu>fSXzLOqUYBCA(t-}Q zX)Ou0z60*azGQCmzXI{xu}?ni+liNtyxXjEr|8?Pi##mV$ZFq7vlG|B+^p+47&Tpok>3;XgQvx`loxR{;|C(oW z592Tgr^Z^IiWj&(obf7N&A+lqCoZEVLg7R#OYz-$3o{_zo7N*)#yB;BI*y5xT%(_` zr|93SiBXZv&%Gv8+sFMEmm)gK90NR!YTrHN!fV5^u`}+pNJvSr>f-zMJnet;SeI6E1dD3hhnTT;)l@UO}ZE2 zD?(9-(12ttxg$A4^tqUZgZ*Jzo9e$f9}(*tM~5zJ484bg#{?5INrieO8r+&kq1G~@ zrp5p}32LlxBpjO_-eD(1nX?G@3@Tab$38FcDnR@3dY5dvF0SP*I|&OHUh1MT(7H{$ z&I&#Q+FHFdHs6tJ$}>ISCfa1$cJeIjnsrjC3t-q$^QmO8Nt5(fe}1c{qn2`m39EE zW2xD?$H#Wi1$uD3l-WKip$C&WoHIu5y%8V&4s_6!(8beoTpn(02U$6M4Hvi(aVt^Q zfBRN&HGs&Skucza6rmcoag%gB$HAe zj%NQMto=`j{(o)7EKD5#(^{)(=Z2|)_XEg1>6j8GwuNPi1-+ddp6;w75?!kdg5C;- ziNSK(cDHF)^cub?kB;{Ki+&LM<4(T+Aa*TlZXnjkeT?)#%gTKWpSYpV$}5K^CncC; zGJo4I|BuhNQ^C{qfb|+oDROVMwgNcU>tHXY(f zs&!6P$Ov2JRO(bk>{u<)jr-b`gH0I-6;?#+YjQW%t4y8Y7KTgq((T5kKpS^UTKcmU{Y1??HJCs(UNRH*cLl2@H@HB|plC7hDvP z+Vmu0lvqc0a@`jO4q1QN<{g`3^S2ieqCrJ&=*zhKl z6G^BsW4WMC4L#a^PU>~g`vTeVStOVI^z~sl=x@2Z_ym`UD3`mLq zGMv|C@iT<0XLRpx=SA!a2vPQkn6L6ON5z>FZLCTCQ4_+3fSU@R`#R3;D%-&Dr=#PG~d_F#M;+Tp<&PQgTRq^>tQc7cx z`@0<-=u`_$o_K!b#}J|s`Q-K>zcPCxcI8Kw_9ubhdt-Qp%rve`Thk9GV`R#KUEPj{ zBV^wjO7i2RG?YTE3u!}wfk1aW+EPlq^!Q@24~z2-s{_0w(lM8w5UNC)hyAgV<^_JF_ZD2l?6jIJi}G_y+y6P;+brLP0@Dc|MO2D z={}|IFDL1+QpX}>(nHMe;WGjMZ#@4{OmW2q0|#4+gaD)b|HSkE&8Pog(fjIu;*s-t z4WHkJ>zbfi+9b)wP+^p){p6v&c;mNLGSRh=#Fy zdbhGT`jfLn(=9`eUy8v)Tal%x_;^*ed&ar#6vLh^P zPxW#TTB?ZQRvi%q((74S2m)QX0SPIOQBtyoe$u8t$Z+mk)nP+sQ)ig!de|E%SZRnN zTjD|TBVtKwlY(aKMbkC@?3%)-ufuiJSG!_Nx%xyITa9U;WJny8ECwQG)SPpSg5S@#x6Vz{Am_)SG=;gfOFT3nlAL&0Wu!6R%d zLMe(yINAD7OsJ;;@G0CPCsWF%S+q9>t0dLk4Ep%d;wNI5>}-}za>c2+$?;Dkra`Nj z2UO@w!Ks`h%QJv{YWOHINY7zx?Xw2#2hP8f!T-~wO!D_x>7eVUr z2cV)lo8KBGI}cdiq|T(kOj}Zl;!!u4t$u-ds=`Fu+S}rRC9o|~&s@V|F&-{)+2Iq>hjSwF5isrQ=!j)TnAeUalef9&S^HKn z_ln}rP!%ed)e^OToN@kNz-F9JO_5~*-U2MZ2afWJSmge@=>qAmBb8WFcDa+kLbM5o zD{W)NCW|p&-;Tn;R5LbkqM@34{c(A~VzI|f#uOys5FVav&g^X1(fegnS>qJidXjYx zdNeIM1^9p?9*dI?7Fl**pp+2ZXgj2 zAUL6iTxw3Sfrg{L-gJhTakRQ-qAHtqA_sQw9?#9Ty~R@eK6xpmW>Q*oC~O{sc+N;t zKOmZMg?n2cds;KENqK!Rn;VsPP(w&i*dK5>&+4C3HKK)jXD9hH2XUe^z7fw)2oJHQ z%@ZZaevVB3%{&Sef;KG@c~y}50d7$9u<|Bw%)vJO4e*L>*%)!~Os?>WOxCwYiy1IJ z3G2Ik9Moo9nwEr0Zr52cr6-8UK?OJ;L7G$kjzVTiv!9&ALdQC;B{(he*6;FwZpi>9 zg@rPp>lh6S*;sB7`yJ_NUGE%J{U>eJN3hkRne8ua?t4W1K$CN&&Fhsl?Alwwf}BoS zz5SehKuFD>e%@DoSbtAzX!BRdK%s3OC8~c>DZ-b9kjT-r#j)?$O>1CpmmitGoN~W| z61)VFOjA`5cx&pPHO$ysoo%_KXfX^nF;JLL*=@%cLBHqgE1zZtE$I$diXa(j)R4g9 zIW8cKM|-NF120+4NGe`^{VjsL1<-8bq4AhQ-=+jSJn}CdbWttc+TgiXkru zkc_on8BVz(eSxP>NW_PIGV&c}*s=JM4CmE#mG&J9v4nyV%WlsK&&RCxMQ{T@gv_hH zMFc%+ATC5W^QlXVIG|ZGl?;P{x9+(XSX=W}NRI79N$Hks0O99|1D=`s?JcP)%6yUC zAeg6%giDIT0r}B@;%{aE;)qGjN)wh6%s_qh*-Ne4-f3b%uIoT#Z#q>X|;!4w@r@hZ(UAS{`np{LaKUda>Qtv(ZWIYYLUb9?13N5{6ej4U74NA>)K+Gn=Aufsvfdwof*UGi~zWPfF$Wr z2}B~8%k;?Ii##wb!a}&5vh=GKpd$>Pk>hdp#oUF<3!z9wny1OMJRW}P&fSZBWc_Iz z*I zE(zAAuGwO|r^Ep{5OtaIO?`DVulPW+SE)bM*S10$;J=v|XJt~hF~gYK7i}ug%}x+q z_;gcTzeoyt@&E=X{0!{O2KkW*D?phANvQJ>mZtdozMJEI(0{GD6L+LJ9Wr`IFC{rKCf1w3_#v;~&X}oAx zGH)<(m~0sVK7#)tpV;*X63Lm<%2LNPt<(oPUawfLz7g8CWFd0$G%_I607oe}$5QmH z7L-QEu=!DP)F$%8B%yh+$FL(Au|YSrZ(cM^A=X70NkuXfs>H-flmJxK)` zZ)6_M-Y~mSJ@z`Cb{ZiQXxr^?x7v?WhV4>djd(qcw;Lh#x=3`kedfy#e+D!@{u@TS zRnL_Juk4mHK@mr{?TXG}tk~BsEP|s!^mJg=0*Vh#?NNm?Xzxwo>jN-BGJ8z}2y}?C zPV|w5nXcSgbD|fH8T8u6KKcNo#nL4qy%AMc6_<3jOL_S4tSY4ADd;Iy+1l7C7z;F{ zUDi^hQ#o|tM6f#0Omj1>XuvrQT^}EmI#e0~9#vZ>UYDbTDWT{|Uy{aF#f}4*9YM0g zC}p=0z*@KTI|<@0H5tWqIX1N@mN0TKrcMOK5`^W2(UYN9b5I2bvM{7{u;V`iEi=m- z%0c>Bh&1VLqt$^#{@D#Em+;mD@MC4NuKp~D z6I#FYK;V-@1-O>fhzM}6+{i1`L38q*?9!lA88G)D^)t8U-(xlLbgTOJB~fc6FtzlJ z3K}O6va+Z4kt6(D+a-+>4VypX6`++;#3DxVU#7K8;4%?I~8;S88Bo( z)$h!JH5^^PG)aA(8m1uds{567Kf7u|MuMv83;%z%csiJUrh{wyRcu^APYhzECwC8Ywk3*LD@ zPBjblIvz|f@rXK!;I7={b3g=@d_+?`UnD{c)II*O9RI;`SU6O{2q>pA&|4m;1evl+Y#%MHcRqP~uGDWO|#f{NyCv;KJ@gVWpDB{^DK|HfpuDdCn zk%#WmSSQ8;N+UZ%*`ohtYAEa@?L75af0Hb<)w%|sN8oBos;(3%=|`+Ywl{|sH{n6p z&j}wytu}&pZHaQw&)Jtp!MdGzMsP%Uekv)))1z^*XH8G%hj^sxqbUQa>pshU_}DAc zDVC$Ue_O6j%&uDHJFs>PIFX#V8LSpONGCEQry=@2GI;zVVVF%^Y9v7|DhfVGO?Jn7 zUF>vk9oqM3?wGW@As>6wX|&LoIwbnYE087m2UE**%DSdOX)hm4TKVFK_nS)(hR4;_ zkOWLEQ85J5?;0Fs=n_8Q^b$9$jPKwCBx6NA}sD$Xg7=AqZ#|heCmb> z5F{Z?%HMH1>!C1g24MAHwHj5-osAj~2U5*g)o43qNtPnMcfsO&;A#Pl4c5HR_(fx1 z;M_fr{|LfK=>oL=!fp=#3!M%N$kV&cOMe z5-K|cP=!mU6k!(q!Rkimn5)9T$1qhI3nXM+G7uDC7b)gT%CBDbpm%=9WaY+jMaRWjTC*6)#JB~W{r?W+B zP^io33w?7!#J(~Q0GqsB4|tqDIAL{d-GTbcv@v&%+3GA>(#KbP#ucYMH%_3iuzXGL zS9eY0j+WMK$RwoOwku0}t`&eZ5z!8=6{V>4cnfKIX?ZaCT1TY3Z^jk;X6a4tJKR** z4*QNOl)8*FKw0;|qtaj2&6ZF%T*|z;BTyp4qXjrj?apWFLG{!zB0R6BH^bBrPeh%s zLt^A%;NO^&TSNypt-b%5j<|EAAnB6Qe0OS}<;>O|$?R+;fF4N=#p9CVh83p60xs#g zLN~*K4`nlrWsJ}XT^KgQj{J~-AJmaI$V`GY@qiRmv!*6EeMxhwI~7=`H}&QE2+Ud) z))`lvYgRYDZl=?DZ_SEo;&vAb^Qa_`4g_n&Kt`_zKdBb!VOVruu?zf5jw39lEjpgOujh9He&we@=;>2FN^SpHM!c!JSBJiPXa>*~A*f6z$BTvbHf! zmnzItqa^;ts;nj-sFxmnh+3E@j@2BA@Lt2k@jEPZ%U6<1r z-Z=K3Mr#c>l(*Vo7I6`4ba=W(X_!u3(7(9whGRa*&b=m>26SsDSo*kRm5(ORi&n)k z1_HEFj~!RaY||iL4Qb2+f#@70>F+o?46MUaj+^GMEOIz1Ejk9twcQ`svCKK07BPuj zP}L9yq1tT+NPVq2RON2TL2{P)$cw3Xq zUcVa2?7DZd+INPTyIF%`~jVBzI*apQMh29DNu(_C%ye8U==# z=MjDd=#ZgM^#UfC=7(ePrkThX^h8Q6(?ifIpS9Sg$z|~7nWXQwA%9BKg9^yEt{fYd zL=0u>0N<|$(vNBh`3rXA$LPel7jfd4iM9BCM6Gq+qd1_qC|8MI-yMQ7hXH+cQWz*<5IP7 zq5Y$I_9t>$qbcQNJwE2~vIk9kTf{P?M=P;{COzPedFZhq4}O$zS$YE6$>pwj>am$V z?q~k4bGG8NN6KRQ=KySgN(XM_29$Lod;Nb*0u6LUL5mR%=UMD z=|VJV5rWwxG~)xK&f}PsyP1OP+UN4+z9Y?Gn-Eq-ts8>rUase6^3^Km>N4pnl{MQ# zP5yEe?uz2<%&EbSRTB?SMx#scdm_sp&?oyl*%9n`O#Z_QHq85LVpn-;36RvGI=jlI zyyf{*wIOV)ZLT`3;nGVr6>gXK)(#SRZ7h*iRW(*FO*6jSC{?n7U_uur* ztnw}y?AiZhTGP#QNyN)$V!|~tS~vJGYNu|Et+ARez0@x=kqFf+=$ZsJaxZqRH@ok5 z_`r3#1##?S>IOUC)=5VEKE^59dBKwO$T=9ykmb4NBy4`n;F z0}t2E*YG=v0#9Nc$C|LB-vr_;@+NC7v=bOE?j_M+zQNV6MH5vZBw^@SxmBae7cuJx zhc&u&v|^YUfV6dtxZ2-p$36S{cmL%Dcyv8e-_$QMMbJAj>dNm4}Lk;b4EeTGif}y~?>((;jMG zWV7#pCk!Vs5^C^tjXdh*ULC5ft+YZ-&moLNSJTSkf}*T}cZE9GN4a!$MAi$MIu1Js zmc?Tt`|~;&HbW3rmb%l>{P>%BJbovosF~Ee)NTF7EW!{BNdIZ3iH7k=V^Dj(4T)yD z#ybOseimq>S87mgFkQn)juPz1t{JJdcDv7VW5|PFL1(>kHq>V@Ub{}IMM%||-AGI3 z;J?u%?&j?D(blxY5;dI$XQeaf-mWXQHOV*V^&td$J01I$h%*adC_y^XE!~-Nu|| zeFZx1ZgK#^_PRTtNfbzOlaM6n(hdzBd*^)v{vg=8EQ=E5ebx6&{R8z#TM%B+R)!tAF^=a!fk_gL5jA_e$i-9oiNlJDtQCEmR;kv*249!k!=O>Lf^ud(WPOQSj|$N|6w&or zi2MP!zG8h9FCAbE?lPU0X>rsmfZ8vyzJ_4_=xbT2Mzy(C>W{hg4eL)N_F?5T3q=P7 zhyLwxxXC1(os;or3hIhh>stu?&$G)OWm&73inDwgmY$CF%&?-oZvCe|P5!-B>cOgJ zVx?tP_$kLvFaA`}DrC67;nv?;e}`&wbF(KL?nQ=M=q9tU;A}-<)?+a0J%|mnc2Y7s zlgDbBE>?o5s7;-!p-`<|bB!r>w0`TOxI~*aO^XE+9kGZubSMnVY1S@oJ%MMw=t^e& z2>x87T0e%C%_Off+8SzN)=waHh|~Ie>!;lMpVrUBA!84k0g%i9>-royfxlM6EPvqE zKk8XP#b?$(MuJsFU{hM)43pr^$sH)6Hpp6;Krof*m%w~l@)0oW; ze=c_skL6VOu{pTSiAPjiCi;!>Ab5YzmPbiR9|Sz(jDQV9^DF4*s%;QVBXh2xv6DLn zO%$u3n)Epg+bNVxjYI*F@s4mpYl+6RA)3FT-dn3(>i1O_!&k9KyGEN?qLpYM)JHUr z26<*`p|}>raTwyX6)FYHb{fdxne~)t75-YUZ&tNl(@bqR)aFUold6K*&YxmM>Z_nP4!Zi0VlG_edS3`Clt9zeKWk(*qKB810! zvl|o`SXz}p^sT?QY1}qMY;@xx9T-Yt|w5iNC9lxgnIkS1V zZKkbE3eUB{Kv-N6n$iD*5!p3!tl7(L6}DM&C#+5!jyGiK0o#Cc+O%>s?c=sfZF6MP zwZT^Js?^D>B`4W*|A;%bUBzwH*lm2_o*oK6}=I7wGw&h5`;fvXDS63S{6+$RpYE$umjqNIKi`n8*MKCHe5H_MX`(|&B&US!iZ(H&8 zY=x%`utYiHCUw}idi-g?&v`<_w_VF^*P(SlKNPIn{_VCk+_u&@AvVW2KVVzOZQ|&4 zewn|rp{m++?AW$}+ipS?&><_r6ArdbxXZp=SPX18bL9rx=6-JhWS1W2qnc*7ZRNIG z5ja(tXyXZH`yLRf>27kF?9_JXlx>BZEU@hWDaLkZpGKWtc2aD2;USCahRRA!wcV3( ztx3)+)pl=&6sk`W$|*D?G=csyhAVhsHZV}RxTTnrop-oc1QX8T7G(FhW@?VoUBy^j)hSwDsJfbC^B zS&BVqlC$(z$WneyN!3XsDf=R6mev0bs<-50=wCT`RanGr$2dKMPGmL^m6Z`7aR!wm zXxX31Z2tygXsK2dg8BM;8EgXGx5f7F*w0V;q(=i=QlH|{!RX3htk_LjZJ%Ki|Md;+ znhpdoH(6%;%uPbJml0Qgt7)l80WY6dJ0<>;g@scG* z3<70_P6SoXwjcX^Dz^`|pC*}!FJf@OlO_V$r*{V|TKkzm4k5fk!gUU)T{u)LQAJ!O zPPN!IPQS1Z!Gki{%ph4$Sgf{`xyg6XIuo>C$nC@JMfxrvUIC-zl#II%B670RUSc1i z+DCGGDN64J-O?pxstdKXhl6;u#7(Y75U;V1!9g3_U+p?OBCf@%uEXKE9z$y|v=&1* zU}&A3hL@n6cSN-VaHnQdt=;5C#OE}z=Zb2_di?YN2@pmSH`#!d-Gp>vg5Ar>M0-WI zn?k9ZbRd)buD#Mt zZnoEBT@7E$)u4e+|KdJllTp4&HI@jU%2P*j;A#6z8yu z^jnm7lkcGjVz=MQt#8_-^;$PZ^sq44aU&+9BF|c>u>M}Z@Js=7XjX1Q!R+6MKGrn!=LF}Io!bufJi%#y0*!BVUNpYlfn48W zf08SwDHb=`frD_T?PX>MSz9S8!nEhO{dtr&Rb6^VEbNCBXg?q}KzrW{$*%9&L1uQ^ z525#pg?;U&Fgr-p!{tgx%O*yq>^*7gC4P#kk8=CV#^!BJ%KZu5Vt<9(Uqvk>FStrJ zA+CtJ$xfkN*?+|CuN&nAD$yRr>~Byq%V=D703GLyPM=gNP8gX>wM48VSc1T{1j6xP zHt2rJm3N2;y~*uA6U@^%dlok)(p{3oz75k`WVIEz$=x#UJ#Ohl9qAqk^FMR@FYNz9 ziF+v?smdU>;$V00nC&MI*oDOPUfKR{xc#^K%|@?0Wy9+&}wS^ z6~0QZ=C9T?X8#ZrMek)bl^$QU2EWy4(uC+F5I`f^2^`@#w|C(I8CNJi%ec1WCil^O z*ziZ(vX_ivc617Xr=hF;jb)y)*|@Q4w|~Oz|6%`BZic0H5)5*X^?dt)C#{>@PxraW zZi$A^xm_HvE)@48(C-GGB?7Fw$pe-OX8#i`u=&3F*|5MKq*V?m@mFsD0uLhPd#lCG zWlU}K)Vaw+_Ah~IsDzSj-{1~dmZLaXGG$+^ssg-Eg@toQ_j{@aCvcO81=&~aTvZLu zgxpG20_6{13n)?xxLSxPax6DpvsT?)Jw-hgmPs@+ z%Ur2ADAE1$E#5<<@2aP9^>pKUfZsTzpq|Oqv#_R9MNMU~Xgr>-j;ZG$QLOY<)HC%w zw0+e2X3d7MhT*bWe;tg~BVsP97jSi$dLdAX^tQi0LP@xPIC&7 zSi8{(Rsr;`HW&`bO}h4Ptgk)F0O&ZZ0R2R+e#@9$0+gWGBT_FB`%FMY)RDHwG2;}j zPBk3))CXb)LC2)&T%D1o@-b=VbCW03nYaqeC>{EDJ;eOKKPCrF@N%^RC&yqpInZ1l z4z4mLh@0%e>9|*&i8#NMt8)yT`(vTjP(HHz=$20XilD`xYfH5$(@Hh?ZwmZQg+EiZ<9jzHAKKEn>jtQ# zYwfnaVLEZ>&aNjPN^X5TxqfZelLs_W#j!*CW%-i@`Wi}>r{NtTMJsX4;2Xh`s$NIQ zdFi=?H+X7*VI_jG^!W{S4JG4xr~#9-NN{E9O9NF-7!wTLbBI&DRw-cWIuNI3=vNM$ z>Uwp9s@}xajp`;!&d<5MWH{YKi-tZabGRolMHx3boVH!+&0O7#iWpxiBjvqQ^%hD> zVEzd|xSfyfP9EM`s^OIiF@nbq->(^v3PXT;E6B(*QhpQF_15p8AbvYnx8Z60Ji|F+ zVit~Ztv&!6fA2SV%L3u>(m>Pll*1>(na-+j!WBj4h~zvxq&~#ehtdA#il^O9V*I0A zeGKFAu6Zr=!*G+5zS5YM)!&#ob6k8rX@eF@J{ z`*IEp^xNFPLB@l*GUJS<=In=O(Wq|M(I9yiWHp^>s=v>yzpT3=PrEUBicK z#l^*lq$$&1&moW*vk!xt{206R26pL9N}BuZ zQmWM)-7?ZmU6WDf?!5(rIRkybGWBgx(dDHwroM~O=x%_i?_m(@XX^VH#G6D+{RNV1 z{Ujt)e~Cqf10|;Z8dK!S`Qc3cEv5+98BF~Ei{oTr>W4_dq`zFGm*d^!C#c5!R8f%j zcX8_w^~A}znK8~2s2{1nSJjWX`tRx|-Mov{1VZQvTo4O!IVKm!Fc%UTq1sQaBUSZ3 zyPe|{iEi=_ASXeFQEu`k$~Hg4&p)bvQq@0m^)KpQjl&;lzs_+yyBe3r<1g&R+gq9} z;Zpq@SHHybnD)5v#{-;(QO*?PH0S$fRr_nbjWa7f)pHu_(9i0u#wu_9Y=61nJ($y1uo4iG+jzsd#~x06IC(}Dv#g_0{f@7a?4?(XEy$C4Y?pIGPL#*CKUg>Z2+36}xs7$+-K3f$!9xX~4{-hw?ngR?UcsmNKR71=>%v9mc7 zj5CY9sCCQKW`*-%UyWKNssscb+y9UI2k zg_t@RQ>*>;nK|(E=K?o*+m0tySP5q%*hq9lip~>#5tHwzetU>q=qB%2{BH6tF0_9X z3ysVLqRz%~Hl9ro2ED3KJPw(mjf?aqa@gbgkjPG!+Rt;7_i*j}6X*pD-7PN~Icmu; zCpp3{;cOD_I&gjWq#_g(yP#|eXH(fUxmTCIjh5cIPwi9nB5<%7oOw{NaHcE4=rYdA zv2GbHHq0=(g0op{Hon~uNiPdZw4Nl>th_gvlNU)W+d`K9F}1SP=PQUqmi8Wh6=tEal0F?6S{ zT?2aPuUHEL)7oDIWIsaoYq4yU5pMDuoTk6ERJh6S#8GV);Vg=C#Su4-JTi6_C6~^~ z@aCdl(w4*xRk5v)gQC`X=RSQ?tW--cBHjDTu>)(4KZ>qiu$4Gx2|T2aGg99o7?$vVxXX|kF zU@f)Luvj|lxpg|*(9MNq)~lVFb#3ItQ=MeVKlWp`BbgpH0Ki-JIQnpclrw`Rl{Pd%3bn z7Pz0Y-A22Y0^m;iE_;x(huFi$L3ObzDY>Aymt&LZo4)K(&K_gmm*+4|TGx|bNuKT> zQ8wMj{K{Gmpy3J5_6QfMO@WB;Z7?s?6qNe}^j+n9=-zann|xrYKp&@Tu*5T*J&TBA zh67iOe4eux7-&NI@orvS&&qY0LhMnogPgsH<&gZReY9fAVa|>iH44B|r$N|J&R)jh zbj8#6Z{6fy*(-Q!=_gJ?*$+8;O?U1tL^V8+%s|m-Oy5e-w5VZ(H%lKnu%pv>ADynF zI8{VkoiMhwQ?bHjUI9q2>?a_)vY+NUfR;rzb(0U-n@Hk*M#~kUp5#=fzLN{gcUD7ye$;e?& zrO|OdcW90w(pyD)2;Zvd#ivger&S=^I4m zi>EA}HfHhY#UmGwT0CO$< zAobXR<04Q5gZirijqUPTfe_Y$zSlsOlrJ{bF~_&jwZHssl($A8auOgt9a&Z7t*(dI zDS9kqOT{7@r*X%0@tRSYzq-OVOMeVXm|`8Ctj`x19{E*AS=KimbegIX669Zla65y&=lxY=I~RZ41vFM;qP$x zTL*uyfxiv#_d58CJCW0-F~v zv3e2efRMKmQ_*9B7pq>4HpJ-4;u7Y#8dCA8F6Ovayoyr=q3f}Bh?8GyVa;KvuHI8s z!yLF%P>!b-LTxaW*25gE^TOCdtv88RT&f$eGQ2%B+us1--;8hdcos0n7KF{~ox>bk z@zo)Jb^UDSxDAjox4}~jD~vgAha3yM9th!?8hK=&Id)(ZzFE~?XksU1FZY)Dsyu+H zyYb+SzX9eGbL@gDD=PgSz{Y)e+~4o7^m?H4yRq}t4OPtXAiz=Qg>;a8Y&CvgH3T1p z)R~q3nalygAglCO&yrtHz*j@H(db?%InxK(_d(5o@&%&o)A#@gz)>l_o`pOj@VtP0 zmI&|1ahZ+%IS3`^;p;#6aR?FZy$muO(OZ>YMC4M;Ft(J}`JE;jMS9B;zn7jLqmQYaGNg5gZXFvr_4%P{&~oCn^z zGUj*>Cm;sihny9DR4qZVV-9>(X{NUxh7gMV60+C&=flkXHAL%<^qAwfuq1ueTD7OX zq1IEWReGvtHF#!uwJLu(4AKWcP9Rku96j*F~@O4j9!>IKr*n(%pU=4 zZGlzH@i7KM5$5;=eZ#D1Wy*gu$A99xC>?Fg@n86|Rv@yRIsRMlnMgd?D8K)RCqSbs z8zY$Q&v=i&GzyiGInkFsI%GD!6=*9QXk|_-v;{Ii zGjrn0Nl0B9@ijN*WJq^|u_mB4vT>&q-=>H+g+k29@fp5lfmoxoiZN$C&`*p2J{e5K zDyK2$Agom!C}~_7XHMY1ww6#Z4DAgTFh-giLy<;c$;=5%)GlAjVa_wrj}7!Y2H~^C zl^v)7;0Bgy3pe2-R?hPU(2o6i<{T|f)#782P$}>pTMVCZV9xP43ZkBiFjCetQ9NW2Xo9TYMsX$)Yies} z&Pf;+F0GjYMW>?tVtBZ26pqE2b2@rJ6P4fDqLrYMAb z7>dI@aiSNlKq3I4DjWp}jb~0jy5fqh zOFDtVTbe^Fm=j36CAbQpUxI@Yjz$59M%1igfEsjF>f; z6&Pga?{K0busd4msDM z$V$X=v;%{yg@@i&XzprU6NmsL@A0c}I$SSa+k~jK=u|S+5s@*YrR ziM;bBL{3Lcrfk9^gB`ILPHP!+vnfUv*n$eFDJGr>;2>|6^~gLx`K_}2?ef{XU~{OY zg*mtDUyaZ_a{}>qi7#Vb?=+HOdNAkRI23`^%()8(D6l#bz^d;PZ}6;+wzNefxVC@^ zIK=nLU=Wt!gU09TU;wcBuyD2~Bvj@Ej^MzJ7wFn*KrXNa>#}GEQ3Jz78AdQ4*+<{+TO zMU5WnFuE*&bP=&U2zYkcjC7sRxKtw@{dzN(BeSPQE|*bEA8J>g0ixK?W3B?@yDb=N zh3`SQ?Uwq+elUk<(5PI0 z-_eEF4D|>|E-_#cdKq(#G|-AJOPOnw0ZB(h2X>56KnG!*(P4r3Kx->=O)#dHM2d*J zSln4_)Pa>_{w?WeGRQ1{V6I8xEtLT1hS=XJ_>5@_b4^2`phfH^yJiSScQQN^!WhCl z<#-qc_mUf>)WKX8NP*mR7<*&{Y2azx6iy&_BiA>jG zG)Ee;gUo%o&;@Z3*T({a$)ihbUyEmH95rdz6@X5t4eC!|f*8uBcq|FfIq@QIqzV1Q zx|&lljo5FLdyXiHv-LuIZ!D+ zHUMsf=l(ilETB^x#eD;al#i)E%y-ic75tGPvpvjQAUzc7QMG86X~zWD*6y*QagZVk zgzctXJX%*3Oaz$gb~KDc7a)UhZAZ*U=jy!BwL@^5D#1@(JH<3B53KgL$jl&4a6LlL zvMZfsKC&3seWLE!C=_Z1GrDZ0Br)}ay@NsKmz=%=#w5*j+ve}XOcbHFQ7GQ z);o029BK3m#F0}{krlAujNC`e3H8BRHU1t3>aCgG^S7sxYCEN5Wrg#4Cc0pBRdz_&g@ zAmU?5`^4hZ+x`UiVDu;hfKN@?bSOT<*YWfy3CicD7zxfFq*f-YGGO|XDKZ7vUvN)P zk4!@c0!+S?98v}(*OxdMjTIuKSxz&eP|oLg;c-O>=vxhF$ZbIL7zYt%a5~B>2~q=0 zA;v+NIkiWUNCCO#v>quH;V7^_6MS`YatWjx+ScU-Mw;3NPXe@-sO=NtO@iAdM z<714Ei5D?GPE>+L{IP|>Sd{Szf-s4KM%2Yd)P(Uy)VGYNi5D4Bmzb&&uN&~m=Bi}W zRC84_YPz{98RZcmHprfoiIv}=cg36f!oJK(ePL&OqNWCOZ{`SU-H_3ps#ILMKmJr) zxIs=*Wd7xXiW+3W$k)~_R_2XLo*Zlnfgptaxk_NGBDBhQ zHk0wV&R6iOtRqn$l@)f#hGo(57sH^g6d6;M8EvdKN2j}WHONG%=yBsygLADp9_lsX zukT*F1Y>RY+GX^*9<|H(^*w5r@iz(d7+h25(0o%ytj?bK&0<;@v4ZRKEyna0aVQ(` ztr^(_8|Al&0ZvsYLScK2)>I}FH|Ag!!R5mRoR&$V+kBeT*jY)<9cZfbmZdHG23{@s1@P?t+q^Ngu>s zSr{F`Hbp_(;(rj<)d+3&LkN{+)f)1bDC zGf%Tj>Cd??EH|u28(FiRndL0Rl=}KUtI$v83>ZRFxry1U@4Y!JIIEux_TKmGJ?wFD z9AagXQXFK*H6Z<&(V$@(=8NerN`{ydOpLL=WmdqnR=XC2u z#+jcC$G!tS5tPDPSUk>y(H)Tltbtni1GHftC`EusPb3me2#SUhS*l8%bxoE}vZox} zP*OU8vvc#Xe>t-Ie3)!&l`ovAt@4Eu=}beuFCsnN8E=iqJa~MT5~X>mc%LeY$I22kCBZ;%Ej37>)PLEp2#-z#<;8DloN*?~%)LxKSdW7w5}NFPl?RnVEY^ zCdl$Vo_+$3eRig<$;8F;zVZQX%W`y!?F^b;KDG(Z+_)i(zT<77X5l&88joV6H6(ba zO>AUCJ@UksCa7ve3%j6(}uYfSfwHO`10j}^!CNh?0E0lf|vb}W_Tz^yMmg$G)3e=uQW)YpN3 z1x}!R{mUcsh+XXfIy3=du^fR~ntEj2G%m(7hKMEfl-;&G7)Mm%VY7C$X`u`pH_+rr zx%tBDfjMSJ-$IA70?~+zBHrzNTjSx|yhn|vKF|^8{2cSEua^3raRXaBIcQq8ijlb( zM~S6^CAMn}&xrCY@!;ZYH{g{a+6|vRDUw?4Dq~PmUHRy zT`WQV#ACZ1cylUCvwbdnbF%|uDgCHW4MdtHx$yOyp7t%;F6%FteO1*Tn%l2y*r?OW z+p~kSak$BXJE55#_t_|!oGnwo8NUM$zUVYZ#p~LFw>dhDN9AC)8@HXsm#sY(ipB(e zGF_B(0+kB2td_4dyH=WCQ?tt_J1DucpU<836ZC!zQ9ya3Xd`(t9W7o=$zsAa)8sxhoBuu8n11yW60=7U+d+1lfctc+~>vskufSpf^+ zfpC#YjF0XK&5B{^)lG_4;yNafa6`0m1YuRM3MzilE7JcxP)A2C)z7LWu; zX^N-c#;ilynvaZBeCi0Q8ql)rn@(N+RfONZs>cT2{3h1tSEj08VNqX+<920S%v^Et zO_%yY@w!lRF!kX9omPJ2h2j;_STNKYk>8F`e7^J{ffXgBbB_5aLamGoJLSrn6=4)P z@mFnHh9=%-IZe<=Ax`u`siB!_v)D}x0yr7^vx?3i#8R|?Xw;W{ZX)2l%I5yz3 zQWQAdlMzCo#G$Y^EdyB=<@XiohY$16RkS!8A{h^!G8Q9}Z}uULo@QBGziuYZv!u$J ze9>Cs_*)QYZWdEzCZK0Iu4_wl>6K{xm9KfIFhg_|Jf8OFd_mTw*qnSfmTqET4QL>7n8ysjp+0&j6I%oTpl-#0o5_YO>wMo`JHB}#^i+r4~I#wJ18ybQo1SyM;mF|`k%uBVIYS`I}#=@3c9ILez=;_?hpix(G5cf28ftm0O(JDzs~MX@BirK z(4ibDCk#T~7F#3I$`B8%2v!;j)_A08z(k}iV%o_#JTS|%rG4M!H)o&F@9i>ksZss7 zB5%&mrZj~^kx*h9CFR+tM9-++hsRkbd{b74oA9Ug80*nk9n8yWF>bgc8&~sh0qpcX zL*&ay#ynB;Zv_h5dkJ52+Tmp(pgVyX+T~P<7ufS}cjj-)->&B0!D)5=4oZfl`x%O? zh%OK6gIp#K{#W3+R9rZBnnzL3C@Y;Eh%|?T@nMzG=<<&C-f2ljK~&AMWY6s+&Rhj{ zvJNE7$t-^-aAHa+%fB1=2n0s6e7vcwdFnKXybpquiuBzuyYcUXlx#2_zL(C5@a2<~ z1Eb{L9mn@Pa_qn}8WkQ*!6|xUpj)%j2>HRFb^uNayyaIyc_Y zwfnKImtIO9-U{Wq_U%UpwljbWYsa5lliYjzN2g3 zZPGvMu>&`22G~QTAA;!u=*cbmZT{jwtaWTD{ERCdJ$iJBOoh-;;g`u=M3Zm9K(pA| z-UpK#ccwrVP;5g$Hm^_K`b5{!dygO5o4jc&KKMRrlxD_+d>USK*&tok8XhmC0<$n_bGWeYnxv)=8Rk!SW7;&HMwDD z*Ue9N-f>fM%l58)TlDT|dVg*;gZcy|AN3nl38De&*i!j-+$6Dqm4bO}H=t7q5Ft;e1Z6e<8gH zv~(ro!~zz5hfXFBz98p**CT5?@7a`m=&oZ&c0%i>iN24L#kiKUk&bR-o7{IW`QkRr zL3>R9<4+$--g~ojj)s$7Qa{nc)08a#8d^xMISjcw?|D4s_gbs<%tx<|nCZm&Eys^M zDV#g!KMRv{w%1cGpNX2J4RoS*Yq|IF(}zG#Pc7S+jLR62M{el6_Z}DvkstlZZQLn> z#}3|?A{pZbIEK$t^8210{$JZ)O)vWudb}S`6{7B5oO10$OIZFvbjFMUbcH0?F0m_`j|chhO~EmEyaCOSI%ecK}?q!H%m^qP1xEHA*UJ4q7~JV8nPlQe&3?Iwdvf z8i!0BJ6W%EO-iDFXOyx0wr(fks$XM_U)fyRGL$^HS$wO8n*?}}1AH13M8BHMOuT7xqoHR3vdJprUi zzIfS_X-c{0x0Jjy5asI|kjqoe1Dk{KFhQ_c2m8>&T9KAKye9e3bEObEe(3h(Q!kaK z%0V4E85Xk)a{I%xC|$_1N1>3!S#ccJ(zu?MMo zyezf#acEOY_@d4il25MdT(>^C;rVPD?1z-r{7rYaRPf3DVkqnFiW`GXHJ)1DbgwGV-`od}wjV_~EK6)FYDVlWxV?pf1%hg(? zugVAFs1WWxrsQ00{%mipSF82UuWqQ)ba!ab9Zz*RX8DAY;hMjq0$&oPn5#~!@Ya{j z)+&6pb*U(Sb>#w{fK0jiYh*ffF|zN{`9@M>=obg9BZxLFTTP4x;e2^;tc#1S^5a6R3IW za3Q>zm9YFTD7li-<-yfsC3P5Eiq8X&lON+?+5*i`ByWK0j7xVXnl-B0i|S4Z+J0dMRr`+I%I#lAx2bap(N64h0<1nsLeH$$u)<~ z<0uCMN%oq<$$ba)Ql`Nzuu(F#dz&fiMYrN6k#dXFD?}A4CASY0>@iw)(5N=m+$qiI z)fUM{`qQyBTa3OrD4CJ7Z|2SbIfnu6+`h3}wW1am=sx}E9!BE>W)E!vEeaSkK-;-z zH=4lu8l;Tz$P?lulqq2aFvEuR)^g9qCFiu9a{9Uw^Y#DlOK}ilO)w%>a0;cP=%lN) z6rT`yyLJG0yypK&Jf1v9DHx2KF&e(N+3cKQk@5lq=bWN0H5#;`B=dyp)tr(tY8c!r^+uJCOulDjHBc{ zQO=YANmzHP^aK?A)0JIJ$zyn2B$t7Nj-iH0d2J69vNl8W)YOz}Q^XtarP?(40DP(O zL}@834PSM&x3&~kNJT?sWvMnq^EcFE#N}F@uiRS-fOx9weWd_Qg}>J8n^mnX(T*Lw zS=ylG8>e!ENE^ZmzD3F4R{fP1Jo&E)5oao*@e)cd?s?Y0oH@sC4l9^U$zqd*NCdi3 zvYLi^xkG}QpTxl;{RBs;ChwJ(>Kj)}aAu>yN+vUdXp79x*aAc+1+@poFjJd|>;ATw?$e^-FzPS? zmZZtCK|rx!s)uEQBT^hoFD2iSc8qRgB_Y^rreL7{qYWJvXOXODmOT3a)%fsYN+6yn zo-VX)SXy(87;3~+fu;-VpB4Bi*<#vi?76`x_F~fA0#JtOCc)%)?*l5XcO;E!$RX6k zA>wz6_`UjCTsawtLt3pHQA&-ydD)Y>l$?bRwF10_{Cc1uA%2d;l*%lyM%CZz*6wmVXs6V|_bZp36 zXxP#5l-dE;@g!PVBxr7>Z;lsHy=36CORI|7tU>`v8s&J9@* zW=6)uXcBAjI$T8PDnq)wY(%%4#b}(uh0_Y8I3u2l6if<_DQ3Pg!r1!s)RC4;_2yQ4j!;YOXn)r5=DlTDygL z`|;%Zb;qB(zw42;`aavHEocbu-Zpft>(Lu=Z(cx;uFPl;Q)R)`l$?pP6|dD~!P>Qy zOz6SAGxLj?SE7lFImR1Ytl)YOhPu_eTvoZ3lKOt09jS#`ggZeQGwJGUCjma>Y|1oG ztP^B&kzi;V%pM&v2G36MwUpo_2mScA$3Q751z z*1sct1zW_K5RheYVr`|QiB6L9Ftr*erj5KrMXru;G?pQ$neaWqN zoLIBz#O{Ns>uaLb+bEfxRiyPrQcD6B#iAu*VN9Er#!dR6X^i$&7XtylT`)B0f>1-Y zQ*z4yN$a&&f5WtO2PGal$+#DniQ80c8okNAw|3t5aM!*Egw@aY{9O9qhiXmZx|K#Nj6g^Z?I(P#BOnNCi_vkw5YQvHK9ti z^lcA8xR3yuY$LMS2PwH84SDz?z$E-Bl@;p^35%Xc)LY8(wCS)?ZP;ks9D%=!#xB9& zcGM3V1 zfq1dW+pT~Wm{DBjTXC>tRT7>+0oZ`As0TcJbwJaegZn2nM->ED(f`cbTWM62Tn}-)~ZK znyxfhP=k+b$wW>BxS+&fVfDGn_T~F*V=7qV@f7v*UUzXG>JcU;1*!c8TM$j@eYwR;xp{D z0T&u93xeqZFExtM;khy$X>zx8VZ zK$1=g$RO;fW_rj`>QRz06`n%L=$@%rIaSfHBEhQ)2cuq^y-a_Y7u0Y%CDVJ>Fc207 zm7EFlv{Xwsq1O*!LgLxLa7$BjbZC)awD32T;ap0F=IBJa(}1A!DOrEAv_iLl_A-2C zqEQMOM=1(D*X0=2A(YIRfi7>+xp9BqhF?Te;z^3j6<$C|Ne@+El4gET94LFJ8OhjK zR(K&L)B4ITnQKEL6i#UiSVO6nh;;-3*F}_+_i4yLfYEpEEBBXX7&HuNT>xJ~$*8`8 zmsj)k4veH^=1Fxx){^SPD5yv5OrusfNi#{1DOD`@`6ZAjK?f9F7(>bG{?wD){|w$S zIdXe)(-t5FT~DLU6c~woF z{I$mXoq-Ezl2#;6B;jLEV@t((Bn*xlJzDI1b~}54RS&Gs6QnZmRT{;lURpID8P;dj zty_*i`c(RiZQ;d~T>Z8897oAGOq1Sr6(>m~_9ZX^fNxQ97yzL9pr-)oz8Qj7Cp5W7 zWM=Hg4&M)?M7JXCx)*@xeDe9^ZAYM^#(}N$$z%NtJLK87ML*yu4;$(yTFvPnuEAYM z2t(l5ft!;Xzjyq_qX?L}3DJW~(6&^{3ej;59l{EyQWDBUseWoBwbs)Ba6pg0h8oDy zi@^zKmDGjcza_?5t8N?ah0}#etB>Z4leYR%w#+6|n{OG#hvF0vgI}tj8#MuTjX3&* z_8<&Er#+O^eKjb$EfHgBmQm6^Fl=@^>y_=knw0y*6xEOTo3}2YRWBtQkRH*TN^#2g zcw*;6$6nkZtriGp@}WD-+c$DASDsy!V<+aN1hPBPM;Ov7HrhS`wX<+L9cg3QhH|Zz z(P@3@=@yRRy%|@GJOH9$qSWmoop&EScIZLTdmklRM2q@OR@u_HlnrIL9y8vI7d)(c zixHo7VCD54oIXaI!a!p{EwJ`b*P8X>Ov7D}&os;DP_ij=K=k=wo(9MF>=Bdd@mxn{ zr14#BwCPJeeL*3EQnYkLikqV0ad_H#ynZD^Gm*_IIo-b+IN6wjKjlLP#H_jEEJ5nC zj*@M?G@3HjbiWWiyypT)2^Yp?(9O9nPj}BMR=sJC3aA?>StKDdL)QZ--FH~BfT15G z?~a!Fl-%1(1L+l&RVnP11L$Yab1{Jw?N2cT!R$oU$*p(dF%_K;EI7&G87RurgVp!I z%Hdf=$=qWH4t4E*45<+k(UibU#cjDK*NKH7PlG`3Htoxv7jFj~SkraWbE4WMloX2{ z(g1oT(zKLs4>V6r)>1w|gte-$k&@e}lbH#6@gd6^_b5_(MmK?xA)Qk8%!B7&$WU_nL2ifb1;Hc;0D2}Lm25K#gI zL2O`m)wQg>ue$cNBAEXO;?3{Rpa*1v>oK&f6B%@A)uk3%7G`a`=cEi&FR|PKRG0+} zhQT4w#_kNgf!SREK$1TKLq8VUpxe-=dS7+7?^oayOxKmt+1=1DrTN=oIh3xW|Lx*^ z`A+C2zPr7z4E~qz7mLeT~l2k-|UB`%2TiFPjes1@Lr7 ze@%10k`@nBoBNF+A$)p(q21ivFKup~Uiv1@Kd+fz!Wv?MzXbg@#K{d^1-=sOBk+;n zH)t z{^#cP@LQV0BRgq++k;Qe3WfK?dVliTpV#=`CH{Ar|Gk5+6yG}Ef4BdA%xgdPcnGdu z82+T+t}{e^GF;TW|FkTRp6Qtz0M-@9T@rFJZXXOi1@kfdwl8@IlpT>9MXKM6$T(Q?W8CD z3NJ=j=>3a!>%ggoHiX`zP*{yvqiY)!mX_5+@#KhDj+g5rNs% zH7W)2!$O^}wCH@r?+j+djf9WnU&4KDw&?4r*w;s7=xgF$EL6PT*FMyPF{}*AeW=4! z-Fb5eO}O5#x(UNVsw5r56A;4_Ghj%3 zIRZm;SHk{&@u&HibwcoaZiGJ7>B#jb(m0dPR)^Pi^%D4 zO$+2osgiW$&PL?U$$;EGVv>(SZUl_Z2tpRG&qTe1O$u7`o-Psi$F zNbpM_pI;Wjs;C84MIo$YkP;f!ID}RB^-lBab=JYCl6n}o2_{HT1Dae1GH;?0kLa%o zRphj&$O%=XfRr3c!)J0((+Gb!=~T@|m~?O2h*}UTTyIgh?zfo%lcAqq;(k8tv2}2G zi2(dwF(8`CydhL(%%5bLRD&etjme=tO!7K7B7KD463Q#LfJgR`9qOgGhf&G$z^Ias zN-w!)?@P9av+tq^@t78b_zDu@KQa*Fj7)^6ZVN_PnCl&r4*Bb?<9cucT;UhD5-F9y zs6;xRS;E%C?2^qeXUYaRZ9SY${(&X(dN`B*oKwQr!+A~77nGFN!^M*y2w*5d6oJ2q zg!xw#LC=R=egU|ADUR!9(23sz-Q(?GU;Y*h;BSW-pfYHHN+HID8=$fYV*3Ce;+dF> zW)iEUbOX#U!KvrU5DebPdlwt|JuvzEp_#`D>ao0f$R%hlJo8wg8b|mwo{Kf2WDYrA zjYaiv?c|c;dblA}Zw{s4A7Z^9VZ9$CKl?<~UE<{o>dp!3&Jn^EwLp##w|EGOoD>w& zU}=a?vD5w0l*Eo-xC3G(>)_V)u#kM|jOPo`_`h+!_$ovW$rj|0Y|c*O%_$l#h0CHS zdSMHS{tl7;J_ALkcW6M-k{U3cFh!r4&UJoj9YrfKb#v4#cV-J{cOtaEWq_8nhe&9- z6AA4(>CiT|4qEoFXlTz#hZglfMV2!_J1-No_DJ?}1hk9OxP=^R9klWgd1w?REN%g9 z9HC8QfR;3|XlO@8Lc25_+T2z`dq6a_OItu&fY7=bpk1C3+R>5Fu1JTrT`Qp-8x8G> z7SMJ=Xgg`)Uq->ZJ`mJSK_BJIMzM6wxY8Y9tb+$o_$_Uk z^t_4=#fm0{D$4dNQgBW`Fs-8O(9~yvv;JFNa^^Yjj$oTm#4N;I^GmW z$G!deT+3;|G9OM8jpZXl1!@8T0_gEf06m%x(6Oxq=IzY2q z3D8p!06iTA&?%7sJ)a4nXVU?i+e(0*j{xX}D1gq21nA{V0R253pz~S@(9013y%Gh` z1(5)~o(Z5=(*e4)l>ogS0ni&!09_sl(A${+dNUoMYg!4=+Ytc069v$9kpO*=3844V z0b1BffIf%-=))+0Zixiw(@X$;oDNV;D*^g60-%3I0kk9%pnqoq=<{@dR276s6jNPrqM0kk_EpvPJXP-6g4A0Hq+$sh`%C!3Y%L&W3^5HTqo zqGwtM5tE}JQlcPwJ`y4$6GU1%L@&1zA|nc-SQJFBMnV+N1d){v(VMM=C>{k-A_}5+ zA|XmyVJLX@G3@P==$XiI5${ z?(^Y0)?Z+aV~u00%1X-`*f@YRRa)tQbkZ?o(T)eIble^%)>0KP?5Z@2c08~;UJ_*j zUF8{%Z<1d{OGo39Y*MM{K0C>#kV`c95o?p|=pcMX5Z({NkN3i{ z<4+1woEoG!9aEg;g?C7@c|qC>g0vTeO2ZbssH$uSWUXVDmTqE~ORx>LP=K+HU5#{9 z*3^lWwCO}C$5!nHuCfmlD}A81vM=;i`oct|0wyc{;Z$V+T%=UOWy&D9N*N3blp#>9 z3=8$bs=&^$Ospm_xC)Bx@oBxVDntZrz}y8c(g08LV&0AK0tY=tOZ$ViIprmv?J2vltZvTCPo{K#CDu$gVFd%Xm3e}c3LZGds$$ATHw=mJ3-s) z*li)A5{ukgX>+RbSi|v%#R-t3oEWk9L4h{*1VJe|VA}`pVedl%q}@=AbP+aBnTY6L z@OQ{mdm=XMj$jy?STe0PjUX;E4*x8!!aud+%jAu0x!_~{>X3NKN*mZpfYNd#Betp< zP}E|p8`wPng3I-5U~4?yYrQqsF zdoa7D1qq&u$j-|^f`7|If~-E01RqEz!3$eSg5O3%`#=k5FGXlC%K+_z8KJ#9fcAQS z@@bEB@X)wYk66SmfN?FRBabBVu$w`-0_(jJY~?B>^J^eqxjsbd?E`Wsv?mF2$d8zs z!n;*;V7nkkOpNT^$d=rY-ja)2)smO6ZBl!`xCwqs8YQJ0SwlVBnqK6sp>{Nab~Nn6 zc&u4F8bLd5i|(ckExM@&n`?1~ZrYTwn|@$FdZSzVjb?WYnv6rV3Y+86?XX!MOpZBgfUq{}q|YzZQ|(K;`x9`%2x_ zDM<|!mKCRX4sw;BTwM@R6(3yJcz6kQ=SKDmwUcoDHokm2=;d3NK$m9RDz8wu8a>Wb z)*xZ)tmPH5BbRSo0liD=CAk_3${o4SMoFuI_+}|KB`H}Or1&EkSV9r?Quf68GOKHR zp;=kwNC0IB*G4JVD>b0*xln}NwG3y`&KnlMDdMYcSLRkd^l+`d)xeI0}_rM9t zy>O0lA6%}ift!`JuvA$GtCa^~tMU+RQ#Qck%4T>$c^F<(w!nMJR>qV^nW;R+a+D`n zk@6(#raaB|#jpX&bAl|6Lqb^!9qh?S3_1*ji|xbhDM*(y;7EHax-{qs3+*H9X-Eh* z)Z0fQYvxQwab*p3BPPryr$`E2N6|_U$ZVp0v|z%o!6kxRb{(Vv_?4Dm z3N>!n28qTaDe*3lSjU}^EkYu=ximbANl5wWBl@LQF2CI#DW6FBEynSyIF4V79>-!k zaP)SEPEu!Ipa?_TCLP+hS_7@WuW&jR+fE-Gu~k)S(*o-E5bF0cK<#Z_j@+s$71?Ew z+NydCTq3m#cysMf5Y)-3zjG?tnbv{g6cd7SFt z6A*ghc{Bc3JWuNIKj(Q;msaw;da3*P@*T+S>%b`AB=zv%C%EKIQaK?J#rve*&3GS{ zvM(XH9dcbIDfQbV4UizEB3Gy-7(b9^ZJNGGu0!2k8Y(-gTrV9^sWmIn)yk66=$8C% z4isXyeTDq*Yvh05ApiRo`QLZQ|Gr25_apMZpOF9kg8c7SZdxqe6Pr+h)CXzOXH{e=(mVF$?CE!r82VY^`VSoF05^mXOD6&t$9GW0TAb_f-L;ojDr?x?8%{QHV{T>tQ!VU+pPPjlRJyeqI+lA?v_bD}gq5!-CZ)yX z8;=6@Z{CDvxN-(TUb;O^kXIZ96R&{#UD;9kRH{j-)>VZu53#=4MgOvTX+<@)3o;ye zCeCt_$69(){R;U8P<}Al_A}Qzp@vrmLn{iN~H&jKgCNYJ+r-&m0h@65=-5 z*hmEM#Q6&95fhrB;>sBni8WA)^mR1I>U1#GW58CAg`VmRs8DCZ0QGp}8YjREbvB%! zo&@KpC&T6HDab8Og{A80IFZi9iS!JdNYBQJ^gMW0y%;&heE3Yg9KKesfS=VXVV8Oh zG^)#)qOM?B>K&|)dM6vC*0B-lYBoW=iyflg%Vw)<*s1FM>`HYlt5F|hOVxVzpo$=? z4eT*>GkZzh#y-M)pR13HF>o(r|A~qCYsj`wBW{Fzirc4CUN!=j+H=vRve_`tK7+Us zTM8rm*au-B`%L0StS>wy6c~lZP-^U<%b(6A**;6~zGvAWF&;Tn7#FIH+%z&JJ;cdA zfiC}Nr{p5^((DUcc9J)%rDo%$$sLN0LN=6H6e;f#MlNHt$lXp9pG`I{Q9S+U2BNwX zluSC2a!I6?ac?>|eQGbXjI)vVpQ^tdrDfdPf|ovry!81DymZYTw2U=&_dv@y2f1rs zsUiZ8`_u7wc`xud7dy34UKEAL{Vni#4e@wA10LQH&S*SHEKK1s5Airi8s}HI1ZN4F zwR1{J%hpNjQYU!orS(nx!b9rAkQps>Za~cTgjNp95Vg(BXgML;?+a2R4osdhj?M}> z8wty%h`@k4i#40&50WG8>RkVS0% zY@Bh*u!yy;+SG7^A%P8t8jJchsOooMsoz5<^*_){{Q(B6zo2OLD@;{)!qMt)$Z&VT z8Hm&s8i(sO85U`}Xz(!}ra^<>8Z`K=UW1FU^8~xI;2Qg{NCq-=f-{83rNAT@CPX+j zL>jmHq#@GN`DM{XMPR73{zI}k@&T3{8VvXxE8G+I`H{n5d)hG2;(Ip?^ySgRV0-#7 z&~lKuB{K|zr}i)mo@zb})U&azTgr`3r{m$a(o}Pi{&|#W_jC*RixK{|8Q`ar*3qKf ztC6k#d^)t9_OjK_k8btnTR@Fdq1HVE)GzL#)n80wJ};xRF3cz}++SH&OOWCGJspv< z5F%;|L{uM!jDnAW<*9)$?uvrLv8hm>l@)?ERz} z`1_Q8LL6gG*>;vqyoPMT$?~N1ZgW;6mwAFUiqO7b{SmoHu!b$jR#2krih>z395Qkv z$Dw87##cSR^gfk@QumW2KYm0Crxqa@3TcrnHI}P7nmiq~LsC4qr^$+_NPgnWin<6s z%+-DUH|E3^Bg@h~t=5U%;b%cf@>4I16RU-;uFjnp)+llpcqzP)py;|rw`@CPmu-^% zh4RoczZnK2)66R4o1`zASgMR+pS$u7BnCo8_7OzhTuW9a?kI$t+$@CvR&~@RO+hDn zt)kY#?Wl{ZE8!N(tBQ76Cw=AWLYc0n1taNOYL=9sFMU@BF=~|mpcw2>!_8bKS~1%t z6V!CkwxlMAro=y}CZMvgQToA~TVigE>{_uFU2fuR@Gh2N3I(0gBc@h~E2C^KR7K(n<^DvfyA`dRT^l%UQ1PJLJ4F=a)sWc1tPLurA#K5uLUB)O6h(V0G05X zifWbz*8Tnq*(EFWGS3u>G`t12Y~l)%F*m}LaUk}mSs2g&?Z#PE1G!EtRd^xxdmT7U z0Wln1+{CJ|6^PTXS>*bGQN69?YQz6-+kQ&JIE6Gk(QVpF61~;2> z+SG7OtMWntt%H4ByP4_DZr};uh=w`EI6(yDB+tT;GI73z3Tr3iS*)SbaxGU2>*O(4 zYv9PNMbVX3Nj*=}nf-d6hpc5CcU?=w5a8BYs*HH~Mqbpw+j}*p1TeM+PQr;~ADp=Q zz_BZAtJ02U$7s{pS=zB|o;HIm&}Oomv{`Jib^=?YoyZ>5X0zwD zli2Ip9QLtxD*Hk^O=8*^Qd{jzsfTu!)Jr>8>Z{F@#%q6-j@B-c&d@HEF4iuSuGOxP zZq%-n7HL;W4`^3Q+q7$?XSM63&$Jt)e`_~NUuz4cpR`+~-?Uq~r2UO6+HJh6R?T~A zHN3aBg!k8K`FL$9pQJ74M{BG2EbUHynO4WEwblG~?JmAlyPL1q?%@sEz5HqIKK{D4 zhJUI(z`xVh@txX(a#DLp&eJx@1zLk#sBMuuXphSMwa4TGv?t_4v?t{YwH@*`+OzVF z+H>+<+Kci-+TZ2P+RO4b?G^cb?H}?-+8gp$+CSxAv^V8O?JcE1dt2$Ry`vnay{k;o zK2&CCA1QOSPn9dQ7nKFt7s?{--^x1eOXcs{*UGEfH#Fh1C!icz%vfP3jKMvqtqUC; z9)W9xX0F34aE`Dx8ZZxD5*7g!MleHYKpdr*?}g|qvo9cDtY91Lb-2pDfbvRhQ5?Py zb#z1O3nd~)Od1c_B8SNqz$>CQ1u5qN0fEXMg<4^$)YvgB$G%7`Zk`3d+ZU5v0ZXX# zY!cFqaGcofrbvrmhJ6XyJNYc=Cv2s0{vC7?=@NWB93w0iao!)^7gh|DkB4WV0&`e= z5b6oxfjuGvWkQ-sD zJs;C$DFuk{*lqPvIqtVJS>u>QUV~lt`b%eMR`w%f}R$*A4*fAUr+$#UVEb}=9Nn>zYG!- zMNYahh*S}NJshzM2P}JX7j*L13JlL^GDzqoN#+?NV)%EAa21Qcomjk)I!)Ln*pv9* zvwr*nQZ^|y+04^v;PmGObzrz6EoH0t+N5HDmxIxPp+)z?W7LAbO+f}G! z*n+9Z8g4hp8H^9)0bg$+l4kSs7CIe(OrhxR_m@_xj_M zL0g&xm)<-*wVW+_Bh|AeQALs|F|X6@rnM=VVN3;v{to*HGukjgIUNKfxwIoFT(V~c zBdYLBZr%@Di5n@{TbD!jbBIhj5o+d400lcCxf7H|$S1s_Q#Q4qy5~fG({&go5<`d( z_pD@Hsx0u;-czv(QlQL|(z0SlCYd;0sq?nD@8=~86i72LYM6pYNy2r!x0s5qtBIe7 zls_|2iZ7M?+aO|xV{^F(<^d>zcMV&0Dup@Rv)(IZYiT({b=9>(QdP^cy4Uj#p01T& zQYItV^}I8!N}y;`RmXpF6|tMLJqj@1Zr*rl1Mf}}Htkt#;62D$mgFU*ujuF~BZuMW zwUF=V=&2HMRWnxv0;6M4oZ-clHH$MzXe=N>FG+%a8OiTGQ)*caTk4oKtfnlhM?LR_ z;-ThP{(@u~LekqySLUmVHVI^B*T6yP>ybsSEmVmiat#%lD5AhncEb*uU{}J zoQ_3hqp*!~SUumbBH<)ZDD%8h6-k=$5){<^X3Q#cEO~mFh?!fN%_?(93!dy|`vPjx zN#5=YeI#5aJy|t}LUlKr)V^%)Bt>2~M_^Ov<_O?L^SC*Pc0XUy%@*;MST^rp&ns&X zPjn6v&g^x32qo|qdh>*Unq7*44ScvSq}qgtfoS;4Ct2A4ZgvA7iT#^&lWtB}LXEqs zo8zhte2g!pR@JfRsOxkGl^De_DlF^&P{}DjxTH&vBfl-iteqhh(0c=l4`zsHgHmJr#GduvE;8MIqkQU=CH0@8YHX?6%4 z3ZUyC>jvcLF(}qeXs6rIS&u_EJqOD5B=psDp;FI-k$OHHq!++=y$BA|i($In7EaPT z!x?%HIA1S;%k@%Nu9v|Uy(jF@d%^4azVLy*AAGL&g>Ur=Xw(NVU9V(W`u?ngK9Kd$ z2eC?hC>yO0V~6Xb*i4jF=ICSC8Twduv0lX%=o46telT02|Anp44`KJ}6WL?>q3kt% z68ls?jQylflU)5ssiS_B)K{M&P1I*fXX&$~bM+IXEA$hkoAlYzV*O-km41qJzkaIp zuzs5KtbV5Ss(zOAj()cEwSJEDlYTDO^z(VHegW^IU&edu^ZEYx9jaf+57e*Xll5!( zZ2ek(vA%%cs9(pI=?i&-zKFl0-^@SNZ{fe{i)BT>T`tm>$Q|@rd6+KF-Ll!x8AT~a z2+S&s1l7I<2NYrIZ;0+-N=SUNwqfi=>(iLp8eVq_`Z(?ih>#00xF}u^gfy$FsvD@t%F*YIH z&lZY$v!qwq$)a95wZrV2u#OylApC4EB>4Db_`+U+U3FwnjQ^A^DQ{7L&(vE|`%{;>TwbQ!RmFSBnWfgZN-`F1sl*ffQuCPsAm6C=9( zi4k4?#E332F$!0W*lJNO=Lv;Fg}!p!+iKA?ZHjXJ1sR;TdU>|}oj55&SCT)9G}@BG zNF-{*yd}V0(2aRQPeJi+=tij;QB%nc_P8^a`qDq&O+tm|0wD3+94+eUP@0pHgOjZ+ zph+Ta+v-Z21fJMlQU!tkNQB?&cygCdNFOKx}of9h>C07|9AT?$`nV3iB2& zVvg-e3YKTuo`?l>6PS`DX>G>_u>{(cDM*j^1&5$v;^gcv&~dy(v}=!_;H5(aAVDp0 zqP&rxgf)8mfZfKZq@S)P4bceCpG zB`B?-V9GDW7Id=ZWspNF0yf!CFHae0-5k%3ib%vmeT|J?=vtm>JjXR%#kEL0yh2#1 zky>4I;(UYE?H=mtO$*vPVK9nA_k)UImi_>WMC+hHe-Jw9>!GJ!kD}1SC<1MPsrn;u zioOlSo+sfNeFrSlpMv}Kr=dZA2AM zfPHQ-_N~F$Z-y!XHe4Ex!ONi2{$!=b{Gmm?{#Sys+L`HiybEG$gWl)0x=^sMW(nI^3zHAaH*s;*H5xNSK zmB)osJXh=w+6|*TmKqm!mcg1Zxa1^vLmMxgBo0#;_F^5 zyTyqNjh{Q5(L9nDRa+BZ_a=Cep3!vg&CRq0Y8(d9T$aDL1$Z+tKUd5dg~G1W%KSKX zMrf%$6=XOxX#z{Mq5v{s7XE^5F7ea&>E2uaW^D<)OS-u0Axivq5%zTR*OEL2pF>{L;GBNY6 zj)}}XyO?;n9OmWT%2%Z-c)8ygl`3_eDmH=so-D#LB=o`X$*()#uzxnI1o-S4uW%xad3@M1=YqOaECDw?ldOB z!^UCotT7p0GY*GOjHBRt<7oKNIEHmFX0UyY6WL(nWH!b)h5f}il^t!I#%3C)v*V4q z>=NS)cC~RPTVR~UZZOVeYmIsAK@8tyT)>_-E@Uqo7qK6WOC&HZmsDea$uh1McEa0G z!Mg@RS?;GQvdG%Od~(_~LWKfygM=)v9*Tv3Jo>;=I` zH8_MlBzUF{MeJMq2=I1z<_4THS8!Pdij)w%P=c5g6TFZkkCp{54DayF4efH<32q}4 ziS-9>+%ivu+zq|G(Yy=xCk|*0PLyV+bF!@Fxtei+jNB``HJO@mEZ5U+GUo}nRNF9@ zGBRW$&ZO+bHe~i4Q5%%_wP_|`JF>Sig*{0}o^TkAFLP+K$wa{^%l)K1F>qQRM_CfyTv6^Q zA}BB0_Zg7^<^7b!?@D4O@PKCkd2!m-?#-j8-Iho#%(adsD?2{ z4IE@F!7*10(~YHYIexD-mcy->=62%_SZ;W?iVa4zCqaczts~%YdzD!0>;`A~hb%k8 z1@@hGov@tW;nT7VOTGIyf{j@sr(G(n>UV_b_H;04-AwV-AA2=*MI&?yh0rPi5ubsy z+Qy^sAe^CYXRl^rE2q>VPWI!(gr6V#mB>YoSV+*_$en2X+Vq`h#$CwF?vCDxX5W>0 zCz^eiT^{U2yBjI1I%-=oUzAR;_wU`|M}0)(wq(Aj1s)F~9uGz1;lGp;i3h(WbolWe zVA7)C6^Ae$x2D}pV{B^WE$r7tzRbXHZ2|ulgnw&>9f5R-c=Y|WPenp|TROClwG!H! zqM^O51+?1{+8r5MyCxH~_PvqNE>4H`*;eim{UsXO7I#(~FCw&m&j9U`jL_Z}32kjU zw6C@j+Qw*TYg<73PlWc(4A3si2<;mC{s?H7r;opPTM6xN`mTumw|sdEXg@?~Kgs|t zy(AO~t{kKFNl>iL>_*}3q@uSidK-i{S3_?Cy$^fq z)cW9JZ)Y;}^FCt5yu1G^_kRReAHt(R#y?2~|9Bfj`BqYLLYL_Eq=f~X@LeP36zp=U1jQfQ5Tl;ZE2($YuidTaAxEq27FsOsm3~j z66=(KR3FQ9VYxgtO3G!Arjco^`(6kQ40 zWS&ZNA3xrrwf4u>8knJvpUn8I#g{(u{^f7NR#1duS3^vBMxMHW{4Q;m|d91oVnc zgMP82VN`5792lDc2gPQ>gxD;Y7&{J5i5(AD#!i6h*o@$&F9)*4({>W{0^NQPyccYi z1lK*?77|FQDMfnm#G{ugMX(DYu^ZZ8p)htibdFsGJz`hG@YsT2 zVnUDtWR3`sIU+#j2p<`8?G(ms4GtBAq4*P%whQu^l_0CMdJv=SajLg+h<&Sxi!kdW z4I1C4v-+F%^2F5*k*uD7--3DFfWI>0mR{QZtt{>KsM6&0($=-Iw59U0mZfQH(n?$3s?wM| zDeCSHIsM(t*ydIWf5RfL*N|Jhn;ClqX>waMO^R1&qlLc;97*2U#eew^)E$S=#yu;3 z4mp#ucWP!Edy-y-8Hr)Z9bo&f)1i<~E(+Wv=P}qIyW_k9;w78qqA45Xw(I4%Ury;J zxgCeeIL^mN z#0hReJTVEXIbQ6#cku57{N>pG@M~y(1FSwM(#D0Lr?>OV*v_wHXy>fVV_(j)dj?}4 zWj(n|6c3Y=>2&hOUfSwziN+(@0*|*5k9RWQ;p_nqr@5_8?qWaeS6Jm!5LU?R0KPVwsbp+Y9fY?)DwZyRbZRs zZq4qB8JfB)M(!>Sy2>T~@m5zYt(OiPT)Y_CxN32+*!n6K#Y{?7#$at-6UhhYL+5nD?hZN3k5FV*B;9x7b@z z{+SMK#Zo)X_7?|Db#bt%{9^kNk_v(z@^WqyD)q%7;jb&`iLrDAL5%H&1h&w#jc`E9 z2F`+uG@@+RZ|MK@_zr(w9K;9qQ0aE|fY+cjwtM2(-UkT_rSNR8)#ct2Oh%<&_{#jT zUN7%QtsUYbl?rCbb(QVxFjv7`{U{eZkgi&bQvjVBtYMYBLUolLknkBzrBcVN;%cU2 z>wBu)@8W(O&D9#@0RVKaRIa3Bjh;7F>T1IBkSHmumj_LjD$F`~veeZ@U_J#7o9rsC zwn-i#0Y$DZbqx{OjUq==r0z#L=IwBGv&4Tb^|ui9qr?YNVk49|o|buBv&@6h7fVaM zr`+*SZpW0TSEzI*nNG`M^Hp)6O-R&|f1!h-)YL?wqV=1|^99%!`;@am?y$w|0gs!d@SIr&FPr7?zS#>tH}`>W%-*om>;sMFzRWf&Sf1IB6`B26 zH*)|hGb>p?b08aN4q^wI!`LKqIGbu7z-E~v*=%zZJIfry&NIid%griwt$8rJ!Tbxm z-8_`7GAFZjrgx9j3e>l@A&+^KR!QNVz_k;So{M#ZPJY;}@T0gnM}wvCrTv&#FI@$n z+K-EKcWdAs`w6k{gjS`z9H+DW#9EXJmF!%>+GQBaP83s*LgOJdFwx}?O!iRf3JVM) zZQQ#AlnzC0%QkmI4-F2+nJPi&cp6b8F`KRr@nS*?oU~k7 zRJIFxpl+8#yId0q+V-cl$by>RPSAfP7AsFrT_V8B>39}aJs!u-#Hunbc9C}}DfBKk zln{d{rZm3%_#+DLD2gihN@&aMWh zY@<9|9GE|NN>ZL94ta#OvWe@%%`s z`lZ)nXpzVRoEF9is*- z^{2Z8)$UjuWZxlwNuTAZb6Rbkw$)sF#;lv~${JwO65ZzAhN@(Zg)&s+i7)TP*d@^Ydm zzni_tNo3Ta?qH=NGU#sTcM`y9W6M3@ombI$&kzFN4`$ zWs{;SD;0whhhfIrUTUiC<#286(Qs|-L9DIAGWgypSR%%WC90W8Bc)BM@TPF89*0I7 zZv?f;>b?xlb2<>5MX6SAg5Z_ZV4yLSji0WRsRLElHa)e|p+WwKpT3|Ly3n|3PZcZ$ zw`ur@(eipwEY_YR{N706R|nmkHnmt+7(hd=D5BG2A*_*j+fme98jm;y<+ifU`FYIA zb8=Q<+MHTw-vSAYYmomLoSyURL+WyoP1V6@kLUEApV#Q*-5%9sZ${;94m{%7hWhch zq?6Z-#lPhr6ClQ$(}JCndOSVqn^)ug<&1^ffc<)2t>_`j`U{;Snq2CIXtSsmrJRwucO)ma{8 z^^hl6CGte8RGwn>l#jQ1%X6$g@}<^(a*fqjUTsy#_gnqsr>yPT z@{Dzi^1OAd@`^Q6dDEJuyki}wd}tl7{AQh`s@BP>Wu2<#TXWSy>kPH6b*9?EI$P~( zoul@%&Q}Ln7pTLn3)S(~CF*4BGIg3YUp?BoLcP$sQe9+SrLMHDR_m+<>XX)W>g(3^ z>igCW>POZ>b(ghBZM1IIB?93m`v~Q%voxBO+RtKa7w*83 z(ognt(3M>zadBZu2e}5ev6t-Up#vKwzhS?CVQtyr@^*VNhP7j-$Pd^rVpw~oD1Gd| zW63$pRLbm^(3ND_N>}@3bmg*qrM>-%90P~7QHt${0q8@SZ_rYN@lUT2u>ER0`+z1F7R;G3*i!B zIm#z_I3?k0bA?>bM3}en7hU3lYc5<5dJ;ayzJXG|LM|cot0IhKeNDLNP=zjB|3sGo zUA1xco1`p5xi(U4$TZ<3O_M%Hj4Zf7{n37lj)}ll^&z1h#Ni2bjr}%i5efKEz0rOL zYs-Sq)vN7y>2QcTi1oGK!`K{kGAk7K$0yZkEYE(QPNS+vv!qQI$T&jB7z3J*?Y02h z3J+WR4b(OiuP(bZRhRuCWO+4USgM8-AxXN3`ZqW(b%4`52i>u_yhP~ z^KP#GuZog`qNuxa?9Q|=S)0cX3K|ISTTQvN6@f3i{jm-qf>ze-f{Vzib(8V#xp{#BW|cL2$eyru5o!v3&M;AuF-URC23HU_a|YQ`_;F$q7w8Q=0!YWb-#Z`&k@M8!gsDl z7-$X8K#T2|(LkGMGSFTF9RaK@kYjCy4%Q=3Vr_$-)|0TWwF4@w7hsb0BFwh_4)d&+ z;C$;Ju)um17Fw^v3hND6ZM_BeSnt9b>pghTdLLf4K7dcGkKk+TWBAVc7b~znV};h| ztgZEL*3J5ol~~`fL#=PwWa~RN)%p)R*7}iMY5mM@wSHmCEpNy1Gss77K#KZUtahvl zTra~|AzQc>KyQlCP6oh%O*^On&cNSM`1=xn=i~1wx|Hi@ zF(0hw74bT_9|Pn@5wKFGfLaVtmS>or``YEw zV7r%efW412-ri4|Z1*%i|9c7N$)dw_I~Jy1H|9wc3250)0#!=+p81Ef3bk_#k@* zA8ya$v+QH}9Q!1Gu6;7U(w@Vwu}|gK*{Abc?7937`y76!J&)gGpU3aB|H>b-FA{>s zHc0YH*iQ%#4%^CJw7;SUkJvY?*8W;NTC{_0=MLS5CUJI+{S96GE7|N~`&)EnOZn_< z`#W*zNC$SZ{XM#pDE!W}|AVev7|$o!KZwKfqxm#(;jjrdud{y?cCReH(*8-x>P@>xB{5c zqi7+n0G7_8%S3tyyE()x<2&d|Qsz(9*QBn`h)f|ahuz|<3gTZj{)<;ijc^62H4z!T zdt{qu_Wl7R3KF?SY5ZW#GkolI0sdSX%b^F9{#0)Er|K2=e`(_GFE@2zN~?1>Whc4e zzsW8AiQKXlTsE*15_An*Yx|qj<~>u-&gO3tHNWW=#ftTEy(d=iUD)a*8GnNcVrhfY z4OySky>vU|mnN0cdTB)s*rhZ@)8!^{QX-XdOu*KPK-w~qP3vixvzLFBs@PBhLVod1FbbtCqQ1y)t60 za5~EE{+0#`9J4lvAJ^oZ(BwR%$vMe$BDUl^JmnkQ%*UJgSjb1tX-&$gcrwpk0G53{ zbhdARa{ET;WiLd9?`E8b{ssrxw?UPCJ508hz>)S+INn|cm)I-dTKf*T$zBDE?K@$) zy&CSZ?}7*HdtkGDFFaY|;T8Jrb<5?PuAo_VaAH{UW>9eu*{Mudt`=SJ`X!>+ECupJLvqN0oFc zs;N8a%nMu?xULUewSj9*;Cdu*{XKAf5V*cixfl<^a99MY>o>vHzHfr9ecuQrmW$XO z;$nUSKJ`n98w?jJ| z?nl=^LHVP~%$i`ZALkEtlB%T@-cw|WGI8Uxxb3K_Ol*)&CHHT+E8hVw8LDzAxsg;( zz!8{KX4gTsA8<0sV9FdEcxChiq)L?{+bJpEh8#mV4dpd@3Qc!uI}47@@_OaW2IZXa z1CV0xwf#Qi*dIW9lq-7JpFmIhQ>e5*gJJgPFafoydG=SZ5ao;2_E({I$nFaE!`&6^ zuD(n3Ank{{OY}Jxu_pGf38C77CLh~0C%8XX@fr?d9BK~b5i9O3u$BykQJU{=PSKG*N*X8k$O-#8(9 zNsj0xg?dQ|_tJUcUJ@rgP)f@|`K&!kVck&v>WkxMJhtdeduQk*+^nEiW(B=6E9jM3 zL9fi>b^b2JS)zZGP+!an^~Fq3+UGVxL2#8zssYp5e~-~>WOOTAUrM4%@15Dd0f~pU zQ!b!wv(?bKG<88(s-68kh$W@<%K7#D$h9T)%0*TFD?WBvY3jN&y6~sXI^|L?B7v@E zQ3mC|+i0hcT6u*1&{enfml1;dxYCF;?t8C2T>0g^yEUo>io^RP46#?tN&X>H*rvgL*vR+ z=b-rQJs;UQxPp#O5Y)5Pp-aokO3NCQ>%x>RPSnJ6L5Vw|{mq?&#^~%fh63&EsxUffWaeA3Db@853@(^55?jJx< zQWkUNCQ{Fp24xYpRp|~eOOPp?AFzj;o7zvDlZ|&kqU#7|yc5{*u8@p(L!zsM{_*`` zLVR$*9g;B6-YpEq<SLa zjUNE*<0GJ3d}L^<8WNy5BtUUUfZ`CJDXJ*KdCk)v+WF1X4GQevF*f{U<`93piS*PI zq5;~_=IlfY|J|hD5NjJl?2SmqhLpMkUo+o?!|$-Ml5z=KN~xhID58u*tG$tUtx?Y-{IYNuvz|cO4$ZwwRi|!xvL75IpkjV zkivH_PW|`OLAQG4!PM;trDf!;r?i{umCb1)R{S``;dmUHvmrlz5){VgK$rNbP#QlC z`o-tMp!gXuGJYnEjh`K&+o=JbQvsNsB- z)ivHg3F%!Hc}Lnj9KRHd_+`iruYjERl~5GF3OdHGhLZR-$QBpC0rBf#Vtf%?hH+QN zy@U0KAZ{Jun7E9ss(}M%`e&FB-=H6E4*KEdpdW7L*V%QVA8rqXN5bl?rss_E_uO5Nvk6{zN&9+4&bpQI(%@QE z*_G){$|`RIHYy@nU1;mHl65p~XI8R?EQ70E)Uo9ZIk20(9IBT?r5t6B>L|-nohmmd zsSWYX3qtjUp6twV)Q!rM;*xL8QACMYhDszP>Q8VoEf{=Ch2lN?snhGAhv2wOk<(MY zew0+6PAbnLQyh=Z=ab5dzVoG|@(MYrHVf&pL3x$z=2(hV?kHlL^LQbQ2jcb{VV*h% z3Xy`ABlWDnk-7@@iQfrB;;W%5eis}YzZ*`B-vjgF_rtaE2Vil09W0Hnhdbl-a94aI ztc`Di`uG-jIKBn|_Sk^b_Q!pCLE>9Q)`?9@#D zze8^NJ#y0@g0@BYf>Asz7{$|qQ9Lc+rqfVX7f)$mI-wdNU+pLOs)~HIo#3k>(}XDZ z&+yd)m3RCWJOYO)K{&4kU&TS8IU4cRN#%~#rx{OuH+6lnqwSG#QbyV@j}y~-9`jV^ zqomb%x5qryX3VpMjCBbHMnVERp+HVTg(4Jdx+ZkkFA;;I5+sv_m1YUm`m1YKr>Lis1+4(AgCp7Af_8QzsgoxCfLis;It z8gNkS8Bh&9v53!j&n$hpUyPs8FYR+-yZLv6@|9Oi)BQ+Qeu{5Br6~l0bg~zemLObi zDoKO#y(pIr`JWZ|qgUX5)res;=J}I|P=5ZO)$}VB*p%1XdZg?OD%=(3*5heMSHgvO zq7C#+6v3oKF`SiX2bU$E?^=*-$Cy0I>a?yO&;gbhxV zvZE7a>`MGzmFU@|le5(U4_+Pc;MD;SUhVT>ba@;j#BWzO5w7$EY9kYTS`FJ3o5(r^nGyxzn6qLj;NG3)=eqtmPCdNRQ#8@az90>gq z<6uyt3PvWz!`Q^Z|G!hG#s})uJvimiv|k&gPWjXRdFj)>%6!?^o7L%|A(h^-jJfJo zWoeK~3bd*{3kR;s`?#vyr(WgW4p2qN2A4-ERu!}jBXK0k21lW6a16=@Gf*~|iL${g zlnqXRp@|b=Tw*p%P0T^&dn#Oq@rx33136(ROte?=7%f}Fg@MFS8}v$T&?~h;uha$- zLv5g3Eoh-!)rR_F62uJtyO0xrwWaq^Tj*2XDlZXwKYNZ( z#{KM5(G`9xwO^>2WRMc}p0WB%YJ4lZg!K@l2gRUO4R6ryfE?P|R94=gqR>d&o6^R3 zB@)?3uG*lQUWP~6lhtr)h)1ZF|Kz4puiD~%pn5f{8U~ls&S}l}Wz(i?v3c6#4B{1$ z60tD5NzGv(lGUq8v88ye-_ZH~D8Zpq&9>5*(x_fxVJydSlT-`%Mt)MIPN4%_*?;HK zaE!%}=NJ?~k72Gzy$tEq+Mu=pK>b#1Ue;WFI~ylf35?V$A*O41*YH%t2&}^JXsa}N zh2>cE3K(---Ld+353^Qf&0I;UGd758H>kz`AA9csA62pb4?i=f?(W&Mr*94rKnN{` z7D!;}MF9mwPysH5&dX4+7w?&=F5C!a)eqXMa7V}NpeS&B@L z2eL|+O89Z1LT-{WXr?p- z9h#hY9$lPx0nJWSqdO8Wqh*O#(DKBq=&{7>=&8gT=()t3==H=~Xk+4S^v}dQXiH)v zjwas2xrxoVH1Rs_k@yrJlXwb`Nqm7%NqmVXCceQl5?k>3iLH2X;z!0A-XSb?8g$lW z@>hX>LLpOv6+zFz+3X&=g&v2inav0jErWS_gx>u|%i(4{$_!=>Ly{h&_tnwGuqm)1 zkNThnfo*t{gZiKc2%_!KH<3|WB<=&tzJ)G8EZ6=^O-Tp^dj ztI}KwuhQcImm;Cz=V5$JC~Vu~%LBDunQvUIX1Y#hFDpsB4YO#qs)n199durk-B3#9 zFRV!frn`4QWBNFdcpOfc`EF=USvozO-vR0_ut|&o?4=D|y6p~b7wrQ29)%f#Z;19l zqfib6RvPUlq0LH^WwSE;oXPSHVuxym(*HsWPBkk*BXe!(uTlp$$!UHEog(Y@c;o-?(c?ndSNq#|5Hqv#JK)z@*_FL;Ia5kT02Szy*b0WMX*y*Nh4bm@?qbRd_tfnB zT)AWVK0bv4t6JHMCqiAD4moMrIYkTxb~RDZZ3#qaE{++?J+4! zsCJ?TR5jWYBld0E@GQ6HY{JW7ySH@vN_E~nI6AY)_QUUsGqMF}M}CnV+(pRY8DVJW zxy}W++=+?i12ERk*$vH(hYSlO!v@>%AZa9_q2WU_qXCo}jiHax1O^yQNrN}bx|EQ4 zSWR5%W}cC0<{6oV_l%GikbQN)3$mJdMpiSEZI-Px+y!mONX>4+x^HicOt&D=(@|QU zzS%8U60~65ty9WchmKaVL&aCS{SR68RD>b1m zXwwy5Kqwu#@4=j5hKA0#gSjTYoL)rxD(f4vfbPfap`qfs^pN)o6VPXAa(_x*Cgfu@ zeI#6kt7!{tYPoPcBRD89u=W{uJl7>VYZ9%7A}zj=rdTB(0Z=6m4M;4Z)JdMh%Agr( z18Gsv7SaN`N1*x95B_SEJe+FW3Qp}(zMPd)^e=N75#-eQUrKar`Z##^HoC$h%(n?k zEs}L0iE7Iu=_faNbU-^e_oHh>x~e~pdWNYO_o24uxE0GkXvRP=j6u-A zI2@W9M?h<1Fq9ZaLN{X=^fQiv;l^+{(HH^KjFE7WF$%6TM#FsL1bEsw5neOK!MDaK zu*VpWbYlWa857Y!<1}=%F$s+`CZmguY3KptbhN@a1FbdAL@yiD(bvY==nvx@>>Gn{ z6XOEh%D52sGcLi$7_;&5#^v}V;|exG&x9Cy0M67!rk9~9+D;Zsi^-JfhCY^i5?2Il ztfhCWI3qD|Mq=QM#K4nuBaj$)Qn*`H@X6t=Hw_OM>{|~F^l?|NHn1YugO~1D1xk=LA`k5qmPdus*^QPgcK>4r;jY)o^H{L=b5ZhR6%Q--~&oCs{fG`>+A}7CRr5H zYd>KjsXkZ0UUILrcQYb=IhV+mOW-UVZfyJ5Vs45k|Q z!iC0tFv}=|D~#f@D`BIt3cfa0r?~{of+F3d+aTx* zQ+11Nd8R^N-DZz^$HNfa33R}~mW;UH5=d19gd_1#9V8eU5M=$e1 zTX-row!4Pp;bgc3eJR6ojTewySzg4YhB?q{E{sOzs$VZ^$-qFpnd0u?<^QSSeCeY| z<5A7)2gp2t_!AoMpqJ-5a|+Jj@68oBzSXd3wLMAx^xg-|)WVL?--3k;1Ba5AC z5*ZkdtoBUnSj{Vab|4h><&;9-+biiuXG}dP)kRh_G!CPdagC=yG}eG>tb@4m3|PkV z(8hQHIvMN9(0CCJH(r7X#(PBgY$C$veVA>02say>;ZEZdSZaI*4;Wu&jxlFLEB5G# z?sb-DI(j+lUIcMiqQ{vyuwXvxd;t!Jll3H9*G+%{dJgO8Y0!%eoSI!Oqf5FsO_z2r zi$xztvF>dR5p_2du>R|_3z`y#)SLX-1D!G*Do1uemKFqvh%bpRhgUSarPYi#C=e>- z8*7;dF@E8$SW&4(|5KRMLX?nvb4X|w!Svg0;|B9UBg?p3=mk%)U??>KQdA}1%3x8g zYh1=oNEo}aOpr9rE z3scW(i&lCAvJL>!^-c7Kx)5r}kI+feM3EksczyWtLfX!(Tytn20JWwRDE*c1;Pm~< z^J@kv>jAUjL0eO5Lmw06^XJyNLoIE?W)wh-0GlpDqtqH!1oWlX7A3~q&qVZ4QK0^4O$)xU4+jo8pHg4dX4 z?+ESo%(w0qY2|0A1v5R0S?Kz}>M?SenlTYvWazn>qYyfwgIw3qy(Xg;=#6N>OqAjv zrQSFYROl=))I$~Ab}tl!DlGs;{TJ9~v%OD+y{#25x${>Jx-nys;cDg~f7+Vy>7 zg$G;N8fVfE5f3hQX4#x`kO{Is;ac@b6FJB<`>bB&+Q|Sct=1_?a3!`$T@2xFyf)-s zkA~)?x)rf)YJ%aVwtTjazJIvuwqk`a@-qLU>KsRf4 zfzYTN&!7wH3i%nPCLJwEiQyiN2wv5^tnykaGNC+rXG8{Yy_A>1wlii0MDtfHMjS(U-};SF7YVGPlTV>icHCST1j< zlHVrYH8|L>(e36t;T0}{w$Nu@#|ME^m>jl6HA(`tw8~8NojU83ecR>W)z*|H}5UBK^842j`so zjU15MmT8{gCZ1HZ!WWA&Ym#7^eg<901i2MN^EQZ^bIAl*2#&c38kvj9`eX@oHSdDn z=G`!W{0=df!U%I2j5hCuv(5X-8s!0)Wj;vOC=bDP=A&?@xdP^!kHL%PDtOO)0zNj& z;Rmw<{xmC5!mL8B`6No3YfxizEy_37q4wr8Xn^@F8e%?&jx=9Dr6hVs64E=KHw6xfzc( zKf+`XsH)q^>KKeq>OK(fa zN~w8*Dd${+s6I^x^-}`vMd5SD%yZ&w!4CU`*1FIoF_Vu>aPOjO`^c`R8~Lky^e#*G z`{gyY?uqeX9M!l*wQBJZ@cvTPP>tJ;B=u!QXv_Y#B!4G_iL&2x)}m>|X`+VgZ^tCfiKn= zkCbh^r_hxu@fP-8tV-TN=94%_V&4)8gQU}9Fg@w2(I*o;4>7+c;`$qinBReJZiQU) zdpN}W0a}_rLOb&(IEws^G=G6{=C3f`{5|s_r%m|nP=c1wlbzF0NposAV5lpP4Hz9p zv6CGPxiE-n_pOmMEG*t8&}~8{sv4nhGtmo&qCKFo^T6S?8aVvGTl3*CxdXH;*+g&X zM{v#Ee7VNL?x_&itZlqf-bvRrjNj@t7nAEW>TB-ES}Zi)XR*+j6O=-Z&>Mj$|B-nJ z`YwGAOn&=PW3fFNafW1BFALR;DukDM(zl@*`6g19O!_vr(KzbLt&;cb^8nhyAXx%9 zmI$6DLlaAZ7M2PHR;2DPZETja>wC;7D267`oSFR;patZHN}LNI863Us=S!PHxA_j) zXGGv2#NkYV!-q6*Q!<8mxlCa_P(h`r1_?L*fYHFAXiAA}%EsWQ0&7;)8x6 ze{c)>=lbv|QyCmukZGZ0O`PDn7YS}jgI6l*y+r&oSL{CGqETq5$~NfvRNIpj+_wo& zMgw8clWZKpa!Av;5V1VSv3$t28bY4c1ln0mp__FG478fV2&)B5v|7Q1R%^JzDu8RO zws414%$oL8h{B;D=q(tF9G`K`&bUZhF#Xu{zxixF(1xFjUtwpSxp1*?HM=aG2j_|| zYxrxx2-Ds{s03d|f`^nceaS10-wo}80pHjrQ$(zFJc-KcG9#_%wHChCsDrZ>iN34T zjI^?k6+>$*Y02a3evGIX`!gf0C~3>gQY9%^oRDlzx@|Bsvn|NslWFmqq0HbmQ$v?A zw1@whHnfM{CjIP79t$o$I^Q3?x7k-VG;2N)!5x4QjhDXN1(=TmP9=+ zBp#s}yEA3#F`0OTYV1x_sK;m;BT!>ERHYsRsYhCi9ZOR}siw8qu|#>aBxx;nER{ul z(pu~y^u}JWVBQ$E0ks81$7zr7U-|z2v7XBD6_IJ96DrZSR41K;$Xbsnc(s*=OrM8P z~6n$jffMEX6X&{qqqltb88VLw_(&D;5ra-~@+n%0LW284?^Wou>7m0+bMf-0p| z9f{ML*l4#)&8ZHzmYJKFXj3YNQe+5J!=ZjGYdFPtje9XJe+robKCQ@)WtF7BkNR4+ zCRhTi6f$V46f$B4m+fwtU&J)NWygsWR4Mt{{C_DOX4c6dTH_&RO#s6>6r5DGoejrW=fFwUOqgb!2RB&f!(8if^r`g^^p$lj`rWz?=UUg}_SOx! zmvs{!YTbgzTDRd7twng6wHRMyEy0&scjK$9rFgD&KVE1(fR|Vg;$_xDc!jkbKW#mX zU$-8?o2(W1E9-GVvYrrBYmJ~=&oY*91L(Ltv}2Mdil>1UxL_z=&0dtta134%C~boq z@Jyy|O(ksdOuZ%ju!QHrnPJ+6FiCGk;>GY1vaD#$PWVdj8%!;m1P0y{8YXb@cJ?(w zpe!Y1MWWC|Zv$!Dp!C}U%R$d4gO|mR7i8k6Z_qV^#+){Y;Bx{~%-T{xZ|{a4!Doly zlj<4aQCv;Lw7#uAflsKaGoxuu?;z6HU7x6*|zd~z`JCyiW}Uuj)@xoh#~Ib&RkI!xDIt`^gICQga1jh}+N|}|w1KwJlDx088m4vPR45Zm66s3LgQD8aKx9VeLRi2 z(wf}N9#DG_untkCgdGy~No)9Kl`@TK01iV>5BnEA!bauLx+e6&5APcUH*meh;`kQ#LmG~5K;ixEO+0o#ia*V&Zuo^t@YwMNUi!Dyl1ueaTrr8W6u zm`N7Q>&agAMNqAmpq2G9w6$J=p4O|-&w34pS#QEf>n#{(ZGda7w_%C35tdtOhKTc4p`*5_!n^%XkZ`WjtqeT%NJwxH{*@6bKgkLW?`7gS;W zie9sRL+@C>qi?M3Xos~EN3C60w*k90!a25po7f_5VXL^nj^WO>hR4})e70@ig|>++ zYzx0*JNP}@#h=+8-fAcD4m(G1Y+oq08wdmJM#5M-S2*8pEX=W+2n*~(ga_`vv5%9N*vHF{*(b==_DS+P_Q?ve zPf>F02}+TDs&brtnljyVT-u8LwVB$W~ zzCb<2zDPaQzC^vyzFfV;o}3(?^$YE=5f|M83C#6dZ~{x>(e0Cz-tGjY zi?^otSs1mFkQ&_rF1&X+}KML%IH>58(GVA}h(_BC=ZRJe@n<|Lf$D{Us;=_qzB;{Huj-zKgUCtT}=-jE6eOyPz3r zP@^v9n2=oJugEFvo<>$f9At_Ew#GryIAD_;@vqVP`_+J|4*0i_kq?$k^Z;a(;C{?O zQZf!q>Hkzp^IxT{(CgL`rXxH(DB^#W6*nLbBK83X!$G9~tAX%;CUH=u_=^GHIrVA3 z<_8m7|5t{}LFJ$Lmj;L$uTRwus$cNGRP5}-s)HJN|KE4}LDusxsT@>UVh7RxIR`_i zK5XJ3%V^buG#z8Z4?c_k4YB_XvH#Q%`>zW)?|&0x|5W}rG5#$R<9{o^|H}Z{0XBB` zK^1cz%78Udob`Q9r#A)j0wRVe2vC=7g z-g7+&>EZv#0%q_=Q`b?hqg=g{*6Rr-<0%%fKWx zanUpWY!e!>%*&uycqSjzp_CNyu>BSB{5pzw!+)iSw&H|E96orme98RaGf>0IXK-q{-&dWD(+6KpjzE&Zl=2 z{b)g@vPcGc`KhoH{lM-Q5_-x#fh$s}+!wf_!Sz;Z4^8%CEAok#=*tz#1F2Y1x$&t$Wk|jhRk$~P6suH_Wy@Xi-D@cG&P1)0cM3EmaS60$*{p=O_GT&Gyr&4BGrG@32 zmC7mvDciTh%K%4E*Bivk@g4TA(D0pg5~1OjxO6R)?*Wk-t)j-3w9jquxhvsnUpFBdAoKV%I-4T42*R*F(en zmGa5=QH2>bjrlZbOcGcP8+?-$ud#2|6z_1RaIH#tF3`3{qR_%N@XbJVP(c{{d?uLc zWR%OmVjrWmD&>Xn(n8Q&BZU$xXffJ8tf5E)gbkHXU9_QG-=*54%yQv)-=!Lt*dl0cGws8 zzJ2j>*w}X17dGD)uVjL`zR+v>!bc}CEjnv^2$0q7%KpY=X zM?(_1lr~5s;tzi)=W3&P(U!{2$~?}p%)mY?Bw!rzVI@22qggD_rch&PA7VLDoF7XD1= z|7rO98U6KhsMhA@e)DQL#c#fLF&ytVPv!Y}YfD-PB`w{SZi}UGxS!{??3ilhw+ik> zho)6pRViPFnr;17q;0CR0=~)wpmOEwk#kz2vb|6EKFuo+rCRuT)$k(8WHCJZq}XUQ zajh1wr{1ZSe#^Bbt%Q=+Zfm#IQn<%&>9+2eYU8)5P`0G<{rqy}r**IgY8k5{SD^bE{+C;UW> zcVV^sh+kNVixAA0mk}4!o>Al%g|o7dy50yhX0-L&vK9^L5SXD;w)aiHP*_9SMvY-u zCqz<3q*NMB5?mdN`fV%K1R>qdZ&yuNX1le1(b^?sBCBK~tJZ3jvhwv=*YZ^tz_)9B z^uVWx%53&jDM{lSGzz_?Yl>9$4h14JO5EOUPcj%+(t&n_+hMipr8-iP6Zgqas6NUL zpdCP=q}VMcKwrj;DtPvEyt{TDPB`w8cC-$4kPKANNJZ9L`o2eo{p5rL<(JQ!8|lQpFRDe)goiI z0U3<+6;F6Ga9FCd-#IjO>33eK<_4M|QGws9To4$!2qDMB z(%Y2i@qU+TGGj`rRQk@PJ88!5ewR!$cF#0p=%OXg_e+R~3*)BtAJ=aeJolcckV!UL z@U;=6ML#}bwB+j}M$3L;1YtF_(Sy>Hh7L>LiMqo1Tk5y-ODojYjB`?r*`-YNj86GM zVesUpZ10O@Xd)T5=wzX!v)h@B-KA)x-`4HikrJ&&5x;~!eWDh{b4V|iq6Rg(VP$T^)+*`BgA6X=}gxix+Ec6Of?`D{tj#m%QJ-X)wr zUEJ1e1x7~RD}HHUOnpA&((qyP(hR!PFRfBLhmQ@4=97_GYO5vmp_TH zR>#cnXiY|AX=dbh@=L=-W-00E(sZlmX9DPK%1S_=OmxnId)xT!t4Z|sWZ?K6LZSq0 zp?owAejuzg05QLPrP?iEuk9+;UV*D~rP?>(Jg^|(Jh#=sb%@-`FdM>r112+tE-_Y% zjj8DI+tO8KQJT?YvLqQDim7lSGIbE?jP|t1aZ(a|L7>~MU8+5`_Sv4sJRFlwCL^>` z9g5QhriDxMZ2IU-Jqkg<{~fb8`5%f7#H(GZhORC{ap`@4F%kN1_FkwztZDXxziYsVQbY~~jObzN3RR~C?ZpIo zw~P)oB4E?YyKaG2G$KXUQ?9hu@4+-Nhpec??_Q-&4jU_<4v`);9PAdtCH?M<`^Nnq zjO&#_TfaM7Y$h`VD2XZQmLaf5W+`5__sBBB9E+>7syH=_*@SUKo6OQCghN!S)7YrI zoca?^I)(aX4Hhyyk4X>0tT9u{#thwpux21T+$Mh4nsx{)U$Zr!t-qdR*)^S??Ki2W zhgoyUV)smX+(ZHu`otqR#R_I>r8*EOLFysz{{&t zFAiKzr8+BcnU(6Cz-3gbR|PJ+QoTBGS(WOwfvY*)ur%j3EX~6Wi+X(!rA4KBQ{ZY< zsoom68dj>eXL$0Rfs1g3`GKo(rMif^4hbfGjLyFZX~XPXx}`woLj0B6${CD0Avo4(7S8o(Rr>kE`yB&__5!Z!6pn!|L~hI*fdD{jNg>OLxRYk`iC&stQt+GdwRbag=OgY zRGi-3Hx=FwBJCD?Ke>?`z_SZ-hd|AZ=-YUchIHw zduX=330-HukM6KPL<{VX&;$0zsKWjXt+PKzui9UrkL<6}XZAN}i~TLyW^cig{XLG` zKVZ-P5$D;z;CA+JxTn1hA7=lF2ie>4Fnb4{YVX9e>|J<{y&GR;@5R?RfNyjVp6^Kb zen-ZSIWfH6(eN8i9B*`V{E3smI~_wf#4&{;#}Y~%S4cUY(BDZ4M>@VR!f7N-a&m>! zoyNksP7~pBr>StW(_EP6SK60xCEDzlC+>2_NTM@V(wyTZ$2mc2C%a zL}|P;MVjJFmCkjhNjEvCOY@vFqz9bo(n@EB^sIBP^fK{()451`&$(Foz_~>F(z#Un z*||)PIkRNTxm-TPnIq>rSIAwRtK`{mLoML&^+i zxpK4furkkiM0v=0OnJmvrL1+HP@X3&V53u^eBo3oKRRnv*IBDJan`9loM+TSo#)hH z&hzRq&I{^^&U$sc^P+mX^NM=D^Qw9!`Mu70L%rR3Q@zW1OMTGUpg!!pt3K&$QlE9+ zS2sBys{eF0t6Q9p)L)&C)m_e~5y|;H5_P_ac+QuRrp&!{OkF{=H`*e_Ikm*VaY2X}WVulL^MChyC=$@}L^UUsr4YyC1=lRYb$*=yGN z&4hNm??Jk(;K8aaua&~?mxH#U_=$)3ybLnRo!?|si5XdxR)SrU6JGw&2GCc$mgy%U zj>#v^+NEX8mc?a4-JR12duLCXMm`@(pNtOG!4PX=e3?i?3cc-!X~#;EvlGT?a|3RH zk!Yz&=Z3>&N04_}nM_JcxOJ+XB$<1~VP7S_;Sp_K+4}E8fyLO)W1b(5?!?j}9>g+T z?&*?Etx9srXo?ZGxKD}o|`Uiz(C+m(ifVIq;$u*-IvUTAaQb%L7mN%|JAw|1g z^r@BRFuOnJ7!~P)8pOxIf{YXNMMqB=Ta>k$6^;kEiZvls{gas44L3nsvX;b#sx=0e z;S8eKw%KjS`O%fu`7L-P1C#7D6F=)TldP+|gWSKs$MhBNA@>pMA>mQtyx@w_ORIgQ z1N1k+N9xt%VdOFFT=U9lEucTZt1A4$qiUY&{I2zEBcIpBX*zO!_15Uzz%Sb;%>SoP zk$;+?ipZ#8w(&0OT$Km@QB$+RE&RFKoA3kBFGRmkyA^Oa*$Ox&YaP8)Sr5A-TT4Rv zW0>@#HI@$R96Q{g2{b)sm_hHJrHJaDC6DT|NK4zMLO0>ONK@&VCAYREoUU^yoYK7N zCwvw6BEF6JP#{_G;+nhS$8weS;%%1rBE7AE^&se_zAf|c*3Whx7M^i#3A+}HI{da& zy*?S0|I#wu{Wdb>)y1>YvPo2Mj+fWpvqSTsvg6^^cGcO|w{&{WCG6!zsK35W3m)PU>apJqx3uzVTONPgINgyN|7$cx za%!`$YP1F#<{X~|je`2>#)(0L?SpRPbfC%d>x6xxNnYbiqF)z~mVIp_^BesOj2qsn z)Rw`~y029s^WApl4OhtJ;#E_&2e`T!?TuOiRZB#t9<>ABGz;LWxwLbS8cT1(iqZC; z9uYWXfwi4d{ ziHDeaK}g?e=7#FMs8h4h8nJ2YT}%zzT}(sOz4S_xciySghIQMR;DrAevAM_*sguY_ zhDpFthMCjVz-pIw(Mo_fHtDXC>sP1R#LGf~7~b*WyF$V7c0%PGug2LP!NH^bad&T@ z1O6}{d_Ea(e1W`<$PDauh2OL7qrYu7n5_!ETHNA!2U}*^W?B~7Mp91<&&D1qU6LV- z`~dKxU|BnH2J!{%f$jyKRfkvEO)~G|^5Ocq@A3MP@6ouM|1BP07X&3kXv0kVGP&91 z!g29Bxiz}o;+$fm!!b~MzwzPR%LiQ4{MK=Gj&Y&k)yz9hx})Se2uWO*+t7G$cS;kS zO+Po<9e1v}o$#!>n{YYs=3IZ;fShw&z&w1s5cf**s?moUZVR6n?pHoowm3mj+K4;& z&xLDwmZH+Z)lDd+WR0*N#`{SB`hc?JY(=7oKc;>qmFj z`;ee^_>C`4IlLqKr=%AwSG3+8!a0g7vdL27syp(Z3AtaZR0*uZGHO6U3CgV zQ29APtHM(?0m&S}{)ypjrAe-qb6w_l8xv^BR9r|a7=t9FZTdw5Oh8iUMRjH0&Z&3; zjdrft$awODu{sfw)suPTR7}U&K${ilwMpOP=6{p@qpL17%zQ!&=5 zPrPS|$lTMUStKE0c~qgJi=t2E5JHc`FxjW=O(tGYQH!}@O3S@kLaoxl7QSdCghTt8 z#)EXu)Y;%wSS>l`_-w16jJ$IDup%FH%Oh50ZTzd3YsD)z^P|w6KXtu~J1LiifJ2*1 zlcfPowQ7NiVw==LHr3rxa|037~H6GKJ=(nc@H>$rg#A~85X!>|W&e0ml(R+OfNJ={n(i!)X zlY4X4yZJ$V^o-g6FG!1wdlY0Nbep#&>4)gjFw6E`Sy9B(r{mWxO@&4L21;R_UZWB- zT;#IraRM04^)@FT&JatxPsb8c#l=o&c_f3?Wwzr+Pzj*&?}%-4G(ST#5HD-foye!uE6s5vYo+f=psNWoZ$t4Bj&UvV~Y2ImdNkIRKSWnJH)#{gWx@_-Y@=d z`5eff!lhwe{{GQhTMQs_k7{3%>GZOcre9g1U_cxpXMZCs_}~L zvuv5}*zJ(u#Lt;nPOurUju=kq`=9#Rc0cvwy25TFw|sO7S^K7j)cl`qv$&(EffUqU zU&d1Z^B`@(!7qQjRC9aFKl&1jCg&L1ktPFi^%dV!vw4*#;S!wquz!>}d``1L`tBlo zOdFbaVbAfrR6H{oNZ@zuxDmJur@2kTVun|+a2l95(*$^F_JQ)*Qr^T&$+Uc57t+8> zT+(gAdAUr%qoa2%l@`)r+BQA?;Dul^xQ71BIz%O0K_qi0H1(mTxC$q}`z-E9nMV9V zaK{vCdw|gF*89t-w;*B^A2$jj_VI`x8QZrQVO=fvb}&-g8KXWfaa>874>lp zzvuXXIp>vtf)Bsc3huLptcj)P)egu5|MnkF0<9y9brEB2lclTbsj$s?xeCMg=1k>Z z{~E@T2jr=i?!~5!6yR5`zT?}9u_;n%&1Bo>e>o~U?986==8~C9!!_k0IQ#ZV!^3ns zpyBt2=?!b%WgHA+iYZv(?<;f9Yjna7J87*u`4YXI}qgTGA!QV`eb)`m7`R{_&k2{9haRRuB zKOoAP*fvw8VqX#5S3k};J_B6{WB`V!<5NP~IK6!$)|N80qyQ&g35pg_?Ov?IYWOJU2}wr9)lM%}ol=e>*KlL9+Wq>a z>qdZ06}%0%=}z<)Ng$qhN$#8?vX7jM!&vS+=~P_x&KX8eIMf~&eroSR*QIev99x%S zdb2f-+L{=3TrcJCI7%CSOkiceB;|q;^gTK<)kcvx?LAB$2_ts!&hM|F{Pg5H3ew>V z8Ph=EU#gI06@Cv!(!W6tnybJ~NU)G_J~JS5HylMQCt1*0&Od~&MUvV155xpVLms&y zl-S6~EbRfMtcMk~VprPctEFO5buzl^t%n{0zjyi(IesvXCOqrb&)*jcor-J6YScKI z#SaCPI3T{Pb+VBPQuz!(-Jo^}y-S|gL0_zYzM3CgkGJ!oxxg{%#&MEZ%4hmZ3;Y26 zY83NRJew^A4n#`Lk{lPI2<% zSQK6;&IkKY{FREC=HRPdi2Q1P%8O9G48@iQul5O6Vj81d{EnADc$`j)v!)GZjMZiu zQmHratF@2S|Dsb;S)he)t4KGc0^AZps(rxWy2}hz-VmU_Dur4*2}NBQ1t)f-K&c2|rT=~o3Zjf0=H=#M) z|CQYIUY*u*!e7}x8yH%R+@m((40rC!4^F4CSfef3>ir7mB|k8;k2^Iyr6rODOwAj| zu$uJrsE1=UQ-PQl!zlMSVWfPr%A>nQk!?q0mRvl+$I`}$k-p$K%VCTXbE@g{LsF() zuVt)WjaHbEd2bFT9i=)p8+`rsG~MU-@#~sV5gC!>eY+=Lu~_P1pxqZNArZp_aJsvk zthEl-cEl%s4DDYM?S`~rbrR`=C_Nh}!hUT2GTp;SRN{({Q&OrdPK|h1)4*qpH0I8G zakAFKkqFG|j43#AvTxI4!S2APRfc8BRiwdM>>T{iuNP-t{}}Y9JlO~u>Q+;{3{f#l zs{G~l*IiA_I1`Mg=(Wq^ycapRGwkCmirEt!-G3aWgkCgKJzI=@q4F5dI%oBPF@Fz!9)qR$OIA8Qfuu$mQ-2kT76{2s8oyl2IDY|0 zf*9`dI~&s6u~YG=@%3&UR%btk-H0%_P=*K-aUmTCINouR=B~RhkEItUAvPt=hO4n%RI)bkBIdIgnC4Qx<0s5*UKSu*C|s&>(5O-@@mMQA zQ;Sj6^bI0lwQY=lQWH*Psrm#PPDFOMXFFA5f*KtY57|-BJSMgmeo~9ZEGM1IRFZtIg7 z&b*YW#eYpZ1*|57^~UU)%F3gQD!Y=~CXfURP$T4>4^voMU(0d{@S`fpq01c5%47#n z$BH%4#!5ZV%H-e~?C_D?K z;LFc;`NPb1Ej}(t#%E?okhAagKomngjdQ)Q;9nw4Dp(WvmjTv3IcFbV>MM16UU@ez zQ-icTOzolRACWFx$7Wg$QuJ66%N_7YBIu(#7Z!>+q{tBd=_tZ_Q8c%ptwBz&Z*8Qz z3DT+WX}lKlk)C3l*Ngoz$r9S7F&Pd4s^i)yFq~G0I*h}zL+!pC;s<>dPw-;`XX0_e zd(n7-wp=V!qr=isfp_+jlxP%~p;29eh~Wpkxy~eej%NQ@Dv`Lxxb@gR@-AApz+trv zNGXsf*pay6b2&>9*(YT2{Co(PK4y*U-xKq8F$kBmX`2zcjR*j3(!l=RrW(0d9_KLq zog2}fs4pt_FSNO?^*M1fDB~6BIzdEYbC=Co`C9u|>MN-w&HFdIgw?I*UC(Bg7T9yy z^AVj-QGJ?Mb>H+pjsitYW7i)^#tig=s0`4}m-t;C@Bw+FANdN1Wb! z28PV_VZ0Ga{^b!ve>$PGEhn~W1j+(s7BHI|Ed+iUj7GVl3lNOD2ZE!s5OgvT6U9+H z)Mb}bX$HD8^Nh_WRaI7N{a|QCl67H@-Rt*cP4BDTdw}r;;_}1)oCX;cO!}tzSdO( z*>`uEhH?yaV! zy{gm+rLrs$sHeY4G^y#cz-=a6%+?|75!)SmtWYJhzW0*fdHcMmbdhyeaInZPF*kXl zaFN@3cx)Wyj^EB6bAoh)}On}i+@gA3j>L9GYGb6%Y#UW^t4%)0KZ&SP)YI=XdVC)G2!(lid|Gsdwd8UbT00-u{R2^}Dmp^pku9-i4Hn zJCE76#>`vFW@T^8Vm6_Yi7R}}V+ECpL}RJl=b6ZP!%bPgqa$y_SMuEXl*|HSO?;s| zqg&DW_xO!o-1Y$tRq;BpUPcd+Cti6Snu~u#(Sfh9g4^Y4Zf8H5GK`8S7BkgvmH)TvMjlmN5$2_gK|G# z%YS-Phb-B2`z%GjbA#}6)MIlQePgVI&uV>@&4fv7eQ8f6tY(DW3)!=_ znX~GCsT?q8rH&PGjUI^a&o&H%%@4-7@0`Hq^+vyz%El(e13mM3!*P9S&8pb|FE^K; zf#_r1T&jD?Nh2&;ngn5dSye8b8auun15cjOZtBrDc|-?R+!IxHzxC~Yi!AcJ7rUH~ z@j2LXfOb4<*Zh;)T$1%iTxIIk#_QH9>ej-Uy;PG0=UDIr8&=D#p2Ra=}fe-+~ZsI0+U6}zg zSC@Rim^~;Gh-9!Y5yF=lR&;&I1ytUr*yM|!g@9=RR+pFdz|7IU8!-4IfNdK}18R>7 ztAp@`g=t@3l7ZSo!xpbDKLI!T`}DzJVt~^DGz0W|vM&T=Fec%zCzX8dObEExfxaOy z?*@SkCi-N+&ELbAAdh^2QHV}YA0trsPhSJbV6e{$@(2QyK^`dq#{1ARkZ(qq)3q}! zU=s?J2099Ck-UBjONTtN14Qx%*!hyFp`PUB8VM{kS$2}+j^co%} za-rb9FAtiHc}>HO?cRhmM~AIKniIp?Ak8U3s{ImyVORiMpfs3Z$Mkm?5|9W~4?et{ z+A&235MNef0*G&_82|vNsT;6y%ajS&2sIT3pg?r``#eFX-F;?2&wWz{K-+aSF`(_H znhxM|^WPJ_3x$G6#>5PnB1t5cgz85f91VFY6bp;Cd_ThpIhWiE~Ium`!K&`7w24LkLQ~)SE z+IIla8Sle~JaPbx_n;>r-^4It@FO~a_u3g7AhHFu1p1HlsX!hH0bN^AZP06I*z4EW zg|yQK9b=aJI}|{`4wMY^niwVsZjKD|;Uj3dxC!*+rP$M{pZmB7eTA60z3@dq4A0Oud)9BL8!b+Fx;VO8&L3!PB|rFTjn;Z zwQK*n2p;|)0mbS61^AzOG~fW9lv)RzX1I;=ZC_~(cX*G8y5trg|4ZkeSb5dv8oilh z_gZPN=3RmGK{U35wp5nBMa(O=v4*Lm<$ z+10i7&R*5PsPX@2K&Yp09#p;yO#~VA^%X%LQ2|*yP!y2CWM2yS5gB0TP;WCZ=kFJt%^GUvRrXhtG{E>G%)HIow82E*2Zn* zY1e+b0RB&)tbwWOk2yrO@+ucJ5qZtWHnP)BAA9pZ3*5Qwl;@iL#FY`e1x;_59SK;e zfrD5NF66!8*}dQ?6D$H}0X}D1u5U+EIF_Oce8ksK5^ID5arUubH9kOV&(jnN>o@;@ zB_6?%rt}6dGJS^5pf$9jULogCYYJv-2#ex`%->(2s^AZqfe26sFk)x$UNss}8WRl1 z9W0}YSuWaPLPG>sHbnp?Q3|4)D)M>cK7~gRn9vx#YKwSF69h2o8{P7FrEd=`+fsUkX%E>9 zMthV169>RwY-K?W+fjIsk=yB(s^zRPev1HT}XA-|c_IaB*mM+L@)gkOd`^OngZ-`cP=}Y5dASwwq)4hMZ$x& ztXyzj8I^-K``w^kSICbN?P!hR58YYY@=L73u!8-(rbUlPrWgH~>F^md+a0XO3pdDR?O0!FnMF^8n9;tW?j+o~~X(x2(7GJC8V<)8=w20K-& zJ#LL$d+CA^FZzO0(e*jRCTV_^g|v0Q7K_1wJB;PBO-ku*(Gxz z?Uj>SLm?xX>y6J+N(P@hs{i*V$b!$(1_*T$8 zR~ohtsUhYIq9NgGL}kR8}wUF=>$F%s^gxL){e1ioJW8 zCugft8_M`RP^!t!Zklw(?oio*Gp)!kY~N0B>N^;YCF&qs>PpMnr5%nXoGjuzf-L$x zChL3hfK|57cHLC%qtfBVBbK}IE2ajXanN~eR|N1!zz<-QlNjJnQ{G-{1aKko5VM2E zTjL^1>+o%w(GSksK!i{zM@44u*}}TPpQ>~UKTrP6RHHy7By-MKOy!6yoBO%Ry5cXL zw?Iy|2NFOi(K;|w$z6Ps<~ip8yKfpLJn@Uiwqm`o3xhYi3#>Oo4PwV{ofsoIP`Hs& zdz6tvd#sU)Z_tLUy@V4Hhxe%S^d~AnhXYQYS5)Vr;SPQMG(p$~=Y(i_l)}`@z}+FN zImPo77}0^JbV_DG;n3V1`?>#-$j|mQ@UM;hA?K`ER{HofzNO4%L}-CRo$hx6NC7kd#T~Tbh49-?rgp}&@h^Kfnuiz$9WwBp1rJEq zHl9eloc()94TB>MVZB__wwI;fZ2$4Owz6biWd2I=w`!!d+ zz?~lm$G)^V?MSRoUYedyg1;evvs1c*+6Nw;s}RYc9)m$0RF@bRe7^a-NPwGvJ6wo1 z6uNQtNN{1~TmHZYJQ50%fe>F>Ut~S{P8Z>xs}Z6bSG-)bYm>! z?^%ZN#Q(iI3z(M^zM^1n;&(h5ymvqRx!Z5Ocr~Ble9yfd>0;@~n3);8%CAzFc;=6l z4Jax>bv8;;`Hjvo^&~3n@o9+Msvgy|a2UfX2i0RiHn2_|IU|pww}qT4L!V=Wg(lBX zd!TuKkFzN!$|Eajay^-2!hy}WdEKIY)tI(9?`y80CT$B!{*WO{;yNkEA0bNh^&5`y zH|@@A`4RWY_^J+Djy@k9OK+vG$qx}@_bbCB7k;THcZrY<+0+ZAc=!!p-NT9msSVGk z0YT=-4!7$HFZJZdmg|fxHifs++A$~c(KoBFA)De_&khzzn@Uj-Shd_ki4J18%fPu5QZe&o!gl7i?>yJ)mzk&N&qI?v z&db<1!)!eU%f#hB-+Hw8F-U#}^^m#JH?xNIk?><_#pRh=@Z&8c?m%a+?UoFbgPn$* zOttw*?~^&9pZW2X6K$Q4H-nG=U{`(*PK!_J>~0+C@3 zF|~zYxdBNzQfxYvG-}B7*95IXv+J0WpSPcr5_1aWIW{zuEYoa<)zpQSt!=4&l*V`S zOOg!O0bip^G8oK{zhbGgsjtpWg5sN4XStl--n;q$$^cVzCH(yJ3^vQ*PIpsfRd2BO zS4PctkK?c28l^hkBr${GI>GABME>EkE}tfP`S}3&Ta*S-3eF6ygGtTEi(7gIvBb{U zjy(>|uwGEdwIClC5nz8G7$6KIkN(hQPxS}-b9R{jrzkr-2>Sfcw6Wd>9B& z4CZcAJ{TD&0ZHVo)6wQkS3!Wnd-7kFH~r_P|Er3Efd9LXLxqFdgAvM5yx&6%Q@x~C zg9fKVdPchX&H4ER@Jy`fWR=SsWq@xzDD@E<-<{L`8`+t|7}IkGvqIgw>L92w_`Q8 zH+6F>P*-xA`;6h2sKi@c@BY$b#o!*OwJsmWi4*q)K1_2?N^cI9mo9kQfv1urCHcMo zqp~c?*?RKO zXG%gSeiN=(0FkyX_woW6kTZw-{kwkam`UjR<%lV#4y-^eN1rS7y{%wlAb44{@an#Y zKI+a6llFHiK!ZAgG^fBYMQ*V@h0v6rFYkc1M_nr7(preXhlGG-c6~hi*jv2tCDf}L zKcHUtueGRilz<_Fjlr~mO$T4ZwjY&d8l+iThX6J}8O!ENp2<{;SOkXfic@DGaD;^M$r7Mo1mUsS9Z0VI76LuK(_0VgH(IZ9i~GR z1av(R&&{rd!M025hs%EnWTVTv(z>p(OqF}hS&U=E{BC*0$%@1c>?w<+W9AgRyC(5@ zpDK4dkhCG~6R#1yL6f*4FYg7;*a{8E{uR9}%qhrC`~nru2uuygv39ru&H9XMJBRr& zS4c~*$87&^r)cJ|s^6jc@S)lK!w35R!zskf+}vGF&E2Iv9L?Qroc_y2T>r~A{`eyK zYRu0+^7AIP5AV{5ihnaD#h_sl`%*3z_u(TYHMwcLlqsSF0ct8Arzxh!7mQ-l5*VV0 zW)!_ZM1kOHTU>jG62n6?eOo4Maecd&2IH<$olduNpBqb#8*!|WhxZ#4r;RnQ^A;=P zbHCw-_jPBO522CL#E3uCyK}`s)a18rS}pi5pd<+JBBA~JlW^Cf?mn5mq3*ty4(LdrO&^Be#`1G3XnwfydrN*s}`Be*$g>?k}A zl>yoPOAeL0xGZnMH_<^{WvRmzn7}d5G~^5lQi|yV4oftr@Vv3`3I%Divr=*1>clw2 z6Adf=US1Bff@w>8A&o<%4h;KXht|=Pydp$cj);}0>{w*w@YtTJfHEeE_pSYGr|%_N;^PC+Xma)SEh_>AN!Ch zc&U>+E965C)=PS2GgHcUW`PW!k#p34{Z$33gpBGAGZN&9Q$*1SGI>3rwC~Mk;377q z5=iwA9U>P^$_V_p|7MCD<9*D zuQVpBoEbj1EL+RnB|JsBBipFQuu|ymN4uuPx+Jxv@G<==D;b;T3QkuX7YubK9{c8l z^Q)wn`B!vysC{sVg7F)$bGlFl%7w~dNeF)~bvPR_f%7YJs!b{zrfRX}`;$xQXR?tY zZ!Q)k_d2Py6?AURmvvkSNa;C4AtdCBBYnnxBP*ld52-yZ)0%u~?%0FlCxLu(6cxyeOVI+?wLD%KB$BmkpFJ$#-dR zcBUCHv1Qenq;%ZLfNSWKUY^#aEzc6-rp6W$uC0lBKMvXsS1q5iu_mr##^OgyJf79x zZ!C=VAx;!J5(<=2PKFt@LyGecIQHr$ZODRKHo>Us<$AqSx@2c128Xl(N0M_lu?*(JS=jUAEg6s<` zo@#p4CkGl}piwsHu+reT#TeVCT&kh)M{@fM&A?v{aVcqijz&{T~N9RFttB}b(YhMB99DntlM%ZX>yENtV*5-%st>>NS)e~WnM%u^Y zycExh1t2`{9M74E%hkV90>MR>$Bubc1k<`6yXq{I1z3%UG{~mA)<`-dNw5S?dVXr~ zf~bzWQd-u0@^*Q^;R!vXME>^;Es76e44ENIzw`}6Azc!Z&y1d0@tCB6pWtIkoum3} zj096=wi~p#>3Wd(O1c?vHv+xFUo25nq0-+f=zRR>lb(|vG{9Mjwu>|qFNV8cEtKC; zn*uP`U5YPX%AG^E2`5WEliTb+BXkz^K1kT;Bv#@2i~gNBba2M=&+nFDd?oOoDgTQ! zPeEG3LG8xKSal0F%*zngMiI#Tv;CHed_Z~D<$n7!cUT=QT@F6@f#5ua@ik&Tt`HVy zL!HliWlm0AhZy;ls0S0*MIQ8zlIM5?KGZ57EBV3xlKr$v9O(8Gj@%U{@+DlsKuxMx z#!X!ND=}H} z`2piA?q6w%G?F}7%8$1VaaPE9K`z{0yM2Riqer0SImrM zn|ae|!N_{JiW<`c*YY+osUJo`N&ZD`2}_U2nrYF)zfbiG8P(8BFk?)Vp!xK&0ikEQPZ2r=ZYY<5lB2j6bDt|imcq;2iiqh=K zoXe5=L}i@1Xt+1YltdOXYG^U8K`_B921$(*yB40L&XY(BOA$OzQSh7z?75Xo6{)@uD%60j#urW!TqJL1wsIw^c z6rC%6Xh!F_2QD-2n^fYt_CB3@VqZ8Em~lDlv8((M1J_x~s-5?H)omL#QIULaq6e2n zNGyj7ND3_;rWgwQ!#ZhyHvVHu@+(n%JL@oK2`EzNJXi0+}1 z9>v|?5{^S2A4Qwm)XPHFYwu+KlGUO;+HGg}$n?~tt6!8f%4#kg8%hc8FUTnxPuk8q zxC-~>W4hELOIgUsuNl#1X%Vx_R~i+y^Y-cU9)PevsfbkiHL*+npQ%H>-1aZ?$@KVW zw#Tv*=qr5FBj)?_1E|;!!p+F}R5RC+U)uXe+Dyu}jzvM}93EM1W(?JQ?$=N{^iCt$ zPKQuk60Z?!vH8P2r>bKNe`Fr0JKxH-rCY8SsFSmeMLo{IN{I0zGi(*FZ)G#2DVm-q zlo6L~3x;9%jLC4jym%^qzz~~F6ap;MG#J6)VeD)7CtLigl|LbrF+^0H$o*MzL6k{Y zHoJXJ)X3I^k$Rg^`8~Ea`QMQZrhyWr&f(Ry{BOUibIG*n{O{58>~Li2E-aOK!RPn5 zkG|*E@;t{iMw3{|3N?+=^D%!J>ZtfFWAhxC>{kxVGhtb+MNI9=(7J#*lDV?wI*Z!79%>12V>{3 zAm?!9o*GSoMWlhkZw-+h3f#?Y=S)2f0Wa5{pEJEJ@ahBO8AhL7^e9wNi@^jZ4gL9N zjg2l=eaxMy7CWI+g~jEQ(msrQr$dT9sHV>Ob*EG+_=5DBo7OELs`KX|0H~dE?KBhLY?79>Z}1#2}uGFIl(&QiWV> zxB|5?g3waQSC&leOD{(M?_Dy77I?cuU&U9&84^(nm05nPi5t#8_HM&4R#TNaRh6wZ zfShV)FT5a3!?VJFP>?@q+V@BPgwy}Fv(SA+N8ybb$`y$c`FlgHGMZ`BU_8Rt!Mlbh zJh>$}K;u${@h_nWr*0u%uz~RaonX1H)+>qF?tZQMTl9$EE1PR#a!S$R&k-zzpa-=a z&dmb16ED2?f^Ga$M=k9=7((Y30LbRgDE0nF=Cyz_aLB5ng?taHBTL2H?+-Ec5q!vN z?LP5{@RUZlNa8txCF+H^YWx^tVgBFP#~88X!ds zpTMDKW;4AD4=oK62oXz$zwjw$G^SH0iv^x@dGeo3@ipD|Zt8ztO2n|e4pl~+ztS(` zx9p6nc$emCA7aFi1cp5q_fkCD;*qR4j8A@ERdk%4PN8%}B<+_ii1m8L!xb#E&n2T~ z+%7C;**nCZYc7G``Efoq5CY7{QsCED9TtBuPrn#hGfiO8yP%aul^~cE$X%eM%BxA2 zJ&q|+-{Ty$o`k`7qHbX_T$zr)g$PgOjWn3G&YtXFJZJyu8d92=>S9qVB%dXL|HDA4 zq+gFi`MG88g1IfLdGX*rUCr>wi_JyJ>t&5gwEL?n4h}LSlaRlzEp}i=6#T#CFX1>M z!t}JnauASXG4Lxj@xEGUF6LQfB3nW>)Oe@F&Dvjib>f%A7Lwj*F{z1UbIF1xA;RSS z{&y$Zi}1yRF9MSB{xO55;Wjwru2fY^^;Q)mYv`)rQ>W>qIc zxhu>O_$IAegw2+sn(`KZPS@EW}F_9dD$?9-`)pL z-|KFWug5urPZV@zx!u4B$ymXQdu5fEH^kp*ssAODOO;F0cMYUatdNN(tar||(S-uo zrj%ONs+PTa)%+5vj2vySROYN^FJS;qRW9ZXO~ym}7b!2y$7(5y9nMlE!bCE$gsBUT z{Vfn=H7k3nLph_4^>p_)wZP1mb9*Nw(pg6|+XjapsWWt~>OTUT8ywJ-#@c%vtS8NB zbuZ}4ri@isIq<8)o$8~et?A_d@k4Pe>hLnv%b++#el{yTRGCU&)?{soYEwk z?LxpS4`Pc`dGdI5ZrO{GH`JV9J}m(X_8P2Hh<}2Xm(VZ{rg

    UU%7w{EEET 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 literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONBoot/libs/apijson-column-2.0.3.jar b/APIJSON-Java-Server/APIJSONBoot/libs/apijson-column-2.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..b8d3c25791a168d771badc89eaff8561b8027c7f GIT binary patch literal 8213 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

  • _p{O8m4E4NK}* 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 OzY5T-vIv5Lf&D+*t`jBz literal 0 HcmV?d00001 From d4fd7d90bc5212b5148e90ee68548cfc02c48dcc Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sat, 11 Jan 2025 00:47:00 +0800 Subject: [PATCH 02/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=20DuckDB=20=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONBoot-MultiDataSource/pom.xml | 10 ++++----- .../java/apijson/boot/DemoApplication.java | 10 +++++++++ .../main/java/apijson/demo/DemoSQLConfig.java | 22 ++++++++++++++----- .../java/apijson/demo/DemoSQLExecutor.java | 7 +++++- 4 files changed, 38 insertions(+), 11 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml index c810854..00781a4 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml @@ -56,11 +56,11 @@ - - com.github.Tencent - APIJSON - 7.0.3 - + + + + + com.github.APIJSON apijson-framework diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java index dd79a77..73f2fc6 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java @@ -204,6 +204,16 @@ public void addCorsMappings(CorsRegistry registry) { Log.e(TAG, "加载 IoTDB 驱动失败,请检查 pom.xml 中 org.apache.iotdb.jdbc 版本是否存在以及可用 !!!"); } + try { //加载驱动程序 + Log.d(TAG, "尝试加载 DuckDB 驱动 <<<<<<<<<<<<<<<<<<<<< "); + Class.forName("org.duckdb.DuckDBDriver"); + Log.d(TAG, "成功加载 DuckDB 驱动!>>>>>>>>>>>>>>>>>>>>> "); + } + catch (ClassNotFoundException e) { + e.printStackTrace(); + Log.e(TAG, "加载 DuckDB 驱动失败,请检查 pom.xml 中 org.duckdb 版本是否存在以及可用 !!!"); + } + // try { //加载驱动程序 // Log.d(TAG, "尝试加载 TDengine 驱动 <<<<<<<<<<<<<<<<<<<<< "); // Class.forName("com.taosdata.jdbc.TSDBDriver"); diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index ca8cba3..f804010 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -180,6 +180,9 @@ public String getDBVersion() { if (isCassandra()) { return "4.0.1"; //TODO 改成你自己的 } + if (isDuckDB()) { + return "1.1.3"; //TODO 改成你自己的 + } return null; } @@ -225,19 +228,22 @@ public String getDBUri() { return "jdbc:TAOS-RS://localhost:6041"; //TODO 改成你自己的 } if (isInfluxDB()) { - return "http://203.189.6.3:8086"; + return "http://203.189.6.3:8086"; //TODO 改成你自己的 } if (isMilvus()) { - return "http://localhost:19530"; + return "http://localhost:19530"; //TODO 改成你自己的 } if (isIoTDB()) { - return "jdbc:iotdb://localhost:6667"; // ?charset=GB18030 加参数会报错 URI 格式错误 + return "jdbc:iotdb://localhost:6667"; // ?charset=GB18030 加参数会报错 URI 格式错误 //TODO 改成你自己的 } if (isMongoDB()) { - return "jdbc:mongodb://atlas-sql-6593c65c296c5865121e6ebe-xxskv.a.query.mongodb.net/myVirtualDatabase?ssl=true&authSource=admin"; + return "jdbc:mongodb://atlas-sql-6593c65c296c5865121e6ebe-xxskv.a.query.mongodb.net/myVirtualDatabase?ssl=true&authSource=admin"; //TODO 改成你自己的 } if (isCassandra()) { - return "http://localhost:7001"; + return "http://localhost:7001"; //TODO 改成你自己的 + } + if (isDuckDB()) { + return "jdbc:duckdb:/Users/tommylemon/my_database.duckdb"; //TODO 改成你自己的 } return null; @@ -294,6 +300,9 @@ public String getDBAccount() { if (isCassandra()) { return "root"; //TODO 改成你自己的 } + if (isDuckDB()) { + return "root"; //TODO 改成你自己的 + } return null; } @@ -349,6 +358,9 @@ public String getDBPassword() { if (isCassandra()) { return "apijson"; //TODO 改成你自己的 } + if (isDuckDB()) { + return ""; //TODO 改成你自己的 + } return null; } diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java index 386d6c2..1f5ad01 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -25,6 +25,7 @@ import apijson.orm.SQLConfig; import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.fastjson.JSONObject; +//import org.duckdb.JsonNode; import org.springframework.data.redis.connection.RedisStandaloneConfiguration; import org.springframework.data.redis.connection.jedis.JedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; @@ -303,6 +304,10 @@ public void close() { // @Override // protected Object getValue(SQLConfig config, ResultSet rs, ResultSetMetaData rsmd, int tablePosition, JSONObject table, int columnIndex, String lable, Map childMap) throws Exception { // Object v = super.getValue(config, rs, rsmd, tablePosition, table, columnIndex, lable, childMap); -// return MongoUtil.getValue(v); +//// if (v instanceof JsonNode) { // DuckDB json 类型需要转换 +//// JsonNode jn = (JsonNode) v; +//// v = jn.isNull() ? null : JSON.parse(jn.toString()); +//// } +// return v; // MongoUtil.getValue(v); // } } From 373b53f9a8c8a06ebbd11ddb4877f7369d615676 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sat, 11 Jan 2025 00:53:18 +0800 Subject: [PATCH 03/80] =?UTF-8?q?DuckDB=EF=BC=9A=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E8=A1=A8=20SQL=20=E6=96=87=E4=BB=B6=EF=BC=9BPostgreSQL?= =?UTF-8?q?=EF=BC=9A=E5=AF=B9=20Document.sql=20=E7=BA=A0=E6=AD=A3=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E7=9A=84=E8=A1=A8=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONBoot-MultiDataSource/pom.xml | 5 + DuckDB/single/sys_Access.sql | 84 + DuckDB/single/sys_Comment.sql | 560 + DuckDB/single/sys_Document.sql | 21996 ++++++++++++++++ DuckDB/single/sys_Function.sql | 68 + DuckDB/single/sys_Moment.sql | 239 + DuckDB/single/sys_Praise.sql | 36 + DuckDB/single/sys_Request.sql | 87 + DuckDB/single/sys_Script.sql | 72 + DuckDB/single/sys_TestRecord.sql | 768 + DuckDB/single/sys_Verify.sql | 114 + DuckDB/single/sys_Visit.sql | 14 + DuckDB/single/sys_apijson_privacy.sql | 170 + DuckDB/single/sys_apijson_user.sql | 175 + DuckDB/sys_ddl.sql | 319 + PostgreSQL/single/postgres_sys_Document.sql | 2660 +- 16 files changed, 26037 insertions(+), 1330 deletions(-) create mode 100644 DuckDB/single/sys_Access.sql create mode 100644 DuckDB/single/sys_Comment.sql create mode 100644 DuckDB/single/sys_Document.sql create mode 100644 DuckDB/single/sys_Function.sql create mode 100644 DuckDB/single/sys_Moment.sql create mode 100644 DuckDB/single/sys_Praise.sql create mode 100644 DuckDB/single/sys_Request.sql create mode 100644 DuckDB/single/sys_Script.sql create mode 100644 DuckDB/single/sys_TestRecord.sql create mode 100644 DuckDB/single/sys_Verify.sql create mode 100644 DuckDB/single/sys_Visit.sql create mode 100644 DuckDB/single/sys_apijson_privacy.sql create mode 100644 DuckDB/single/sys_apijson_user.sql create mode 100644 DuckDB/sys_ddl.sql diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml index 00781a4..b8227a2 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml @@ -77,6 +77,11 @@ 2.0.3 + + + + + diff --git a/DuckDB/single/sys_Access.sql b/DuckDB/single/sys_Access.sql new file mode 100644 index 0000000..4d1319d --- /dev/null +++ b/DuckDB/single/sys_Access.sql @@ -0,0 +1,84 @@ +create table "Access" +( + id integer not null + primary key, + schema varchar(100) default null, + debug integer default 0 not null, + name varchar(50) default '实际表名,例如 apijson_user'::character varying not null, + alias text, + get text default '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]'::text not null, + head text default '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]'::text not null, + gets text default '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]'::text not null, + heads text default '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]'::text not null, + post text default '["OWNER", "ADMIN"]'::text not null, + put text default '["OWNER", "ADMIN"]'::text not null, + delete text default '["OWNER", "ADMIN"]'::text not null, + date text default CURRENT_TIMESTAMP not null, + detail text default null +); + +comment on column "Access".id is '唯一标识'; + +comment on column "Access".debug is '是否为调试表,只允许在开发环境使用,测试和线上环境禁用'; + +comment on column "Access".alias is '外部调用的表别名,例如 User'; + +comment on column "Access".get is '允许 get 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"] +用 JSON 类型不能设置默认值,反正权限对应的需求是明确的,也不需要自动转 JSONArray。 +TODO: 直接 LOGIN,CONTACT,CIRCLE,OWNER 更简单,反正是开发内部用,不需要复杂查询。'; + +comment on column "Access".head is '允许 head 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".gets is '允许 gets 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".heads is '允许 heads 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".post is '允许 post 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".put is '允许 put 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".delete is '允许 delete 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".date is '创建时间'; + + + + +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (1, 0, null, 'Access', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2019-07-21 20:21:36.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (2, 1, null, 'tables', 'Table', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2018-11-29 00:38:14.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (3, 1, null, 'columns', 'Column', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2018-11-29 00:38:14.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (4, 0, null, 'Function', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2018-11-29 00:38:15.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (5, 0, null, 'Request', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "ADMIN"]', '[]', '[]', '2018-11-29 00:38:14.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (6, 0, null, 'Response', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2018-11-29 00:38:15.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (7, 1, null, 'Document', null, '["LOGIN", "ADMIN"]', '["LOGIN", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2018-11-29 00:38:15.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (8, 1, null, 'TestRecord', null, '["LOGIN", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2018-11-29 00:38:15.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (9, 0, null, 'Test', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2018-11-29 00:38:15.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (10, 1, null, 'pg_attribute', 'PgAttribute', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2018-11-29 00:38:14.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (11, 1, null, 'pg_class', 'PgClass', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2018-11-29 00:38:14.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (12, 0, null, 'Login', null, '[]', '[]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[ "ADMIN"]', '[ "ADMIN"]', '["ADMIN"]', '2018-11-29 00:29:48.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (13, 0, null, 'Verify', null, '[]', '[]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[ "ADMIN"]', '["ADMIN"]', '2018-11-29 00:29:48.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (14, 0, null, 'apijson_user', 'User', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN","LOGIN","OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["ADMIN"]', '2018-11-29 00:28:53.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (15, 0, null, 'apijson_privacy', 'Privacy', '[]', '[]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["UNKNOWN","LOGIN","OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["ADMIN"]', '2018-11-29 00:29:48.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (16, 0, null, 'Moment', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2018-11-29 00:29:19.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (17, 0, null, 'Comment', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2018-11-29 00:29:19.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (19, 1, null, 'tables', 'SysTable', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2019-10-04 09:01:20.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (20, 1, null, 'columns', 'SysColumn', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2019-10-04 09:01:20.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (21, 1, null, 'extended_properties', 'ExtendedProperty', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2019-10-04 09:33:45.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (22, 1, null, 'Random', null, '["LOGIN", "ADMIN"]', '["LOGIN", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["LOGIN", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2019-12-01 23:13:13.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (23, 0, null, 'Swagger', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '[]', '[]', '[]', '2018-11-29 00:38:15.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (24, 1, null, 'Method', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["LOGIN","OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2018-11-29 00:38:15.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (25, 1, null, 'Input', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2020-01-10 15:12:49.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (26, 1, null, 'Device', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2020-01-10 15:12:49.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (27, 1, null, 'System', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2020-01-10 15:12:49.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (28, 1, null, 'Flow', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2020-01-10 15:12:49.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (29, 1, null, 'Output', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2020-01-10 15:12:49.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (30, 0, null, 'ViewTable', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2021-01-20 22:51:43.000000', 'MySQL View 支持多张表合并为一张表,这个示例 View 的创建 SQL 为 CREATE VIEW sys.`ViewTable` AS SELECT C.id as `commentId`, C.toId, C.momentId, C.content, U.* FROM sys.Comment AS C INNER JOIN sys.apijson_user AS U ON U.id = C.userId; 初测正则匹配等条件单表查询、与其它表关联查询、与其它表 JOIN 都和普通的表用起来没有大的区别,目前发现的问题两个是: 1.作为 ViewTable 的表中有同名字段的话要把部分字段取别名,例如 Comment 和 apijson_user 都有 id,这里就用 C.id as `commentId` 取了别名避免冲突;2.APIAuto 不能显示 ViewTable 的表注释和字段注释'); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (31, 1, null, 'ALL_TABLES', 'AllTable', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2022-10-09 19:39:55.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (32, 1, null, 'ALL_TAB_COLUMNS', 'AllColumn', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2022-10-09 19:39:55.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (33, 1, null, 'ALL_TAB_COMMENTS', 'AllTableComment', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2022-10-09 15:07:04.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (34, 1, null, 'ALL_COL_COMMENTS', 'AllColumnComment', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2022-10-09 15:07:04.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (35, 0, null, 'Activity', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2022-12-06 01:45:34.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (36, 0, null, 'Fragment', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2022-12-06 01:45:34.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (37, 0, null, 'View', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2022-12-06 01:45:34.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (38, 0, null, 'Script', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2022-11-16 23:42:19.000000', null); +insert into "Access" (id, debug, schema, name, alias, get, head, gets, heads, post, put, delete, date, detail) values (39, 0, null, 'Data', null, '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]', '["UNKNOWN", "LOGIN", "OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '["OWNER", "ADMIN"]', '2022-12-06 01:45:34.000000', null); diff --git a/DuckDB/single/sys_Comment.sql b/DuckDB/single/sys_Comment.sql new file mode 100644 index 0000000..e6fb39b --- /dev/null +++ b/DuckDB/single/sys_Comment.sql @@ -0,0 +1,560 @@ +create table "Comment" +( + id bigint not null + primary key, + "toId" bigint default 0 not null, + "userId" bigint not null, + "momentId" bigint not null, + date timestamp(6), + content varchar(1000) not null +); + +comment on table "Comment" is '评论'; + +comment on column "Comment".id is '唯一标识'; + +comment on column "Comment"."toId" is '被回复的id'; + +comment on column "Comment"."userId" is '评论人id'; + +comment on column "Comment"."momentId" is '动态id'; + +comment on column "Comment".date is '创建日期'; + +comment on column "Comment".content is '内容'; + + +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (4, 0, 38710, 470, '2017-02-01 11:20:50.000000', 'This is a Content...-4'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (13, 0, 82005, 58, '2017-02-01 11:20:50.000000', 'This is a Content...-13'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (22, 221, 82001, 470, '2017-02-01 11:20:50.000000', '测试修改评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (44, 0, 82003, 170, '2017-02-01 11:20:50.000000', 'This is a Content...-44'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (45, 0, 93793, 301, '2017-02-01 11:20:50.000000', 'This is a Content...-45'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (47, 4, 70793, 470, '2017-02-01 11:20:50.000000', 'This is a Content...-47'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (51, 45, 82003, 301, '2017-02-01 11:20:50.000000', 'This is a Content...-51'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (54, 0, 82004, 170, '2017-02-01 11:20:50.000000', 'This is a Content...-54'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (68, 0, 82005, 371, '2017-02-01 11:20:50.000000', 'This is a Content...-68'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (76, 45, 93793, 301, '2017-02-01 11:20:50.000000', 'This is a Content...-76'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (77, 13, 93793, 58, '2017-02-01 11:20:50.000000', 'This is a Content...-77'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (97, 13, 82006, 58, '2017-02-01 11:20:50.000000', 'This is a Content...-97'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (99, 44, 70793, 170, '2017-02-01 11:20:50.000000', 'This is a Content...-99'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (110, 0, 93793, 371, '2017-02-01 11:23:24.000000', 'This is a Content...-110'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (114, 0, 82001, 371, '2017-03-02 05:56:06.000000', 'This is a Content...-114'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (115, 0, 38710, 371, '2017-03-02 05:56:06.000000', 'This is a Content...-115'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (116, 0, 70793, 371, '2017-03-02 05:56:06.000000', 'This is a Content...-116'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (120, 0, 93793, 301, '2017-03-02 05:56:06.000000', 'This is a Content...-110'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (124, 0, 82001, 301, '2017-03-02 05:56:06.000000', 'This is a Content...-114'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (157, 0, 93793, 371, '2017-02-01 11:20:50.000000', 'This is a Content...-157'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (158, 0, 93793, 301, '2018-07-12 17:28:23.000000', 'This is a Content...-157'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (160, 0, 82001, 235, '2017-03-02 05:56:06.000000', 'This is a Content...-160'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (162, 0, 93793, 12, '2017-03-06 05:03:45.000000', 'This is a Content...-162'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (163, 0, 82001, 235, '2017-03-02 05:56:06.000000', 'This is a Content...-163'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (164, 0, 93793, 12, '2017-03-06 05:03:45.000000', 'This is a Content...-164'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (167, 0, 82001, 58, '2017-03-25 11:48:41.000000', 'Nice!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (168, 1490442545077, 82001, 235, '2017-03-25 11:49:14.000000', '???'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (172, 162, 82001, 12, '2017-03-25 12:22:58.000000', 'OK'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (173, 0, 38710, 58, '2017-03-25 12:25:13.000000', 'Good'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (175, 0, 38710, 12, '2017-03-25 12:26:53.000000', 'Java is the best program language!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (176, 166, 38710, 15, '2017-03-25 12:28:03.000000', 'thank you'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (178, 0, 38710, 511, '2017-03-25 12:30:55.000000', 'wbw'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (182, 110, 82001, 371, '2017-03-26 06:12:52.000000', 'hahaha'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (188, 97, 82001, 58, '2017-03-26 07:21:32.000000', '1646'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (190, 0, 82001, 58, '2017-03-26 07:22:13.000000', 'dbdj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (206, 54, 82001, 170, '2017-03-29 03:04:23.000000', 'ejej'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (209, 13, 82001, 58, '2017-03-29 03:05:59.000000', 'hehj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (300, 97, 82001, 58, '2017-03-29 03:06:07.000000', 'hj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (301, 194, 82001, 235, '2017-03-29 03:06:24.000000', 'jj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (4001, 0, 82001, 58, '2017-03-29 08:39:52.000000', 'I would like to say …'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490776944301, 0, 82001, 58, '2017-03-29 08:42:24.000000', 'hello'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490776966828, 173, 82001, 58, '2017-03-29 08:42:46.000000', 'me too'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490777905437, 0, 82001, 543, '2017-03-29 08:58:25.000000', 'rr'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490778122719, 175, 82001, 12, '2017-03-29 09:02:02.000000', 'Yeah! I think so!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490778494751, 1490778122719, 82001, 12, '2017-03-29 09:08:14.000000', 'reply Android82001'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490778681337, 166, 82001, 12, '2017-03-29 09:11:21.000000', 'gg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490780759866, 99, 82001, 170, '2017-03-29 09:45:59.000000', '99'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781009548, 51, 82001, 301, '2017-03-29 09:50:09.000000', '3'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781032005, 45, 82001, 301, '2017-03-29 09:50:32.000000', '93793'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781817044, 209, 38710, 58, '2017-03-29 10:03:37.000000', '82001'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781850893, 1490776966828, 38710, 58, '2017-03-29 10:04:10.000000', 'haha!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781857242, 190, 38710, 58, '2017-03-29 10:04:17.000000', 'nice'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781865407, 1490781857242, 38710, 58, '2017-03-29 10:04:25.000000', 'wow'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781899147, 197, 38710, 12, '2017-03-29 10:04:59.000000', 'kaka'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490794439561, 1490778681337, 82001, 12, '2017-03-29 13:33:59.000000', 'gg?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490794610632, 172, 82001, 12, '2017-03-29 13:36:50.000000', 'All right'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490794937137, 1490794919957, 82001, 12, '2017-03-29 13:42:17.000000', 'All right ok ok'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490794953438, 1490794937137, 82001, 12, '2017-03-29 13:42:33.000000', 'All right ok ok ll'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490796241178, 0, 38710, 58, '2017-03-29 14:04:01.000000', 'Anything else?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490796629591, 175, 38710, 12, '2017-03-29 14:10:29.000000', 'well'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490798710678, 110, 38710, 371, '2017-03-29 14:45:10.000000', '110'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490800971064, 175, 38710, 12, '2017-03-29 15:22:51.000000', 'I do'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490848396072, 175, 82001, 12, '2017-03-30 04:33:16.000000', 'Lemon'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490848581424, 166, 82001, 12, '2017-03-30 04:36:21.000000', '82001ejej'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490850764448, 162, 82001, 12, '2017-03-30 05:12:44.000000', '-162'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490850844016, 0, 82001, 12, '2017-03-30 05:14:04.000000', 'I like it'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490850876656, 1490800971064, 82001, 12, '2017-03-30 05:14:36.000000', 'I do so'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490854894566, 175, 82001, 12, '2017-03-30 06:21:34.000000', 'it does be a good lang'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863443219, 1490850844016, 82002, 12, '2017-03-30 08:44:03.000000', 'me too!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863469638, 0, 82002, 15, '2017-03-30 08:44:29.000000', 'Just do it'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863507114, 4, 82003, 470, '2017-03-30 08:45:07.000000', 'yes'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863563124, 0, 82003, 704, '2017-03-30 08:46:03.000000', 'I want one'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863651493, 0, 70793, 595, '2017-03-30 08:47:31.000000', 'wow'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863661426, 1490780759866, 70793, 170, '2017-03-30 08:47:41.000000', '66'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863676989, 0, 70793, 12, '2017-03-30 08:47:56.000000', 'Shy'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863711703, 0, 70793, 511, '2017-03-30 08:48:31.000000', 'I hope I can join'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863717947, 178, 70793, 511, '2017-03-30 08:48:37.000000', 'what?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863783276, 1490863711703, 93793, 511, '2017-03-30 08:49:43.000000', 'haha welcome'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863903900, 0, 82006, 470, '2017-03-30 08:51:43.000000', 'SOGA'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863915675, 0, 82006, 235, '2017-03-30 08:51:55.000000', 'Good boy'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863938712, 0, 82006, 12, '2017-03-30 08:52:18.000000', 'Handsome!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863978239, 1490796241178, 82006, 58, '2017-03-30 08:52:58.000000', 'there still remains a question…'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864016738, 0, 82006, 511, '2017-03-30 08:53:36.000000', 'I want to have a try!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864023700, 0, 82006, 543, '2017-03-30 08:53:43.000000', 'oops'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864039264, 0, 82006, 551, '2017-03-30 08:53:59.000000', 'Wonderful!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864152008, 0, 82006, 58, '2017-03-30 08:55:52.000000', 'U R ugly( ´?` )'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864254400, 1490863915675, 82044, 235, '2017-03-30 08:57:34.000000', 'And I have no idea'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864276824, 0, 82044, 12, '2017-03-30 08:57:56.000000', 'Oh my God!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864292184, 1490864152008, 82044, 58, '2017-03-30 08:58:12.000000', 'haha!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864379424, 1490863938712, 82001, 12, '2017-03-30 08:59:39.000000', 'Thank you~'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864400210, 1490864276824, 82001, 12, '2017-03-30 09:00:00.000000', 'Amazing, isnt it?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490874908570, 1490864023700, 82055, 543, '2017-03-30 11:55:08.000000', 'yeah'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490874930994, 1490777905437, 82055, 543, '2017-03-30 11:55:30.000000', 'yy'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490874968779, 0, 82055, 12, '2017-03-30 11:56:08.000000', 'I love it'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490875033494, 0, 82055, 301, '2017-03-30 11:57:13.000000', 'More Comments'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490875040761, 158, 82055, 301, '2017-03-30 11:57:20.000000', '157'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490875046704, 120, 82055, 301, '2017-03-30 11:57:26.000000', '110'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490875660259, 1490863469638, 82055, 15, '2017-03-30 12:07:40.000000', 'I prove wht you said(??????)'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490879678127, 0, 82001, 543, '2017-03-30 13:14:38.000000', 'Baby you are a firework!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490973736662, 1490973715568, 70793, 170, '2017-03-31 15:22:16.000000', 'Hello, I am a fresh man'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490973890875, 1490864039264, 93793, 551, '2017-03-31 15:24:50.000000', 'While I donot think so…'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491014830404, 1490864016738, 82001, 511, '2017-04-01 02:47:10.000000', 'Have a nice day!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491119615611, 1490864023700, 82001, 543, '2017-04-02 07:53:35.000000', '$$'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491119670185, 68, 82001, 371, '2017-04-02 07:54:30.000000', 'Leave a word'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491119695580, 0, 82001, 371, '2017-04-02 07:54:55.000000', 'leave a word'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491130701902, 0, 38710, 511, '2017-04-02 10:58:21.000000', 'Thanks for your supports (-^?^-)'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491209763162, 0, 82001, 1491200468898, '2017-04-03 08:56:03.000000', 'How do you do'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491277552385, 0, 82001, 58, '2017-04-04 03:45:52.000000', 'Seven'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491312438951, 1490863651493, 82001, 595, '2017-04-04 13:27:18.000000', 'WaKaKa!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491709064513, 0, 82001, 551, '2017-04-09 03:37:44.000000', 'soga'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491740899179, 0, 82001, 470, '2017-04-09 12:28:19.000000', 'www'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491798370749, 0, 82002, 551, '2017-04-10 04:26:10.000000', 'Nice!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491798499667, 115, 82002, 371, '2017-04-10 04:28:19.000000', 'I do not understand…'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491830543193, 0, 82001, 170, '2017-04-10 13:22:23.000000', 'What is the hell?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1492932228287, 1491209763162, 38710, 1491200468898, '2017-04-23 07:23:48.000000', 'fine,thanks'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1493094307810, 0, 82001, 551, '2017-04-25 04:25:04.000000', '删除或修改数据请先创建,不要动原来的,谢谢'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1493094307910, 0, 82001, 551, '2017-04-25 04:26:04.000000', '用POST新增数据'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1493186363132, 1490850764448, 82001, 12, '2017-04-26 05:59:23.000000', 'sndnd'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1502632433970, 0, 82002, 1493835799335, '2017-08-13 13:53:53.000000', 'just have fun!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508053783278, 0, 82001, 1508053762227, '2017-10-15 07:49:43.000000', '可以的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508072695833, 0, 82003, 1508072633830, '2017-10-15 13:04:55.000000', '心疼地抱住自己(๑´ㅂ`๑)'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508227456407, 0, 82001, 15, '2017-10-17 08:04:16.000000', 'hsh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508227498578, 1491798370749, 82001, 551, '2017-10-17 08:04:58.000000', 'g'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508462026394, 1490850844016, 82001, 12, '2017-10-20 01:13:46.000000', '欧'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508492585904, 1508462026394, 82001, 12, '2017-10-20 09:43:05.000000', 'my god'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509003045509, 0, 82001, 1508072633830, '2017-10-26 07:30:45.000000', 'hhh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509346549158, 0, 82001, 170, '2017-10-30 06:55:49.000000', '呵呵'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509346556395, 0, 82001, 170, '2017-10-30 06:55:56.000000', '测试'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509346606036, 0, 82001, 15, '2017-10-30 06:56:46.000000', '测'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509518079106, 0, 82001, 1508073178489, '2017-11-01 06:34:39.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1510795816462, 162, 82001, 12, '2017-11-16 01:30:16.000000', '赞'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1510795933629, 0, 82001, 1508073178489, '2017-11-16 01:32:13.000000', 'cc'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1510813284894, 0, 82001, 12, '2017-11-16 06:21:24.000000', 'asdasdasdas'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1510813295700, 162, 82001, 12, '2017-11-16 06:21:35.000000', 'adsdasdasdasd'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511374269759, 99, 82001, 170, '2017-11-22 18:11:09.000000', '记录里'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511374274194, 0, 82001, 170, '2017-11-22 18:11:14.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511407695342, 0, 1511407581570, 371, '2017-11-23 03:28:15.000000', '好的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511407702981, 157, 1511407581570, 371, '2017-11-23 03:28:22.000000', '你好'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511878024415, 0, 1511761906715, 12, '2017-11-28 14:07:04.000000', '你今年'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511878031610, 1511878024415, 1511761906715, 12, '2017-11-28 14:07:11.000000', '不鸟你'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512035094555, 0, 82001, 12, '2017-11-30 09:44:54.000000', '呵呵呵'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512035117021, 0, 82001, 32, '2017-11-30 09:45:17.000000', '图片看不了啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512039030970, 1512035117021, 82001, 32, '2017-11-30 10:50:30.000000', '一般九宫格图片都是压缩图,分辨率在300*300左右,加载很快,点击放大后才是原图,1080P左右'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512531859019, 0, 1512531601485, 1512314438990, '2017-12-06 03:44:19.000000', '666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512533520832, 1512531859019, 38710, 1512314438990, '2017-12-06 04:12:00.000000', '嘿嘿'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1513656045399, 0, 82001, 1508072633830, '2017-12-19 04:00:45.000000', '444444'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514425796195, 0, 82001, 1513094436910, '2017-12-28 01:49:56.000000', '一起'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514473034425, 1514425796195, 93793, 1513094436910, '2017-12-28 14:57:14.000000', '干啥?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514478784653, 0, 82001, 1513094436910, '2017-12-28 16:33:04.000000', 'bug很多'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514506206319, 1514478784653, 38710, 1513094436910, '2017-12-29 00:10:06.000000', '碰到哪些了呢?欢迎指出,尽快解决^_^'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514617131036, 0, 82005, 1513094436910, '2017-12-30 06:58:51.000000', '口子'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514858592813, 0, 82001, 1514858533480, '2018-01-02 02:03:12.000000', '铁人'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514858640958, 0, 38710, 1514858533480, '2018-01-02 02:04:00.000000', '斯塔克工业'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514858707767, 0, 70793, 1514858533480, '2018-01-02 02:05:07.000000', '壕友乎?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514960713300, 0, 82001, 1513094436910, '2018-01-03 06:25:13.000000', '1'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514960744185, 1512531859019, 82001, 1512314438990, '2018-01-03 06:25:44.000000', '哇'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057852156, 0, 82001, 58, '2018-01-04 09:24:12.000000', '你说'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057857464, 0, 82001, 58, '2018-01-04 09:24:17.000000', '你说'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057861094, 0, 82001, 58, '2018-01-04 09:24:21.000000', '蓉蓉'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057864174, 1515057857464, 82001, 58, '2018-01-04 09:24:24.000000', '哦轻松'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057869554, 0, 82001, 58, '2018-01-04 09:24:29.000000', ',王者荣耀'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515313792063, 162, 82001, 12, '2018-01-07 08:29:52.000000', 'you'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515313823155, 164, 82001, 12, '2018-01-07 08:30:23.000000', 'you'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516190557098, 0, 82001, 1513094436910, '2018-01-17 12:02:37.000000', '哦婆婆'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516629533520, 0, 82001, 1508072633830, '2018-01-22 13:58:53.000000', '小臭臭'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516686985310, 0, 82001, 1516086423441, '2018-01-23 05:56:25.000000', 'hologram'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516687072270, 1516629533520, 82001, 1508072633830, '2018-01-23 05:57:52.000000', '咯我就'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516687437251, 1516686985310, 82001, 1516086423441, '2018-01-23 06:03:57.000000', '你家里好哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516691119239, 1516686985310, 38710, 1516086423441, '2018-01-23 07:05:19.000000', '我喜欢Hololens嘿嘿'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516780129884, 0, 82001, 1516086423441, '2018-01-24 07:48:49.000000', 'aaa'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516783920998, 0, 82001, 1513094436910, '2018-01-24 08:52:00.000000', '这个是实时的吗'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516785657724, 0, 82001, 1516086423441, '2018-01-24 09:20:57.000000', 'hj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516805226757, 1516785657724, 38710, 1516086423441, '2018-01-24 14:47:06.000000', '滑稽?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516805340593, 1516783920998, 38710, 1513094436910, '2018-01-24 14:49:00.000000', '看怎么定义 实时 。这个是仿微信朋友圈列表和QQ空间说说详情,在线同步的,但没做推送,所以不是QQ微信聊天那种即时通讯。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516843720270, 1516780129884, 82001, 1516086423441, '2018-01-25 01:28:40.000000', 'ghj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516862537978, 1515057869554, 70793, 58, '2018-01-25 06:42:17.000000', '绝地逃亡吃鸡'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516931850067, 0, 82001, 1516086423441, '2018-01-26 01:57:30.000000', '1111111111111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516951734010, 1514506206319, 82001, 1513094436910, '2018-01-26 07:28:54.000000', '火锅'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516951754620, 0, 82001, 1513094436910, '2018-01-26 07:29:14.000000', '凤飞飞刚刚好'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516951826863, 0, 82001, 170, '2018-01-26 07:30:26.000000', '黑珍珠'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517193267472, 1513656045399, 82001, 1508072633830, '2018-01-29 02:34:27.000000', '1'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517193278459, 0, 82001, 1508072633830, '2018-01-29 02:34:38.000000', '112'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517229342303, 0, 82001, 1516086423441, '2018-01-29 12:35:42.000000', '几号抢的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517234768450, 1517229342303, 93793, 1516086423441, '2018-01-29 14:06:08.000000', '9号'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517303775429, 1490863903900, 82001, 470, '2018-01-30 09:16:15.000000', '???'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517375165233, 0, 82001, 1508053762227, '2018-01-31 05:06:05.000000', '666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517730034960, 0, 82001, 170, '2018-02-04 07:40:34.000000', '陌陌陌陌'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1518365470893, 44, 82001, 170, '2018-02-11 16:11:10.000000', '野蜂飞舞'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1518614899681, 0, 82001, 301, '2018-02-14 13:28:19.000000', 'https://goo.gl/search/JJB+Sports +JJB Sports,'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519719341810, 0, 82001, 1516086423441, '2018-02-27 08:15:41.000000', '我也想抢一张'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519793574249, 1519719341810, 93793, 1516086423441, '2018-02-28 04:52:54.000000', '哈哈,春运都过了啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519813825959, 0, 82001, 1516086423441, '2018-02-28 10:30:25.000000', '距P民'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519974842508, 0, 82001, 1516086423441, '2018-03-02 07:14:02.000000', '1111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519974868848, 1516691119239, 82001, 1516086423441, '2018-03-02 07:14:28.000000', '1111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519979533242, 0, 82001, 1508072633830, '2018-03-02 08:32:13.000000', 'hj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520231250819, 0, 82001, 12, '2018-03-05 06:27:30.000000', '浑身难受呢'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520264640815, 0, 70793, 1520242333325, '2018-03-05 15:44:00.000000', '兰博基尼'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520330788006, 0, 1520242280259, 1514017444961, '2018-03-06 10:06:28.000000', '八组'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520578883309, 0, 82001, 12, '2018-03-09 07:01:23.000000', '我用流量'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520699466219, 1520578883309, 82001, 12, '2018-03-10 16:31:06.000000', '壕'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522074343188, 1513656045399, 82001, 1508072633830, '2018-03-26 14:25:43.000000', 'rrrrr'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522074360206, 1519979533242, 82001, 1508072633830, '2018-03-26 14:26:00.000000', 'tttt'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522657767636, 120, 82001, 301, '2018-04-02 08:29:27.000000', '云画'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522741138316, 1517193278459, 82001, 1508072633830, '2018-04-03 07:38:58.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522986959852, 1508072695833, 82001, 1508072633830, '2018-04-06 03:55:59.000000', '!????'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1523936378484, 0, 1523935772553, 1523936332614, '2018-04-17 03:39:38.000000', '不错不错哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032180807, 1519719341810, 82001, 1516086423441, '2018-04-18 06:16:20.000000', '你好啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032244441, 1519974842508, 82001, 1516086423441, '2018-04-18 06:17:24.000000', '干嘛,单身吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032255755, 1519974842508, 82001, 1516086423441, '2018-04-18 06:17:35.000000', '单身到底吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032299622, 0, 82001, 1516086423441, '2018-04-18 06:18:19.000000', '别给我得怂'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032305810, 1524032299622, 82001, 1516086423441, '2018-04-18 06:18:25.000000', '你好'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524178495587, 0, 1524042900591, 1524178455305, '2018-04-19 22:54:55.000000', '嘻嘻'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524178500568, 1524178495587, 1524042900591, 1524178455305, '2018-04-19 22:55:00.000000', '哈哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524190367904, 0, 38710, 1524178455305, '2018-04-20 02:12:47.000000', '你头像用的是本地的路径,只有你能看到,别人看不到哦,可以换一个url'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524190412418, 1524190367904, 38710, 1524178455305, '2018-04-20 02:13:32.000000', '我的资料>编辑>改下备注'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524190941111, 1524032244441, 82003, 1516086423441, '2018-04-20 02:22:21.000000', '单身约吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524190981549, 1522657767636, 82003, 301, '2018-04-20 02:23:01.000000', '这个6'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524191012552, 0, 82003, 1524178455305, '2018-04-20 02:23:32.000000', '早上好小姐姐'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524214012015, 1524190367904, 1524042900591, 1524178455305, '2018-04-20 08:46:52.000000', '怎么换url'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524235902970, 1524214012015, 82003, 1524178455305, '2018-04-20 14:51:42.000000', '在我的资料界面编辑备注'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524297798490, 0, 82001, 1513094436910, '2018-04-21 08:03:18.000000', 'gg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524461430874, 1519979533242, 82001, 1508072633830, '2018-04-23 05:30:30.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524461436914, 0, 82001, 1508072633830, '2018-04-23 05:30:36.000000', '莫'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524461441914, 0, 82001, 1508072633830, '2018-04-23 05:30:41.000000', '默默'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524488068926, 1524178500568, 82001, 1524178455305, '2018-04-23 12:54:28.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524582671132, 1524461441914, 82003, 1508072633830, '2018-04-24 15:11:11.000000', '陌陌'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524582716289, 1524461441914, 70793, 1508072633830, '2018-04-24 15:11:56.000000', '脉脉'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524798402799, 0, 1523626157302, 1524178455305, '2018-04-27 03:06:42.000000', '能不能把本地的图片传到服务器,这样大家都能看到了,用url换头像不太习惯'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524799118232, 0, 1523626157302, 1512314438990, '2018-04-27 03:18:38.000000', '这些图片是怎么发上去的呢?我发动态只有默认的两张图'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524843908458, 1524799118232, 82001, 1512314438990, '2018-04-27 15:45:08.000000', '在HttpRequest.addMoment中加的,因为APIJSON的Server Demo没做图片存储,所以目前只能自己传图片的url,可以百度图片上找哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524844181029, 1524798402799, 82001, 1524178455305, '2018-04-27 15:49:41.000000', '确实有这样的问题,但这个Demo仅供展示APIJSON的接口数据增删改查的能力,又拍云,七牛等平台又需要对接及付费,所以Demo暂时不提供哈,需要的话可以自己搞。建议先把图片上传到又拍云等平台,拿回url再传到自己的服务器^_^'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524844222775, 1524798402799, 82001, 1524178455305, '2018-04-27 15:50:22.000000', '目前也可以百度一张图,把对应的url传上去,大家就都能看到了哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1525658333654, 0, 82001, 1513094436910, '2018-05-07 01:58:53.000000', 'q'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527821844576, 0, 1527821445610, 1527821296110, '2018-06-01 02:57:24.000000', '好不好用啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527821876802, 1527821844576, 1527495857924, 1527821296110, '2018-06-01 02:57:56.000000', '当然好用啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527837906576, 0, 38710, 1527830331780, '2018-06-01 07:25:06.000000', '哇,好漂亮'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527837965006, 0, 82002, 1527830474378, '2018-06-01 07:26:05.000000', '像平板电脑哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527862540820, 0, 1527495857924, 1527830331780, '2018-06-01 14:15:40.000000', '谢谢你'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527862609352, 1527837965006, 1527495857924, 1527830474378, '2018-06-01 14:16:49.000000', 'ㄟ(≧◇≦)ㄏ'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528105592852, 0, 82001, 1516086423441, '2018-06-04 09:46:32.000000', 'aaaaa'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528250648974, 0, 82001, 1523936332614, '2018-06-06 02:04:08.000000', 'hshdv'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528270188205, 0, 1528250827953, 1527830474378, '2018-06-06 07:29:48.000000', '这个图片是怎么发出来的啊,我发动态就只是那两张默认图片'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528278187969, 0, 82001, 470, '2018-06-06 09:43:07.000000', '啊啊啊啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528289446172, 0, 82001, 1528269988360, '2018-06-06 12:50:46.000000', '因为没做前端上传和后端保存图片的功能,APIJSONApp主要是用来展示APIJSON的自动化接口的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528289580140, 0, 38710, 1528274037224, '2018-06-06 12:53:00.000000', '这两张图片的url错了哦,都是网页url,所以小图加载不出来,只能点击后用WebView查看'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528327885509, 1528289580140, 1528250827953, 1528274037224, '2018-06-06 23:31:25.000000', '噢噢,没想到你能这么快回复,谢谢'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528333168328, 0, 82001, 1514017444961, '2018-06-07 00:59:28.000000', 'zj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528333174811, 0, 82001, 1514017444961, '2018-06-07 00:59:34.000000', 'xj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528393204569, 1528270188205, 38710, 1527830474378, '2018-06-07 17:40:04.000000', '把接口里的pictureList的值改下,里面包含图片url'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528463152459, 1528463135762, 1528339692804, 1528462217322, '2018-06-08 13:05:52.000000', '我想去'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528463165903, 0, 1528339692804, 1528462217322, '2018-06-08 13:06:05.000000', '我想去'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528516951218, 0, 82001, 1528462217322, '2018-06-09 04:02:31.000000', '这里能约到小姐姐算我输୧(๑•̀⌄•́๑)૭'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528554476310, 0, 82001, 1516086423441, '2018-06-09 14:27:56.000000', 'thS'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528676480604, 0, 1528339692804, 1528356421201, '2018-06-11 00:21:20.000000', 'nihshs'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528677257985, 0, 1528339692804, 1528676875139, '2018-06-11 00:34:17.000000', 'aaa'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528679814166, 0, 1528339692804, 1528676875139, '2018-06-11 01:16:54.000000', '12'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528681265496, 1528516951218, 1528339692804, 1528462217322, '2018-06-11 01:41:05.000000', '你输了有什么惩罚吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528698907535, 0, 82001, 1516086423441, '2018-06-11 06:35:07.000000', 'yhbv'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528703971675, 1528681265496, 82001, 1528462217322, '2018-06-11 07:59:31.000000', '一起陪小姐姐出游*。٩(ˊωˋ*)و✧'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528799506317, 1516805340593, 82001, 1513094436910, '2018-06-12 10:31:46.000000', '摩恩'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528972547638, 0, 82001, 1528462217322, '2018-06-14 10:35:47.000000', '古古怪怪'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528972555336, 0, 82001, 1528462217322, '2018-06-14 10:35:55.000000', '合计怕v就怕vi'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1529730035521, 0, 82001, 1527830331780, '2018-06-23 05:00:35.000000', '还有别的吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1530528524447, 0, 38710, 1528269988360, '2018-07-02 10:48:44.000000', '所以HttpRequest里写死了两张图片url,你可以改下'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531063660028, 0, 82003, 1531062713966, '2018-07-08 15:27:40.000000', '这是哪里啊?我也想去'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531412238453, 0, 82001, 1528356378455, '2018-07-12 16:17:18.000000', '去啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531412264667, 0, 82003, 1528356378455, '2018-07-12 16:17:44.000000', '去哪呢?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531887938362, 1531063660028, 82001, 1531062713966, '2018-07-18 04:25:38.000000', '是呀'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531894411487, 0, 82001, 1520242333325, '2018-07-18 06:13:31.000000', 'sssx'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531983163150, 0, 1531969715979, 1531969818357, '2018-07-19 06:52:43.000000', 'http://q18idc.com'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1532057419100, 0, 38710, 1531969818357, '2018-07-20 03:30:19.000000', '可以加上标题哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533008631299, 1532057419100, 82001, 1531969818357, '2018-07-31 03:43:51.000000', '加上'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533120405110, 1516780129884, 82001, 1516086423441, '2018-08-01 10:46:45.000000', 'eeeeee'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533120420498, 1528105592852, 82001, 1516086423441, '2018-08-01 10:47:00.000000', 'eeeeeee'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533186909764, 0, 82001, 1531969818357, '2018-08-02 05:15:09.000000', 'hello'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533187733941, 0, 82001, 1508072633830, '2018-08-02 05:28:53.000000', '好好'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533188056603, 1531887938362, 82001, 1531062713966, '2018-08-02 05:34:16.000000', '顺带'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533195207026, 0, 82001, 1531062713966, '2018-08-02 07:33:27.000000', 'JJ'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533202426013, 1533186909764, 82003, 1531969818357, '2018-08-02 09:33:46.000000', 'world'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533202917743, 1533186909764, 82001, 1531969818357, '2018-08-02 09:41:57.000000', '00'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533629063261, 0, 82001, 1531969818357, '2018-08-07 08:04:23.000000', '大鸡鸡'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533631893738, 0, 82001, 1531969818357, '2018-08-07 08:51:33.000000', '哈哈哈哈哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533809879340, 1533186909764, 82001, 1531969818357, '2018-08-09 10:17:59.000000', '434'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533889646344, 0, 82001, 1508072491570, '2018-08-10 08:27:26.000000', '11111111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533902815448, 0, 82001, 1531969818357, '2018-08-10 12:06:55.000000', '很不要吃'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533902902749, 0, 82001, 1531969818357, '2018-08-10 12:08:22.000000', '性能还可以'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534053913157, 1524190941111, 1508072160401, 1516086423441, '2018-08-12 06:05:13.000000', '怎么约?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534128014211, 0, 82001, 1520242333325, '2018-08-13 02:40:14.000000', 'zxxx'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534412022857, 0, 82001, 1531969818357, '2018-08-16 09:33:42.000000', 'dgf'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534684074665, 1531983163150, 82001, 1531969818357, '2018-08-19 13:07:54.000000', 'ggggg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534684209052, 110, 82001, 371, '2018-08-19 13:10:09.000000', '44444444444444444444444444'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534926143012, 0, 82001, 1508053762227, '2018-08-22 08:22:23.000000', '治标不治本在不在不在不'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534926149638, 1517375165233, 82001, 1508053762227, '2018-08-22 08:22:29.000000', '把标准版申报表上班设备'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534992151350, 0, 82001, 1516086423441, '2018-08-23 02:42:31.000000', '你咋不'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535279823332, 0, 82001, 1520242333325, '2018-08-26 10:37:03.000000', '斤斤计较'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535279827983, 0, 82001, 1520242333325, '2018-08-26 10:37:07.000000', '斤斤计较'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535598334136, 1534992151350, 82003, 1516086423441, '2018-08-30 03:05:34.000000', '啥?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535600352436, 0, 82001, 1520242333325, '2018-08-30 03:39:12.000000', '6666666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535600430479, 0, 82001, 1520242333325, '2018-08-30 03:40:30.000000', '法拉利'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535785537390, 1535279823332, 82003, 1520242333325, '2018-09-01 07:05:37.000000', '不好哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535785585222, 1534926143012, 82003, 1508053762227, '2018-09-01 07:06:25.000000', '啥?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535963519864, 0, 82001, 1535781636403, '2018-09-03 08:31:59.000000', 'gghhh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535963525135, 1535963519864, 82001, 1535781636403, '2018-09-03 08:32:05.000000', 'gyuji'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1536337000073, 1516686985310, 82001, 1516086423441, '2018-09-07 16:16:40.000000', 'heh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1536378833060, 0, 82001, 1508072633830, '2018-09-08 03:53:53.000000', '真的嘛'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1536469270492, 0, 82001, 1528356496939, '2018-09-09 05:01:10.000000', '这是啥表情?Σ(ŎдŎ|||)ノノ'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1536805661269, 0, 70793, 1536805585275, '2018-09-13 02:27:41.000000', '6s再战一年'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537373307627, 0, 82001, 1516086423441, '2018-09-19 16:08:27.000000', '。。。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537410620002, 0, 82001, 1536805585275, '2018-09-20 02:30:20.000000', '不一样'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537710348414, 0, 82001, 1516086423441, '2018-09-23 13:45:48.000000', 'hhj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537710359760, 0, 82001, 1516086423441, '2018-09-23 13:45:59.000000', '锵锵锵'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537857324518, 0, 82001, 1536805585275, '2018-09-25 06:35:24.000000', '嗯呢'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537857334299, 1537857324518, 82001, 1536805585275, '2018-09-25 06:35:34.000000', '嗯嗯'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539252343243, 1539252313711, 82001, 15, '2018-10-11 10:05:43.000000', 'dxdf'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539252350604, 1539252337210, 82001, 15, '2018-10-11 10:05:50.000000', 'djdnjd'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539868250267, 1531063660028, 82001, 1531062713966, '2018-10-18 13:10:50.000000', '555555555555555555'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539868258868, 1533188056603, 82001, 1531062713966, '2018-10-18 13:10:58.000000', '555555555'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539868269471, 1539868250267, 82001, 1531062713966, '2018-10-18 13:11:09.000000', '4444444444444'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539868275645, 1531887938362, 82001, 1531062713966, '2018-10-18 13:11:15.000000', '22222222222222222'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539960436993, 0, 82001, 1539868023868, '2018-10-19 14:47:16.000000', '111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1541496033857, 0, 82001, 301, '2018-11-06 09:20:33.000000', '能解决'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1541651688961, 1539960436993, 82001, 1539868023868, '2018-11-08 04:34:48.000000', '哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1541815269164, 0, 82001, 1541667945772, '2018-11-10 02:01:09.000000', '11'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1543193682067, 0, 1528339692804, 1528269822710, '2018-11-26 00:54:42.000000', 'ss'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1544496611006, 0, 82001, 15, '2018-12-11 02:50:11.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1544496618728, 0, 82001, 15, '2018-12-11 02:50:18.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1544496620126, 0, 82001, 15, '2018-12-11 02:50:20.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1544503960414, 1537410620002, 1544503822963, 1536805585275, '2018-12-11 04:52:40.000000', '664984'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545527888416, 0, 82001, 1553096819293, '2018-12-23 01:18:08.000000', 'hello'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545527898986, 1545527888416, 82001, 1553096819293, '2018-12-23 01:18:18.000000', 'world'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545527923036, 1545527888416, 82001, 1553096819293, '2018-12-23 01:18:43.000000', '还差还差还差'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545918307310, 0, 82001, 15, '2018-12-27 13:45:07.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545927001999, 1545895875719, 82001, 1553096819293, '2018-12-27 16:10:02.000000', '哦哦哦www'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545961973331, 0, 82001, 15, '2018-12-28 01:52:53.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1546050359778, 0, 82001, 15, '2018-12-29 02:25:59.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1546050386785, 0, 82001, 1516086423441, '2018-12-29 02:26:26.000000', '不鸟你'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1546934145366, 0, 82001, 15, '2019-01-08 07:55:45.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1546935903414, 0, 82001, 15, '2019-01-08 08:25:03.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551061659233, 0, 82001, 15, '2019-02-25 02:27:39.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551080228544, 0, 82001, 1553096819293, '2019-02-25 07:37:08.000000', '几何画板'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551080263524, 0, 82001, 1516086423441, '2019-02-25 07:37:43.000000', '你就看看'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551146130246, 0, 82001, 15, '2019-02-26 01:55:30.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551325753556, 0, 82001, 15, '2019-02-28 03:49:13.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551409858047, 0, 82001, 301, '2019-03-01 03:10:58.000000', '您'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430453424, 0, 82001, 1553096819293, '2019-03-01 08:54:13.000000', '啊啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430465241, 1551430453424, 82001, 1553096819293, '2019-03-01 08:54:25.000000', '123'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430474490, 1551430453424, 82001, 1553096819293, '2019-03-01 08:54:34.000000', '444'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430485689, 1551430453424, 82001, 1553096819293, '2019-03-01 08:54:45.000000', '品牌'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430485828, 0, 82001, 1553096819293, '2019-03-01 08:54:45.000000', '品牌'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430579358, 1516691119239, 82001, 1516086423441, '2019-03-01 08:56:19.000000', '555555'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551683545557, 1490863711703, 82001, 511, '2019-03-04 07:12:25.000000', '科技'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551777156494, 0, 82001, 15, '2019-03-05 09:12:36.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552215780595, 0, 82001, 15, '2019-03-10 11:03:00.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552297994119, 0, 82001, 1512314438990, '2019-03-11 09:53:14.000000', '小米'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552298015880, 1524799118232, 82001, 1512314438990, '2019-03-11 09:53:35.000000', '评论真的假的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552378943273, 0, 82001, 1551251234369, '2019-03-12 08:22:23.000000', '123'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552381508342, 0, 82001, 15, '2019-03-12 09:05:08.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552532948487, 0, 82001, 15, '2019-03-14 03:09:08.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552980434725, 0, 82001, 15, '2019-03-19 07:27:14.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553053346095, 0, 82001, 1553096819293, '2019-03-20 03:42:26.000000', '启'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553053362233, 1551430485689, 82001, 1553096819293, '2019-03-20 03:42:42.000000', '集合vyih'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553065269448, 0, 82001, 1553096819293, '2019-03-20 07:01:09.000000', '3333'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553094325098, 0, 82001, 1550825876665, '2019-03-20 15:05:25.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553095251058, 0, 82001, 1552879777083, '2019-03-20 15:20:51.000000', '1111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553233020780, 0, 82001, 15, '2019-03-22 05:37:00.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553433076832, 0, 82001, 1552879777083, '2019-03-24 13:11:16.000000', 'ggg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553676470274, 0, 82001, 1551184480247, '2019-03-27 08:47:50.000000', 'hhhhhh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553739854431, 0, 82001, 1539868023868, '2019-03-28 02:24:14.000000', '。。。。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553837780458, 0, 82001, 1548145750536, '2019-03-29 05:36:20.000000', '王八蛋'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553837842352, 0, 82001, 1541557989440, '2019-03-29 05:37:22.000000', '小赤佬'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554051650026, 0, 82001, 15, '2019-03-31 17:00:50.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554263554592, 0, 82001, 15, '2019-04-03 03:52:34.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554263558562, 0, 82001, 15, '2019-04-03 03:52:38.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554286215772, 0, 82001, 301, '2019-04-03 10:10:15.000000', 'hjkj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554309729462, 0, 82001, 1554263554668, '2019-04-03 16:42:09.000000', '没有我'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554309735842, 1554309729462, 82001, 1554263554668, '2019-04-03 16:42:15.000000', '哦下午'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554372265517, 0, 82001, 1554263554668, '2019-04-04 10:04:25.000000', '测试'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554373265740, 0, 82001, 543, '2019-04-04 10:21:05.000000', '那你'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554373282941, 0, 82001, 543, '2019-04-04 10:21:22.000000', '。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554374987602, 1554372265517, 82001, 1554263554668, '2019-04-04 10:49:47.000000', '@jj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554548838567, 0, 82001, 1554263558104, '2019-04-06 11:07:18.000000', 'Yyhgy'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554564631059, 0, 82001, 15, '2019-04-06 15:30:31.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554564640129, 0, 82001, 15, '2019-04-06 15:30:40.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554629321427, 0, 82001, 15, '2019-04-07 09:28:41.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554704296003, 0, 82001, 1554564640071, '2019-04-08 06:18:16.000000', '吃'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554707281257, 0, 82001, 1554688976001, '2019-04-08 07:08:01.000000', '要'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554777053552, 0, 82001, 15, '2019-04-09 02:30:53.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554864037995, 0, 82001, 15, '2019-04-10 02:40:37.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554965019923, 0, 82001, 15, '2019-04-11 06:43:39.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554976816197, 0, 82001, 1554688976001, '2019-04-11 10:00:16.000000', '到现在'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555136064488, 0, 82001, 1555080161904, '2019-04-13 06:14:24.000000', '。。。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555136143476, 0, 82001, 1554564639808, '2019-04-13 06:15:43.000000', '。。。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555140354828, 0, 82001, 15, '2019-04-13 07:25:54.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555414582495, 0, 82001, 15, '2019-04-16 11:36:22.000000', '新增一条评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555414840945, 0, 82001, 15, '2019-04-16 11:40:40.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555414849052, 0, 82001, 15, '2019-04-16 11:40:49.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555414888850, 0, 82001, 15, '2019-04-16 11:41:28.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555557851140, 1512035117021, 82001, 32, '2019-04-18 03:24:11.000000', '1545456'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555557860778, 1512035117021, 82001, 32, '2019-04-18 03:24:20.000000', '11564546'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555557868075, 0, 82001, 32, '2019-04-18 03:24:28.000000', '121212312456'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555557877452, 1555557868075, 82001, 32, '2019-04-18 03:24:37.000000', '123121545645'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555572659357, 0, 82001, 15, '2019-04-18 07:30:59.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556073175252, 0, 82001, 1555842172364, '2019-04-24 02:32:55.000000', '卡罗拉'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556088728850, 0, 82001, 1555660645705, '2019-04-24 06:52:08.000000', '啦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556088739682, 0, 82001, 1555842172364, '2019-04-24 06:52:19.000000', '叫姐姐'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556088750041, 1556088739682, 82001, 1555842172364, '2019-04-24 06:52:30.000000', '哼╯^╰'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556109617193, 0, 82001, 15, '2019-04-24 12:40:17.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556179911249, 0, 82001, 1555146101956, '2019-04-25 08:11:51.000000', '莫有样在真'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556179917534, 1556179911249, 82001, 1555146101956, '2019-04-25 08:11:57.000000', '你以为走咯'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556179921272, 1556179911249, 82001, 1555146101956, '2019-04-25 08:12:01.000000', '匿名'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556187596511, 0, 82001, 15, '2019-04-25 10:19:56.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556192437849, 0, 82001, 1555826433407, '2019-04-25 11:40:37.000000', '哈哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556264166448, 0, 82001, 15, '2019-04-26 07:36:06.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556434477631, 0, 82001, 1556416532140, '2019-04-28 06:54:37.000000', '叶圣陶'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556438316917, 0, 82001, 15, '2019-04-28 07:58:36.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556447474223, 0, 82001, 15, '2019-04-28 10:31:14.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556447629955, 0, 82001, 1556447474076, '2019-04-28 10:33:49.000000', '啦啦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556447642188, 0, 82001, 1556447473966, '2019-04-28 10:34:02.000000', '啦啦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556606726466, 0, 82001, 15, '2019-04-30 06:45:26.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556608158926, 0, 82001, 1556607959204, '2019-04-30 07:09:18.000000', '佛祖'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556852777588, 0, 82001, 15, '2019-05-03 03:06:17.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556953335513, 0, 82001, 1556387217941, '2019-05-04 07:02:15.000000', '嘻嘻嘻'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556953340357, 1556953335513, 82001, 1556387217941, '2019-05-04 07:02:20.000000', '额额额'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556987652879, 0, 82001, 15, '2019-05-04 16:34:12.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556987738892, 0, 82001, 15, '2019-05-04 16:35:38.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556988311205, 0, 82001, 15, '2019-05-04 16:45:11.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557024488300, 1556953340357, 82001, 1556387217941, '2019-05-05 02:48:08.000000', '222'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557133819296, 0, 82001, 1555146150581, '2019-05-06 09:10:19.000000', '988'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557239093145, 0, 82001, 15, '2019-05-07 14:24:53.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557254398378, 0, 82002, 15, '2019-05-07 18:39:58.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557254443156, 0, 82001, 15, '2019-05-07 18:40:43.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557254466593, 0, 82001, 15, '2019-05-07 18:41:06.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557254474819, 0, 82001, 15, '2019-05-07 18:41:14.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557367770352, 0, 82001, 1508072633830, '2019-05-09 02:09:30.000000', '哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557396836045, 0, 82001, 15, '2019-05-09 10:13:56.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557415832512, 0, 82001, 15, '2019-05-09 15:30:32.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557707040335, 0, 82001, 1550825876665, '2019-05-13 00:24:00.000000', '帅吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557754720666, 0, 82001, 1557754680146, '2019-05-13 13:38:40.000000', '卧槽(*`へ´*)'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557754765785, 0, 70793, 1557754680146, '2019-05-13 13:39:25.000000', '链接发下'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557754909538, 1557754765785, 82012, 1557754680146, '2019-05-13 13:41:49.000000', 'https://baijiahao.baidu.com/s?id=1633129683262867786&wfr=spider&for=pc&isFailFlag=1'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557838424004, 0, 1508072105320, 1557754680146, '2019-05-14 12:53:44.000000', '666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558059734104, 0, 82001, 15, '2019-05-17 02:22:14.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558059843115, 0, 82001, 15, '2019-05-17 02:24:03.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558150056102, 0, 82001, 1557754680146, '2019-05-18 03:27:36.000000', '哈哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558251372701, 0, 82001, 15, '2019-05-19 07:36:12.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558275517613, 0, 82001, 15, '2019-05-19 14:18:37.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558275862700, 0, 82001, 15, '2019-05-19 14:24:22.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440302601, 0, 82001, 1557415707105, '2019-05-21 12:05:02.000000', '咔咔咔'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440307225, 0, 82001, 1557415707105, '2019-05-21 12:05:07.000000', 'i我看'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440318878, 0, 82001, 1555146144094, '2019-05-21 12:05:18.000000', '哦啊就是计算机'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440335644, 0, 82001, 1557754680146, '2019-05-21 12:05:35.000000', '就是就是觉得奖学金'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440349435, 0, 82001, 1557754680146, '2019-05-21 12:05:49.000000', '解决'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440357141, 1558440335644, 82001, 1557754680146, '2019-05-21 12:05:57.000000', '惊声尖叫额'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558444517410, 0, 82001, 15, '2019-05-21 13:15:17.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559479971167, 0, 82001, 15, '2019-06-02 12:52:51.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559512310810, 0, 82001, 1559479693309, '2019-06-02 21:51:50.000000', 'gggh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559512315277, 1559512310810, 82001, 1559479693309, '2019-06-02 21:51:55.000000', 'ghhh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559531009662, 0, 82001, 15, '2019-06-03 03:03:29.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559532427131, 0, 82001, 15, '2019-06-03 03:27:07.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559533505750, 0, 82001, 15, '2019-06-03 03:45:05.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559533513284, 0, 82001, 15, '2019-06-03 03:45:13.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559553148600, 0, 82001, 1559479693309, '2019-06-03 09:12:28.000000', 'cbnxn'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559570720109, 0, 82001, 1555146144094, '2019-06-03 14:05:20.000000', '你妹'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559616306248, 0, 82001, 15, '2019-06-04 02:45:06.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559617707946, 0, 82001, 15, '2019-06-04 03:08:27.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559628052667, 0, 82001, 1559479693309, '2019-06-04 06:00:52.000000', '发放'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559729189116, 0, 82001, 1559479693309, '2019-06-05 10:06:29.000000', '你真的牛逼'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559731136559, 0, 82001, 15, '2019-06-05 10:38:56.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560090719699, 0, 82001, 15, '2019-06-09 14:31:59.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560168492719, 0, 82001, 15, '2019-06-10 12:08:12.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560239593640, 0, 82001, 1559479693309, '2019-06-11 07:53:13.000000', '11'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560262370938, 0, 82001, 15, '2019-06-11 14:12:50.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560482772803, 0, 82001, 15, '2019-06-14 03:26:12.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560482961067, 0, 82001, 1555842172364, '2019-06-14 03:29:21.000000', '3'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560619772678, 0, 82001, 15, '2019-06-15 17:29:32.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560736990682, 0, 82001, 15, '2019-06-17 02:03:10.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561018625380, 1559512310810, 82001, 1559479693309, '2019-06-20 08:17:05.000000', 'ggggg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561364926819, 0, 82001, 15, '2019-06-24 08:28:46.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561533263049, 1559729189116, 82001, 1559479693309, '2019-06-26 07:14:23.000000', '6666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561630666744, 0, 82001, 15, '2019-06-27 10:17:46.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561949926841, 0, 82001, 15, '2019-07-01 02:58:46.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561975421299, 1555136064488, 82001, 1555080161904, '2019-07-01 10:03:41.000000', '是不是'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562134664290, 0, 82001, 15, '2019-07-03 06:17:44.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562226345097, 0, 82001, 15, '2019-07-04 07:45:45.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562248764054, 1559729189116, 82001, 1559479693309, '2019-07-04 13:59:24.000000', 'fdd'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562307396087, 0, 82001, 1559479693309, '2019-07-05 06:16:36.000000', '我顶我顶'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562392250526, 0, 82001, 1559479693309, '2019-07-06 05:50:50.000000', '发个方 +刚刚方法'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562392269174, 1559512310810, 82001, 1559479693309, '2019-07-06 05:51:09.000000', '古古怪怪'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562392274283, 1559553148600, 82001, 1559479693309, '2019-07-06 05:51:14.000000', '工业园'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562392278403, 1562307396087, 82001, 1559479693309, '2019-07-06 05:51:18.000000', '凤阳花鼓'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562495721307, 0, 82001, 15, '2019-07-07 10:35:21.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562662400473, 0, 82001, 15, '2019-07-09 08:53:20.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562684469790, 0, 82001, 1559125514307, '2019-07-09 15:01:09.000000', '发广告'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562684482831, 1562684469790, 82001, 1559125514307, '2019-07-09 15:01:22.000000', '厉害厉害'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562684488544, 0, 82001, 1559125514307, '2019-07-09 15:01:28.000000', '发过火'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562736873122, 1534926143012, 82001, 1508053762227, '2019-07-10 05:34:33.000000', '早睡早起'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562814013816, 0, 82001, 1562556720665, '2019-07-11 03:00:13.000000', 'xxxx'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562814021942, 1562814013816, 82001, 1562556720665, '2019-07-11 03:00:21.000000', 'xxxx'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1563506794618, 0, 82001, 15, '2019-07-19 03:26:34.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1563641514400, 0, 82001, 1563605336326, '2019-07-20 16:51:54.000000', '年轻人不要想不开'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570199485130, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570357593954, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570357613617, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570524542455, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570611593196, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570611884292, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127141506, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127146874, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127152654, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127171390, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127176972, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127182660, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127220673, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127225286, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127230152, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127564313, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127568513, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127573536, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127695250, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127699686, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127704277, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127720172, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127724383, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127728638, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601132118675, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1612038997561, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1612039188938, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666289476337, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666289803266, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666291059727, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666291199887, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666291252192, 0, 82001, 15, null, '测试新增评论'); diff --git a/DuckDB/single/sys_Document.sql b/DuckDB/single/sys_Document.sql new file mode 100644 index 0000000..04537e2 --- /dev/null +++ b/DuckDB/single/sys_Document.sql @@ -0,0 +1,21996 @@ +create table "Document" +( + id bigint, + debug smallint, + "userId" bigint, + "testAccountId" bigint, + version smallint, + name varchar(100), + type varchar(5), + url varchar(250), + request text, + apijson text, + sqlauto text, + standard text, + header text, + date timestamp, + detail text +); + + +comment on column "Document".id is '唯一标识'; + +comment on column "Document"."userId" is '用户id + 应该用adminId,只有当登录账户是管理员时才能操作文档。 + 需要先建Admin表,新增登录等相关接口。'; + +comment on column "Document".version is '接口版本号 + <=0 - 不限制版本,任意版本都可用这个接口 + >0 - 在这个版本添加的接口'; + +comment on column "Document".name is '接口名称'; + +comment on column "Document".url is '请求地址'; + +comment on column "Document".request is '请求 + 用json格式会导致强制排序,而请求中引用赋值只能引用上面的字段,必须有序。'; + +comment on column "Document".response is '标准返回结果JSON + 用json格式会导致强制排序,而请求中引用赋值只能引用上面的字段,必须有序。'; + +comment on column "Document".header is '请求头 Request Header: key: value //注释'; + +comment on column "Document".date is '创建时间'; + +comment on column "Document".apijson is '从 request 映射为实际的 APIJSON 请求 JSON'; + +comment on column "Document".type is 'PARAM - GET url parameters,\nFORM - POST application/www-x-form-url-encoded,\nJSON - POST application/json'; + +comment on column "Document".sqlauto is '用于 SQLAuto 测试的 SQL 语句'; + + + +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1, 0, 82001, 82001, 1, '登录', 'JSON', '/login', '{ + "type": 0, + "phone": "13000082001", + "password": "123456", + "version": 1, + "remember": false +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "type": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ], + "comment": "请求方式 0-密码 1-验证码", + "trend": { + "top": 3 + } + }, + "phone": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ], + "comment": "手机号" + }, + "password": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ], + "comment": "登录密码或验证码" + }, + "version": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ], + "comment": "版本号", + "trend": { + "top": 3 + } + }, + "remember": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + false + ], + "lengthLevel": 1, + "lengths": [], + "comment": "是否记住登录" + } + } + ] +}', '', '2017-11-26 15:35:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (2, 0, 82001, 0, 1, '注册(先获取验证码type:1)', 'JSON', '/register', '{ + "Privacy": { + "phone": 13000083333, + "_password": "123456" + }, + "User": { + "name": "APIJSONUser" + }, + "verify": "6840" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Privacy": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "phone": { + "notnull": true, + "type": "integer", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ], + "comment": "手机号" + }, + "_password": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ], + "comment": "用户隐私信息" + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "name": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ], + "comment": "用户常规信息" + }, + "verify": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ], + "comment": "验证码,需要先调用接口 /post/verify" + } + } + ] +}', '', '2017-11-26 15:35:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (3, 0, 82001, 0, 1, '退出登录', 'JSON', '/logout', '{}', null, null, null, null, '2017-11-26 17:56:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511689914599, 0, 82001, 0, 1, '获取用户隐私信息', 'JSON', '/gets', '{"tag": "Privacy", "Privacy": {"id": 82001}}', null, null, null, null, '2017-11-26 17:51:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796155276, 0, 82001, 0, 1, '获取验证码', 'JSON', '/post/verify', '{ + "type": 0, + "phone": "13000082001" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "type": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [], + "comment": "类型: 0-登录 1-注册 2-修改登录密码 3-修改支付密码" + }, + "phone": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ], + "comment": "手机号" + } + } + ] +}', '', '2017-11-27 23:23:28.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796208671, 0, 82001, 0, 1, '检查验证码是否存在', 'JSON', '/heads/verify', '{ + "type": 0, + "phone": "13000082001" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "type": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ], + "comment": "类型: 0-登录 1-注册 2-修改登录密码 3-修改支付密码" + }, + "phone": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ], + "comment": "手机号" + } + } + ] +}', '', '2017-11-27 23:23:28.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796589078, 0, 82001, 82001, 1, '修改登录密码(先获取验证码type:2)-手机号+验证码', 'JSON', '/put/password', '{ + "verify": "10322", + "Privacy": { + "phone": "13000082001", + "_password": "666666" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "verify": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "comment": "验证码,需要先调用接口 /post/verify" + }, + "Privacy": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "phone": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "_password": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ] + } + } + ] +}', '', '2017-11-27 23:23:28.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796882184, 0, 82001, 82001, 1, '充值(需要支付密码)/提现', 'JSON', '/put/balance', '{"tag": "Privacy", "Privacy": {"id": 82001, "balance+": 100.15, "_payPassword": "123456"}}', null, null, null, null, '2017-11-27 23:34:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511969417633, 0, 82001, 82001, 1, '点赞/取消点赞', 'JSON', '/put', '{ + "Moment": { + "id": 15, + "praiseUserIdList-": [ + 82001 + ] + }, + "tag": "Moment" +}', null, null, null, null, '2017-11-29 23:30:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511969630372, 0, 82001, 82001, 1, '新增评论', 'JSON', '/post', '{ "Comment": { "momentId": 15, "content": "测试新增评论" }, "tag": "Comment" }', null, null, null, null, '2017-11-29 23:33:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511970009072, 0, 82001, 82001, 1, '新增动态', 'JSON', '/post', '{ "Moment": { "content": "测试新增动态", "pictureList": ["http://static.oschina.net/uploads/user/48/96331_50.jpg" ] }, "tag": "Moment" }', null, null, null, null, '2017-11-29 23:40:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901518765, 0, 88888, 0, 2, '功能符(对象关键词): ⑤从pictureList获取第0张图片:', 'JSON', '/get', '{ "User": { "id": 38710, "@position": 0, "firstPicture()": "getFromArray(pictureList,@position)" } }', null, null, null, null, '2018-03-24 22:25:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901610784, 0, 88888, 0, 2, '功能符(对象关键词): ④查询 按userId分组、id最大值>=100 的Moment数组', 'JSON', '/get', '{ + "[]": { + "count": 10, + "Moment": { + "@column": "userId;max(id):maxId", + "@group": "userId", + "@having": "(maxId)>=100" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 10 + ], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 20 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 12 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2018-03-24 22:26:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901682846, 0, 88888, 0, 2, '功能符(对象关键词): ③查询按userId分组的Moment数组', 'JSON', '/get', '{"[]":{"count":10,"Moment":{"@column":"userId,id","@group":"userId,id"}}}', null, null, null, null, '2018-03-24 22:28:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901746809, 0, 88888, 0, 2, '功能符(对象关键词): ②查询按 name降序、id默认顺序 排序的User数组', 'JSON', '/get', '{"[]":{"count":10,"User":{"@column":"name,id","@order":"name-,id"}}}', null, null, null, null, '2018-03-24 22:29:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901787203, 0, 88888, 0, 2, '功能符(对象关键词): ①只查询id,sex,name这几列并且请求结果也按照这个顺序', 'JSON', '/get', '{"User":{"@column":"id,sex,name","id":38710}}', null, null, null, null, '2018-03-24 22:29:47.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521902033332, 0, 88888, 0, 2, '功能符(数组关键词): ③查询User数组和对应的User总数', 'JSON', '/get', '{"[]":{"query":2,"count":5,"User":{}},"total@":"/[]/total"}', null, null, null, null, '2018-03-24 22:33:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521902069871, 0, 88888, 0, 2, '功能符(数组关键词): ②查询第3页的User数组,每页5个', 'JSON', '/get', '{"[]":{"count":5,"page":3,"User":{}}}', null, null, null, null, '2018-03-24 22:34:29.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521902110680, 0, 88888, 0, 2, '功能符(数组关键词): ①查询User数组,最多5个', 'JSON', '/get', '{"[]":{"count":5,"User":{}}}', null, null, null, null, '2018-03-24 22:35:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521903761689, 0, 88888, 0, 2, '功能符(逻辑运算): ③ ! 非运算', 'JSON', '/head', '{"User":{"id!{}":[82001,38710]}}', null, null, null, null, '2018-03-24 23:02:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521903828410, 0, 88888, 0, 2, '功能符(逻辑运算): ② | 或运算', 'JSON', '/head', '{"User":{"id|{}":">90000,<=80000"}}', null, null, null, null, '2018-03-24 23:03:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521903882830, 0, 88888, 0, 2, '功能符(逻辑运算): ① & 与运算', 'JSON', '/head', '{"User":{"id&{}":">80000,<=90000"}}', null, null, null, null, '2018-03-24 23:04:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904098111, 0, 88888, 0, 2, '功能符: 减少 或 去除', 'JSON', '/put/balance', '{ + + "Privacy": { + "id": 82001, + "balance+": -100, + "_payPassword": "123456" + },"tag": "Privacy" +}', null, null, null, null, '2018-03-24 23:08:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904162066, 0, 88888, 0, 2, '功能符: 增加 或 扩展', 'JSON', '/put', '{ + "Moment": { + "id": 15, + "praiseUserIdList+": [ + 82001 + ] + }, + "tag": "Moment" +}', null, null, null, null, '2018-03-24 23:09:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904337054, 0, 88888, 0, 2, '功能符: 新建别名', 'JSON', '/get', '{"Comment":{"@column":"id,toId:parentId","id":51}}', null, null, null, null, '2018-03-24 23:12:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904394042, 0, 88888, 0, 2, '功能符: 正则匹配', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name~":"^[0-9]+$"}}}', null, null, null, null, '2018-03-24 23:13:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904437584, 0, 88888, 0, 2, '功能符: 模糊搜索', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name$":"%m%"}}}', null, null, null, null, '2018-03-24 23:13:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904547992, 0, 88888, 0, 2, '功能符: 引用赋值', 'JSON', '/get', '{"Moment":{ + "userId":38710 +}, +"User":{ + "id@":"/Moment/userId" +}}', null, null, null, null, '2018-03-24 23:15:47.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904617127, 0, 88888, 0, 2, '功能符: 远程调用函数', 'JSON', '/get', '{ "Moment": { "id": 301, "@column": "userId,praiseUserIdList", "isPraised()": "isContain(praiseUserIdList,userId)" } }', null, null, null, null, '2018-03-24 23:16:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904653622, 0, 88888, 0, 2, '功能符: 包含选项范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"contactIdList<>":38710}}}', null, null, null, null, '2018-03-24 23:17:33.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904698935, 0, 88888, 0, 2, '功能符: 匹配条件范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"id{}":"<=80000,>90000"}}}', null, null, null, null, '2018-03-24 23:18:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904756674, 0, 88888, 0, 2, '功能符: 查询数组', 'JSON', '/get', '{"User[]":{"count":3,"User":{}}}', null, null, null, null, '2018-03-24 23:19:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905263828, 0, 88888, 82001, 2, '操作方法(DELETE): 删除数据', 'JSON', '/delete', '{ + "Moment":{ + "id":120 + }, + "tag":"Moment" +}', null, null, null, null, '2018-03-24 23:27:43.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905599150, 0, 88888, 82001, 2, '操作方法(PUT): 修改数据,只修改所传的字段', 'JSON', '/put', '{ + "Moment":{ + "id":235, + "content":"APIJSON,let interfaces and documents go to hell !" + }, + "tag":"Moment" +}', null, null, null, null, '2018-03-24 23:33:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905680680, 0, 88888, 82001, 2, '操作方法(POST): 新增数据', 'JSON', '/post', '{ "Moment": { "content": "APIJSON,let interfaces and documents go to hell !" }, "tag": "Moment" }', null, null, null, null, '2018-03-24 23:34:40.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905787850, 0, 88888, 82001, 2, '操作方法(HEADS): 安全/私密获取数量,用于获取银行卡数量等 对安全性要求高的数据总数', 'JSON', '/heads', '{ + "Login": { + "userId": 38710,"type":1 + }, + "tag": "Login" +}', null, null, null, null, '2018-03-24 23:36:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905868719, 0, 88888, 82001, 2, '操作方法(GETS): 安全/私密获取数据,用于获取钱包等 对安全性要求高的数据', 'JSON', '/gets', '{ + "Privacy": { + "id": 82001 + }, + "tag": "Privacy" +}', null, null, null, null, '2018-03-24 23:37:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905895591, 0, 88888, 82001, 2, '操作方法(HEAD): 普通获取数量,可用浏览器调试', 'JSON', '/head', '{ + "Moment":{ + "userId":38710 + } +}', null, null, null, null, '2018-03-24 23:38:15.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905913188, 0, 88888, 82001, 2, '操作方法(GET): 普通获取数据,可用浏览器调试', 'JSON', '/get', '{ + "Moment":{ + "id":235 + } +}', null, null, null, null, '2018-03-24 23:38:33.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521906240332, 0, 88888, 0, 2, 'User发布的Moment列表,每个Moment包括 1.发布者User 2.前3条Comment: ③不查已获取的User', 'JSON', '/get', '{ + "[]":{ + "page":0, + "count":3, + "Moment":{ + "userId":38710 + }, + "Comment[]":{ + "count":3, + "Comment":{ + "momentId@":"[]/Moment/id" + } + } + } +}', null, null, null, null, '2018-03-24 23:44:00.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521906265960, 0, 88888, 0, 2, 'User发布的Moment列表,每个Moment包括 1.发布者User 2.前3条Comment: ②省去重复的User', 'JSON', '/get', '{ + "User":{ + "id":38710 + }, + "[]":{ + "page":0, + "count":3, + "Moment":{ + "userId":38710 + }, + "Comment[]":{ + "count":3, + "Comment":{ + "momentId@":"[]/Moment/id" + } + } + } +}', null, null, null, null, '2018-03-24 23:44:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521906517001, 0, 88888, 0, 2, 'User发布的Moment列表,每个Moment包括 1.发布者User 2.前3条Comment: ①指定id', 'JSON', '/get', '{ + "[]": { + "page": 0, + "count": 3, + "Moment":{"userId":38710}, "User":{"id":38710} , + "Comment[]": { + "count": 3, + "Comment": { + "momentId@": "[]/Moment/id" + } + } + } +}', null, null, null, null, '2018-03-24 23:48:37.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907009308, 0, 88888, 0, 2, 'Moment列表,每个Moment包括 1.发布者User 2.前3条Comment', 'JSON', '/get', '{ + "[]":{ + "page":0, + "count":3, + "Moment":{}, + "User":{ + "id@":"/Moment/userId" + }, + "Comment[]":{ + "count":3, + "Comment":{ + "momentId@":"[]/Moment/id" + } + } + } +}', null, null, null, null, '2018-03-24 23:56:49.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907303540, 0, 88888, 0, 2, 'User列表', 'JSON', '/get', '{ + "User[]":{ + "page":0, + "count":3, + "User":{ + "sex":0 + } + } +}', null, null, null, null, '2018-03-25 00:01:43.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907317871, 0, 88888, 0, 2, 'Moment和对应的User', 'JSON', '/get', '{ + "Moment":{ + "userId":38710 + }, + "User":{ + "id":38710 + } +}', null, null, null, null, '2018-03-25 00:01:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333041, 0, 88888, 0, 2, 'User', 'JSON', '/get', '{ + "User":{ + "id":38710 + } +}', null, null, null, null, '2018-03-25 00:02:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333043, 0, 88888, 82002, 3, '微信个人资料-用户信息+最近3个有照片的动态的第0张照片', 'JSON', '/get', '{ + "User": { + "id": 82002 + }, + "Moment-firstPicture[]": { + "count": 3, + "Moment": { + "userId@": "User/id", + "@column": "pictureList", + "@having": "json_length(pictureList)>0", + "firstPicture()": "getFromArray(pictureList,0)" + } + } +}', null, null, null, null, '2018-03-25 00:03:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544884206003, 0, 88888, 0, 3, 'Moment@User each with condition', 'JSON', '/get', '{ "[]": { "join": "@/User/id@", "Moment": { "content~": "a", "@column": "id,userId,content" }, "User": { "sex": 1, "@column": "id,name", "id@": "/Moment/userId" } } }', null, null, null, null, '2018-12-15 22:13:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546881887523, 0, 82001, 82001, 1, '子查询 WHERE id=(SELECT min(userId) FROM Comment)', 'JSON', '/get', '{ + "User": { + "id@": { + "from": "Comment", + "Comment": { + "@column": "min(userId)" + } + } + } +}', null, null, null, null, '2018-02-24 22:28:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333044, 0, 82001, 82002, 3, '微信个人资料-用户信息+最近3个有照片的动态的第0张照片', 'JSON', '/get', '{ + "User": { + "id": 82002 + }, + "Moment-firstPicture[]": { + "count": 3, + "Moment": { + "userId@": "User/id", + "@column": "userId,pictureList", + "@having": "json_length(pictureList)>0", + "firstPicture()": "getFromArray(pictureList,0)" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82002 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "trend": { + "top": 1 + } + } + } + ] + }, + "Moment-firstPicture[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 3 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ], + "trend": { + "top": 1 + } + }, + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 26 + ] + }, + "firstPicture()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 27 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2018-03-25 00:03:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333046, 0, 88888, 0, 2, '获取粉丝的动态列表', 'JSON', '/get', '{ "Moment[]": { "join": "&/User/id@", "Moment": {}, "User": { "id@": "/Moment/userId", "contactIdList<>": 82001, "@column": "id" } } }', null, null, null, null, '2018-03-25 00:03:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907546129, 0, 88888, 0, 2, '获取类似微信朋友圈的动态列表', 'JSON', '/get', '{ + "[]": { + "page": 0, + "count": 2, + "Moment": { + "content$": "%a%" + }, + "User": { + "id@": "/Moment/userId", + "@column": "id,name,head" + }, + "Comment[]": { + "count": 2, + "Comment": { + "momentId@": "[]/Moment/id" + } + } + } +}', null, null, null, null, '2018-03-25 00:05:46.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907570452, 0, 88888, 0, 2, '获取动态及发布者用户', 'JSON', '/get', '{ + "Moment": {}, + "User": { + "id@": "Moment/userId" + } +}', null, null, null, null, '2018-03-25 00:06:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907587430, 0, 88888, 0, 2, '获取用户列表', 'JSON', '/get', '{ + "[]": { + "count": 3, + "User": { + "@column": "id,name" + } + } +}', null, null, null, null, '2018-03-25 00:06:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907601299, 0, 88888, 0, 2, '获取用户', 'JSON', '/get', '{ + "User":{ + } +}', null, null, null, null, '2018-03-25 00:06:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905263828, 0, 82001, 0, 2, '操作方法(DELETE): 删除数据', 'JSON', '/delete', '{ + "Moment":{ + "id":120 + }, + "tag":"Moment" +}', null, null, null, null, '2018-03-24 21:27:43.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905599150, 0, 82001, 0, 2, '操作方法(PUT): 修改数据,只修改所传的字段', 'JSON', '/put', '{ + "Moment":{ + "id":235, + "content":"APIJSON,let interfaces and documents go to hell !" + }, + "tag":"Moment" +}', null, null, null, null, '2018-03-24 21:33:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905680680, 0, 82001, 0, 2, '操作方法(POST): 新增数据', 'JSON', '/post', '{ "Moment": { "content": "APIJSON,let interfaces and documents go to hell !" }, "tag": "Moment" }', null, null, null, null, '2018-03-24 21:34:40.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905787850, 0, 82001, 0, 2, '操作方法(HEADS): 安全/私密获取数量,用于获取银行卡数量等 对安全性要求高的数据总数', 'JSON', '/heads', '{ + "Login": { + "userId": 38710,"type":1 + }, + "tag": "Login" +}', null, null, null, null, '2018-03-24 21:36:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905868719, 0, 82001, 0, 2, '操作方法(GETS): 安全/私密获取数据,用于获取钱包等 对安全性要求高的数据', 'JSON', '/gets', '{ + "Privacy": { + "id": 82001 + }, + "tag": "Privacy" +}', null, null, null, null, '2018-03-24 21:37:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905895591, 0, 82001, 0, 2, '操作方法(HEAD): 普通获取数量,可用浏览器调试', 'JSON', '/head', '{ + "Moment":{ + "userId":38710 + } +}', null, null, null, null, '2018-03-24 21:38:15.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905913188, 0, 82001, 0, 2, '操作方法(GET): 普通获取数据,可用浏览器调试', 'JSON', '/get', '{ + "Moment":{ + "id":235 + } +}', null, null, null, null, '2018-03-24 21:38:33.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544881887527, 0, 88888, 0, 3, 'Moment INNER JOIN User LEFT JOIN Comment', 'JSON', '/get', '{ + "[]": { + "count": 10, + "page": 0, + "join": "&/User/id@,User each with condition', 'JSON', '/get', '{ + "[]": { + "join": ">/User/id@", + "Moment": { + "content~": "a", + "@column": "id,userId,content" + }, + "User": { + "sex": 1, + "@column": "id,name", + "id@": "/Moment/userId" + } + } +}', null, null, null, null, '2018-12-15 22:14:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544883278939, 0, 88888, 0, 3, 'Moment@User each with condition', 'JSON', '/get', '{ + "[]": { + "join": "@/User/id@", + "Moment": { + "content~": "a", + "@column": "id,userId,content" + }, + "User": { + "sex": 1, + "@column": "id,name", + "id@": "/Moment/userId" + } + } +}', null, null, null, null, '2018-12-15 22:14:38.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544883352884, 0, 88888, 0, 3, 'Moment90000,<=80000"}}', null, null, null, null, '2018-03-24 23:03:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546903882830, 0, 82001, 0, 2, '功能符(逻辑运算): ① & 与运算', 'JSON', '/head', '{"User":{"id&{}":">80000,<=90000"}}', null, null, null, null, '2018-03-24 23:04:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904098111, 0, 82001, 82001, 2, '功能符: 减少 或 去除', 'JSON', '/put/balance', '{ + + "Privacy": { + "id": 82001, + "balance+": -100, + "_payPassword": "123456" + },"tag": "Privacy" +}', null, null, null, null, '2018-03-24 23:08:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837054, 0, 1490109742863, 0, 3, 'getSfaDealerStoreList', 'JSON', '/dms/dealer_store_list/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904162066, 0, 82001, 82001, 2, '功能符: 增加 或 扩展', 'JSON', '/put', '{ + "Moment": { + "id": 15, + "praiseUserIdList+": [ + 82001 + ] + }, + "tag": "Moment" +}', null, null, null, null, '2018-03-24 23:09:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904337054, 0, 82001, 0, 2, '功能符: 新建别名', 'JSON', '/get', '{"Comment":{"@column":"id,toId:parentId","id":51}}', null, null, null, null, '2018-03-24 23:12:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904394042, 0, 82001, 0, 2, '功能符: 正则匹配', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name~":"^[0-9]+$"}}}', null, null, null, null, '2018-03-24 23:13:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904437584, 0, 82001, 0, 2, '功能符: 模糊搜索', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name$":"%m%"}}}', null, null, null, null, '2018-03-24 23:13:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904547992, 0, 82001, 0, 2, '功能符: 引用赋值', 'JSON', '/get', '{"Moment":{ + "userId":38710 +}, +"User":{ + "id@":"/Moment/userId" +}}', null, null, null, null, '2018-03-24 23:15:47.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904617127, 0, 82001, 0, 2, '功能符: 远程调用函数', 'JSON', '/get', '{ "Moment": { "id": 301, "@column": "userId,praiseUserIdList", "isPraised()": "isContain(praiseUserIdList,userId)" } }', null, null, null, null, '2018-03-24 23:16:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904653622, 0, 82001, 0, 2, '功能符: 包含选项范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"contactIdList<>":38710}}}', null, null, null, null, '2018-03-24 23:17:33.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904698935, 0, 82001, 0, 2, '功能符: 匹配条件范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"id{}":"<=80000,>90000"}}}', null, null, null, null, '2018-03-24 23:18:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904756674, 0, 82001, 0, 2, '功能符: 查询数组', 'JSON', '/get', '{"User[]":{"count":3,"User":{}}}', null, null, null, null, '2018-03-24 23:19:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546907333046, 0, 82001, 0, 1, '获取粉丝的动态列表', 'JSON', '/get', '{ "Moment[]": { "join": "&/User/id@", "Moment": {}, "User": { "id@": "/Moment/userId", "contactIdList<>": 82001, "@column": "id" } } }', null, null, null, null, '2018-03-25 00:03:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1547401498195, 0, 88888, 0, 1, '子查询FROM和IN', 'JSON', '/get', '{ + "sql@": { + "from": "Comment", + "Comment": { + "momentId": 12, + "@column": "userId", + "@group": "userId" + } + }, + "Comment-userId[]": { + "Comment": { + "@from@": "sql" + } + }, + "[]": { + "User": { + "id{}@": "sql", + "sex": 1, + "@column": "id,sex,name" + } + } + }', null, null, null, null, '2019-01-14 01:44:58.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385621907, 0, 82001, 0, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ + "subquery@": { + "from": "Comment", + "Comment": { + "momentId": 15, + "@column": "userId" + } + }, + "User[]": { + "User": { + "id{}@": "subquery", + "@column": "id,sex,name" + } + }, + "[]": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": false, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id{}@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "momentId": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 15 + ], + "lengthLevel": 1, + "lengths": [] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ] + } + } + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "subquery@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "momentId": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 15 + ], + "lengthLevel": 1, + "lengths": [] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ] + } + } + ] + }, + "User[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id{}@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2018-02-24 22:28:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385621908, 0, 88888, 0, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ + "subquery@": { + "from": "Comment", + "Comment": { + "momentId": 15, + "@column": "userId" + } + }, + "[]": { + "User": { + "id{}@": "subquery", + "@column": "id,sex,name" + } + } +}', null, null, null, null, '2018-02-24 22:28:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385677607, 0, 82001, 0, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ + "subquery@": { + "from": "Comment", + "Comment": { + "momentId": 15, + "@column": "userId" + } + }, + "[]": { + "User": { + "id}{@": "subquery", + "@column": "id,sex,name" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id}{@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "momentId": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 15 + ], + "lengthLevel": 1, + "lengths": [] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ] + } + } + ], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "subquery@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "momentId": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 15 + ], + "lengthLevel": 1, + "lengths": [] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2018-02-24 22:28:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385677608, 0, 88888, 0, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ + "subquery@": { + "from": "Comment", + "Comment": { + "momentId": 15, + "@column": "userId" + } + }, + "[]": { + "User": { + "id}{@": "subquery", + "@column": "id,sex,name" + } + } +}', null, null, null, null, '2018-02-24 22:28:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1558944411696, 0, 82001, 82001, 3, '关联查询 Comment.userId = User.id', 'JSON', '/get', '{ + "User": { + "id": 82001 + }, + "[]": { + "Comment": { + "userId@": "User/id" + } + } +}', null, null, null, null, '2019-05-27 16:06:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1559995734352, 0, 82001, 0, 3, 'get 自定义关键词和远程函数的应用', 'JSON', '/get', '{ + "User": { + "id": 82001, + "@column": "contactIdList", + "@value": 82006, + "isPraise()": "isContain(contactIdList,@value)" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "trend": { + "top": 4 + }, + "comment": "主键" + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "@value": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82006 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "trend": { + "top": 4 + }, + "comment": "自定义关键词" + }, + "isContect()": { + "notnull": false, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 31 + ] + }, + "isPraise()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 31 + ] + } + } + ] + } + } + ] +}', '', '2019-06-08 20:08:54.000000', ' +1、获取User表中的id==82001的数据块; +2、获取contactIdList列中的数据; +3、设定自定义关键词和值"@value": 82006; +4、调用远程函数isContain判断 contactIdList 中是否存在值为82006的id; +5、判断结果看 isContect的值。'); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1560075285563, 0, 82001, 0, 3, 'Comment JOIN User', 'JSON', '/get', '{ + "[]": { + "join": "0",...', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634864, 0, 1564369325432, 0, 2, '操作方法(DELETE): 删除数据', 'JSON', '/delete', '{ + "Moment":{ + "id":120 + }, + "tag":"Moment" + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634865, 0, 1564369325432, 0, 2, '操作方法(PUT): 修改数据,只修改所传的字段', 'JSON', '/put', '{ + "Moment":{ + "id":235, + "content":"APIJSON,let interfaces and documents go to hell !" + }, + "tag":"Moment" + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634866, 0, 1564369325432, 0, 2, '操作方法(POST): 新增数据', 'JSON', '/post', '{ "Moment": { "content": "APIJSON,let interfaces and documents go to hell !" }, "tag": "Moment" }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634867, 0, 1564369325432, 0, 2, '操作方法(HEADS): 安全/私密获取数量,用于获取银行卡数量等 对安全性要求高的数据总数', 'JSON', '/heads', '{ + "Login": { + "userId": 38710,"type":1 + }, + "tag": "Login" + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634868, 0, 1564369325432, 0, 2, '操作方法(GETS): 安全/私密获取数据,用于获取钱包等 对安全性要求高的数据', 'JSON', '/gets', '{ + "Privacy": { + "id": 82001 + }, + "tag": "Privacy" + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634869, 0, 1564369325432, 0, 2, '操作方法(HEAD): 普通获取数量,可用浏览器调试', 'JSON', '/head', '{ + "Moment":{ + "userId":38710 + } + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634870, 0, 1564369325432, 0, 2, '操作方法(GET): 普通获取数据,可用浏览器调试', 'JSON', '/get', '{ + "Moment":{ + "id":235 + } + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634871, 0, 1564369325432, 82001, 3, '获取类似微信朋友圈的动态列表', 'JSON', '/get', '{ + "[]": { + "page": 0, + "count": 2, + "Moment": { + "content$": "%a%" + }, + "User": { + "id@": "/Moment/userId", + "@column": "id,name,head" + }, + "Comment[]": { + "...', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634872, 0, 1564369325432, 82001, 3, '获取动态及发布者用户', 'JSON', '/get', '{ + "Moment": {}, + "User": { + "id@": "Moment/userId" + } + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634873, 0, 1564369325432, 82001, 3, '获取用户列表', 'JSON', '/get', '{ + "[]": { + "count": 3, + "User": { + "@column": "id,name" + } + } + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634874, 0, 1564369325432, 82001, 3, '获取用户', 'JSON', '/get', '{ + "User":{ + } + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634875, 0, 1564369325432, 82001, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ + "[]": { + "User": { + "id{}@": { + "from": "Comment", + "Comment": { + "momentId": 15, + "@column": "userId" + } + }, + "@column": "id...', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634876, 0, 1564369325432, 82001, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ + "[]": { + "User": { + "id}{@": { + "from": "Comment", + "Comment": { + "momentId": 15, + "@column": "userId" + } + }, + "@column": "id...', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634877, 0, 1564369325432, 82001, 1, '子查询 WHERE id=(SELECT min(userId) FROM Comment)', 'JSON', '/get', '{ + "User": { + "id@": { + "from": "Comment", + "Comment": { + "@column": "min(userId)" + } + } + } + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847049, 0, 1490109742863, 0, 3, 'test2', 'PARAM', '/test/test2', '{ +}', null, null, null, null, '2022-02-09 15:47:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634883, 0, 1564369325432, 0, 1, 'Comment INNER JOIN User', 'JSON', '/get', '{ + "[]": { + "join": "&/User/id@", + "Comment": { + "content~": "a", + "@order": "date-" + }, + "User": { + "name~": [ + "a", + "t" + ], + "@column":...', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634884, 0, 1564369325432, 0, 1, 'Moment APP JOIN User', 'JSON', '/get', '{ + "[]": { + "join": "@/User/id@", + "Moment": { + "@column": "id,userId,content" + }, + "User": { + "@column": "id,name", + "id@": "/Moment/userId" + } + } + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634885, 0, 1564369325432, 0, 1, 'Comment APP JOIN User', 'JSON', '/get', '{ + "[]": { + "join": "@/User/id@", + "Comment": { + "content~": "a", + "@order": "date-" + }, + "User": { + "name~": [ + "a", + "t" + ], + "@column":...', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634886, 0, 1564369325432, 0, 1, '朋友圈 LEFT JOIN', 'JSON', '/get', '{ + "[]": { + "count": 5, + "page": 0, + "join": "90000,<=80000"}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634893, 0, 1564369325432, 0, 2, '功能符(逻辑运算): ① & 与运算', 'JSON', '/head', '{"User":{"id&{}":">80000,<=90000"}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634894, 0, 1564369325432, 82001, 2, '功能符: 减少 或 去除', 'JSON', '/put/balance', '{ + + "Privacy": { + "id": 82001, + "balance+": -100, + "_payPassword": "123456" + },"tag": "Privacy" + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634895, 0, 1564369325432, 82001, 2, '功能符: 增加 或 扩展', 'JSON', '/put', '{ + "Moment": { + "id": 15, + "praiseUserIdList+": [ + 82001 + ] + }, + "tag": "Moment" + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634896, 0, 1564369325432, 0, 2, '功能符: 新建别名', 'JSON', '/get', '{"Comment":{"@column":"id,toId:parentId","id":51}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634897, 0, 1564369325432, 0, 2, '功能符: 正则匹配', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name~":"^[0-9]+$"}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634898, 0, 1564369325432, 0, 2, '功能符: 模糊搜索', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name$":"%m%"}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634899, 0, 1564369325432, 0, 2, '功能符: 引用赋值', 'JSON', '/get', '{"Moment":{ + "userId":38710 + }, + "User":{ + "id@":"/Moment/userId" + }}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634900, 0, 1564369325432, 0, 2, '功能符: 远程调用函数', 'JSON', '/get', '{ "Moment": { "id": 301, "@column": "userId,praiseUserIdList", "isPraised()": "isContain(praiseUserIdList,userId)" } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634901, 0, 1564369325432, 0, 2, '功能符: 包含选项范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"contactIdList<>":38710}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634902, 0, 1564369325432, 0, 2, '功能符: 匹配条件范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"id{}":"<=80000,>90000"}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634903, 0, 1564369325432, 0, 2, '功能符: 查询数组', 'JSON', '/get', '{"User[]":{"count":3,"User":{}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634904, 0, 1564369325432, 0, 1, '获取粉丝的动态列表', 'JSON', '/get', '{ "Moment[]": { "join": "&/User/id@", "Moment": {}, "User": { "id@": "/Moment/userId", "contactIdList<>": 82001, "@column": "id" } } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634905, 0, 1564369325432, 82001, 3, 'get test', 'JSON', '/get', '{ + "User": { + "id": 82001 + }, + "[]": { + "Comment": { + "userId@": "User/id" + } + } + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634906, 0, 1564369325432, 0, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ + "subquery@": { + "from": "Comment", + "Comment": { + "momentId": 15, + "@column": "userId" + } + }, + "[]": { + "User": { + "id{}@": "subquery", + "@column": "id,sex,name" + ...', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634907, 0, 1564369325432, 0, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ + "subquery@": { + "from": "Comment", + "Comment": { + "momentId": 15, + "@column": "userId" + } + }, + "[]": { + "User": { + "id}{@": "subquery", + "@column": "id,sex,name" + ...', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634908, 0, 1564369325432, 82001, 3, '关联查询 Comment.userId = User.id', 'JSON', '/get', '{ + "User": { + "id": 82001 + }, + "[]": { + "Comment": { + "userId@": "User/id" + } + } + }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634909, 0, 1564369325432, 0, 3, 'get 自定义关键词和远程函数的应用', 'JSON', '/get', '{ + "User": { + "id": 82001, + "@column": "contactIdList", + "@value": 82006, + "isContect()": "isContain(contactIdList,@value)" + } + } + /* + 1、获取User表中的id==82001的数据块; + 2、获取contactIdList列中的数据...', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634910, 0, 1564369325432, 0, 3, 'Comment JOIN User', 'JSON', '/get', '{ + "[]": { + "join": "": 0 + } + }, + "@explain": true +} +/* + 这是一个 3.3.0, 3.8.6-4.0.0 都发现存在的 bug, + 事实上也是自从支持自连接(副表 Comment AS `to`)以来就存在。 + 原因是对副表生成的 SQL 里表名和主表表名一样,导致 + AbstractSQLExecutor.onPutColumn 中 299 行 + item = onPutColumn(config, rs, rsmd, index, item, i, config.isExplain() == false && hasJoin && i >= viceColumnStart ? childMap : null); + 488 行 if 走了第一个分支(应该走 else 来把副表的值存进 childMap) + finalTable = table; + 从而使 JOIN 查出来的主副表全部字段都在 521 行 + finalTable.put(lable, getValue(config, rs, rsmd, tablePosition, table, columnIndex, lable, childMap)); + 由于主副表有相同字段,导致后面 put 的副表字段替代了前面 put 的主表同名字段。 + + 除了以上折中方案,还可以判断 AS 的副表别名来做区分,put 进 childMap。 +*/', null, null, null, '', '2020-03-13 23:37:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1584117747580, 0, 2000, 0, 3, '全局默认字段失效', 'JSON', '/login', '{ + "type": 0, + "phone": "13000082001", + "password": "123456", + "version": 1, + "remember": false, + "format": true, //失效 + "defaults": { //失效 + "format": true, + "@explain": true, + "@database": "POSTGRESQL", + "@schema": "sys" + } +}', null, null, null, '', '2020-03-14 00:42:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1584118278602, 0, 2000, 0, 3, 'SIDE JOIN 实现可能有误', 'JSON', '/get', '{ + "[]": { + "join": "^/User/id@", + "Comment": { + "momentId": 12 + }, + "User": { + "id@": "/Comment/toId", + "sex": 0 + } + }, + "@explain": true +} +/* + SIDE JOIN 实现可能有误,并且性能不大好。 + Comment 的条件 A: momentId=12 + User 的条件 B: sex=0 + 理论上 NOT(A AND B) 等价于(A AND NOT B) OR (B AND NOT A) + 目前使用的是后者,当我想要改成前者,分别用对应的 SQL 放数据库执行, + 发现结果集不一样! + SELECT `Comment`.*, `User`.* FROM `sys`.`Comment` AS `Comment` INNER JOIN `sys`.`apijson_user` AS `User` ON `User`.`id` = `Comment`.`toId` WHERE ( NOT ( `Comment`.`momentId` = 12 AND `User`.`sex` = 0 ) ) LIMIT 10 OFFSET 0 + SELECT `Comment`.*, `User`.* FROM `sys`.`Comment` AS `Comment` INNER JOIN `sys`.`apijson_user` AS `User` ON `User`.`id` = `Comment`.`toId` WHERE ( ( ( (`Comment`.`momentId` = 12) ) AND NOT ( ( (`User`.`sex` = 0) ) ) ) OR ( ( (`User`.`sex` = 0) ) AND NOT ( ( (`Comment`.`momentId` = 12) ) ) ) ) LIMIT 10 OFFSET 0 +*/', null, null, null, '', '2020-03-14 00:51:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1584120971519, 0, 2020, 0, 3, '新增 WITH AS', 'JSON', '/get', '{ //看看关注的人最近有什么动态(分享、评论) + "sql@": { + "with": true, //生成 WITH(SELECT id ...) AS `sql` + "from": "User", + "User": { + "@column": "id", + "@role": "CONTACT" + } + }, + "Moment[]": { + "Moment": { + "userId{}@": "sql", + "@order": "date-" + } + }, + "Comment[]": { + "Comment": { + "userId{}@": "sql", + "@order": "date-" + } + }, + "@explain": true +}', null, null, null, '', '2020-03-14 01:36:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1584120990337, 0, 2020, 0, 3, '新增 UNION', 'JSON', '/get', '{ + "[]": { + "User": { + "name~": "a", + "tag~": "a", + "@combine": "name~,tag~", + "@union": 1 //将 @combine 中的 N 个 OR 连接字段用 UNION 替换,原本一条 SQL 需要拆分成 N 条 SQL 来 UNION + } + }, + "@explain": true +}', null, null, null, '', '2020-03-14 01:36:30.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1584121026469, 0, 2020, 0, 3, '新增分布式执行', 'JSON', '/get', '{ + "User": { + "@url": "http://apijson.cn:8080/get" //转发给其它服务器执行 + }, + "[]": { + "Comment": { + "userId@": "User/id" + } + }, + "@explain": true +}', null, null, null, '', '2020-03-14 01:37:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1589859330200, 0, 1589859275450, 1589859275450, 3, 'login', 'JSON', '/login', '{ + "type": 0, + "phone": "13525569073", + "password": "123456", + "version": 1, + "remember": false, + "format": false, + "defaults": { + "@database": "MYSQL", + "@schema": "sys" + } +}', null, null, null, '', '2020-05-19 11:35:30.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1592545943722, 0, 1592544818327, 1592544225995, 3, 'login', 'JSON', '/login', '{ + "body": { + "personName": "杨家湖超限班长", + "Authenticated": true, + "UserName": "yjhcxbz", + "personMobile": "", + "iconList": [ + "PTCL" + ], + "Token": "3dba223a3a9046f7abfffdddc9f93936", + "userOrgName": "杨家湖收费站", + "userId": "297edfab72c14e940172c1552d4b0002", + "userOrgId": "009429986" + }, + "head": { + "clientId": null, + "ret": { + "retCode": "000000", + "retMsg": null + }, + "timestamp": "2020-06-19 11:46:52" + } +} + +', null, null, null, '', '2020-06-19 13:52:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1592546007877, 0, 1592544818327, 1592544225995, 3, 'login11', 'JSON', '/login', '{ + "body": { + "personName": "杨家湖超限班长", + "Authenticated": true, + "UserName": "yjhcxbz", + "personMobile": "", + "iconList": [ + "PTCL" + ], + "Token": "3dba223a3a9046f7abfffdddc9f93936", + "userOrgName": "杨家湖收费站", + "userId": "297edfab72c14e940172c1552d4b0002", + "userOrgId": "009429986" + }, + "head": { + "clientId": null, + "ret": { + "retCode": "000000", + "retMsg": null + }, + "timestamp": "2020-06-19 11:46:52" + } +} + +', null, null, null, '', '2020-06-19 13:53:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1593973492312, 0, 1593972128383, 0, 3, 'login1', 'JSON', '/login', '{ + "type": 0, + "phone": "13000082002", + "password": "123456", + "version": 1, + "remember": false, + "format": false, + "defaults": { + "@database": "MYSQL", + "@schema": "sys" + } +}', null, null, null, '', '2020-07-06 02:24:52.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1593973606841, 0, 1593972128383, 0, 3, 'get1', 'JSON', '/get', '{ + "User": { + "id": 82001 + }, + "[]": { + "Comment": { + "userId@": "User/id" + } + } +} + +', null, null, null, '', '2020-07-06 02:26:46.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1593973707836, 0, 1593972128383, 0, 3, 'get1', 'JSON', '/get', '{ + "User": { + "id": 82001 + }, + "[]": {//ooo + "Comment": { + "userId@": "User/id" + } + } +} + +', null, null, null, '', '2020-07-06 02:28:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1596002514234, 0, 1596002416764, 0, 3, 'get', 'JSON', '/get', '{ + "type": 0, + "phone": "13000082002", + "password": "123456", + "version": 1, + "remember": false, + "format": false, + "defaults": { + "@database": "MYSQL", + "@schema": "sys" + } +} + +', null, null, null, '', '2020-07-29 14:01:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1596439230051, 0, 1596439187212, 0, 3, 'login', 'JSON', '/login', '{ + "type": 0, + "phone": "13000082002", + "password": "123456", + "version": 1, + "remember": false, + "format": false, + "defaults": { + "@database": "MYSQL", + "@schema": "sys" + } +}', null, null, null, '', '2020-08-03 15:20:30.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683613, 0, 88888, 0, 2, '视图表 ViewTable LEFT JOIN Moment', 'JSON', '/get', '{ + "[]": { + "join": "0", + "package*~": null, + "class*~": null, + "@combine": null + }, + "Method": { + "package@": "[]/Method/package", + "class@": "/Method:group/class", + "@column": "class,genericClassArgs", + "@order": "class+", + "arguments()": "getMethodArguments(genericClassArgs)" + } + } +} + +', null, null, null, '', '2020-10-09 16:16:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881786667, 0, 99999, 0, 3, '特殊符号', 'JSON', '/get', '{ + "Comment[]": { + "Comment": { + "@column": "date,content;concat(id,^,''<'',>?|,toId,&,{},userId,LES+=)", + "@having": "to_days(date)%7=0", + "@raw": "@column" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 65 + ] + }, + "@raw": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + }, + "Comment[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 56 + ] + }, + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + }, + "@raw": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2020-12-14 01:49:46.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881843319, 0, 99999, 0, 3, '复杂的 @having', 'JSON', '/get', '{ + "Comment[]": { + "Comment": { + "@having": "concat(id,''^'',''<'',>?|,''&'',{},:[],DROP!)<=8^3*3.14-7/4+50" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 56 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2020-12-14 01:50:43.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881872995, 0, 99999, 0, 3, '最近7天', 'JSON', '/get', '{ + "Comment": { + "@having": "to_days(now())-to_days(`date`)<=7", + "@raw": "@having" + }, + "@explain": true +} + +', null, null, null, '', '2020-12-14 01:51:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881932306, 0, 99999, 0, 3, '@raw 自定义 SQL 片段', 'JSON', '/get', '{ // 类似 12306 根据始发站和到达站来过滤火车班次,班次和线路多对一,线路和站点多对多 + "sql@": { + "from": "Comment", + "join": "&/Comment:to/userId@", + "Comment": { // 假装是始发站 + "@column": "userId", + "content~": "a", // 假装是站点名 + "momentId>": "to.momentId", + "@raw": "momentId>" + }, + "Comment:to": { // 假装是终点站 + "userId@": "/Comment/userId", + "@column": "", + "content~": "j" // 假装是站点名 + } + }, + "[]": { + "Moment": { // 假装是班次 + "userId{}@": { + "from": "User", + "User": { // 假装是线路 + "id{}@": "sql", + "@column": "id" + } + } + } + }, + "@explain": true +} + +', null, null, null, '', '2020-12-14 01:52:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1608995763278, 0, 99999, 0, 3, 'SQL 函数与表达式', 'JSON', '/get', '{ + "Comment[]": { + "Comment": { + "@column": "userId;(toId)%3=0;group_concat(DISTINCT ''+'',id)", + "@group": "userId,toId", + "@having": "max(id)>100;(userId)%5>=1" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 47 + ] + }, + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 25, + 23 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2020-12-26 23:16:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683609, 0, 88888, 0, 2, '视图表 ViewTable 查单条记录 /get', 'JSON', '/get', '{ + "ViewTable": {"id": 82001} +} + +', null, null, null, '', '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683610, 0, 88888, 0, 2, '视图表 ViewTable 查列表带条件', 'JSON', '/get', '{ + "ViewTable[]": { + "ViewTable": { + "toId": 0, + "content~": "a" + } + } +} + +', null, null, null, '', '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683611, 0, 88888, 0, 2, '视图表 ViewTable INNER JOIN Moment', 'JSON', '/get', '{ + "[]": { + "join": "&/Moment/id@", + "ViewTable": {"toId":0}, + "Moment": {"content~":"a", + "id@": "/ViewTable/momentId" + } + } +} + +', null, null, null, '', '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683612, 0, 88888, 0, 2, '视图表 ViewTable 子查询', 'JSON', '/get', '{ + "ViewTable[]": { + "ViewTable": { + "momentId{}@": { + "from": "Moment", + "Moment": { + "@column": "id" + } + } + } + } +} + +', null, null, null, '', '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837330, 0, 1490109742863, 0, 3, 'callBackMiniProgramdistibutionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/callback', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683614, 0, 88888, 0, 2, '全局关键词', 'JSON', '/get', '{ + "[]": { + "count": 3, + "Moment": {}, + + "User": { + "id@": "/Moment/userId", + "@column": "id,name,head" + }, + "[]": { + "count": 6, + "Comment": { + "momentId@": "[]/Moment/id" + }, + "User": { + "id@": "/Comment/userId", + "@column": "id,name" + } + } + }, + "format": false, + "tag": "Moment[]", + "version": 0, + "@role": "CIRCLE", + "@database": "MYSQL", + "@schema": "sys", + "@explain": true, + "@cache": 0 +} + +', null, null, null, '', '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683615, 0, 88888, 0, 2, '功能符:连续范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"date%":"2017-10-01,2018-10-01"}}}', null, null, null, '', '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627003810321, 0, 82003, 0, 3, '关联查询', 'JSON', '/get', '{ + "[]": { + "Moment": { + "@column": "id,date,userId", + "id": 12 + }, + "User": { + "id@": "/Moment/userId", + "@column": "id,name" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 12 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2021-07-23 09:30:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627750805078, 0, 88888, 0, 3, '用远程函数校验参数-非法参数', 'JSON', '/put', '{ + "Moment": { + "id": 235, + "pictureList": [ + "a", + "http://abc.cn/1.png" + ] + }, + "tag": "Moment" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 235 + ], + "lengthLevel": 1, + "lengths": [] + }, + "pictureList": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19, + 1 + ] + } + ] + } + } + ] + }, + "tag": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ] +}', '', '2021-08-01 01:00:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627755287025, 0, 82001, 0, 3, '多数据源同时使用', 'JSON', '/get', '{ + "@datasource": "DRUID", + "User": { + "id": 82001, + "@datasource": "HIKARICP", + "@database": "POSTGRESQL" + }, + "[]": { + "Comment": { + "userId@": "User/id" + }, + "Moment": { + "@datasource": "DRUID", + "id@": "/Comment/momentId" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@datasource": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "DRUID" + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [] + }, + "@datasource": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "HIKARICP" + ], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "@database": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "POSTGRESQL" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + } + } + ] + }, + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + }, + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@datasource": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "DRUID" + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2021-08-01 02:14:47.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627755325870, 0, 88888, 0, 3, '多数据源同时使用', 'JSON', '/get', '{ + "@datasource": "DRUID", + "User": { + "id": 82001, + "@datasource": "HIKARICP", + "@database": "POSTGRESQL" + }, + "[]": { + "Comment": { + "userId@": "User/id" + }, + "Moment": { + "@datasource": "DRUID", + "id@": "/Comment/momentId" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@datasource": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "DRUID" + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [] + }, + "@datasource": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "HIKARICP" + ], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "@database": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "POSTGRESQL" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + } + } + ] + }, + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + }, + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@datasource": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "DRUID" + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2021-08-01 02:15:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631668437509, 0, 1631617361403, 0, 3, '2021-09-15 09:12 ', 'JSON', '/resource/apijson/get', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', '', '2021-09-15 09:13:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631669045947, 0, 1631617361403, 0, 3, '汇聚资源新增', 'JSON', '/resource/apijson/post', '{ + "ResourceId-()": "getResourceId()", + "username-()": "encryption(root)", + "password-()": "encryption(123456)", + "ResourceInfo": { + "RESOURCE_ID@": "ResourceId", + "RESOURCE_NAME": "测试资源1", + "RESOURCE_TYPE": "1", + "RESOURCE_SERVE": "0", + "NET_ID": "1", + "UPDATE_FREQUENCY": "1", + "UPDATE_FREQUENCY_UNIT": "H", + "UNIT_ID": "1", + "COMPANY_ID": "2", + "CONTACT_PERSON_ID": "1", + "DESC": "测试", + "SECURITY_LEVEL": 5, + "IS_SPACE_DATA": 1, + "SYSTEM_NAME": "六合一平台", + "UNIT_CONTACT_PERSON": "郄", + "AREA_SCOPE": "1,2", + "RESOURCE_ID": null + }, + "ResourceDb": { + "DB_TYPE": "1", + "DB_ADDRESS": "58.210.9.133", + "DB_NAME": "public", + "DB_URI": "jdbc:postgresql://101.133.229.133:5432/postgres", + "TABLE_NAME": "t_car_pass_record", + "DB_USERNAME@": "username", + "DB_PASSWORD@": "password" + }, + "ResourceTag[]": [ + { + "RESOURCE_TAG_ID": "1", + "RESOURCE_INFO_ID@": "ResourceId" + }, + { + "RESOURCE_TAG_ID": "2", + "RESOURCE_INFO_ID@": "ResourceId" + } + ] +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID": { + "notnull": false, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "RESOURCE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "NET_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY_UNIT": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "H" + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UNIT_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "COMPANY_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "CONTACT_PERSON_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "SECURITY_LEVEL": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 5 + ], + "lengthLevel": 1, + "lengths": [] + }, + "IS_SPACE_DATA": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + }, + "SYSTEM_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "UNIT_CONTACT_PERSON": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "AREA_SCOPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + } + } + ] + }, + "ResourceTag[]": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_TAG_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_INFO_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24, + 10 + ] + } + } + ] + } + ] + }, + "ResourceId-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + }, + "username-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "password-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "ResourceDb": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "DB_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DB_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 12 + ] + }, + "DB_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DB_URI": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 47 + ] + }, + "TABLE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + }, + "DB_USERNAME@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "DB_PASSWORD@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + } + } + ] +}', '', '2021-09-15 09:24:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631670171091, 0, 1631617361403, 0, 3, '资源详情', 'JSON', '/resource/apijson/get', '{ + "ResourceInfo": { + "id": "1631608580403" + }, + "DataUnit:ParentUnit": { + "id@": "ResourceInfo/UNIT_ID" + }, + "DataUnit:CompanyUnit": { + "id@": "ResourceInfo/COMPANY_ID" + }, + "ContactPerson": { + "id@": "ResourceInfo/CONTACT_PERSON_ID" + }, + "[]": { + "ResourceTag": { + "RESOURCE_INFO_ID@": "ResourceInfo/RESOURCE_ID" + }, + "Tag": { + "id@": "[]/ResourceTag/RESOURCE_TAG_ID" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + }, + "DataUnit:ParentUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 20 + ] + } + } + ] + }, + "DataUnit:CompanyUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 23 + ] + } + } + ] + }, + "ContactPerson": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 30 + ] + } + } + ] + }, + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceTag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_INFO_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + } + } + ] + }, + "Tag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 30 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2021-09-15 09:42:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837383, 0, 1490109742863, 0, 3, 'getSfaDistList', 'JSON', '/dms/disList/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837435, 0, 1490109742863, 0, 3, 'saveSfaDistStatus', 'JSON', '/dms/diststatus/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837502, 0, 1490109742863, 0, 3, 'saveFeeBudget', 'JSON', '/dms/fee/saveFeeBudget', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837571, 0, 1490109742863, 0, 3, 'findStoreSCRM', 'JSON', '/dms/find/findStoreSCRM', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631757289713, 0, 1631617361403, 0, 3, '资源列表查询', 'JSON', '/resource/apijson/get', '{ + "[]": { + "ResourceInfo:GROUP": { + "RESOURCE_NAME$": "%1%", + "@column": "RESOURCE_ID;max(REVISION):MAX_REVISION", + "@group": "RESOURCE_ID", + "@order": "RESOURCE_ID" + }, + "ResourceInfo": { + "RESOURCE_ID@": "[]/ResourceInfo:GROUP/RESOURCE_ID", + "REVISION@": "[]/ResourceInfo:GROUP/MAX_REVISION" + }, + "DataUnit:ParentUnit": { + "id@": "[]/ResourceInfo/UNIT_ID" + }, + "DataUnit:CompanyUnit": { + "id@": "[]/ResourceInfo/COMPANY_ID" + }, + "ContactPerson": { + "id@": "[]/ResourceInfo/CONTACT_PERSON_ID" + }, + "[]": { + "ResourceTag": { + "RESOURCE_INFO_ID@": "[]/ResourceInfo/RESOURCE_ID" + }, + "Tag": { + "id@": "[]/[]/ResourceTag/RESOURCE_TAG_ID" + } + }, + "query": 2, + "page": 0, + "count": 10 + }, + "total@": "/[]/total", + "page@": "/[]/page", + "info@": "/[]/info" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo:GROUP": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 38 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "RESOURCE_NAME$": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 33 + ] + }, + "REVISION@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 34 + ] + } + } + ] + }, + "DataUnit:ParentUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 23 + ] + } + } + ] + }, + "DataUnit:CompanyUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 26 + ] + } + } + ] + }, + "ContactPerson": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 33 + ] + } + } + ] + }, + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceTag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_INFO_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 27 + ] + } + } + ] + }, + "Tag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 33 + ] + } + } + ] + } + } + ] + }, + "query": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 2 + ], + "lengthLevel": 1, + "lengths": [] + }, + "page": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 10 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "total@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "page@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "info@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] +}', '', '2021-09-16 09:54:49.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631771103135, 0, 1631617361403, 0, 3, '查询同一资源各版本列表', 'JSON', '/resource/apijson/get', '{ + "[]": { + "ResourceInfo": { + "RESOURCE_ID": "1", + "@order": "REVISION-" + }, + "DataUnit:ParentUnit": { + "id@": "[]/ResourceInfo/UNIT_ID" + }, + "DataUnit:CompanyUnit": { + "id@": "[]/ResourceInfo/COMPANY_ID" + }, + "ContactPerson": { + "id@": "[]/ResourceInfo/CONTACT_PERSON_ID" + }, + "[]": { + "ResourceTag": { + "RESOURCE_INFO_ID@": "[]/ResourceInfo/RESOURCE_ID", + "REVISION@": "[]/ResourceInfo/REVISION" + }, + "Tag": { + "id@": "[]/[]/ResourceTag/RESOURCE_TAG_ID" + } + }, + "query": 2, + "page": 0, + "count": 10 + }, + "total@": "/[]/total", + "page@": "/[]/page", + "info@": "/[]/info" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + } + } + ] + }, + "DataUnit:ParentUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 23 + ] + } + } + ] + }, + "DataUnit:CompanyUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 26 + ] + } + } + ] + }, + "ContactPerson": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 33 + ] + } + } + ] + }, + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceTag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_INFO_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 27 + ] + }, + "REVISION@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + } + } + ] + }, + "Tag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 33 + ] + } + } + ] + } + } + ] + }, + "query": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 2 + ], + "lengthLevel": 1, + "lengths": [] + }, + "page": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 10 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "total@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "page@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "info@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] +}', '', '2021-09-16 13:45:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631773493501, 0, 1631617361403, 0, 3, '上传字典表', 'JSON', '/resource/apijson/post', '{ + "SysDict[]": [ + { + "TYPE": "RESOURCE_SERVE", + "DICT_ID": "RESOURCE_SERVE_0", + "LABEL": "汇聚资源", + "VALUE": "0", + "SORT": "1", + "DESCRIPTION": "资源供应类型" + }, + { + "TYPE": "RESOURCE_SERVE", + "DICT_ID": "RESOURCE_SERVE_1", + "LABEL": "落地资源", + "VALUE": "1", + "SORT": "2", + "DESCRIPTION": "资源供应类型" + } + ] +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SysDict[]": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_SERVE" + ], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "DICT_ID": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_SERVE_0", + "RESOURCE_SERVE_1" + ], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "LABEL": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "VALUE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "SORT": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DESCRIPTION": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ] + } + ] + } + } + ] +}', '', '2021-09-16 14:24:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631775393342, 0, 1631617361403, 0, 3, '字典表查询', 'JSON', '/resource/apijson/get', '{ + "SysDict[]": { + "SysDict": { + "TYPE": "RESOURCE_SERVE" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SysDict[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SysDict": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_SERVE" + ], + "lengthLevel": 1, + "lengths": [ + 14 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2021-09-16 14:56:33.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631842712990, 0, 1631617361403, 0, 3, '删除资源', 'JSON', '/resource/apijson/delete', '{ + "ResourceInfo": { + "id": "1631787701342" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + } + } + ] +}', '', '2021-09-17 09:38:32.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837621, 0, 1490109742863, 0, 3, 'fnRptConfirm', 'JSON', '/dms/fn/rpt/confirm', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837653, 0, 1490109742863, 0, 3, 'fnRptConfirmForXYR', 'JSON', '/dms/fn/rpt/confirmForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837665, 0, 1490109742863, 0, 3, 'fnRptDealerQuery', 'JSON', '/dms/fn/rpt/dealerQuery', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837671, 0, 1490109742863, 0, 3, 'fnRptDownload', 'JSON', '/dms/fn/rpt/download', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837721, 0, 1490109742863, 0, 3, 'fnRptDealerQueryForXYR', 'JSON', '/dms/fn/rpt/dealerQueryForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837781, 0, 1490109742863, 0, 3, 'fnRptGetVcPdfUrl', 'JSON', '/dms/fn/rpt/getVcPdfUrl', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631842798921, 0, 1631617361403, 0, 3, '资源状态变更', 'JSON', '/resource/apijson/put', '{ + "ResourceInfo": { + "id": "1631788768897", + "RESOURCE_STATUS": 1 + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "RESOURCE_STATUS": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2021-09-17 09:39:58.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1632301360926, 0, 1631617361403, 0, 3, '落地资源新增', 'JSON', '/resource/apijson/post', '{ + "ResourceId-()": "getResourceId()", + "username-()": "encryption(root)", + "password-()": "encryption(123456)", + "ResourceInfo": { + "RESOURCE_ID@": "ResourceId", + "RESOURCE_NAME": "停车场落地数据", + "RESOURCE_TYPE": "0", + "RESOURCE_SERVE": "1", + "NET_ID": "1", + "UPDATE_FREQUENCY": "1", + "UPDATE_FREQUENCY_UNIT": "H", + "DESC": "落地资源", + "SECURITY_LEVEL": 5, + "IS_SPACE_DATA": 1, + "AREA_SCOPE": "1,2" + }, + "ResourceDb": { + "DB_TYPE": "1", + "DB_ADDRESS": "58.210.9.133", + "DB_NAME": "public", + "DB_URI": "jdbc:postgresql://101.133.229.133:5432/postgres", + "TABLE_NAME": "t_car_pass_record", + "DB_USERNAME@": "username", + "DB_PASSWORD@": "password" + }, + "LinkInfo[]": [ + { + "UP_NODE_ID": "1438447993332600833", + "DOWN_NODE_ID@": "ResourceId", + "UP_NODE_REVISION": "1", + "DOWN_NODE_REVISION": "1" + } + ], + "ResourceTag[]": [ + { + "RESOURCE_TAG_ID": "1", + "RESOURCE_INFO_ID@": "ResourceId" + }, + { + "RESOURCE_TAG_ID": "2", + "RESOURCE_INFO_ID@": "ResourceId" + } + ] +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceId-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + }, + "username-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "password-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "RESOURCE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "RESOURCE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "NET_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY_UNIT": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "H" + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "SECURITY_LEVEL": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 5 + ], + "lengthLevel": 1, + "lengths": [] + }, + "IS_SPACE_DATA": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + }, + "AREA_SCOPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + }, + "ResourceDb": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "DB_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DB_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 12 + ] + }, + "DB_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DB_URI": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 47 + ] + }, + "TABLE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + }, + "DB_USERNAME@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "DB_PASSWORD@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + }, + "LinkInfo[]": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "UP_NODE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "DOWN_NODE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "UP_NODE_REVISION": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DOWN_NODE_REVISION": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + } + ] + }, + "ResourceTag[]": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_TAG_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_INFO_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + } + } + ] + } + ] + } + } + ] +}', '', '2021-09-22 17:02:40.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633674327218, 0, 1631617361403, 0, 3, '资源详情', 'JSON', '/resource/apijson/get', '{ + "ResourceInfo": { + "ID": "1632885190990" + }, + "DataUnit:ParentUnit": { + "ID@": "ResourceInfo/UNIT_ID" + }, + "DataUnit:CompanyUnit": { + "ID@": "ResourceInfo/COMPANY_ID" + }, + "ContactPerson": { + "ID@": "ResourceInfo/CONTACT_PERSON_ID" + }, + "ResourceDb:数据库": { + "RESOURCE_ID@": "ResourceInfo/RESOURCE_ID", + "REVISION@": "ResourceInfo/REVISION" + }, + "FileAttachment[]": { + "ResourceFile": { + "RESOURCE_ID@": "ResourceInfo/RESOURCE_ID", + "REVISION@": "ResourceInfo/REVISION" + }, + "FileAttachment": { + "ID@": "/ResourceFile/FILE_ATTACHMENT_ID" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + }, + "DataUnit:ParentUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 20 + ] + } + } + ] + }, + "DataUnit:CompanyUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 23 + ] + } + } + ] + }, + "ContactPerson": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 30 + ] + } + } + ] + }, + "ResourceDb:数据库": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "REVISION@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 21 + ] + } + } + ] + }, + "FileAttachment[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceFile": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "REVISION@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 21 + ] + } + } + ] + }, + "FileAttachment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 32 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2021-10-08 14:25:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633681667093, 0, 1631617361403, 0, 3, '资源新增-消息队列', 'JSON', '/resource/apijson/post', '{ + "ResourceId-()": "getResourceId()", + "ResourceInfo": { + "RESOURCE_ID@": "ResourceId", + "RESOURCE_NAME": "警务通gps数据", + "RESOURCE_TYPE": "1", + "RESOURCE_SERVE": "1", + "NET_ID": "1", + "UPDATE_FREQUENCY": "1", + "UPDATE_FREQUENCY_UNIT": "H", + "DESC": "落地资源", + "SECURITY_LEVEL": 5, + "IS_SPACE_DATA": 1, + "AREA_SCOPE": "1,2" + }, + "ResourceTopic": { + "RESOURCE_ID@": "ResourceId", + "QUEUE_TYPE": "0", + "QUEUE_BROKER_LIST": "50.73.141.210:39092", + "QUEUE_TOPIC_NAME": "HIK_EVENT" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceId-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "RESOURCE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "RESOURCE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "NET_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY_UNIT": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "H" + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "SECURITY_LEVEL": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 5 + ], + "lengthLevel": 1, + "lengths": [] + }, + "IS_SPACE_DATA": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + }, + "AREA_SCOPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + }, + "ResourceTopic": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "QUEUE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "QUEUE_BROKER_LIST": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "QUEUE_TOPIC_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "HIK_EVENT" + ], + "lengthLevel": 1, + "lengths": [ + 9 + ] + } + } + ] + } + } + ] +}', '', '2021-10-08 16:27:47.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633682138997, 0, 1631617361403, 0, 3, '资源详情-消息队列', 'JSON', '/resource/apijson/get', '{ + "ResourceInfo": { + "ID": "1633681660869" + }, + "ResourceTopic": { + "RESOURCE_ID@": "ResourceInfo/RESOURCE_ID", + "SysDict": { + "TYPE": "QUEUE_TYPE", + "VALUE@": "ResourceTopic/QUEUE_TYPE" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + }, + "ResourceTopic": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "SysDict": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "QUEUE_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2021-10-08 16:35:39.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634284944272, 0, 1631617361403, 0, 3, '共享方式新增api', 'JSON', '/resource/apijson/post', '{ + "ResourceShare": { + "NAME": "数据库共享", + "DESC": "描述", + "SHARE_TYPE": "2", + "RESOURCE_INFO_ID": "1446390805710295041" + }, + "ResourceApi": { + "SHARE_ID@": "ResourceShare/ID", + "API_ADDRESS": "http://58.210.9.133:8989/resource/dataUnit/companyList", + "API_PORT": "8989", + "API_PATH": "/resource/dataUnit/companyList", + "API_REQUEST_METHOD": "0", + "API_REQUEST_TYPE": "0" + }, + "ResourceInterfaceParam[]": [ + { + "SHARE_ID@": "ResourceShare/ID", + "API_ID@": "ResourceApi/ID", + "PARAM_NAME": "id", + "PARAM_DESC": "主键id", + "PARAM_TYPE": "0", + "PARAM_FORM": "0" + } + ] +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "SHARE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_INFO_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + }, + "ResourceApi": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "API_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 54 + ] + }, + "API_PORT": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "API_PATH": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 30 + ] + }, + "API_REQUEST_METHOD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "API_REQUEST_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + }, + "ResourceInterfaceParam[]": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "API_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "PARAM_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "PARAM_DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "PARAM_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "PARAM_FORM": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + } + ] + } + } + ] +}', '', '2021-10-15 16:02:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633685540122, 0, 1631617361403, 0, 3, '共享方式新增-api', 'JSON', '/resource/apijson/post', '{ + "ResourceShare": { + "NAME": "数据库共享", + "DESC": "描述", + "SHARE_TYPE": "2", + "RESOURCE_INFO_ID": "1446390805710295041" + }, + "ResourceApi": { + "SHARE_ID@": "ResourceShare/ID", + "API_ADDRESS": "http://58.210.9.133:8989/resource/dataUnit/companyList", + "API_PORT": "8989", + "API_PATH": "/resource/dataUnit/companyList", + "API_REQUEST_METHOD": "0", + "API_REQUEST_TYPE": "0", + "RESOURCE_ID@": null + }, + "ResourceInterfaceParam[]": [ + { + "SHARE_ID@": "ResourceShare/ID", + "API_ID@": "ResourceApi/ID", + "PARAM_NAME": "id", + "PARAM_DESC": "主键id", + "PARAM_TYPE": "0", + "RESOURCE_ID@": null + } + ], + "ResourceId-()": null, + "ResourceInfo": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceId-()": { + "notnull": false, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + }, + "ResourceInfo": { + "notnull": false, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "RESOURCE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "RESOURCE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "NET_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY_UNIT": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "H" + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "SECURITY_LEVEL": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 5 + ], + "lengthLevel": 1, + "lengths": [] + }, + "IS_SPACE_DATA": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + }, + "AREA_SCOPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + }, + "ResourceApi": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": false, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "API_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 54 + ] + }, + "API_PORT": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "API_PATH": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 30 + ] + }, + "API_REQUEST_METHOD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "API_REQUEST_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + } + } + ] + }, + "ResourceInterfaceParam[]": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": false, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "API_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "PARAM_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "PARAM_DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "PARAM_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + } + } + ] + } + ] + }, + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "SHARE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_INFO_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + } + } + ] +}', '', '2021-10-08 17:32:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633686401010, 0, 1631617361403, 0, 3, '资源详情-api', 'JSON', '/resource/apijson/get', '{ + "ResourceInfo": { + "ID": "1633685461722" + }, + "ResourceApi": { + "RESOURCE_ID@": "ResourceInfo/RESOURCE_ID", + "REVISION@": "ResourceInfo/REVISION", + "SysDict:API_REQUEST_METHOD": { + "TYPE": "API_REQUEST_METHOD", + "VALUE@": "/API_REQUEST_METHOD" + }, + "SysDict:API_REQUEST_TYPE": { + "TYPE": "API_REQUEST_TYPE", + "VALUE@": "/API_REQUEST_TYPE" + } + }, + "ResourceInterfaceParam[]": { + "ResourceInterfaceParam": { + "API_ID@": "ResourceApi/ID", + "SysDict:PARAM_TYPE": { + "TYPE": "PARAM_TYPE", + "VALUE@": "/PARAM_TYPE" + } + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + }, + "ResourceApi": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "REVISION@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 21 + ] + }, + "SysDict:API_REQUEST_METHOD": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "API_REQUEST_METHOD" + ], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + }, + "SysDict:API_REQUEST_TYPE": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "API_REQUEST_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + } + } + ] + } + } + ] + }, + "ResourceInterfaceParam[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInterfaceParam": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "API_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "SysDict:PARAM_TYPE": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "PARAM_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2021-10-08 17:46:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633770522246, 0, 1631617361403, 0, 3, '资源修改', 'JSON', '/resource/apijson/put', '{ + "updateResource-()": "updateResource(1446391835361595393,1)", + "ResourceInfo": { + "ID": "1633681660869", + "RESOURCE_ID": "1446391835361595393", + "REVISION": 1, + "RESOURCE_NAME": "警务通gps数据", + "RESOURCE_TYPE": "1", + "RESOURCE_SERVE": "1", + "NET_ID": "1", + "UPDATE_FREQUENCY": "1", + "UPDATE_FREQUENCY_UNIT": "H", + "DESC": "落地资源1", + "SECURITY_LEVEL": 5, + "IS_SPACE_DATA": 1, + "AREA_SCOPE": "1,2" + }, + "ResourceTopic-": { + "RESOURCE_ID": "1446391835361595393", + "REVISION": 1, + "QUEUE_TYPE": "0", + "QUEUE_BROKER_LIST": "50.73.141.210:39081", + "QUEUE_TOPIC_NAME": "HIK_EVENT" + }, + "LinkInfo[]-": [ + { + "UP_NODE_ID": "来源id", + "DOWN_NODE_ID": "1446391835361595393" + } + ], + "ResourceFile[]-": [ + { + "FILE_ATTACHMENT_ID": "文件id", + "RESOURCE_ID": "1446391835361595393", + "REVISION": 1 + } + ] +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "updateResource-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 37 + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "REVISION": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + }, + "RESOURCE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "RESOURCE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "NET_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY_UNIT": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "H" + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "SECURITY_LEVEL": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 5 + ], + "lengthLevel": 1, + "lengths": [] + }, + "IS_SPACE_DATA": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + }, + "AREA_SCOPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + }, + "ResourceTopic-": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "REVISION": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + }, + "QUEUE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "QUEUE_BROKER_LIST": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "QUEUE_TOPIC_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "HIK_EVENT" + ], + "lengthLevel": 1, + "lengths": [ + 9 + ] + } + } + ] + }, + "LinkInfo[]-": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "UP_NODE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "DOWN_NODE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + } + ] + }, + "ResourceFile[]-": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "FILE_ATTACHMENT_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "REVISION": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + ] + } + } + ] +}', '', '2021-10-09 17:08:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634265668211, 0, 1631617361403, 0, 3, '资源列表查询', 'JSON', '/resource/apijson/get', '{ + "[]": { + "ResourceInfo": { + "ID{}@": { + "from": "ResourceInfo:ChildSearch", + "ResourceInfo:ChildSearch": { + "@column": "max(ID):ID", + "@group": "RESOURCE_ID" + } + }, + "CREATED_TIME>=": null, + "CREATED_TIME<=": null, + "RESOURCE_STATUS": "0", + "RESOURCE_NAME$": "%%", + "RESOURCE_SERVE": "1", + "@order": "RESOURCE_ID", + "RESOURCE_OPEN": "0", + "UNIT_ID": null + }, + "SysDict:RESOURCE_TYPE": { + "TYPE": "RESOURCE_TYPE", + "VALUE@": "[]/ResourceInfo/RESOURCE_TYPE" + }, + "Net": { + "ID@": "[]/ResourceInfo/NET_ID" + }, + "SysDict:NET_TYPE": { + "TYPE": "NET_TYPE", + "VALUE@": "[]/Net/NET_TYPE" + }, + "DataUnit:ParentUnit": { + "ID@": "[]/ResourceInfo/UNIT_ID" + }, + "DataUnit:CompanyUnit": { + "ID@": "[]/ResourceInfo/COMPANY_ID" + }, + "ContactPerson": { + "ID@": "[]/ResourceInfo/CONTACT_PERSON_ID" + }, + "ResourceShare": { + "RESOURCE_INFO_ID@": "[]/ResourceInfo/RESOURCE_ID", + "@column": "count(1)" + }, + "ResourceApply": { + "RESOURCE_ID@": "[]/ResourceInfo/RESOURCE_ID", + "APPLY_STATUS": "0", + "@column": "count(1)" + }, + "query": 2, + "page": 0, + "count": 20, + "[]": null + }, + "total@": "/[]/total", + "page@": "/[]/page", + "info@": "/[]/info" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID{}@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "ResourceInfo:ChildSearch": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "RESOURCE_STATUS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_NAME$": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "RESOURCE_OPEN": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + }, + "SysDict:RESOURCE_TYPE": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 29 + ] + } + } + ] + }, + "Net": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 22 + ] + } + } + ] + }, + "SysDict:NET_TYPE": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "NET_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + } + } + ] + }, + "DataUnit:ParentUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 23 + ] + } + } + ] + }, + "DataUnit:CompanyUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 26 + ] + } + } + ] + }, + "ContactPerson": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 33 + ] + } + } + ] + }, + "query": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 2 + ], + "lengthLevel": 1, + "lengths": [] + }, + "page": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 20 + ], + "lengthLevel": 1, + "lengths": [] + }, + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_INFO_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 27 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + }, + "ResourceApply": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 27 + ] + }, + "APPLY_STATUS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + } + } + ] + }, + "total@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "page@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "info@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] +}', '', '2021-10-15 10:41:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634285131571, 0, 1631617361403, 0, 3, '共享方式新增-数据库', 'JSON', '/resource/apijson/post', '{ + "ResourceShare": { + "NAME": "数据库共享", + "DESC": "描述", + "SHARE_TYPE": "0", + "RESOURCE_INFO_ID": "1446390805710295041" + }, + "ResourceDb": { + "SHARE_ID@": "ResourceShare/ID", + "DB_TYPE": "1", + "DB_ADDRESS": "58.210.9.133", + "DB_NAME": "public", + "DB_URI": "jdbc:postgresql://101.133.229.133:5432/postgres", + "TABLE_NAME": "t_car_pass_record", + "DB_USERNAME": "username", + "DB_PASSWORD": "password" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "SHARE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_INFO_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + }, + "ResourceDb": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "DB_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DB_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 12 + ] + }, + "DB_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DB_URI": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 47 + ] + }, + "TABLE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + }, + "DB_USERNAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "DB_PASSWORD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + } + } + ] +}', '', '2021-10-15 16:05:31.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837837, 0, 1490109742863, 0, 3, 'fnRptQuery', 'JSON', '/dms/fn/rpt/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634286148582, 0, 1631617361403, 0, 3, '共享方式列表', 'JSON', '/resource/apijson/get', '{ + "[]": { + "ResourceShare": { + "RESOURCE_INFO_ID": "1446390805710295041" + }, + "SysDict:RESOURCE_TYPE": { + "TYPE": "RESOURCE_TYPE", + "VALUE@": "[]/ResourceShare/SHARE_TYPE" + }, + "ResourceDb": { + "SHARE_ID@": "[]/ResourceShare/ID", + "SysDict": { + "TYPE": "QUEUE_TYPE", + "VALUE@": "ResourceTopic/QUEUE_TYPE" + } + }, + "ResourceTopic": { + "SHARE_ID@": "[]/ResourceShare/ID", + "SysDict": { + "TYPE": "QUEUE_TYPE", + "VALUE@": "ResourceTopic/QUEUE_TYPE" + } + }, + "ResourceApi": { + "SHARE_ID@": "[]/ResourceShare/ID", + "SysDict:API_REQUEST_METHOD": { + "TYPE": "API_REQUEST_METHOD", + "VALUE@": "/API_REQUEST_METHOD" + }, + "SysDict:API_REQUEST_TYPE": { + "TYPE": "API_REQUEST_TYPE", + "VALUE@": "/API_REQUEST_TYPE" + } + }, + "ResourceInterfaceParam[]": { + "ResourceInterfaceParam": { + "SHARE_ID@": "[]/ResourceShare/ID", + "SysDict:PARAM_TYPE": { + "TYPE": "PARAM_TYPE", + "VALUE@": "/PARAM_TYPE" + } + } + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_INFO_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + }, + "SysDict:RESOURCE_TYPE": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 27 + ] + } + } + ] + }, + "ResourceDb": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "SysDict": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "QUEUE_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + } + } + ] + } + } + ] + }, + "ResourceTopic": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "SysDict": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "QUEUE_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + } + } + ] + } + } + ] + }, + "ResourceApi": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "SysDict:API_REQUEST_METHOD": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "API_REQUEST_METHOD" + ], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + }, + "SysDict:API_REQUEST_TYPE": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "API_REQUEST_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + } + } + ] + } + } + ] + }, + "ResourceInterfaceParam[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInterfaceParam": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "SysDict:PARAM_TYPE": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "PARAM_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2021-10-15 16:22:28.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634289945625, 0, 1631617361403, 0, 3, '删除共享方式', 'JSON', '/resource/apijson/delete', '{ + "deleteShare-()": "deleteShare(1634285087560)", + "ResourceShare": { + "ID": "1634285087560" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "deleteShare-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 26 + ] + }, + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + } + } + ] +}', '', '2021-10-15 17:25:45.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634290488064, 0, 1631617361403, 0, 3, '共享方式修改', 'JSON', '/resource/apijson/put', '{ + "updateShare-()": "updateShare(1634285284517)", + "ResourceShare": { + "ID": "1634285284517", + "NAME": "数据库共享1", + "DESC": "描述1", + "SHARE_TYPE": "0" + }, + "ResourceDb-": { + "SHARE_ID": "1634285284517", + "DB_TYPE": "1", + "DB_ADDRESS": "58.210.9.131", + "DB_NAME": "public", + "DB_URI": "jdbc:postgresql://101.133.229.133:5432/postgres1", + "TABLE_NAME": "t_car_pass_record1", + "DB_USERNAME": "username1", + "DB_PASSWORD": "password1" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "updateShare-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 26 + ] + }, + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "SHARE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + }, + "ResourceDb-": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "DB_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DB_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 12 + ] + }, + "DB_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DB_URI": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 48 + ] + }, + "TABLE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "DB_USERNAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "DB_PASSWORD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + } + } + ] + } + } + ] +}', '', '2021-10-15 17:34:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634631929552, 0, 1631617361403, 0, 3, '共享方式修改api', 'JSON', '/resource/apijson/put', '{ + "updateShare-()": "updateShare(1634285121819)", + "ResourceShare": { + "ID": "1634285121819", + "NAME": "数据库共享1", + "DESC": "描述1", + "SHARE_TYPE": "0" + }, + "ResourceApi-": { + "SHARE_ID": "1634285284517", + "API_ADDRESS": "http://58.210.9.133:8989/resource/dataUnit/companyList", + "API_PORT": "8989", + "API_PATH": "/resource/dataUnit/companyList", + "API_REQUEST_METHOD": "0", + "API_REQUEST_TYPE": "0" + }, + "ResourceInterfaceParam[]-": [ + { + "SHARE_ID": "1634285284517", + "API_ID@": "ResourceApi/ID", + "PARAM_NAME": "id", + "PARAM_DESC": "主键id", + "PARAM_TYPE": "0", + "PARAM_FORM": "0", + "DB_FIELD_NAME": "ID", + "OPERATE_CHAR": "0" + } + ] +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "updateShare-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 26 + ] + }, + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "SHARE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + }, + "ResourceApi-": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "API_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 54 + ] + }, + "API_PORT": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "API_PATH": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 30 + ] + }, + "API_REQUEST_METHOD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "API_REQUEST_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + }, + "ResourceInterfaceParam[]-": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "API_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "PARAM_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "PARAM_DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "PARAM_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "PARAM_FORM": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DB_FIELD_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "ID" + ], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "OPERATE_CHAR": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + } + ] + } + } + ] +}', '', '2021-10-19 16:25:29.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634655384665, 0, 82001, 0, 3, '获取用户列表带分页信息-简单接口', 'JSON', '/get/User[]', '{ + "User": { + "id": 82001 + }, + "query": 2 +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "query": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 2 + ], + "lengthLevel": 1, + "lengths": [] + }, + "User[]": { + "type": "object", + "notnull": true, + "comment": "查用户数组,tag 为 User[],会自动包装为 \"User[]\":{ ... }" + } + } + ] +}', '', '2021-10-19 22:56:24.000000', ' +简单接口的最外层参数最能放在 URL parameter,例如 format 和 info@ +/get/User[]?format=false&info@=User[]/info'); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635834529131, 0, 1631617361403, 0, 3, '标签列表', 'JSON', '/resource/apijson/get', '{ + "[]": { + "Tag": {} + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Tag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] + } + } + ] + } + } + ] +}', '', '2021-11-02 14:28:49.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837866, 0, 1490109742863, 0, 3, 'fnRptQueryForXYR', 'JSON', '/dms/fn/rpt/queryForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634695467863, 0, 1631617361403, 0, 3, '共享单位列表', 'JSON', '/resource/apijson/get', '{ + "[]": { + "ResourceApply": { + "RESOURCE_ID": "1443059665230364673", + "APPLY_STATUS": "1" + }, + "DataUnit:ParentUnit": { + "ID@": "[]/ResourceApply/UNIT_ID" + }, + "DataUnit:CompanyUnit": { + "ID@": "[]/ResourceApply/COMPANY_ID" + }, + "ResourceShare": { + "ID@": "[]/ResourceApply/SHARE_ID" + }, + "SysDict:RESOURCE_TYPE": { + "TYPE": "RESOURCE_TYPE", + "VALUE@": "[]/ResourceShare/SHARE_TYPE" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceApply": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "APPLY_STATUS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + }, + "DataUnit:ParentUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + } + } + ] + }, + "DataUnit:CompanyUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 27 + ] + } + } + ] + }, + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 25 + ] + } + } + ] + }, + "SysDict:RESOURCE_TYPE": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_TYPE" + ], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "VALUE@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 27 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2021-10-20 10:04:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634741164027, 0, 82001, 0, 3, '获取用户-简单接口', 'JSON', '/get/User', '{ + "id": 82001 +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "trend": { + "top": 1 + } + }, + "User": { + "type": "object", + "notnull": false, + "comment": "用户信息" + } + } + ] +}', '', '2021-10-20 22:46:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634845547577, 0, 88888, 0, 3, '测试 JSON5 以及单引号', 'JSON', '/get', '{ + "User": { + "id": 82001, + "@column": "id;concat(name,''-'',tag)" + }, + "[]": { + "Comment": { + "userId@": "User/id" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 23 + ] + } + } + ] + }, + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2021-10-22 03:45:47.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635160679739, 0, 99999, 0, 3, 'CASE WHEN', 'JSON', '/get', '{ + "User[]": { + "count": 0, + "User": { + "@column": "(CASE `sex` WHEN 0 THEN ''男'' WHEN ''1'' THEN 女 ELSE ''其他'' END):gender", + "@raw": "@column" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 65 + ] + }, + "@raw": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + }, + "@database": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "POSTGRESQL" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "momentId": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 15 + ], + "lengthLevel": 1, + "lengths": [] + }, + "content": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 88 + ] + }, + "@raw": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + } + } + ] +}', '', '2021-10-25 19:17:59.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635160818367, 0, 99999, 0, 3, '反引号 `key` 和单引号 ''value''', 'JSON', '/get', '{ + "Comment": { + "momentId": 15, + "content": "测试新增评论", + "@column": "`id`,toId:pid,content:ctt;date_format(`date`,''%Y.%m.%d %h:%m''):date;cast(`date` AS TIME)", + "@raw": "@column" + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "momentId": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 15 + ], + "lengthLevel": 1, + "lengths": [] + }, + "content": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 88 + ] + }, + "@raw": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2021-10-25 19:20:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635166640858, 0, 88888, 0, 3, 'SQL 关键词', 'JSON', '/get', '{ + "[]": { + "User": { + "@column": "DISTINCT cast(date AS TIME);date_add(date,INTERVAL 2 DAY)", + "@raw": "@column" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 57 + ] + }, + "@raw": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2021-10-25 20:57:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635167288971, 0, 88888, 0, 3, '窗口函数 sum(..)OVER(PARTITION BY.. ODER BY..)', 'JSON', '/get', '{ + "Comment[]": { + "Comment": { + "@column": "sum(id)OVER(PARTITION BY toId ORDER BY date DESC)", + "@raw": "@column" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 49 + ] + }, + "@raw": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "@database": { + "notnull": false, + "type": "string", + "valueLevel": 0, + "values": [ + "POSTGRESQL" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + }, + "@database": { + "notnull": false, + "type": "string", + "valueLevel": 0, + "values": [ + "POSTGRESQL" + ], + "lengthLevel": 1, + "lengths": [ + 10 + ] + } + } + ] +}', '', '2021-10-25 21:08:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635168238020, 0, 88888, 0, 3, '全文检索/搜索/索引 match(..)AGAINST(..)', 'JSON', '/get', '{ + "User[]": { + "User": { + "@column": "match(name,tag)AGAINST(''tom*'' IN NATURAL LANGUAGE MODE):match", + "@having": "(match)>=1", + "@raw": "@column" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 61 + ] + }, + "@raw": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2021-10-25 21:23:58.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635169568844, 0, 1635169494440, 0, 3, '"key!<>": [] 报错不合法,不过 "key<>": [] 可以', 'JSON', '/put', '{ + "Moment": { + "id": 15, + "praiseUserIdList!<>": [ + 82002 + ], + "praiseUserIdList+": [ + 82005 + ] + }, + "tag": "Moment", + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 15 + ], + "lengthLevel": 1, + "lengths": [] + }, + "praiseUserIdList!<>": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82002 + ], + "lengthLevel": 1, + "lengths": [] + } + ] + }, + "praiseUserIdList+": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82005 + ], + "lengthLevel": 1, + "lengths": [] + } + ] + } + } + ] + }, + "tag": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2021-10-25 21:46:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635994692546, 0, 82002, 0, 3, '关联查询 Comment.userId = User.id', 'JSON', '/login', '{ + "type": 0, + "phone": "13000082002", + "password": "123456", + "version": 1, + "remember": false, + "format": false, + "defaults": { + "@database": "MYSQL", + "@schema": "sys" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "type": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "phone": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "password": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "version": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + }, + "remember": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + false + ], + "lengthLevel": 1, + "lengths": [] + }, + "format": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + false + ], + "lengthLevel": 1, + "lengths": [] + }, + "defaults": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@database": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "MYSQL" + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "@schema": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + } + } + ] +}', '', '2021-11-04 10:58:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837889, 0, 1490109742863, 0, 3, 'fnRptYearQuery', 'JSON', '/dms/fn/rpt/yearQuery', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837918, 0, 1490109742863, 0, 3, 'fnRptYearQueryForXYR', 'JSON', '/dms/fn/rpt/yearQueryForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635236151556, 0, 1631617361403, 0, 3, '共享方式新增-消息队列', 'JSON', '/resource/apijson/post', '{ + "ResourceShare": { + "NAME": "数据库共享", + "DESC": "描述", + "SHARE_TYPE": "1", + "RESOURCE_INFO_ID": "1446390805710295041" + }, + "ResourceTopic": { + "SHARE_ID@": "ResourceShare/ID", + "QUEUE_TYPE": "0", + "QUEUE_BROKER_LIST": "50.73.141.210:39092", + "QUEUE_TOPIC_NAME": "HIK_EVENT" + }, + "ResourceInterfaceParam[]": [ + { + "SHARE_ID@": "ResourceShare/ID", + "PARAM_NAME": "id", + "PARAM_DESC": "主键id", + "PARAM_FORM": "1" + } + ] +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "SHARE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_INFO_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + }, + "ResourceTopic": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "QUEUE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "QUEUE_BROKER_LIST": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "QUEUE_TOPIC_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "HIK_EVENT" + ], + "lengthLevel": 1, + "lengths": [ + 9 + ] + } + } + ] + }, + "ResourceInterfaceParam[]": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "PARAM_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "PARAM_DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "PARAM_FORM": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + } + ] + } + } + ] +}', '', '2021-10-26 16:15:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635298359443, 0, 1631617361403, 0, 3, '共享方式修改-消息队列', 'JSON', '/resource/apijson/put', '{ + "updateShare-()": "updateShare(1634285121819)", + "ResourceShare": { + "ID": "1634285121819", + "NAME": "数据库共享1", + "DESC": "描述1", + "SHARE_TYPE": "1" + }, + "ResourceTopic-": { + "SHARE_ID": "1634285121819", + "QUEUE_TYPE": "0", + "QUEUE_BROKER_LIST": "50.73.141.210:39092", + "QUEUE_TOPIC_NAME": "HIK_EVENT" + }, + "ResourceInterfaceParam[]-": [ + { + "SHARE_ID": "1634285121819", + "PARAM_NAME": "id", + "PARAM_DESC": "主键id", + "PARAM_FORM": "1" + } + ] +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "updateShare-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 26 + ] + }, + "ResourceShare": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "SHARE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + }, + "ResourceTopic-": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "QUEUE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "QUEUE_BROKER_LIST": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "QUEUE_TOPIC_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "HIK_EVENT" + ], + "lengthLevel": 1, + "lengths": [ + 9 + ] + } + } + ] + }, + "ResourceInterfaceParam[]-": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "SHARE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "PARAM_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "PARAM_DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "PARAM_FORM": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + } + } + ] + } + ] + } + } + ] +}', '', '2021-10-27 09:32:39.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635319860975, 0, 1631617361403, 0, 3, '审批资源申请。(申请id,状态)', 'JSON', '/resource/apijson/put', '{ + "approveApply()": "approveApply(1635315914238,1)" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "approveApply()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 29 + ] + } + } + ] +}', '', '2021-10-27 15:31:00.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635815339312, 0, 1635726344906, 0, 3, 'test_id', 'JSON', '/get', '{ + "test": { + "id": 2 + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "test": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 2 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2021-11-02 09:08:59.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635817779301, 0, 1635726344906, 0, 3, 'T_i_fund', 'JSON', '/get', '{ + "T_i_fund": { + "name": "刘英" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Document": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "Db_mate": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "T_i_fund": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "name": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + } + } + ] + } + } + ] +}', '', '2021-11-02 09:49:39.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635821594785, 0, 1635755610457, 0, 3, 'Db_version', 'JSON', '/get', '{ + "Db_version": { + "id": 1 + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Db_version": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2021-11-02 10:53:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635833339003, 0, 1635726344906, 0, 3, 'post_mate_name', 'JSON', '/post', '{ + "Db_mate": { + "mate_name": "test" + }, + "tag": "Db_mate" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Db_mate": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "mate_name": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + } + } + ] + }, + "tag": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] +}', '', '2021-11-02 14:08:59.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635834419362, 0, 1631617361403, 0, 3, '标签新增', 'JSON', '/resource/apijson/post', '{ + "Tag": { + "NAME": "交通", + "DESC": "描述" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Tag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + } + } + ] + } + } + ] +}', '', '2021-11-02 14:26:59.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836971, 0, 1490109742863, 0, 3, 'dealerAmbQuery', 'JSON', '/dms/dealerAmb/sfa/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635838222713, 0, 1631617361403, 0, 3, '标签修改', 'JSON', '/resource/apijson/put', '{ + "Tag": { + "ID": "1635835429761", + "NAME": "交通1", + "DESC": "描述" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Tag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + } + } + ] + } + } + ] +}', '', '2021-11-02 15:30:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635838252891, 0, 1631617361403, 0, 3, '标签删除', 'JSON', '/resource/apijson/delete', '{ + "Tag": { + "ID": "1635835429761" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Tag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + } + } + ] +}', '', '2021-11-02 15:30:52.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635908934512, 0, 1631617361403, 0, 3, '运维日志新增', 'JSON', '/resource/apijson/post', '{ + "ResourceKnowledge": { + "TITLE": "问题标题", + "HANDLE_PERSON": "处理人", + "KEY_WORD": "关键字1;关键字2", + "HANDLE_CONTENT": "问题描述,处理办法", + "HANDLE_TIME": "to_timestamp( ''2021-11-03 10:27:00'', ''yyyy-mm-dd hh24:mi:ss'') ", + "RESOURCE_ID": "1446390805710295041" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceKnowledge": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TITLE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "HANDLE_PERSON": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "KEY_WORD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "HANDLE_CONTENT": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "HANDLE_TIME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 62 + ] + }, + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + } + } + ] +}', '', '2021-11-03 11:08:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635909163185, 0, 1631617361403, 0, 3, '运维日志修改', 'JSON', '/resource/apijson/put', '{ + "ResourceKnowledge": { + "ID": "1635908887897", + "TITLE": "问题标题", + "HANDLE_PERSON": "处理人", + "KEY_WORD": "关键字1;关键字2", + "HANDLE_CONTENT": "问题描述,处理办法", + "HANDLE_TIME": "to_timestamp( ''2021-11-03 10:27:00'', ''yyyy-mm-dd hh24:mi:ss'') ", + "RESOURCE_ID": "1446390805710295041" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceKnowledge": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "TITLE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "HANDLE_PERSON": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "KEY_WORD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "HANDLE_CONTENT": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "HANDLE_TIME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 62 + ] + }, + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + } + } + ] +}', '', '2021-11-03 11:12:43.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635911619126, 0, 1631617361403, 0, 3, '运维日志详情', 'JSON', '/resource/apijson/get', '{ + "ResourceKnowledge": { + "ID": "1635908887897" + }, + "ResourceInfo": { + "ID{}@": { + "from": "ResourceInfo:ChildSearch", + "ResourceInfo:ChildSearch": { + "@column": "max(ID):ID", + "@group": "RESOURCE_ID" + } + }, + "RESOURCE_ID@": "/ResourceKnowledge/RESOURCE_ID" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceKnowledge": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID{}@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "ResourceInfo:ChildSearch": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 30 + ] + } + } + ] + } + } + ] +}', '', '2021-11-03 12:25:56.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635918575132, 0, 1631617361403, 0, 3, '报警记录列表', 'JSON', '/resource/apijson/get', '{ + "[]": { + "LinkMonitorRecord": { + "STATUS": "1", + "RESOURCE_ID": "1446764630113288193", + "@order": "CREATED_TIME-" + }, + "ResourceInfo": { + "ID{}@": { + "from": "ResourceInfo:ChildSearch", + "ResourceInfo:ChildSearch": { + "@column": "max(ID):ID", + "@group": "RESOURCE_ID" + } + }, + "RESOURCE_ID@": "/LinkMonitorRecord/RESOURCE_ID" + }, + "query": 2, + "page": 0, + "count": 20 + }, + "total@": "/[]/total", + "page@": "/[]/page", + "info@": "/[]/info" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "LinkMonitorRecord": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "STATUS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [ + "CREATED_TIME" + ], + "lengthLevel": 1, + "lengths": [ + 13, + 12 + ] + } + } + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID{}@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "ResourceInfo:ChildSearch": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 30 + ] + } + } + ] + }, + "query": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 2 + ], + "lengthLevel": 1, + "lengths": [] + }, + "page": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 20 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "total@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "page@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "info@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] +}', '', '2021-11-03 13:49:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635919866390, 0, 1631617361403, 0, 3, '数据源分页查询', 'JSON', '/resource/apijson/get', '{ + "[]": { + "DbSource": { + "@order": "CREATED_TIME-" + }, + "query": 2, + "page": 0, + "count": 20 + }, + "total@": "/[]/total", + "page@": "/[]/page", + "info@": "/[]/info" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceKnowledge": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TITLE$": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 0 + ] + }, + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID{}@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "ResourceInfo:ChildSearch": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 30 + ] + } + } + ] + }, + "query": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 2 + ], + "lengthLevel": 1, + "lengths": [] + }, + "page": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 20 + ], + "lengthLevel": 1, + "lengths": [] + }, + "DbSource": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + } + } + ] + }, + "total@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "page@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "info@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] +}', '', '2021-11-03 14:11:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636008854885, 0, 1631617361403, 0, 3, '落地资源新增标签', 'JSON', '/resource/apijson/post', '{ + "ResourceId-()": "getResourceId()", + "ResourceInfo": { + "RESOURCE_ID@": "ResourceId", + "RESOURCE_NAME": "停车场落地数据", + "RESOURCE_TYPE": "0", + "RESOURCE_SERVE": "1", + "NET_ID": "1", + "UPDATE_FREQUENCY": "1", + "UPDATE_FREQUENCY_UNIT": "H", + "DESC": "落地资源", + "SECURITY_LEVEL": 5, + "IS_SPACE_DATA": 1 + }, + "ResourceTag[]": [ + { + "RESOURCE_TAG_ID": "1635844990052", + "RESOURCE_INFO_ID@": "ResourceId" + }, + { + "RESOURCE_TAG_ID": "1635834399214", + "RESOURCE_INFO_ID@": "ResourceId" + } + ] +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceId-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "RESOURCE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "RESOURCE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "NET_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "UPDATE_FREQUENCY_UNIT": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "H" + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "SECURITY_LEVEL": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 5 + ], + "lengthLevel": 1, + "lengths": [] + }, + "IS_SPACE_DATA": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "ResourceTag[]": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_TAG_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "RESOURCE_INFO_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + } + } + ] + } + ] + } + } + ] +}', '', '2021-11-04 14:54:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636010517920, 0, 1631617361403, 0, 3, '资源修改标签', 'JSON', '/resource/apijson/put', '{ + "updateResource-()": "updateResource(1454003856978485249,1)", + "ResourceInfo": { + "RESOURCE_ID": "1454003856978485249", + "RESOURCE_NAME": "过车治理资源", + "RESOURCE_SERVE": "1", + "NET_ID": "1635326931695", + "UNIT_ID": "1632829959078", + "COMPANY_ID": "1633684071495", + "CONTACT_PERSON_NAME": "运维联系人", + "CONTACT_PERSON_TEL": "1231241", + "VIRTUAL": 1, + "CATALOG_ID": "1635321555584", + "RESOURCE_TYPE": "0", + "SECURITY_LEVEL": 3, + "UPDATE_FREQUENCY": 10, + "UPDATE_FREQUENCY_UNIT": "1", + "IS_SPACE_DATA": "1", + "SPACE_COORDINATE": "", + "AREA_SCOPE": "suzhou", + "DESC": "过车落地数据1", + "ID": "1635496508247", + "REVISION": 1 + }, + "ResourceFile[]-": [ + { + "FILE_ATTACHMENT_ID": "1454003846597582850", + "RESOURCE_ID": "1454003856978485249", + "REVISION": 1 + }, + { + "FILE_ATTACHMENT_ID": "1456155296736067585", + "RESOURCE_ID": "1454003856978485249", + "REVISION": 1 + } + ], + "LinkInfo[]-": [ + { + "UP_NODE_ID": "1454003276532948993", + "DOWN_NODE_ID": "1454003856978485249" + }, + { + "UP_NODE_ID": "1453309505004683266", + "DOWN_NODE_ID": "1454003856978485249" + } + ], + "ResourceTag[]-": [ + { + "RESOURCE_TAG_ID": "1635844990052", + "RESOURCE_ID": "1454003856978485249", + "REVISION": 1 + }, + { + "RESOURCE_TAG_ID": "1635834399214", + "RESOURCE_ID": "1454003856978485249", + "REVISION": 1 + } + ], + "ResourceDb-": { + "RESOURCE_ID": "1454003856978485249", + "DB_TYPE": "2", + "DB_ADDRESS": "58.210.9.133", + "DB_NAME": "ccip", + "DB_URI": "jdbc:postgresql://58.210.9.133:5432/ccipdb", + "TABLE_NAME": "t_car_pass_record", + "DB_USERNAME": "ccip", + "DB_PASSWORD": "ccip", + "REVISION": 1 + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "updateResource-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 37 + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "RESOURCE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "NET_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "UNIT_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "COMPANY_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "CONTACT_PERSON_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "CONTACT_PERSON_TEL": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "VIRTUAL": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + }, + "CATALOG_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "RESOURCE_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "SECURITY_LEVEL": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 3 + ], + "lengthLevel": 1, + "lengths": [] + }, + "UPDATE_FREQUENCY": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 10 + ], + "lengthLevel": 1, + "lengths": [] + }, + "UPDATE_FREQUENCY_UNIT": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "IS_SPACE_DATA": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "SPACE_COORDINATE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 0 + ] + }, + "AREA_SCOPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DESC": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "REVISION": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "ResourceFile[]-": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "FILE_ATTACHMENT_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "REVISION": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + ] + }, + "LinkInfo[]-": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "UP_NODE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "DOWN_NODE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + } + } + ] + } + ] + }, + "ResourceTag[]-": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_TAG_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + }, + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "REVISION": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + ] + }, + "ResourceDb-": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "DB_TYPE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "DB_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 12 + ] + }, + "DB_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "DB_URI": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 42 + ] + }, + "TABLE_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + }, + "DB_USERNAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "DB_PASSWORD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "REVISION": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2021-11-04 15:21:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636010556689, 0, 1631617361403, 0, 3, '资源详情标签', 'JSON', '/resource/apijson/get', '{ + "ResourceInfo": { + "ID": "1635496508247" + }, + "DataUnit:ParentUnit": { + "ID@": "ResourceInfo/UNIT_ID" + }, + "DataUnit:CompanyUnit": { + "ID@": "ResourceInfo/COMPANY_ID" + }, + "ResourceCatalog": { + "ID@": "ResourceInfo/CATALOG_ID" + }, + "[]": { + "ResourceFile": { + "RESOURCE_ID@": "ResourceInfo/RESOURCE_ID", + "REVISION@": "ResourceInfo/REVISION" + }, + "FileAttachment": { + "ID@": "[]/ResourceFile/FILE_ATTACHMENT_ID" + } + }, + "ResourceInfo[]": { + "LinkInfo": { + "DOWN_NODE_ID@": "ResourceInfo/RESOURCE_ID" + }, + "ResourceInfo": { + "RESOURCE_ID@": "/LinkInfo/UP_NODE_ID" + } + }, + "Tag[]": { + "ResourceTag": { + "RESOURCE_ID@": "ResourceInfo/RESOURCE_ID", + "REVISION@": "ResourceInfo/REVISION" + }, + "Tag": { + "ID@": "/ResourceTag/RESOURCE_TAG_ID" + } + }, + "ResourceDb": { + "RESOURCE_ID@": "ResourceInfo/RESOURCE_ID", + "REVISION@": "ResourceInfo/REVISION" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + }, + "DataUnit:ParentUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 20 + ] + } + } + ] + }, + "DataUnit:CompanyUnit": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 23 + ] + } + } + ] + }, + "ResourceCatalog": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 23 + ] + } + } + ] + }, + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceFile": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "REVISION@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 21 + ] + } + } + ] + }, + "FileAttachment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 34 + ] + } + } + ] + } + } + ] + }, + "ResourceInfo[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "LinkInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "DOWN_NODE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + } + } + ] + }, + "ResourceInfo": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 20 + ] + } + } + ] + } + } + ] + }, + "Tag[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceTag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "REVISION@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 21 + ] + } + } + ] + }, + "Tag": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 28 + ] + } + } + ] + } + } + ] + }, + "ResourceDb": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "RESOURCE_ID@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "REVISION@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 21 + ] + } + } + ] + } + } + ] +}', '', '2021-11-04 15:22:36.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636603450441, 0, 1631617361403, 0, 3, '数据源新增', 'JSON', '/resource/apijson/post', '{ + "DbSource": { + "DB_ADDRESS": "58.210.9.133", + "DB_NAME": "public", + "DB_URI": "jdbc:postgresql://101.133.229.133:5432/postgres", + "DB_USERNAME": "username", + "DB_PASSWORD": "password" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "DbSource": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "DB_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 12 + ] + }, + "DB_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DB_URI": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 47 + ] + }, + "DB_USERNAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "DB_PASSWORD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + } + } + ] +}', '', '2021-11-11 12:04:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609140490, 0, 1631617361403, 0, 3, '数据源列表查询', 'JSON', '/resource/apijson/get', '{ + "[]": { + "DbSource": { + "@order": "CREATED_TIME-" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "DbSource": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + }, + "query": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 2 + ], + "lengthLevel": 1, + "lengths": [] + }, + "page": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 20 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "total@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "page@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "info@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] +}', '', '2021-11-11 13:39:00.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609433442, 0, 1631617361403, 0, 3, '数据源分页查询', 'JSON', '/resource/apijson/get', '{ + "[]": { + "DbSource": { + "@order": "CREATED_TIME-" + }, + "query": 2, + "page": 0, + "count": 20 + }, + "total@": "/[]/total", + "page@": "/[]/page", + "info@": "/[]/info" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "DbSource": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + }, + "query": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 2 + ], + "lengthLevel": 1, + "lengths": [] + }, + "page": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [] + }, + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 20 + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + }, + "total@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "page@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "info@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] +}', '', '2021-11-11 13:43:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609528230, 0, 1631617361403, 0, 3, '数据源详情', 'JSON', '/resource/apijson/get', '{ + "DbSource": { + "ID": "1636603446526" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "DbSource": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + } + } + ] +}', '', '2021-11-11 13:45:28.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609579288, 0, 1631617361403, 0, 3, '数据源修改', 'JSON', '/resource/apijson/put', '{ + "DbSource": { + "ID": 1636603436281, + "DB_ADDRESS": "58.210.9.133", + "DB_NAME": "public", + "DB_URI": "jdbc:postgresql://101.133.229.133:5432/postgres", + "DB_USERNAME": "username", + "DB_PASSWORD": "password" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "DbSource": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 1636603436281 + ], + "lengthLevel": 1, + "lengths": [] + }, + "DB_ADDRESS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 12 + ] + }, + "DB_NAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "DB_URI": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 47 + ] + }, + "DB_USERNAME": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "DB_PASSWORD": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + } + } + ] +}', '', '2021-11-11 13:46:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836996, 0, 1490109742863, 0, 3, 'getDealerByMobile', 'JSON', '/dms/dealer/queryByMobile', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1637822526120, 0, 1631617361403, 0, 3, '首页统计', 'JSON', '/daas-gateway/resource/apijson/get', '{ + "ResourceInfo:from": { + "ID{}@": { + "from": "ResourceInfo:ChildSearch", + "ResourceInfo:ChildSearch": { + "@column": "max(ID):ID", + "@group": "RESOURCE_ID" + } + }, + "RESOURCE_STATUS": "0", + "RESOURCE_SERVE": "0", + "@column": "count(0)" + }, + "DataUnit:from": { + "TYPE": 1, + "@column": "count(0)" + }, + "ResourceInfo:save": { + "ID{}@": { + "from": "ResourceInfo:ChildSearch", + "ResourceInfo:ChildSearch": { + "@column": "max(ID):ID", + "@group": "RESOURCE_ID" + } + }, + "RESOURCE_STATUS": "0", + "RESOURCE_SERVE": "1", + "@column": "count(0)" + }, + "ResourceEverydayCount:All": { + "ID{}@": { + "from": "ResourceEverydayCount:ChildSearch", + "ResourceEverydayCount:ChildSearch": { + "@column": "max(ID):ID", + "@group": "RESOURCE_ID" + } + }, + "@column": "sum(COUNT_NUM)" + }, + "ResourceApply": { + "@column": "count(0)" + }, + "ShareRecord": { + "@column": "sum(DATA_NUM)" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ResourceInfo:from": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID{}@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "ResourceInfo:ChildSearch": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "RESOURCE_STATUS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + }, + "DataUnit:from": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "TYPE": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + }, + "ResourceInfo:save": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID{}@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "ResourceInfo:ChildSearch": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "RESOURCE_STATUS": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "RESOURCE_SERVE": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + }, + "ResourceEverydayCount:All": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "ID{}@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 33 + ] + }, + "ResourceEverydayCount:ChildSearch": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "RESOURCE_ID" + ], + "lengthLevel": 1, + "lengths": [ + 11 + ] + } + } + ] + } + } + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + } + } + ] + }, + "ResourceApply": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + }, + "ShareRecord": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 13 + ] + } + } + ] + } + } + ] +}', '', '2021-11-25 14:42:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254136616, 0, 1638253820088, 0, 3, '用户列表', 'PARAM', '/user/list', '{ + "pageSize": 10, // 每页数量 + "pageNum": 1, // + "searchKey": "a" // 搜索关键词 +}', null, null, null, null, '2021-11-30 14:35:36.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254136620, 0, 1638253820088, 0, 3, '用户详情', 'PARAM', '/user', '{ + "id": 82001 // 主键 +}', null, null, null, null, '2021-11-30 14:35:36.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254136621, 0, 1638253820088, 0, 3, '新增评论', 'JSON', '/comment/post', '{ + "userId": 82001, // 用户id + "momentId": 15, // 动态id + "content": "测试评论" // 内容 +}', null, null, null, null, '2021-11-30 14:35:36.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254145943, 0, 1638253820088, 0, 3, '新增评论', 'JSON', '/comment/post', '{ + "userId": 82001, // 用户id + "momentId": 15, // 动态id + "content": "测试评论" // 内容 +}', null, null, null, null, '2021-11-30 14:35:45.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254145947, 0, 1638253820088, 0, 3, '用户详情', 'PARAM', '/user', '{ + "id": 82001 // 主键 +}', null, null, null, null, '2021-11-30 14:35:45.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254145952, 0, 1638253820088, 0, 3, '用户列表', 'PARAM', '/user/list', '{ + "pageSize": 10, // 每页数量 + "pageNum": 1, // + "searchKey": "a" // 搜索关键词 +}', null, null, null, null, '2021-11-30 14:35:45.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1643180646762, 0, 1642574030663, 0, 3, '查询', 'JSON', '/get', '{ + "[]": { + "Moment": { + "id{}": [ + 11, + 15, + 32 + ], + "@column": "id,date,content" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id{}": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 3 + ], + "values": [ + { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 12, + 15, + 32, + 11 + ], + "lengthLevel": 1, + "lengths": [] + } + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2022-01-26 15:04:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836336, 0, 1490109742863, 0, 3, 'callbackAuditBGData', 'JSON', '/audit/oa/callbackAuditBGData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836340, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/cas/casuser/resetPassword', '{ + "req": null // 必填。 req +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836358, 0, 1490109742863, 0, 3, 'callbackAuditData', 'JSON', '/audit/oa/callbackAuditData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836364, 0, 1490109742863, 0, 3, 'callbackAuditZGTZSData', 'JSON', '/audit/oa/callbackAuditZGTZSData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836399, 0, 1490109742863, 0, 3, 'callbackComprehensiveData', 'JSON', '/comprehensive/oa/callbackComprehensiveData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836406, 0, 1490109742863, 0, 3, 'storePerformanceMTD', 'JSON', '/dc/StorePerformanceMTD', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836427, 0, 1490109742863, 0, 3, 'getCategory', 'JSON', '/dc/category/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836438, 0, 1490109742863, 0, 3, 'getEarnestMoney', 'JSON', '/dc/costplan/detail/earnestMoney', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836476, 0, 1490109742863, 0, 3, 'getCostPlanDetail', 'JSON', '/dc/costplan/detail/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836503, 0, 1490109742863, 0, 3, 'getDetailSalePlan', 'JSON', '/dc/costplan/detail/salePlan', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836532, 0, 1490109742863, 0, 3, 'getCostPlanSearch', 'JSON', '/dc/costplan/search/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836539, 0, 1490109742863, 0, 3, 'getVerification', 'JSON', '/dc/costplan/verification/detail/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836543, 0, 1490109742863, 0, 3, 'getCostPlanQuery', 'JSON', '/dc/costplan/list/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836547, 0, 1490109742863, 0, 3, 'callBackFileOperationSuccess', 'JSON', '/dc/file/operation/success/callback', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836619, 0, 1490109742863, 0, 3, 'getMaterial', 'JSON', '/dc/material/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836674, 0, 1490109742863, 0, 3, 'getSupplier', 'JSON', '/dc/supplier/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836680, 0, 1490109742863, 0, 3, 'getUnit', 'JSON', '/dc/unit/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836741, 0, 1490109742863, 0, 3, 'XmDownloadLink', 'JSON', '/dc/xmbarcode/download/link', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836744, 0, 1490109742863, 0, 3, 'getProductInfo', 'JSON', '/dc/xmbarcode/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836806, 0, 1490109742863, 0, 3, 'getHtfy', 'JSON', '/dc/htfy/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836809, 0, 1490109742863, 0, 3, 'judge', 'JSON', '/dc/xmbarcode/sfa/exceptioncode', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836870, 0, 1490109742863, 0, 3, 'getProductInfoStatus', 'JSON', '/dc/xmbarcode/status/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836872, 0, 1490109742863, 0, 3, 'saveSfaCostCustomer', 'JSON', '/dms/costcustomer/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836890, 0, 1490109742863, 0, 3, 'getCateringCancel', 'JSON', '/dc/xmbarcode/statistical/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836900, 0, 1490109742863, 0, 3, 'getSfaCostCustomerPage', 'JSON', '/dms/costcustomerpage/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836921, 0, 1490109742863, 0, 3, 'getMiniprogramDealers', 'JSON', '/dms/dealer/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836965, 0, 1490109742863, 0, 3, 'getDealer', 'JSON', '/dms/dealer/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837937, 0, 1490109742863, 0, 3, 'saveSfaFreePoApp', 'JSON', '/dms/freePoApp/sfa/save', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837986, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList103', 'JSON', '/dms/freePoAppList103/sfa/delete', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838039, 0, 1490109742863, 0, 3, 'getSfaPoAppPage103', 'JSON', '/dms/freePoAppPage103/sfa/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838093, 0, 1490109742863, 0, 3, 'saveSfaFxPoApp', 'JSON', '/dms/fxpoapp/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838141, 0, 1490109742863, 0, 3, 'getProductSeries', 'JSON', '/dms/dict/product_series', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838150, 0, 1490109742863, 0, 3, 'getSfaDist', 'JSON', '/dms/dis/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838183, 0, 1490109742863, 0, 3, 'getInvoiceType', 'JSON', '/dms/invoicetype/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838203, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/kuadi100/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838229, 0, 1490109742863, 0, 3, 'callbackLogRecord', 'JSON', '/dms/log/callback', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838282, 0, 1490109742863, 0, 3, 'login', 'JSON', '/dms/login', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838338, 0, 1490109742863, 0, 3, 'loginCode', 'JSON', '/dms/loginCode', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838391, 0, 1490109742863, 0, 3, 'miniprogramLogin', 'JSON', '/dms/miniprogram-login', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838405, 0, 1490109742863, 0, 3, 'queryNotifyList', 'JSON', '/dms/notify/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838447, 0, 1490109742863, 0, 3, 'queryMPDealerStoreSupply', 'JSON', '/dms/miniprogram/dealer_store_supply/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838456, 0, 1490109742863, 0, 3, 'getPoAppList', 'JSON', '/dms/po/poAppList/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838496, 0, 1490109742863, 0, 3, 'savePoDistStatus', 'JSON', '/dms/poDistStatus/eas/save', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838508, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList', 'JSON', '/dms/poapplist/sfa/delete', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838510, 0, 1490109742863, 0, 3, 'startSfaPoApp', 'JSON', '/dms/poapp/sfa/start', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838702, 0, 1490109742863, 0, 3, 'queueSavePurchaseOrder', 'JSON', '/dms/poapplist/sfa/queueSavePurchaseOrder', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838753, 0, 1490109742863, 0, 3, 'saveSfaPoAppList', 'JSON', '/dms/poapplist/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838774, 0, 1490109742863, 0, 3, 'getPoAppDetail', 'JSON', '/dms/po/poAppDetail/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838804, 0, 1490109742863, 0, 3, 'fnRptPoAppList', 'JSON', '/dms/po/poAppList/poAppListForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838806, 0, 1490109742863, 0, 3, 'getDistributionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838988, 0, 1490109742863, 0, 3, 'getSfaPoAppPage', 'JSON', '/dms/poapppage/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839021, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage', 'JSON', '/dms/poapppage/posfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839084, 0, 1490109742863, 0, 3, 'getMiniProgramPoAppPage106', 'JSON', '/dms/poapppage106/miniprogram/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839087, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList105', 'JSON', '/dms/poapplist105/sfa/delete', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839098, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage106', 'JSON', '/dms/poapppage106/posfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839221, 0, 1490109742863, 0, 3, 'poPreList', 'JSON', '/dms/pre/poPreList', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839261, 0, 1490109742863, 0, 3, 'saveSfaPoPre', 'JSON', '/dms/pre/saveSfaPoPre', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839308, 0, 1490109742863, 0, 3, 'startSfaPoPre', 'JSON', '/dms/pre/startSfaPoPre', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839336, 0, 1490109742863, 0, 3, 'suspendSfaPoPre', 'JSON', '/dms/pre/suspendSfaPoPre', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839363, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/dms/product/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839386, 0, 1490109742863, 0, 3, 'saveSfaDistributeBill', 'JSON', '/dms/po/saveSfaDistributeBill', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839450, 0, 1490109742863, 0, 3, 'wbPoAppMasterForEas', 'JSON', '/dms/po/wbPoAppMasterForEas', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839460, 0, 1490109742863, 0, 3, 'aInvQueryDetail', 'JSON', '/dms/rpt/aInvQueryDetail', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839523, 0, 1490109742863, 0, 3, 'getDfundBalanceList', 'JSON', '/dms/rpt/dfundBalance/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839583, 0, 1490109742863, 0, 3, 'fnRptDfundDetail', 'JSON', '/dms/rpt/dfundDetail/dfundDetailForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839625, 0, 1490109742863, 0, 3, 'getDfundDetailList', 'JSON', '/dms/rpt/dfundDetail/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839641, 0, 1490109742863, 0, 3, 'fnRptDfundSum', 'JSON', '/dms/rpt/dfundSum/dfundSumForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839660, 0, 1490109742863, 0, 3, 'getTaskDetailQueryList', 'JSON', '/dms/rpt/taskDetailQuery', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839690, 0, 1490109742863, 0, 3, 'getTaskQueryList', 'JSON', '/dms/rpt/taskQuery', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839720, 0, 1490109742863, 0, 3, 'queryWjListForBizPerson', 'JSON', '/dms/servey/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839743, 0, 1490109742863, 0, 3, 'saveStorePickupLocation', 'JSON', '/dms/save/storePickupLocation', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839745, 0, 1490109742863, 0, 3, 'queryMiniprogramServeyList', 'JSON', '/dms/serveyList/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839785, 0, 1490109742863, 0, 3, 'cancelSfaPromotePoApp', 'JSON', '/dms/sfa/cancelSfaPromotePoApp', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839809, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList108', 'JSON', '/dms/sfa/deleteSfaPoAppList108', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839838, 0, 1490109742863, 0, 3, 'getSfaPoAppPage108', 'JSON', '/dms/sfa/getSfaPoAppPage108', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839865, 0, 1490109742863, 0, 3, 'getProduct', 'JSON', '/dms/product/query', '{ + "dmsMessageDTO": {} // 必填。 dmsMessageDTO +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839925, 0, 1490109742863, 0, 3, 'initializeAllSCRMTerminal', 'JSON', '/dms/sfa/initializeAllSCRMTerminal', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839930, 0, 1490109742863, 0, 3, 'orderApprovalRecord', 'JSON', '/dms/sfa/orderApprovalRecord', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840005, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStore', 'JSON', '/dms/sfa/saveOrUpdateSfaStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840010, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaDistributorSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaDistributorSupplier', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840070, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/delete', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840144, 0, 1490109742863, 0, 3, 'deleteMQPoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/deleteMQ', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840198, 0, 1490109742863, 0, 3, 'saveSfaPromotePoApp', 'JSON', '/dms/sfa/saveSfaPromotePoApp', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840249, 0, 1490109742863, 0, 3, 'sfaLogin', 'JSON', '/dms/sfaLogin', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840309, 0, 1490109742863, 0, 3, 'getSfaStore', 'JSON', '/dms/store/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840374, 0, 1490109742863, 0, 3, 'saveSfaStore', 'JSON', '/dms/store/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840426, 0, 1490109742863, 0, 3, 'getsfaStoreDateKpiList', 'JSON', '/dms/storeDateKpi/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840431, 0, 1490109742863, 0, 3, 'storeTask', 'JSON', '/dms/store/todoTask', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840492, 0, 1490109742863, 0, 3, 'getSfaExpandStore', 'JSON', '/dms/storeExpand/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840493, 0, 1490109742863, 0, 3, 'getSfaExpandStoreList', 'JSON', '/dms/storeExpandList/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840506, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/dms/storeList/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840531, 0, 1490109742863, 0, 3, 'getDmsStoreList', 'JSON', '/dms/storelist/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840561, 0, 1490109742863, 0, 3, 'saveSfaSzPoApp', 'JSON', '/dms/szpoapp/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840563, 0, 1490109742863, 0, 3, 'getSfaStoreList', 'JSON', '/dms/storelist/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840578, 0, 1490109742863, 0, 3, 'saveSfaDealers', 'JSON', '/dms/szdealer/sfa/save', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840584, 0, 1490109742863, 0, 3, 'getSfaStoreUpdateList', 'JSON', '/dms/storeupdatelist/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840643, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/dms/token/query', '{ + "dmsMessageDTO": {} // 必填。 dmsMessageDTO +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840649, 0, 1490109742863, 0, 3, 'queryCooperationStoreDelivery', 'JSON', '/dms/weimob/cooperation_store_delivery/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840702, 0, 1490109742863, 0, 3, 'queryDealerStoreSupply', 'JSON', '/dms/weimob/dealer_store_supply/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840707, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/dms/wine/employeeLogin', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840796, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/dms/wine/getDealerPage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840854, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/dms/wine/getPoAppPage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840857, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/wine/getKuaidi100', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840884, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/dms/wine/getWineCustom', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840909, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/dms/wine/getWineLocation', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840914, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStoreSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaStoreSupplier', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840937, 0, 1490109742863, 0, 3, 'saveDealer', 'JSON', '/dms/wine/saveDealer', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840961, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/dms/wine/savePayVoucherPhotos', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840967, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/dms/wine/savePoApp', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840971, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/dms/wine/saveWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841015, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/dms/wine/saveWineSubPack', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841030, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/dms/wine/submitWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841032, 0, 1490109742863, 0, 3, 'callRechargeBill', 'JSON', '/eas/recharge', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841070, 0, 1490109742863, 0, 3, 'getDealerFees', 'JSON', '/fineReport/marketingBoard/dealerFees', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841098, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/marketingBoard/fa1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841120, 0, 1490109742863, 0, 3, 'getFa2AreaNameResult', 'JSON', '/fineReport/marketingBoard/fa1AreaName', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841152, 0, 1490109742863, 0, 3, 'getFa2Result', 'JSON', '/fineReport/marketingBoard/fa2', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841184, 0, 1490109742863, 0, 3, 'getFa3Result', 'JSON', '/fineReport/marketingBoard/fa3', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841208, 0, 1490109742863, 0, 3, 'getFa4Result', 'JSON', '/fineReport/marketingBoard/fa4', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841238, 0, 1490109742863, 0, 3, 'getFa5Result', 'JSON', '/fineReport/marketingBoard/fa5', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841263, 0, 1490109742863, 0, 3, 'getFa6Result', 'JSON', '/fineReport/marketingBoard/fa6', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841277, 0, 1490109742863, 0, 3, 'getFa6ShortResult', 'JSON', '/fineReport/marketingBoard/fa6Short', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841294, 0, 1490109742863, 0, 3, 'getFb3Market1Result', 'JSON', '/fineReport/marketingBoard/fb3Market1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841355, 0, 1490109742863, 0, 3, 'getFd1SubSaleResult', 'JSON', '/fineReport/marketingBoard/fd1SubSale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841403, 0, 1490109742863, 0, 3, 'getFd1SaleResult', 'JSON', '/fineReport/marketingBoard/fd1Sale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841452, 0, 1490109742863, 0, 3, 'getFe1MarketResult', 'JSON', '/fineReport/marketingBoard/fe1Market', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841507, 0, 1490109742863, 0, 3, 'getFd2SaleResult', 'JSON', '/fineReport/marketingBoard/fd2Sale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841566, 0, 1490109742863, 0, 3, 'getFe1StoreResult', 'JSON', '/fineReport/marketingBoard/fe1Store', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841568, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/dms/wine/saveWineCustom', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841794, 0, 1490109742863, 0, 3, 'clearCacheForMarketing', 'JSON', '/fineReport/marketingBoard/clearCache', '{ +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841808, 0, 1490109742863, 0, 3, 'getFc1OrderResult', 'JSON', '/fineReport/marketingBoard/fc1Order', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841847, 0, 1490109742863, 0, 3, 'getFf1RedpackResult', 'JSON', '/fineReport/marketingBoard/ff1Redpack', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841862, 0, 1490109742863, 0, 3, 'getFf1RedpackLastyearResult', 'JSON', '/fineReport/marketingBoard/ff1RedpackLastyear', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841910, 0, 1490109742863, 0, 3, 'getFf2ScanResult', 'JSON', '/fineReport/marketingBoard/ff2Scan', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841917, 0, 1490109742863, 0, 3, 'getFlevelResult', 'JSON', '/fineReport/marketingBoard/flevel', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841927, 0, 1490109742863, 0, 3, 'getCategoryResult', 'JSON', '/fineReport/marketingBoard/getCategory', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841982, 0, 1490109742863, 0, 3, 'getProductResult', 'JSON', '/fineReport/marketingBoard/getProduct', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841984, 0, 1490109742863, 0, 3, 'getDealerResult', 'JSON', '/fineReport/marketingBoard/getDealer', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841986, 0, 1490109742863, 0, 3, 'getDealerScanCodeDetailResult', 'JSON', '/fineReport/marketingBoard/getDealerScanCodeDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842045, 0, 1490109742863, 0, 3, 'getJxsResult', 'JSON', '/fineReport/marketingBoard/jxs', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842047, 0, 1490109742863, 0, 3, 'getSeriesResult', 'JSON', '/fineReport/marketingBoard/getSeries', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842123, 0, 1490109742863, 0, 3, 'getJxsReturnByMonth', 'JSON', '/fineReport/marketingBoard/jxsReturnByMonth', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842195, 0, 1490109742863, 0, 3, 'getOfficesResult', 'JSON', '/fineReport/marketingBoard/offices', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842249, 0, 1490109742863, 0, 3, 'getRegionalMarketCostTrackingResult', 'JSON', '/fineReport/marketingBoard/regionalMarketCostTracking', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842310, 0, 1490109742863, 0, 3, 'getMOBA1B1Result', 'JSON', '/fineReport/moveOffBoard/a1b1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842364, 0, 1490109742863, 0, 3, 'getMOBBuysSellsAndStoresForPersonalResult', 'JSON', '/fineReport/moveOffBoard/buysSellsAndStoresForPersonal', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842372, 0, 1490109742863, 0, 3, 'getByMainstream', 'JSON', '/fineReport/moveOffBoard/byMainstream', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842429, 0, 1490109742863, 0, 3, 'getMOBCategoryResult', 'PARAM', '/fineReport/moveOffBoard/category', '{ +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842434, 0, 1490109742863, 0, 3, 'clearCacheForMove', 'JSON', '/fineReport/moveOffBoard/clearCache', '{ +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842491, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalResult', 'JSON', '/fineReport/moveOffBoard/coreTerminal', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842493, 0, 1490109742863, 0, 3, 'getCompletionAmount', 'JSON', '/fineReport/moveOffBoard/completionAmount', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842755, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalForPersonalResult', 'JSON', '/fineReport/moveOffBoard/coreTerminalForPersonal', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842760, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalReplenishmentResult', 'JSON', '/fineReport/moveOffBoard/coreTerminalReplenishment', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842817, 0, 1490109742863, 0, 3, 'getMOBFNameForStringResult', 'JSON', '/fineReport/moveOffBoard/fNameForString', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842819, 0, 1490109742863, 0, 3, 'getMOBFNameResult', 'JSON', '/fineReport/moveOffBoard/fName', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842848, 0, 1490109742863, 0, 3, 'getCompletionRate', 'JSON', '/fineReport/moveOffBoard/completionRate', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842875, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/moveOffBoard/fa1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842894, 0, 1490109742863, 0, 3, 'getMOBFc3Result', 'JSON', '/fineReport/moveOffBoard/fc3', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842935, 0, 1490109742863, 0, 3, 'getMOBFc1TargetResult', 'JSON', '/fineReport/moveOffBoard/fc1Target', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842945, 0, 1490109742863, 0, 3, 'getMOBFc1Target1Result', 'JSON', '/fineReport/moveOffBoard/fc1Target1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842957, 0, 1490109742863, 0, 3, 'getMOBFd1Result', 'JSON', '/fineReport/moveOffBoard/fd1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:22.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843007, 0, 1490109742863, 0, 3, 'getMOBFe1Result', 'JSON', '/fineReport/moveOffBoard/fe1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843013, 0, 1490109742863, 0, 3, 'getMOBFe3Result', 'JSON', '/fineReport/moveOffBoard/fe3', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843078, 0, 1490109742863, 0, 3, 'getMOBFe2Result', 'JSON', '/fineReport/moveOffBoard/fe2', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843082, 0, 1490109742863, 0, 3, 'getMOBFe4Result', 'JSON', '/fineReport/moveOffBoard/fe4', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843168, 0, 1490109742863, 0, 3, 'getIndexDefinitionResult', 'JSON', '/fineReport/moveOffBoard/indexDefinition', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843269, 0, 1490109742863, 0, 3, 'getMOBLevelResult', 'PARAM', '/fineReport/moveOffBoard/level', '{ +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843319, 0, 1490109742863, 0, 3, 'getMediumAndHighEnd', 'JSON', '/fineReport/moveOffBoard/mediumAndHighEnd', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843366, 0, 1490109742863, 0, 3, 'getMOBSalesmanBuysSellsAndStoresResult', 'JSON', '/fineReport/moveOffBoard/salesmanBuysSellsAndStores', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843387, 0, 1490109742863, 0, 3, 'getMOBOrgResult', 'JSON', '/fineReport/moveOffBoard/org', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843414, 0, 1490109742863, 0, 3, 'getMOBShipmentForPersonalResult', 'JSON', '/fineReport/moveOffBoard/shipmentForPersonal', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843467, 0, 1490109742863, 0, 3, 'getUserInfoPermissionResult', 'JSON', '/fineReport/moveOffBoard/userInfoPermission', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843521, 0, 1490109742863, 0, 3, 'getJxFlevel', 'JSON', '/fineReport/sauceAroma/flevelForJx', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843569, 0, 1490109742863, 0, 3, 'getJxDealerScanStock', 'JSON', '/fineReport/sauceAroma/jxDealerScanStock', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843600, 0, 1490109742863, 0, 3, 'getJxDistributor', 'JSON', '/fineReport/sauceAroma/jxDistributor', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843618, 0, 1490109742863, 0, 3, 'getJxFA1', 'JSON', '/fineReport/sauceAroma/jxFa1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843655, 0, 1490109742863, 0, 3, 'getJxFA3', 'JSON', '/fineReport/sauceAroma/jxFa3', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843664, 0, 1490109742863, 0, 3, 'getJxFA5', 'JSON', '/fineReport/sauceAroma/jxFa5', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843679, 0, 1490109742863, 0, 3, 'getJXFB3Market1', 'JSON', '/fineReport/sauceAroma/jxFb3Market1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843709, 0, 1490109742863, 0, 3, 'getJxFD1Sale', 'JSON', '/fineReport/sauceAroma/jxFd1Sale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843713, 0, 1490109742863, 0, 3, 'getJxFD1Subsale', 'JSON', '/fineReport/sauceAroma/jxFd1subsale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843730, 0, 1490109742863, 0, 3, 'getJXFE1Market', 'JSON', '/fineReport/sauceAroma/jxFe1Market', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843775, 0, 1490109742863, 0, 3, 'getJxIndex', 'JSON', '/fineReport/sauceAroma/jxIndex', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843784, 0, 1490109742863, 0, 3, 'getJxProduct', 'JSON', '/fineReport/sauceAroma/jxProduct', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843840, 0, 1490109742863, 0, 3, 'getJxRegion', 'JSON', '/fineReport/sauceAroma/jxRegion', '{ +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843856, 0, 1490109742863, 0, 3, 'getAccumulatedBusiness', 'JSON', '/fineReport/supplyChain/accumulatedBusiness', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843899, 0, 1490109742863, 0, 3, 'getBaseSineInventory', 'JSON', '/fineReport/supplyChain/baseSineInventory', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843908, 0, 1490109742863, 0, 3, 'getBaseWine', 'JSON', '/fineReport/supplyChain/baseWine', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843959, 0, 1490109742863, 0, 3, 'getBOMVersionManagement', 'JSON', '/fineReport/supplyChain/bomVersionManagement', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843965, 0, 1490109742863, 0, 3, 'getCapacity', 'JSON', '/fineReport/supplyChain/capacity', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844027, 0, 1490109742863, 0, 3, 'getClosingThisYear', 'JSON', '/fineReport/supplyChain/closingThisYear', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844078, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouse', 'JSON', '/fineReport/supplyChain/finishedProductWarehouse', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844129, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouses', 'JSON', '/fineReport/supplyChain/finishedProductWarehouses', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844161, 0, 1490109742863, 0, 3, 'getFinishedProductInventory', 'JSON', '/fineReport/supplyChain/finishedProductInventorie', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844180, 0, 1490109742863, 0, 3, 'getJxs', 'JSON', '/fineReport/supplyChain/jxs', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844213, 0, 1490109742863, 0, 3, 'getLastMonthMaterials', 'JSON', '/fineReport/supplyChain/lastMonthMaterials', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844232, 0, 1490109742863, 0, 3, 'getLuzhouFlavor', 'JSON', '/fineReport/supplyChain/luzhouFlavor', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844251, 0, 1490109742863, 0, 3, 'getMaotaiFlavor', 'JSON', '/fineReport/supplyChain/maotaiFlavor', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844264, 0, 1490109742863, 0, 3, 'getMonthResults', 'JSON', '/fineReport/supplyChain/month', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844267, 0, 1490109742863, 0, 3, 'getMonthlyPackaging', 'JSON', '/fineReport/supplyChain/monthlyPackaging', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844295, 0, 1490109742863, 0, 3, 'getJXJxs', 'JSON', '/fineReport/sauceAroma/jxJxs', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844302, 0, 1490109742863, 0, 3, 'getPackageInventory', 'JSON', '/fineReport/supplyChain/packageInventory', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844325, 0, 1490109742863, 0, 3, 'getJxOffice', 'JSON', '/fineReport/sauceAroma/jxOffice', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844358, 0, 1490109742863, 0, 3, 'getPackagingMaterialInventory', 'JSON', '/fineReport/supplyChain/packagingMaterialInventory', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844379, 0, 1490109742863, 0, 3, 'getPackagingMaterialLoss', 'JSON', '/fineReport/supplyChain/packagingMaterialLoss', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844385, 0, 1490109742863, 0, 3, 'getProductionQuantity', 'JSON', '/fineReport/supplyChain/ProductionQuantity', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844406, 0, 1490109742863, 0, 3, 'getPackingMaterialDetails', 'JSON', '/fineReport/supplyChain/packingMaterialDetails', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844445, 0, 1490109742863, 0, 3, 'getPlanForThisMonth', 'JSON', '/fineReport/supplyChain/planForThisMonth', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844448, 0, 1490109742863, 0, 3, 'getPackagingMaterialProcurement', 'JSON', '/fineReport/supplyChain/packagingMaterialProcurement', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844453, 0, 1490109742863, 0, 3, 'getProductPlan', 'JSON', '/fineReport/supplyChain/productPlan', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844507, 0, 1490109742863, 0, 3, 'getProductionOrder', 'JSON', '/fineReport/supplyChain/productionOrder', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844513, 0, 1490109742863, 0, 3, 'getProductProduction', 'JSON', '/fineReport/supplyChain/productProduction', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844514, 0, 1490109742863, 0, 3, 'getPurchaseOrder', 'JSON', '/fineReport/supplyChain/purchaseOrder', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844574, 0, 1490109742863, 0, 3, 'getRateProductPackaging', 'JSON', '/fineReport/supplyChain/rateProductPackaging', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844575, 0, 1490109742863, 0, 3, 'getSalesDelivery', 'JSON', '/fineReport/supplyChain/salesDelivery', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844580, 0, 1490109742863, 0, 3, 'getQualityInspectionDetails', 'JSON', '/fineReport/supplyChain/qualityInspectionDetails', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844599, 0, 1490109742863, 0, 3, 'getSupplierInspection', 'JSON', '/fineReport/supplyChain/supplierInspection', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844601, 0, 1490109742863, 0, 3, 'getSuppliercg', 'JSON', '/fineReport/supplyChain/suppliercg', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844635, 0, 1490109742863, 0, 3, 'getWineBeLoaded', 'JSON', '/fineReport/supplyChain/wineBeLoaded', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844638, 0, 1490109742863, 0, 3, 'getAOGTimeliness', 'JSON', '/fineReport/supplyChainBoardXS/getAOGTimeliness', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844647, 0, 1490109742863, 0, 3, 'getCapacityUtilization', 'JSON', '/fineReport/supplyChainBoardXS/getCapacityUtilization', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844676, 0, 1490109742863, 0, 3, 'getTimelyProcurement', 'JSON', '/fineReport/supplyChain/timelyProcurement', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844711, 0, 1490109742863, 0, 3, 'getDaQuPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getDaQuPercentage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844717, 0, 1490109742863, 0, 3, 'getFinishedProductTop10', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductTop10', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844788, 0, 1490109742863, 0, 3, 'getInspectQualifiedRate', 'JSON', '/fineReport/supplyChainBoardXS/getInspectQualifiedRate', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844818, 0, 1490109742863, 0, 3, 'getLiquorPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorPercentage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844839, 0, 1490109742863, 0, 3, 'getLiquorStandardPracticalDetail', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPracticalDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844877, 0, 1490109742863, 0, 3, 'getPackAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPackAmount', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844890, 0, 1490109742863, 0, 3, 'getLiquorStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPractical', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844941, 0, 1490109742863, 0, 3, 'getPackAttritionRate', 'JSON', '/fineReport/supplyChainBoardXS/getPackAttritionRate', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844944, 0, 1490109742863, 0, 3, 'getPackDetail', 'JSON', '/fineReport/supplyChainBoardXS/getPackDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844970, 0, 1490109742863, 0, 3, 'getPackInventorySituation', 'JSON', '/fineReport/supplyChainBoardXS/getPackInventorySituation', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845001, 0, 1490109742863, 0, 3, 'getPackPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getPackPercentage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845010, 0, 1490109742863, 0, 3, 'getPackStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getPackStandardPractical', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845026, 0, 1490109742863, 0, 3, 'getPackProductAndWastage', 'JSON', '/fineReport/supplyChainBoardXS/getPackProductAndWastage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845066, 0, 1490109742863, 0, 3, 'getParaphrase', 'JSON', '/fineReport/supplyChainBoardXS/getParaphrase', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845071, 0, 1490109742863, 0, 3, 'getPlanAndRealityPack', 'JSON', '/fineReport/supplyChainBoardXS/getPlanAndRealityPack', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845084, 0, 1490109742863, 0, 3, 'getProductDaysDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductDaysDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845136, 0, 1490109742863, 0, 3, 'getProductFinishedSituation', 'JSON', '/fineReport/supplyChainBoardXS/getProductFinishedSituation', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845140, 0, 1490109742863, 0, 3, 'getProductOrderDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductOrderDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845141, 0, 1490109742863, 0, 3, 'getPlanProductionDetail', 'JSON', '/fineReport/supplyChainBoardXS/getPlanProductionDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845207, 0, 1490109742863, 0, 3, 'getPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPurchaseAmount', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845210, 0, 1490109742863, 0, 3, 'getSupplyPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getSupplyPurchaseAmount', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845269, 0, 1490109742863, 0, 3, 'getUnqualifiedDetail', 'JSON', '/fineReport/supplyChainBoardXS/getUnqualifiedDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845297, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/ft/product/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845299, 0, 1490109742863, 0, 3, 'getYDGoodsYield', 'JSON', '/fineReport/supplyChainBoardXS/getYDGoodsYield', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845320, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/ft/wine/employeeLogin', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847048, 0, 1490109742863, 0, 3, 'test3', 'JSON', '/test/test3/{time}', '{ + "time": 1 // 必填。 time +}', null, null, null, null, '2022-02-09 15:47:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845354, 0, 1490109742863, 0, 3, 'getFinishedProductStorage', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductStorage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845374, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/ft/wine/getDealerPage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845431, 0, 1490109742863, 0, 3, 'getPdfData', 'JSON', '/ft/wine/getPdfData', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845447, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/ft/wine/getKuaidi100', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845662, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/ft/wine/getWineCustom', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845716, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/ft/wine/getPoAppPage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845773, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/ft/wine/getWineLocation', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845776, 0, 1490109742863, 0, 3, 'getWineStorePage', 'JSON', '/ft/wine/getWineStorePage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845852, 0, 1490109742863, 0, 3, 'queryContractus', 'JSON', '/ft/wine/queryContractus', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845853, 0, 1490109742863, 0, 3, 'saveContractPhotos', 'JSON', '/ft/wine/saveContractPhotos', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845911, 0, 1490109742863, 0, 3, 'saveContractus', 'JSON', '/ft/wine/saveContractus', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845962, 0, 1490109742863, 0, 3, 'getProductionInStock', 'JSON', '/fineReport/supplyChainBoardXS/getProductionInStock', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:47:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846017, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/ft/wine/savePayVoucherPhotos', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846080, 0, 1490109742863, 0, 3, 'saveDealer', 'JSON', '/ft/wine/saveDealer', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846143, 0, 1490109742863, 0, 3, 'savePdfImgs', 'JSON', '/ft/wine/savePdfImgs', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846153, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/ft/wine/savePoApp', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846199, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/ft/wine/saveWineCustom', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846211, 0, 1490109742863, 0, 3, 'addNewWineStore', 'JSON', '/ft/wine/addNewWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846256, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/ft/wine/saveWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846276, 0, 1490109742863, 0, 3, 'saveWineQueue', 'JSON', '/ft/wine/saveWineQueue', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846297, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/ft/wine/submitWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846314, 0, 1490109742863, 0, 3, 'suspendSealWine', 'JSON', '/ft/wine/suspendSealWine', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846347, 0, 1490109742863, 0, 3, 'getActivityPeopleSize', 'JSON', '/h2/activityPeopleSize/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846397, 0, 1490109742863, 0, 3, 'getUserRelationshipLevel', 'JSON', '/h2/userRelationship/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846400, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/h2/storeList/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846431, 0, 1490109742863, 0, 3, 'getUserRelationshipRecord', 'JSON', '/h2/userRelationshipRecord/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846459, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/hr/oa/callbackProcessData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846462, 0, 1490109742863, 0, 3, 'checkJobs', 'JSON', '/hr/oa/checkJobs', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846494, 0, 1490109742863, 0, 3, 'checkMobile', 'JSON', '/hr/oa/checkMobile', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846547, 0, 1490109742863, 0, 3, 'queryDeparture', 'JSON', '/hr/oa/departure', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846559, 0, 1490109742863, 0, 3, 'queryPosition', 'JSON', '/hr/oa/position', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846596, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/ft/wine/saveWineSubPack', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846620, 0, 1490109742863, 0, 3, 'queryMobileByUserId', 'JSON', '/hr/oa/queryMobileByUserId', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846622, 0, 1490109742863, 0, 3, 'queryPositiveTx1', 'JSON', '/hr/oa/queryPositiveTx1', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846636, 0, 1490109742863, 0, 3, 'queryPositiveTx2', 'JSON', '/hr/oa/queryPositiveTx2', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846648, 0, 1490109742863, 0, 3, 'getInviteUserFunctionLevel', 'JSON', '/h2/InviteUserFunction/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846685, 0, 1490109742863, 0, 3, 'getActivityPeopleList', 'JSON', '/h2/activityPeopleList/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846687, 0, 1490109742863, 0, 3, 'queryTx1', 'JSON', '/hr/oa/queryTx1', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846709, 0, 1490109742863, 0, 3, 'checkCode', 'JSON', '/message/check/code', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846766, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send3', '{ + "smsMessageDTO": {} // 必填。 smsMessageDTO +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846770, 0, 1490109742863, 0, 3, 'queryTx2', 'JSON', '/hr/oa/queryTx2', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846771, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send', '{ + "smsMessageDTO": {} // 必填。 smsMessageDTO +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846835, 0, 1490109742863, 0, 3, 'smsSend', 'JSON', '/message/sms/send', '{ + "smsMessageDTO": {} // 必填。 smsMessageDTO +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846837, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send2', '{ + "smsMessageDTO": {} // 必填。 smsMessageDTO +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846900, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/oauth/token/query', '{ + "dmsMessageDTO": {} // 必填。 dmsMessageDTO +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846911, 0, 1490109742863, 0, 3, 'storeStockItemMTD', 'JSON', '/sfa/storeStockItemMTD', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846969, 0, 1490109742863, 0, 3, 'xmbarcodeQuery', 'JSON', '/sfa/xmbarcode/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846971, 0, 1490109742863, 0, 3, 'test1', 'PARAM', '/test/test1', '{ +}', null, null, null, null, '2022-02-09 15:47:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847206, 0, 1490109742863, 0, 3, 'code', 'PARAM', '/weimob/oauth/code', '{ + "code": "" // code +}', null, null, null, null, '2022-02-09 15:47:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847209, 0, 1490109742863, 0, 3, 'suspendWineStore', 'JSON', '/ft/wine/suspendWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:47:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847349, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/wms/xinmaStackData/qryCodeData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847352, 0, 1490109742863, 0, 3, 'cancelToDoListById', 'JSON', '/oa/workflow/cancelToDoListById', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:47:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847449, 0, 1490109742863, 0, 3, 'getStoreListByMobile', 'JSON', '/sfa/getStoreListByMobile', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:47:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392880998, 0, 1490109742863, 0, 3, 'get', 'JSON', '/apijson/get', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881034, 0, 1490109742863, 0, 3, 'get', 'JSON', '/apijsonForDc/get', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881043, 0, 1490109742863, 0, 3, 'callbackAuditZGTZSData', 'JSON', '/audit/oa/callbackAuditZGTZSData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881057, 0, 1490109742863, 0, 3, 'callbackAuditData', 'JSON', '/audit/oa/callbackAuditData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881072, 0, 1490109742863, 0, 3, 'callbackComprehensiveData', 'JSON', '/comprehensive/oa/callbackComprehensiveData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881084, 0, 1490109742863, 0, 3, 'callbackAuditBGData', 'JSON', '/audit/oa/callbackAuditBGData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881126, 0, 1490109742863, 0, 3, 'storePerformanceMTD', 'JSON', '/dc/StorePerformanceMTD', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881185, 0, 1490109742863, 0, 3, 'queryMiniprogramAddressDetail', 'JSON', '/dc/addressDetail/miniprogram/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881236, 0, 1490109742863, 0, 3, 'getCategory', 'JSON', '/dc/category/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881292, 0, 1490109742863, 0, 3, 'getEarnestMoney', 'JSON', '/dc/costplan/detail/earnestMoney', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881325, 0, 1490109742863, 0, 3, 'getCostPlanDetail', 'JSON', '/dc/costplan/detail/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881351, 0, 1490109742863, 0, 3, 'getVerification', 'JSON', '/dc/costplan/verification/detail/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881356, 0, 1490109742863, 0, 3, 'getDetailSalePlan', 'JSON', '/dc/costplan/detail/salePlan', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881376, 0, 1490109742863, 0, 3, 'getCostPlanSearch', 'JSON', '/dc/costplan/search/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881402, 0, 1490109742863, 0, 3, 'callBackFileOperationSuccess', 'JSON', '/dc/file/operation/success/callback', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881412, 0, 1490109742863, 0, 3, 'getHtfy', 'JSON', '/dc/htfy/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881467, 0, 1490109742863, 0, 3, 'XmDownloadLink', 'JSON', '/dc/xmbarcode/download/link', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881519, 0, 1490109742863, 0, 3, 'getProductInfo', 'JSON', '/dc/xmbarcode/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881524, 0, 1490109742863, 0, 3, 'judge', 'JSON', '/dc/xmbarcode/sfa/exceptioncode', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881557, 0, 1490109742863, 0, 3, 'getCostPlanQuery', 'JSON', '/dc/costplan/list/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881578, 0, 1490109742863, 0, 3, 'getCateringCancel', 'JSON', '/dc/xmbarcode/statistical/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881584, 0, 1490109742863, 0, 3, 'getProductInfoStatus', 'JSON', '/dc/xmbarcode/status/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881621, 0, 1490109742863, 0, 3, 'saveSfaCostCustomer', 'JSON', '/dms/costcustomer/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881651, 0, 1490109742863, 0, 3, 'getSfaCostCustomerPage', 'JSON', '/dms/costcustomerpage/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881652, 0, 1490109742863, 0, 3, 'getDealer', 'JSON', '/dms/dealer/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881657, 0, 1490109742863, 0, 3, 'getMiniprogramDealers', 'JSON', '/dms/dealer/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881672, 0, 1490109742863, 0, 3, 'getDealerByMobile', 'JSON', '/dms/dealer/queryByMobile', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881722, 0, 1490109742863, 0, 3, 'getSfaDealer', 'JSON', '/dms/dealer/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881730, 0, 1490109742863, 0, 3, 'dealerTask', 'JSON', '/dms/dealer/todoTask', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881794, 0, 1490109742863, 0, 3, 'dealerAmbQuery', 'JSON', '/dms/dealerAmb/sfa/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881796, 0, 1490109742863, 0, 3, 'getDealerAndSub', 'JSON', '/dms/dealer/v2/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881847, 0, 1490109742863, 0, 3, 'getSfaDealerStoreList', 'JSON', '/dms/dealer_store_list/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881865, 0, 1490109742863, 0, 3, 'getSfaDealerStoreSupply', 'JSON', '/dms/dealer_store_supply/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881914, 0, 1490109742863, 0, 3, 'getDealerProduct', 'JSON', '/dms/dealerproduct/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881969, 0, 1490109742863, 0, 3, 'addDealerStockOrder', 'JSON', '/dms/dealerstockorder/insert', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882031, 0, 1490109742863, 0, 3, 'getSfaDealerProduct', 'JSON', '/dms/dealerproduct/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882085, 0, 1490109742863, 0, 3, 'getDealerstockorder', 'JSON', '/dms/dealerstockorder/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882127, 0, 1490109742863, 0, 3, 'getMaterial', 'JSON', '/dc/material/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882157, 0, 1490109742863, 0, 3, 'saveDealerstockorderStatu', 'JSON', '/dms/dealerstockorder/sfa/update', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882166, 0, 1490109742863, 0, 3, 'callBackMiniProgramdistibutionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/callback', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882184, 0, 1490109742863, 0, 3, 'getSfaDist', 'JSON', '/dms/dis/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882194, 0, 1490109742863, 0, 3, 'getProductSeries', 'JSON', '/dms/dict/product_series', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882225, 0, 1490109742863, 0, 3, 'saveSfaDistStatus', 'JSON', '/dms/diststatus/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882239, 0, 1490109742863, 0, 3, 'saveFeeBudget', 'JSON', '/dms/fee/saveFeeBudget', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882314, 0, 1490109742863, 0, 3, 'findStoreSCRM', 'JSON', '/dms/find/findStoreSCRM', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882317, 0, 1490109742863, 0, 3, 'fnRptConfirm', 'JSON', '/dms/fn/rpt/confirm', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882372, 0, 1490109742863, 0, 3, 'fnRptConfirmForXYR', 'JSON', '/dms/fn/rpt/confirmForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882377, 0, 1490109742863, 0, 3, 'fnRptDealerQueryForXYR', 'JSON', '/dms/fn/rpt/dealerQueryForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882433, 0, 1490109742863, 0, 3, 'fnRptDownload', 'JSON', '/dms/fn/rpt/download', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882483, 0, 1490109742863, 0, 3, 'getUnit', 'JSON', '/dc/unit/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882489, 0, 1490109742863, 0, 3, 'fnRptGetVcPdfUrl', 'JSON', '/dms/fn/rpt/getVcPdfUrl', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882737, 0, 1490109742863, 0, 3, 'getSfaDistList', 'JSON', '/dms/disList/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882744, 0, 1490109742863, 0, 3, 'fnRptQuery', 'JSON', '/dms/fn/rpt/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882753, 0, 1490109742863, 0, 3, 'fnRptQueryForXYR', 'JSON', '/dms/fn/rpt/queryForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883020, 0, 1490109742863, 0, 3, 'fnRptYearQueryForXYR', 'JSON', '/dms/fn/rpt/yearQueryForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883044, 0, 1490109742863, 0, 3, 'saveSfaFreePoApp', 'JSON', '/dms/freePoApp/sfa/save', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883151, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList103', 'JSON', '/dms/freePoAppList103/sfa/delete', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883201, 0, 1490109742863, 0, 3, 'getSfaPoAppPage103', 'JSON', '/dms/freePoAppPage103/sfa/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883230, 0, 1490109742863, 0, 3, 'saveSfaFxPoApp', 'JSON', '/dms/fxpoapp/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883248, 0, 1490109742863, 0, 3, 'getInvoiceType', 'JSON', '/dms/invoicetype/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883287, 0, 1490109742863, 0, 3, 'fnRptDealerQuery', 'JSON', '/dms/fn/rpt/dealerQuery', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883309, 0, 1490109742863, 0, 3, 'login', 'JSON', '/dms/login', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883336, 0, 1490109742863, 0, 3, 'callbackLogRecord', 'JSON', '/dms/log/callback', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883357, 0, 1490109742863, 0, 3, 'loginCode', 'JSON', '/dms/loginCode', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883385, 0, 1490109742863, 0, 3, 'queryMPDealerStoreSupply', 'JSON', '/dms/miniprogram/dealer_store_supply/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883405, 0, 1490109742863, 0, 3, 'queryNotifyList', 'JSON', '/dms/notify/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883436, 0, 1490109742863, 0, 3, 'miniprogramLogin', 'JSON', '/dms/miniprogram-login', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883488, 0, 1490109742863, 0, 3, 'getPoAppDetail', 'JSON', '/dms/po/poAppDetail/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883517, 0, 1490109742863, 0, 3, 'fnRptPoAppList', 'JSON', '/dms/po/poAppList/poAppListForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883537, 0, 1490109742863, 0, 3, 'getPoAppList', 'JSON', '/dms/po/poAppList/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883571, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/kuadi100/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883589, 0, 1490109742863, 0, 3, 'saveSfaDistributeBill', 'JSON', '/dms/po/saveSfaDistributeBill', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883627, 0, 1490109742863, 0, 3, 'wbPoAppMasterForEas', 'JSON', '/dms/po/wbPoAppMasterForEas', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883691, 0, 1490109742863, 0, 3, 'savePoDistStatus', 'JSON', '/dms/poDistStatus/eas/save', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883701, 0, 1490109742863, 0, 3, 'startSfaPoApp', 'JSON', '/dms/poapp/sfa/start', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883746, 0, 1490109742863, 0, 3, 'fnRptYearQuery', 'JSON', '/dms/fn/rpt/yearQuery', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883757, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList', 'JSON', '/dms/poapplist/sfa/delete', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883760, 0, 1490109742863, 0, 3, 'queueSavePurchaseOrder', 'JSON', '/dms/poapplist/sfa/queueSavePurchaseOrder', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883805, 0, 1490109742863, 0, 3, 'getDistributionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883865, 0, 1490109742863, 0, 3, 'saveSfaPoAppList', 'JSON', '/dms/poapplist/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883887, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList105', 'JSON', '/dms/poapplist105/sfa/delete', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883924, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage', 'JSON', '/dms/poapppage/posfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883937, 0, 1490109742863, 0, 3, 'getSfaPoAppPage', 'JSON', '/dms/poapppage/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883980, 0, 1490109742863, 0, 3, 'saveMiniProgramPoAppPage106', 'JSON', '/dms/poapppage106/miniprogram/callback', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884027, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage106', 'JSON', '/dms/poapppage106/posfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884028, 0, 1490109742863, 0, 3, 'poPreList', 'JSON', '/dms/pre/poPreList', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884052, 0, 1490109742863, 0, 3, 'startSfaPoPre', 'JSON', '/dms/pre/startSfaPoPre', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884083, 0, 1490109742863, 0, 3, 'suspendSfaPoPre', 'JSON', '/dms/pre/suspendSfaPoPre', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884116, 0, 1490109742863, 0, 3, 'getProduct', 'JSON', '/dms/product/query', '{ + "dmsMessageDTO": {} // 必填。 dmsMessageDTO +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884140, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/dms/product/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884162, 0, 1490109742863, 0, 3, 'aInvQueryDetail', 'JSON', '/dms/rpt/aInvQueryDetail', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884190, 0, 1490109742863, 0, 3, 'getDfundBalanceList', 'JSON', '/dms/rpt/dfundBalance/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884212, 0, 1490109742863, 0, 3, 'fnRptDfundDetail', 'JSON', '/dms/rpt/dfundDetail/dfundDetailForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884233, 0, 1490109742863, 0, 3, 'getDfundDetailList', 'JSON', '/dms/rpt/dfundDetail/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884241, 0, 1490109742863, 0, 3, 'fnRptDfundSum', 'JSON', '/dms/rpt/dfundSum/dfundSumForXYR', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884266, 0, 1490109742863, 0, 3, 'getTaskQueryList', 'JSON', '/dms/rpt/taskQuery', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884335, 0, 1490109742863, 0, 3, 'getTaskDetailQueryList', 'JSON', '/dms/rpt/taskDetailQuery', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884390, 0, 1490109742863, 0, 3, 'saveStorePickupLocation', 'JSON', '/dms/save/storePickupLocation', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884448, 0, 1490109742863, 0, 3, 'deleteMQPoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/deleteMQ', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884514, 0, 1490109742863, 0, 3, 'queryWjListForBizPerson', 'JSON', '/dms/servey/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884743, 0, 1490109742863, 0, 3, 'queryMiniprogramServeyList', 'JSON', '/dms/serveyList/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884803, 0, 1490109742863, 0, 3, 'getMiniProgramPoAppPage106', 'JSON', '/dms/poapppage106/miniprogram/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:04.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885007, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList108', 'JSON', '/dms/sfa/deleteSfaPoAppList108', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885027, 0, 1490109742863, 0, 3, 'getSfaPoAppPage108', 'JSON', '/dms/sfa/getSfaPoAppPage108', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885066, 0, 1490109742863, 0, 3, 'cancelSfaPromotePoApp', 'JSON', '/dms/sfa/cancelSfaPromotePoApp', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885107, 0, 1490109742863, 0, 3, 'queueSaveSfaPromotePoApp', 'JSON', '/dms/sfa/queueSaveSfaPromotePoApp', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885110, 0, 1490109742863, 0, 3, 'orderApprovalRecord', 'JSON', '/dms/sfa/orderApprovalRecord', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885189, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStore', 'JSON', '/dms/sfa/saveOrUpdateSfaStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885337, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStoreSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaStoreSupplier', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885473, 0, 1490109742863, 0, 3, 'sfaLogin', 'JSON', '/dms/sfaLogin', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885476, 0, 1490109742863, 0, 3, 'saveSfaPromotePoApp', 'JSON', '/dms/sfa/saveSfaPromotePoApp', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885597, 0, 1490109742863, 0, 3, 'getMiniprogramSfaStroeSupplierList', 'JSON', '/dms/sfastoresupplierList/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885599, 0, 1490109742863, 0, 3, 'getSfaStore', 'JSON', '/dms/store/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885716, 0, 1490109742863, 0, 3, 'saveSfaStore', 'JSON', '/dms/store/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885766, 0, 1490109742863, 0, 3, 'storeTask', 'JSON', '/dms/store/todoTask', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885816, 0, 1490109742863, 0, 3, 'getSfaExpandStore', 'JSON', '/dms/storeExpand/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885867, 0, 1490109742863, 0, 3, 'getsfaStoreDateKpiList', 'JSON', '/dms/storeDateKpi/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885880, 0, 1490109742863, 0, 3, 'getSfaExpandStoreList', 'JSON', '/dms/storeExpandList/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885899, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/dms/storeList/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885947, 0, 1490109742863, 0, 3, 'getDmsStoreList', 'JSON', '/dms/storelist/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885994, 0, 1490109742863, 0, 3, 'getSfaStoreUpdateList', 'JSON', '/dms/storeupdatelist/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886045, 0, 1490109742863, 0, 3, 'getSfaStoreList', 'JSON', '/dms/storelist/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886073, 0, 1490109742863, 0, 3, 'saveSfaDealers', 'JSON', '/dms/szdealer/sfa/save', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886096, 0, 1490109742863, 0, 3, 'saveSfaSzPoApp', 'JSON', '/dms/szpoapp/sfa/save', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886124, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/dms/token/query', '{ + "dmsMessageDTO": {} // 必填。 dmsMessageDTO +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886152, 0, 1490109742863, 0, 3, 'queryCooperationStoreDelivery', 'JSON', '/dms/weimob/cooperation_store_delivery/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886158, 0, 1490109742863, 0, 3, 'queryDealerStoreSupply', 'JSON', '/dms/weimob/dealer_store_supply/query', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886174, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/dms/wine/getDealerPage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886208, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/dms/wine/employeeLogin', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886211, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaDistributorSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaDistributorSupplier', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886226, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/wine/getKuaidi100', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886262, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/dms/wine/getPoAppPage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886271, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/dms/wine/getWineCustom', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886278, 0, 1490109742863, 0, 3, 'saveDealer', 'JSON', '/dms/wine/saveDealer', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886325, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/dms/wine/getWineLocation', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886332, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/dms/wine/savePayVoucherPhotos', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886334, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/dms/wine/savePoApp', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886393, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/dms/wine/saveWineSubPack', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886395, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/dms/wine/saveWineCustom', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886397, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/dms/wine/saveWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886421, 0, 1490109742863, 0, 3, 'callRechargeBill', 'JSON', '/eas/recharge', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886453, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/dms/wine/submitWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886464, 0, 1490109742863, 0, 3, 'getbigAreaResult', 'JSON', '/fineReport/marketingBoard/bigArea', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886467, 0, 1490109742863, 0, 3, 'clearCacheForMarketing', 'JSON', '/fineReport/marketingBoard/clearCache', '{ +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886484, 0, 1490109742863, 0, 3, 'getDealerFees', 'JSON', '/fineReport/marketingBoard/dealerFees', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886529, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/marketingBoard/fa1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886533, 0, 1490109742863, 0, 3, 'getFa2AreaNameResult', 'JSON', '/fineReport/marketingBoard/fa1AreaName', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886537, 0, 1490109742863, 0, 3, 'getFa2Result', 'JSON', '/fineReport/marketingBoard/fa2', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886550, 0, 1490109742863, 0, 3, 'getFa3Result', 'JSON', '/fineReport/marketingBoard/fa3', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886622, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/delete', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886623, 0, 1490109742863, 0, 3, 'getFa6Result', 'JSON', '/fineReport/marketingBoard/fa6', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886628, 0, 1490109742863, 0, 3, 'getFa4Result', 'JSON', '/fineReport/marketingBoard/fa4', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886637, 0, 1490109742863, 0, 3, 'getFa7Result', 'JSON', '/fineReport/marketingBoard/fa7', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886685, 0, 1490109742863, 0, 3, 'getFa5Result', 'JSON', '/fineReport/marketingBoard/fa5', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886738, 0, 1490109742863, 0, 3, 'getFa6ShortResult', 'JSON', '/fineReport/marketingBoard/fa6Short', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886791, 0, 1490109742863, 0, 3, 'getFb3Market1Result', 'JSON', '/fineReport/marketingBoard/fb3Market1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886819, 0, 1490109742863, 0, 3, 'getFb3Market3Result', 'JSON', '/fineReport/marketingBoard/fb3Market3', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886845, 0, 1490109742863, 0, 3, 'getFc1OrderResult', 'JSON', '/fineReport/marketingBoard/fc1Order', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886875, 0, 1490109742863, 0, 3, 'getFd1SaleResult', 'JSON', '/fineReport/marketingBoard/fd1Sale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886917, 0, 1490109742863, 0, 3, 'getFd1SubSaleResult', 'JSON', '/fineReport/marketingBoard/fd1SubSale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886920, 0, 1490109742863, 0, 3, 'getFe1MarketResult', 'JSON', '/fineReport/marketingBoard/fe1Market', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886932, 0, 1490109742863, 0, 3, 'getFf1RedpackResult', 'JSON', '/fineReport/marketingBoard/ff1Redpack', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886942, 0, 1490109742863, 0, 3, 'getFf2ScanResult', 'JSON', '/fineReport/marketingBoard/ff2Scan', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887004, 0, 1490109742863, 0, 3, 'getFlevelResult', 'JSON', '/fineReport/marketingBoard/flevel', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887010, 0, 1490109742863, 0, 3, 'getCategoryResult', 'JSON', '/fineReport/marketingBoard/getCategory', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887021, 0, 1490109742863, 0, 3, 'getDealerResult', 'JSON', '/fineReport/marketingBoard/getDealer', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887070, 0, 1490109742863, 0, 3, 'getSeriesResult', 'JSON', '/fineReport/marketingBoard/getSeries', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887125, 0, 1490109742863, 0, 3, 'getProductResult', 'JSON', '/fineReport/marketingBoard/getProduct', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887202, 0, 1490109742863, 0, 3, 'getJxsResult', 'JSON', '/fineReport/marketingBoard/jxs', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887251, 0, 1490109742863, 0, 3, 'getJxsByTypeResult', 'JSON', '/fineReport/marketingBoard/jxsByType', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887282, 0, 1490109742863, 0, 3, 'getJxsReturnByMonth', 'JSON', '/fineReport/marketingBoard/jxsReturnByMonth', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887311, 0, 1490109742863, 0, 3, 'getMonthResult', 'PARAM', '/fineReport/marketingBoard/month', '{ +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887368, 0, 1490109742863, 0, 3, 'getOfficesResult', 'JSON', '/fineReport/marketingBoard/offices', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887418, 0, 1490109742863, 0, 3, 'getRegionalMarketCostTrackingResult', 'JSON', '/fineReport/marketingBoard/regionalMarketCostTracking', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887467, 0, 1490109742863, 0, 3, 'getMOBBuysSellsAndStoresForPersonalResult', 'JSON', '/fineReport/moveOffBoard/buysSellsAndStoresForPersonal', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887570, 0, 1490109742863, 0, 3, 'getMOBA1B1Result', 'JSON', '/fineReport/moveOffBoard/a1b1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887621, 0, 1490109742863, 0, 3, 'getByMainstream', 'JSON', '/fineReport/moveOffBoard/byMainstream', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887672, 0, 1490109742863, 0, 3, 'clearCacheForMove', 'JSON', '/fineReport/moveOffBoard/clearCache', '{ +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887701, 0, 1490109742863, 0, 3, 'getMOBCategoryResult', 'PARAM', '/fineReport/moveOffBoard/category', '{ +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887722, 0, 1490109742863, 0, 3, 'getCompletionAmount', 'JSON', '/fineReport/moveOffBoard/completionAmount', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887749, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalResult', 'JSON', '/fineReport/moveOffBoard/coreTerminal', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887769, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalReplenishmentResult', 'JSON', '/fineReport/moveOffBoard/coreTerminalReplenishment', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887799, 0, 1490109742863, 0, 3, 'getFd2SaleResult', 'JSON', '/fineReport/marketingBoard/fd2Sale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887825, 0, 1490109742863, 0, 3, 'getMOBFNameResult', 'JSON', '/fineReport/moveOffBoard/fName', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887849, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/moveOffBoard/fa1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887874, 0, 1490109742863, 0, 3, 'getMOBFa1XzchResult', 'JSON', '/fineReport/moveOffBoard/fa1Xzch', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887903, 0, 1490109742863, 0, 3, 'getMOBFc1TargetResult', 'JSON', '/fineReport/moveOffBoard/fc1Target', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887925, 0, 1490109742863, 0, 3, 'getMOBFc1Target1Result', 'JSON', '/fineReport/moveOffBoard/fc1Target1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887962, 0, 1490109742863, 0, 3, 'getMOBFc3Result', 'JSON', '/fineReport/moveOffBoard/fc3', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887970, 0, 1490109742863, 0, 3, 'getMOBFe1Result', 'JSON', '/fineReport/moveOffBoard/fe1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888011, 0, 1490109742863, 0, 3, 'getDealerScanCodeDetailResult', 'JSON', '/fineReport/marketingBoard/getDealerScanCodeDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888037, 0, 1490109742863, 0, 3, 'getMOBFe4Result', 'JSON', '/fineReport/moveOffBoard/fe4', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888040, 0, 1490109742863, 0, 3, 'getMOBFe2Result', 'JSON', '/fineReport/moveOffBoard/fe2', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888065, 0, 1490109742863, 0, 3, 'getMOBFe3Result', 'JSON', '/fineReport/moveOffBoard/fe3', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888096, 0, 1490109742863, 0, 3, 'getIndexDefinitionResult', 'JSON', '/fineReport/moveOffBoard/indexDefinition', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888119, 0, 1490109742863, 0, 3, 'getCompletionRate', 'JSON', '/fineReport/moveOffBoard/completionRate', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888147, 0, 1490109742863, 0, 3, 'getMediumAndHighEnd', 'JSON', '/fineReport/moveOffBoard/mediumAndHighEnd', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888178, 0, 1490109742863, 0, 3, 'getMOBLevelResult', 'PARAM', '/fineReport/moveOffBoard/level', '{ +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888209, 0, 1490109742863, 0, 3, 'getMOBOrgResult', 'JSON', '/fineReport/moveOffBoard/org', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888235, 0, 1490109742863, 0, 3, 'getMOBShipmentForPersonalResult', 'JSON', '/fineReport/moveOffBoard/shipmentForPersonal', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888261, 0, 1490109742863, 0, 3, 'getMOBSalesmanBuysSellsAndStoresResult', 'JSON', '/fineReport/moveOffBoard/salesmanBuysSellsAndStores', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888288, 0, 1490109742863, 0, 3, 'getMOBFNameForStringResult', 'JSON', '/fineReport/moveOffBoard/fNameForString', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888315, 0, 1490109742863, 0, 3, 'getJxFlevel', 'JSON', '/fineReport/sauceAroma/flevelForJx', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888344, 0, 1490109742863, 0, 3, 'getJxDistributor', 'JSON', '/fineReport/sauceAroma/jxDistributor', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888363, 0, 1490109742863, 0, 3, 'getJxDealerScanStock', 'JSON', '/fineReport/sauceAroma/jxDealerScanStock', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888423, 0, 1490109742863, 0, 3, 'getJxFA1', 'JSON', '/fineReport/sauceAroma/jxFa1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888425, 0, 1490109742863, 0, 3, 'getJxFA3', 'JSON', '/fineReport/sauceAroma/jxFa3', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888498, 0, 1490109742863, 0, 3, 'getJxFD1Sale', 'JSON', '/fineReport/sauceAroma/jxFd1Sale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888600, 0, 1490109742863, 0, 3, 'getJxFD1Saletarget', 'JSON', '/fineReport/sauceAroma/jxFd1Saletarget', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888650, 0, 1490109742863, 0, 3, 'getMOBFd1Result', 'JSON', '/fineReport/moveOffBoard/fd1', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888706, 0, 1490109742863, 0, 3, 'getJXFE1Market', 'JSON', '/fineReport/sauceAroma/jxFe1Market', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888761, 0, 1490109742863, 0, 3, 'getJxIndex', 'JSON', '/fineReport/sauceAroma/jxIndex', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888776, 0, 1490109742863, 0, 3, 'getJxFD1Subsale', 'JSON', '/fineReport/sauceAroma/jxFd1subsale', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888804, 0, 1490109742863, 0, 3, 'getJXJxs', 'JSON', '/fineReport/sauceAroma/jxJxs', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888811, 0, 1490109742863, 0, 3, 'getJxOffice', 'JSON', '/fineReport/sauceAroma/jxOffice', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888829, 0, 1490109742863, 0, 3, 'getJxProduct', 'JSON', '/fineReport/sauceAroma/jxProduct', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888863, 0, 1490109742863, 0, 3, 'getJxRegion', 'JSON', '/fineReport/sauceAroma/jxRegion', '{ +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889015, 0, 1490109742863, 0, 3, 'getAccumulatedBusiness', 'JSON', '/fineReport/supplyChain/accumulatedBusiness', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889066, 0, 1490109742863, 0, 3, 'getBaseSineInventory', 'JSON', '/fineReport/supplyChain/baseSineInventory', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889072, 0, 1490109742863, 0, 3, 'getBaseWine', 'JSON', '/fineReport/supplyChain/baseWine', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889127, 0, 1490109742863, 0, 3, 'getCapacity', 'JSON', '/fineReport/supplyChain/capacity', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889130, 0, 1490109742863, 0, 3, 'getBOMVersionManagement', 'JSON', '/fineReport/supplyChain/bomVersionManagement', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889185, 0, 1490109742863, 0, 3, 'getUserInfoPermissionResult', 'JSON', '/fineReport/moveOffBoard/userInfoPermission', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889189, 0, 1490109742863, 0, 3, 'getClosingThisYear', 'JSON', '/fineReport/supplyChain/closingThisYear', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890833, 0, 1490109742863, 0, 3, 'getParaphrase', 'JSON', '/fineReport/supplyChainBoardXS/getParaphrase', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889243, 0, 1490109742863, 0, 3, 'getFinishedProductInventory', 'JSON', '/fineReport/supplyChain/finishedProductInventorie', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889245, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouse', 'JSON', '/fineReport/supplyChain/finishedProductWarehouse', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889306, 0, 1490109742863, 0, 3, 'getLastMonthMaterials', 'JSON', '/fineReport/supplyChain/lastMonthMaterials', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889308, 0, 1490109742863, 0, 3, 'getJxs', 'JSON', '/fineReport/supplyChain/jxs', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889367, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouses', 'JSON', '/fineReport/supplyChain/finishedProductWarehouses', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889373, 0, 1490109742863, 0, 3, 'getMaotaiFlavor', 'JSON', '/fineReport/supplyChain/maotaiFlavor', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889426, 0, 1490109742863, 0, 3, 'getLuzhouFlavor', 'JSON', '/fineReport/supplyChain/luzhouFlavor', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889446, 0, 1490109742863, 0, 3, 'getMonthlyPackaging', 'JSON', '/fineReport/supplyChain/monthlyPackaging', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889479, 0, 1490109742863, 0, 3, 'getMonthResults', 'JSON', '/fineReport/supplyChain/month', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889482, 0, 1490109742863, 0, 3, 'getJxFA5', 'JSON', '/fineReport/sauceAroma/jxFa5', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889510, 0, 1490109742863, 0, 3, 'getPackagingMaterialInventory', 'JSON', '/fineReport/supplyChain/packagingMaterialInventory', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889536, 0, 1490109742863, 0, 3, 'getPackagingMaterialProcurement', 'JSON', '/fineReport/supplyChain/packagingMaterialProcurement', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889562, 0, 1490109742863, 0, 3, 'getPackingMaterialDetails', 'JSON', '/fineReport/supplyChain/packingMaterialDetails', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889587, 0, 1490109742863, 0, 3, 'getPackagingMaterialLoss', 'JSON', '/fineReport/supplyChain/packagingMaterialLoss', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889620, 0, 1490109742863, 0, 3, 'getPlanForThisMonth', 'JSON', '/fineReport/supplyChain/planForThisMonth', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889641, 0, 1490109742863, 0, 3, 'getProductPlan', 'JSON', '/fineReport/supplyChain/productPlan', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889686, 0, 1490109742863, 0, 3, 'getProductProduction', 'JSON', '/fineReport/supplyChain/productProduction', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889699, 0, 1490109742863, 0, 3, 'getProductionOrder', 'JSON', '/fineReport/supplyChain/productionOrder', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889993, 0, 1490109742863, 0, 3, 'getPurchaseOrder', 'JSON', '/fineReport/supplyChain/purchaseOrder', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890012, 0, 1490109742863, 0, 3, 'getRateProductPackaging', 'JSON', '/fineReport/supplyChain/rateProductPackaging', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890066, 0, 1490109742863, 0, 3, 'getQualityInspectionDetails', 'JSON', '/fineReport/supplyChain/qualityInspectionDetails', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890115, 0, 1490109742863, 0, 3, 'getSalesDelivery', 'JSON', '/fineReport/supplyChain/salesDelivery', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890204, 0, 1490109742863, 0, 3, 'getSupplierInspection', 'JSON', '/fineReport/supplyChain/supplierInspection', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890359, 0, 1490109742863, 0, 3, 'getTimelyProcurement', 'JSON', '/fineReport/supplyChain/timelyProcurement', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890413, 0, 1490109742863, 0, 3, 'getSuppliercg', 'JSON', '/fineReport/supplyChain/suppliercg', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890429, 0, 1490109742863, 0, 3, 'getWineBeLoaded', 'JSON', '/fineReport/supplyChain/wineBeLoaded', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890468, 0, 1490109742863, 0, 3, 'getAOGTimeliness', 'JSON', '/fineReport/supplyChainBoardXS/getAOGTimeliness', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890478, 0, 1490109742863, 0, 3, 'getFinishedGoodsDetail', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedGoodsDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890520, 0, 1490109742863, 0, 3, 'getFinishedProductStorage', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductStorage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890529, 0, 1490109742863, 0, 3, 'getLiquorPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorPercentage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890537, 0, 1490109742863, 0, 3, 'getFinishedProductTop10', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductTop10', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890551, 0, 1490109742863, 0, 3, 'getPackageInventory', 'JSON', '/fineReport/supplyChain/packageInventory', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890603, 0, 1490109742863, 0, 3, 'getLiquorStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPractical', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890607, 0, 1490109742863, 0, 3, 'getPackAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPackAmount', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890611, 0, 1490109742863, 0, 3, 'getPackAttritionRate', 'JSON', '/fineReport/supplyChainBoardXS/getPackAttritionRate', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890666, 0, 1490109742863, 0, 3, 'getPackInventorySituation', 'JSON', '/fineReport/supplyChainBoardXS/getPackInventorySituation', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890669, 0, 1490109742863, 0, 3, 'getPackDetail', 'JSON', '/fineReport/supplyChainBoardXS/getPackDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890721, 0, 1490109742863, 0, 3, 'getPackPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getPackPercentage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890724, 0, 1490109742863, 0, 3, 'getPackProductAndWastage', 'JSON', '/fineReport/supplyChainBoardXS/getPackProductAndWastage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890775, 0, 1490109742863, 0, 3, 'getCurrentPeriodAOG', 'JSON', '/fineReport/supplyChainBoardXS/getCurrentPeriodAOG', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890780, 0, 1490109742863, 0, 3, 'getCapacityUtilization', 'JSON', '/fineReport/supplyChainBoardXS/getCapacityUtilization', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890836, 0, 1490109742863, 0, 3, 'getPackStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getPackStandardPractical', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890918, 0, 1490109742863, 0, 3, 'getProductDaysDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductDaysDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890929, 0, 1490109742863, 0, 3, 'getInspectQualifiedRate', 'JSON', '/fineReport/supplyChainBoardXS/getInspectQualifiedRate', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890994, 0, 1490109742863, 0, 3, 'getProductOrderDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductOrderDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891000, 0, 1490109742863, 0, 3, 'getProductPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getProductPercentage', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891059, 0, 1490109742863, 0, 3, 'getProductionInStock', 'JSON', '/fineReport/supplyChainBoardXS/getProductionInStock', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891117, 0, 1490109742863, 0, 3, 'getPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPurchaseAmount', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891173, 0, 1490109742863, 0, 3, 'getSupplyPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getSupplyPurchaseAmount', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891226, 0, 1490109742863, 0, 3, 'getLiquorStandardPracticalDetail', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPracticalDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891272, 0, 1490109742863, 0, 3, 'getUnqualifiedDetail', 'JSON', '/fineReport/supplyChainBoardXS/getUnqualifiedDetail', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891318, 0, 1490109742863, 0, 3, 'addNewWineStore', 'JSON', '/ft/wine/addNewWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891369, 0, 1490109742863, 0, 3, 'getYDGoodsYield', 'JSON', '/fineReport/supplyChainBoardXS/getYDGoodsYield', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891433, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/ft/product/sfa/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891498, 0, 1490109742863, 0, 3, 'assignWineStore', 'JSON', '/ft/wine/assignWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891540, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/ft/wine/employeeLogin', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891601, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/ft/wine/getDealerPage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891660, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/ft/wine/getKuaidi100', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891711, 0, 1490109742863, 0, 3, 'getPdfData', 'JSON', '/ft/wine/getPdfData', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891760, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/ft/wine/getPoAppPage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891819, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/ft/wine/getWineCustom', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891849, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/ft/wine/getWineLocation', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891867, 0, 1490109742863, 0, 3, 'getWineStorePage', 'JSON', '/ft/wine/getWineStorePage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891900, 0, 1490109742863, 0, 3, 'queryContractus', 'JSON', '/ft/wine/queryContractus', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891917, 0, 1490109742863, 0, 3, 'getWineSubPackPage', 'JSON', '/ft/wine/getWineSubPackPage', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891952, 0, 1490109742863, 0, 3, 'saveContractPhotos', 'JSON', '/ft/wine/saveContractPhotos', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891969, 0, 1490109742863, 0, 3, 'saveContractus', 'JSON', '/ft/wine/saveContractus', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:11.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892038, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/ft/wine/savePayVoucherPhotos', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892113, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/ft/wine/saveWineCustom', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892115, 0, 1490109742863, 0, 3, 'savePdfImgs', 'JSON', '/ft/wine/savePdfImgs', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892117, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/ft/wine/savePoApp', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892132, 0, 1490109742863, 0, 3, 'getProductFinishedSituation', 'JSON', '/fineReport/supplyChainBoardXS/getProductFinishedSituation', '{ + "request": null // 必填。 request +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892193, 0, 1490109742863, 0, 3, 'saveWineQueue', 'JSON', '/ft/wine/saveWineQueue', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892207, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/ft/wine/saveWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892249, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/ft/wine/saveWineSubPack', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892251, 0, 1490109742863, 0, 3, 'suspendSealWine', 'JSON', '/ft/wine/suspendSealWine', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892305, 0, 1490109742863, 0, 3, 'suspendWineStore', 'JSON', '/ft/wine/suspendWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892307, 0, 1490109742863, 0, 3, 'getActivityPeopleList', 'JSON', '/h2/activityPeopleList/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892430, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/h2/storeList/miniprogram/query', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892460, 0, 1490109742863, 0, 3, 'getUserRelationshipLevel', 'JSON', '/h2/userRelationship/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892479, 0, 1490109742863, 0, 3, 'getUserRelationshipRecord', 'JSON', '/h2/userRelationshipRecord/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892504, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/hr/oa/callbackProcessData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892550, 0, 1490109742863, 0, 3, 'checkJobs', 'JSON', '/hr/oa/checkJobs', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892558, 0, 1490109742863, 0, 3, 'queryDeparture', 'JSON', '/hr/oa/departure', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892606, 0, 1490109742863, 0, 3, 'queryPosition', 'JSON', '/hr/oa/position', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892613, 0, 1490109742863, 0, 3, 'queryMobileByUserId', 'JSON', '/hr/oa/queryMobileByUserId', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892677, 0, 1490109742863, 0, 3, 'queryPositiveTx2', 'JSON', '/hr/oa/queryPositiveTx2', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892727, 0, 1490109742863, 0, 3, 'queryTx1', 'JSON', '/hr/oa/queryTx1', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892792, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/ft/wine/submitWineStore', '{ + "json": null // 必填。 json +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892844, 0, 1490109742863, 0, 3, 'queryTx2', 'JSON', '/hr/oa/queryTx2', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892893, 0, 1490109742863, 0, 3, 'checkCode', 'JSON', '/message/check/code', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893042, 0, 1490109742863, 0, 3, 'getInviteUserFunctionLevel', 'JSON', '/h2/InviteUserFunction/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893110, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send', '{ + "smsMessageDTO": {} // 必填。 smsMessageDTO +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893159, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send2', '{ + "smsMessageDTO": {} // 必填。 smsMessageDTO +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893183, 0, 1490109742863, 0, 3, 'smsSend', 'JSON', '/message/sms/send', '{ + "smsMessageDTO": {} // 必填。 smsMessageDTO +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893233, 0, 1490109742863, 0, 3, 'getActivityPeopleSize', 'JSON', '/h2/activityPeopleSize/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893282, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send3', '{ + "smsMessageDTO": {} // 必填。 smsMessageDTO +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893332, 0, 1490109742863, 0, 3, 'getMaterial', 'JSON', '/oa/workflow/cancelToDoList', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893382, 0, 1490109742863, 0, 3, 'cancelToDoListById', 'JSON', '/oa/workflow/cancelToDoListById', '{ + "dto": {} // 必填。 dto +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893413, 0, 1490109742863, 0, 3, 'getStoreListByMobile', 'JSON', '/sfa/getStoreListByMobile', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893431, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/oauth/token/query', '{ + "dmsMessageDTO": {} // 必填。 dmsMessageDTO +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893446, 0, 1490109742863, 0, 3, 'xmbarcodeQuery', 'JSON', '/sfa/xmbarcode/query', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893470, 0, 1490109742863, 0, 3, 'test1', 'PARAM', '/test/test1', '{ +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893481, 0, 1490109742863, 0, 3, 'test3', 'JSON', '/test/test3/{time}', '{ + "time": 1 // 必填。 time +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893498, 0, 1490109742863, 0, 3, 'test2', 'PARAM', '/test/test2', '{ +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893529, 0, 1490109742863, 0, 3, 'code', 'PARAM', '/weimob/oauth/code', '{ + "code": "" // code +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893544, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/wms/xinmaStackData/qryCodeData', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893579, 0, 1490109742863, 0, 3, 'storeStockItemMTD', 'JSON', '/sfa/storeStockItemMTD', '{ + "jsonStr": null // 必填。 jsonStr +}', null, null, null, null, '2022-02-09 15:48:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1645292852440, 0, 88888, 0, 3, '获取当前登录用户相关信息', 'JSON', '/get', '{ + "curUser-()": "getCurrentUser()", + "curId-()": "getCurrentUserId()", + "curIdList-()": "getCurrentUserIdAsList()", + "curContactIdList-()": "getCurrentContactIdList()", + "User": { + "id@": "curId" + }, + "User[]": { + "User": { + "id{}@": "curContactIdList" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "curUser-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + }, + "curId-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "curIdList-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + }, + "curContactIdList-()": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 25 + ] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 5 + ] + } + } + ] + }, + "User[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id{}@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 16 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2022-02-20 01:47:32.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1645900574383, 0, 88888, 0, 3, 'JOIN 副表多个引用赋值', 'JSON', '/get', '{ + "[]": { + "join": "1", + "@order": "id-" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 3 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "join": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "&/User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "name$": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "tag*~": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 9 + ] + }, + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + } + } + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "@order": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2022-02-27 04:26:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821847, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询版本信息详情 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821871, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ + "apiId": 1 // 必填。 apiId +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646043347836, 0, 1644567479886, 0, 3, '作业', 'JSON', '/ruqi/bi/job/query', '{ + "pageIndex": 1, + "pageSize": 20, + "jobType": 3, + "status": 0, + "createUser": "liyifeng" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "pageIndex": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "pageSize": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 20 + ], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "jobType": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 3 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "status": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "createUser": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] +}', 'Cookie: sensorsdata2015jssdkcross={"distinct_id":"17b9513723a32d-002f03b266925b-c343365-1500000-17b9513723b7d","$device_id":"17b9513723a32d-002f03b266925b-c343365-1500000-17b9513723b7d","props":{}}; Hm_lvt_061a2566f518f442f5f4b65db404da9e=1636688008; SESSION=ZjFlOGI5MzQtZjcwZS00YzgyLTllNWMtYmZmMmZlMjkxNjg2; TGC=TGT-2557-FF4WKrfGQmSpDLXBKgHShut88W86Fu2aJ6WqC5Pki6vmisJ5V4p7ClskxDiUJhzy6uM-RQGZGBJOB002; sidebarStatus=0; JSESSIONID=58A4D3EA80D014ADEEE16C4E1BAB1836', '2022-02-28 18:15:47.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646486052030, 0, 82001, 0, 3, '功能符:NULL 值', 'JSON', '/put/User', '{ + "id": 82001, + "@null": "tag" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "@null": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] +}', '', '2022-03-05 21:14:12.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646486198292, 0, 82001, 0, 3, '功能符:类型转换', 'JSON', '/get/User[]', '{ + "User": { + "date>": "2017-02-01 11:21:50", + "@cast": "date>:DATETIME", + "@explain": true + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "date>": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "@cast": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2022-03-05 21:16:38.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646508679123, 0, 82001, 0, 3, '功能符:复杂条件组合', 'JSON', '/get/User[]', '{ + "User": { + "date>": "2017-02-01 11:21:50", + "name*~": "a", + "contactIdList<>": 82001, + "tag&$": [ + "%p%", + "%i" + ], + "@combine": "(date> & !tag&$) | !(name*~ & contactIdList<>)", + "@explain": true + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "date>": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "name*~": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "contactIdList<>": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "trend": { + "top": 2 + } + }, + "tag&$": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3, + 2 + ] + } + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 54, + 46 + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2022-03-06 03:31:19.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646568413932, 0, 88888, 0, 3, '功能符:@combine:"(date> | !name!) & (contactIdList<> & name!)"', 'JSON', '/get/User[]', '{ + "User": { + "date>": "2017-02-01 11:21:50", + "name!": "a", + "id{}": ">38710", + "contactIdList<>": 82001, + "tag!$": [ + "%p%", + "%i" + ], + "@combine": "(date> | !name!) & (contactIdList<> & name!)", + "@explain": true + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "date>": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "name!": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "id{}": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "contactIdList<>": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "trend": { + "top": 1 + } + }, + "tag|$": { + "notnull": false, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3, + 2 + ] + } + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 44 + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + }, + "tag!$": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3, + 2 + ] + } + ] + } + } + ] + } + } + ] +}', '', '2022-03-06 20:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646568597233, 0, 88888, 0, 3, '功能符:@combine:"(date> | name*~) & (contactIdList<> & name*~)"', 'JSON', '/get/User[]', '{ + "User": { + "date>": "2017-02-01 11:21:50", + "name*~": "a", + "id{}": ">38710", + "contactIdList<>": 82001, + "tag!$": [ + "%p%", + "%i" + ], + "@combine": "(date> | name*~) & (contactIdList<> & name*~)", + "@explain": true + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "date>": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "name*~": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "id{}": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "contactIdList<>": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "trend": { + "top": 1 + } + }, + "tag|$": { + "notnull": false, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3, + 2 + ] + } + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 45 + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + }, + "tag!$": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3, + 2 + ] + } + ] + } + } + ] + } + } + ] +}', '', '2022-03-06 20:09:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646568992809, 0, 88888, 0, 3, '功能符:@combine:"(date> | !name*~) & (contactIdList<> | name*~)"', 'JSON', '/get/User[]', '{ + "User": { + "date>": "2017-02-01 11:21:50", + "name*~": "a", + "id{}": ">38710", + "contactIdList<>": 82001, + "tag|$": [ + "%p%", + "%i" + ], + "@combine": "(date> | !name*~) & (contactIdList<> | name*~)", + "@explain": true + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "date>": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "name*~": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "id{}": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "contactIdList<>": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "tag|$": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3, + 2 + ] + } + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 46 + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2022-03-06 20:16:32.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821886, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821893, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821907, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +} + +/** + +查询服务类型 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821910, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646569088993, 0, 88888, 0, 3, '功能符:@combine:"date> | ((!name*~) & !(contactIdList<> | name*~))"', 'JSON', '/get/User[]', '{ + "User": { + "date>": "2017-02-01 11:21:50", + "name*~": "a", + "id{}": ">38710", + "contactIdList<>": 82001, + "tag|$": [ + "%p%", + "%i" + ], + "@combine": "date> | ((!name*~) & !(contactIdList<> | name*~))", + "@explain": true + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "date>": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "name*~": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "id{}": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "contactIdList<>": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "tag|$": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3, + 2 + ] + } + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 49 + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2022-03-06 20:18:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646569248888, 0, 88888, 0, 3, '功能符:@combine:"date> | ((name*~ | date>) & !contactIdList<>)"', 'JSON', '/get/User[]', '{ + "User": { + "date>": "2017-02-01 11:21:50", + "name*~": "a", + "id{}": ">38710", + "contactIdList<>": 82001, + "tag|$": [ + "%p%", + "%i" + ], + "@combine": "date> | ((name*~ | date>) & !contactIdList<>)", + "@explain": true + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "date>": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 19 + ] + }, + "name*~": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "id{}": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "contactIdList<>": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "tag|$": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 2 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3, + 2 + ] + } + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 45 + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2022-03-06 20:20:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1647792882217, 0, 88888, 0, 3, '@having 内 @combine 复杂条件组合', 'JSON', '/get', '{ + "Comment[]": { + "Comment": { + "@column": "toId;avg(id):avgId", + "@group": "toId", + "@having": { + "toId": "(toId)>0", + "avgId": "(avgId)<=100000", + "@combine": "toId | (!avgId)" + } + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "@having": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "toId": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "avgId": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + } + } + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2022-03-21 00:14:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1647793025306, 0, 88888, 0, 3, '@having& 内条件 AND 逻辑连接', 'JSON', '/get', '{ + "Comment[]": { + "Comment": { + "@column": "toId;avg(id):avgId", + "@group": "toId", + "@having&": "(toId)>0;(avgId)<=100000" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "@having&": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2022-03-21 00:17:05.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1647793054436, 0, 88888, 0, 3, '@having 内条件默认 OR 逻辑连接', 'JSON', '/get', '{ + "Comment[]": { + "Comment": { + "@column": "toId;avg(id):avgId", + "@group": "toId", + "@having": "(toId)>0;(avgId)<=100000" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 18 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ] + }, + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 24 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2022-03-21 00:17:34.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648331517835, 0, 88888, 0, 3, 'key{}:"复杂 SQL 表达式"', 'JSON', '/get/User[]', '{ + "User": { + "id{}": ">38710,%5+1>2;length(name)%3<=1", + "@explain": true + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id{}": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 31 + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] + } + } + ] +}', '', '2022-03-27 05:51:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648334213865, 0, 88888, 0, 3, '复杂 全文检索/搜索/索引 match(..)AGAINST(..)', 'JSON', '/get', '{ + "User[]": { + "User": { + "@column": "name,tag;match(name,tag)AGAINST(''tom*'' IN NATURAL LANGUAGE MODE):match", + "name_tag{}": "match(name,tag)AGAINST(''tom*'' IN NATURAL LANGUAGE MODE)>=1", + "@having": "match(name,tag)AGAINST(''tom*'' IN NATURAL LANGUAGE MODE)<5", + "@raw": "@column,name_tag{},@having" + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 70 + ] + }, + "name_tag{}": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 58 + ] + }, + "@having": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 57 + ] + }, + "@raw": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 26 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2022-03-27 06:36:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648334213866, 0, 82001, 0, 1, '查询动态列表', 'JSON', '/router/get/moments', '{"format":false, "Moment[].page": 0, "Moment[].count": 10 }', '{"format":false, "Moment[]":{"Moment":{"@order":"date-"},"page":0,"count":5}}', null, null, null, '2022-04-17 11:00:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648974063944, 0, 1648973644623, 0, 3, '2022-04-03 16:20 关联查询 Comment.userId = User.id', 'JSON', '/login', '{ + "type": 0, + "phone": "13000082003", + "password": "123456", + "version": 1, + "remember": false, + "format": false, + "defaults": { + "@database": "MYSQL", + "@schema": "sys" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "type": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "phone": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "password": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "version": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "remember": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + false + ], + "lengthLevel": 1, + "lengths": [] + }, + "format": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + false + ], + "lengthLevel": 1, + "lengths": [] + }, + "defaults": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@database": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "MYSQL" + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "@schema": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + } + } + ] +}', '', '2022-04-03 16:21:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821911, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务文档目录 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821939, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务信息 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821975, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务子项 + +*/', null, null, null, null, '2022-05-07 18:03:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648976281083, 0, 1648973644623, 0, 3, 'test', 'JSON', '/get', '{ + "User": { + "id": 38710 + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 38710 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + } + } + ] + } + } + ] +}', '', '2022-04-03 16:58:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651805827235, 0, 88888, 0, 3, '查动态列表类 RESTful 简单接口', 'JSON', '/router/get/momentList', '{ + "Moment[].page": 0, + "Moment[].count": 10, + "format": false +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Moment[].page": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "Moment[].count": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 10 + ], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "format": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + false + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2022-05-06 10:57:07.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651807254036, 0, 88888, 0, 3, '查询 用户名、用户标签 或 评论内容 包含关键词的 用户+评论列表 的列表', 'JSON', '/get', '{ + "[]": { + "join": "/Comment", + "User": { + "name~": "an", + "tag~": "an", + "@combine": "name~,tag~", + "@column": "id,name,tag", + "@group": "id" + }, + "Comment": { + "userId@": "/User/id", + "content~": "an", + "@column": "id,userId,content" + }, + "Comment[]": { + "Comment": { + "userId@": "[]/User/id" + } + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "join": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "name~": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "tag~": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "@group": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + } + } + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "content~": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 2 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + } + } + ] + }, + "Comment[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + } + } + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2022-05-06 11:20:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821458, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询api详情 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821472, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除api + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821490, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821500, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增api + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821507, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新api + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821532, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务api + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821582, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821583, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ + "dictType": "" // 必填。 dictType +} + +/** + +查询字典类型的字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821587, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典类型 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821615, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典类型 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821616, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821656, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821662, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典类型 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821664, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典类型 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821698, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增文档信息 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821727, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除文档信息 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821751, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821764, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新文档信息 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821768, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询版本信息 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821789, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询版本信息 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821838, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增版本信息 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821843, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新版本信息 + +*/', null, null, null, null, '2022-05-07 18:03:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821984, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务子项 + +*/', null, null, null, null, '2022-05-07 18:03:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821995, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务子项 + +*/', null, null, null, null, '2022-05-07 18:03:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821999, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:03:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822086, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:03:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822087, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:03:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822092, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务信息表 + +*/', null, null, null, null, '2022-05-07 18:03:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822161, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务子项 + +*/', null, null, null, null, '2022-05-07 18:03:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830712, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增api + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830718, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除api + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830741, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询api详情 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830743, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830750, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新api + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830782, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830784, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830802, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典类型 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830818, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ + "dictType": "" // 必填。 dictType +} + +/** + +查询字典类型的字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830832, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典类型 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830846, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典数据 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830849, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典类型 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830861, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典类型 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830879, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增文档信息 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830886, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除文档信息 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830895, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询文档信息 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830908, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830914, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新文档信息 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830925, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增版本信息 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830942, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除版本信息 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830945, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询版本信息 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830961, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询版本信息 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830976, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询版本信息详情 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830985, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新版本信息 + +*/', null, null, null, null, '2022-05-07 18:03:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831023, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831042, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831054, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务文档目录 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831061, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831062, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +} + +/** + +查询服务类型 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831203, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务信息 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831207, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务子项 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831208, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务子项 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831212, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +删除服务子项 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831219, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除服务信息表 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831282, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务子项 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831309, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831313, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831317, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831342, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务子项 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831357, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +服务上架、下架 + +*/', null, null, null, null, '2022-05-07 18:03:51.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901888, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除api + +*/', null, null, null, null, '2022-05-07 18:05:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901891, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增api + +*/', null, null, null, null, '2022-05-07 18:05:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901915, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务api + +*/', null, null, null, null, '2022-05-07 18:05:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901920, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询api详情 + +*/', null, null, null, null, '2022-05-07 18:05:01.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902049, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典数据 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902084, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典类型 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902104, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典类型 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902133, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增文档信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902136, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典数据 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902178, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除文档信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902192, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询文档信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902266, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902315, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典数据 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902393, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ + "dictType": "" // 必填。 dictType +} + +/** + +查询字典类型的字典数据 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902482, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典数据 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902500, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新文档信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902533, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增版本信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902539, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除版本信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902550, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询版本信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902554, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新api + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902599, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典类型 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902605, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询版本信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902659, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询版本信息详情 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902716, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新版本信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902719, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ + "apiId": 1 // 必填。 apiId +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902772, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902791, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务文档目录 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902806, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902827, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902844, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +} + +/** + +查询服务类型 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902957, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务信息 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902977, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +删除服务子项 + +*/', null, null, null, null, '2022-05-07 18:05:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903002, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务子项 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903041, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903067, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903089, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903165, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务信息表 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903225, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务子项 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903283, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务子项 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903320, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +服务上架、下架 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903372, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务子项 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903423, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典类型 + +*/', null, null, null, null, '2022-05-07 18:05:03.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013248, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增api + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013249, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询api详情 + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013311, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新api + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013499, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典数据 + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013505, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ + "dictType": "" // 必填。 dictType +} + +/** + +查询字典类型的字典数据 + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013514, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除api + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013516, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务api + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013528, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典数据 + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013698, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典类型 + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013764, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典数据 + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013774, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典类型 + +*/', null, null, null, null, '2022-05-07 18:06:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014004, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典类型 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014030, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典类型 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014185, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增文档信息 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014378, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除文档信息 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014615, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询版本信息 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014699, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新文档信息 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014786, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询版本信息 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014788, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增版本信息 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014821, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询版本信息详情 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014840, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新版本信息 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014846, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ + "apiId": 1 // 必填。 apiId +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014986, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:06:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015007, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015107, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务文档目录 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015262, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +} + +/** + +查询服务类型 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015272, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015315, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务信息 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015364, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务子项 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015419, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +删除服务子项 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015588, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除服务信息表 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015730, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务子项 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015796, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询文档信息 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015833, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务信息表 + +*/', null, null, null, null, '2022-05-07 18:06:55.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016006, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除版本信息 + +*/', null, null, null, null, '2022-05-07 18:06:56.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016210, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务子项 + +*/', null, null, null, null, '2022-05-07 18:06:56.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016257, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +服务上架、下架 + +*/', null, null, null, null, '2022-05-07 18:06:56.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016275, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:06:56.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016315, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:06:56.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016332, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-07 18:06:56.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016381, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:06:56.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043316, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增api + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043338, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新api + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043340, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典数据 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043375, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务api + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043423, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典数据 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043551, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典数据 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043585, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典数据 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043609, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ + "dictType": "" // 必填。 dictType +} + +/** + +查询字典类型的字典数据 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043748, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ + "param": null // 必填。 param +} + +/** + +新增字典类型 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043778, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典类型 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043803, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除文档信息 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043827, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增文档信息 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043854, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043871, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典类型 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043877, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典类型 + +*/', null, null, null, null, '2022-05-07 18:07:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043994, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新文档信息 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043997, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增版本信息 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044027, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询版本信息详情 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044081, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询版本信息 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044089, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新版本信息 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044249, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ + "apiId": 1 // 必填。 apiId +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044280, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044298, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044349, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务文档目录 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044522, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044577, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +} + +/** + +查询服务类型 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044624, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务信息 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044672, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务子项 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044728, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +删除服务子项 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044750, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除服务信息表 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044902, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务子项 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044917, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务子项 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044934, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务信息 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044950, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-07 18:07:24.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045087, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-07 18:07:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045103, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务信息表 + +*/', null, null, null, null, '2022-05-07 18:07:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045119, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务子项 + +*/', null, null, null, null, '2022-05-07 18:07:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045197, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +服务上架、下架 + +*/', null, null, null, null, '2022-05-07 18:07:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045199, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询文档信息 + +*/', null, null, null, null, '2022-05-07 18:07:25.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373136, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新api + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373184, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询api详情 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373192, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增api + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373204, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务api + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373206, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除api + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373267, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "param": null // 必填。 param +} + +/** + +分页查询字典数据 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373268, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典数据 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373276, 0, 82021, 0, 3, '登录1', 'JSON', '/login', '{ + "type": 0, + "phone": "13000082001", + "password": "123456", + "version": 1, + "remember": false, + "format": false, + "defaults": { + "@database": "MYSQL", + "@schema": "sys" + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "type": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 0 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ], + "trend": { + "top": 1 + } + }, + "phone": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 11 + ] + }, + "password": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "version": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ], + "trend": { + "top": 1 + } + }, + "remember": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + false + ], + "lengthLevel": 1, + "lengths": [] + }, + "format": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + false + ], + "lengthLevel": 1, + "lengths": [] + }, + "defaults": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "@database": { + "notnull": true, + "type": "string", + "valueLevel": 0, + "values": [ + "MYSQL" + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + }, + "@schema": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + } + } + ] +}', '', '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373287, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ + "dictType": "" // 必填。 dictType +} + +/** + +查询字典类型的字典数据 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373302, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典数据 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373335, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ + "param": null // 必填。 param +} + +/** + +更新字典类型 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373344, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除文档信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373372, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增文档信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373376, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除字典类型 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321170, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/editExperienceSiteRelater', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:28:41.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373389, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询文档信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373415, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除版本信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373418, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新文档信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373438, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询版本信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373441, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增版本信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373445, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询文档信息详情 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373468, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询版本信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373470, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询版本信息详情 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373480, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新版本信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373503, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373536, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务文档目录 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373561, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +} + +/** + +查询服务类型 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373630, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ + "newParam": null // 必填。 newParam +} + +/** + +新增服务信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373681, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +删除服务子项 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373729, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +删除服务信息表 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373752, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373789, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务子项 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373817, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ + "queryParam": null // 必填。 queryParam +} + +/** + +查询服务子项 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373840, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ + "pageNum": 1, // 必填。 pageNum + "pageSize": 10, // 必填。 pageSize + "queryParam": null // 必填。 queryParam +} + +/** + +分页查询服务信息 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373994, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ + "id": 1 // 必填。 id +} + +/** + +根据id查询服务信息详情 + +*/', null, null, null, null, '2022-05-09 14:56:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374015, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务信息表 + +*/', null, null, null, null, '2022-05-09 14:56:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374047, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +更新服务子项 + +*/', null, null, null, null, '2022-05-09 14:56:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374052, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ + "nodeCode": "" // 必填。 nodeCode +} + +/** + +查询服务子项详情 + +*/', null, null, null, null, '2022-05-09 14:56:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374102, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ + "updateParam": null // 必填。 updateParam +} + +/** + +服务上架、下架 + +*/', null, null, null, null, '2022-05-09 14:56:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615189, 0, 82021, 0, 3, '语令调度查询', 'JSON', '/accessSemanticTemplate', '{ + "semanticTemplateDTO": {} // 必填。 semanticTemplateDTO +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615216, 0, 82021, 0, 3, '语音指令新增', 'JSON', '/addSemanticOrder', '{ + "semanticOrderDTO": {} // 必填。 semanticOrderDTO +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615224, 0, 82021, 0, 3, '获取clientId', 'PARAM', '/client/getClientId', '{ +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615232, 0, 82021, 0, 3, '语音指令删除', 'JSON', '/deleteSemanticOrder', '{ + "orderId": "" // 必填。 orderId +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615279, 0, 82021, 0, 3, '语令调度删除', 'JSON', '/deleteSemanticTemplate', '{ + "templateId": 1 // 必填。 templateId +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615281, 0, 82021, 0, 3, '语音合成接口', 'PARAM', '/client/tts', '{ + "clientId": "", // 必填。 clientId + "topic": "", // 必填。 topic + "ttsContent": "", // 必填。 ttsContent + "是否通过客户端直接播放:1-是 2-否 (默认为1)": 1 // 是否通过客户端直接播放:1-是 2-否 (默认为1) +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615310, 0, 82021, 0, 3, '账户信息查询', 'PARAM', '/getAccountInfo', '{ + "macCode": "" // 必填。 macCode +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615326, 0, 82021, 0, 3, '语音指令查询', 'PARAM', '/getOrderByOrderName', '{ + "orderName": "" // orderName +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615327, 0, 82021, 0, 3, '测试使用,测试使用!!!--获取第三方热词', 'PARAM', '/getByThird', '{ +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615440, 0, 82021, 0, 3, '心跳上报', 'JSON', '/heartbeat', '{ + "param": null // 必填。 param +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615443, 0, 82021, 0, 3, '测试连接状态接口', 'PARAM', '/test/connect/status', '{ + "clientId": "", // 必填。 clientId + "topic": "" // 必填。 topic +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615587, 0, 82021, 0, 3, '按键唤醒', 'PARAM', '/key/awake-up', '{ + "clientId": "", // 必填。 clientId + "topic": "" // 必填。 topic +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615592, 0, 82021, 0, 3, '查询所有客户端信息配置', 'PARAM', '/mac/getMac', '{ +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615692, 0, 82021, 0, 3, 'topic注册', 'PARAM', '/topic/register', '{ + "clientId": "", // 必填。 clientId + "topic": "", // 必填。 topic + "type": 1 // 必填。 1生产者 2消费者 3全部 +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615693, 0, 82021, 0, 3, 'testTts', 'PARAM', '/test/tts', '{ + "clientId": "", // 必填。 clientId + "filePath": "", // 必填。 filePath + "topic": "", // 必填。 topic + "ttsContent": "" // 必填。 ttsContent +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615707, 0, 82021, 0, 3, 'topic删除', 'PARAM', '/topic/delete', '{ + "clientId": "", // 必填。 clientId + "topic": "", // 必填。 topic + "type": 1 // 必填。 1生产者 2消费者 3全部 +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615760, 0, 82021, 0, 3, '语令调度修改', 'JSON', '/updateSemanticTemplate', '{ + "semanticTemplateDTO": {} // 必填。 semanticTemplateDTO +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615800, 0, 82021, 0, 3, '同步第三方热词', 'PARAM', '/updateByThird', '{ +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615801, 0, 82021, 0, 3, '语音指令修改', 'JSON', '/updateSemanticOrder', '{ + "semanticOrderDTO": {} // 必填。 semanticOrderDTO +}', null, null, null, null, '2022-05-17 13:33:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652867168125, 0, 82021, 0, 3, '新增动态', 'JSON', '/post', '{ + "Moment": { + "content": "测试新增动态", + "pictureList": [ + "http://static.oschina.net/uploads/user/48/96331_50.jpg" + ] + }, + "tag": "Moment" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "content": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + }, + "pictureList": { + "notnull": true, + "type": "array", + "valueLevel": 0, + "lengthLevel": 1, + "lengths": [ + 1 + ], + "values": [ + { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 54 + ] + } + ] + } + } + ] + }, + "tag": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 6 + ] + } + } + ] +}', '', '2022-05-18 17:46:08.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1654148705805, 0, 82001, 0, 3, '多字段参与join,是否出现1+N查询', 'JSON', '/get', '{ + "[]": { + "count": 10, + "page": 0, + "join": "&/User/id@,=", + "bottom": 2 + } + } + } + ] + } + } + ] +}', 'Authorization: Basic GERIJ2438R9FH239NW= //取出 /login 接口返回的 token +Other-Header: test', '2022-08-10 20:55:44.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662114150688, 0, 1662112443331, 0, 3, '2022-09-02 17:27 一对多关联查询 Comment.userId = User.id', 'JSON', '/get', '{ + "User": { + "id": 82001 + }, + "[]": { + "Comment": { + "userId@": "User/id" + } + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + } + } + ] + }, + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + } + } + ] + } + } + ] + } + } + ] +}', '', '2022-09-02 18:22:30.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662568938435, 0, 82003, 0, 3, '默认测试用例', 'JSON', '/sys', '{}', null, 'SELECT `Comment`.`userId`, `User`.`id`, COUNT(1) +FROM `sys`.`Comment` AS `Comment` +INNER JOIN `sys`.`apijson_user` AS `User` + ON `User`.`id` = `Comment`.`userId` + AND `User`.`name` LIKE ${searchKey} +GROUP BY `User`.`id` HAVING ((`User`.`id`) % ${userId} != 0) +ORDER BY `User`.`id` ASC LIMIT ${limit} OFFSET ${offset}', null, 'searchKey: ''%a%'' +userId: 82001 +limit: 3 +offset: 0', '2022-09-08 00:42:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662569033547, 0, 82003, 0, 3, '带变量查询 LIKE, LIMIT', 'JSON', '/sys', '{}', null, 'SELECT * FROM sys.Comment +WHERE content LIKE concat(''%'',${key},''%'') +LIMIT ${limit}', null, 'key: "s" +limit: 2', '2022-09-08 00:43:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662569350286, 0, 82003, 0, 3, '简单查询', 'JSON', '/sys', '{}', null, 'SELECT * FROM sys.Comment ORDER BY id DESC LIMIT 3', null, '', '2022-09-08 00:49:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662603529187, 0, 82003, 0, 3, '两表 JOIN & 多字段搜索', 'JSON', '/sys', '{}', null, 'SELECT `User`.`id`,`User`.`name`,`User`.`tag`, `Comment`.* +FROM `sys`.`apijson_user` AS `User` +INNER JOIN `sys`.`Comment` AS `Comment` ON `Comment`.`userId`=`User`.`id` +WHERE ( ( (`User`.`name` REGEXP BINARY ${searchKey1}) + OR (`User`.`tag` REGEXP BINARY ${searchKey2}) ) + OR ( ( (`Comment`.`content` REGEXP BINARY ${searchKey3}) ) ) ) +GROUP BY `User`.`id` LIMIT ${offset}, ${limit} +', null, 'searchKey1: ''an'' +searchKey2: ''an'' +searchKey3: ''an'' +offset: 0 +limit: 3', '2022-09-08 10:18:49.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662603872425, 0, 82003, 0, 3, '单表 HAVING OR', 'JSON', '/sys', '{}', null, 'SELECT `toId`,avg(`id`) AS `avgId` +FROM `sys`.`Comment` +GROUP BY `toId` +HAVING `toId`>${minToId} OR `avgId`<=${maxAvgId} +LIMIT 10', null, 'minToId: 0 +maxAvgId: 10000', '2022-09-08 10:24:32.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662604351793, 0, 82003, 0, 3, '全文检索 match AGAINST', 'JSON', '/sys', '{}', null, 'SELECT `name`,`tag`,match(`name`,`tag`) AGAINST (${key1} IN NATURAL LANGUAGE MODE) AS `match` +FROM `sys`.`apijson_user` +WHERE ( (match(`name`,`tag`) AGAINST (${key2} IN NATURAL LANGUAGE MODE)>=1) ) +HAVING ( match(`name`,`tag`) AGAINST (${key3} IN NATURAL LANGUAGE MODE)<5 ) +LIMIT 10', null, 'key1: ''tom*'' +key2: ''tom*'' +key3: ''tom*''', '2022-09-08 10:32:31.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662604680510, 0, 82003, 0, 3, 'JOIN ON 字段、条件、分组、聚合、排序等', 'JSON', '/sys', '{}', null, 'SELECT `Comment`.`userId`, `User`.`id`,count(1) +FROM `sys`.`Comment` AS `Comment` +INNER JOIN `sys`.`apijson_user` AS `User` + ON `User`.`id` = `Comment`.`userId` + AND ( ( (`User`.`name` LIKE ${like}) OR (`User`.`tag` REGEXP ${regexp}) ) ) +GROUP BY `User`.`id` HAVING ( (`User`.`id`)%7!=0 ) +ORDER BY `User`.`id` ASC LIMIT 3', null, 'like: ''%a%'' +regexp: ''a''', '2022-09-08 10:38:00.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662605088494, 0, 82003, 0, 3, '窗口函数 sum(..)OVER(PARTITION BY.. ODER BY..)', 'JSON', '/sys', '{}', null, 'SELECT sum(`id`) OVER (PARTITION BY `toId` ORDER BY `date` DESC) +FROM `sys`.`Comment` LIMIT ${limit} OFFSET ${offset}', null, 'limit: 3 +offset: 0', '2022-09-08 10:44:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662605495868, 0, 82003, 0, 3, 'Moment INNER JOIN LEFT JOIN Comment WHERE AND', 'JSON', '/sys', '{}', null, 'SELECT `Moment`.`id`,`Moment`.`userId`,`Moment`.`content`, `User`.`id`,`User`.`name`, `Comment`.* +FROM `sys`.`Moment` AS `Moment` +INNER JOIN `sys`.`apijson_user` AS `User` ON `User`.`id` = `Moment`.`userId` +LEFT JOIN ( SELECT * FROM `sys`.`Comment` ) AS `Comment` ON `Comment`.`momentId` = `Moment`.`id` +WHERE ( ( (`Moment`.`content` REGEXP ${regexp}) ) AND ( ( (`User`.`sex` = ${sex}) ) ) ) +LIMIT 10', null, 'regexp: ''a'' +sex: 0', '2022-09-08 10:51:35.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662606200791, 0, 82003, 0, 3, 'INSERT INTO sys.Comment', 'JSON', '/sys', '{}', null, 'INSERT INTO `sys`.`Comment`(`momentId`,`userId`,`content`) +VALUES(${momentId}, ${userId}, ${content})', null, 'momentId: 15 +userId: 82001 +content: "test"', '2022-09-08 11:03:20.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662606482664, 0, 82003, 0, 3, 'UPDATE User SET name WHERE id', 'JSON', '/sys', '{}', null, 'UPDATE `sys`.`apijson_user` +SET `name` = ${name} +WHERE ( (`id` = ${id}) ) LIMIT 1', null, 'name: ''Test User'' +id: 82001', '2022-09-08 11:08:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662606992370, 0, 82003, 0, 3, 'WHERE id>${minId} AND id<=${maxId}', 'JSON', '/sys', '{}', null, 'SELECT count(*) AS count FROM `sys`.`apijson_user` +WHERE ( (`id` > ${minId} AND `id` <= ${maxId}) ) ', null, 'minId: 82001 +maxId: 820010', '2022-09-08 11:16:32.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662634839699, 0, 82005, 0, 3, 'Nebula Explorer 接口', 'JSON', '/api-nebula/db/exec', '{ + "gql": "fetch prop on `evolves_to` \"monster033\"->\"monster034\"@0 YIELD edge as `edge_`" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "gql": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 77 + ] + } + } + ] +}', 'Traceparent: 00-8adbf86446288a0d450ea2f78465b11c-1b7d7923b962be2a-00 +Cookie: __gsas=ID=6cefaad21ee6a675:T=1660701905:S=ALNI_MYO08xQIcZMOJjaewlYgxGWwbDCQA; token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2NjE4NTM4MjcsImlhdCI6MTY2MTc2NzQyNywibmVidWxhQWRkcmVzcyI6IjEyNy4wLjAuMTo5NjY5IiwidXNlcm5hbWUiOiJkZW1vX3VzZXIifQ.sWrCI4IOTjcgy9Hm3MxG9S2f_073PSLj3jLRy9GbJDg; nsid=43525ce3-2f74-4c5f-a9c6-6b341d5edafb; NebulaVersion=v3.0; _gid=GA1.3.899209738.1662342424; _ga=GA1.1.1105094278.1660550045; nh=127.0.0.1:9669; nu=demo_user; explorer_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhZGRyZXNzIjoiMTI3LjAuMC4xIiwicG9ydCI6OTY2OSwidXNlcm5hbWUiOiJkZW1vX3VzZXIiLCJwYXNzd29yZCI6Im5lYnVsYSIsIm5zaWQiOiIzZDUwNzQ1Yi0wNDAxLTQ3YTAtOTcyOS0xYTE3MjlhZmY0OWMiLCJleHAiOjE2NjI4OTM4MTN9.O2NG6Y1n_0Csg-UztHo2xxYmXby-HQ1JQFYt-R47HE4; _ga_PCFR49PJH3=GS1.1.1662634613.4.1.1662634639.0.0.0 +sec-ch-ua: "Chromium";v="104", " Not A;Brand";v="99", "Google Chrome";v="104" +sec-ch-ua-mobile: ?0 +sec-ch-ua-platform: "macOS" +Sec-Fetch-Dest: empty +Sec-Fetch-Mode: cors +Sec-Fetch-Site: same-origin', '2022-09-08 19:00:39.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1663144540138, 0, 82003, 0, 3, 'Nebula Test', 'JSON', '/JDBC_TEST_SPACE', '{}', null, 'MATCH (v:testNode) WHERE id(v) == ${id} return v;', null, 'id: ''testNode_9''', '2022-09-14 16:35:40.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665343358862, 0, 88888, 0, 3, '子查询内外都带条件', 'JSON', '/get', '{ + "[]": { + "Comment": { + "name$": "%a%", + "content$": "%b%", + "@combine": "name$,content$", + "@from@": { + "from": "Comment", + "join": "&/User/id@", + "Comment": {}, + "User": { + "id@": "/Comment/userId", + "sex": 1, + "@column": "name,sex" + } + } + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "name$": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "content$": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "@from@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "join": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + }, + "sex": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + } + } + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2022-10-10 03:22:38.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665343763962, 0, 88888, 0, 3, 'JOIN + 子查询 且全都带条件', 'JSON', '/get', '{ + "[]": { + "join": "*/Moment", + "Comment": { + "name$": "%a%", + "content$": "%b%", + "@combine": "name$,content$", + "@from@": { + "from": "Comment", + "join": "&/User/id@", + "Comment": {}, + "User": { + "id@": "/Comment/userId", + "sex": 1, + "@column": "name,sex" + } + } + }, + "Moment": { + "id@": "/Comment/momentId", + "userId>": 100 + } + }, + "@explain": true +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "[]": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "join": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "name$": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "content$": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 3 + ] + }, + "@combine": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 14 + ] + }, + "@from@": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "from": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 7 + ] + }, + "join": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 10 + ] + }, + "Comment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] + }, + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 15 + ] + }, + "sex": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "@column": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 8 + ] + } + } + ] + } + } + ] + } + } + ] + }, + "Moment": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id@": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 17 + ] + }, + "userId>": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 100 + ], + "lengthLevel": 1, + "lengths": [ + 3 + ] + } + } + ] + } + } + ] + }, + "@explain": { + "notnull": true, + "type": "boolean", + "valueLevel": 0, + "values": [ + true + ], + "lengthLevel": 1, + "lengths": [] + } + } + ] +}', '', '2022-10-10 03:29:23.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665482688193, 0, 82002, 0, 3, '用户列表', 'PARAM', '/user/list', '{ + "pageSize": 10, // 每页数量 + "pageNum": 1, // + "searchKey": "a" // 搜索关键词 +}', null, null, null, null, '2022-10-11 18:04:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665482688213, 0, 82002, 0, 3, '新增评论', 'JSON', '/comment/post', '{ + "userId": 82001, // 用户id + "momentId": 15, // 动态id + "content": "测试评论" // 内容 +}', null, null, null, null, '2022-10-11 18:04:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665482688227, 0, 82002, 0, 3, '用户详情', 'PARAM', '/user', '{ + "id": 82001 // 主键 +}', null, null, null, null, '2022-10-11 18:04:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1666202661817, 0, 88888, 0, 3, '测试对象注释类型', 'JSON', '/get', '{ + "User": { + "id": 38710 + } +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "User": { + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 38710 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ] + } + } + ], + "comment": "apijson_user" + } + } + ] +}', '', '2022-10-20 02:04:21.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501121004, 0, 82001, 82001, 3, '', 'JSON', '/mini/device/authFace', '{ + "openid": null, + "deviceSerialNumber": null, + "changeSite": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "openid": { + "type": "object", + "notnull": false, + "comment": "必填。" + }, + "deviceSerialNumber": { + "type": "object", + "notnull": false, + "comment": "必填。" + }, + "changeSite": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:25:21.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501121006, 0, 82001, 82001, 3, '', 'JSON', '/mini/baidu/getIdCard', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:25:21.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501172605, 0, 82001, 82001, 3, '', 'JSON', '/event/securityRisk/add', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:26:12.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501172606, 0, 82001, 82001, 3, '', 'JSON', '/event/insurance/insuranceNotice', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:26:12.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501172611, 0, 82001, 82001, 3, '', 'JSON', '/h5/device/decodeQrPic', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:26:12.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501215823, 0, 82001, 82001, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/online', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:26:56.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501215857, 0, 82001, 82001, 3, '', 'PARAM', '/easypoi/wps/v1/3rd/file/info', '{ + "_w_userid": null, + "_w_filepath": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "_w_filepath": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:26:56.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501216175, 0, 82001, 82001, 3, '', 'JSON', '/dev/api/task/task/add', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:26:56.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321042, 0, 82001, 82001, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/rename', '{ + "_w_userid": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:28:41.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321155, 0, 82001, 82001, 3, '', 'JSON', '/web/encodeDevice/hatBroadCast', '{ + "userphone": null, + "siteIds": null, + "fileName": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userphone": { + "type": "object", + "notnull": false, + "comment": "必填。" + }, + "fileName": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:28:41.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321169, 0, 82001, 82001, 3, '', 'JSON', '/web/group/insertGroup', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:28:41.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501372592, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/delSiteRelaterMsg', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:29:32.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501429064, 0, 82001, 82001, 3, '', 'JSON', '/pc/site/editSite', '{ + "relater": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:30:29.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482586, 0, 82001, 82001, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/rename', '{ + "_w_userid": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:31:22.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482681, 0, 82001, 82001, 3, '', 'JSON', '/web/group/insertGroup', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:31:22.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482682, 0, 82001, 82001, 3, '', 'JSON', '/web/attendance/updateAttendanceInfo', '{ + "userId": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:31:22.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482686, 0, 82001, 82001, 3, '', 'JSON', '/web/attendance/setAttendanceInfo', '{ + "userId": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:31:22.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501533979, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/batchDelRelater', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:32:14.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501585123, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/editExperienceSiteRelater', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:33:05.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501614027, 0, 82001, 82001, 3, '', 'JSON', '/pc/site/editExperienceSite', '{ + "site": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "site": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:33:34.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501614108, 0, 82001, 82001, 3, '', 'JSON', '/mini/device/noFacePunch', '{ + "openid": null, + "deviceSerialNumber": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "openid": { + "type": "object", + "notnull": false, + "comment": "必填。" + }, + "deviceSerialNumber": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:33:34.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501639982, 0, 82001, 82002, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/rename', '{ + "_w_userid": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:34:00.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640011, 0, 82001, 82002, 3, '', 'JSON', '/web/group/insertGroup', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:34:00.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640050, 0, 82001, 82002, 3, '', 'JSON', '/web/encodeDevice/hatBroadCast', '{ + "userphone": null, + "siteIds": null, + "fileName": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userphone": { + "type": "object", + "notnull": false, + "comment": "必填。" + }, + "fileName": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:34:00.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640052, 0, 82001, 82002, 3, '', 'JSON', '/pc/siteMember/delSiteRelaterMsg', '{}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + {} + ] +}', null, '2023-01-12 13:34:00.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640053, 0, 82001, 82002, 3, '', 'JSON', '/web/attendance/setAttendanceInfo', '{ + "userId": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:34:00.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640054, 0, 82001, 82002, 3, '', 'JSON', '/web/attendance/updateAttendanceInfo', '{ + "userId": null +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId": { + "type": "object", + "notnull": false, + "comment": "必填。" + } + } + ] +}', null, '2023-01-12 13:34:00.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673597032710, 0, 82001, 82003, 3, '用户列表', 'PARAM', '/user/list', '{ + "pageSize": 10, + "pageNum": 1, + "searchKey": "a" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "pageSize": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 10 + ], + "lengthLevel": 1, + "lengths": [ + 2 + ], + "comment": "每页数量" + }, + "pageNum": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 1 + ], + "lengthLevel": 1, + "lengths": [ + 1 + ] + }, + "searchKey": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 1 + ], + "comment": "搜索关键词" + } + } + ] +}', null, '2023-01-13 16:03:52.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673597032720, 0, 82001, 82003, 3, '用户详情', 'PARAM', '/user', '{ + "id": 82001 +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "id": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "comment": "主键" + } + } + ] +}', null, '2023-01-13 16:03:52.000000', ''); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673597032761, 0, 82001, 82003, 3, '新增评论', 'JSON', '/comment/post', '{ + "userId": 82001, + "momentId": 15, + "content": "测试评论" +}', null, null, '{ + "notnull": true, + "type": "object", + "valueLevel": 0, + "values": [ + { + "userId": { + "notnull": true, + "type": "integer", + "valueLevel": 1, + "values": [ + 82001 + ], + "lengthLevel": 1, + "lengths": [ + 5 + ], + "comment": "用户id" + }, + "momentId": { + "notnull": true, + "type": "integer", + "valueLevel": 0, + "values": [ + 15 + ], + "lengthLevel": 1, + "lengths": [ + 2 + ], + "comment": "动态id" + }, + "content": { + "notnull": true, + "type": "string", + "valueLevel": 3, + "values": [], + "lengthLevel": 1, + "lengths": [ + 4 + ], + "comment": "内容" + } + } + ] +}', null, '2023-01-13 16:03:52.000000', ''); diff --git a/DuckDB/single/sys_Function.sql b/DuckDB/single/sys_Function.sql new file mode 100644 index 0000000..7389ba3 --- /dev/null +++ b/DuckDB/single/sys_Function.sql @@ -0,0 +1,68 @@ +create table "Function" +( + id bigint not null + primary key, + language varchar, + name varchar(30) not null, + "returnType" varchar(45) default 'Object'::character varying, + arguments varchar(100), + demo text not null, + detail varchar(1000), + date timestamp(6) default CURRENT_TIMESTAMP not null, + "userId" bigint default 0, + version integer default 0, + tag varchar, + methods varchar, + return integer +); + +comment on column "Function".name is '方法名'; + +comment on column "Function".arguments is '参数列表,每个参数的类型都是 String。 +用 , 分割的字符串 比 [JSONArray] 更好,例如 array,item ,更直观,还方便拼接函数。'; + +comment on column "Function".demo is '可用的示例。'; + +comment on column "Function".detail is '详细描述'; + +comment on column "Function".date is '创建时间'; + +comment on column "Function"."userId" is '用户id'; + +comment on column "Function"."returnType" is '返回类型'; + +comment on column "Function".language is '语言:Java(java), JavaScript(js), Lua(lua), Python(py), Ruby(ruby), PHP(php) 等,NULL 默认为 Java,JDK 1.6-11 默认支持 JavaScript,JDK 12+ 需要额外依赖 Nashron/Rhiro 等 js 引擎库,其它的语言需要依赖对应的引擎库,并在 ScriptEngineManager 中注册'; + +comment on column "Function".return is '返回值示例'; + +comment on column "Function".version is '允许的最低版本号,只限于GET,HEAD外的操作方法。\nTODO 使用 requestIdList 替代 version,tag,methods'; + +comment on column "Function".tag is '允许的标签.\nnull - 允许全部\nTODO 使用 requestIdList 替代 version,tag,methods'; + +comment on column "Function".methods is '允许的操作方法。\nnull - 允许全部\nTODO 使用 requestIdList 替代 version,tag,methods'; + + + +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (8, 'getFromArray', 'array,position', '{"array": [1, 2, 3], "result()": "getFromArray(array,1)"}', '根据下标获取数组里的值。position 传数字时直接作为值,而不是从所在对象 request 中取值', '2018-10-13 08:30:31.000000', 0, 'Object', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (9, 'getFromObject', 'object,key', '{"key": "id", "object": {"id": 1}}', '根据键获取对象里的值。', '2018-10-13 08:30:31.000000', 0, 'Object', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (13, 'getWithDefault', 'value,defaultValue', '{"value": null, "defaultValue": 1}', '如果 value 为 null,则返回 defaultValue', '2019-08-20 15:26:36.000000', 0, 'Object', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (14, 'removeKey', 'key', '{"key": "s", "key2": 2}', '从对象里移除 key', '2019-08-20 15:26:36.000000', 0, 'Object', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (6, 'isContainKey', 'object,key', '{"key": "id", "object": {"id": 1}}', '判断是否对象包含键。', '2018-10-13 08:30:31.000000', 0, 'boolean', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (4, 'countObject', 'object', '{"object": {"key0": 1, "key1": 2}}', '获取对象长度。', '2018-10-13 08:23:23.000000', 0, 'int', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (10, 'deleteCommentOfMoment', 'momentId', '{"momentId": 1}', '根据动态 id 删除它的所有评论', '2019-08-17 18:46:56.000000', 0, 'int', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (23, 'getCurrentUserIdAsList', null, '{}', '获取当前登录用户 id 列表,只包含一个 id,只是为了前端方便构造某些请求', '2023-01-30 07:47:29.546907', 0, 'List', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (19, 'getMethodArguments', 'methodArgs', '{"methodArgs": "methodArgs"}', '获取远程函数的参数', '2023-01-30 07:47:29.546907', 0, 'String', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (21, 'deleteChildComment', 'commentId', '{}', '删除评论的子评论', '2023-01-30 07:47:29.546907', 0, 'int', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (20, 'getMethodRequest', null, '{}', '获取远程函数的请求', '2023-01-30 07:47:29.546907', 0, 'String', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (17, 'getMethodDefinition', 'method,arguments,type,exceptions,language', '{"method": "method"}', '获取远程函数的签名定义', '2023-01-30 12:04:42.000000', 0, 'String', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (3, 'countArray', 'array', '{"array": [1, 2, 3]}', '获取数组长度。没写调用键值对,会自动补全 "result()": "countArray(array)"', '2018-10-13 08:23:23.000000', 0, 'int', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (11, 'verifyIdList', 'array', '{"array": [1, 2, 3], "result()": "verifyIdList(array)"}', '校验类型为 id 列表', '2019-08-17 19:58:33.000000', 0, null, null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (22, 'getCurrentUserId', null, '{}', '获取当前登录用户 id', '2023-01-30 07:47:29.546907', 0, 'Long', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (18, 'getMethodDefination', 'method,arguments,type,exceptions,language', '{"method": "method"}', '获取远程函数的签名定义', '2023-01-30 04:05:54.754726', 0, 'String', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (16, 'getFunctionDetail', null, '{}', '获取远程函数的详情', '2019-08-20 15:26:36.000000', 0, 'String', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (7, 'isContainValue', 'object,value', '{"value": 1, "object": {"id": 1}}', '判断是否对象包含值。', '2018-10-13 08:30:31.000000', 0, 'boolean', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (24, 'getCurrentUser', null, '{}', '获取当前登录用户公开信息', '2023-01-30 07:47:29.546907', 0, 'Visitor', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (15, 'getFunctionDemo', null, '{}', '获取远程函数的 Demo', '2019-08-20 15:26:36.000000', 0, 'JSONObject', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (5, 'isContain', 'array,value', '{"array": [1, 2, 3], "value": 2}', '判断是否数组包含值。', '2018-10-13 08:23:23.000000', 0, 'boolean', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (25, 'getCurrentContactIdList', null, '{}', '获取当前登录用户的联系人 id 列表', '2023-01-30 07:47:29.546907', 0, 'List', null, null, 0, null, null); +insert into "Function" (id, name, arguments, demo, detail, date, "userId", "returnType", language, return, version, tag, methods) values (12, 'verifyURLList', 'array', '{"array": ["http://123.com/1.jpg", "http://123.com/a.png", "http://www.abc.com/test.gif"], "result()": "verifyURLList(array)"}', '校验类型为 URL 列表', '2019-08-17 19:58:33.000000', 0, null, null, null, 0, null, null); diff --git a/DuckDB/single/sys_Moment.sql b/DuckDB/single/sys_Moment.sql new file mode 100644 index 0000000..7a2395d --- /dev/null +++ b/DuckDB/single/sys_Moment.sql @@ -0,0 +1,239 @@ +create table "Moment" +( + id bigint not null + primary key, + "userId" bigint not null, + date timestamp(6), + content varchar(300), + "praiseUserIdList" json not null, + "pictureList" json not null +); + +comment on table "Moment" is '动态'; + +comment on column "Moment".id is '唯一标识'; + +comment on column "Moment"."userId" is '用户id'; + +comment on column "Moment".date is '创建日期'; + +comment on column "Moment".content is '内容'; + +comment on column "Moment"."praiseUserIdList" is '点赞的用户id列表'; + +comment on column "Moment"."pictureList" is '图片列表'; + + +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (12, 70793, '2017-02-08 08:06:11.000000', 'APIJSON,let interfaces and documents go to hell !', '[70793, 93793, 82044, 82040, 82055, 90814, 38710, 82002, 82006, 1508072105320, 82001]', '["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "https://camo.githubusercontent.com/788c0a7e11a4f5aadef3c886f028c79b4808613a/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343932353935372d313732303737333630382e6a7067", "http://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (32, 82002, '2017-02-08 08:06:11.000000', null, '[38710, 82002, 82001]', '["https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067", "https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067", "http://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (58, 90814, '2017-02-01 11:14:31.000000', 'This is a Content...-435', '[38710, 82003, 82005, 93793, 82006, 82044, 82001]', '["http://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (170, 70793, '2017-02-01 11:14:31.000000', 'This is a Content...-73', '[82044, 82002, 82001]', '["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (301, 93793, '2017-02-01 11:14:31.000000', 'This is a Content...-301', '[38710, 93793, 82003, 82005, 82040, 82055, 82002, 82001]', '["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (371, 82002, '2017-02-01 11:14:31.000000', 'This is a Content...-371', '[90814, 93793, 82003, 82005, 82006, 82040, 82002, 82001]', '["http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "http://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (470, 38710, '2017-02-01 11:14:31.000000', 'This is a Content...-470', '[82001]', '["http://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (511, 38710, '2017-02-08 08:06:11.000000', null, '[70793, 93793, 82001]', '["https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "http://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (543, 93793, '2017-02-08 08:06:11.000000', null, '[82001]', '["https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (551, 70793, '2017-02-08 08:06:11.000000', 'test', '[82001]', '["http://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (595, 38710, '2017-03-05 05:29:19.000000', null, '[70793, 82002, 82001]', '["http://common.cnblogs.com/images/icon_weibo_24.png", "http://static.oschina.net/uploads/user/19/39085_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (704, 38710, '2017-03-12 09:39:44.000000', 'APIJSON is a JSON Transmission Structure Protocol…', '[82003, 82002, 82001]', '["http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000", "http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1491200468898, 38710, '2017-04-03 06:21:08.000000', 'APIJSON, let interfaces go to hell!', '[82001]', '["http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000", "http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1493835799335, 38710, '2017-05-03 18:23:19.000000', 'APIJSON is a JSON Transmission Structure Protocol…', '[82002, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1508053762227, 82003, '2017-10-15 07:49:22.000000', '我也试试', '[1515565976140, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1508072491570, 82002, '2017-10-15 13:01:31.000000', '有点冷~', '[82001, 82002]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548145750829, 82003, '2019-01-22 08:29:10.000000', '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1549017200628, 82001, '2019-02-01 10:33:20.000000', '说点什么吧~快捷键', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1508072633830, 93793, '2017-10-15 13:03:53.000000', '天凉了 +有男朋友的抱男盆友 +有女朋友的抱女朋友 +而我就比较牛逼了 +我不冷。', '[82005, 82002, 70793, 38710, 82045, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1508073178489, 82045, '2017-10-15 13:12:58.000000', '发动态', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1512314438990, 38710, '2017-12-03 15:20:38.000000', 'APIJSON iOS-Swift版发布,自动生成请求代码,欢迎使用^_^ + https://github.com/TommyLemon/APIJSON', '[82001, 82002, 70793, 1512531601485]', '["https://images2018.cnblogs.com/blog/660067/201712/660067-20171203231829476-1202860128.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1513094436910, 38710, '2017-12-12 16:00:36.000000', 'APIJSON-Python已发布,欢迎体验^_^ +https://github.com/TommyLemon/APIJSON', '[82005, 82001]', '["https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_get.jpg", "https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_code.jpg", "https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_doc.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1514017444961, 82002, '2017-12-23 08:24:04.000000', '123479589679', '[82002, 1520242280259, 82001, 70793, 1524042900591, 1528264711016]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1514858533480, 82056, '2018-01-02 02:02:13.000000', 'I am the Iron Man', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1516086423441, 93793, '2018-01-16 07:07:03.000000', '抢到票了,开心ପ( ˘ᵕ˘ ) ੭ ☆', '[93793, 38710, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1520242333325, 1520242280259, '2018-03-05 09:32:13.000000', '法拉利', '[1520242280259, 70793, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1523935589834, 1523626157302, '2018-04-17 03:26:29.000000', 'by第一条动态', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1523936332614, 1523626157302, '2018-04-17 03:38:52.000000', 'by第二条', '[82001, 1523935772553]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1524178455305, 1524042900591, '2018-04-19 22:54:15.000000', '早上好啊', '[1524042900591, 38710, 82003, 82001, 1523626157302]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1524298780222, 1524298730523, '2018-04-21 08:19:40.000000', 'e说点什么吧~', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1524826652626, 1524298730523, '2018-04-27 10:57:32.000000', '说点什么吧~哈哈哈', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1527498273102, 1527498229991, '2018-05-28 09:04:33.000000', '说点什么吧~yui', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1527821296110, 1527495857924, '2018-06-01 02:48:16.000000', '这是我的商品1号', '[1527821445610, 82003, 82001]', '["http://pic31.nipic.com/20130710/13151003_093759013311_2.jpg", "https://cbu01.alicdn.com/img/ibank/2013/514/580/740085415_2101098104.310x310.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1527830331780, 1527495857924, '2018-06-01 05:18:51.000000', '各种购物袋', '[38710, 82002, 1527495857924, 82003]', '["https://cbu01.alicdn.com/img/ibank/2018/292/335/8058533292_57202994.310x310.jpg", "https://cbu01.alicdn.com/img/ibank/2018/089/747/8586747980_1843977904.310x310.jpg", "https://cbu01.alicdn.com/img/ibank/2016/025/123/3012321520_471514049.310x310.jpg", "https://cbu01.alicdn.com/img/ibank/2017/729/995/4800599927_69233977.310x310.jpg", "https://cbu01.alicdn.com/img/ibank/2016/377/263/3755362773_609022431.310x310.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1527830474378, 1527495857924, '2018-06-01 05:21:14.000000', '电视机', '[1527495857924]', '["https://cbu01.alicdn.com/img/ibank/2017/231/077/4524770132_781046171.310x310.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528251335464, 1528250827953, '2018-06-06 02:15:35.000000', 'meiyou', '[1528250827953]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528260617722, 1528255497767, '2018-06-06 04:50:17.000000', '。。。。', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528269822710, 1528264711016, '2018-06-06 07:23:42.000000', 'hhhhhhh', '[1528250827953, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528269988360, 1528250827953, '2018-06-06 07:26:28.000000', '为什么发动态默认会有这两张图片啊?不可以选择自己的图片', '[1528250827953]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528274037224, 1528250827953, '2018-06-06 08:33:57.000000', '说点什么吧~hgdsryh', '[]', '["https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=0&spn=0&di=163958046450&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=1403824732%2C1921310327&os=1571651475%2C3950546936&simid=3426978648%2C550887139&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fooo_z%26e3Botg9aaa_z%26e3Bv54AzdH3Fowssrwrj6_kt2_88an88_8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=", "https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=12&spn=0&di=105575240210&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=832573604%2C2847830718&os=1862795828%2C1682403963&simid=4268934412%2C608274877&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fkkf_z%26e3Bfzi54j_z%26e3Bv54AzdH3Fna-ccbaa-1jpwts-d90cd8ll-a-8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist="]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528356378455, 1528264711016, '2018-06-07 07:26:18.000000', '去旅游嘛~', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528356421201, 1528264711016, '2018-06-07 07:27:01.000000', '(ง •̀_•́)ง', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528356496939, 1528356470041, '2018-06-07 07:28:16.000000', '(๑•ั็ω•็ั๑)', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528462217322, 1528339692804, '2018-06-08 12:50:17.000000', '有没有小姐姐准备端午出游的? +地点:北戴河', '[]', '["https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg", "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528676875139, 1528339692804, '2018-06-11 00:27:55.000000', '123456', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1531062713966, 82002, '2018-07-08 15:11:53.000000', '云南好美啊( ◞˟૩˟)◞', '[82001, 82005, 38710, 70793, 93793, 82003, 1531969715979]', '["https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg", "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1531969818357, 1531969715979, '2018-07-19 03:10:18.000000', 'http://q18idc.com', '[1531969715979, 82001, 38710, 1534926301956]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1533908589726, 1533835176109, '2018-08-10 13:43:09.000000', '我的', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1535781636403, 1532188114543, '2018-09-01 06:00:36.000000', '这是一个测试', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1536064087117, 1532188114543, '2018-09-04 12:28:07.000000', '说点什么吧~奥哈达', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1536805585275, 82003, '2018-09-13 02:26:25.000000', 'iPhone Xs发布了,大家怎么看?', '[82002, 82005, 70793, 82003]', '["https://pic1.zhimg.com/80/v2-e129b40810070443add1c28e6185c894_hd.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1539868023868, 82001, '2018-10-18 13:07:03.000000', '说点什么吧~3', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1540459349460, 82001, '2018-10-25 09:22:29.000000', '说点什么吧~而你', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1540459361744, 82001, '2018-10-25 09:22:41.000000', '说点什么吧~哦哦', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1540634282433, 82001, '2018-10-27 09:58:02.000000', 'https://gss2.bdstatic.com/-fo3dSag_xI4khGkpoWK1HF6hhy/baike/c0%3Dbaike92%2C5%2C5%2C92%2C30/sign=c31ae7219525bc313f5009ca3fb6e6d4/42a98226cffc1e17646dbede4690f603728de90b.jpg', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1541557989440, 38710, '2018-11-07 02:33:09.000000', '自动化接口和文档 APIJSON 3.0.0 发布 +https://www.oschina.net/news/101548/apijson-3-0-released', '[82001]', '["https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Auto_get.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1541667920272, 82001, '2018-11-08 09:05:20.000000', '说点什么吧~???', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1541667945772, 82001, '2018-11-08 09:05:45.000000', '说点什么吧~都有', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1541684010904, 82001, '2018-11-08 13:33:30.000000', '说点什么吧~A man can be destroyed but not defeated', '[82002, 38710, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544265482923, 82001, '2018-12-08 10:38:02.000000', 'APIJSON is a JSON Transmission Structure Protocol…', '[82002, 82003, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544276121218, 82001, '2018-12-08 13:35:21.000000', '说点什么吧~ajhs', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544276216289, 1544276209348, '2018-12-08 13:36:56.000000', '说点什么吧~ey', '[1544276209348]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544497353863, 82001, '2018-12-11 03:02:33.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544497355630, 82001, '2018-12-11 03:02:35.000000', 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544537838100, 82001, '2018-12-11 14:17:18.000000', '说点什么吧~logo灭了也可', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545187924367, 1544503822963, '2018-12-19 02:52:04.000000', '说哼哼唧唧点什么吧~', '[1544503822963, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545490282104, 82001, '2018-12-22 14:51:22.000000', '说点什么吧~apijson', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545560428650, 82001, '2018-12-23 10:20:28.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545564986045, 82003, '2018-12-23 11:36:26.000000', '测试新增动态', '[82001]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545819572448, 82002, '2018-12-26 10:19:32.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545819572637, 82002, '2018-12-26 10:19:32.000000', '测试新增动态', '[82001]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545819752556, 82001, '2018-12-26 10:22:32.000000', '说点什么吧~hello world', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1546934384440, 82001, '2019-01-08 07:59:44.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1547436860950, 82001, '2019-01-14 03:34:20.000000', '测试新增动态', '[82001]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1547479596460, 82001, '2019-01-14 15:26:36.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1547559758939, 82002, '2019-01-15 13:42:38.000000', 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548145750536, 82003, '2019-01-22 08:29:10.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548236953106, 82001, '2019-01-23 09:49:13.000000', '{@}', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548300581350, 82002, '2019-01-24 03:29:41.000000', 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548599361342, 82001, '2019-01-27 14:29:21.000000', '说点什么吧~好)不会徐下节课斜挎包', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548599375288, 82001, '2019-01-27 14:29:35.000000', '说点什么吧~告诉v是v就瞎几把想表达华西坝你撒几哈', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548822634246, 82002, '2019-01-30 04:30:34.000000', 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548822634518, 82002, '2019-01-30 04:30:34.000000', '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096399488, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1557721145964, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093312615, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093312921, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1558891221463, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1558891221788, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096269459, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094319618, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093326180, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560092284174, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560092284508, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094319934, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093326539, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094350737, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560092302827, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560092303319, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094351045, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094254821, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094329746, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093270103, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093270358, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096270069, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094330083, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094255148, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096575905, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096208964, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094315580, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096419027, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094315886, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096209271, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094334838, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094335132, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096419392, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096295559, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120326228, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096295867, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096576289, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560690276182, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096399446, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120257647, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120257326, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560690275764, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120218108, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120224955, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120326572, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120386111, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120385763, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120405667, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120405325, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561630616406, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561630616075, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1568458531964, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1568458532641, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1568461871469, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1568461872933, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570199366451, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570199483864, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601132117007, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570199485028, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127225291, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357591525, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357593773, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127152533, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357610747, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127169887, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357613596, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127573677, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357703386, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127704144, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570524449714, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127171392, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570524540256, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127175330, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570524542006, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127228481, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570611580381, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127229998, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127176958, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570611591924, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127693561, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127139970, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127181043, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127141514, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127724249, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127562784, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127146655, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127146920, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127150976, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127564192, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127182673, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127718645, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127219423, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127695115, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127220674, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601132118551, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127223899, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127698292, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127567029, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127568512, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127572138, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127720271, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127699686, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127727257, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127702649, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127722886, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1612038994612, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127728639, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1612038997550, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1612039185041, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1612039188935, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291251828, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666289475963, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666289476308, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666289803269, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291199308, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666289802937, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291059722, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291058890, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291199776, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (15, 70793, '2017-02-08 08:06:11.000000', 'APIJSON is a JSON Transmission Structure Protocol…', '[82002, 70793, 38710, 93793]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (235, 38710, '2017-02-08 08:06:11.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '["http://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg", "http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291252183, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); diff --git a/DuckDB/single/sys_Praise.sql b/DuckDB/single/sys_Praise.sql new file mode 100644 index 0000000..7fe362a --- /dev/null +++ b/DuckDB/single/sys_Praise.sql @@ -0,0 +1,36 @@ +create table "Praise" +( + id bigint not null + primary key, + "momentId" bigint not null, + "userId" bigint not null, + date timestamp(6) +); + +comment on column "Praise".id is '动态id'; + +comment on column "Praise"."momentId" is '唯一标识'; + +comment on column "Praise"."userId" is '用户id'; + +comment on column "Praise".date is '点赞时间'; + + +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (1, 12, 82001, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (2, 15, 82002, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (3, 32, 82003, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (4, 58, 82004, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (5, 170, 82005, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (6, 235, 82006, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (7, 301, 82007, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (8, 371, 82008, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (9, 470, 82009, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (10, 511, 82010, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (11, 543, 82011, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (12, 551, 82012, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (13, 594, 82013, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (14, 595, 82014, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (15, 704, 82015, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (16, 1491200468898, 82016, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (17, 1491277116776, 82017, '2017-11-19 13:02:30.000000'); +INSERT INTO "Praise" (id, "momentId", "userId", date) VALUES (18, 1493835799335, 82018, '2017-11-19 13:02:30.000000'); diff --git a/DuckDB/single/sys_Request.sql b/DuckDB/single/sys_Request.sql new file mode 100644 index 0000000..b40d528 --- /dev/null +++ b/DuckDB/single/sys_Request.sql @@ -0,0 +1,87 @@ +create table "Request" +( + id bigint, + debug smallint, + version smallint, + method varchar(10), + tag varchar(30), + structure json, + detail varchar(10000), + date timestamp +); + + + +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1, 0, 1, 'POST', 'register', '{"User": {"MUST": "name", "REFUSE": "id", "UPDATE": {"id@": "Privacy/id"}}, "Privacy": {"MUST": "_password,phone", "REFUSE": "id", "UNIQUE": "phone", "VERIFY": {"phone~": "PHONE"}}}', 'UNIQUE校验phone是否已存在。VERIFY校验phone是否符合手机号的格式', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (2, 0, 1, 'POST', 'Moment', '{"INSERT": {"@role": "OWNER", "pictureList": [], "praiseUserIdList": []}, "REFUSE": "id", "UPDATE": {"verifyIdList-()": "verifyIdList(praiseUserIdList)", "verifyURLList-()": "verifyURLList(pictureList)"}}', 'INSERT当没传pictureList和praiseUserIdList时用空数组[]补全,保证不会为null', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (3, 0, 1, 'POST', 'Comment', '{"MUST": "momentId,content", "REFUSE": "id", "UPDATE": {"@role": "OWNER"}}', '必须传userId,momentId,content,不允许传id', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (4, 0, 1, 'PUT', 'User', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "REFUSE": "phone"}', '必须传id,不允许传phone。INSERT当没传@role时用OWNER补全', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (5, 0, 1, 'DELETE', 'Moment', '{"Moment": {"MUST": "id", "INSERT": {"@role": "OWNER"}, "UPDATE": {"commentCount()": "deleteCommentOfMoment(id)"}}}', null, '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (6, 0, 1, 'DELETE', 'Comment', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "UPDATE": {"childCount()": "deleteChildComment(id)"}}', 'disallow没必要用于DELETE', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (8, 0, 1, 'PUT', 'User-phone', '{"User": {"MUST": "id,phone,_password", "INSERT": {"@role": "OWNER"}, "REFUSE": "!", "UPDATE": {"@combine": "_password"}}}', '! 表示其它所有,这里指necessary所有未包含的字段', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (14, 0, 1, 'POST', 'Verify', '{"MUST": "phone,verify", "REFUSE": "!"}', '必须传phone,verify,其它都不允许传', '2017-02-18 22:20:43.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (15, 0, 1, 'GETS', 'Verify', '{"MUST": "phone"}', '必须传phone', '2017-02-18 22:20:43.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (16, 0, 1, 'HEADS', 'Verify', '{}', '允许任意内容', '2017-02-18 22:20:43.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (17, 0, 1, 'PUT', 'Moment', '{"MUST": "id", "REFUSE": "userId,date", "UPDATE": {"@role": "OWNER", "verifyIdList-()": "verifyIdList(praiseUserIdList)", "verifyURLList-()": "verifyURLList(pictureList)"}}', null, '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (21, 0, 1, 'HEADS', 'Login', '{"MUST": "userId,type", "REFUSE": "!"}', null, '2017-02-18 22:20:43.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (22, 0, 1, 'GETS', 'User', '{}', '允许传任何内容,除了表对象', '2017-02-18 22:20:43.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (23, 0, 1, 'PUT', 'Privacy', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', 'INSERT当没传@role时用OWNER补全', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (25, 0, 1, 'PUT', 'Praise', '{"MUST": "id"}', '必须传id', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (26, 0, 1, 'DELETE', 'Comment[]', '{"Comment": {"MUST": "id{}", "INSERT": {"@role": "OWNER"}}}', 'DISALLOW没必要用于DELETE', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (27, 0, 1, 'PUT', 'Comment[]', '{"Comment": {"MUST": "id{}", "INSERT": {"@role": "OWNER"}}}', 'DISALLOW没必要用于DELETE', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (28, 0, 1, 'PUT', 'Comment', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', '这里省略了Comment,因为tag就是Comment,Parser.getCorrectRequest会自动补全', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (29, 0, 1, 'GETS', 'login', '{"Privacy": {"MUST": "phone,_password", "REFUSE": "id"}}', null, '2017-10-15 18:04:52.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (30, 0, 1, 'PUT', 'balance+', '{"Privacy": {"MUST": "id,balance+", "REFUSE": "!", "VERIFY": {"balance+&{}": ">=1,<=100000"}}}', '验证balance+对应的值是否满足>=1且<=100000', '2017-10-21 16:48:34.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (31, 0, 1, 'PUT', 'balance-', '{"Privacy": {"MUST": "id,balance-,_password", "REFUSE": "!", "UPDATE": {"@combine": "_password"}, "VERIFY": {"balance-&{}": ">=1,<=10000"}}}', 'UPDATE强制把_password作为WHERE条件', '2017-10-21 16:48:34.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (32, 0, 2, 'GETS', 'Privacy', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "REFUSE": "_password,_payPassword"}', null, '2017-06-13 00:05:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (33, 0, 2, 'GETS', 'Privacy-CIRCLE', '{"Privacy": {"MUST": "id", "REFUSE": "!", "UPDATE": {"@role": "CIRCLE", "@column": "phone"}}}', null, '2017-06-13 00:05:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (35, 0, 2, 'POST', 'Document', '{"Document": {"MUST": "name,url,request", "INSERT": {"@role": "OWNER"}, "REFUSE": "id"}, "TestRecord": {"MUST": "response", "INSERT": {"@role": "OWNER"}, "REFUSE": "id,documentId", "UPDATE": {"documentId@": "Document/id"}}}', null, '2017-11-26 16:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (36, 1, 2, 'PUT', 'Document', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "REFUSE": "userId"}', null, '2017-11-26 16:35:15.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (37, 1, 2, 'DELETE', 'Document', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "REFUSE": "!", "UPDATE": {"Random": {"@role": "OWNER", "documentId@": "Method/id"}, "TestRecord": {"@role": "OWNER", "documentId@": "Document/id"}}}', null, '2017-11-26 08:36:20.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (38, 0, 2, 'POST', 'TestRecord', '{"MUST": "documentId,response", "INSERT": {"@role": "OWNER"}, "REFUSE": "id"}', null, '2018-06-17 07:44:36.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (39, 1, 2, 'POST', 'Method', '{"Method": {"MUST": "method,class,package", "INSERT": {"@role": "OWNER"}, "REFUSE": "id"}, "TestRecord": {"MUST": "response", "INSERT": {"@role": "OWNER"}, "REFUSE": "id,documentId", "UPDATE": {"documentId@": "Method/id"}}}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (40, 1, 2, 'PUT', 'Method', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "REFUSE": "userId"}', null, '2017-11-26 08:35:15.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (41, 1, 2, 'DELETE', 'Method', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "REFUSE": "!"}', null, '2017-11-26 00:36:20.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (42, 0, 2, 'POST', 'Random', '{"INSERT": {"@role": "OWNER"}, "Random": {"MUST": "documentId,name,config"}, "TestRecord": {"UPDATE": {"randomId@": "/Random/id", "documentId@": "/Random/documentId"}}}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (43, 1, 2, 'PUT', 'Random', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "REFUSE": "userId"}', null, '2017-11-26 08:35:15.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (44, 1, 2, 'DELETE', 'Random', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "UPDATE": {"TestRecord": {"@role": "OWNER", "randomId@": "/id"}}}', null, '2017-11-26 00:36:20.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (45, 0, 2, 'POST', 'Comment:[]', '{"TYPE": {"Comment[]": "OBJECT[]"}, "INSERT": {"@role": "OWNER"}, "Comment[]": [], "ALLOW_PARTIAL_UPDATE_FAIL": "Comment[]"}', null, '2020-03-01 13:40:04.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (46, 0, 2, 'POST', 'Moment:[]', '{"INSERT": {"@role": "OWNER"}, "Moment[]": []}', null, '2020-03-01 13:41:42.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (47, 0, 2, 'PUT', 'Comment:[]', '{"INSERT": {"@role": "OWNER"}, "Comment[]": []}', null, '2020-03-01 13:40:04.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (48, 1, 2, 'DELETE', 'TestRecord', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 00:36:20.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (49, 0, 2, 'POST', 'Input', '{"MUST": "deviceId,x,y", "INSERT": {"@role": "OWNER"}, "REFUSE": "id"}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (50, 0, 2, 'POST', 'Device', '{"MUST": "brand,model", "INSERT": {"@role": "OWNER"}, "REFUSE": "id"}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (51, 0, 2, 'POST', 'System', '{"MUST": "type,versionCode,versionName", "INSERT": {"@role": "OWNER"}, "REFUSE": "id"}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (52, 0, 2, 'POST', 'Flow', '{"MUST": "deviceId,systemId,name", "INSERT": {"@role": "OWNER"}, "REFUSE": "id"}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (53, 0, 4, 'GETS', 'Privacy', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "REFUSE": "!"}', null, '2017-06-13 00:05:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (54, 0, 2, 'POST', 'Output', '{"MUST": "inputId", "INSERT": {"@role": "OWNER"}, "REFUSE": "id"}', null, '2018-06-17 07:44:36.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (55, 0, 2, 'DELETE', 'Output', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 00:36:20.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (56, 0, 3, 'DELETE', 'Method', '{"MUST": "id", "INSERT": {"@role": "OWNER"}, "REFUSE": "!"}', null, '2017-11-26 00:36:20.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (57, 0, 4, 'GETS', 'User[]', '{"User": {"INSERT": {"@role": "CIRCLE"}}, "REFUSE": "query"}', null, '2021-10-22 00:29:32.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (58, 0, 1, 'PUT', 'Moment-praiseUserIdList+', '{"Moment": {"MUST": "id", "REFUSE": "!", "UPDATE": {"@role": "CIRCLE", "newListWithCurUserId-()": "newListWithCurUserId(praiseUserIdList+)"}}}', '单独针对 Moment 点赞设置校验规则(允许圈子成员操作自己的数据)', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (59, 0, 1, 'PUT', 'Moment-praiseUserIdList-', '{"Moment": {"MUST": "id", "REFUSE": "!", "UPDATE": {"@role": "CIRCLE", "praiseUserIdList--()": "newListWithCurUserId()"}}}', '单独针对 Moment 取消点赞设置校验规则(允许圈子成员操作自己的数据)', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (61, 1, 1, 'POST', 'Request', '{"MUST": "method,tag,structure", "INSERT": {"@role": "LOGIN"}, "REFUSE": "!detail,!"}', null, '2022-05-03 03:07:37.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1651614346391, 0, 1, 'GET', 'momentList', '{"MUST": "Moment[].page", "TYPE": {"format": "BOOLEAN", "Moment[].page": "NUMBER", "Moment[].count": "NUMBER"}, "REFUSE": "!Moment[].count,!format,!"}', '查询动态列表类 RESTful 简单接口', '2022-05-04 05:46:04.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1657562189773, 0, 1, 'GET', 'moments', '{"MUST": "Moment[].page", "TYPE": {"format": "BOOLEAN", "Moment[].page": "NUMBER", "Moment[].count": "NUMBER"}, "REFUSE": "!Moment[].count,!format,!"}', '查动态列表类 RESTful 简单接口', '2022-07-12 01:56:32.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1657793230364, 0, 1, 'GET', 'User[]', '{"MUST": "", "TYPE": {}, "REFUSE": "!"}', '随机配置 2022-07-14 18:07', '2022-07-14 18:07:10.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984265, 0, 1, 'GET', 'user', '{"MUST": "", "TYPE": {}, "REFUSE": "!"}', '随机配置 2022-07-19 19:26', '2022-07-19 19:26:24.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984266, 0, 5, 'POST', 'Activity', '{}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984267, 0, 5, 'POST', 'Fragment', '{}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984268, 0, 5, 'POST', 'View', '{}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984269, 0, 5, 'POST', 'Activity:[]', '{"TYPE": {"Activity[]": "OBJECT[]"}, "INSERT": {"@role": "OWNER"}, "Activity[]": []}', null, '2020-03-01 13:40:04.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984270, 0, 5, 'POST', 'Fragment:[]', '{"TYPE": {"Fragment[]": "OBJECT[]"}, "INSERT": {"@role": "OWNER"}, "Fragment[]": []}', null, '2020-03-01 13:40:04.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984271, 0, 5, 'POST', 'View:[]', '{"TYPE": {"View[]": "OBJECT[]"}, "INSERT": {"@role": "OWNER"}, "View[]": []}', null, '2020-03-01 13:40:04.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984274, 0, 5, 'PUT', 'Activity', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 08:35:15.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984275, 0, 5, 'PUT', 'Fragment', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 08:35:15.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984276, 0, 5, 'PUT', 'View', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 08:35:15.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984277, 0, 5, 'DELETE', 'Activity', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 00:36:20.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984278, 0, 5, 'DELETE', 'Fragment', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 00:36:20.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984279, 0, 5, 'DELETE', 'View', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 00:36:20.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984280, 0, 5, 'DELETE', 'View[]', '{"View": {"MUST": "id{}", "INSERT": {"@role": "OWNER"}}}', 'DISALLOW没必要用于DELETE', '2017-02-01 19:19:51.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984281, 0, 2, 'POST', 'Comment[]', '{"TYPE": {"Comment[]": "OBJECT[]"}, "INSERT": {"@role": "OWNER"}, "Comment[]": []}', null, '2020-03-01 13:40:04.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984282, 0, 5, 'POST', 'Data', '{}', null, '2022-12-11 04:58:27.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984283, 0, 5, 'PUT', 'Data', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2022-12-11 04:58:27.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984284, 0, 5, 'DELETE', 'Data', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2022-12-11 04:58:27.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984285, 0, 5, 'POST', 'Script', '{"MUST": "name,script", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984286, 0, 5, 'PUT', 'Script', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 08:34:41.000000'); +insert into "Request" (id, debug, version, method, tag, structure, detail, date) values (1658229984287, 0, 5, 'DELETE', 'Script', '{"MUST": "id", "INSERT": {"@role": "OWNER"}}', null, '2017-11-26 08:34:41.000000'); diff --git a/DuckDB/single/sys_Script.sql b/DuckDB/single/sys_Script.sql new file mode 100644 index 0000000..e0a46d6 --- /dev/null +++ b/DuckDB/single/sys_Script.sql @@ -0,0 +1,72 @@ +create table "Script" +( + id bigint, + "userId" bigint, + "testAccountId" bigint, + "documentId" bigint, + simple smallint, + ahead smallint, + title varchar(100), + name varchar(100), + script text, + date timestamp, + detail varchar(1000) +); + + +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (1, 0, 0, 0, 0, 0, null, 'getType', 'function getType(curObj, key) { + var val = curObj == null ? null : curObj[key]; + return val instanceof Array ? "array" : typeof val; +}', '2022-11-17 00:01:23.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (2, 0, 0, 0, 0, 0, null, 'isContain', 'function isContain(curObj, arrKey, valKey) { + var arr = curObj == null ? null : curObj[arrKey]; + var val = curObj == null ? null : curObj[valKey]; + return arr != null && arr.indexOf(val) >=0; +}', '2022-11-17 00:02:48.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (3, 0, 0, 0, 1, 0, null, 'init', 'var i = 1; +"init done " + i;', '2022-11-17 00:41:35.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (4, 0, 0, 0, 0, 0, null, 'length', 'function length(curObj, key) { + var val = curObj == null ? null : curObj[key]; + return val == null ? 0 : val.length; +}', '2022-11-17 01:18:43.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (1670877704568, 82001, 0, 1560244940013, 1, 0, '执行脚本 2022-12-13 04:41', '', '', '2022-12-13 04:41:44.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (1670877914051, 82001, 0, 0, 1, 1, '执行脚本 2022-12-13 04:44', '', 'function assert(assertion, msg) { + if (assertion === true) { + return + } + if (msg == null) { + msg = ''assert failed! assertion = '' + assertion + } + + if (isTest) { + console.log(msg) + alert(msg) + } else { + throw new Error(msg) + } +} + +if (isTest) { + assert(true) + assert(false) + assert(true, ''ok'') + assert(false, ''data.User shoule not be null!'') +} + +function getCurAccount() { + return App.getCurrentAccount() +}', '2022-12-13 04:45:14.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (1670878495619, 82001, 82002, 0, 1, 0, '执行脚本 2022-12-13 04:54', '', 'function getCurAccount() { + return App.getCurrentAccount() +}', '2022-12-13 04:54:55.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (1670878529042, 82001, 82001, 0, 1, 1, '执行脚本 2022-12-13 04:55', '', 'function getCurAccount() { + return App.getCurrentAccount() +}', '2022-12-13 04:55:29.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (1670878622401, 82001, 82003, 0, 1, 0, '执行脚本 2022-12-13 04:57', '', 'if (isPre) { + header[''my-header''] = ''test'' +}', '2022-12-13 04:57:02.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (1670885503909, 82001, 0, 1657045372046, 1, 1, '执行脚本 2022-12-13 06:51', '', 'if (isPre) { + req.User.id = 82005 +}', '2022-12-13 06:51:43.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (1670887211207, 82001, 0, 1657045372046, 1, 0, '执行脚本 2022-12-13 07:20', '', '', '2022-12-13 07:20:11.000000', null); +insert into "Script" (id, "userId", "testAccountId", "documentId", simple, ahead, title, name, script, date, detail) values (1671083305189, 82001, 0, 0, 1, 0, null, 'globalPost0', '', '2022-12-15 13:48:25.000000', null); diff --git a/DuckDB/single/sys_TestRecord.sql b/DuckDB/single/sys_TestRecord.sql new file mode 100644 index 0000000..6aed61b --- /dev/null +++ b/DuckDB/single/sys_TestRecord.sql @@ -0,0 +1,768 @@ +create table "TestRecord" +( + id bigint not null + primary key, + "userId" bigint not null, + "documentId" bigint not null, + response text not null, + date timestamp(6) default CURRENT_TIMESTAMP not null, + compare text, + standard text, + "randomId" bigint default 0, + headless smallint default 0 not null, + "reportId" bigint default 0 not null, + "testAccountId" bigint default 0 not null, + duration bigint default 0 not null, + "minDuration" bigint default 0 not null, + "maxDuration" bigint default 0 not null, + host varchar(200) +); + +comment on column "TestRecord".id is '唯一标识'; + +comment on column "TestRecord"."userId" is '用户id'; + +comment on column "TestRecord"."documentId" is '测试用例文档id'; + +comment on column "TestRecord".response is '接口返回结果JSON'; + +comment on column "TestRecord".date is '创建日期'; + +comment on column "TestRecord".compare is '对比结果'; + +comment on column "TestRecord".standard is 'response 的校验标准,是一个 JSON 格式的 AST ,描述了正确 Response 的结构、里面的字段名称、类型、长度、取值范围 等属性。'; + +comment on column "TestRecord"."randomId" is '随机配置 id'; + + +comment on column "TestRecord".headless is '是否为无 UI 的 Headless 模式:0-否 1-是'; + +comment on column "TestRecord"."reportId" is '测试报告 ID'; + +comment on column "TestRecord"."testAccountId" is '测试账号 id'; + + +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520087199083, 82001, 1519526273822, '{"[]":[{"User":{"id":82002,"sex":1,"name":"Happy~","tag":"iOS","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82005,82001,38710,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82003,"sex":1,"name":"Wechat","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[82001,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82005,"sex":1,"name":"Jan","tag":"AG","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001,38710],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82006,"sex":1,"name":"Meria","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82021,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82025,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82028,"sex":1,"name":"gaeg","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82030,"sex":1,"name":"Fun","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82033,"sex":1,"name":"GAS","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82034,"sex":1,"name":"Jump","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82035,"sex":1,"name":"Tab","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82039,"sex":1,"name":"Everyday","head":"http://common.cnblogs.com/images/icon_weibo_24.png","contactIdList":[],"pictureList":[],"date":"2017-02-19 21:57:56.0"}},{"User":{"id":82040,"sex":1,"name":"Dream","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-03 00:44:26.0"}},{"User":{"id":82042,"sex":1,"name":"Why","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-04 18:04:33.0"}},{"User":{"id":82044,"sex":1,"name":"Love","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82006],"pictureList":[],"date":"2017-03-04 18:20:27.0"}},{"User":{"id":82055,"sex":1,"name":"Solid","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[38710,82002],"pictureList":[],"date":"2017-03-11 23:04:00.0"}},{"User":{"id":82056,"sex":1,"name":"IronMan","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-03-11 23:32:25.0"}},{"User":{"id":82059,"sex":1,"name":"He&She","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-19 22:49:15.0"}},{"User":{"id":82060,"sex":1,"name":"Anyway~","head":"http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000","contactIdList":[],"pictureList":[],"date":"2017-03-21 22:10:18.0"}},{"User":{"id":1490109742863,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-21 23:22:22.0"}},{"User":{"id":1490420651686,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-25 13:44:11.0"}},{"User":{"id":1490973670928,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793,93793],"pictureList":[],"date":"2017-03-31 23:21:10.0"}},{"User":{"id":1508072105320,"sex":1,"name":"周吴郑王","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:55:05.0"}}],"code":200,"msg":"success"}', '2018-03-03 14:26:39.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520087202299, 82001, 1519368532249, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":21927.05},"code":200,"msg":"success"}', '2018-03-03 14:26:42.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520087205329, 82001, 1511969630372, '{"Comment":{"code":200,"msg":"success","id":1520087181598,"count":1},"code":200,"msg":"success"}', '2018-03-03 14:26:45.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520088798322, 82001, 1519526273822, '{"Document[]":[{"id":1519526273822,"userId":82001,"version":2,"compare":2,"name":"gets请求","url":"/gets","request":"{ + "Privacy": { + "id": 82001 + }, + "tag": "Privacy" +}","date":"2018-02-25 10:37:53.0"},{"id":1519368532249,"userId":82001,"version":2,"compare":1,"name":"login请求","url":"/login","request":"{ + "type": 0, + "phone": "13000082001", + "password": "123456", + "version": 1 +}","date":"2018-02-23 14:48:52.0"},{"id":1516325614520,"userId":82001,"version":2,"compare":0,"name":"get请求","url":"/get","request":" { + "[]":{ + "User":{ + "sex":1 + } + } + } + ","date":"2018-01-19 09:33:34.0"},{"id":1511963330795,"userId":0,"version":2,"compare":0,"name":"获取文档列表(即在线解析网页上的共享)-API调用方式","url":"/get","request":"{ + "Document[]": { + "Document": { + "@role": "login", + "@order": "version-,date-" + } + } +}","date":"2017-11-29 21:48:50.0"},{"id":1512216131855,"userId":0,"version":1,"compare":0,"name":"获取文档列表(即在线解析网页上的文档)-表和字段、请求格式限制","url":"/get","request":"{ + "[]": { + "Table": { + "TABLE_SCHEMA": "sys", + "TABLE_TYPE": "BASE TABLE", + "TABLE_NAME!$": [ + "\\_%", + "sys\\_%", + "system\\_%" + ], + "@order": "TABLE_NAME+", + "@column": "TABLE_NAME,TABLE_COMMENT" + }, + "Column[]": { + "Column": { + "TABLE_NAME@": "[]/Table/TABLE_NAME", + "@column": "COLUMN_NAME,COLUMN_TYPE,IS_NULLABLE,COLUMN_COMMENT" + } + } + }, + "Request[]": { + "Request": { + "@order": "version-,method-" + } + } +}","date":"2017-12-02 20:02:11.0"},{"id":1511970224333,"userId":0,"version":1,"compare":3,"name":"修改用户信息","url":"/put","request":"{ + "User": { + "id": 82001, + "name": "测试改名" + }, + "tag": "User" +}","date":"2017-11-29 23:43:44.0"},{"id":1511970009072,"userId":0,"version":1,"compare":0,"name":"新增动态","url":"/post","request":"{ + "Moment": { + "userId": 82001, + "content": "测试新增动态", + "pictureList": ["http://static.oschina.net/uploads/user/48/96331_50.jpg" + ] + }, + "tag": "Moment" +}","date":"2017-11-29 23:40:09.0"},{"id":1511969630372,"userId":0,"version":1,"compare":4,"name":"新增评论","url":"/post","request":"{ + "Comment": { + "userId": 82001, + "momentId": 15, + "content": "测试新增评论" + }, + "tag": "Comment" +}","date":"2017-11-29 23:33:50.0"},{"id":1511969417633,"userId":0,"version":1,"compare":0,"name":"点赞/取消点赞","url":"/put","request":"{ + "Moment": { + "id": 15, + "praiseUserIdList-": [ + 82001 + ] + }, + "tag": "Moment" +}","date":"2017-11-29 23:30:17.0"},{"id":1511969181104,"userId":0,"version":1,"compare":0,"name":"添加朋友","url":"/put","request":"{ + "User": { + "id": 82001, + "contactIdList+": [93793] + }, + "tag": "User" +}","date":"2017-11-29 23:26:21.0"},{"id":1511967853340,"userId":0,"version":1,"compare":0,"name":"获取动态列表Moment+User+User:parise[]+Comment[]","url":"/get","request":"{ + "[]": { + "count": 5, + "page": 0, + "Moment": { + "@order": "date-" + }, + "User": { + "id@": "/Moment/userId", + "@column": "id,name,head" + }, + "User[]": { + "count": 10, + "User": { + "id{}@": "[]/Moment/praiseUserIdList", + "@column": "id,name" + } + }, + "[]": { + "count": 6, + "Comment": { + "@order": "date+", + "momentId@": "[]/Moment/id" + }, + "User": { + "id@": "/Comment/userId", + "@column": "id,name" + } + } + } +}","date":"2017-11-29 23:04:13.0"},{"id":1511964176689,"userId":0,"version":1,"compare":0,"name":"获取评论列表-动态详情页Comment+User","url":"/get","request":"{ + "[]": { + "count": 20, + "page": 0, + "Comment": { + "@order": "date+", + "momentId": 15 + }, + "User": { + "id@": "/Comment/userId", + "@column": "id,name,head" + } + } +}","date":"2017-11-29 22:02:56.0"},{"id":1511963990072,"userId":0,"version":1,"compare":0,"name":"获取动态Moment+User+praiseUserList","url":"/get","request":"{ + "Moment": { + "id": 15 + }, + "User": { + "id@": "Moment/userId", + "@column": "id,name,head" + }, + "User[]": { + "count": 10, + "User": { + "id{}@": "Moment/praiseUserIdList", + "@column": "id,name" + } + } +}","date":"2017-11-29 21:59:50.0"},{"id":1511963722970,"userId":0,"version":1,"compare":0,"name":"获取用户列表("id{}":contactIdList)-朋友页","url":"/get","request":"{ + "User[]": { + "count": 10, + "page": 0, + "User": { + "@column": "id,sex,name,tag,head", + "@order": "name+", + "id{}": [ + 82002, + 82004, + 70793 + ] + } + } +}","date":"2017-11-29 21:55:22.0"},{"id":1511963677325,"userId":0,"version":1,"compare":1,"name":"获取用户","url":"/get","request":"{"User": {"id": 82001}}","date":"2017-11-29 21:54:37.0"},{"id":1511796882184,"userId":0,"version":1,"compare":0,"name":"充值(需要支付密码)/提现","url":"/put/balance","request":"{"tag": "Privacy", "Privacy": {"id": 82001, "balance+": 100.15, "_payPassword": "123456"}}","date":"2017-11-27 23:34:42.0"},{"id":1511796589079,"userId":0,"version":1,"compare":0,"name":"修改登录密码(先获取验证码type:2)-手机号+验证码","url":"/put/password","request":"{"verify": "10322", "Privacy": {"phone": "13000082001", "_password": "666666"}}","date":"2017-11-27 23:29:49.0"},{"id":1511796208670,"userId":0,"version":1,"compare":0,"name":"检查验证码是否存在","url":"/heads/verify","request":"{"type": 0, "phone": "13000082001"}","date":"2017-11-27 23:23:28.0"},{"id":1511796155277,"userId":0,"version":1,"compare":0,"name":"获取验证码","url":"/post/verify","request":"{"type": 0, "phone": "13000082001"}","date":"2017-11-27 23:22:35.0"},{"id":3,"userId":0,"version":1,"compare":0,"name":"退出登录","url":"/logout","request":"{}","date":"2017-11-26 17:56:10.0"},{"id":1511689914599,"userId":0,"version":1,"compare":0,"name":"获取用户隐私信息","url":"/gets","request":"{"tag": "Privacy", "Privacy": {"id": 82001}}","date":"2017-11-26 17:51:54.0"},{"id":1,"userId":0,"version":1,"compare":0,"name":"登录","url":"/login","request":"{"type": 0, "phone": "13000082001", "version": 1, "password": "123456"}","date":"2017-11-26 15:35:19.0"},{"id":2,"userId":0,"version":1,"compare":0,"name":"注册(先获取验证码type:1)","url":"/register","request":"{ + "Privacy": { + "phone": "13000083333", + "_password": "123456" + }, + "User": { + "name": "APIJSONUser" + }, + "verify": "6840" +}"}],"code":200,"msg":"success"}', '2018-03-03 14:53:18.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520088802486, 82001, 1511970224333, '{"Comment":{"code":200,"msg":"success","id":1520088770429,"count":1},"code":200,"msg":"success"}', '2018-03-03 14:53:22.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520088813403, 82001, 1511969630372, '{"Moment":{"id":15,"praiseUserIdList-":[82001]},"code":417,"msg":"PUT Moment, praiseUserIdList:82001 不存在!"}', '2018-03-03 14:53:33.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520088985525, 82001, 1511963677325, '{"code":412,"msg":"手机号或验证码错误!"}', '2018-03-03 14:56:25.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520089316891, 82001, 1519368532249, '{"User":{"code":200,"msg":"success","id":82001,"count":1},"code":200,"msg":"success"}', '2018-03-03 15:01:56.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520089324108, 82001, 1511970224333, '{"Comment":{"code":200,"msg":"success","id":1520089307634,"count":1},"code":200,"msg":"success"}', '2018-03-03 15:02:04.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520089326569, 82001, 1511969630372, '{"[]":[{"User":{"id":82002,"sex":1,"name":"Happy~","tag":"iOS","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82005,82001,38710,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82003,"sex":1,"name":"Wechat","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[82001,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82005,"sex":1,"name":"Jan","tag":"AG","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001,38710],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82006,"sex":1,"name":"Meria","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82021,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82025,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82028,"sex":1,"name":"gaeg","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82030,"sex":1,"name":"Fun","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82033,"sex":1,"name":"GAS","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82034,"sex":1,"name":"Jump","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82035,"sex":1,"name":"Tab","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82039,"sex":1,"name":"Everyday","head":"http://common.cnblogs.com/images/icon_weibo_24.png","contactIdList":[],"pictureList":[],"date":"2017-02-19 21:57:56.0"}},{"User":{"id":82040,"sex":1,"name":"Dream","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-03 00:44:26.0"}},{"User":{"id":82042,"sex":1,"name":"Why","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-04 18:04:33.0"}},{"User":{"id":82044,"sex":1,"name":"Love","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82006],"pictureList":[],"date":"2017-03-04 18:20:27.0"}},{"User":{"id":82055,"sex":1,"name":"Solid","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[38710,82002],"pictureList":[],"date":"2017-03-11 23:04:00.0"}},{"User":{"id":82056,"sex":1,"name":"IronMan","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-03-11 23:32:25.0"}},{"User":{"id":82059,"sex":1,"name":"He&She","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-19 22:49:15.0"}},{"User":{"id":82060,"sex":1,"name":"Anyway~","head":"http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000","contactIdList":[],"pictureList":[],"date":"2017-03-21 22:10:18.0"}},{"User":{"id":1490109742863,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-21 23:22:22.0"}},{"User":{"id":1490420651686,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-25 13:44:11.0"}},{"User":{"id":1490973670928,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793,93793],"pictureList":[],"date":"2017-03-31 23:21:10.0"}},{"User":{"id":1508072105320,"sex":1,"name":"周吴郑王","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:55:05.0"}}],"code":200,"msg":"success"}', '2018-03-03 15:02:06.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520089328891, 82001, 1511963677325, '{"code":412,"msg":"手机号或验证码错误!"}', '2018-03-03 15:02:08.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520089695229, 82001, 2, '{"Document[]":[{"id":1519526273822,"userId":82001,"version":2,"name":"gets请求","url":"/gets","request":"{ + "Privacy": { + "id": 82001 + }, + "tag": "Privacy" +}","response":"{"Document[]":[{"id":1519526273822,"userId":82001,"version":2,"compare":2,"name":"gets请求","url":"/gets","request":"{ + "Privacy": { + "id": 82001 + }, + "tag": "Privacy" +}","date":"2018-02-25 10:37:53.0"},{"id":1519368532249,"userId":82001,"version":2,"compare":1,"name":"login请求","url":"/login","request":"{ + "type": 0, + "phone": "13000082001", + "password": "123456", + "version": 1 +}","date":"2018-02-23 14:48:52.0"},{"id":1516325614520,"userId":82001,"version":2,"compare":0,"name":"get请求","url":"/get","request":" { + "[]":{ + "User":{ + "sex":1 + } + } + } + ","date":"2018-01-19 09:33:34.0"},{"id":1511963330795,"userId":0,"version":2,"compare":0,"name":"获取文档列表(即在线解析网页上的共享)-API调用方式","url":"/get","request":"{ + "Document[]": { + "Document": { + "@role": "login", + "@order": "version-,date-" + } + } +}","date":"2017-11-29 21:48:50.0"},{"id":1512216131855,"userId":0,"version":1,"compare":0,"name":"获取文档列表(即在线解析网页上的文档)-表和字段、请求格式限制","url":"/get","request":"{ + "[]": { + "Table": { + "TABLE_SCHEMA": "sys", + "TABLE_TYPE": "BASE TABLE", + "TABLE_NAME!$": [ + "\\_%", + "sys\\_%", + "system\\_%" + ], + "@order": "TABLE_NAME+", + "@column": "TABLE_NAME,TABLE_COMMENT" + }, + "Column[]": { + "Column": { + "TABLE_NAME@": "[]/Table/TABLE_NAME", + "@column": "COLUMN_NAME,COLUMN_TYPE,IS_NULLABLE,COLUMN_COMMENT" + } + } + }, + "Request[]": { + "Request": { + "@order": "version-,method-" + } + } +}","date":"2017-12-02 20:02:11.0"},{"id":1511970224333,"userId":0,"version":1,"compare":3,"name":"修改用户信息","url":"/put","request":"{ + "User": { + "id": 82001, + "name": "测试改名" + }, + "tag": "User" +}","date":"2017-11-29 23:43:44.0"},{"id":1511970009072,"userId":0,"version":1,"compare":0,"name":"新增动态","url":"/post","request":"{ + "Moment": { + "userId": 82001, + "content": "测试新增动态", + "pictureList": ["http://static.oschina.net/uploads/user/48/96331_50.jpg" + ] + }, + "tag": "Moment" +}","date":"2017-11-29 23:40:09.0"},{"id":1511969630372,"userId":0,"version":1,"compare":4,"name":"新增评论","url":"/post","request":"{ + "Comment": { + "userId": 82001, + "momentId": 15, + "content": "测试新增评论" + }, + "tag": "Comment" +}","date":"2017-11-29 23:33:50.0"},{"id":1511969417633,"userId":0,"version":1,"compare":0,"name":"点赞/取消点赞","url":"/put","request":"{ + "Moment": { + "id": 15, + "praiseUserIdList-": [ + 82001 + ] + }, + "tag": "Moment" +}","date":"2017-11-29 23:30:17.0"},{"id":1511969181104,"userId":0,"version":1,"compare":0,"name":"添加朋友","url":"/put","request":"{ + "User": { + "id": 82001, + "contactIdList+": [93793] + }, + "tag": "User" +}","date":"2017-11-29 23:26:21.0"},{"id":1511967853340,"userId":0,"version":1,"compare":0,"name":"获取动态列表Moment+User+User:parise[]+Comment[]","url":"/get","request":"{ + "[]": { + "count": 5, + "page": 0, + "Moment": { + "@order": "date-" + }, + "User": { + "id@": "/Moment/userId", + "@column": "id,name,head" + }, + "User[]": { + "count": 10, + "User": { + "id{}@": "[]/Moment/praiseUserIdList", + "@column": "id,name" + } + }, + "[]": { + "count": 6, + "Comment": { + "@order": "date+", + "momentId@": "[]/Moment/id" + }, + "User": { + "id@": "/Comment/userId", + "@column": "id,name" + } + } + } +}","date":"2017-11-29 23:04:13.0"},{"id":1511964176689,"userId":0,"version":1,"compare":0,"name":"获取评论列表-动态详情页Comment+User","url":"/get","request":"{ + "[]": { + "count": 20, + "page": 0, + "Comment": { + "@order": "date+", + "momentId": 15 + }, + "User": { + "id@": "/Comment/userId", + "@column": "id,name,head" + } + } +}","date":"2017-11-29 22:02:56.0"},{"id":1511963990072,"userId":0,"version":1,"compare":0,"name":"获取动态Moment+User+praiseUserList","url":"/get","request":"{ + "Moment": { + "id": 15 + }, + "User": { + "id@": "Moment/userId", + "@column": "id,name,head" + }, + "User[]": { + "count": 10, + "User": { + "id{}@": "Moment/praiseUserIdList", + "@column": "id,name" + } + } +}","date":"2017-11-29 21:59:50.0"},{"id":1511963722970,"userId":0,"version":1,"compare":0,"name":"获取用户列表("id{}":contactIdList)-朋友页","url":"/get","request":"{ + "User[]": { + "count": 10, + "page": 0, + "User": { + "@column": "id,sex,name,tag,head", + "@order": "name+", + "id{}": [ + 82002, + 82004, + 70793 + ] + } + } +}","date":"2017-11-29 21:55:22.0"},{"id":1511963677325,"userId":0,"version":1,"compare":1,"name":"获取用户","url":"/get","request":"{"User": {"id": 82001}}","date":"2017-11-29 21:54:37.0"},{"id":1511796882184,"userId":0,"version":1,"compare":0,"name":"充值(需要支付密码)/提现","url":"/put/balance","request":"{"tag": "Privacy", "Privacy": {"id": 82001, "balance+": 100.15, "_payPassword": "123456"}}","date":"2017-11-27 23:34:42.0"},{"id":1511796589079,"userId":0,"version":1,"compare":0,"name":"修改登录密码(先获取验证码type:2)-手机号+验证码","url":"/put/password","request":"{"verify": "10322", "Privacy": {"phone": "13000082001", "_password": "666666"}}","date":"2017-11-27 23:29:49.0"},{"id":1511796208670,"userId":0,"version":1,"compare":0,"name":"检查验证码是否存在","url":"/heads/verify","request":"{"type": 0, "phone": "13000082001"}","date":"2017-11-27 23:23:28.0"},{"id":1511796155277,"userId":0,"version":1,"compare":0,"name":"获取验证码","url":"/post/verify","request":"{"type": 0, "phone": "13000082001"}","date":"2017-11-27 23:22:35.0"},{"id":3,"userId":0,"version":1,"compare":0,"name":"退出登录","url":"/logout","request":"{}","date":"2017-11-26 17:56:10.0"},{"id":1511689914599,"userId":0,"version":1,"compare":0,"name":"获取用户隐私信息","url":"/gets","request":"{"tag": "Privacy", "Privacy": {"id": 82001}}","date":"2017-11-26 17:51:54.0"},{"id":1,"userId":0,"version":1,"compare":0,"name":"登录","url":"/login","request":"{"type": 0, "phone": "13000082001", "version": 1, "password": "123456"}","date":"2017-11-26 15:35:19.0"},{"id":2,"userId":0,"version":1,"compare":0,"name":"注册(先获取验证码type:1)","url":"/register","request":"{ + "Privacy": { + "phone": "13000083333", + "_password": "123456" + }, + "User": { + "name": "APIJSONUser" + }, + "verify": "6840" +}"}],"code":200,"msg":"success"}","date":"2018-02-25 10:37:53.0"},{"id":1519368532249,"userId":82001,"version":2,"name":"login请求","url":"/login","request":"{ + "type": 0, + "phone": "13000082001", + "password": "123456", + "version": 1 +}","response":"{"User":{"code":200,"msg":"success","id":82001,"count":1},"code":200,"msg":"success"}","date":"2018-02-23 14:48:52.0"},{"id":1516325614520,"userId":82001,"version":2,"name":"get请求","url":"/get","request":" { + "[]":{ + "User":{ + "sex":1 + } + } + } + ","date":"2018-01-19 09:33:34.0"},{"id":1511963330795,"userId":0,"version":2,"name":"获取文档列表(即在线解析网页上的共享)-API调用方式","url":"/get","request":"{ + "Document[]": { + "Document": { + "@role": "login", + "@order": "version-,date-" + } + } +}","date":"2017-11-29 21:48:50.0"},{"id":1512216131855,"userId":0,"version":1,"name":"获取文档列表(即在线解析网页上的文档)-表和字段、请求格式限制","url":"/get","request":"{ + "[]": { + "Table": { + "TABLE_SCHEMA": "sys", + "TABLE_TYPE": "BASE TABLE", + "TABLE_NAME!$": [ + "\\_%", + "sys\\_%", + "system\\_%" + ], + "@order": "TABLE_NAME+", + "@column": "TABLE_NAME,TABLE_COMMENT" + }, + "Column[]": { + "Column": { + "TABLE_NAME@": "[]/Table/TABLE_NAME", + "@column": "COLUMN_NAME,COLUMN_TYPE,IS_NULLABLE,COLUMN_COMMENT" + } + } + }, + "Request[]": { + "Request": { + "@order": "version-,method-" + } + } +}","date":"2017-12-02 20:02:11.0"},{"id":1511970224333,"userId":0,"version":1,"name":"修改用户信息","url":"/put","request":"{ + "User": { + "id": 82001, + "name": "测试改名" + }, + "tag": "User" +}","date":"2017-11-29 23:43:44.0"},{"id":1511970009072,"userId":0,"version":1,"name":"新增动态","url":"/post","request":"{ + "Moment": { + "userId": 82001, + "content": "测试新增动态", + "pictureList": ["http://static.oschina.net/uploads/user/48/96331_50.jpg" + ] + }, + "tag": "Moment" +}","date":"2017-11-29 23:40:09.0"},{"id":1511969630372,"userId":0,"version":1,"name":"新增评论","url":"/post","request":"{ + "Comment": { + "userId": 82001, + "momentId": 15, + "content": "测试新增评论" + }, + "tag": "Comment" +}","date":"2017-11-29 23:33:50.0"},{"id":1511969417633,"userId":0,"version":1,"name":"点赞/取消点赞","url":"/put","request":"{ + "Moment": { + "id": 15, + "praiseUserIdList-": [ + 82001 + ] + }, + "tag": "Moment" +}","date":"2017-11-29 23:30:17.0"},{"id":1511969181104,"userId":0,"version":1,"name":"添加朋友","url":"/put","request":"{ + "User": { + "id": 82001, + "contactIdList+": [93793] + }, + "tag": "User" +}","date":"2017-11-29 23:26:21.0"},{"id":1511967853340,"userId":0,"version":1,"name":"获取动态列表Moment+User+User:parise[]+Comment[]","url":"/get","request":"{ + "[]": { + "count": 5, + "page": 0, + "Moment": { + "@order": "date-" + }, + "User": { + "id@": "/Moment/userId", + "@column": "id,name,head" + }, + "User[]": { + "count": 10, + "User": { + "id{}@": "[]/Moment/praiseUserIdList", + "@column": "id,name" + } + }, + "[]": { + "count": 6, + "Comment": { + "@order": "date+", + "momentId@": "[]/Moment/id" + }, + "User": { + "id@": "/Comment/userId", + "@column": "id,name" + } + } + } +}","date":"2017-11-29 23:04:13.0"},{"id":1511964176689,"userId":0,"version":1,"name":"获取评论列表-动态详情页Comment+User","url":"/get","request":"{ + "[]": { + "count": 20, + "page": 0, + "Comment": { + "@order": "date+", + "momentId": 15 + }, + "User": { + "id@": "/Comment/userId", + "@column": "id,name,head" + } + } +}","date":"2017-11-29 22:02:56.0"},{"id":1511963990072,"userId":0,"version":1,"name":"获取动态Moment+User+praiseUserList","url":"/get","request":"{ + "Moment": { + "id": 15 + }, + "User": { + "id@": "Moment/userId", + "@column": "id,name,head" + }, + "User[]": { + "count": 10, + "User": { + "id{}@": "Moment/praiseUserIdList", + "@column": "id,name" + } + } +}","date":"2017-11-29 21:59:50.0"},{"id":1511963722970,"userId":0,"version":1,"name":"获取用户列表("id{}":contactIdList)-朋友页","url":"/get","request":"{ + "User[]": { + "count": 10, + "page": 0, + "User": { + "@column": "id,sex,name,tag,head", + "@order": "name+", + "id{}": [ + 82002, + 82004, + 70793 + ] + } + } +}","date":"2017-11-29 21:55:22.0"},{"id":1511963677325,"userId":0,"version":1,"name":"获取用户","url":"/get","request":"{"User": {"id": 82001}}","date":"2017-11-29 21:54:37.0"},{"id":1511796882184,"userId":0,"version":1,"name":"充值(需要支付密码)/提现","url":"/put/balance","request":"{"tag": "Privacy", "Privacy": {"id": 82001, "balance+": 100.15, "_payPassword": "123456"}}","date":"2017-11-27 23:34:42.0"},{"id":1511796589079,"userId":0,"version":1,"name":"修改登录密码(先获取验证码type:2)-手机号+验证码","url":"/put/password","request":"{"verify": "10322", "Privacy": {"phone": "13000082001", "_password": "666666"}}","date":"2017-11-27 23:29:49.0"},{"id":1511796208670,"userId":0,"version":1,"name":"检查验证码是否存在","url":"/heads/verify","request":"{"type": 0, "phone": "13000082001"}","date":"2017-11-27 23:23:28.0"},{"id":1511796155277,"userId":0,"version":1,"name":"获取验证码","url":"/post/verify","request":"{"type": 0, "phone": "13000082001"}","date":"2017-11-27 23:22:35.0"},{"id":3,"userId":0,"version":1,"name":"退出登录","url":"/logout","request":"{}","date":"2017-11-26 17:56:10.0"},{"id":1511689914599,"userId":0,"version":1,"name":"获取用户隐私信息","url":"/gets","request":"{"tag": "Privacy", "Privacy": {"id": 82001}}","date":"2017-11-26 17:51:54.0"},{"id":1,"userId":0,"version":1,"name":"登录","url":"/login","request":"{"type": 0, "phone": "13000082001", "version": 1, "password": "123456"}","date":"2017-11-26 15:35:19.0"},{"id":2,"userId":0,"version":1,"name":"注册(先获取验证码type:1)","url":"/register","request":"{ + "Privacy": { + "phone": "13000083333", + "_password": "123456" + }, + "User": { + "name": "APIJSONUser" + }, + "verify": "6840" +}"}],"code":200,"msg":"success"}', '2018-03-03 15:08:15.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520090219049, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":22628.1},"code":200,"msg":"success"}', '2018-03-03 15:16:59.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520090220914, 82001, 1516325614520, '{"[]":[{"User":{"id":82002,"sex":1,"name":"Happy~","tag":"iOS","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82005,82001,38710,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82003,"sex":1,"name":"Wechat","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[82001,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82005,"sex":1,"name":"Jan","tag":"AG","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001,38710],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82006,"sex":1,"name":"Meria","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82021,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82025,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82028,"sex":1,"name":"gaeg","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82030,"sex":1,"name":"Fun","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82033,"sex":1,"name":"GAS","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82034,"sex":1,"name":"Jump","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82035,"sex":1,"name":"Tab","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82039,"sex":1,"name":"Everyday","head":"http://common.cnblogs.com/images/icon_weibo_24.png","contactIdList":[],"pictureList":[],"date":"2017-02-19 21:57:56.0"}},{"User":{"id":82040,"sex":1,"name":"Dream","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-03 00:44:26.0"}},{"User":{"id":82042,"sex":1,"name":"Why","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-04 18:04:33.0"}},{"User":{"id":82044,"sex":1,"name":"Love","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82006],"pictureList":[],"date":"2017-03-04 18:20:27.0"}},{"User":{"id":82055,"sex":1,"name":"Solid","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[38710,82002],"pictureList":[],"date":"2017-03-11 23:04:00.0"}},{"User":{"id":82056,"sex":1,"name":"IronMan","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-03-11 23:32:25.0"}},{"User":{"id":82059,"sex":1,"name":"He&She","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-19 22:49:15.0"}},{"User":{"id":82060,"sex":1,"name":"Anyway~","head":"http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000","contactIdList":[],"pictureList":[],"date":"2017-03-21 22:10:18.0"}},{"User":{"id":1490109742863,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-21 23:22:22.0"}},{"User":{"id":1490420651686,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-25 13:44:11.0"}},{"User":{"id":1490973670928,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793,93793],"pictureList":[],"date":"2017-03-31 23:21:10.0"}},{"User":{"id":1508072105320,"sex":1,"name":"周吴郑王","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:55:05.0"}}],"code":200,"msg":"success"}', '2018-03-03 15:17:00.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520090222151, 82001, 1519368532249, '{"User":{"id":82001,"sex":0,"name":"测试改名","tag":"APIJSON User","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[82025,70793,82034,93793,82021,82033],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"},"code":200,"msg":"success"}', '2018-03-03 15:17:02.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520090430596, 82001, 1516325614520, '{"User":{"id":82001,"sex":0,"name":"测试改名","tag":"APIJSON User","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[82025,70793,82034,93793,82021,82033],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"},"code":200,"msg":"success"}', '2018-03-03 15:20:30.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520090633508, 82001, 1516325614520, '{"code":412,"msg":"手机号或验证码错误!"}', '2018-03-03 15:23:53.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520091069489, 82001, 1516325614520, '{"code":412,"msg":"手机号或验证码错误!"}', '2018-03-03 15:31:09.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520091190755, 82001, 1519368532249, '{"code":412,"msg":"手机号或验证码错误!"}', '2018-03-03 15:33:10.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520091349017, 82001, 1519526273822, '{"code":412,"msg":"手机号或验证码错误!"}', '2018-03-03 15:35:49.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520091550804, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":22628.1},"code":200,"msg":"success"}', '2018-03-03 15:39:10.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520091551472, 82001, 1519368532249, '{"User":{"id":82001,"sex":0,"name":"测试改名","tag":"APIJSON User","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[82025,70793,82034,93793,82021,82033],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"},"code":200,"msg":"success"}', '2018-03-03 15:39:11.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520091552062, 82001, 1516325614520, '{"[]":[{"User":{"id":82002,"sex":1,"name":"Happy~","tag":"iOS","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82005,82001,38710,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82003,"sex":1,"name":"Wechat","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[82001,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82005,"sex":1,"name":"Jan","tag":"AG","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001,38710],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82006,"sex":1,"name":"Meria","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82021,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82025,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82028,"sex":1,"name":"gaeg","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82030,"sex":1,"name":"Fun","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82033,"sex":1,"name":"GAS","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82034,"sex":1,"name":"Jump","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82035,"sex":1,"name":"Tab","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82039,"sex":1,"name":"Everyday","head":"http://common.cnblogs.com/images/icon_weibo_24.png","contactIdList":[],"pictureList":[],"date":"2017-02-19 21:57:56.0"}},{"User":{"id":82040,"sex":1,"name":"Dream","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-03 00:44:26.0"}},{"User":{"id":82042,"sex":1,"name":"Why","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-04 18:04:33.0"}},{"User":{"id":82044,"sex":1,"name":"Love","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82006],"pictureList":[],"date":"2017-03-04 18:20:27.0"}},{"User":{"id":82055,"sex":1,"name":"Solid","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[38710,82002],"pictureList":[],"date":"2017-03-11 23:04:00.0"}},{"User":{"id":82056,"sex":1,"name":"IronMan","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-03-11 23:32:25.0"}},{"User":{"id":82059,"sex":1,"name":"He&She","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-19 22:49:15.0"}},{"User":{"id":82060,"sex":1,"name":"Anyway~","head":"http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000","contactIdList":[],"pictureList":[],"date":"2017-03-21 22:10:18.0"}},{"User":{"id":1490109742863,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-21 23:22:22.0"}},{"User":{"id":1490420651686,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-25 13:44:11.0"}},{"User":{"id":1490973670928,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793,93793],"pictureList":[],"date":"2017-03-31 23:21:10.0"}},{"User":{"id":1508072105320,"sex":1,"name":"周吴郑王","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:55:05.0"}}],"code":200,"msg":"success"}', '2018-03-03 15:39:12.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173915650, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":27134.85},"code":200,"msg":"success"}', '2018-03-04 14:31:55.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520091900844, 82001, 1516325614520, '{"[]":[{"User":{"id":82002,"sex":1,"name":"Happy~","tag":"iOS","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82005,82001,38710,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82003,"sex":1,"name":"Wechat","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[82001,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82005,"sex":1,"name":"Jan","tag":"AG","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001,38710],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82006,"sex":1,"name":"Meria","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82021,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82025,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82028,"sex":1,"name":"gaeg","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82030,"sex":1,"name":"Fun","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82033,"sex":1,"name":"GAS","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82034,"sex":1,"name":"Jump","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82035,"sex":1,"name":"Tab","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82039,"sex":1,"name":"Everyday","head":"http://common.cnblogs.com/images/icon_weibo_24.png","contactIdList":[],"pictureList":[],"date":"2017-02-19 21:57:56.0"}},{"User":{"id":82040,"sex":1,"name":"Dream","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-03 00:44:26.0"}},{"User":{"id":82042,"sex":1,"name":"Why","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-04 18:04:33.0"}},{"User":{"id":82044,"sex":1,"name":"Love","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82006],"pictureList":[],"date":"2017-03-04 18:20:27.0"}},{"User":{"id":82055,"sex":1,"name":"Solid","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[38710,82002],"pictureList":[],"date":"2017-03-11 23:04:00.0"}},{"User":{"id":82056,"sex":1,"name":"IronMan","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-03-11 23:32:25.0"}},{"User":{"id":82059,"sex":1,"name":"He&She","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-19 22:49:15.0"}},{"User":{"id":82060,"sex":1,"name":"Anyway~","head":"http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000","contactIdList":[],"pictureList":[],"date":"2017-03-21 22:10:18.0"}},{"User":{"id":1490109742863,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-21 23:22:22.0"}},{"User":{"id":1490420651686,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-25 13:44:11.0"}},{"User":{"id":1490973670928,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793,93793],"pictureList":[],"date":"2017-03-31 23:21:10.0"}},{"User":{"id":1508072105320,"sex":1,"name":"周吴郑王","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:55:05.0"}}],"code":200,"msg":"success"}', '2018-03-03 15:45:00.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520092115128, 82001, 1520091922118, '{"User":{"id":82001,"sex":0,"name":"测试改名","tag":"APIJSON User","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[82025,70793,82034,93793,82021,82033],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"},"code":200,"msg":"success"}', '2018-03-03 15:48:35.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520092224195, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":22628.1},"code":200,"msg":"success"}', '2018-03-03 15:50:24.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520092385815, 82001, 1520091922118, '{"User":{"id":82001,"sex":0,"name":"测试改名","tag":"APIJSON User","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[82025,70793,82034,93793,82021,82033],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"},"code":200,"msg":"success"}', '2018-03-03 15:53:05.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520092411345, 82001, 1516325614520, '{"[]":[{"User":{"id":82002,"sex":1,"name":"Happy~","tag":"iOS","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82005,82001,38710,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82003,"sex":1,"name":"Wechat","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[82001,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82005,"sex":1,"name":"Jan","tag":"AG","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001,38710],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82006,"sex":1,"name":"Meria","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82021,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82025,"sex":1,"name":"Tommy","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82028,"sex":1,"name":"gaeg","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82030,"sex":1,"name":"Fun","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82033,"sex":1,"name":"GAS","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82034,"sex":1,"name":"Jump","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82035,"sex":1,"name":"Tab","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82039,"sex":1,"name":"Everyday","head":"http://common.cnblogs.com/images/icon_weibo_24.png","contactIdList":[],"pictureList":[],"date":"2017-02-19 21:57:56.0"}},{"User":{"id":82040,"sex":1,"name":"Dream","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-03 00:44:26.0"}},{"User":{"id":82042,"sex":1,"name":"Why","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-04 18:04:33.0"}},{"User":{"id":82044,"sex":1,"name":"Love","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000","contactIdList":[82006],"pictureList":[],"date":"2017-03-04 18:20:27.0"}},{"User":{"id":82055,"sex":1,"name":"Solid","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[38710,82002],"pictureList":[],"date":"2017-03-11 23:04:00.0"}},{"User":{"id":82056,"sex":1,"name":"IronMan","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-03-11 23:32:25.0"}},{"User":{"id":82059,"sex":1,"name":"He&She","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[],"pictureList":[],"date":"2017-03-19 22:49:15.0"}},{"User":{"id":82060,"sex":1,"name":"Anyway~","head":"http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000","contactIdList":[],"pictureList":[],"date":"2017-03-21 22:10:18.0"}},{"User":{"id":1490109742863,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-21 23:22:22.0"}},{"User":{"id":1490420651686,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793],"pictureList":[],"date":"2017-03-25 13:44:11.0"}},{"User":{"id":1490973670928,"sex":1,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[70793,93793],"pictureList":[],"date":"2017-03-31 23:21:10.0"}},{"User":{"id":1508072105320,"sex":1,"name":"周吴郑王","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:55:05.0"}}],"code":200,"msg":"success"}', '2018-03-03 15:53:31.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520092528119, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":22628.1},"code":200,"msg":"success"}', '2018-03-03 15:55:28.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520092670553, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":22628.1},"code":200,"msg":"success"}', '2018-03-03 15:57:50.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520092819799, 82001, 1520091922118, '{"User":{"id":82001,"sex":0,"name":"测试改名","tag":"APIJSON User","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[82025,70793,82034,93793,82021,82033],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"},"code":200,"msg":"success"}', '2018-03-03 16:00:19.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173868568, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":26734.25},"code":200,"msg":"success"}', '2018-03-04 14:31:08.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173870784, 82001, 1512216131855, '{"[]":[{"Table":{"TABLE_NAME":"apijson_privacy","TABLE_COMMENT":"用户隐私信息表。 +对安全要求高,不想泄漏真实名称。对外名称为 Privacy"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"certified","COLUMN_TYPE":"tinyint(2)","IS_NULLABLE":"NO","COLUMN_COMMENT":"已认证"},{"COLUMN_NAME":"phone","COLUMN_TYPE":"bigint(11)","IS_NULLABLE":"NO","COLUMN_COMMENT":"手机号,仅支持 11 位数的。不支持 +86 这种国家地区开头的。如果要支持就改为 VARCHAR(14)"},{"COLUMN_NAME":"balance","COLUMN_TYPE":"decimal(10,2)","IS_NULLABLE":"NO","COLUMN_COMMENT":"余额"},{"COLUMN_NAME":"_password","COLUMN_TYPE":"varchar(20)","IS_NULLABLE":"NO","COLUMN_COMMENT":"登录密码"},{"COLUMN_NAME":"_payPassword","COLUMN_TYPE":"int(6)","IS_NULLABLE":"NO","COLUMN_COMMENT":"支付密码"}]},{"Table":{"TABLE_NAME":"apijson_user","TABLE_COMMENT":"用户公开信息表。 +对安全要求高,不想泄漏真实名称。对外名称为 User"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"sex","COLUMN_TYPE":"tinyint(2)","IS_NULLABLE":"NO","COLUMN_COMMENT":"性别: +0-男 +1-女"},{"COLUMN_NAME":"name","COLUMN_TYPE":"varchar(20)","IS_NULLABLE":"YES","COLUMN_COMMENT":"名称"},{"COLUMN_NAME":"tag","COLUMN_TYPE":"varchar(45)","IS_NULLABLE":"YES","COLUMN_COMMENT":"标签"},{"COLUMN_NAME":"head","COLUMN_TYPE":"varchar(300)","IS_NULLABLE":"YES","COLUMN_COMMENT":"头像url"},{"COLUMN_NAME":"contactIdList","COLUMN_TYPE":"json","IS_NULLABLE":"YES","COLUMN_COMMENT":"联系人id列表"},{"COLUMN_NAME":"pictureList","COLUMN_TYPE":"json","IS_NULLABLE":"YES","COLUMN_COMMENT":"照片列表"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"YES","COLUMN_COMMENT":"创建日期"}]},{"Table":{"TABLE_NAME":"Comment","TABLE_COMMENT":"评论"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"toId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"YES","COLUMN_COMMENT":"被回复的id"},{"COLUMN_NAME":"userId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"评论人id"},{"COLUMN_NAME":"momentId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"动态id"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"YES","COLUMN_COMMENT":"创建日期"},{"COLUMN_NAME":"content","COLUMN_TYPE":"varchar(1000)","IS_NULLABLE":"NO","COLUMN_COMMENT":"内容"}]},{"Table":{"TABLE_NAME":"Document","TABLE_COMMENT":"测试用例文档 +后端开发者在测试好后,把选好的测试用例上传,这样就能共享给前端/客户端开发者"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"userId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"用户id +应该用adminId,只有当登录账户是管理员时才能操作文档。 +需要先建Admin表,新增登录等相关接口。"},{"COLUMN_NAME":"version","COLUMN_TYPE":"tinyint(4)","IS_NULLABLE":"NO","COLUMN_COMMENT":"接口版本号 +<=0 - 不限制版本,任意版本都可用这个接口 +>0 - 在这个版本添加的接口"},{"COLUMN_NAME":"name","COLUMN_TYPE":"varchar(50)","IS_NULLABLE":"NO","COLUMN_COMMENT":"接口名称"},{"COLUMN_NAME":"url","COLUMN_TYPE":"varchar(250)","IS_NULLABLE":"NO","COLUMN_COMMENT":"请求地址"},{"COLUMN_NAME":"request","COLUMN_TYPE":"text","IS_NULLABLE":"NO","COLUMN_COMMENT":"请求 +用json格式会导致强制排序,而请求中引用赋值只能引用上面的字段,必须有序。"},{"COLUMN_NAME":"response","COLUMN_TYPE":"text","IS_NULLABLE":"YES","COLUMN_COMMENT":"标准返回结果JSON +用json格式会导致强制排序,而请求中引用赋值只能引用上面的字段,必须有序。"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"YES","COLUMN_COMMENT":"创建日期"}]},{"Table":{"TABLE_NAME":"Login","TABLE_COMMENT":"@deprecated,登录信息存session"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"userId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"用户id"},{"COLUMN_NAME":"type","COLUMN_TYPE":"tinyint(2)","IS_NULLABLE":"NO","COLUMN_COMMENT":"类型 +0-密码登录 +1-验证码登录"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"NO","COLUMN_COMMENT":"创建日期"}]},{"Table":{"TABLE_NAME":"Moment","TABLE_COMMENT":"动态"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"userId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"用户id"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"YES","COLUMN_COMMENT":"创建日期"},{"COLUMN_NAME":"content","COLUMN_TYPE":"varchar(300)","IS_NULLABLE":"YES","COLUMN_COMMENT":"内容"},{"COLUMN_NAME":"praiseUserIdList","COLUMN_TYPE":"json","IS_NULLABLE":"NO","COLUMN_COMMENT":"点赞的用户id列表"},{"COLUMN_NAME":"pictureList","COLUMN_TYPE":"json","IS_NULLABLE":"NO","COLUMN_COMMENT":"图片列表"}]},{"Table":{"TABLE_NAME":"Praise","TABLE_COMMENT":"如果对Moment写安全要求高,可以将Moment内praiserUserIdList分离到Praise表中,作为userIdList。 +权限注解也改下: +@MethodAccess( + PUT = {OWNER, ADMIN} + ) +class Moment { + … +} + +@MethodAccess( + PUT = {LOGIN, CONTACT, CIRCLE, OWNER, ADMIN} + ) + class Praise { + … + } +"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"动态id"},{"COLUMN_NAME":"momentId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"userId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"用户id"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"YES","COLUMN_COMMENT":"点赞时间"}]},{"Table":{"TABLE_NAME":"Request","TABLE_COMMENT":"最好编辑完后删除主键,这样就是只读状态,不能随意更改。需要更改就重新加上主键。 + +每次启动服务器时加载整个表到内存。 +这个表不可省略,model内注解的权限只是客户端能用的,其它可以保证即便服务端代码错误时也不会误删数据。"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"version","COLUMN_TYPE":"tinyint(4)","IS_NULLABLE":"NO","COLUMN_COMMENT":"GET,HEAD可用任意结构访问任意开放内容,不需要这个字段。 +其它的操作因为写入了结构和内容,所以都需要,按照不同的version选择对应的structure。 + +自动化版本管理: +Request JSON最外层可以传 “version”:Integer 。 +1.未传或 <= 0,用最新版。 “@order”:”version-“ +2.已传且 > 0,用version以上的可用版本的最低版本。 “@order”:”version+”, “version{}”:”>={version}”"},{"COLUMN_NAME":"method","COLUMN_TYPE":"varchar(10)","IS_NULLABLE":"YES","COLUMN_COMMENT":"只限于GET,HEAD外的操作方法。"},{"COLUMN_NAME":"tag","COLUMN_TYPE":"varchar(20)","IS_NULLABLE":"NO","COLUMN_COMMENT":"标签"},{"COLUMN_NAME":"structure","COLUMN_TYPE":"json","IS_NULLABLE":"NO","COLUMN_COMMENT":"结构"},{"COLUMN_NAME":"detail","COLUMN_TYPE":"varchar(10000)","IS_NULLABLE":"YES","COLUMN_COMMENT":"详细说明"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"YES","COLUMN_COMMENT":"创建日期"}]},{"Table":{"TABLE_NAME":"Response","TABLE_COMMENT":"每次启动服务器时加载整个表到内存。"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"method","COLUMN_TYPE":"varchar(10)","IS_NULLABLE":"YES","COLUMN_COMMENT":"方法"},{"COLUMN_NAME":"model","COLUMN_TYPE":"varchar(20)","IS_NULLABLE":"NO","COLUMN_COMMENT":"表名,table是SQL关键词不能用"},{"COLUMN_NAME":"structure","COLUMN_TYPE":"json","IS_NULLABLE":"NO","COLUMN_COMMENT":"结构"},{"COLUMN_NAME":"detail","COLUMN_TYPE":"varchar(10000)","IS_NULLABLE":"YES","COLUMN_COMMENT":"详细说明"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"YES","COLUMN_COMMENT":"创建日期"}]},{"Table":{"TABLE_NAME":"Test","TABLE_COMMENT":"测试及验证用的表,可以用 SELECT condition替代 SELECT * FROM Test WHERE condition,这样就不需要这张表了"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"tinyint(2)","IS_NULLABLE":"NO","COLUMN_COMMENT":""}]},{"Table":{"TABLE_NAME":"TestRecord","TABLE_COMMENT":"测试记录 +主要用于保存自动化接口回归测试"},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"userId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"用户id"},{"COLUMN_NAME":"documentId","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"测试用例文档id"},{"COLUMN_NAME":"response","COLUMN_TYPE":"text","IS_NULLABLE":"NO","COLUMN_COMMENT":"接口返回结果JSON"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"NO","COLUMN_COMMENT":"创建日期"}]},{"Table":{"TABLE_NAME":"Verify","TABLE_COMMENT":""},"Column[]":[{"COLUMN_NAME":"id","COLUMN_TYPE":"bigint(15)","IS_NULLABLE":"NO","COLUMN_COMMENT":"唯一标识"},{"COLUMN_NAME":"type","COLUMN_TYPE":"int(2)","IS_NULLABLE":"NO","COLUMN_COMMENT":"类型: +0-登录 +1-注册 +2-修改登录密码 +3-修改支付密码"},{"COLUMN_NAME":"phone","COLUMN_TYPE":"bigint(11)","IS_NULLABLE":"NO","COLUMN_COMMENT":"手机号"},{"COLUMN_NAME":"verify","COLUMN_TYPE":"int(6)","IS_NULLABLE":"NO","COLUMN_COMMENT":"验证码"},{"COLUMN_NAME":"date","COLUMN_TYPE":"timestamp","IS_NULLABLE":"NO","COLUMN_COMMENT":"创建时间"}]}],"Request[]":[{"id":36,"version":2,"method":"PUT","tag":"Document","structure":{"ADD":{"@role":"owner"},"DISALLOW":"userId","NECESSARY":"id"},"date":"2017-11-26 16:35:15.0"},{"id":35,"version":2,"method":"POST","tag":"Document","structure":{"DISALLOW":"id","NECESSARY":"userId,name,url,request"},"date":"2017-11-26 16:34:41.0"},{"id":32,"version":2,"method":"GETS","tag":"Privacy","structure":{"ADD":{"@role":"owner"},"DISALLOW":"_password,_payPassword","NECESSARY":"id"},"date":"2017-06-13 00:05:51.0"},{"id":33,"version":2,"method":"GETS","tag":"Privacy-CIRCLE","structure":{"Privacy":{"DISALLOW":"!","NECESSARY":"id","PUT":{"@column":"phone","@role":"CIRCLE"}}},"date":"2017-06-13 00:05:51.0"},{"id":37,"version":2,"method":"DELETE","tag":"Document","structure":{"ADD":{"@role":"owner"},"DISALLOW":"!","NECESSARY":"id"},"date":"2017-11-26 16:36:20.0"},{"id":4,"version":1,"method":"PUT","tag":"User","structure":{"ADD":{"@role":"owner"},"DISALLOW":"phone","NECESSARY":"id"},"detail":"必须传id,不允许传phone。ADD当没传@role时用owner补全","date":"2017-02-01 19:19:51.0"},{"id":8,"version":1,"method":"PUT","tag":"User-phone","structure":{"User":{"ADD":{"@role":"owner"},"DISALLOW":"!","NECESSARY":"id,phone,_password","PUT":{"@condition":"_password"}}},"detail":"! 表示其它所有,这里指necessary所有未包含的字段","date":"2017-02-01 19:19:51.0"},{"id":17,"version":1,"method":"PUT","tag":"Moment","structure":{"DISALLOW":"userId,date","NECESSARY":"id"},"date":"2017-02-01 19:19:51.0"},{"id":23,"version":1,"method":"PUT","tag":"Privacy","structure":{"ADD":{"@role":"owner"},"NECESSARY":"id"},"detail":"ADD当没传@role时用owner补全","date":"2017-02-01 19:19:51.0"},{"id":25,"version":1,"method":"PUT","tag":"Praise","structure":{"NECESSARY":"id"},"detail":"必须传id","date":"2017-02-01 19:19:51.0"},{"id":27,"version":1,"method":"PUT","tag":"Comment[]","structure":{"Comment":{"ADD":{"@role":"owner"},"NECESSARY":"id{}"}},"detail":"DISALLOW没必要用于DELETE","date":"2017-02-01 19:19:51.0"},{"id":28,"version":1,"method":"PUT","tag":"Comment","structure":{"ADD":{"@role":"owner"},"NECESSARY":"id"},"detail":"这里省略了Comment,因为tag就是Comment,Parser.getCorrectRequest会自动补全","date":"2017-02-01 19:19:51.0"},{"id":30,"version":1,"method":"PUT","tag":"balance+","structure":{"Privacy":{"VERIFY":{"balance+&{}":">=1,<=100000"},"DISALLOW":"!","NECESSARY":"id,balance+"}},"detail":"验证balance+对应的值是否满足>=1且<=100000","date":"2017-10-21 16:48:34.0"},{"id":31,"version":1,"method":"PUT","tag":"balance-","structure":{"Privacy":{"VERIFY":{"balance-&{}":">=1,<=10000"},"DISALLOW":"!","NECESSARY":"id,balance-,_password","PUT":{"@condition":"_password"}}},"detail":"PUT强制把_password作为WHERE条件","date":"2017-10-21 16:48:34.0"},{"id":1,"version":1,"method":"POST","tag":"register","structure":{"Privacy":{"UNIQUE":"phone","VERIFY":{"phone?":"phone"},"DISALLOW":"id","NECESSARY":"_password,phone"},"User":{"DISALLOW":"id","NECESSARY":"name","PUT":{"id@":"Privacy/id"}}},"detail":"UNIQUE校验phone是否已存在。VERIFY校验phone是否符合手机号的格式","date":"2017-02-01 19:19:51.0"},{"id":2,"version":1,"method":"POST","tag":"Moment","structure":{"ADD":{"praiseUserIdList":[],"pictureList":[]},"DISALLOW":"id","NECESSARY":"userId,pictureList"},"detail":"ADD当没传pictureList和praiseUserIdList时用空数组[]补全,保证不会为null","date":"2017-02-01 19:19:51.0"},{"id":3,"version":1,"method":"POST","tag":"Comment","structure":{"DISALLOW":"id","NECESSARY":"userId,momentId,content"},"detail":"必须传userId,momentId,content,不允许传id","date":"2017-02-01 19:19:51.0"},{"id":14,"version":1,"method":"POST","tag":"Verify","structure":{"DISALLOW":"!","NECESSARY":"phone,verify"},"detail":"必须传phone,verify,其它都不允许传","date":"2017-02-18 22:20:43.0"},{"id":38,"version":1,"method":"POST","tag":"TestRecord","structure":{"DISALLOW":"id","NECESSARY":"userId,documentId,response"},"date":"2017-11-26 16:34:41.0"},{"id":16,"version":1,"method":"HEADS","tag":"Verify","structure":{},"detail":"允许任意内容","date":"2017-02-18 22:20:43.0"},{"id":21,"version":1,"method":"HEADS","tag":"Login","structure":{"DISALLOW":"!","NECESSARY":"userId,type"},"date":"2017-02-18 22:20:43.0"},{"id":15,"version":1,"method":"GETS","tag":"Verify","structure":{"NECESSARY":"phone"},"detail":"必须传phone","date":"2017-02-18 22:20:43.0"},{"id":22,"version":1,"method":"GETS","tag":"User","structure":{},"detail":"允许传任何内容,除了表对象","date":"2017-02-18 22:20:43.0"},{"id":29,"version":1,"method":"GETS","tag":"login","structure":{"Privacy":{"DISALLOW":"id","NECESSARY":"phone,_password"}},"date":"2017-10-15 18:04:52.0"},{"id":5,"version":1,"method":"DELETE","tag":"Moment","structure":{"Moment":{"ADD":{"@role":"owner"},"NECESSARY":"id"},"PUT":{"Comment":{"@role":"admin","momentId@":"Moment/id"}}},"date":"2017-02-01 19:19:51.0"},{"id":6,"version":1,"method":"DELETE","tag":"Comment","structure":{"Comment":{"ADD":{"@role":"owner"},"NECESSARY":"id"},"PUT":{"Comment:child":{"toId@":"Comment/id","@role":"admin"}}},"detail":"disallow没必要用于DELETE","date":"2017-02-01 19:19:51.0"},{"id":26,"version":1,"method":"DELETE","tag":"Comment[]","structure":{"Comment":{"ADD":{"@role":"owner"},"NECESSARY":"id{}"}},"detail":"DISALLOW没必要用于DELETE","date":"2017-02-01 19:19:51.0"}],"code":200,"msg":"success"}', '2018-03-04 14:31:10.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173872976, 82001, 1511970224333, '{"User":{"code":200,"msg":"success","id":82001,"count":1},"code":200,"msg":"success"}', '2018-03-04 14:31:12.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173873719, 82001, 1511970009072, '{"Moment":{"code":200,"msg":"success","id":1520173865791,"count":1},"code":200,"msg":"success"}', '2018-03-04 14:31:13.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173875424, 82001, 1511969181104, '{"User":{"id":82001,"contactIdList+":[93793],"@role":"owner"},"code":409,"msg":"PUT User, contactIdList:93793 已存在!"}', '2018-03-04 14:31:15.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173877914, 82001, 1511969630372, '{"Comment":{"code":200,"msg":"success","id":1520173865916,"count":1},"code":200,"msg":"success"}', '2018-03-04 14:31:17.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173878817, 82001, 1511967853340, '{"[]":[{"Moment":{"id":1520173760960,"userId":82001,"date":"2018-03-04 22:29:20.0","content":"测试新增动态","praiseUserIdList":[],"pictureList":["http://static.oschina.net/uploads/user/48/96331_50.jpg"]},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Moment":{"id":1520173720451,"userId":82001,"date":"2018-03-04 22:28:40.0","content":"测试新增动态","praiseUserIdList":[],"pictureList":["http://static.oschina.net/uploads/user/48/96331_50.jpg"]},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Moment":{"id":1520173672910,"userId":82001,"date":"2018-03-04 22:27:52.0","content":"测试新增动态","praiseUserIdList":[],"pictureList":["http://static.oschina.net/uploads/user/48/96331_50.jpg"]},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Moment":{"id":1520173667947,"userId":82001,"date":"2018-03-04 22:27:47.0","content":"测试新增动态","praiseUserIdList":[],"pictureList":["http://static.oschina.net/uploads/user/48/96331_50.jpg"]},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Moment":{"id":1520173666384,"userId":82001,"date":"2018-03-04 22:27:46.0","content":"测试新增动态","praiseUserIdList":[],"pictureList":["http://static.oschina.net/uploads/user/48/96331_50.jpg"]},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}}],"code":200,"msg":"success"}', '2018-03-04 14:31:18.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173879493, 82001, 1511964176689, '{"[]":[{"Comment":{"id":176,"toId":166,"userId":38710,"momentId":15,"date":"2017-03-25 20:28:03.0","content":"thank you"},"User":{"id":38710,"name":"TommyLemon","head":"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000"}},{"Comment":{"id":1490863469638,"toId":0,"userId":82002,"momentId":15,"date":"2017-03-30 16:44:29.0","content":"Just do it"},"User":{"id":82002,"name":"Happy~","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000"}},{"Comment":{"id":1490875660259,"toId":1490863469638,"userId":82055,"momentId":15,"date":"2017-03-30 20:07:40.0","content":"I prove wht you said(??????)"},"User":{"id":82055,"name":"Solid","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1508227456407,"toId":0,"userId":82001,"momentId":15,"date":"2017-10-17 16:04:16.0","content":"hsh"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1509346606036,"toId":0,"userId":82001,"momentId":15,"date":"2017-10-30 14:56:46.0","content":"测"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520086403693,"userId":82001,"momentId":15,"date":"2018-03-03 22:13:23.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520086647789,"userId":82001,"momentId":15,"date":"2018-03-03 22:17:27.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520086858159,"userId":82001,"momentId":15,"date":"2018-03-03 22:20:58.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520087089611,"userId":82001,"momentId":15,"date":"2018-03-03 22:24:49.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520087181598,"userId":82001,"momentId":15,"date":"2018-03-03 22:26:21.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520088770429,"userId":82001,"momentId":15,"date":"2018-03-03 22:52:50.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520089307634,"userId":82001,"momentId":15,"date":"2018-03-03 23:01:47.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520089508692,"userId":82001,"momentId":15,"date":"2018-03-03 23:05:08.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520089597667,"userId":82001,"momentId":15,"date":"2018-03-03 23:06:37.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520089619339,"userId":82001,"momentId":15,"date":"2018-03-03 23:06:59.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520089621208,"userId":82001,"momentId":15,"date":"2018-03-03 23:07:01.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520171621453,"userId":82001,"momentId":15,"date":"2018-03-04 21:53:41.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520171658156,"userId":82001,"momentId":15,"date":"2018-03-04 21:54:18.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520171697409,"userId":82001,"momentId":15,"date":"2018-03-04 21:54:57.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1520171714260,"userId":82001,"momentId":15,"date":"2018-03-04 21:55:14.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}}],"code":200,"msg":"success"}', '2018-03-04 14:31:19.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173881709, 82001, 1511796208670, '{"code":408,"msg":"验证码已过期!"}', '2018-03-04 14:31:21.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173883243, 82001, 1511689914599, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":26834.4},"code":200,"msg":"success"}', '2018-03-04 14:31:23.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173889466, 82001, 1, '{"User":{"id":82001,"sex":0,"name":"测试改名","tag":"APIJSON User","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[82025,70793,82034,93793,82021,82033],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"},"code":200,"msg":"success"}', '2018-03-04 14:31:29.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173922657, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":27235},"code":200,"msg":"success"}', '2018-03-04 14:32:02.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520173935008, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":27435.3},"code":200,"msg":"success"}', '2018-03-04 14:32:15.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520174017925, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":29939.05},"code":200,"msg":"success"}', '2018-03-04 14:33:37.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520174362871, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":30039.2},"code":200,"msg":"success"}', '2018-03-04 14:39:22.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520176947082, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28699.05},"code":200,"msg":"success"}', '2018-03-04 15:22:27.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520177104344, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28709.2},"code":200,"msg":"success"}', '2018-03-04 15:25:04.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520177328250, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28809.35},"code":200,"msg":"success"}', '2018-03-04 15:28:48.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520177426424, 82001, 1520177221844, '{"[]":[{"User":{"id":38710,"sex":0,"name":"TommyLemon","tag":"Android&Java","head":"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","contactIdList":[82003,82005,90814,82004,82009,82002,82044,93793,70793],"pictureList":["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":70793,"sex":0,"name":"Strong","tag":"djdj","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[38710,82002],"pictureList":["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg","http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg","https://camo.githubusercontent.com/788c0a7e11a","https://camo.githubusercontent.com/f513f67"],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82001,"sex":0,"name":"测试改名","tag":"APIJSON User","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[82025,70793,82034,93793,82021,82033,93794],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82004,"sex":0,"name":"Tommy","tag":"fasef","head":"http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82009,"sex":0,"name":"God","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82012,"sex":0,"name":"Steve","tag":"FEWE","head":"http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000","contactIdList":[82004,82002,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82020,"sex":0,"name":"ORANGE","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82022,"sex":0,"name":"Internet","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82023,"sex":0,"name":"No1","head":"http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82024,"sex":0,"name":"Lemon","head":"http://static.oschina.net/uploads/user/427/855532_50.jpg?t=1435030876000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82026,"sex":0,"name":"iOS","head":"http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82027,"sex":0,"name":"Yong","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82029,"sex":0,"name":"GASG","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82031,"sex":0,"name":"Lemon","head":"http://static.oschina.net/uploads/user/48/96331_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82032,"sex":0,"name":"Stack","tag":"fasdg","head":"http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82036,"sex":0,"name":"SAG","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82037,"sex":0,"name":"Test","head":"http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82038,"sex":0,"name":"Battle","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":82041,"sex":0,"name":"Holo","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[38710,82001],"pictureList":[],"date":"2017-03-04 17:59:34.0"}},{"User":{"id":82043,"sex":0,"name":"Holiday","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[70793,82006],"pictureList":[],"date":"2017-03-04 18:05:04.0"}},{"User":{"id":82045,"sex":0,"name":"Green","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[82001,82002,82003,1485246481130],"pictureList":[],"date":"2017-03-04 18:22:39.0"}},{"User":{"id":82046,"sex":0,"name":"Team","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[38710,82002,1485246481130],"pictureList":[],"date":"2017-03-04 23:11:17.0"}},{"User":{"id":82047,"sex":0,"name":"Tesla","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[],"pictureList":[],"date":"2017-03-05 00:02:05.0"}},{"User":{"id":82048,"sex":0,"name":"Moto","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-03-05 00:04:02.0"}},{"User":{"id":82049,"sex":0,"name":"ITMan","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-03-05 17:51:51.0"}},{"User":{"id":82050,"sex":0,"name":"Parl","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-03-05 17:52:52.0"}},{"User":{"id":82051,"sex":0,"name":"Girl","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-03-05 17:53:37.0"}},{"User":{"id":82052,"sex":0,"name":"Unbrella","head":"http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000","contactIdList":[],"pictureList":[],"date":"2017-03-05 17:57:54.0"}},{"User":{"id":82053,"sex":0,"name":"Alice","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[],"pictureList":[],"date":"2017-03-05 23:25:42.0"}},{"User":{"id":82054,"sex":0,"name":"Harvey","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-03-06 20:29:03.0"}},{"User":{"id":82057,"sex":0,"name":"NullPointerExeption","head":"http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000","contactIdList":[],"pictureList":[],"date":"2017-03-12 14:01:23.0"}},{"User":{"id":82058,"sex":0,"name":"StupidBird","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001,82002],"pictureList":[],"date":"2017-03-12 19:23:04.0"}},{"User":{"id":90814,"sex":0,"name":"007","head":"http://static.oschina.net/uploads/user/51/102723_50.jpg?t=1449212504000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":93793,"sex":0,"name":"Mike","tag":"GES","head":"http://static.oschina.net/uploads/user/48/96331_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":93794,"sex":0,"name":"Lemon","head":"http://static.oschina.net/uploads/user/48/97721_50.jpg?t=1451544779000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"}},{"User":{"id":1490109845208,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-21 23:24:05.0"}},{"User":{"id":1490427139175,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[38710,70793],"pictureList":[],"date":"2017-03-25 15:32:19.0"}},{"User":{"id":1490427577823,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-25 15:39:37.0"}},{"User":{"id":1490584952968,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-27 11:22:32.0"}},{"User":{"id":1492936169722,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-04-23 16:29:29.0"}},{"User":{"id":1493480142628,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-04-29 23:35:42.0"}},{"User":{"id":1493747512860,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 01:51:52.0"}},{"User":{"id":1493747777770,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 01:56:17.0"}},{"User":{"id":1493748594003,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 02:09:54.0"}},{"User":{"id":1493748615711,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 02:10:15.0"}},{"User":{"id":1493749090643,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 02:18:10.0"}},{"User":{"id":1493836043151,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-04 02:27:23.0"}},{"User":{"id":1493883110132,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-04 15:31:50.0"}},{"User":{"id":1493890214167,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-04 17:30:14.0"}},{"User":{"id":1493890303473,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-04 17:31:43.0"}},{"User":{"id":1493890303474,"sex":0,"name":"Test Post","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-06-12 23:50:44.0"}},{"User":{"id":1493890303475,"sex":0,"name":"Test Post","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-06-12 23:51:23.0"}},{"User":{"id":1497792972314,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-06-18 21:36:12.0"}},{"User":{"id":1497792972315,"sex":0,"name":"一二三","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-06-25 18:42:33.0"}},{"User":{"id":1499057230629,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-07-03 12:47:10.0"}},{"User":{"id":1500825221910,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-07-23 23:53:41.0"}},{"User":{"id":1502638023483,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-08-13 23:27:03.0"}},{"User":{"id":1502639062900,"sex":0,"name":"TESLA","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-08-13 23:44:22.0"}},{"User":{"id":1502639424119,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-08-13 23:50:24.0"}},{"User":{"id":1507220582167,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-06 00:23:02.0"}},{"User":{"id":1508072071492,"sex":0,"name":"赵钱孙李","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:54:31.0"}},{"User":{"id":1508072160401,"sex":0,"name":"四五六","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:56:00.0"}},{"User":{"id":1508072202871,"sex":0,"name":"七八九十","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:56:42.0"}},{"User":{"id":1510495628760,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-11-12 22:07:08.0"}},{"User":{"id":1511407581570,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82002,82003,82005,82006,82021,82023,82036,82033],"pictureList":[],"date":"2017-11-23 11:26:21.0"}},{"User":{"id":1511761906715,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-11-27 13:51:46.0"}},{"User":{"id":1511965911349,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-11-29 22:31:51.0"}},{"User":{"id":1512387063078,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-12-04 19:31:03.0"}},{"User":{"id":1512531601485,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001],"pictureList":[],"date":"2017-12-06 11:40:01.0"}},{"User":{"id":1514623064133,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","date":"2017-12-30 16:37:44.0"}},{"User":{"id":1514625918255,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82002,93793],"date":"2017-12-30 17:25:18.0"}},{"User":{"id":1514626163032,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","date":"2017-12-30 17:29:23.0"}},{"User":{"id":1514858422969,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[93793,82056],"date":"2018-01-02 10:00:22.0"}},{"User":{"id":1515565976140,"sex":0,"name":"APIJSONUser","head":"傻","contactIdList":[82003,82021],"date":"2018-01-10 14:32:56.0"}},{"User":{"id":1518218350585,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","date":"2018-02-10 07:19:10.0"}},{"User":{"id":1519778917280,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","date":"2018-02-28 08:48:37.0"}}],"code":200,"msg":"success"}', '2018-03-04 15:30:26.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520680590422, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28709.2},"code":200,"msg":"success"}', '2018-03-10 11:16:30.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520681233526, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28809.35},"code":200,"msg":"success"}', '2018-03-10 11:27:13.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520681278572, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28809.35,"test":"gda"},"code":200,"msg":"success"}', '2018-03-10 11:27:58.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520681315261, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28809.35},"code":200,"msg":"success"}', '2018-03-10 11:28:35.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520681361520, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28809.35,"test":"sfgr"},"code":200,"msg":"success"}', '2018-03-10 11:29:21.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520681493656, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28809.35},"code":200,"msg":"success"}', '2018-03-10 11:31:33.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520681641244, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28809},"code":200,"msg":"success"}', '2018-03-10 11:34:01.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520681770042, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28808.5},"code":200,"msg":"success"}', '2018-03-10 11:36:10.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520682056396, 82001, 1520680656479, '{"User[]":[{"id":38710,"sex":0,"name":"TommyLemon","tag":"Android&Java","head":"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","contactIdList":[82003,82005,90814,82004,82009,82002,82044,93793,70793],"pictureList":["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"},{"id":70793,"sex":0,"name":"Strong","tag":"djdj","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000","contactIdList":[38710,82002],"pictureList":["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg","http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg","https://camo.githubusercontent.com/788c0a7e11a","https://camo.githubusercontent.com/f513f67"],"date":"2017-02-01 19:21:50.0"},{"id":82001,"sex":0,"name":"测试改名2","tag":"APIJSON User","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[82025,70793,82034,93793,82021,82033,93794],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 19:21:50.0"},{"id":82004,"sex":0,"name":"Tommy","tag":"fasef","head":"http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82009,"sex":0,"name":"God","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82012,"sex":0,"name":"Steve","tag":"FEWE","head":"http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000","contactIdList":[82004,82002,93793],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82020,"sex":0,"name":"ORANGE","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82022,"sex":0,"name":"Internet","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82023,"sex":0,"name":"No1","head":"http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82024,"sex":0,"name":"Lemon","head":"http://static.oschina.net/uploads/user/427/855532_50.jpg?t=1435030876000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82026,"sex":0,"name":"iOS","head":"http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82027,"sex":0,"name":"Yong","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82029,"sex":0,"name":"GASG","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82031,"sex":0,"name":"Lemon","head":"http://static.oschina.net/uploads/user/48/96331_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82032,"sex":0,"name":"Stack","tag":"fasdg","head":"http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82036,"sex":0,"name":"SAG","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82037,"sex":0,"name":"Test","head":"http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82038,"sex":0,"name":"Battle","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":82041,"sex":0,"name":"Holo","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[38710,82001],"pictureList":[],"date":"2017-03-04 17:59:34.0"},{"id":82043,"sex":0,"name":"Holiday","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[70793,82006],"pictureList":[],"date":"2017-03-04 18:05:04.0"},{"id":82045,"sex":0,"name":"Green","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[82001,82002,82003,1485246481130],"pictureList":[],"date":"2017-03-04 18:22:39.0"},{"id":82046,"sex":0,"name":"Team","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[38710,82002,1485246481130],"pictureList":[],"date":"2017-03-04 23:11:17.0"},{"id":82047,"sex":0,"name":"Tesla","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[],"pictureList":[],"date":"2017-03-05 00:02:05.0"},{"id":82048,"sex":0,"name":"Moto","head":"http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000","contactIdList":[],"pictureList":[],"date":"2017-03-05 00:04:02.0"},{"id":82049,"sex":0,"name":"ITMan","head":"http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000","contactIdList":[],"pictureList":[],"date":"2017-03-05 17:51:51.0"},{"id":82050,"sex":0,"name":"Parl","head":"http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000","contactIdList":[],"pictureList":[],"date":"2017-03-05 17:52:52.0"},{"id":82051,"sex":0,"name":"Girl","head":"http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000","contactIdList":[],"pictureList":[],"date":"2017-03-05 17:53:37.0"},{"id":82052,"sex":0,"name":"Unbrella","head":"http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000","contactIdList":[],"pictureList":[],"date":"2017-03-05 17:57:54.0"},{"id":82053,"sex":0,"name":"Alice","head":"http://common.cnblogs.com/images/wechat.png","contactIdList":[],"pictureList":[],"date":"2017-03-05 23:25:42.0"},{"id":82054,"sex":0,"name":"Harvey","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-03-06 20:29:03.0"},{"id":82057,"sex":0,"name":"NullPointerExeption","head":"http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000","contactIdList":[],"pictureList":[],"date":"2017-03-12 14:01:23.0"},{"id":82058,"sex":0,"name":"StupidBird","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001,82002],"pictureList":[],"date":"2017-03-12 19:23:04.0"},{"id":90814,"sex":0,"name":"007","head":"http://static.oschina.net/uploads/user/51/102723_50.jpg?t=1449212504000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":93793,"sex":0,"name":"Mike","tag":"GES","head":"http://static.oschina.net/uploads/user/48/96331_50.jpg","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":93794,"sex":0,"name":"Lemon","head":"http://static.oschina.net/uploads/user/48/97721_50.jpg?t=1451544779000","contactIdList":[],"pictureList":[],"date":"2017-02-01 19:21:50.0"},{"id":1490109845208,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-21 23:24:05.0"},{"id":1490427139175,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[38710,70793],"pictureList":[],"date":"2017-03-25 15:32:19.0"},{"id":1490427577823,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-25 15:39:37.0"},{"id":1490584952968,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-03-27 11:22:32.0"},{"id":1492936169722,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-04-23 16:29:29.0"},{"id":1493480142628,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-04-29 23:35:42.0"},{"id":1493747512860,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 01:51:52.0"},{"id":1493747777770,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 01:56:17.0"},{"id":1493748594003,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 02:09:54.0"},{"id":1493748615711,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 02:10:15.0"},{"id":1493749090643,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-03 02:18:10.0"},{"id":1493836043151,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-04 02:27:23.0"},{"id":1493883110132,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-04 15:31:50.0"},{"id":1493890214167,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-04 17:30:14.0"},{"id":1493890303473,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-05-04 17:31:43.0"},{"id":1493890303474,"sex":0,"name":"Test Post","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-06-12 23:50:44.0"},{"id":1493890303475,"sex":0,"name":"Test Post","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-06-12 23:51:23.0"},{"id":1497792972314,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-06-18 21:36:12.0"},{"id":1497792972315,"sex":0,"name":"一二三","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-06-25 18:42:33.0"},{"id":1499057230629,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-07-03 12:47:10.0"},{"id":1500825221910,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-07-23 23:53:41.0"},{"id":1502638023483,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-08-13 23:27:03.0"},{"id":1502639062900,"sex":0,"name":"TESLA","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-08-13 23:44:22.0"},{"id":1502639424119,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-08-13 23:50:24.0"},{"id":1507220582167,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-06 00:23:02.0"},{"id":1508072071492,"sex":0,"name":"赵钱孙李","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:54:31.0"},{"id":1508072160401,"sex":0,"name":"四五六","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:56:00.0"},{"id":1508072202871,"sex":0,"name":"七八九十","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-10-15 20:56:42.0"},{"id":1510495628760,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-11-12 22:07:08.0"},{"id":1511407581570,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82002,82003,82005,82006,82021,82023,82036,82033],"pictureList":[],"date":"2017-11-23 11:26:21.0"},{"id":1511761906715,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-11-27 13:51:46.0"},{"id":1511965911349,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-11-29 22:31:51.0"},{"id":1512387063078,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[],"pictureList":[],"date":"2017-12-04 19:31:03.0"},{"id":1512531601485,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82001],"pictureList":[],"date":"2017-12-06 11:40:01.0"},{"id":1514623064133,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","date":"2017-12-30 16:37:44.0"},{"id":1514625918255,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[82002,93793],"date":"2017-12-30 17:25:18.0"},{"id":1514626163032,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","date":"2017-12-30 17:29:23.0"},{"id":1514858422969,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","contactIdList":[93793,82056],"date":"2018-01-02 10:00:22.0"},{"id":1515565976140,"sex":0,"name":"APIJSONUser","head":"傻","contactIdList":[82003,82021],"date":"2018-01-10 14:32:56.0"},{"id":1518218350585,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","date":"2018-02-10 07:19:10.0"},{"id":1519778917280,"sex":0,"name":"APIJSONUser","head":"http://my.oschina.net/img/portrait.gif?t=1451961935000","date":"2018-02-28 08:48:37.0"}],"code":200,"msg":"success"}', '2018-03-10 11:40:56.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520682589957, 82001, 1520682468690, '{"Moment":{"id":1520086403692,"userId":82001,"date":"2018-03-03 22:13:23.0","content":"测试新增动态","praiseUserIdList":[],"pictureList":["http://static.oschina.net/uploads/user/48/96331_50.jpg"]},"User":{"id":82001,"name":"测试改名","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"},"code":200,"msg":"success"}', '2018-03-10 11:49:49.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1520682742215, 82001, 1519526273822, '{"Privacy":{"id":82001,"certified":1,"phone":13000082001,"balance":28808},"code":200,"msg":"success"}', '2018-03-10 11:52:22.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1532879615717, 82001, 1521907333048, '{"User-id[]":[82002,82003,82005,82041,82045,82058,1512531601485,1528254173621],"Moment[]":[{"id":32,"userId":82002,"date":"2017-02-08 16:06:11.0","praiseUserIdList":[38710,82002,82001],"pictureList":["https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067","https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067","http://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg"]},{"id":371,"userId":82002,"date":"2017-02-01 19:14:31.0","content":"This is a Content...-371","praiseUserIdList":[90814,93793,82003,82005,82006,82040,82002,82001],"pictureList":["http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg","http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg","https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067","http://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg","http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]},{"id":1508053762227,"userId":82003,"date":"2017-10-15 15:49:22.0","content":"我也试试","praiseUserIdList":[1515565976140,82001],"pictureList":["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","http://common.cnblogs.com/images/icon_weibo_24.png"]},{"id":1508072491570,"userId":82002,"date":"2017-10-15 21:01:31.0","content":"有点冷~","praiseUserIdList":[82001,82002],"pictureList":["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","http://common.cnblogs.com/images/icon_weibo_24.png"]},{"id":1508073178489,"userId":82045,"date":"2017-10-15 21:12:58.0","content":"发动态","praiseUserIdList":[82001],"pictureList":["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","http://common.cnblogs.com/images/icon_weibo_24.png"]},{"id":1514017444961,"userId":82002,"date":"2017-12-23 16:24:04.0","content":"123479589679","praiseUserIdList":[82002,1520242280259,82001,70793,1524042900591,1528264711016],"pictureList":["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","http://common.cnblogs.com/images/icon_weibo_24.png"]},{"id":1531062713966,"userId":82002,"date":"2018-07-08 23:11:53.0","content":"云南好美啊( ◞˟૩˟)◞","praiseUserIdList":[82001,82005,38710,70793,93793,82003,1531969715979],"pictureList":["https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg","https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg"]}],"code":200,"msg":"success"}', '2018-07-29 15:53:35.000000', null, null, 0, 0, 0, 0, 0, 0, 0, null); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1532879625816, 82001, 1521907333047, '{"[]":[{"Moment":{"id":301,"userId":93793,"date":"2017-02-01 19:14:31.0","content":"This is a Content...-301","praiseUserIdList":[38710,93793,82003,82005,82040,82055,82002],"pictureList":["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]},"Comment":{"id":45,"momentId":301,"content":"This is a Content...-45"},"join":"&/User/id@,=100"},"count":10},"ok":false,"msg":"Moment:{ @having:value } 里的 value 中的第 0 个字符 ''maxId>=100'' 不合法!里面没有包含 SQL 函数!必须为 fun(col1,col2..)?val 格式!","sql:generate|cache|execute|maxExecute":"0|0|0|200","depth:count|max":"3|5","trace:throw":"java.lang.IllegalArgumentException","code":406}', '2022-10-21 02:19:30.296581', '{"code":4,"msg":"没有校验标准,且状态码在 [400, 599] 内或不是 0, 200 等以 0 结尾的数","path":"","duration":"很快:比以往 [20ms, 200ms] 最快还更快"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"[]":{"notnull":true,"type":"object","valueLevel":0,"values":[{"Moment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"@column":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[20]},"@group":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[6]},"@having":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[10]}}]},"count":{"notnull":true,"type":"integer","valueLevel":0,"values":[10],"lengthLevel":1,"lengths":[2]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[false],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[103]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]},"trace:throw":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[34]}}],"code":406}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289982206, 82001, 1521901682845, '{"[]":[{"Moment":{"userId":70793,"id":12}},{"Moment":{"userId":70793,"id":15}},{"Moment":{"userId":82002,"id":32}},{"Moment":{"userId":90814,"id":58}},{"Moment":{"userId":70793,"id":170}},{"Moment":{"userId":38710,"id":235}},{"Moment":{"userId":93793,"id":301}},{"Moment":{"userId":82002,"id":371}},{"Moment":{"userId":38710,"id":470}},{"Moment":{"userId":38710,"id":511}}],"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"3|5","code":200}', '2022-10-21 02:19:42.215437', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"很快:比以往 [20ms, 200ms] 最快还更快"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"[]":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[10],"values":[{"notnull":true,"type":"object","valueLevel":0,"values":[{"Moment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"userId":{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,90814,82002,70793,38710],"lengthLevel":1,"lengths":[5]},"id":{"notnull":true,"type":"integer","valueLevel":0,"values":[511,470,371,301,235,170,58,32,15,12],"lengthLevel":1,"lengths":[3,2]}}]}}]}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289982676, 82001, 1521901746808, '{"[]":[{"User":{"name":"赵钱孙李","id":1508072071492}},{"User":{"name":"测试账号","id":82001}},{"User":{"name":"周吴郑王","id":1508072105320}},{"User":{"name":"七八九十","id":1508072202871}},{"User":{"name":"四五六","id":1508072160401}},{"User":{"name":"哈哈哈","id":1524042900591}},{"User":{"name":"一二三","id":1499057230629}},{"User":{"name":"宁旭","id":1532188114543}},{"User":{"name":"上邪","id":1560409157504}},{"User":{"name":"梦","id":1528264711016}}],"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"3|5","code":200}', '2022-10-21 02:19:42.685557', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"[]":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[10],"values":[{"notnull":true,"type":"object","valueLevel":0,"values":[{"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[4,3,1]},"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1560409157504,1532188114543,1528264711016,1524042900591,1508072202871,1508072160401,1508072105320,1508072071492,1499057230629,82001],"lengthLevel":1,"lengths":[13,5]}}]}}]}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289983178, 82001, 1521901787202, '{"User":{"id":38710,"sex":0,"name":"TommyLemon"},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:43.193968', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[38710],"lengthLevel":1,"lengths":[5]},"sex":{"notnull":true,"type":"integer","valueLevel":0,"values":[0],"lengthLevel":1,"lengths":[1]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[10]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289984110, 82001, 1521901518764, '{"User":{"id":38710,"sex":0,"name":"TommyLemon","tag":"Android&Java","head":"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","contactIdList":[82003,82005,90814,82004,82009,82002,82044,93793,70793],"pictureList":["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 11:21:50.0","@position":0,"firstPicture":"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000"},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:44.127771', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[38710],"lengthLevel":1,"lengths":[5]},"sex":{"notnull":true,"type":"integer","valueLevel":0,"values":[0],"lengthLevel":1,"lengths":[1]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[10]},"tag":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[12]},"head":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[75]},"contactIdList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[9],"values":[{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,90814,82044,82009,82005,82004,82003,82002,70793],"lengthLevel":1,"lengths":[5]}]},"pictureList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[2],"values":[{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[75,50]}]},"date":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[21]},"@position":{"notnull":true,"type":"integer","valueLevel":0,"values":[0],"lengthLevel":1,"lengths":[1]},"firstPicture":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[75]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289985812, 82001, 1511970009071, '{"Moment":{"ok":true,"code":200,"msg":"success","count":1,"id":1666289803269},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:45.823864', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Moment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"code":{"notnull":true,"type":"integer","valueLevel":0,"values":[200],"lengthLevel":1,"lengths":[3]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"count":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1]},"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1666289803269],"lengthLevel":1,"lengths":[13]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289986251, 82001, 1511970224332, '{"User":{"ok":true,"code":200,"msg":"success","count":1,"id":82001},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:46.263524', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"code":{"notnull":true,"type":"integer","valueLevel":0,"values":[200],"lengthLevel":1,"lengths":[3]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"count":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1]},"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[82001],"lengthLevel":1,"lengths":[5]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289987080, 82001, 1511969630371, '{"Comment":{"ok":true,"code":200,"msg":"success","count":1,"id":1666289803266},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:47.095686', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Comment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"code":{"notnull":true,"type":"integer","valueLevel":0,"values":[200],"lengthLevel":1,"lengths":[3]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"count":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1]},"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1666289803266],"lengthLevel":1,"lengths":[13]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289987577, 82001, 1511969417632, '{"Moment":{"ok":true,"code":200,"msg":"success","count":1,"id":15},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"2|0|2|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:47.592902', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Moment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"code":{"notnull":true,"type":"integer","valueLevel":0,"values":[200],"lengthLevel":1,"lengths":[3]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"count":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1]},"id":{"notnull":true,"type":"integer","valueLevel":0,"values":[15],"lengthLevel":1,"lengths":[2]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289988533, 82001, 1511963990071, '{"Moment":{"id":15,"userId":70793,"date":"2017-02-08 08:06:11.0","content":"APIJSON is a JSON Transmission Structure Protocol…","praiseUserIdList":[82002,70793,38710,93793,82001],"pictureList":["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","http://common.cnblogs.com/images/icon_weibo_24.png"]},"User":{"id":70793,"name":"Strong","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000"},"User[]":[{"id":38710,"name":"TommyLemon"},{"id":82002,"name":"Happy~"},{"id":70793,"name":"Strong"},{"id":93793,"name":"Mike"},{"id":82001,"name":"测试账号"}],"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"3|0|3|200","depth:count|max":"3|5","code":200}', '2022-10-21 02:19:48.546349', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Moment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":0,"values":[15],"lengthLevel":1,"lengths":[2]},"userId":{"notnull":true,"type":"integer","valueLevel":1,"values":[70793],"lengthLevel":1,"lengths":[5]},"date":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[21]},"content":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[50]},"praiseUserIdList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[5],"values":[{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,82002,82001,70793,38710],"lengthLevel":1,"lengths":[5]}]},"pictureList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[2],"values":[{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[75,50]}]}}]},"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[70793],"lengthLevel":1,"lengths":[5]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[6]},"head":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[73]}}]},"User[]":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[5],"values":[{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,82002,82001,70793,38710],"lengthLevel":1,"lengths":[5]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[10,6,4]}}]}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289988954, 82001, 1511964176688, '{"[]":[{"Comment":{"id":176,"toId":166,"userId":38710,"momentId":15,"date":"2017-03-25 12:28:03.0","content":"thank you"},"User":{"id":38710,"name":"TommyLemon","head":"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000"}},{"Comment":{"id":1490863469638,"toId":0,"userId":82002,"momentId":15,"date":"2017-03-30 08:44:29.0","content":"Just do it"},"User":{"id":82002,"name":"Happy~","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000"}},{"Comment":{"id":1490875660259,"toId":1490863469638,"userId":82055,"momentId":15,"date":"2017-03-30 12:07:40.0","content":"I prove wht you said(??????)"},"User":{"id":82055,"name":"Solid","head":"http://static.oschina.net/uploads/user/19/39085_50.jpg"}},{"Comment":{"id":1508227456407,"toId":0,"userId":82001,"momentId":15,"date":"2017-10-17 08:04:16.0","content":"hsh"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1509346606036,"toId":0,"userId":82001,"momentId":15,"date":"2017-10-30 06:56:46.0","content":"测"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1539252343243,"toId":1539252313711,"userId":82001,"momentId":15,"date":"2018-10-11 10:05:43.0","content":"dxdf"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1539252350604,"toId":1539252337210,"userId":82001,"momentId":15,"date":"2018-10-11 10:05:50.0","content":"djdnjd"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1544496611006,"toId":0,"userId":82001,"momentId":15,"date":"2018-12-11 02:50:11.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1544496618728,"toId":0,"userId":82001,"momentId":15,"date":"2018-12-11 02:50:18.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1544496620126,"toId":0,"userId":82001,"momentId":15,"date":"2018-12-11 02:50:20.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1545918307310,"toId":0,"userId":82001,"momentId":15,"date":"2018-12-27 13:45:07.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1545961973331,"toId":0,"userId":82001,"momentId":15,"date":"2018-12-28 01:52:53.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1546050359778,"toId":0,"userId":82001,"momentId":15,"date":"2018-12-29 02:25:59.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1546934145366,"toId":0,"userId":82001,"momentId":15,"date":"2019-01-08 07:55:45.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1546935903414,"toId":0,"userId":82001,"momentId":15,"date":"2019-01-08 08:25:03.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1551061659233,"toId":0,"userId":82001,"momentId":15,"date":"2019-02-25 02:27:39.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1551146130246,"toId":0,"userId":82001,"momentId":15,"date":"2019-02-26 01:55:30.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1551325753556,"toId":0,"userId":82001,"momentId":15,"date":"2019-02-28 03:49:13.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1551777156494,"toId":0,"userId":82001,"momentId":15,"date":"2019-03-05 09:12:36.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}},{"Comment":{"id":1552215780595,"toId":0,"userId":82001,"momentId":15,"date":"2019-03-10 11:03:00.0","content":"测试新增评论"},"User":{"id":82001,"name":"测试账号","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png"}}],"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"21|16|5|200","depth:count|max":"3|5","code":200}', '2022-10-21 02:19:48.963389', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"比较慢:比以往 [20ms, 200ms] 最快与最慢之和(平均值两倍)还更慢"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"[]":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[20],"values":[{"notnull":true,"type":"object","valueLevel":0,"values":[{"Comment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1552215780595,1551777156494,1551325753556,1551146130246,1551061659233,1546935903414,1546934145366,1546050359778,1545961973331,1545918307310,1544496620126,1544496618728,1544496611006,1539252350604,1539252343243,1509346606036,1508227456407,1490875660259,1490863469638,176],"lengthLevel":1,"lengths":[13,3]},"toId":{"notnull":true,"type":"integer","valueLevel":1,"values":[1539252337210,1539252313711,1490863469638,166,0],"lengthLevel":1,"lengths":[13,3,1]},"userId":{"notnull":true,"type":"integer","valueLevel":1,"values":[82055,82002,82001,38710],"lengthLevel":1,"lengths":[5]},"momentId":{"notnull":true,"type":"integer","valueLevel":0,"values":[15],"lengthLevel":1,"lengths":[2]},"date":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[21]},"content":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[28,10,1]}}]},"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[82055,82002,82001,38710],"lengthLevel":1,"lengths":[5]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[10,6,4]},"head":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[84,75,54]}}]}}]}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[11]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289989489, 82001, 1511967853339, '{"[]":[{"Moment":{"id":371,"userId":82002,"date":"2017-02-01 11:14:31.0","content":"This is a Content...-371","praiseUserIdList":[90814,93793,82003,82005,82006,82040,82002,82001],"pictureList":["http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg","http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg","https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067","http://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg","http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]},"User":{"id":82002,"name":"Happy~","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000"},"User[]":[{"id":82005,"name":"Jan"},{"id":82002,"name":"Happy~"},{"id":82003,"name":"Wechat"},{"id":82040,"name":"Dream"},{"id":82006,"name":"Meria"},{"id":93793,"name":"Mike"},{"id":90814,"name":"007"},{"id":82001,"name":"测试账号"}],"[]":[{"Comment":{"id":157,"toId":0,"userId":93793,"momentId":371,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-157"},"User":{"id":93793,"name":"Mike"}},{"Comment":{"id":68,"toId":0,"userId":82005,"momentId":371,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-68"},"User":{"id":82005,"name":"Jan"}},{"Comment":{"id":110,"toId":0,"userId":93793,"momentId":371,"date":"2017-02-01 11:23:24.0","content":"This is a Content...-110"},"User":{"id":93793,"name":"Mike"}},{"Comment":{"id":116,"toId":0,"userId":70793,"momentId":371,"date":"2017-03-02 05:56:06.0","content":"This is a Content...-116"},"User":{"id":70793,"name":"Strong"}},{"Comment":{"id":115,"toId":0,"userId":38710,"momentId":371,"date":"2017-03-02 05:56:06.0","content":"This is a Content...-115"},"User":{"id":38710,"name":"TommyLemon"}},{"Comment":{"id":114,"toId":0,"userId":82001,"momentId":371,"date":"2017-03-02 05:56:06.0","content":"This is a Content...-114"},"User":{"id":82001,"name":"测试账号"}}]},{"Moment":{"id":58,"userId":90814,"date":"2017-02-01 11:14:31.0","content":"This is a Content...-435","praiseUserIdList":[38710,82003,82005,93793,82006,82044,82001],"pictureList":["http://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg"]},"User":{"id":90814,"name":"007","head":"http://static.oschina.net/uploads/user/51/102723_50.jpg?t=1449212504000"},"User[]":[{"id":38710,"name":"TommyLemon"},{"id":82005,"name":"Jan"},{"id":82003,"name":"Wechat"},{"id":82044,"name":"Love"},{"id":82006,"name":"Meria"},{"id":93793,"name":"Mike"},{"id":82001,"name":"测试账号"}],"[]":[{"Comment":{"id":13,"toId":0,"userId":82005,"momentId":58,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-13"},"User":{"id":82005,"name":"Jan"}},{"Comment":{"id":97,"toId":13,"userId":82006,"momentId":58,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-97"},"User":{"id":82006,"name":"Meria"}},{"Comment":{"id":77,"toId":13,"userId":93793,"momentId":58,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-77"},"User":{"id":93793,"name":"Mike"}},{"Comment":{"id":167,"toId":0,"userId":82001,"momentId":58,"date":"2017-03-25 11:48:41.0","content":"Nice!"},"User":{"id":82001,"name":"测试账号"}},{"Comment":{"id":173,"toId":0,"userId":38710,"momentId":58,"date":"2017-03-25 12:25:13.0","content":"Good"},"User":{"id":38710,"name":"TommyLemon"}},{"Comment":{"id":188,"toId":97,"userId":82001,"momentId":58,"date":"2017-03-26 07:21:32.0","content":"1646"},"User":{"id":82001,"name":"测试账号"}}]},{"Moment":{"id":170,"userId":70793,"date":"2017-02-01 11:14:31.0","content":"This is a Content...-73","praiseUserIdList":[82044,82002,82001],"pictureList":["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg","http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg","http://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg"]},"User":{"id":70793,"name":"Strong","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000"},"User[]":[{"id":82002,"name":"Happy~"},{"id":82044,"name":"Love"},{"id":82001,"name":"测试账号"}],"[]":[{"Comment":{"id":44,"toId":0,"userId":82003,"momentId":170,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-44"},"User":{"id":82003,"name":"Wechat"}},{"Comment":{"id":99,"toId":44,"userId":70793,"momentId":170,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-99"},"User":{"id":70793,"name":"Strong"}},{"Comment":{"id":54,"toId":0,"userId":82004,"momentId":170,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-54"},"User":{"id":82004,"name":"Tommy"}},{"Comment":{"id":206,"toId":54,"userId":82001,"momentId":170,"date":"2017-03-29 03:04:23.0","content":"ejej"},"User":{"id":82001,"name":"测试账号"}},{"Comment":{"id":1490780759866,"toId":99,"userId":82001,"momentId":170,"date":"2017-03-29 09:45:59.0","content":"99"},"User":{"id":82001,"name":"测试账号"}},{"Comment":{"id":1490863661426,"toId":1490780759866,"userId":70793,"momentId":170,"date":"2017-03-30 08:47:41.0","content":"66"},"User":{"id":70793,"name":"Strong"}}]},{"Moment":{"id":301,"userId":93793,"date":"2017-02-01 11:14:31.0","content":"This is a Content...-301","praiseUserIdList":[38710,93793,82003,82005,82040,82055,82002,82001],"pictureList":["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]},"User":{"id":93793,"name":"Mike","head":"http://static.oschina.net/uploads/user/48/96331_50.jpg"},"User[]":[{"id":38710,"name":"TommyLemon"},{"id":82005,"name":"Jan"},{"id":82002,"name":"Happy~"},{"id":82003,"name":"Wechat"},{"id":82055,"name":"Solid"},{"id":82040,"name":"Dream"},{"id":93793,"name":"Mike"},{"id":82001,"name":"测试账号"}],"[]":[{"Comment":{"id":76,"toId":45,"userId":93793,"momentId":301,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-76"},"User":{"id":93793,"name":"Mike"}},{"Comment":{"id":45,"toId":0,"userId":93793,"momentId":301,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-45"},"User":{"id":93793,"name":"Mike"}},{"Comment":{"id":51,"toId":45,"userId":82003,"momentId":301,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-51"},"User":{"id":82003,"name":"Wechat"}},{"Comment":{"id":120,"toId":0,"userId":93793,"momentId":301,"date":"2017-03-02 05:56:06.0","content":"This is a Content...-110"},"User":{"id":93793,"name":"Mike"}},{"Comment":{"id":124,"toId":0,"userId":82001,"momentId":301,"date":"2017-03-02 05:56:06.0","content":"This is a Content...-114"},"User":{"id":82001,"name":"测试账号"}},{"Comment":{"id":1490781009548,"toId":51,"userId":82001,"momentId":301,"date":"2017-03-29 09:50:09.0","content":"3"},"User":{"id":82001,"name":"测试账号"}}]},{"Moment":{"id":470,"userId":38710,"date":"2017-02-01 11:14:31.0","content":"This is a Content...-470","praiseUserIdList":[82001],"pictureList":["http://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png"]},"User":{"id":38710,"name":"TommyLemon","head":"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000"},"User[]":[{"id":82001,"name":"测试账号"}],"[]":[{"Comment":{"id":4,"toId":0,"userId":38710,"momentId":470,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-4"},"User":{"id":38710,"name":"TommyLemon"}},{"Comment":{"id":22,"toId":221,"userId":82001,"momentId":470,"date":"2017-02-01 11:20:50.0","content":"测试修改评论"},"User":{"id":82001,"name":"测试账号"}},{"Comment":{"id":47,"toId":4,"userId":70793,"momentId":470,"date":"2017-02-01 11:20:50.0","content":"This is a Content...-47"},"User":{"id":70793,"name":"Strong"}},{"Comment":{"id":1490863507114,"toId":4,"userId":82003,"momentId":470,"date":"2017-03-30 08:45:07.0","content":"yes"},"User":{"id":82003,"name":"Wechat"}},{"Comment":{"id":1490863903900,"toId":0,"userId":82006,"momentId":470,"date":"2017-03-30 08:51:43.0","content":"SOGA"},"User":{"id":82006,"name":"Meria"}},{"Comment":{"id":1491740899179,"toId":0,"userId":82001,"momentId":470,"date":"2017-04-09 12:28:19.0","content":"www"},"User":{"id":82001,"name":"测试账号"}}]}],"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"46|22|24|200","depth:count|max":"5|5","code":200}', '2022-10-21 02:19:49.502850', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"比较慢:比以往 [20ms, 200ms] 最快与最慢之和(平均值两倍)还更慢"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"[]":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[5],"values":[{"notnull":true,"type":"object","valueLevel":0,"values":[{"Moment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":0,"values":[470,371,301,170,58],"lengthLevel":1,"lengths":[3,2]},"userId":{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,90814,82002,70793,38710],"lengthLevel":1,"lengths":[5]},"date":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[21]},"content":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[24,23]},"praiseUserIdList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[8,7,1],"values":[{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,90814,82055,82044,82040,82006,82005,82003,82002,82001,38710],"lengthLevel":1,"lengths":[5]}]},"pictureList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[5,3,1],"values":[{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[252,62]}]}}]},"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,90814,82002,70793,38710],"lengthLevel":1,"lengths":[5]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[10,6,3]},"head":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[75,74,54]}}]},"User[]":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[8,7,1],"values":[{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,90814,82055,82044,82040,82006,82005,82003,82002,82001,38710],"lengthLevel":1,"lengths":[5]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[10,6,3]}}]}]},"[]":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[6],"values":[{"notnull":true,"type":"object","valueLevel":0,"values":[{"Comment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1491740899179,1490863903900,1490863661426,1490863507114,1490781009548,1490780759866,206,188,173,167,157,124,120,116,115,114,110,99,97,77,76,68,54,51,47,45,44,22,13,4],"lengthLevel":1,"lengths":[13,3,1]},"toId":{"notnull":true,"type":"integer","valueLevel":1,"values":[1490780759866,221,99,97,54,51,45,44,13,4,0],"lengthLevel":1,"lengths":[13,3,1]},"userId":{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,82006,82005,82004,82003,82001,70793,38710],"lengthLevel":1,"lengths":[5]},"momentId":{"notnull":true,"type":"integer","valueLevel":0,"values":[470,371,301,170,58],"lengthLevel":1,"lengths":[3,2]},"date":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[21]},"content":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[24,23,1]}}]},"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,82006,82005,82004,82003,82001,70793,38710],"lengthLevel":1,"lengths":[5]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[10,6,3]}}]}}]}]}}]}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[12]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289990083, 82001, 1511963722969, '{"User[]":[{"id":82002,"sex":1,"name":"Happy~","tag":"iOS","head":"http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000"},{"id":70793,"sex":0,"name":"Strong","tag":"djdj","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000"},{"id":82004,"sex":0,"name":"Tommy","tag":"fasef","head":"http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000"}],"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"3|5","code":200}', '2022-10-21 02:19:50.094878', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"User[]":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[3],"values":[{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[82004,82002,70793],"lengthLevel":1,"lengths":[5]},"sex":{"notnull":true,"type":"integer","valueLevel":0,"values":[1,0],"lengthLevel":1,"lengths":[1]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[6,5]},"tag":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[5,4,3]},"head":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[74,73]}}]}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289990499, 82001, 1511963677324, '{"User":{"id":82001,"sex":1,"name":"测试账号","tag":"Dev","head":"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png","contactIdList":[82012,82003,93794,82006,38710,82004,93793],"pictureList":["http://common.cnblogs.com/images/icon_weibo_24.png"],"date":"2017-02-01 11:21:50.0"},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:50.515039', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[82001],"lengthLevel":1,"lengths":[5]},"sex":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[4]},"tag":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]},"head":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[84]},"contactIdList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[7],"values":[{"notnull":true,"type":"integer","valueLevel":1,"values":[93794,93793,82012,82006,82004,82003,38710],"lengthLevel":1,"lengths":[5]}]},"pictureList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[1],"values":[{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[50]}]},"date":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[21]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289991031, 82001, 1511796882183, '{"privacy":{"ok":true,"code":200,"msg":"success","count":1,"id":82001},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:51.047503', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"privacy":{"notnull":true,"type":"object","valueLevel":0,"values":[{"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"code":{"notnull":true,"type":"integer","valueLevel":0,"values":[200],"lengthLevel":1,"lengths":[3]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"count":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1]},"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[82001],"lengthLevel":1,"lengths":[5]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289992277, 82001, 1511689914598, '{"Privacy":{"id":82001,"certified":1,"phone":"13000082001","balance":98729.45},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:52.288619', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Privacy":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[82001],"lengthLevel":1,"lengths":[5]},"certified":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1]},"phone":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[11]},"balance":{"notnull":true,"type":"number","valueLevel":1,"values":[98729.45],"lengthLevel":1,"lengths":[5]}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666289992680, 82001, 1511796155276, '{"verify":{"id":1666289803660,"type":0,"phone":"13000082001","verify":"5339","date":"2022-10-21 02:16:43.67245"},"tag":"Verify","ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:19:52.689679', '{"code":3,"msg":"没有校验标准,且缺少非 null 值的 data 字段","path":"","duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"verify":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1666289803660],"lengthLevel":1,"lengths":[13]},"type":{"notnull":true,"type":"integer","valueLevel":0,"values":[0],"lengthLevel":1,"lengths":[1]},"phone":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[11]},"verify":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[4]},"date":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[25]}}]},"tag":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[6]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666291220027, 82001, 1511796155276, '{"verify":{"id":1666291200135,"type":0,"phone":"13000082001","verify":"8850","date":"2022-10-21 02:40:00.173151"},"tag":"Verify","ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:40:20.041819', '{"code":2,"msg":"值超出范围 [1666289803660, 1666289803660]","path":"verify/id","value":1666291200135,"duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"verify":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1666291200135,1666289803660],"lengthLevel":1,"lengths":[13],"trend":{"above":1,"select":">"}},"type":{"notnull":true,"type":"integer","valueLevel":0,"values":[0],"lengthLevel":1,"lengths":[1],"trend":{"top":1}},"phone":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[11]},"verify":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[4]},"date":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[26,25]}}]},"tag":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[6]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200,"repeat":1}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666291224253, 82001, 1511689914598, '{"Privacy":{"id":82001,"certified":1,"phone":"13000082001","balance":98729.75},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:40:24.277433', '{"code":2,"msg":"值超出范围 [98729.45, 98729.45]","path":"Privacy/balance","value":98729.75,"duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Privacy":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[82001],"lengthLevel":1,"lengths":[5],"trend":{"top":1}},"certified":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1],"trend":{"top":1}},"phone":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[11]},"balance":{"notnull":true,"type":"number","valueLevel":1,"values":[98729.75,98729.45],"lengthLevel":1,"lengths":[5],"trend":{"above":1,"select":">"}}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200,"repeat":1}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666291227939, 82001, 1511689914598, '{"Privacy":{"id":82001,"certified":1,"phone":"13000082001","balance":98729.75},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:40:27.977181', '{"code":2,"msg":"值违背必增趋势 > 98729.75","path":"Privacy/balance","value":98729.75,"duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Privacy":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[82001],"lengthLevel":1,"lengths":[5],"trend":{"top":2}},"certified":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1],"trend":{"top":2}},"phone":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[11]},"balance":{"notnull":true,"type":"number","valueLevel":1,"values":[98729.75,98729.45],"lengthLevel":1,"lengths":[5],"trend":{"above":1,"select":">=","top":1}}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200,"repeat":2}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666291232391, 82001, 1511963990071, '{"Moment":{"id":15,"userId":70793,"date":"2017-02-08 08:06:11.0","content":"APIJSON is a JSON Transmission Structure Protocol…","praiseUserIdList":[82002,70793,38710,93793],"pictureList":["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000","http://common.cnblogs.com/images/icon_weibo_24.png"]},"User":{"id":70793,"name":"Strong","head":"http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000"},"User[]":[{"id":38710,"name":"TommyLemon"},{"id":82002,"name":"Happy~"},{"id":70793,"name":"Strong"},{"id":93793,"name":"Mike"}],"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"3|0|3|200","depth:count|max":"3|5","code":200}', '2022-10-21 02:40:32.418056', '{"code":2,"msg":"长度 4 超出范围 [5, 5]","path":"Moment/praiseUserIdList","value":4,"duration":"比较慢:比以往 [20ms, 200ms] 最快与最慢之和(平均值两倍)还更慢"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Moment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":0,"values":[15],"lengthLevel":1,"lengths":[2],"trend":{"top":1}},"userId":{"notnull":true,"type":"integer","valueLevel":1,"values":[70793],"lengthLevel":1,"lengths":[5],"trend":{"top":1}},"date":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[21]},"content":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[50]},"praiseUserIdList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[5,4],"values":[{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,82002,82001,70793,38710],"lengthLevel":1,"lengths":[5]}]},"pictureList":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[2],"values":[{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[75,50]}]}}]},"User":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[70793],"lengthLevel":1,"lengths":[5],"trend":{"top":1}},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[6]},"head":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[73]}}]},"User[]":{"notnull":true,"type":"array","valueLevel":0,"lengthLevel":1,"lengths":[5,4],"values":[{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[93793,82002,82001,70793,38710],"lengthLevel":1,"lengths":[5]},"name":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[10,6,4]}}]}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200,"repeat":1}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666291236435, 82001, 1511969630371, '{"Comment":{"ok":true,"code":200,"msg":"success","count":1,"id":1666291199887},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:40:36.453016', '{"code":2,"msg":"值超出范围 [1666289803266, 1666289803266]","path":"Comment/id","value":1666291199887,"duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Comment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"code":{"notnull":true,"type":"integer","valueLevel":0,"values":[200],"lengthLevel":1,"lengths":[3],"trend":{"top":1}},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"count":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1],"trend":{"top":1}},"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1666291199887,1666289803266],"lengthLevel":1,"lengths":[13],"trend":{"above":1,"select":">"}}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200,"repeat":1}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666291237615, 82001, 1511970009071, '{"Moment":{"ok":true,"code":200,"msg":"success","count":1,"id":1666291199776},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:40:37.654678', '{"code":2,"msg":"值超出范围 [1666289803269, 1666289803269]","path":"Moment/id","value":1666291199776,"duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Moment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"code":{"notnull":true,"type":"integer","valueLevel":0,"values":[200],"lengthLevel":1,"lengths":[3],"trend":{"top":1}},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"count":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1],"trend":{"top":1}},"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1666291199776,1666289803269],"lengthLevel":1,"lengths":[13],"trend":{"above":1,"select":">"}}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200,"repeat":1}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666291243572, 82001, 1521905868718, '{"Privacy":{"id":82001,"certified":1,"phone":"13000082001","balance":98729.6},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:40:43.597035', '{"code":2,"msg":"值超出范围 [98729.3, 98729.3]","path":"Privacy/balance","value":98729.6,"duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Privacy":{"notnull":true,"type":"object","valueLevel":0,"values":[{"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[82001],"lengthLevel":1,"lengths":[5],"trend":{"top":1}},"certified":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1],"trend":{"top":1}},"phone":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[11]},"balance":{"notnull":true,"type":"number","valueLevel":1,"values":[98729.6,98729.3],"lengthLevel":1,"lengths":[5],"trend":{"above":1,"select":">"}}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200,"repeat":1}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); +INSERT INTO "TestRecord" (id, "userId", "documentId", response, date, compare, standard, "randomId", headless, "reportId", "testAccountId", duration, "minDuration", "maxDuration", host) VALUES (1666291245806, 82001, 1521905680679, '{"Moment":{"ok":true,"code":200,"msg":"success","count":1,"id":1666291199308},"ok":true,"msg":"success","sql:generate|cache|execute|maxExecute":"1|0|1|200","depth:count|max":"1|5","code":200}', '2022-10-21 02:40:45.835505', '{"code":2,"msg":"值超出范围 [1666289802937, 1666289802937]","path":"Moment/id","value":1666291199308,"duration":"正常:在以往 [20ms, 200ms] 最快和最慢之间"}', '{"notnull":true,"type":"object","valueLevel":0,"values":[{"Moment":{"notnull":true,"type":"object","valueLevel":0,"values":[{"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"code":{"notnull":true,"type":"integer","valueLevel":0,"values":[200],"lengthLevel":1,"lengths":[3],"trend":{"top":1}},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"count":{"notnull":true,"type":"integer","valueLevel":0,"values":[1],"lengthLevel":1,"lengths":[1],"trend":{"top":1}},"id":{"notnull":true,"type":"integer","valueLevel":1,"values":[1666291199308,1666289802937],"lengthLevel":1,"lengths":[13],"trend":{"above":1,"select":">"}}}]},"ok":{"notnull":true,"type":"boolean","valueLevel":0,"values":[true],"lengthLevel":1,"lengths":[]},"msg":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[7]},"sql:generate|cache|execute|maxExecute":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[9]},"depth:count|max":{"notnull":true,"type":"string","valueLevel":3,"values":[],"lengthLevel":1,"lengths":[3]}}],"code":200,"repeat":1}', 0, 0, 0, 0, 0, 0, 0, 'http://localhost:8080'); diff --git a/DuckDB/single/sys_Verify.sql b/DuckDB/single/sys_Verify.sql new file mode 100644 index 0000000..f8d9014 --- /dev/null +++ b/DuckDB/single/sys_Verify.sql @@ -0,0 +1,114 @@ +create table "Verify" +( + id bigint not null + primary key, + type integer not null, + phone varchar(11) not null, + verify varchar(32) not null, + date timestamp(6) default CURRENT_TIMESTAMP not null +); + +comment on column "Verify".id is '唯一标识'; + +comment on column "Verify".type is '类型: +0-登录 +1-注册 +2-修改登录密码 +3-修改支付密码'; + +comment on column "Verify".phone is '手机号'; + +comment on column "Verify".verify is '验证码'; + +comment on column "Verify".date is '创建时间'; + + +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1527950171719, 1, '13000084444', '10375', '2018-06-02 14:36:11.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528250810515, 1, '15122820115', '2586', '2018-06-06 02:06:50.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528254139866, 1, '15225556855', '8912', '2018-06-06 03:02:19.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528255485691, 1, '15822798927', '2101', '2018-06-06 03:24:45.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528264687329, 1, '15620878773', '3991', '2018-06-06 05:58:07.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528269508031, 1, '18616024605', '4901', '2018-06-06 07:18:28.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528289406640, 1, '13142033348', '3005', '2018-06-06 12:50:06.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528327843188, 0, '15122820115', '4912', '2018-06-06 23:30:43.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528330720259, 2, '15122820115', '5267', '2018-06-07 00:18:40.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528339646013, 1, '15122541683', '6112', '2018-06-07 02:47:26.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528344962707, 1, '15188899797', '4540', '2018-06-07 04:16:02.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528345364195, 2, '15122541683', '10500', '2018-06-07 04:22:44.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528345372998, 0, '15122541683', '9940', '2018-06-07 04:22:53.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528356342784, 2, '15620878773', '2076', '2018-06-07 07:25:42.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528356449927, 1, '15620878772', '4733', '2018-06-07 07:27:29.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1528411937273, 0, '15620878772', '7375', '2018-06-07 22:52:17.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1531793525394, 1, '15629184762', '9737', '2018-07-17 02:12:05.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1531969702694, 1, '13800138000', '8213', '2018-07-19 03:08:22.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1531983017848, 2, '13800138000', '1552', '2018-07-19 06:50:17.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1532188103364, 1, '13977757845', '8753', '2018-07-21 15:48:23.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1532439015405, 1, '18779607703', '10136', '2018-07-24 13:30:15.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1533450371245, 1, '18911061423', '5795', '2018-08-05 06:26:11.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1533618759900, 1, '13977757843', '10204', '2018-08-07 05:12:39.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1533627819054, 1, '13107695518', '7515', '2018-08-07 07:43:39.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1533693421836, 1, '15901373410', '4884', '2018-08-08 01:57:01.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1533698902309, 1, '18664900086', '3654', '2018-08-08 03:28:22.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1533723898511, 1, '8881816', '5272', '2018-08-08 10:24:58.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1533835163777, 1, '13977757846', '9332', '2018-08-09 17:19:23.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1534142797624, 2, '13977757845', '4136', '2018-08-13 06:46:37.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1534142802751, 0, '13977757845', '5754', '2018-08-13 06:46:42.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1534671951719, 1, '13000082023', '5869', '2018-08-19 09:45:51.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1534671960833, 1, '13000082013', '6169', '2018-08-19 09:46:00.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1534671980295, 1, '13000082032', '10171', '2018-08-19 09:46:20.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1534672028733, 0, '13000093793', '6478', '2018-08-19 09:47:08.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1534898613829, 1, '17755531490', '3961', '2018-08-22 00:43:33.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1534926287534, 1, '17602120205', '5297', '2018-08-22 08:24:47.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1535345181813, 1, '13000082022', '8145', '2018-08-27 04:46:21.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1536220749108, 1, '13241042199', '9916', '2018-09-06 07:59:09.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1536583466723, 1, '18013819609', '2483', '2018-09-10 12:44:26.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1536805630726, 0, '13000070793', '1798', '2018-09-13 02:27:10.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1537515268266, 2, '13000038710', '4171', '2018-09-21 07:34:28.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1537515280163, 2, '13000038713', '5877', '2018-09-21 07:34:40.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1537515287973, 2, '13000038714', '10441', '2018-09-21 07:34:47.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1537515337629, 1, '13000033333', '7353', '2018-09-21 07:35:37.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1537521279290, 1, '13000049499', '2854', '2018-09-21 09:14:39.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1538114970328, 1, '15855512382', '10359', '2018-09-28 06:09:30.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1538504245612, 1, '13000087654', '10791', '2018-10-02 18:17:25.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1538504485798, 1, '13000087655', '4776', '2018-10-02 18:21:25.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1538987940551, 1, '18662327672', '1800', '2018-10-08 08:39:00.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1539076064496, 1, '15094295280', '3361', '2018-10-09 09:07:44.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1539076102284, 1, '15094395280', '1562', '2018-10-09 09:08:22.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1540364623910, 1, '13000085001', '4382', '2018-10-24 07:03:43.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1540966375865, 1, '13122091271', '3880', '2018-10-31 06:12:55.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1541427928139, 0, '13759127249', '5913', '2018-11-05 14:25:28.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1541500666143, 1, '15280239960', '9142', '2018-11-06 10:37:46.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1541510152560, 1, '13000099999', '1097', '2018-11-06 13:15:52.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1541510270190, 1, '13000077777', '8192', '2018-11-06 13:17:50.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1541583746916, 1, '18689846285', '8724', '2018-11-07 09:42:26.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1541724338244, 0, '13000038710', '8283', '2018-11-09 00:45:38.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1541757538733, 1, '17717112856', '2268', '2018-11-09 09:58:58.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1542261432641, 1, '15800506515', '2586', '2018-11-15 05:57:12.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1542265654497, 1, '18010001000', '5666', '2018-11-15 07:07:34.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1542337959344, 1, '13000012345', '4981', '2018-11-16 03:12:39.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1542352629436, 1, '13000082002', '10212', '2018-11-16 07:17:09.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1542548523509, 1, '13317833374', '8921', '2018-11-18 13:42:03.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1542702268195, 1, '123123', '8055', '2018-11-20 08:24:28.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1542840424025, 1, '13818118257', '7126', '2018-11-21 22:47:04.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1543377157089, 1, '18622250185', '6620', '2018-11-28 03:52:37.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1543966631575, 1, '13466260815', '5835', '2018-12-04 23:37:11.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1544276193603, 1, '13000087656', '4078', '2018-12-08 13:36:33.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1544276277509, 2, '13000087656', '9356', '2018-12-08 13:37:57.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1544276305800, 0, '13000087656', '8708', '2018-12-08 13:38:25.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1544276475231, 1, '15988125475', '8940', '2018-12-08 13:41:15.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1544503797981, 1, '13000082968', '6965', '2018-12-11 04:49:57.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1545238881566, 1, '13166059778', '4434', '2018-12-19 17:01:21.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1545269417538, 1, '18124099720', '4882', '2018-12-20 01:30:17.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1545464407106, 1, '17755015200', '3870', '2018-12-22 07:40:07.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1545707514503, 1, '13533039558', '3941', '2018-12-25 03:11:54.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1545895656481, 1, '13533039550', '4968', '2018-12-27 07:27:36.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1546701633801, 1, '13534201057', '8487', '2019-01-05 15:20:33.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1547177422559, 1, '18980210241', '7012', '2019-01-11 03:30:22.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1548068010027, 1, '17181595855', '10716', '2019-01-21 10:53:30.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1548310439111, 1, '13059203278', '9438', '2019-01-24 06:13:59.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1548398132694, 1, '15050529772', '9276', '2019-01-25 06:35:32.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1548742004597, 1, '13738007826', '6318', '2019-01-29 06:06:44.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1548742060130, 1, '13000082001', '8387', '2019-01-29 06:07:40.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1548742124507, 6, '13000082001', '4901', '2019-01-29 06:08:44.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1548742151361, 10, '13000082001', '8513', '2019-01-29 06:09:11.000000'); +INSERT INTO "Verify" (id, type, phone, verify, date) VALUES (1666291252371, 0, '13000082001', '9465', '2022-10-21 02:40:52.383267'); diff --git a/DuckDB/single/sys_Visit.sql b/DuckDB/single/sys_Visit.sql new file mode 100644 index 0000000..c33d115 --- /dev/null +++ b/DuckDB/single/sys_Visit.sql @@ -0,0 +1,14 @@ +create table "_Visit" +( + model varchar(15) not null, + id bigint not null, + operate smallint not null, + date timestamp(6) not null +); + +comment on column "_Visit".operate is '1-增 +2-删 +3-改 +4-查'; + + diff --git a/DuckDB/single/sys_apijson_privacy.sql b/DuckDB/single/sys_apijson_privacy.sql new file mode 100644 index 0000000..3b0738c --- /dev/null +++ b/DuckDB/single/sys_apijson_privacy.sql @@ -0,0 +1,170 @@ +create table apijson_privacy +( + id bigint not null + primary key, + certified smallint not null, + phone varchar(64) not null, + balance numeric(10, 2) not null, + _password varchar(20) not null, + "_payPassword" varchar(32) not null +); + +comment on table apijson_privacy is '用户隐私信息表。\n对安全要求高,不想泄漏真实名称。对外名称为 Privacy'; + +comment on column apijson_privacy.id is '唯一标识'; + +comment on column apijson_privacy.certified is '已认证'; + +comment on column apijson_privacy.phone is '手机号,仅支持 11 位数的。不支持 +86 这种国家地区开头的。如果要支持就改为 VARCHAR(14)'; + +comment on column apijson_privacy.balance is '余额'; + +comment on column apijson_privacy._password is '登录密码'; + +comment on column apijson_privacy."_payPassword" is '支付密码'; + + +create index "phone_UNIQUE" + on apijson_privacy (phone); + +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (38710, 1, '13000038710', 33376.00, 'apijson', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (70793, 0, '13000070793', 56000.00, 'apijson', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82002, 1, '13000082002', 6817.23, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82003, 1, '13000082003', 2000.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82004, 0, '13000082004', 2000.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82005, 0, '13000082005', 1923.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82006, 0, '13000082006', 2000.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82009, 0, '13000082009', 2000.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82012, 0, '13000082012', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82020, 0, '12345678900', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82021, 0, '12345678901', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82022, 0, '12345678902', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82023, 0, '12345678903', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82024, 0, '12345678904', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82025, 0, '12345678905', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82026, 0, '12345678906', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82027, 0, '12345678907', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82028, 0, '12345678908', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82029, 0, '12345678909', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82030, 0, '12345678910', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82031, 0, '12345678911', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82032, 0, '12345678912', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82033, 0, '12345678913', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82034, 0, '12345678914', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82035, 0, '12345678915', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82036, 0, '12345678916', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82037, 0, '12345678917', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82038, 0, '12345678918', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82039, 0, '12345678919', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82040, 0, '13000082019', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82041, 0, '13000082015', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82042, 0, '13000082016', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82043, 0, '13000082017', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82044, 0, '13000082018', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82045, 0, '13000082020', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82046, 0, '13000082010', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82047, 0, '13000082021', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82048, 0, '13000038711', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82049, 0, '13000038712', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82050, 0, '13000038713', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82051, 0, '13000038714', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82052, 0, '13000038715', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82053, 0, '13000038720', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82054, 0, '13000038721', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82055, 0, '13000082030', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82056, 0, '13000082040', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82057, 0, '13000038730', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82058, 0, '13000038750', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82059, 0, '13000082033', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82060, 0, '13000082050', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (90814, 1, '13000090814', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (93793, 1, '13000093793', 3000.00, 'apijson', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (93794, 0, '99999999999', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1490109742863, 0, '13000082100', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1490109845208, 0, '13000082101', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1490420651686, 0, '13000038716', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1490427139175, 0, '13000038717', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1490427577823, 0, '13000082102', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1490584952968, 0, '13000038790', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1490973670928, 0, '13000082051', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1492936169722, 0, '13000093794', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493480142628, 0, '13000038888', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493747512860, 0, '13000038777', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493747777770, 0, '13000038778', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493748594003, 0, '13000038779', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493748615711, 0, '13000038780', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493749090643, 0, '13000038781', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493836043151, 0, '13000038999', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493883110132, 0, '13000039999', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493890214167, 0, '13000031000', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493890303473, 0, '13000031001', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1493890303474, 0, '13000088888', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1497792972314, 0, '13000082111', 0.00, '654321', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1499057230629, 0, '13000082011', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1500825221910, 0, '13000099999', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1502639062900, 0, '13000082222', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1502639424119, 0, '13000082333', 0.00, '12345678', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1507220582167, 0, '13000011111', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1508072071492, 0, '13000071492', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1508072105320, 0, '13000082008', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1508072160401, 0, '13000082007', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1508072202871, 0, '13000082031', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1510495628760, 0, '13000082000', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1511407581570, 0, '17610725819', 0.00, '123123', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1511761906715, 0, '13708222312', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1511965911349, 0, '13000083333', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1512387063078, 0, '15858585858', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1512531601485, 0, '18210847727', 0.00, '5816136', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1514623064133, 0, '13000038725', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1514625918255, 0, '13000038726', 255.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1514626163032, 0, '13000038727', 4951.37, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1514858422969, 0, '13000082041', 164.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1515565976140, 0, '15009257563', 0.00, 'qazwsx', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1518218350585, 0, '18663689263', 0.00, 'cherish751220', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1519778917280, 0, '15000536915', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1520242280259, 0, '18917212395', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1521274648008, 0, '18989491914', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1521371722416, 0, '13000088889', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1521374327542, 0, '13000056789', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1523626157302, 0, '15603313259', 0.00, '15603313259', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1523935772553, 0, '15603313258', 0.00, '15603313258', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1524042900591, 0, '15222297100', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1524298730523, 0, '17854217949', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1524878698882, 0, '13917451840', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1525677515673, 0, '13390935538', 10000.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1527495857924, 0, '13142033345', 15.00, 'qweasd', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1527498229991, 0, '13142033342', 0.00, 'qweasd', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1527821445610, 0, '13142033346', 0.00, 'qweasd', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1528250827953, 0, '15122820115', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1528254173621, 0, '15225556855', 200.00, 'lmt970208', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1528255497767, 0, '15822798927', 0.00, '111111', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1528264711016, 0, '15620878773', 0.00, '111111', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1528339692804, 0, '15122541683', 0.00, '568599', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1528344980598, 0, '15188899797', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1528356470041, 0, '15620878772', 0.00, '111111', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1531969715979, 0, '13800138000', 10000.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1532188114543, 0, '13977757845', 20360.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1532439021068, 0, '18779607703', 0.00, '15879684798qq', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1533835176109, 0, '13977757846', 1700.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1534926301956, 0, '17602120205', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1538504264944, 0, '13000087654', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1538504500574, 0, '13000087655', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1538987952996, 0, '18662327672', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1541583762603, 0, '18689846285', 0.00, 'jyt123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1544276209348, 0, '13000087656', 1050.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1544503822963, 0, '13000082968', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1545707526805, 0, '13533039558', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1545895694424, 0, '13533039550', 357.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1547177436600, 0, '18980210241', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1548068043688, 0, '17181595855', 0.00, '0812563993gg', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1553095415917, 0, '13185236871', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1553527700480, 0, '13189758117', 0.00, '3802489', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1559129626356, 0, '13000000000', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1560409157504, 0, '18030546471', 0.00, '123456789', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1561539257158, 0, '15870873323', 0.00, '123qwe', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1563605318975, 0, '13590330481', 0.00, '123456', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1566064943195, 0, '13111182001', 0.00, '6733', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1566065271307, 0, '13111182002', 0.00, '6733', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1566065319823, 0, '13111182003', 0.00, '6733', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (1566065621308, 0, '13111182008', 0.00, '6733', '123456'); +INSERT INTO apijson_privacy (id, certified, phone, balance, _password, "_payPassword") VALUES (82001, 1, '13000082001', 98729.90, '123456', '123456'); diff --git a/DuckDB/single/sys_apijson_user.sql b/DuckDB/single/sys_apijson_user.sql new file mode 100644 index 0000000..e2e4393 --- /dev/null +++ b/DuckDB/single/sys_apijson_user.sql @@ -0,0 +1,175 @@ +create table apijson_user +( + id bigint not null + primary key, + sex smallint not null, + name varchar(20), + tag varchar(45), + head varchar(300), + "contactIdList" json, + "pictureList" json, + date timestamp(6) +); + +comment on table apijson_user is '用户公开信息表。对安全要求高,不想泄漏真实名称。对外名称为 User'; + +comment on column apijson_user.id is '唯一标识'; + +comment on column apijson_user.sex is '性别: +0-男 +1-女'; + +comment on column apijson_user.name is '名称'; + +comment on column apijson_user.tag is '标签'; + +comment on column apijson_user.head is '头像url'; + +comment on column apijson_user."contactIdList" is '联系人id列表'; + +comment on column apijson_user."pictureList" is '照片列表'; + +comment on column apijson_user.date is '创建日期'; + + +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (38710, 0, 'TommyLemon', 'Android&Java', 'http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000', '[82003, 82005, 90814, 82004, 82009, 82002, 82044, 93793, 70793]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1511407581570, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 82003, 82005, 82006, 82021, 82023, 82036, 82033]', '[]', '2017-11-23 03:26:21.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1532439021068, 0, 'huxiaofan', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[38710, 82002, 82003, 82006, 82021]', null, '2018-07-24 13:30:21.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82045, 0, 'Green', null, 'http://common.cnblogs.com/images/wechat.png', '[82001, 82002, 82003, 1485246481130]', '[]', '2017-03-04 10:22:39.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82005, 1, 'Jan', 'AG', 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001, 38710, 1532439021068]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82046, 0, 'Team', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[38710, 82002, 1485246481130]', '[]', '2017-03-04 15:11:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1534926301956, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82003, 82002, 82025]', null, '2018-08-22 08:25:01.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1525677515673, 0, 'APIJSONUser', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[82003, 82002, 38710]', null, '2018-05-07 07:18:35.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82002, 1, 'Happy~', 'iOS', 'http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000', '[82005, 82001, 38710]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82012, 0, 'Steve', 'FEWE', 'http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000', '[82004, 82002, 93793]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1531969715979, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 82003, 82005]', null, '2018-07-19 03:08:35.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82043, 0, 'Holiday', null, 'http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000', '[70793, 82006]', '[]', '2017-03-04 10:05:04.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528264711016, 0, '梦', null, 'http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000', '[82021, 1528250827953]', null, '2018-06-06 05:58:31.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1544276209348, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 38710]', null, '2018-12-08 13:36:49.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82003, 1, 'Wechat', null, 'http://common.cnblogs.com/images/wechat.png', '[82001, 93793]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82041, 0, 'Holo', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[38710, 82001]', '[]', '2017-03-04 09:59:34.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82058, 0, 'StupidBird', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001, 82002]', '[]', '2017-03-12 11:23:04.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82055, 1, 'Solid', null, 'http://static.oschina.net/uploads/user/19/39085_50.jpg', '[38710, 82002]', '[]', '2017-03-11 15:04:00.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (70793, 0, 'Strong', 'djdj', 'http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000', '[38710, 82002]', '["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "https://camo.githubusercontent.com/788c0a7e11a", "https://camo.githubusercontent.com/f513f67"]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1544503822963, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[93793, 82003]', null, '2018-12-11 04:50:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1514625918255, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 93793]', null, '2017-12-30 09:25:18.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1527495857924, 0, 'account', null, 'https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2510057322,2452415311&fm=27&gp=0.jpg', '[1527821445610, 82012]', null, '2018-05-28 08:24:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528339692804, 1, '568599', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1528250827953, 1528264711016]', null, '2018-06-07 02:48:12.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1524042900591, 1, '哈哈哈', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 82003]', null, '2018-04-18 09:15:00.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1514858422969, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[93793, 82056]', null, '2018-01-02 02:00:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490973670928, 1, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[70793, 93793]', '[]', '2017-03-31 15:21:10.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490427139175, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[38710, 70793]', '[]', '2017-03-25 07:32:19.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1515565976140, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82003, 82021]', null, '2018-01-10 06:32:56.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1523626157302, 1, 'Charlie_brown', '', 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1523935772553, 93793]', null, '2018-04-13 13:29:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528254173621, 1, 'A', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001, 38710]', null, '2018-06-06 03:02:53.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1523935772553, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1523626157302]', null, '2018-04-17 03:29:32.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1512531601485, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001]', '[]', '2017-12-06 03:40:01.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1553095415917, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001]', null, '2019-03-20 15:23:35.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528255497767, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002]', null, '2018-06-06 03:24:57.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1520242280259, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002]', null, '2018-03-05 09:31:20.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528250827953, 1, 'limengt', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1528264711016]', null, '2018-06-06 02:07:07.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1527821445610, 0, 'accountt', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[1527495857924]', null, '2018-06-01 02:50:45.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82044, 1, 'Love', null, 'http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000', '[82006]', '[]', '2017-03-04 10:20:27.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1527498229991, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1499057230629]', null, '2018-05-28 09:03:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528356470041, 0, 'aaaa', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1528339692804]', null, '2018-06-07 07:27:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82040, 1, 'Dream', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[70793]', '[]', '2017-03-02 16:44:26.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490420651686, 1, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[70793]', '[]', '2017-03-25 05:44:11.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1559129626356, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1507220582167]', null, '2019-05-29 11:33:46.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1533835176109, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1532188114543]', null, '2018-08-09 17:19:36.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490109742863, 1, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-03-21 15:22:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1500825221910, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-07-23 15:53:41.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493890214167, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-04 09:30:14.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1507220582167, 0, 'APIJSONUser', '通过APIJSONAuto的图像化界面注册,按Enter而不是Register', 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-05 16:23:02.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1497792972314, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-06-18 13:36:12.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1511761906715, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-11-27 05:51:46.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1524298730523, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', null, '2018-04-21 08:18:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493747512860, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 17:51:52.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493748615711, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 18:10:15.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493480142628, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-04-29 15:35:42.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1499057230629, 0, '一二三', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-07-03 04:47:10.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1512387063078, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-12-04 11:31:03.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1511965911349, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-11-29 14:31:51.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1508072071492, 0, '赵钱孙李', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-15 12:54:31.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493749090643, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 18:18:10.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493748594003, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 18:09:54.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82004, 0, 'Tommy', 'fasef', 'http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82006, 1, 'Meria', null, 'http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82009, 0, 'God', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (93793, 0, 'Mike', 'GES', 'http://static.oschina.net/uploads/user/48/96331_50.jpg', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (93794, 0, 'Lemon', null, 'http://static.oschina.net/uploads/user/48/97721_50.jpg?t=1451544779000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82020, 0, 'ORANGE', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82021, 1, 'Tommy', null, 'http://static.oschina.net/uploads/user/19/39085_50.jpg', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82022, 0, 'Internet', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82023, 0, 'No1', null, 'http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1508072105320, 1, '周吴郑王', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-15 12:55:05.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82024, 0, 'Lemon', null, 'http://static.oschina.net/uploads/user/427/855532_50.jpg?t=1435030876000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82025, 1, 'Tommy', null, 'http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82026, 0, 'iOS', null, 'http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82027, 0, 'Yong', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82028, 1, 'gaeg', null, 'http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82029, 0, 'GASG', null, 'http://common.cnblogs.com/images/wechat.png', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82030, 1, 'Fun', null, 'http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82031, 0, 'Lemon', null, 'http://static.oschina.net/uploads/user/48/96331_50.jpg', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82032, 0, 'Stack', 'fasdg', 'http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82033, 1, 'GAS', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82034, 1, 'Jump', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82035, 1, 'Tab', null, 'http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82036, 0, 'SAG', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1502639062900, 0, 'TESLA', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-08-13 15:44:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82037, 0, 'Test', null, 'http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82038, 0, 'Battle', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1502639424119, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-08-13 15:50:24.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82039, 1, 'Everyday', null, 'http://common.cnblogs.com/images/icon_weibo_24.png', '[]', '[]', '2017-02-19 13:57:56.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1508072202871, 0, '七八九十', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-15 12:56:42.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82042, 1, 'Why', null, 'http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000', '[]', '[]', '2017-03-04 10:04:33.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82047, 0, 'Tesla', null, 'http://common.cnblogs.com/images/wechat.png', '[]', '[]', '2017-03-04 16:02:05.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82048, 0, 'Moto', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[]', '[]', '2017-03-04 16:04:02.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82049, 0, 'ITMan', null, 'http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000', '[]', '[]', '2017-03-05 09:51:51.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82050, 0, 'Parl', null, 'http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000', '[]', '[]', '2017-03-05 09:52:52.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82051, 0, 'Girl', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[]', '[]', '2017-03-05 09:53:37.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82052, 0, 'Unbrella', null, 'http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000', '[]', '[]', '2017-03-05 09:57:54.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82053, 0, 'Alice', null, 'http://common.cnblogs.com/images/wechat.png', '[]', '[]', '2017-03-05 15:25:42.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82054, 0, 'Harvey', null, 'http://static.oschina.net/uploads/user/19/39085_50.jpg', '[]', '[]', '2017-03-06 12:29:03.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82056, 1, 'IronMan', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[]', '[]', '2017-03-11 15:32:25.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490584952968, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-03-27 03:22:32.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82057, 0, 'NullPointerExeption', null, 'http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000', '[]', '[]', '2017-03-12 06:01:23.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82059, 1, 'He&She', null, 'http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000', '[]', '[]', '2017-03-19 14:49:15.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82060, 1, 'Anyway~', null, 'http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000', '[]', '[]', '2017-03-21 14:10:18.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493836043151, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-03 18:27:23.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1508072160401, 0, '四五六', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-15 12:56:00.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (90814, 0, '007', null, 'http://static.oschina.net/uploads/user/51/102723_50.jpg?t=1449212504000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1510495628760, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-11-12 14:07:08.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490109845208, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-03-21 15:24:05.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490427577823, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-03-25 07:39:37.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493747777770, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 17:56:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493890303473, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-04 09:31:43.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493890303474, 0, 'Test Post', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-06-12 15:50:44.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493883110132, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-04 07:31:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1492936169722, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-04-23 08:29:29.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1553527700480, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-03-25 15:28:20.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1566065271307, 0, 'new APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-08-17 18:08:04.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1566065621308, 0, 'new APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-08-17 18:13:55.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1563605318975, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-07-20 06:48:38.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1514623064133, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2017-12-30 08:37:44.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1561539257158, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-06-26 08:54:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1514626163032, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2017-12-30 09:29:23.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1545895694424, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-12-27 07:28:14.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1566064943195, 0, 'new APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-08-17 18:02:36.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1538504500574, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-10-02 18:21:40.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1538987952996, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-10-08 08:39:13.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1532188114543, 0, '宁旭', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-07-21 15:48:34.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528344980598, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-06-07 04:16:20.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1560409157504, 0, '上邪', null, '最好的时光', null, null, '2019-06-13 06:59:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1524878698882, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-04-28 01:24:58.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1566065319823, 0, 'new APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-08-17 18:08:53.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1545707526805, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-12-25 03:12:06.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1519778917280, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-02-28 00:48:37.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1548068043688, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-01-21 10:54:03.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1541583762603, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-11-07 09:42:42.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1521371722416, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-03-18 11:15:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1547177436600, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-01-11 03:30:36.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1521274648008, 0, 'Kiro', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-03-17 08:17:28.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1538504264944, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-10-02 18:17:44.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1521374327542, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-03-18 11:58:47.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1518218350585, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-02-09 23:19:10.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82001, 1, '测试账号', 'Dev', 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82012, 82003, 93794, 82006, 38710, 82004, 93793]', '["http://common.cnblogs.com/images/icon_weibo_24.png"]', '2017-02-01 11:21:50.000000'); diff --git a/DuckDB/sys_ddl.sql b/DuckDB/sys_ddl.sql new file mode 100644 index 0000000..5f77c39 --- /dev/null +++ b/DuckDB/sys_ddl.sql @@ -0,0 +1,319 @@ +create table "Praise" +( +); + +create table "Random" +( +); + +create table "_Visit" +( +); + + +create table "Method" +( +); + + +create table "Document" +( + id bigint, + debug smallint, + "userId" bigint, + "testAccountId" bigint, + version smallint, + name varchar(100), + type varchar(5), + url varchar(250), + request text, + apijson text, + sqlauto text, + standard text, + header text, + date timestamp, + detail text +); + + +create table apijson_privacy +( + id bigint not null + primary key, + certified smallint not null, + phone varchar(64) not null, + balance numeric(10, 2) not null, + _password varchar(20) not null, + "_payPassword" varchar(32) not null +); + +comment on table apijson_privacy is '用户隐私信息表。\n对安全要求高,不想泄漏真实名称。对外名称为 Privacy'; + +comment on column apijson_privacy.id is '唯一标识'; + +comment on column apijson_privacy.certified is '已认证'; + +comment on column apijson_privacy.phone is '手机号,仅支持 11 位数的。不支持 +86 这种国家地区开头的。如果要支持就改为 VARCHAR(14)'; + +comment on column apijson_privacy.balance is '余额'; + +comment on column apijson_privacy._password is '登录密码'; + +comment on column apijson_privacy."_payPassword" is '支付密码'; + +create index "phone_UNIQUE" + on apijson_privacy (phone); + +create table apijson_user +( + id bigint not null + primary key, + sex smallint not null, + name varchar(20), + tag varchar(45), + head varchar(300), + "contactIdList" json, + "pictureList" json, + date timestamp(6) +); + +comment on table apijson_user is '用户公开信息表。对安全要求高,不想泄漏真实名称。对外名称为 User'; + +comment on column apijson_user.id is '唯一标识'; + +comment on column apijson_user.sex is '性别: +0-男 +1-女'; + +comment on column apijson_user.name is '名称'; + +comment on column apijson_user.tag is '标签'; + +comment on column apijson_user.head is '头像url'; + +comment on column apijson_user."contactIdList" is '联系人id列表'; + +comment on column apijson_user."pictureList" is '照片列表'; + +comment on column apijson_user.date is '创建日期'; + + +create table "Comment" +( + id bigint not null + primary key, + "toId" bigint default 0 not null, + "userId" bigint not null, + "momentId" bigint not null, + date timestamp(6), + content varchar(1000) not null +); + +comment on table "Comment" is '评论'; + +comment on column "Comment".id is '唯一标识'; + +comment on column "Comment"."toId" is '被回复的id'; + +comment on column "Comment"."userId" is '评论人id'; + +comment on column "Comment"."momentId" is '动态id'; + +comment on column "Comment".date is '创建日期'; + +comment on column "Comment".content is '内容'; + +create table "Moment" +( + id bigint not null + primary key, + "userId" bigint not null, + date timestamp(6), + content varchar(300), + "praiseUserIdList" json not null, + "pictureList" json not null +); + +comment on table "Moment" is '动态'; + +comment on column "Moment".id is '唯一标识'; + +comment on column "Moment"."userId" is '用户id'; + +comment on column "Moment".date is '创建日期'; + +comment on column "Moment".content is '内容'; + +comment on column "Moment"."praiseUserIdList" is '点赞的用户id列表'; + +comment on column "Moment"."pictureList" is '图片列表'; + + +create table "TestRecord" +( + id bigint not null + primary key, + "userId" bigint not null, + "documentId" bigint not null, + response text not null, + date timestamp(6) default CURRENT_TIMESTAMP not null, + compare text, + standard text, + "randomId" bigint default 0, + headless smallint default 0 not null, + "reportId" bigint default 0 not null, + "testAccountId" bigint default 0 not null, + duration bigint default 0 not null, + "minDuration" bigint default 0 not null, + "maxDuration" bigint default 0 not null, + host varchar(200) +); + +comment on column "TestRecord".id is '唯一标识'; + +comment on column "TestRecord"."userId" is '用户id'; + +comment on column "TestRecord"."documentId" is '测试用例文档id'; + +comment on column "TestRecord".response is '接口返回结果JSON'; + +comment on column "TestRecord".date is '创建日期'; + +comment on column "TestRecord".compare is '对比结果'; + +comment on column "TestRecord".standard is 'response 的校验标准,是一个 JSON 格式的 AST ,描述了正确 Response 的结构、里面的字段名称、类型、长度、取值范围 等属性。'; + +comment on column "TestRecord"."randomId" is '随机配置 id'; + +comment on column "TestRecord".headless is '是否为无 UI 的 Headless 模式:0-否 1-是'; + +comment on column "TestRecord"."reportId" is '测试报告 ID'; + +comment on column "TestRecord"."testAccountId" is '测试账号 id'; + +create table "Function" +( + id bigint not null + primary key, + language varchar, + name varchar(30) not null, + "returnType" varchar(45) default 'Object'::character varying, + arguments varchar(100), + demo text not null, + detail varchar(1000), + date timestamp(6) default CURRENT_TIMESTAMP not null, + "userId" bigint default 0, + version integer default 0, + tag varchar, + methods varchar, + return integer +); + +comment on column "Function".language is '语言:Java(java), JavaScript(js), Lua(lua), Python(py), Ruby(ruby), PHP(php) 等,NULL 默认为 Java,JDK 1.6-11 默认支持 JavaScript,JDK 12+ 需要额外依赖 Nashron/Rhiro 等 js 引擎库,其它的语言需要依赖对应的引擎库,并在 ScriptEngineManager 中注册'; + +comment on column "Function".name is '方法名'; + +comment on column "Function"."returnType" is '返回类型'; + +comment on column "Function".arguments is '参数列表,每个参数的类型都是 String。 +用 , 分割的字符串 比 [JSONArray] 更好,例如 array,item ,更直观,还方便拼接函数。'; + +comment on column "Function".demo is '可用的示例。'; + +comment on column "Function".detail is '详细描述'; + +comment on column "Function".date is '创建时间'; + +comment on column "Function"."userId" is '用户id'; + +comment on column "Function".version is '允许的最低版本号,只限于GET,HEAD外的操作方法。\nTODO 使用 requestIdList 替代 version,tag,methods'; + +comment on column "Function".tag is '允许的标签.\nnull - 允许全部\nTODO 使用 requestIdList 替代 version,tag,methods'; + +comment on column "Function".methods is '允许的操作方法。\nnull - 允许全部\nTODO 使用 requestIdList 替代 version,tag,methods'; + +comment on column "Function".return is '返回值示例'; + +create table "Request" +( + id bigint, + debug smallint, + version smallint, + method varchar(10), + tag varchar(30), + structure json, + detail varchar(10000), + date timestamp +); + + +create table "Script" +( + id bigint, + "userId" bigint, + "testAccountId" bigint, + "documentId" bigint, + simple smallint, + ahead smallint, + title varchar(100), + name varchar(100), + script text, + date timestamp, + detail varchar(1000) +); + + +create table "Access" +( + id integer not null + primary key, + schema varchar(100) default NULL::character varying, + debug integer default 0 not null, + name varchar(50) default '实际表名,例如 apijson_user'::character varying not null, + alias text, + get text default '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]'::text not null, + head text default '["UNKNOWN", "LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]'::text not null, + gets text default '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]'::text not null, + heads text default '["LOGIN", "CONTACT", "CIRCLE", "OWNER", "ADMIN"]'::text not null, + post text default '["OWNER", "ADMIN"]'::text not null, + put text default '["OWNER", "ADMIN"]'::text not null, + delete text default '["OWNER", "ADMIN"]'::text not null, + date text default CURRENT_TIMESTAMP not null, + detail text +); + +comment on column "Access".id is '唯一标识'; + +comment on column "Access".debug is '是否为调试表,只允许在开发环境使用,测试和线上环境禁用'; + +comment on column "Access".alias is '外部调用的表别名,例如 User'; + +comment on column "Access".get is '允许 get 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"] +用 JSON 类型不能设置默认值,反正权限对应的需求是明确的,也不需要自动转 JSONArray。 +TODO: 直接 LOGIN,CONTACT,CIRCLE,OWNER 更简单,反正是开发内部用,不需要复杂查询。'; + +comment on column "Access".head is '允许 head 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".gets is '允许 gets 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".heads is '允许 heads 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".post is '允许 post 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".put is '允许 put 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".delete is '允许 delete 的角色列表,例如 ["LOGIN", "CONTACT", "CIRCLE", "OWNER"]'; + +comment on column "Access".date is '创建时间'; + + +create table "Verify" +( + id bigint, + type integer, + phone bigint, + verify integer, + date timestamp +); + + diff --git a/PostgreSQL/single/postgres_sys_Document.sql b/PostgreSQL/single/postgres_sys_Document.sql index cfcb88a..1cf2389 100644 --- a/PostgreSQL/single/postgres_sys_Document.sql +++ b/PostgreSQL/single/postgres_sys_Document.sql @@ -53,7 +53,7 @@ alter table "Document" owner to postgres; -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1, 0, 82001, 82001, 1, '登录', 'JSON', '/login', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1, 0, 82001, 82001, 1, '登录', 'JSON', '/login', '{ "type": 0, "phone": "13000082001", "password": "123456", @@ -133,7 +133,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2017-11-26 15:35:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (2, 0, 82001, 0, 1, '注册(先获取验证码type:1)', 'JSON', '/register', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (2, 0, 82001, 0, 1, '注册(先获取验证码type:1)', 'JSON', '/register', '{ "Privacy": { "phone": 13000083333, "_password": "123456" @@ -213,9 +213,9 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2017-11-26 15:35:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (3, 0, 82001, 0, 1, '退出登录', 'JSON', '/logout', '{}', null, null, null, null, '2017-11-26 17:56:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511689914599, 0, 82001, 0, 1, '获取用户隐私信息', 'JSON', '/gets', '{"tag": "Privacy", "Privacy": {"id": 82001}}', null, null, null, null, '2017-11-26 17:51:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796155276, 0, 82001, 0, 1, '获取验证码', 'JSON', '/post/verify', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (3, 0, 82001, 0, 1, '退出登录', 'JSON', '/logout', '{}', null, null, null, null, '2017-11-26 17:56:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511689914599, 0, 82001, 0, 1, '获取用户隐私信息', 'JSON', '/gets', '{"tag": "Privacy", "Privacy": {"id": 82001}}', null, null, null, null, '2017-11-26 17:51:54.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796155276, 0, 82001, 0, 1, '获取验证码', 'JSON', '/post/verify', '{ "type": 0, "phone": "13000082001" }', null, null, '{ @@ -249,7 +249,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2017-11-27 23:23:28.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796208671, 0, 82001, 0, 1, '检查验证码是否存在', 'JSON', '/heads/verify', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796208671, 0, 82001, 0, 1, '检查验证码是否存在', 'JSON', '/heads/verify', '{ "type": 0, "phone": "13000082001" }', null, null, '{ @@ -285,7 +285,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2017-11-27 23:23:28.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796589078, 0, 82001, 82001, 1, '修改登录密码(先获取验证码type:2)-手机号+验证码', 'JSON', '/put/password', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796589078, 0, 82001, 82001, 1, '修改登录密码(先获取验证码type:2)-手机号+验证码', 'JSON', '/put/password', '{ "verify": "10322", "Privacy": { "phone": "13000082001", @@ -340,8 +340,8 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2017-11-27 23:23:28.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796882184, 0, 82001, 82001, 1, '充值(需要支付密码)/提现', 'JSON', '/put/balance', '{"tag": "Privacy", "Privacy": {"id": 82001, "balance+": 100.15, "_payPassword": "123456"}}', null, null, null, null, '2017-11-27 23:34:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511969417633, 0, 82001, 82001, 1, '点赞/取消点赞', 'JSON', '/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511796882184, 0, 82001, 82001, 1, '充值(需要支付密码)/提现', 'JSON', '/put/balance', '{"tag": "Privacy", "Privacy": {"id": 82001, "balance+": 100.15, "_payPassword": "123456"}}', null, null, null, null, '2017-11-27 23:34:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511969417633, 0, 82001, 82001, 1, '点赞/取消点赞', 'JSON', '/put', '{ "Moment": { "id": 15, "praiseUserIdList-": [ @@ -350,10 +350,10 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, }, "tag": "Moment" }', null, null, null, null, '2017-11-29 23:30:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511969630372, 0, 82001, 82001, 1, '新增评论', 'JSON', '/post', '{ "Comment": { "momentId": 15, "content": "测试新增评论" }, "tag": "Comment" }', null, null, null, null, '2017-11-29 23:33:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511970009072, 0, 82001, 82001, 1, '新增动态', 'JSON', '/post', '{ "Moment": { "content": "测试新增动态", "pictureList": ["http://static.oschina.net/uploads/user/48/96331_50.jpg" ] }, "tag": "Moment" }', null, null, null, null, '2017-11-29 23:40:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901518765, 0, 88888, 0, 2, '功能符(对象关键词): ⑤从pictureList获取第0张图片:', 'JSON', '/get', '{ "User": { "id": 38710, "@position": 0, "firstPicture()": "getFromArray(pictureList,@position)" } }', null, null, null, null, '2018-03-24 22:25:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901610784, 0, 88888, 0, 2, '功能符(对象关键词): ④查询 按userId分组、id最大值>=100 的Moment数组', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511969630372, 0, 82001, 82001, 1, '新增评论', 'JSON', '/post', '{ "Comment": { "momentId": 15, "content": "测试新增评论" }, "tag": "Comment" }', null, null, null, null, '2017-11-29 23:33:50.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1511970009072, 0, 82001, 82001, 1, '新增动态', 'JSON', '/post', '{ "Moment": { "content": "测试新增动态", "pictureList": ["http://static.oschina.net/uploads/user/48/96331_50.jpg" ] }, "tag": "Moment" }', null, null, null, null, '2017-11-29 23:40:09.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901518765, 0, 88888, 0, 2, '功能符(对象关键词): ⑤从pictureList获取第0张图片:', 'JSON', '/get', '{ "User": { "id": 38710, "@position": 0, "firstPicture()": "getFromArray(pictureList,@position)" } }', null, null, null, null, '2018-03-24 22:25:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901610784, 0, 88888, 0, 2, '功能符(对象关键词): ④查询 按userId分组、id最大值>=100 的Moment数组', 'JSON', '/get', '{ "[]": { "count": 10, "Moment": { @@ -431,16 +431,16 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2018-03-24 22:26:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901682846, 0, 88888, 0, 2, '功能符(对象关键词): ③查询按userId分组的Moment数组', 'JSON', '/get', '{"[]":{"count":10,"Moment":{"@column":"userId,id","@group":"userId,id"}}}', null, null, null, null, '2018-03-24 22:28:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901746809, 0, 88888, 0, 2, '功能符(对象关键词): ②查询按 name降序、id默认顺序 排序的User数组', 'JSON', '/get', '{"[]":{"count":10,"User":{"@column":"name,id","@order":"name-,id"}}}', null, null, null, null, '2018-03-24 22:29:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901787203, 0, 88888, 0, 2, '功能符(对象关键词): ①只查询id,sex,name这几列并且请求结果也按照这个顺序', 'JSON', '/get', '{"User":{"@column":"id,sex,name","id":38710}}', null, null, null, null, '2018-03-24 22:29:47.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521902033332, 0, 88888, 0, 2, '功能符(数组关键词): ③查询User数组和对应的User总数', 'JSON', '/get', '{"[]":{"query":2,"count":5,"User":{}},"total@":"/[]/total"}', null, null, null, null, '2018-03-24 22:33:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521902069871, 0, 88888, 0, 2, '功能符(数组关键词): ②查询第3页的User数组,每页5个', 'JSON', '/get', '{"[]":{"count":5,"page":3,"User":{}}}', null, null, null, null, '2018-03-24 22:34:29.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521902110680, 0, 88888, 0, 2, '功能符(数组关键词): ①查询User数组,最多5个', 'JSON', '/get', '{"[]":{"count":5,"User":{}}}', null, null, null, null, '2018-03-24 22:35:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521903761689, 0, 88888, 0, 2, '功能符(逻辑运算): ③ ! 非运算', 'JSON', '/head', '{"User":{"id!{}":[82001,38710]}}', null, null, null, null, '2018-03-24 23:02:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521903828410, 0, 88888, 0, 2, '功能符(逻辑运算): ② | 或运算', 'JSON', '/head', '{"User":{"id|{}":">90000,<=80000"}}', null, null, null, null, '2018-03-24 23:03:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521903882830, 0, 88888, 0, 2, '功能符(逻辑运算): ① & 与运算', 'JSON', '/head', '{"User":{"id&{}":">80000,<=90000"}}', null, null, null, null, '2018-03-24 23:04:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904098111, 0, 88888, 0, 2, '功能符: 减少 或 去除', 'JSON', '/put/balance', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901682846, 0, 88888, 0, 2, '功能符(对象关键词): ③查询按userId分组的Moment数组', 'JSON', '/get', '{"[]":{"count":10,"Moment":{"@column":"userId,id","@group":"userId,id"}}}', null, null, null, null, '2018-03-24 22:28:02.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901746809, 0, 88888, 0, 2, '功能符(对象关键词): ②查询按 name降序、id默认顺序 排序的User数组', 'JSON', '/get', '{"[]":{"count":10,"User":{"@column":"name,id","@order":"name-,id"}}}', null, null, null, null, '2018-03-24 22:29:06.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521901787203, 0, 88888, 0, 2, '功能符(对象关键词): ①只查询id,sex,name这几列并且请求结果也按照这个顺序', 'JSON', '/get', '{"User":{"@column":"id,sex,name","id":38710}}', null, null, null, null, '2018-03-24 22:29:47.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521902033332, 0, 88888, 0, 2, '功能符(数组关键词): ③查询User数组和对应的User总数', 'JSON', '/get', '{"[]":{"query":2,"count":5,"User":{}},"total@":"/[]/total"}', null, null, null, null, '2018-03-24 22:33:53.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521902069871, 0, 88888, 0, 2, '功能符(数组关键词): ②查询第3页的User数组,每页5个', 'JSON', '/get', '{"[]":{"count":5,"page":3,"User":{}}}', null, null, null, null, '2018-03-24 22:34:29.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521902110680, 0, 88888, 0, 2, '功能符(数组关键词): ①查询User数组,最多5个', 'JSON', '/get', '{"[]":{"count":5,"User":{}}}', null, null, null, null, '2018-03-24 22:35:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521903761689, 0, 88888, 0, 2, '功能符(逻辑运算): ③ ! 非运算', 'JSON', '/head', '{"User":{"id!{}":[82001,38710]}}', null, null, null, null, '2018-03-24 23:02:41.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521903828410, 0, 88888, 0, 2, '功能符(逻辑运算): ② | 或运算', 'JSON', '/head', '{"User":{"id|{}":">90000,<=80000"}}', null, null, null, null, '2018-03-24 23:03:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521903882830, 0, 88888, 0, 2, '功能符(逻辑运算): ① & 与运算', 'JSON', '/head', '{"User":{"id&{}":">80000,<=90000"}}', null, null, null, null, '2018-03-24 23:04:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904098111, 0, 88888, 0, 2, '功能符: 减少 或 去除', 'JSON', '/put/balance', '{ "Privacy": { "id": 82001, @@ -448,7 +448,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "_payPassword": "123456" },"tag": "Privacy" }', null, null, null, null, '2018-03-24 23:08:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904162066, 0, 88888, 0, 2, '功能符: 增加 或 扩展', 'JSON', '/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904162066, 0, 88888, 0, 2, '功能符: 增加 或 扩展', 'JSON', '/put', '{ "Moment": { "id": 15, "praiseUserIdList+": [ @@ -457,56 +457,56 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, }, "tag": "Moment" }', null, null, null, null, '2018-03-24 23:09:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904337054, 0, 88888, 0, 2, '功能符: 新建别名', 'JSON', '/get', '{"Comment":{"@column":"id,toId:parentId","id":51}}', null, null, null, null, '2018-03-24 23:12:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904394042, 0, 88888, 0, 2, '功能符: 正则匹配', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name~":"^[0-9]+$"}}}', null, null, null, null, '2018-03-24 23:13:14.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904437584, 0, 88888, 0, 2, '功能符: 模糊搜索', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name$":"%m%"}}}', null, null, null, null, '2018-03-24 23:13:57.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904547992, 0, 88888, 0, 2, '功能符: 引用赋值', 'JSON', '/get', '{"Moment":{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904337054, 0, 88888, 0, 2, '功能符: 新建别名', 'JSON', '/get', '{"Comment":{"@column":"id,toId:parentId","id":51}}', null, null, null, null, '2018-03-24 23:12:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904394042, 0, 88888, 0, 2, '功能符: 正则匹配', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name~":"^[0-9]+$"}}}', null, null, null, null, '2018-03-24 23:13:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904437584, 0, 88888, 0, 2, '功能符: 模糊搜索', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name$":"%m%"}}}', null, null, null, null, '2018-03-24 23:13:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904547992, 0, 88888, 0, 2, '功能符: 引用赋值', 'JSON', '/get', '{"Moment":{ "userId":38710 }, "User":{ "id@":"/Moment/userId" }}', null, null, null, null, '2018-03-24 23:15:47.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904617127, 0, 88888, 0, 2, '功能符: 远程调用函数', 'JSON', '/get', '{ "Moment": { "id": 301, "@column": "userId,praiseUserIdList", "isPraised()": "isContain(praiseUserIdList,userId)" } }', null, null, null, null, '2018-03-24 23:16:57.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904653622, 0, 88888, 0, 2, '功能符: 包含选项范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"contactIdList<>":38710}}}', null, null, null, null, '2018-03-24 23:17:33.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904698935, 0, 88888, 0, 2, '功能符: 匹配条件范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"id{}":"<=80000,>90000"}}}', null, null, null, null, '2018-03-24 23:18:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904756674, 0, 88888, 0, 2, '功能符: 查询数组', 'JSON', '/get', '{"User[]":{"count":3,"User":{}}}', null, null, null, null, '2018-03-24 23:19:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905263828, 0, 88888, 82001, 2, '操作方法(DELETE): 删除数据', 'JSON', '/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904617127, 0, 88888, 0, 2, '功能符: 远程调用函数', 'JSON', '/get', '{ "Moment": { "id": 301, "@column": "userId,praiseUserIdList", "isPraised()": "isContain(praiseUserIdList,userId)" } }', null, null, null, null, '2018-03-24 23:16:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904653622, 0, 88888, 0, 2, '功能符: 包含选项范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"contactIdList<>":38710}}}', null, null, null, null, '2018-03-24 23:17:33.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904698935, 0, 88888, 0, 2, '功能符: 匹配条件范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"id{}":"<=80000,>90000"}}}', null, null, null, null, '2018-03-24 23:18:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521904756674, 0, 88888, 0, 2, '功能符: 查询数组', 'JSON', '/get', '{"User[]":{"count":3,"User":{}}}', null, null, null, null, '2018-03-24 23:19:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905263828, 0, 88888, 82001, 2, '操作方法(DELETE): 删除数据', 'JSON', '/delete', '{ "Moment":{ "id":120 }, "tag":"Moment" }', null, null, null, null, '2018-03-24 23:27:43.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905599150, 0, 88888, 82001, 2, '操作方法(PUT): 修改数据,只修改所传的字段', 'JSON', '/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905599150, 0, 88888, 82001, 2, '操作方法(PUT): 修改数据,只修改所传的字段', 'JSON', '/put', '{ "Moment":{ "id":235, "content":"APIJSON,let interfaces and documents go to hell !" }, "tag":"Moment" }', null, null, null, null, '2018-03-24 23:33:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905680680, 0, 88888, 82001, 2, '操作方法(POST): 新增数据', 'JSON', '/post', '{ "Moment": { "content": "APIJSON,let interfaces and documents go to hell !" }, "tag": "Moment" }', null, null, null, null, '2018-03-24 23:34:40.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905787850, 0, 88888, 82001, 2, '操作方法(HEADS): 安全/私密获取数量,用于获取银行卡数量等 对安全性要求高的数据总数', 'JSON', '/heads', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905680680, 0, 88888, 82001, 2, '操作方法(POST): 新增数据', 'JSON', '/post', '{ "Moment": { "content": "APIJSON,let interfaces and documents go to hell !" }, "tag": "Moment" }', null, null, null, null, '2018-03-24 23:34:40.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905787850, 0, 88888, 82001, 2, '操作方法(HEADS): 安全/私密获取数量,用于获取银行卡数量等 对安全性要求高的数据总数', 'JSON', '/heads', '{ "Login": { "userId": 38710,"type":1 }, "tag": "Login" }', null, null, null, null, '2018-03-24 23:36:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905868719, 0, 88888, 82001, 2, '操作方法(GETS): 安全/私密获取数据,用于获取钱包等 对安全性要求高的数据', 'JSON', '/gets', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905868719, 0, 88888, 82001, 2, '操作方法(GETS): 安全/私密获取数据,用于获取钱包等 对安全性要求高的数据', 'JSON', '/gets', '{ "Privacy": { "id": 82001 }, "tag": "Privacy" }', null, null, null, null, '2018-03-24 23:37:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905895591, 0, 88888, 82001, 2, '操作方法(HEAD): 普通获取数量,可用浏览器调试', 'JSON', '/head', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905895591, 0, 88888, 82001, 2, '操作方法(HEAD): 普通获取数量,可用浏览器调试', 'JSON', '/head', '{ "Moment":{ "userId":38710 } }', null, null, null, null, '2018-03-24 23:38:15.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905913188, 0, 88888, 82001, 2, '操作方法(GET): 普通获取数据,可用浏览器调试', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521905913188, 0, 88888, 82001, 2, '操作方法(GET): 普通获取数据,可用浏览器调试', 'JSON', '/get', '{ "Moment":{ "id":235 } }', null, null, null, null, '2018-03-24 23:38:33.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521906240332, 0, 88888, 0, 2, 'User发布的Moment列表,每个Moment包括 1.发布者User 2.前3条Comment: ③不查已获取的User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521906240332, 0, 88888, 0, 2, 'User发布的Moment列表,每个Moment包括 1.发布者User 2.前3条Comment: ③不查已获取的User', 'JSON', '/get', '{ "[]":{ "page":0, "count":3, @@ -521,7 +521,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-03-24 23:44:00.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521906265960, 0, 88888, 0, 2, 'User发布的Moment列表,每个Moment包括 1.发布者User 2.前3条Comment: ②省去重复的User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521906265960, 0, 88888, 0, 2, 'User发布的Moment列表,每个Moment包括 1.发布者User 2.前3条Comment: ②省去重复的User', 'JSON', '/get', '{ "User":{ "id":38710 }, @@ -539,7 +539,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-03-24 23:44:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521906517001, 0, 88888, 0, 2, 'User发布的Moment列表,每个Moment包括 1.发布者User 2.前3条Comment: ①指定id', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521906517001, 0, 88888, 0, 2, 'User发布的Moment列表,每个Moment包括 1.发布者User 2.前3条Comment: ①指定id', 'JSON', '/get', '{ "[]": { "page": 0, "count": 3, @@ -552,7 +552,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-03-24 23:48:37.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907009308, 0, 88888, 0, 2, 'Moment列表,每个Moment包括 1.发布者User 2.前3条Comment', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907009308, 0, 88888, 0, 2, 'Moment列表,每个Moment包括 1.发布者User 2.前3条Comment', 'JSON', '/get', '{ "[]":{ "page":0, "count":3, @@ -568,7 +568,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-03-24 23:56:49.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907303540, 0, 88888, 0, 2, 'User列表', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907303540, 0, 88888, 0, 2, 'User列表', 'JSON', '/get', '{ "User[]":{ "page":0, "count":3, @@ -577,7 +577,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-03-25 00:01:43.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907317871, 0, 88888, 0, 2, 'Moment和对应的User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907317871, 0, 88888, 0, 2, 'Moment和对应的User', 'JSON', '/get', '{ "Moment":{ "userId":38710 }, @@ -585,12 +585,12 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "id":38710 } }', null, null, null, null, '2018-03-25 00:01:57.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333041, 0, 88888, 0, 2, 'User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333041, 0, 88888, 0, 2, 'User', 'JSON', '/get', '{ "User":{ "id":38710 } }', null, null, null, null, '2018-03-25 00:02:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333043, 0, 88888, 82002, 3, '微信个人资料-用户信息+最近3个有照片的动态的第0张照片', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333043, 0, 88888, 82002, 3, '微信个人资料-用户信息+最近3个有照片的动态的第0张照片', 'JSON', '/get', '{ "User": { "id": 82002 }, @@ -604,8 +604,8 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-03-25 00:03:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544884206003, 0, 88888, 0, 3, 'Moment@User each with condition', 'JSON', '/get', '{ "[]": { "join": "@/User/id@", "Moment": { "content~": "a", "@column": "id,userId,content" }, "User": { "sex": 1, "@column": "id,name", "id@": "/Moment/userId" } } }', null, null, null, null, '2018-12-15 22:13:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546881887523, 0, 82001, 82001, 1, '子查询 WHERE id=(SELECT min(userId) FROM Comment)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544884206003, 0, 88888, 0, 3, 'Moment@User each with condition', 'JSON', '/get', '{ "[]": { "join": "@/User/id@", "Moment": { "content~": "a", "@column": "id,userId,content" }, "User": { "sex": 1, "@column": "id,name", "id@": "/Moment/userId" } } }', null, null, null, null, '2018-12-15 22:13:26.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546881887523, 0, 82001, 82001, 1, '子查询 WHERE id=(SELECT min(userId) FROM Comment)', 'JSON', '/get', '{ "User": { "id@": { "from": "Comment", @@ -615,7 +615,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-02-24 22:28:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333044, 0, 82001, 82002, 3, '微信个人资料-用户信息+最近3个有照片的动态的第0张照片', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333044, 0, 82001, 82002, 3, '微信个人资料-用户信息+最近3个有照片的动态的第0张照片', 'JSON', '/get', '{ "User": { "id": 82002 }, @@ -734,8 +734,8 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2018-03-25 00:03:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333046, 0, 88888, 0, 2, '获取粉丝的动态列表', 'JSON', '/get', '{ "Moment[]": { "join": "&/User/id@", "Moment": {}, "User": { "id@": "/Moment/userId", "contactIdList<>": 82001, "@column": "id" } } }', null, null, null, null, '2018-03-25 00:03:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907546129, 0, 88888, 0, 2, '获取类似微信朋友圈的动态列表', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907333046, 0, 88888, 0, 2, '获取粉丝的动态列表', 'JSON', '/get', '{ "Moment[]": { "join": "&/User/id@", "Moment": {}, "User": { "id@": "/Moment/userId", "contactIdList<>": 82001, "@column": "id" } } }', null, null, null, null, '2018-03-25 00:03:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907546129, 0, 88888, 0, 2, '获取类似微信朋友圈的动态列表', 'JSON', '/get', '{ "[]": { "page": 0, "count": 2, @@ -754,13 +754,13 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-03-25 00:05:46.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907570452, 0, 88888, 0, 2, '获取动态及发布者用户', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907570452, 0, 88888, 0, 2, '获取动态及发布者用户', 'JSON', '/get', '{ "Moment": {}, "User": { "id@": "Moment/userId" } }', null, null, null, null, '2018-03-25 00:06:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907587430, 0, 88888, 0, 2, '获取用户列表', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907587430, 0, 88888, 0, 2, '获取用户列表', 'JSON', '/get', '{ "[]": { "count": 3, "User": { @@ -768,47 +768,47 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-03-25 00:06:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907601299, 0, 88888, 0, 2, '获取用户', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1521907601299, 0, 88888, 0, 2, '获取用户', 'JSON', '/get', '{ "User":{ } }', null, null, null, null, '2018-03-25 00:06:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905263828, 0, 82001, 0, 2, '操作方法(DELETE): 删除数据', 'JSON', '/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905263828, 0, 82001, 0, 2, '操作方法(DELETE): 删除数据', 'JSON', '/delete', '{ "Moment":{ "id":120 }, "tag":"Moment" }', null, null, null, null, '2018-03-24 21:27:43.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905599150, 0, 82001, 0, 2, '操作方法(PUT): 修改数据,只修改所传的字段', 'JSON', '/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905599150, 0, 82001, 0, 2, '操作方法(PUT): 修改数据,只修改所传的字段', 'JSON', '/put', '{ "Moment":{ "id":235, "content":"APIJSON,let interfaces and documents go to hell !" }, "tag":"Moment" }', null, null, null, null, '2018-03-24 21:33:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905680680, 0, 82001, 0, 2, '操作方法(POST): 新增数据', 'JSON', '/post', '{ "Moment": { "content": "APIJSON,let interfaces and documents go to hell !" }, "tag": "Moment" }', null, null, null, null, '2018-03-24 21:34:40.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905787850, 0, 82001, 0, 2, '操作方法(HEADS): 安全/私密获取数量,用于获取银行卡数量等 对安全性要求高的数据总数', 'JSON', '/heads', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905680680, 0, 82001, 0, 2, '操作方法(POST): 新增数据', 'JSON', '/post', '{ "Moment": { "content": "APIJSON,let interfaces and documents go to hell !" }, "tag": "Moment" }', null, null, null, null, '2018-03-24 21:34:40.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905787850, 0, 82001, 0, 2, '操作方法(HEADS): 安全/私密获取数量,用于获取银行卡数量等 对安全性要求高的数据总数', 'JSON', '/heads', '{ "Login": { "userId": 38710,"type":1 }, "tag": "Login" }', null, null, null, null, '2018-03-24 21:36:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905868719, 0, 82001, 0, 2, '操作方法(GETS): 安全/私密获取数据,用于获取钱包等 对安全性要求高的数据', 'JSON', '/gets', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905868719, 0, 82001, 0, 2, '操作方法(GETS): 安全/私密获取数据,用于获取钱包等 对安全性要求高的数据', 'JSON', '/gets', '{ "Privacy": { "id": 82001 }, "tag": "Privacy" }', null, null, null, null, '2018-03-24 21:37:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905895591, 0, 82001, 0, 2, '操作方法(HEAD): 普通获取数量,可用浏览器调试', 'JSON', '/head', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905895591, 0, 82001, 0, 2, '操作方法(HEAD): 普通获取数量,可用浏览器调试', 'JSON', '/head', '{ "Moment":{ "userId":38710 } }', null, null, null, null, '2018-03-24 21:38:15.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905913188, 0, 82001, 0, 2, '操作方法(GET): 普通获取数据,可用浏览器调试', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1522905913188, 0, 82001, 0, 2, '操作方法(GET): 普通获取数据,可用浏览器调试', 'JSON', '/get', '{ "Moment":{ "id":235 } }', null, null, null, null, '2018-03-24 21:38:33.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544881887527, 0, 88888, 0, 3, 'Moment INNER JOIN User LEFT JOIN Comment', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544881887527, 0, 88888, 0, 3, 'Moment INNER JOIN User LEFT JOIN Comment', 'JSON', '/get', '{ "[]": { "count": 10, "page": 0, @@ -830,7 +830,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-12-15 21:51:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544882007411, 0, 88888, 0, 3, 'Moment LEFT JOIN User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544882007411, 0, 88888, 0, 3, 'Moment LEFT JOIN User', 'JSON', '/get', '{ "[]": { "join": "User each with condition', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544883250598, 0, 88888, 0, 3, 'Moment>User each with condition', 'JSON', '/get', '{ "[]": { "join": ">/User/id@", "Moment": { @@ -1085,7 +1085,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-12-15 22:14:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544883278939, 0, 88888, 0, 3, 'Moment@User each with condition', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544883278939, 0, 88888, 0, 3, 'Moment@User each with condition', 'JSON', '/get', '{ "[]": { "join": "@/User/id@", "Moment": { @@ -1099,7 +1099,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-12-15 22:14:38.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1544883352884, 0, 88888, 0, 3, 'Moment90000,<=80000"}}', null, null, null, null, '2018-03-24 23:03:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546903882830, 0, 82001, 0, 2, '功能符(逻辑运算): ① & 与运算', 'JSON', '/head', '{"User":{"id&{}":">80000,<=90000"}}', null, null, null, null, '2018-03-24 23:04:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904098111, 0, 82001, 82001, 2, '功能符: 减少 或 去除', 'JSON', '/put/balance', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546903828410, 0, 82001, 0, 2, '功能符(逻辑运算): ② | 或运算', 'JSON', '/head', '{"User":{"id|{}":">90000,<=80000"}}', null, null, null, null, '2018-03-24 23:03:48.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546903882830, 0, 82001, 0, 2, '功能符(逻辑运算): ① & 与运算', 'JSON', '/head', '{"User":{"id&{}":">80000,<=90000"}}', null, null, null, null, '2018-03-24 23:04:42.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904098111, 0, 82001, 82001, 2, '功能符: 减少 或 去除', 'JSON', '/put/balance', '{ "Privacy": { "id": 82001, @@ -1623,10 +1623,10 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "_payPassword": "123456" },"tag": "Privacy" }', null, null, null, null, '2018-03-24 23:08:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837054, 0, 1490109742863, 0, 3, 'getSfaDealerStoreList', 'JSON', '/dms/dealer_store_list/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837054, 0, 1490109742863, 0, 3, 'getSfaDealerStoreList', 'JSON', '/dms/dealer_store_list/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904162066, 0, 82001, 82001, 2, '功能符: 增加 或 扩展', 'JSON', '/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904162066, 0, 82001, 82001, 2, '功能符: 增加 或 扩展', 'JSON', '/put', '{ "Moment": { "id": 15, "praiseUserIdList+": [ @@ -1635,21 +1635,21 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, }, "tag": "Moment" }', null, null, null, null, '2018-03-24 23:09:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904337054, 0, 82001, 0, 2, '功能符: 新建别名', 'JSON', '/get', '{"Comment":{"@column":"id,toId:parentId","id":51}}', null, null, null, null, '2018-03-24 23:12:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904394042, 0, 82001, 0, 2, '功能符: 正则匹配', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name~":"^[0-9]+$"}}}', null, null, null, null, '2018-03-24 23:13:14.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904437584, 0, 82001, 0, 2, '功能符: 模糊搜索', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name$":"%m%"}}}', null, null, null, null, '2018-03-24 23:13:57.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904547992, 0, 82001, 0, 2, '功能符: 引用赋值', 'JSON', '/get', '{"Moment":{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904337054, 0, 82001, 0, 2, '功能符: 新建别名', 'JSON', '/get', '{"Comment":{"@column":"id,toId:parentId","id":51}}', null, null, null, null, '2018-03-24 23:12:17.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904394042, 0, 82001, 0, 2, '功能符: 正则匹配', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name~":"^[0-9]+$"}}}', null, null, null, null, '2018-03-24 23:13:14.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904437584, 0, 82001, 0, 2, '功能符: 模糊搜索', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name$":"%m%"}}}', null, null, null, null, '2018-03-24 23:13:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904547992, 0, 82001, 0, 2, '功能符: 引用赋值', 'JSON', '/get', '{"Moment":{ "userId":38710 }, "User":{ "id@":"/Moment/userId" }}', null, null, null, null, '2018-03-24 23:15:47.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904617127, 0, 82001, 0, 2, '功能符: 远程调用函数', 'JSON', '/get', '{ "Moment": { "id": 301, "@column": "userId,praiseUserIdList", "isPraised()": "isContain(praiseUserIdList,userId)" } }', null, null, null, null, '2018-03-24 23:16:57.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904653622, 0, 82001, 0, 2, '功能符: 包含选项范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"contactIdList<>":38710}}}', null, null, null, null, '2018-03-24 23:17:33.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904698935, 0, 82001, 0, 2, '功能符: 匹配条件范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"id{}":"<=80000,>90000"}}}', null, null, null, null, '2018-03-24 23:18:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904756674, 0, 82001, 0, 2, '功能符: 查询数组', 'JSON', '/get', '{"User[]":{"count":3,"User":{}}}', null, null, null, null, '2018-03-24 23:19:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546907333046, 0, 82001, 0, 1, '获取粉丝的动态列表', 'JSON', '/get', '{ "Moment[]": { "join": "&/User/id@", "Moment": {}, "User": { "id@": "/Moment/userId", "contactIdList<>": 82001, "@column": "id" } } }', null, null, null, null, '2018-03-25 00:03:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1547401498195, 0, 88888, 0, 1, '子查询FROM和IN', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904617127, 0, 82001, 0, 2, '功能符: 远程调用函数', 'JSON', '/get', '{ "Moment": { "id": 301, "@column": "userId,praiseUserIdList", "isPraised()": "isContain(praiseUserIdList,userId)" } }', null, null, null, null, '2018-03-24 23:16:57.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904653622, 0, 82001, 0, 2, '功能符: 包含选项范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"contactIdList<>":38710}}}', null, null, null, null, '2018-03-24 23:17:33.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904698935, 0, 82001, 0, 2, '功能符: 匹配条件范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"id{}":"<=80000,>90000"}}}', null, null, null, null, '2018-03-24 23:18:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546904756674, 0, 82001, 0, 2, '功能符: 查询数组', 'JSON', '/get', '{"User[]":{"count":3,"User":{}}}', null, null, null, null, '2018-03-24 23:19:16.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1546907333046, 0, 82001, 0, 1, '获取粉丝的动态列表', 'JSON', '/get', '{ "Moment[]": { "join": "&/User/id@", "Moment": {}, "User": { "id@": "/Moment/userId", "contactIdList<>": 82001, "@column": "id" } } }', null, null, null, null, '2018-03-25 00:03:13.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1547401498195, 0, 88888, 0, 1, '子查询FROM和IN', 'JSON', '/get', '{ "sql@": { "from": "Comment", "Comment": { @@ -1671,7 +1671,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2019-01-14 01:44:58.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385621907, 0, 82001, 0, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385621907, 0, 82001, 0, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ "subquery@": { "from": "Comment", "Comment": { @@ -1857,7 +1857,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2018-02-24 22:28:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385621908, 0, 88888, 0, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385621908, 0, 88888, 0, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ "subquery@": { "from": "Comment", "Comment": { @@ -1872,7 +1872,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-02-24 22:28:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385677607, 0, 82001, 0, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385677607, 0, 82001, 0, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ "subquery@": { "from": "Comment", "Comment": { @@ -2023,7 +2023,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2018-02-24 22:28:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385677608, 0, 88888, 0, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1556385677608, 0, 88888, 0, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ "subquery@": { "from": "Comment", "Comment": { @@ -2038,7 +2038,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2018-02-24 22:28:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1558944411696, 0, 82001, 82001, 3, '关联查询 Comment.userId = User.id', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1558944411696, 0, 82001, 82001, 3, '关联查询 Comment.userId = User.id', 'JSON', '/get', '{ "User": { "id": 82001 }, @@ -2048,7 +2048,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2019-05-27 16:06:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1559995734352, 0, 82001, 0, 3, 'get 自定义关键词和远程函数的应用', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1559995734352, 0, 82001, 0, 3, 'get 自定义关键词和远程函数的应用', 'JSON', '/get', '{ "User": { "id": 82001, "@column": "contactIdList", @@ -2140,7 +2140,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 3、设定自定义关键词和值"@value": 82006; 4、调用远程函数isContain判断 contactIdList 中是否存在值为82006的id; 5、判断结果看 isContect的值。'); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1560075285563, 0, 82001, 0, 3, 'Comment JOIN User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1560075285563, 0, 82001, 0, 3, 'Comment JOIN User', 'JSON', '/get', '{ "[]": { "join": "0",...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634864, 0, 1564369325432, 0, 2, '操作方法(DELETE): 删除数据', 'JSON', '/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634864, 0, 1564369325432, 0, 2, '操作方法(DELETE): 删除数据', 'JSON', '/delete', '{ "Moment":{ "id":120 }, "tag":"Moment" }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634865, 0, 1564369325432, 0, 2, '操作方法(PUT): 修改数据,只修改所传的字段', 'JSON', '/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634865, 0, 1564369325432, 0, 2, '操作方法(PUT): 修改数据,只修改所传的字段', 'JSON', '/put', '{ "Moment":{ "id":235, "content":"APIJSON,let interfaces and documents go to hell !" }, "tag":"Moment" }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634866, 0, 1564369325432, 0, 2, '操作方法(POST): 新增数据', 'JSON', '/post', '{ "Moment": { "content": "APIJSON,let interfaces and documents go to hell !" }, "tag": "Moment" }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634867, 0, 1564369325432, 0, 2, '操作方法(HEADS): 安全/私密获取数量,用于获取银行卡数量等 对安全性要求高的数据总数', 'JSON', '/heads', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634866, 0, 1564369325432, 0, 2, '操作方法(POST): 新增数据', 'JSON', '/post', '{ "Moment": { "content": "APIJSON,let interfaces and documents go to hell !" }, "tag": "Moment" }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634867, 0, 1564369325432, 0, 2, '操作方法(HEADS): 安全/私密获取数量,用于获取银行卡数量等 对安全性要求高的数据总数', 'JSON', '/heads', '{ "Login": { "userId": 38710,"type":1 }, "tag": "Login" }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634868, 0, 1564369325432, 0, 2, '操作方法(GETS): 安全/私密获取数据,用于获取钱包等 对安全性要求高的数据', 'JSON', '/gets', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634868, 0, 1564369325432, 0, 2, '操作方法(GETS): 安全/私密获取数据,用于获取钱包等 对安全性要求高的数据', 'JSON', '/gets', '{ "Privacy": { "id": 82001 }, "tag": "Privacy" }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634869, 0, 1564369325432, 0, 2, '操作方法(HEAD): 普通获取数量,可用浏览器调试', 'JSON', '/head', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634869, 0, 1564369325432, 0, 2, '操作方法(HEAD): 普通获取数量,可用浏览器调试', 'JSON', '/head', '{ "Moment":{ "userId":38710 } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634870, 0, 1564369325432, 0, 2, '操作方法(GET): 普通获取数据,可用浏览器调试', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634870, 0, 1564369325432, 0, 2, '操作方法(GET): 普通获取数据,可用浏览器调试', 'JSON', '/get', '{ "Moment":{ "id":235 } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634871, 0, 1564369325432, 82001, 3, '获取类似微信朋友圈的动态列表', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634871, 0, 1564369325432, 82001, 3, '获取类似微信朋友圈的动态列表', 'JSON', '/get', '{ "[]": { "page": 0, "count": 2, @@ -2760,13 +2760,13 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, }, "Comment[]": { "...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634872, 0, 1564369325432, 82001, 3, '获取动态及发布者用户', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634872, 0, 1564369325432, 82001, 3, '获取动态及发布者用户', 'JSON', '/get', '{ "Moment": {}, "User": { "id@": "Moment/userId" } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634873, 0, 1564369325432, 82001, 3, '获取用户列表', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634873, 0, 1564369325432, 82001, 3, '获取用户列表', 'JSON', '/get', '{ "[]": { "count": 3, "User": { @@ -2774,11 +2774,11 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634874, 0, 1564369325432, 82001, 3, '获取用户', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634874, 0, 1564369325432, 82001, 3, '获取用户', 'JSON', '/get', '{ "User":{ } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634875, 0, 1564369325432, 82001, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634875, 0, 1564369325432, 82001, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ "[]": { "User": { "id{}@": { @@ -2789,7 +2789,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } }, "@column": "id...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634876, 0, 1564369325432, 82001, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634876, 0, 1564369325432, 82001, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ "[]": { "User": { "id}{@": { @@ -2800,7 +2800,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } }, "@column": "id...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634877, 0, 1564369325432, 82001, 1, '子查询 WHERE id=(SELECT min(userId) FROM Comment)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634877, 0, 1564369325432, 82001, 1, '子查询 WHERE id=(SELECT min(userId) FROM Comment)', 'JSON', '/get', '{ "User": { "id@": { "from": "Comment", @@ -2810,9 +2810,9 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847049, 0, 1490109742863, 0, 3, 'test2', 'PARAM', '/test/test2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847049, 0, 1490109742863, 0, 3, 'test2', 'PARAM', '/test/test2', '{ }', null, null, null, null, '2022-02-09 15:47:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634883, 0, 1564369325432, 0, 1, 'Comment INNER JOIN User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634883, 0, 1564369325432, 0, 1, 'Comment INNER JOIN User', 'JSON', '/get', '{ "[]": { "join": "&/User/id@", "Comment": { @@ -2825,7 +2825,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "t" ], "@column":...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634884, 0, 1564369325432, 0, 1, 'Moment APP JOIN User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634884, 0, 1564369325432, 0, 1, 'Moment APP JOIN User', 'JSON', '/get', '{ "[]": { "join": "@/User/id@", "Moment": { @@ -2837,7 +2837,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634885, 0, 1564369325432, 0, 1, 'Comment APP JOIN User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634885, 0, 1564369325432, 0, 1, 'Comment APP JOIN User', 'JSON', '/get', '{ "[]": { "join": "@/User/id@", "Comment": { @@ -2850,7 +2850,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "t" ], "@column":...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634886, 0, 1564369325432, 0, 1, '朋友圈 LEFT JOIN', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634886, 0, 1564369325432, 0, 1, '朋友圈 LEFT JOIN', 'JSON', '/get', '{ "[]": { "count": 5, "page": 0, @@ -2863,7 +2863,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "@column": "id,name,head" }, ...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634887, 0, 1564369325432, 0, 1, '朋友圈 APP JOIN', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634887, 0, 1564369325432, 0, 1, '朋友圈 APP JOIN', 'JSON', '/get', '{ "[]": { "count": 5, "page": 0, @@ -2876,13 +2876,13 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "@column": "id,name,head" }, ...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634888, 0, 1564369325432, 0, 2, '功能符(对象关键词): ⑤从pictureList获取第0张图片:', 'JSON', '/get', '{ "User": { "id": 38710, "@position": 0, "firstPicture()": "getFromArray(pictureList,@position)" } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634889, 0, 1564369325432, 0, 2, '功能符(数组关键词): ②查询第3页的User数组,每页5个', 'JSON', '/get', '{"[]":{"count":5,"page":3,"User":{}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634890, 0, 1564369325432, 0, 2, '功能符(数组关键词): ①查询User数组,最多5个', 'JSON', '/get', '{"[]":{"count":5,"User":{}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634891, 0, 1564369325432, 0, 2, '功能符(逻辑运算): ③ ! 非运算', 'JSON', '/head', '{"User":{"id!{}":[82001,38710]}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634892, 0, 1564369325432, 0, 2, '功能符(逻辑运算): ② | 或运算', 'JSON', '/head', '{"User":{"id|{}":">90000,<=80000"}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634893, 0, 1564369325432, 0, 2, '功能符(逻辑运算): ① & 与运算', 'JSON', '/head', '{"User":{"id&{}":">80000,<=90000"}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634894, 0, 1564369325432, 82001, 2, '功能符: 减少 或 去除', 'JSON', '/put/balance', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634888, 0, 1564369325432, 0, 2, '功能符(对象关键词): ⑤从pictureList获取第0张图片:', 'JSON', '/get', '{ "User": { "id": 38710, "@position": 0, "firstPicture()": "getFromArray(pictureList,@position)" } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634889, 0, 1564369325432, 0, 2, '功能符(数组关键词): ②查询第3页的User数组,每页5个', 'JSON', '/get', '{"[]":{"count":5,"page":3,"User":{}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634890, 0, 1564369325432, 0, 2, '功能符(数组关键词): ①查询User数组,最多5个', 'JSON', '/get', '{"[]":{"count":5,"User":{}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634891, 0, 1564369325432, 0, 2, '功能符(逻辑运算): ③ ! 非运算', 'JSON', '/head', '{"User":{"id!{}":[82001,38710]}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634892, 0, 1564369325432, 0, 2, '功能符(逻辑运算): ② | 或运算', 'JSON', '/head', '{"User":{"id|{}":">90000,<=80000"}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634893, 0, 1564369325432, 0, 2, '功能符(逻辑运算): ① & 与运算', 'JSON', '/head', '{"User":{"id&{}":">80000,<=90000"}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634894, 0, 1564369325432, 82001, 2, '功能符: 减少 或 去除', 'JSON', '/put/balance', '{ "Privacy": { "id": 82001, @@ -2890,7 +2890,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "_payPassword": "123456" },"tag": "Privacy" }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634895, 0, 1564369325432, 82001, 2, '功能符: 增加 或 扩展', 'JSON', '/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634895, 0, 1564369325432, 82001, 2, '功能符: 增加 或 扩展', 'JSON', '/put', '{ "Moment": { "id": 15, "praiseUserIdList+": [ @@ -2899,21 +2899,21 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, }, "tag": "Moment" }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634896, 0, 1564369325432, 0, 2, '功能符: 新建别名', 'JSON', '/get', '{"Comment":{"@column":"id,toId:parentId","id":51}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634897, 0, 1564369325432, 0, 2, '功能符: 正则匹配', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name~":"^[0-9]+$"}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634898, 0, 1564369325432, 0, 2, '功能符: 模糊搜索', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name$":"%m%"}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634899, 0, 1564369325432, 0, 2, '功能符: 引用赋值', 'JSON', '/get', '{"Moment":{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634896, 0, 1564369325432, 0, 2, '功能符: 新建别名', 'JSON', '/get', '{"Comment":{"@column":"id,toId:parentId","id":51}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634897, 0, 1564369325432, 0, 2, '功能符: 正则匹配', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name~":"^[0-9]+$"}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634898, 0, 1564369325432, 0, 2, '功能符: 模糊搜索', 'JSON', '/get', '{"User[]":{"count":3,"User":{"name$":"%m%"}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634899, 0, 1564369325432, 0, 2, '功能符: 引用赋值', 'JSON', '/get', '{"Moment":{ "userId":38710 }, "User":{ "id@":"/Moment/userId" }}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634900, 0, 1564369325432, 0, 2, '功能符: 远程调用函数', 'JSON', '/get', '{ "Moment": { "id": 301, "@column": "userId,praiseUserIdList", "isPraised()": "isContain(praiseUserIdList,userId)" } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634901, 0, 1564369325432, 0, 2, '功能符: 包含选项范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"contactIdList<>":38710}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634902, 0, 1564369325432, 0, 2, '功能符: 匹配条件范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"id{}":"<=80000,>90000"}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634903, 0, 1564369325432, 0, 2, '功能符: 查询数组', 'JSON', '/get', '{"User[]":{"count":3,"User":{}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634904, 0, 1564369325432, 0, 1, '获取粉丝的动态列表', 'JSON', '/get', '{ "Moment[]": { "join": "&/User/id@", "Moment": {}, "User": { "id@": "/Moment/userId", "contactIdList<>": 82001, "@column": "id" } } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634905, 0, 1564369325432, 82001, 3, 'get test', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634900, 0, 1564369325432, 0, 2, '功能符: 远程调用函数', 'JSON', '/get', '{ "Moment": { "id": 301, "@column": "userId,praiseUserIdList", "isPraised()": "isContain(praiseUserIdList,userId)" } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634901, 0, 1564369325432, 0, 2, '功能符: 包含选项范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"contactIdList<>":38710}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634902, 0, 1564369325432, 0, 2, '功能符: 匹配条件范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"id{}":"<=80000,>90000"}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634903, 0, 1564369325432, 0, 2, '功能符: 查询数组', 'JSON', '/get', '{"User[]":{"count":3,"User":{}}}', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634904, 0, 1564369325432, 0, 1, '获取粉丝的动态列表', 'JSON', '/get', '{ "Moment[]": { "join": "&/User/id@", "Moment": {}, "User": { "id@": "/Moment/userId", "contactIdList<>": 82001, "@column": "id" } } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634905, 0, 1564369325432, 82001, 3, 'get test', 'JSON', '/get', '{ "User": { "id": 82001 }, @@ -2923,7 +2923,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634906, 0, 1564369325432, 0, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634906, 0, 1564369325432, 0, 1, '子查询 WHERE id IN(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ "subquery@": { "from": "Comment", "Comment": { @@ -2936,7 +2936,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "id{}@": "subquery", "@column": "id,sex,name" ...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634907, 0, 1564369325432, 0, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634907, 0, 1564369325432, 0, 1, '子查询 WHERE EXISTS(SELECT userId FROM Comment WHERE momentId=15)', 'JSON', '/get', '{ "subquery@": { "from": "Comment", "Comment": { @@ -2949,7 +2949,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, "id}{@": "subquery", "@column": "id,sex,name" ...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634908, 0, 1564369325432, 82001, 3, '关联查询 Comment.userId = User.id', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634908, 0, 1564369325432, 82001, 3, '关联查询 Comment.userId = User.id', 'JSON', '/get', '{ "User": { "id": 82001 }, @@ -2959,7 +2959,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } } }', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634909, 0, 1564369325432, 0, 3, 'get 自定义关键词和远程函数的应用', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634909, 0, 1564369325432, 0, 3, 'get 自定义关键词和远程函数的应用', 'JSON', '/get', '{ "User": { "id": 82001, "@column": "contactIdList", @@ -2970,7 +2970,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, /* 1、获取User表中的id==82001的数据块; 2、获取contactIdList列中的数据...', null, null, null, null, '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634910, 0, 1564369325432, 0, 3, 'Comment JOIN User', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1564483634910, 0, 1564369325432, 0, 3, 'Comment JOIN User', 'JSON', '/get', '{ "[]": { "join": "?|,toId,&,{},userId,LES+=)", @@ -3824,7 +3824,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2020-12-14 01:49:46.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881843319, 0, 99999, 0, 3, '复杂的 @having', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881843319, 0, 99999, 0, 3, '复杂的 @having', 'JSON', '/get', '{ "Comment[]": { "Comment": { "@having": "concat(id,''^'',''<'',>?|,''&'',{},:[],DROP!)<=8^3*3.14-7/4+50" @@ -3878,7 +3878,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2020-12-14 01:50:43.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881872995, 0, 99999, 0, 3, '最近7天', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881872995, 0, 99999, 0, 3, '最近7天', 'JSON', '/get', '{ "Comment": { "@having": "to_days(now())-to_days(`date`)<=7", "@raw": "@having" @@ -3887,7 +3887,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ', null, null, null, '', '2020-12-14 01:51:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881932306, 0, 99999, 0, 3, '@raw 自定义 SQL 片段', 'JSON', '/get', '{ // 类似 12306 根据始发站和到达站来过滤火车班次,班次和线路多对一,线路和站点多对多 +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1607881932306, 0, 99999, 0, 3, '@raw 自定义 SQL 片段', 'JSON', '/get', '{ // 类似 12306 根据始发站和到达站来过滤火车班次,班次和线路多对一,线路和站点多对多 "sql@": { "from": "Comment", "join": "&/Comment:to/userId@", @@ -3918,7 +3918,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ', null, null, null, '', '2020-12-14 01:52:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1608995763278, 0, 99999, 0, 3, 'SQL 函数与表达式', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1608995763278, 0, 99999, 0, 3, 'SQL 函数与表达式', 'JSON', '/get', '{ "Comment[]": { "Comment": { "@column": "userId;(toId)%3=0;group_concat(DISTINCT ''+'',id)", @@ -3995,12 +3995,12 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2020-12-26 23:16:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683609, 0, 88888, 0, 2, '视图表 ViewTable 查单条记录 /get', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683609, 0, 88888, 0, 2, '视图表 ViewTable 查单条记录 /get', 'JSON', '/get', '{ "ViewTable": {"id": 82001} } ', null, null, null, '', '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683610, 0, 88888, 0, 2, '视图表 ViewTable 查列表带条件', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683610, 0, 88888, 0, 2, '视图表 ViewTable 查列表带条件', 'JSON', '/get', '{ "ViewTable[]": { "ViewTable": { "toId": 0, @@ -4010,7 +4010,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ', null, null, null, '', '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683611, 0, 88888, 0, 2, '视图表 ViewTable INNER JOIN Moment', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683611, 0, 88888, 0, 2, '视图表 ViewTable INNER JOIN Moment', 'JSON', '/get', '{ "[]": { "join": "&/Moment/id@", "ViewTable": {"toId":0}, @@ -4021,7 +4021,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ', null, null, null, '', '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683612, 0, 88888, 0, 2, '视图表 ViewTable 子查询', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683612, 0, 88888, 0, 2, '视图表 ViewTable 子查询', 'JSON', '/get', '{ "ViewTable[]": { "ViewTable": { "momentId{}@": { @@ -4035,10 +4035,10 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ', null, null, null, '', '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837330, 0, 1490109742863, 0, 3, 'callBackMiniProgramdistibutionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/callback', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837330, 0, 1490109742863, 0, 3, 'callBackMiniProgramdistibutionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/callback', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683614, 0, 88888, 0, 2, '全局关键词', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683614, 0, 88888, 0, 2, '全局关键词', 'JSON', '/get', '{ "[]": { "count": 3, "Moment": {}, @@ -4069,8 +4069,8 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ', null, null, null, '', '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683615, 0, 88888, 0, 2, '功能符:连续范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"date%":"2017-10-01,2018-10-01"}}}', null, null, null, '', '2019-07-29 16:43:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627003810321, 0, 82003, 0, 3, '关联查询', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1612031683615, 0, 88888, 0, 2, '功能符:连续范围', 'JSON', '/get', '{"User[]":{"count":3,"User":{"date%":"2017-10-01,2018-10-01"}}}', null, null, null, '', '2019-07-29 16:43:18.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627003810321, 0, 82003, 0, 3, '关联查询', 'JSON', '/get', '{ "[]": { "Moment": { "@column": "id,date,userId", @@ -4157,7 +4157,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-07-23 09:30:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627750805078, 0, 88888, 0, 3, '用远程函数校验参数-非法参数', 'JSON', '/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627750805078, 0, 88888, 0, 3, '用远程函数校验参数-非法参数', 'JSON', '/put', '{ "Moment": { "id": 235, "pictureList": [ @@ -4226,7 +4226,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-08-01 01:00:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627755287025, 0, 82001, 0, 3, '多数据源同时使用', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627755287025, 0, 82001, 0, 3, '多数据源同时使用', 'JSON', '/get', '{ "@datasource": "DRUID", "User": { "id": 82001, @@ -4376,7 +4376,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-08-01 02:14:47.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627755325870, 0, 88888, 0, 3, '多数据源同时使用', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1627755325870, 0, 88888, 0, 3, '多数据源同时使用', 'JSON', '/get', '{ "@datasource": "DRUID", "User": { "id": 82001, @@ -4526,7 +4526,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-08-01 02:15:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631668437509, 0, 1631617361403, 0, 3, '2021-09-15 09:12 ', 'JSON', '/resource/apijson/get', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631668437509, 0, 1631617361403, 0, 3, '2021-09-15 09:12 ', 'JSON', '/resource/apijson/get', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -4534,7 +4534,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', '', '2021-09-15 09:13:57.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631669045947, 0, 1631617361403, 0, 3, '汇聚资源新增', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631669045947, 0, 1631617361403, 0, 3, '汇聚资源新增', 'JSON', '/resource/apijson/post', '{ "ResourceId-()": "getResourceId()", "username-()": "encryption(root)", "password-()": "encryption(123456)", @@ -4916,7 +4916,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-09-15 09:24:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631670171091, 0, 1631617361403, 0, 3, '资源详情', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631670171091, 0, 1631617361403, 0, 3, '资源详情', 'JSON', '/resource/apijson/get', '{ "ResourceInfo": { "id": "1631608580403" }, @@ -5069,19 +5069,19 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-09-15 09:42:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837383, 0, 1490109742863, 0, 3, 'getSfaDistList', 'JSON', '/dms/disList/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837383, 0, 1490109742863, 0, 3, 'getSfaDistList', 'JSON', '/dms/disList/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837435, 0, 1490109742863, 0, 3, 'saveSfaDistStatus', 'JSON', '/dms/diststatus/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837435, 0, 1490109742863, 0, 3, 'saveSfaDistStatus', 'JSON', '/dms/diststatus/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837502, 0, 1490109742863, 0, 3, 'saveFeeBudget', 'JSON', '/dms/fee/saveFeeBudget', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837502, 0, 1490109742863, 0, 3, 'saveFeeBudget', 'JSON', '/dms/fee/saveFeeBudget', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837571, 0, 1490109742863, 0, 3, 'findStoreSCRM', 'JSON', '/dms/find/findStoreSCRM', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837571, 0, 1490109742863, 0, 3, 'findStoreSCRM', 'JSON', '/dms/find/findStoreSCRM', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631757289713, 0, 1631617361403, 0, 3, '资源列表查询', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631757289713, 0, 1631617361403, 0, 3, '资源列表查询', 'JSON', '/resource/apijson/get', '{ "[]": { "ResourceInfo:GROUP": { "RESOURCE_NAME$": "%1%", @@ -5381,7 +5381,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-09-16 09:54:49.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631771103135, 0, 1631617361403, 0, 3, '查询同一资源各版本列表', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631771103135, 0, 1631617361403, 0, 3, '查询同一资源各版本列表', 'JSON', '/resource/apijson/get', '{ "[]": { "ResourceInfo": { "RESOURCE_ID": "1", @@ -5633,7 +5633,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-09-16 13:45:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631773493501, 0, 1631617361403, 0, 3, '上传字典表', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631773493501, 0, 1631617361403, 0, 3, '上传字典表', 'JSON', '/resource/apijson/post', '{ "SysDict[]": [ { "TYPE": "RESOURCE_SERVE", @@ -5746,7 +5746,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-09-16 14:24:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631775393342, 0, 1631617361403, 0, 3, '字典表查询', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631775393342, 0, 1631617361403, 0, 3, '字典表查询', 'JSON', '/resource/apijson/get', '{ "SysDict[]": { "SysDict": { "TYPE": "RESOURCE_SERVE" @@ -5791,7 +5791,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-09-16 14:56:33.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631842712990, 0, 1631617361403, 0, 3, '删除资源', 'JSON', '/resource/apijson/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631842712990, 0, 1631617361403, 0, 3, '删除资源', 'JSON', '/resource/apijson/delete', '{ "ResourceInfo": { "id": "1631787701342" } @@ -5823,25 +5823,25 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-09-17 09:38:32.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837621, 0, 1490109742863, 0, 3, 'fnRptConfirm', 'JSON', '/dms/fn/rpt/confirm', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837621, 0, 1490109742863, 0, 3, 'fnRptConfirm', 'JSON', '/dms/fn/rpt/confirm', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837653, 0, 1490109742863, 0, 3, 'fnRptConfirmForXYR', 'JSON', '/dms/fn/rpt/confirmForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837653, 0, 1490109742863, 0, 3, 'fnRptConfirmForXYR', 'JSON', '/dms/fn/rpt/confirmForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837665, 0, 1490109742863, 0, 3, 'fnRptDealerQuery', 'JSON', '/dms/fn/rpt/dealerQuery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837665, 0, 1490109742863, 0, 3, 'fnRptDealerQuery', 'JSON', '/dms/fn/rpt/dealerQuery', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837671, 0, 1490109742863, 0, 3, 'fnRptDownload', 'JSON', '/dms/fn/rpt/download', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837671, 0, 1490109742863, 0, 3, 'fnRptDownload', 'JSON', '/dms/fn/rpt/download', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837721, 0, 1490109742863, 0, 3, 'fnRptDealerQueryForXYR', 'JSON', '/dms/fn/rpt/dealerQueryForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837721, 0, 1490109742863, 0, 3, 'fnRptDealerQueryForXYR', 'JSON', '/dms/fn/rpt/dealerQueryForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837781, 0, 1490109742863, 0, 3, 'fnRptGetVcPdfUrl', 'JSON', '/dms/fn/rpt/getVcPdfUrl', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837781, 0, 1490109742863, 0, 3, 'fnRptGetVcPdfUrl', 'JSON', '/dms/fn/rpt/getVcPdfUrl', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631842798921, 0, 1631617361403, 0, 3, '资源状态变更', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1631842798921, 0, 1631617361403, 0, 3, '资源状态变更', 'JSON', '/resource/apijson/put', '{ "ResourceInfo": { "id": "1631788768897", "RESOURCE_STATUS": 1 @@ -5884,7 +5884,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-09-17 09:39:58.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1632301360926, 0, 1631617361403, 0, 3, '落地资源新增', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1632301360926, 0, 1631617361403, 0, 3, '落地资源新增', 'JSON', '/resource/apijson/post', '{ "ResourceId-()": "getResourceId()", "username-()": "encryption(root)", "password-()": "encryption(123456)", @@ -6267,7 +6267,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-09-22 17:02:40.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633674327218, 0, 1631617361403, 0, 3, '资源详情', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633674327218, 0, 1631617361403, 0, 3, '资源详情', 'JSON', '/resource/apijson/get', '{ "ResourceInfo": { "ID": "1632885190990" }, @@ -6464,7 +6464,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-08 14:25:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633681667093, 0, 1631617361403, 0, 3, '资源新增-消息队列', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633681667093, 0, 1631617361403, 0, 3, '资源新增-消息队列', 'JSON', '/resource/apijson/post', '{ "ResourceId-()": "getResourceId()", "ResourceInfo": { "RESOURCE_ID@": "ResourceId", @@ -6676,7 +6676,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-08 16:27:47.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633682138997, 0, 1631617361403, 0, 3, '资源详情-消息队列', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633682138997, 0, 1631617361403, 0, 3, '资源详情-消息队列', 'JSON', '/resource/apijson/get', '{ "ResourceInfo": { "ID": "1633681660869" }, @@ -6765,7 +6765,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-08 16:35:39.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634284944272, 0, 1631617361403, 0, 3, '共享方式新增api', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634284944272, 0, 1631617361403, 0, 3, '共享方式新增api', 'JSON', '/resource/apijson/post', '{ "ResourceShare": { "NAME": "数据库共享", "DESC": "描述", @@ -6997,7 +6997,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-15 16:02:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633685540122, 0, 1631617361403, 0, 3, '共享方式新增-api', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633685540122, 0, 1631617361403, 0, 3, '共享方式新增-api', 'JSON', '/resource/apijson/post', '{ "ResourceShare": { "NAME": "数据库共享", "DESC": "描述", @@ -7373,7 +7373,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-08 17:32:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633686401010, 0, 1631617361403, 0, 3, '资源详情-api', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633686401010, 0, 1631617361403, 0, 3, '资源详情-api', 'JSON', '/resource/apijson/get', '{ "ResourceInfo": { "ID": "1633685461722" }, @@ -7576,7 +7576,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-08 17:46:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633770522246, 0, 1631617361403, 0, 3, '资源修改', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1633770522246, 0, 1631617361403, 0, 3, '资源修改', 'JSON', '/resource/apijson/put', '{ "updateResource-()": "updateResource(1446391835361595393,1)", "ResourceInfo": { "ID": "1633681660869", @@ -7924,7 +7924,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-09 17:08:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634265668211, 0, 1631617361403, 0, 3, '资源列表查询', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634265668211, 0, 1631617361403, 0, 3, '资源列表查询', 'JSON', '/resource/apijson/get', '{ "[]": { "ResourceInfo": { "ID{}@": { @@ -8375,7 +8375,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-15 10:41:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634285131571, 0, 1631617361403, 0, 3, '共享方式新增-数据库', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634285131571, 0, 1631617361403, 0, 3, '共享方式新增-数据库', 'JSON', '/resource/apijson/post', '{ "ResourceShare": { "NAME": "数据库共享", "DESC": "描述", @@ -8539,10 +8539,10 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-15 16:05:31.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837837, 0, 1490109742863, 0, 3, 'fnRptQuery', 'JSON', '/dms/fn/rpt/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837837, 0, 1490109742863, 0, 3, 'fnRptQuery', 'JSON', '/dms/fn/rpt/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634286148582, 0, 1631617361403, 0, 3, '共享方式列表', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634286148582, 0, 1631617361403, 0, 3, '共享方式列表', 'JSON', '/resource/apijson/get', '{ "[]": { "ResourceShare": { "RESOURCE_INFO_ID": "1446390805710295041" @@ -8894,7 +8894,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-15 16:22:28.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634289945625, 0, 1631617361403, 0, 3, '删除共享方式', 'JSON', '/resource/apijson/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634289945625, 0, 1631617361403, 0, 3, '删除共享方式', 'JSON', '/resource/apijson/delete', '{ "deleteShare-()": "deleteShare(1634285087560)", "ResourceShare": { "ID": "1634285087560" @@ -8937,7 +8937,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-15 17:25:45.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634290488064, 0, 1631617361403, 0, 3, '共享方式修改', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634290488064, 0, 1631617361403, 0, 3, '共享方式修改', 'JSON', '/resource/apijson/put', '{ "updateShare-()": "updateShare(1634285284517)", "ResourceShare": { "ID": "1634285284517", @@ -9112,7 +9112,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-15 17:34:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634631929552, 0, 1631617361403, 0, 3, '共享方式修改api', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634631929552, 0, 1631617361403, 0, 3, '共享方式修改api', 'JSON', '/resource/apijson/put', '{ "updateShare-()": "updateShare(1634285121819)", "ResourceShare": { "ID": "1634285121819", @@ -9379,7 +9379,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-19 16:25:29.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634655384665, 0, 82001, 0, 3, '获取用户列表带分页信息-简单接口', 'JSON', '/get/User[]', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634655384665, 0, 82001, 0, 3, '获取用户列表带分页信息-简单接口', 'JSON', '/get/User[]', '{ "User": { "id": 82001 }, @@ -9429,7 +9429,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, }', '', '2021-10-19 22:56:24.000000', ' 简单接口的最外层参数最能放在 URL parameter,例如 format 和 info@ /get/User[]?format=false&info@=User[]/info'); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635834529131, 0, 1631617361403, 0, 3, '标签列表', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635834529131, 0, 1631617361403, 0, 3, '标签列表', 'JSON', '/resource/apijson/get', '{ "[]": { "Tag": {} } @@ -9459,10 +9459,10 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-02 14:28:49.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837866, 0, 1490109742863, 0, 3, 'fnRptQueryForXYR', 'JSON', '/dms/fn/rpt/queryForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837866, 0, 1490109742863, 0, 3, 'fnRptQueryForXYR', 'JSON', '/dms/fn/rpt/queryForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634695467863, 0, 1631617361403, 0, 3, '共享单位列表', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634695467863, 0, 1631617361403, 0, 3, '共享单位列表', 'JSON', '/resource/apijson/get', '{ "[]": { "ResourceApply": { "RESOURCE_ID": "1443059665230364673", @@ -9617,7 +9617,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-20 10:04:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634741164027, 0, 82001, 0, 3, '获取用户-简单接口', 'JSON', '/get/User', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634741164027, 0, 82001, 0, 3, '获取用户-简单接口', 'JSON', '/get/User', '{ "id": 82001 }', null, null, '{ "notnull": true, @@ -9648,7 +9648,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-20 22:46:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634845547577, 0, 88888, 0, 3, '测试 JSON5 以及单引号', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1634845547577, 0, 88888, 0, 3, '测试 JSON5 以及单引号', 'JSON', '/get', '{ "User": { "id": 82001, "@column": "id;concat(name,''-'',tag)" @@ -9724,7 +9724,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-22 03:45:47.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635160679739, 0, 99999, 0, 3, 'CASE WHEN', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635160679739, 0, 99999, 0, 3, 'CASE WHEN', 'JSON', '/get', '{ "User[]": { "count": 0, "User": { @@ -9861,7 +9861,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-25 19:17:59.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635160818367, 0, 99999, 0, 3, '反引号 `key` 和单引号 ''value''', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635160818367, 0, 99999, 0, 3, '反引号 `key` 和单引号 ''value''', 'JSON', '/get', '{ "Comment": { "momentId": 15, "content": "测试新增评论", @@ -9937,7 +9937,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-25 19:20:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635166640858, 0, 88888, 0, 3, 'SQL 关键词', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635166640858, 0, 88888, 0, 3, 'SQL 关键词', 'JSON', '/get', '{ "[]": { "User": { "@column": "DISTINCT cast(date AS TIME);date_add(date,INTERVAL 2 DAY)", @@ -10002,7 +10002,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-25 20:57:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635167288971, 0, 88888, 0, 3, '窗口函数 sum(..)OVER(PARTITION BY.. ODER BY..)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635167288971, 0, 88888, 0, 3, '窗口函数 sum(..)OVER(PARTITION BY.. ODER BY..)', 'JSON', '/get', '{ "Comment[]": { "Comment": { "@column": "sum(id)OVER(PARTITION BY toId ORDER BY date DESC)", @@ -10091,7 +10091,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-25 21:08:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635168238020, 0, 88888, 0, 3, '全文检索/搜索/索引 match(..)AGAINST(..)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635168238020, 0, 88888, 0, 3, '全文检索/搜索/索引 match(..)AGAINST(..)', 'JSON', '/get', '{ "User[]": { "User": { "@column": "match(name,tag)AGAINST(''tom*'' IN NATURAL LANGUAGE MODE):match", @@ -10167,7 +10167,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-25 21:23:58.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635169568844, 0, 1635169494440, 0, 3, '"key!<>": [] 报错不合法,不过 "key<>": [] 可以', 'JSON', '/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635169568844, 0, 1635169494440, 0, 3, '"key!<>": [] 报错不合法,不过 "key<>": [] 可以', 'JSON', '/put', '{ "Moment": { "id": 15, "praiseUserIdList!<>": [ @@ -10269,7 +10269,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-25 21:46:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635994692546, 0, 82002, 0, 3, '关联查询 Comment.userId = User.id', 'JSON', '/login', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635994692546, 0, 82002, 0, 3, '关联查询 Comment.userId = User.id', 'JSON', '/login', '{ "type": 0, "phone": "13000082002", "password": "123456", @@ -10380,13 +10380,13 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-04 10:58:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837889, 0, 1490109742863, 0, 3, 'fnRptYearQuery', 'JSON', '/dms/fn/rpt/yearQuery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837889, 0, 1490109742863, 0, 3, 'fnRptYearQuery', 'JSON', '/dms/fn/rpt/yearQuery', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837918, 0, 1490109742863, 0, 3, 'fnRptYearQueryForXYR', 'JSON', '/dms/fn/rpt/yearQueryForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837918, 0, 1490109742863, 0, 3, 'fnRptYearQueryForXYR', 'JSON', '/dms/fn/rpt/yearQueryForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635236151556, 0, 1631617361403, 0, 3, '共享方式新增-消息队列', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635236151556, 0, 1631617361403, 0, 3, '共享方式新增-消息队列', 'JSON', '/resource/apijson/post', '{ "ResourceShare": { "NAME": "数据库共享", "DESC": "描述", @@ -10576,7 +10576,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-26 16:15:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635298359443, 0, 1631617361403, 0, 3, '共享方式修改-消息队列', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635298359443, 0, 1631617361403, 0, 3, '共享方式修改-消息队列', 'JSON', '/resource/apijson/put', '{ "updateShare-()": "updateShare(1634285121819)", "ResourceShare": { "ID": "1634285121819", @@ -10777,7 +10777,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-27 09:32:39.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635319860975, 0, 1631617361403, 0, 3, '审批资源申请。(申请id,状态)', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635319860975, 0, 1631617361403, 0, 3, '审批资源申请。(申请id,状态)', 'JSON', '/resource/apijson/put', '{ "approveApply()": "approveApply(1635315914238,1)" }', null, null, '{ "notnull": true, @@ -10798,7 +10798,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-10-27 15:31:00.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635815339312, 0, 1635726344906, 0, 3, 'test_id', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635815339312, 0, 1635726344906, 0, 3, 'test_id', 'JSON', '/get', '{ "test": { "id": 2 } @@ -10830,7 +10830,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-02 09:08:59.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635817779301, 0, 1635726344906, 0, 3, 'T_i_fund', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635817779301, 0, 1635726344906, 0, 3, 'T_i_fund', 'JSON', '/get', '{ "T_i_fund": { "name": "刘英" } @@ -10900,7 +10900,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-02 09:49:39.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635821594785, 0, 1635755610457, 0, 3, 'Db_version', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635821594785, 0, 1635755610457, 0, 3, 'Db_version', 'JSON', '/get', '{ "Db_version": { "id": 1 } @@ -10932,7 +10932,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-02 10:53:14.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635833339003, 0, 1635726344906, 0, 3, 'post_mate_name', 'JSON', '/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635833339003, 0, 1635726344906, 0, 3, 'post_mate_name', 'JSON', '/post', '{ "Db_mate": { "mate_name": "test" }, @@ -10975,7 +10975,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-02 14:08:59.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635834419362, 0, 1631617361403, 0, 3, '标签新增', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635834419362, 0, 1631617361403, 0, 3, '标签新增', 'JSON', '/resource/apijson/post', '{ "Tag": { "NAME": "交通", "DESC": "描述" @@ -11018,10 +11018,10 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-02 14:26:59.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836971, 0, 1490109742863, 0, 3, 'dealerAmbQuery', 'JSON', '/dms/dealerAmb/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836971, 0, 1490109742863, 0, 3, 'dealerAmbQuery', 'JSON', '/dms/dealerAmb/sfa/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635838222713, 0, 1631617361403, 0, 3, '标签修改', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635838222713, 0, 1631617361403, 0, 3, '标签修改', 'JSON', '/resource/apijson/put', '{ "Tag": { "ID": "1635835429761", "NAME": "交通1", @@ -11075,7 +11075,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-02 15:30:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635838252891, 0, 1631617361403, 0, 3, '标签删除', 'JSON', '/resource/apijson/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635838252891, 0, 1631617361403, 0, 3, '标签删除', 'JSON', '/resource/apijson/delete', '{ "Tag": { "ID": "1635835429761" } @@ -11107,7 +11107,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-02 15:30:52.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635908934512, 0, 1631617361403, 0, 3, '运维日志新增', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635908934512, 0, 1631617361403, 0, 3, '运维日志新增', 'JSON', '/resource/apijson/post', '{ "ResourceKnowledge": { "TITLE": "问题标题", "HANDLE_PERSON": "处理人", @@ -11194,7 +11194,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-03 11:08:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635909163185, 0, 1631617361403, 0, 3, '运维日志修改', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635909163185, 0, 1631617361403, 0, 3, '运维日志修改', 'JSON', '/resource/apijson/put', '{ "ResourceKnowledge": { "ID": "1635908887897", "TITLE": "问题标题", @@ -11292,7 +11292,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-03 11:12:43.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635911619126, 0, 1631617361403, 0, 3, '运维日志详情', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635911619126, 0, 1631617361403, 0, 3, '运维日志详情', 'JSON', '/resource/apijson/get', '{ "ResourceKnowledge": { "ID": "1635908887897" }, @@ -11403,7 +11403,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-03 12:25:56.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635918575132, 0, 1631617361403, 0, 3, '报警记录列表', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635918575132, 0, 1631617361403, 0, 3, '报警记录列表', 'JSON', '/resource/apijson/get', '{ "[]": { "LinkMonitorRecord": { "STATUS": "1", @@ -11616,7 +11616,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-03 13:49:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635919866390, 0, 1631617361403, 0, 3, '数据源分页查询', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1635919866390, 0, 1631617361403, 0, 3, '数据源分页查询', 'JSON', '/resource/apijson/get', '{ "[]": { "DbSource": { "@order": "CREATED_TIME-" @@ -11833,7 +11833,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-03 14:11:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636008854885, 0, 1631617361403, 0, 3, '落地资源新增标签', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636008854885, 0, 1631617361403, 0, 3, '落地资源新增标签', 'JSON', '/resource/apijson/post', '{ "ResourceId-()": "getResourceId()", "ResourceInfo": { "RESOURCE_ID@": "ResourceId", @@ -12027,7 +12027,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-04 14:54:14.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636010517920, 0, 1631617361403, 0, 3, '资源修改标签', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636010517920, 0, 1631617361403, 0, 3, '资源修改标签', 'JSON', '/resource/apijson/put', '{ "updateResource-()": "updateResource(1454003856978485249,1)", "ResourceInfo": { "RESOURCE_ID": "1454003856978485249", @@ -12563,7 +12563,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-04 15:21:57.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636010556689, 0, 1631617361403, 0, 3, '资源详情标签', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636010556689, 0, 1631617361403, 0, 3, '资源详情标签', 'JSON', '/resource/apijson/get', '{ "ResourceInfo": { "ID": "1635496508247" }, @@ -12881,7 +12881,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-04 15:22:36.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636603450441, 0, 1631617361403, 0, 3, '数据源新增', 'JSON', '/resource/apijson/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636603450441, 0, 1631617361403, 0, 3, '数据源新增', 'JSON', '/resource/apijson/post', '{ "DbSource": { "DB_ADDRESS": "58.210.9.133", "DB_NAME": "public", @@ -12957,7 +12957,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-11 12:04:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609140490, 0, 1631617361403, 0, 3, '数据源列表查询', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609140490, 0, 1631617361403, 0, 3, '数据源列表查询', 'JSON', '/resource/apijson/get', '{ "[]": { "DbSource": { "@order": "CREATED_TIME-" @@ -13060,7 +13060,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-11 13:39:00.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609433442, 0, 1631617361403, 0, 3, '数据源分页查询', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609433442, 0, 1631617361403, 0, 3, '数据源分页查询', 'JSON', '/resource/apijson/get', '{ "[]": { "DbSource": { "@order": "CREATED_TIME-" @@ -13169,7 +13169,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-11 13:43:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609528230, 0, 1631617361403, 0, 3, '数据源详情', 'JSON', '/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609528230, 0, 1631617361403, 0, 3, '数据源详情', 'JSON', '/resource/apijson/get', '{ "DbSource": { "ID": "1636603446526" } @@ -13201,7 +13201,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-11 13:45:28.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609579288, 0, 1631617361403, 0, 3, '数据源修改', 'JSON', '/resource/apijson/put', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1636609579288, 0, 1631617361403, 0, 3, '数据源修改', 'JSON', '/resource/apijson/put', '{ "DbSource": { "ID": 1636603436281, "DB_ADDRESS": "58.210.9.133", @@ -13288,10 +13288,10 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-11 13:46:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836996, 0, 1490109742863, 0, 3, 'getDealerByMobile', 'JSON', '/dms/dealer/queryByMobile', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836996, 0, 1490109742863, 0, 3, 'getDealerByMobile', 'JSON', '/dms/dealer/queryByMobile', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1637822526120, 0, 1631617361403, 0, 3, '首页统计', 'JSON', '/daas-gateway/resource/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1637822526120, 0, 1631617361403, 0, 3, '首页统计', 'JSON', '/daas-gateway/resource/apijson/get', '{ "ResourceInfo:from": { "ID{}@": { "from": "ResourceInfo:ChildSearch", @@ -13661,33 +13661,33 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2021-11-25 14:42:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254136616, 0, 1638253820088, 0, 3, '用户列表', 'PARAM', '/user/list', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254136616, 0, 1638253820088, 0, 3, '用户列表', 'PARAM', '/user/list', '{ "pageSize": 10, // 每页数量 "pageNum": 1, // "searchKey": "a" // 搜索关键词 }', null, null, null, null, '2021-11-30 14:35:36.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254136620, 0, 1638253820088, 0, 3, '用户详情', 'PARAM', '/user', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254136620, 0, 1638253820088, 0, 3, '用户详情', 'PARAM', '/user', '{ "id": 82001 // 主键 }', null, null, null, null, '2021-11-30 14:35:36.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254136621, 0, 1638253820088, 0, 3, '新增评论', 'JSON', '/comment/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254136621, 0, 1638253820088, 0, 3, '新增评论', 'JSON', '/comment/post', '{ "userId": 82001, // 用户id "momentId": 15, // 动态id "content": "测试评论" // 内容 }', null, null, null, null, '2021-11-30 14:35:36.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254145943, 0, 1638253820088, 0, 3, '新增评论', 'JSON', '/comment/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254145943, 0, 1638253820088, 0, 3, '新增评论', 'JSON', '/comment/post', '{ "userId": 82001, // 用户id "momentId": 15, // 动态id "content": "测试评论" // 内容 }', null, null, null, null, '2021-11-30 14:35:45.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254145947, 0, 1638253820088, 0, 3, '用户详情', 'PARAM', '/user', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254145947, 0, 1638253820088, 0, 3, '用户详情', 'PARAM', '/user', '{ "id": 82001 // 主键 }', null, null, null, null, '2021-11-30 14:35:45.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254145952, 0, 1638253820088, 0, 3, '用户列表', 'PARAM', '/user/list', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1638254145952, 0, 1638253820088, 0, 3, '用户列表', 'PARAM', '/user/list', '{ "pageSize": 10, // 每页数量 "pageNum": 1, // "searchKey": "a" // 搜索关键词 }', null, null, null, null, '2021-11-30 14:35:45.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1643180646762, 0, 1642574030663, 0, 3, '查询', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1643180646762, 0, 1642574030663, 0, 3, '查询', 'JSON', '/get', '{ "[]": { "Moment": { "id{}": [ @@ -13759,1895 +13759,1895 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-01-26 15:04:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836336, 0, 1490109742863, 0, 3, 'callbackAuditBGData', 'JSON', '/audit/oa/callbackAuditBGData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836336, 0, 1490109742863, 0, 3, 'callbackAuditBGData', 'JSON', '/audit/oa/callbackAuditBGData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836340, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/cas/casuser/resetPassword', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836340, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/cas/casuser/resetPassword', '{ "req": null // 必填。 req }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836358, 0, 1490109742863, 0, 3, 'callbackAuditData', 'JSON', '/audit/oa/callbackAuditData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836358, 0, 1490109742863, 0, 3, 'callbackAuditData', 'JSON', '/audit/oa/callbackAuditData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836364, 0, 1490109742863, 0, 3, 'callbackAuditZGTZSData', 'JSON', '/audit/oa/callbackAuditZGTZSData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836364, 0, 1490109742863, 0, 3, 'callbackAuditZGTZSData', 'JSON', '/audit/oa/callbackAuditZGTZSData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836399, 0, 1490109742863, 0, 3, 'callbackComprehensiveData', 'JSON', '/comprehensive/oa/callbackComprehensiveData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836399, 0, 1490109742863, 0, 3, 'callbackComprehensiveData', 'JSON', '/comprehensive/oa/callbackComprehensiveData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836406, 0, 1490109742863, 0, 3, 'storePerformanceMTD', 'JSON', '/dc/StorePerformanceMTD', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836406, 0, 1490109742863, 0, 3, 'storePerformanceMTD', 'JSON', '/dc/StorePerformanceMTD', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836427, 0, 1490109742863, 0, 3, 'getCategory', 'JSON', '/dc/category/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836427, 0, 1490109742863, 0, 3, 'getCategory', 'JSON', '/dc/category/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836438, 0, 1490109742863, 0, 3, 'getEarnestMoney', 'JSON', '/dc/costplan/detail/earnestMoney', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836438, 0, 1490109742863, 0, 3, 'getEarnestMoney', 'JSON', '/dc/costplan/detail/earnestMoney', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836476, 0, 1490109742863, 0, 3, 'getCostPlanDetail', 'JSON', '/dc/costplan/detail/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836476, 0, 1490109742863, 0, 3, 'getCostPlanDetail', 'JSON', '/dc/costplan/detail/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836503, 0, 1490109742863, 0, 3, 'getDetailSalePlan', 'JSON', '/dc/costplan/detail/salePlan', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836503, 0, 1490109742863, 0, 3, 'getDetailSalePlan', 'JSON', '/dc/costplan/detail/salePlan', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836532, 0, 1490109742863, 0, 3, 'getCostPlanSearch', 'JSON', '/dc/costplan/search/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836532, 0, 1490109742863, 0, 3, 'getCostPlanSearch', 'JSON', '/dc/costplan/search/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836539, 0, 1490109742863, 0, 3, 'getVerification', 'JSON', '/dc/costplan/verification/detail/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836539, 0, 1490109742863, 0, 3, 'getVerification', 'JSON', '/dc/costplan/verification/detail/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836543, 0, 1490109742863, 0, 3, 'getCostPlanQuery', 'JSON', '/dc/costplan/list/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836543, 0, 1490109742863, 0, 3, 'getCostPlanQuery', 'JSON', '/dc/costplan/list/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836547, 0, 1490109742863, 0, 3, 'callBackFileOperationSuccess', 'JSON', '/dc/file/operation/success/callback', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836547, 0, 1490109742863, 0, 3, 'callBackFileOperationSuccess', 'JSON', '/dc/file/operation/success/callback', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836619, 0, 1490109742863, 0, 3, 'getMaterial', 'JSON', '/dc/material/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836619, 0, 1490109742863, 0, 3, 'getMaterial', 'JSON', '/dc/material/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836674, 0, 1490109742863, 0, 3, 'getSupplier', 'JSON', '/dc/supplier/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836674, 0, 1490109742863, 0, 3, 'getSupplier', 'JSON', '/dc/supplier/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836680, 0, 1490109742863, 0, 3, 'getUnit', 'JSON', '/dc/unit/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836680, 0, 1490109742863, 0, 3, 'getUnit', 'JSON', '/dc/unit/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836741, 0, 1490109742863, 0, 3, 'XmDownloadLink', 'JSON', '/dc/xmbarcode/download/link', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836741, 0, 1490109742863, 0, 3, 'XmDownloadLink', 'JSON', '/dc/xmbarcode/download/link', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836744, 0, 1490109742863, 0, 3, 'getProductInfo', 'JSON', '/dc/xmbarcode/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836744, 0, 1490109742863, 0, 3, 'getProductInfo', 'JSON', '/dc/xmbarcode/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836806, 0, 1490109742863, 0, 3, 'getHtfy', 'JSON', '/dc/htfy/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836806, 0, 1490109742863, 0, 3, 'getHtfy', 'JSON', '/dc/htfy/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836809, 0, 1490109742863, 0, 3, 'judge', 'JSON', '/dc/xmbarcode/sfa/exceptioncode', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836809, 0, 1490109742863, 0, 3, 'judge', 'JSON', '/dc/xmbarcode/sfa/exceptioncode', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836870, 0, 1490109742863, 0, 3, 'getProductInfoStatus', 'JSON', '/dc/xmbarcode/status/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836870, 0, 1490109742863, 0, 3, 'getProductInfoStatus', 'JSON', '/dc/xmbarcode/status/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836872, 0, 1490109742863, 0, 3, 'saveSfaCostCustomer', 'JSON', '/dms/costcustomer/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836872, 0, 1490109742863, 0, 3, 'saveSfaCostCustomer', 'JSON', '/dms/costcustomer/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836890, 0, 1490109742863, 0, 3, 'getCateringCancel', 'JSON', '/dc/xmbarcode/statistical/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836890, 0, 1490109742863, 0, 3, 'getCateringCancel', 'JSON', '/dc/xmbarcode/statistical/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836900, 0, 1490109742863, 0, 3, 'getSfaCostCustomerPage', 'JSON', '/dms/costcustomerpage/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836900, 0, 1490109742863, 0, 3, 'getSfaCostCustomerPage', 'JSON', '/dms/costcustomerpage/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836921, 0, 1490109742863, 0, 3, 'getMiniprogramDealers', 'JSON', '/dms/dealer/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836921, 0, 1490109742863, 0, 3, 'getMiniprogramDealers', 'JSON', '/dms/dealer/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836965, 0, 1490109742863, 0, 3, 'getDealer', 'JSON', '/dms/dealer/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392836965, 0, 1490109742863, 0, 3, 'getDealer', 'JSON', '/dms/dealer/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:16.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837937, 0, 1490109742863, 0, 3, 'saveSfaFreePoApp', 'JSON', '/dms/freePoApp/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837937, 0, 1490109742863, 0, 3, 'saveSfaFreePoApp', 'JSON', '/dms/freePoApp/sfa/save', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837986, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList103', 'JSON', '/dms/freePoAppList103/sfa/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392837986, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList103', 'JSON', '/dms/freePoAppList103/sfa/delete', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:17.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838039, 0, 1490109742863, 0, 3, 'getSfaPoAppPage103', 'JSON', '/dms/freePoAppPage103/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838039, 0, 1490109742863, 0, 3, 'getSfaPoAppPage103', 'JSON', '/dms/freePoAppPage103/sfa/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838093, 0, 1490109742863, 0, 3, 'saveSfaFxPoApp', 'JSON', '/dms/fxpoapp/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838093, 0, 1490109742863, 0, 3, 'saveSfaFxPoApp', 'JSON', '/dms/fxpoapp/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838141, 0, 1490109742863, 0, 3, 'getProductSeries', 'JSON', '/dms/dict/product_series', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838141, 0, 1490109742863, 0, 3, 'getProductSeries', 'JSON', '/dms/dict/product_series', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838150, 0, 1490109742863, 0, 3, 'getSfaDist', 'JSON', '/dms/dis/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838150, 0, 1490109742863, 0, 3, 'getSfaDist', 'JSON', '/dms/dis/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838183, 0, 1490109742863, 0, 3, 'getInvoiceType', 'JSON', '/dms/invoicetype/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838183, 0, 1490109742863, 0, 3, 'getInvoiceType', 'JSON', '/dms/invoicetype/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838203, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/kuadi100/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838203, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/kuadi100/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838229, 0, 1490109742863, 0, 3, 'callbackLogRecord', 'JSON', '/dms/log/callback', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838229, 0, 1490109742863, 0, 3, 'callbackLogRecord', 'JSON', '/dms/log/callback', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838282, 0, 1490109742863, 0, 3, 'login', 'JSON', '/dms/login', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838282, 0, 1490109742863, 0, 3, 'login', 'JSON', '/dms/login', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838338, 0, 1490109742863, 0, 3, 'loginCode', 'JSON', '/dms/loginCode', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838338, 0, 1490109742863, 0, 3, 'loginCode', 'JSON', '/dms/loginCode', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838391, 0, 1490109742863, 0, 3, 'miniprogramLogin', 'JSON', '/dms/miniprogram-login', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838391, 0, 1490109742863, 0, 3, 'miniprogramLogin', 'JSON', '/dms/miniprogram-login', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838405, 0, 1490109742863, 0, 3, 'queryNotifyList', 'JSON', '/dms/notify/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838405, 0, 1490109742863, 0, 3, 'queryNotifyList', 'JSON', '/dms/notify/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838447, 0, 1490109742863, 0, 3, 'queryMPDealerStoreSupply', 'JSON', '/dms/miniprogram/dealer_store_supply/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838447, 0, 1490109742863, 0, 3, 'queryMPDealerStoreSupply', 'JSON', '/dms/miniprogram/dealer_store_supply/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838456, 0, 1490109742863, 0, 3, 'getPoAppList', 'JSON', '/dms/po/poAppList/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838456, 0, 1490109742863, 0, 3, 'getPoAppList', 'JSON', '/dms/po/poAppList/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838496, 0, 1490109742863, 0, 3, 'savePoDistStatus', 'JSON', '/dms/poDistStatus/eas/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838496, 0, 1490109742863, 0, 3, 'savePoDistStatus', 'JSON', '/dms/poDistStatus/eas/save', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838508, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList', 'JSON', '/dms/poapplist/sfa/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838508, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList', 'JSON', '/dms/poapplist/sfa/delete', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838510, 0, 1490109742863, 0, 3, 'startSfaPoApp', 'JSON', '/dms/poapp/sfa/start', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838510, 0, 1490109742863, 0, 3, 'startSfaPoApp', 'JSON', '/dms/poapp/sfa/start', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838702, 0, 1490109742863, 0, 3, 'queueSavePurchaseOrder', 'JSON', '/dms/poapplist/sfa/queueSavePurchaseOrder', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838702, 0, 1490109742863, 0, 3, 'queueSavePurchaseOrder', 'JSON', '/dms/poapplist/sfa/queueSavePurchaseOrder', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838753, 0, 1490109742863, 0, 3, 'saveSfaPoAppList', 'JSON', '/dms/poapplist/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838753, 0, 1490109742863, 0, 3, 'saveSfaPoAppList', 'JSON', '/dms/poapplist/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838774, 0, 1490109742863, 0, 3, 'getPoAppDetail', 'JSON', '/dms/po/poAppDetail/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838774, 0, 1490109742863, 0, 3, 'getPoAppDetail', 'JSON', '/dms/po/poAppDetail/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838804, 0, 1490109742863, 0, 3, 'fnRptPoAppList', 'JSON', '/dms/po/poAppList/poAppListForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838804, 0, 1490109742863, 0, 3, 'fnRptPoAppList', 'JSON', '/dms/po/poAppList/poAppListForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838806, 0, 1490109742863, 0, 3, 'getDistributionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838806, 0, 1490109742863, 0, 3, 'getDistributionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838988, 0, 1490109742863, 0, 3, 'getSfaPoAppPage', 'JSON', '/dms/poapppage/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392838988, 0, 1490109742863, 0, 3, 'getSfaPoAppPage', 'JSON', '/dms/poapppage/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839021, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage', 'JSON', '/dms/poapppage/posfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839021, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage', 'JSON', '/dms/poapppage/posfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839084, 0, 1490109742863, 0, 3, 'getMiniProgramPoAppPage106', 'JSON', '/dms/poapppage106/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839084, 0, 1490109742863, 0, 3, 'getMiniProgramPoAppPage106', 'JSON', '/dms/poapppage106/miniprogram/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839087, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList105', 'JSON', '/dms/poapplist105/sfa/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839087, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList105', 'JSON', '/dms/poapplist105/sfa/delete', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839098, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage106', 'JSON', '/dms/poapppage106/posfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839098, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage106', 'JSON', '/dms/poapppage106/posfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839221, 0, 1490109742863, 0, 3, 'poPreList', 'JSON', '/dms/pre/poPreList', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839221, 0, 1490109742863, 0, 3, 'poPreList', 'JSON', '/dms/pre/poPreList', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839261, 0, 1490109742863, 0, 3, 'saveSfaPoPre', 'JSON', '/dms/pre/saveSfaPoPre', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839261, 0, 1490109742863, 0, 3, 'saveSfaPoPre', 'JSON', '/dms/pre/saveSfaPoPre', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839308, 0, 1490109742863, 0, 3, 'startSfaPoPre', 'JSON', '/dms/pre/startSfaPoPre', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839308, 0, 1490109742863, 0, 3, 'startSfaPoPre', 'JSON', '/dms/pre/startSfaPoPre', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839336, 0, 1490109742863, 0, 3, 'suspendSfaPoPre', 'JSON', '/dms/pre/suspendSfaPoPre', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839336, 0, 1490109742863, 0, 3, 'suspendSfaPoPre', 'JSON', '/dms/pre/suspendSfaPoPre', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839363, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/dms/product/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839363, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/dms/product/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839386, 0, 1490109742863, 0, 3, 'saveSfaDistributeBill', 'JSON', '/dms/po/saveSfaDistributeBill', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839386, 0, 1490109742863, 0, 3, 'saveSfaDistributeBill', 'JSON', '/dms/po/saveSfaDistributeBill', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839450, 0, 1490109742863, 0, 3, 'wbPoAppMasterForEas', 'JSON', '/dms/po/wbPoAppMasterForEas', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839450, 0, 1490109742863, 0, 3, 'wbPoAppMasterForEas', 'JSON', '/dms/po/wbPoAppMasterForEas', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839460, 0, 1490109742863, 0, 3, 'aInvQueryDetail', 'JSON', '/dms/rpt/aInvQueryDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839460, 0, 1490109742863, 0, 3, 'aInvQueryDetail', 'JSON', '/dms/rpt/aInvQueryDetail', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839523, 0, 1490109742863, 0, 3, 'getDfundBalanceList', 'JSON', '/dms/rpt/dfundBalance/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839523, 0, 1490109742863, 0, 3, 'getDfundBalanceList', 'JSON', '/dms/rpt/dfundBalance/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839583, 0, 1490109742863, 0, 3, 'fnRptDfundDetail', 'JSON', '/dms/rpt/dfundDetail/dfundDetailForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839583, 0, 1490109742863, 0, 3, 'fnRptDfundDetail', 'JSON', '/dms/rpt/dfundDetail/dfundDetailForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839625, 0, 1490109742863, 0, 3, 'getDfundDetailList', 'JSON', '/dms/rpt/dfundDetail/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839625, 0, 1490109742863, 0, 3, 'getDfundDetailList', 'JSON', '/dms/rpt/dfundDetail/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839641, 0, 1490109742863, 0, 3, 'fnRptDfundSum', 'JSON', '/dms/rpt/dfundSum/dfundSumForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839641, 0, 1490109742863, 0, 3, 'fnRptDfundSum', 'JSON', '/dms/rpt/dfundSum/dfundSumForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839660, 0, 1490109742863, 0, 3, 'getTaskDetailQueryList', 'JSON', '/dms/rpt/taskDetailQuery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839660, 0, 1490109742863, 0, 3, 'getTaskDetailQueryList', 'JSON', '/dms/rpt/taskDetailQuery', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839690, 0, 1490109742863, 0, 3, 'getTaskQueryList', 'JSON', '/dms/rpt/taskQuery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839690, 0, 1490109742863, 0, 3, 'getTaskQueryList', 'JSON', '/dms/rpt/taskQuery', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839720, 0, 1490109742863, 0, 3, 'queryWjListForBizPerson', 'JSON', '/dms/servey/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839720, 0, 1490109742863, 0, 3, 'queryWjListForBizPerson', 'JSON', '/dms/servey/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839743, 0, 1490109742863, 0, 3, 'saveStorePickupLocation', 'JSON', '/dms/save/storePickupLocation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839743, 0, 1490109742863, 0, 3, 'saveStorePickupLocation', 'JSON', '/dms/save/storePickupLocation', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839745, 0, 1490109742863, 0, 3, 'queryMiniprogramServeyList', 'JSON', '/dms/serveyList/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839745, 0, 1490109742863, 0, 3, 'queryMiniprogramServeyList', 'JSON', '/dms/serveyList/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839785, 0, 1490109742863, 0, 3, 'cancelSfaPromotePoApp', 'JSON', '/dms/sfa/cancelSfaPromotePoApp', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839785, 0, 1490109742863, 0, 3, 'cancelSfaPromotePoApp', 'JSON', '/dms/sfa/cancelSfaPromotePoApp', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839809, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList108', 'JSON', '/dms/sfa/deleteSfaPoAppList108', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839809, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList108', 'JSON', '/dms/sfa/deleteSfaPoAppList108', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839838, 0, 1490109742863, 0, 3, 'getSfaPoAppPage108', 'JSON', '/dms/sfa/getSfaPoAppPage108', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839838, 0, 1490109742863, 0, 3, 'getSfaPoAppPage108', 'JSON', '/dms/sfa/getSfaPoAppPage108', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839865, 0, 1490109742863, 0, 3, 'getProduct', 'JSON', '/dms/product/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839865, 0, 1490109742863, 0, 3, 'getProduct', 'JSON', '/dms/product/query', '{ "dmsMessageDTO": {} // 必填。 dmsMessageDTO }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839925, 0, 1490109742863, 0, 3, 'initializeAllSCRMTerminal', 'JSON', '/dms/sfa/initializeAllSCRMTerminal', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839925, 0, 1490109742863, 0, 3, 'initializeAllSCRMTerminal', 'JSON', '/dms/sfa/initializeAllSCRMTerminal', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839930, 0, 1490109742863, 0, 3, 'orderApprovalRecord', 'JSON', '/dms/sfa/orderApprovalRecord', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392839930, 0, 1490109742863, 0, 3, 'orderApprovalRecord', 'JSON', '/dms/sfa/orderApprovalRecord', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840005, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStore', 'JSON', '/dms/sfa/saveOrUpdateSfaStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840005, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStore', 'JSON', '/dms/sfa/saveOrUpdateSfaStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840010, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaDistributorSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaDistributorSupplier', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840010, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaDistributorSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaDistributorSupplier', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840070, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840070, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/delete', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840144, 0, 1490109742863, 0, 3, 'deleteMQPoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/deleteMQ', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840144, 0, 1490109742863, 0, 3, 'deleteMQPoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/deleteMQ', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840198, 0, 1490109742863, 0, 3, 'saveSfaPromotePoApp', 'JSON', '/dms/sfa/saveSfaPromotePoApp', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840198, 0, 1490109742863, 0, 3, 'saveSfaPromotePoApp', 'JSON', '/dms/sfa/saveSfaPromotePoApp', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840249, 0, 1490109742863, 0, 3, 'sfaLogin', 'JSON', '/dms/sfaLogin', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840249, 0, 1490109742863, 0, 3, 'sfaLogin', 'JSON', '/dms/sfaLogin', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840309, 0, 1490109742863, 0, 3, 'getSfaStore', 'JSON', '/dms/store/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840309, 0, 1490109742863, 0, 3, 'getSfaStore', 'JSON', '/dms/store/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840374, 0, 1490109742863, 0, 3, 'saveSfaStore', 'JSON', '/dms/store/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840374, 0, 1490109742863, 0, 3, 'saveSfaStore', 'JSON', '/dms/store/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840426, 0, 1490109742863, 0, 3, 'getsfaStoreDateKpiList', 'JSON', '/dms/storeDateKpi/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840426, 0, 1490109742863, 0, 3, 'getsfaStoreDateKpiList', 'JSON', '/dms/storeDateKpi/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840431, 0, 1490109742863, 0, 3, 'storeTask', 'JSON', '/dms/store/todoTask', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840431, 0, 1490109742863, 0, 3, 'storeTask', 'JSON', '/dms/store/todoTask', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840492, 0, 1490109742863, 0, 3, 'getSfaExpandStore', 'JSON', '/dms/storeExpand/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840492, 0, 1490109742863, 0, 3, 'getSfaExpandStore', 'JSON', '/dms/storeExpand/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840493, 0, 1490109742863, 0, 3, 'getSfaExpandStoreList', 'JSON', '/dms/storeExpandList/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840493, 0, 1490109742863, 0, 3, 'getSfaExpandStoreList', 'JSON', '/dms/storeExpandList/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840506, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/dms/storeList/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840506, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/dms/storeList/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840531, 0, 1490109742863, 0, 3, 'getDmsStoreList', 'JSON', '/dms/storelist/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840531, 0, 1490109742863, 0, 3, 'getDmsStoreList', 'JSON', '/dms/storelist/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840561, 0, 1490109742863, 0, 3, 'saveSfaSzPoApp', 'JSON', '/dms/szpoapp/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840561, 0, 1490109742863, 0, 3, 'saveSfaSzPoApp', 'JSON', '/dms/szpoapp/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840563, 0, 1490109742863, 0, 3, 'getSfaStoreList', 'JSON', '/dms/storelist/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840563, 0, 1490109742863, 0, 3, 'getSfaStoreList', 'JSON', '/dms/storelist/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840578, 0, 1490109742863, 0, 3, 'saveSfaDealers', 'JSON', '/dms/szdealer/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840578, 0, 1490109742863, 0, 3, 'saveSfaDealers', 'JSON', '/dms/szdealer/sfa/save', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840584, 0, 1490109742863, 0, 3, 'getSfaStoreUpdateList', 'JSON', '/dms/storeupdatelist/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840584, 0, 1490109742863, 0, 3, 'getSfaStoreUpdateList', 'JSON', '/dms/storeupdatelist/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840643, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/dms/token/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840643, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/dms/token/query', '{ "dmsMessageDTO": {} // 必填。 dmsMessageDTO }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840649, 0, 1490109742863, 0, 3, 'queryCooperationStoreDelivery', 'JSON', '/dms/weimob/cooperation_store_delivery/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840649, 0, 1490109742863, 0, 3, 'queryCooperationStoreDelivery', 'JSON', '/dms/weimob/cooperation_store_delivery/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840702, 0, 1490109742863, 0, 3, 'queryDealerStoreSupply', 'JSON', '/dms/weimob/dealer_store_supply/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840702, 0, 1490109742863, 0, 3, 'queryDealerStoreSupply', 'JSON', '/dms/weimob/dealer_store_supply/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840707, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/dms/wine/employeeLogin', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840707, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/dms/wine/employeeLogin', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840796, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/dms/wine/getDealerPage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840796, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/dms/wine/getDealerPage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840854, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/dms/wine/getPoAppPage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840854, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/dms/wine/getPoAppPage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840857, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/wine/getKuaidi100', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840857, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/wine/getKuaidi100', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840884, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/dms/wine/getWineCustom', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840884, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/dms/wine/getWineCustom', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840909, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/dms/wine/getWineLocation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840909, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/dms/wine/getWineLocation', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840914, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStoreSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaStoreSupplier', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840914, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStoreSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaStoreSupplier', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840937, 0, 1490109742863, 0, 3, 'saveDealer', 'JSON', '/dms/wine/saveDealer', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840937, 0, 1490109742863, 0, 3, 'saveDealer', 'JSON', '/dms/wine/saveDealer', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840961, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/dms/wine/savePayVoucherPhotos', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840961, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/dms/wine/savePayVoucherPhotos', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840967, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/dms/wine/savePoApp', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840967, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/dms/wine/savePoApp', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840971, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/dms/wine/saveWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392840971, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/dms/wine/saveWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841015, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/dms/wine/saveWineSubPack', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841015, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/dms/wine/saveWineSubPack', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841030, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/dms/wine/submitWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841030, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/dms/wine/submitWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841032, 0, 1490109742863, 0, 3, 'callRechargeBill', 'JSON', '/eas/recharge', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841032, 0, 1490109742863, 0, 3, 'callRechargeBill', 'JSON', '/eas/recharge', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841070, 0, 1490109742863, 0, 3, 'getDealerFees', 'JSON', '/fineReport/marketingBoard/dealerFees', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841070, 0, 1490109742863, 0, 3, 'getDealerFees', 'JSON', '/fineReport/marketingBoard/dealerFees', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841098, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/marketingBoard/fa1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841098, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/marketingBoard/fa1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841120, 0, 1490109742863, 0, 3, 'getFa2AreaNameResult', 'JSON', '/fineReport/marketingBoard/fa1AreaName', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841120, 0, 1490109742863, 0, 3, 'getFa2AreaNameResult', 'JSON', '/fineReport/marketingBoard/fa1AreaName', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841152, 0, 1490109742863, 0, 3, 'getFa2Result', 'JSON', '/fineReport/marketingBoard/fa2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841152, 0, 1490109742863, 0, 3, 'getFa2Result', 'JSON', '/fineReport/marketingBoard/fa2', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841184, 0, 1490109742863, 0, 3, 'getFa3Result', 'JSON', '/fineReport/marketingBoard/fa3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841184, 0, 1490109742863, 0, 3, 'getFa3Result', 'JSON', '/fineReport/marketingBoard/fa3', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841208, 0, 1490109742863, 0, 3, 'getFa4Result', 'JSON', '/fineReport/marketingBoard/fa4', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841208, 0, 1490109742863, 0, 3, 'getFa4Result', 'JSON', '/fineReport/marketingBoard/fa4', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841238, 0, 1490109742863, 0, 3, 'getFa5Result', 'JSON', '/fineReport/marketingBoard/fa5', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841238, 0, 1490109742863, 0, 3, 'getFa5Result', 'JSON', '/fineReport/marketingBoard/fa5', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841263, 0, 1490109742863, 0, 3, 'getFa6Result', 'JSON', '/fineReport/marketingBoard/fa6', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841263, 0, 1490109742863, 0, 3, 'getFa6Result', 'JSON', '/fineReport/marketingBoard/fa6', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841277, 0, 1490109742863, 0, 3, 'getFa6ShortResult', 'JSON', '/fineReport/marketingBoard/fa6Short', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841277, 0, 1490109742863, 0, 3, 'getFa6ShortResult', 'JSON', '/fineReport/marketingBoard/fa6Short', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841294, 0, 1490109742863, 0, 3, 'getFb3Market1Result', 'JSON', '/fineReport/marketingBoard/fb3Market1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841294, 0, 1490109742863, 0, 3, 'getFb3Market1Result', 'JSON', '/fineReport/marketingBoard/fb3Market1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841355, 0, 1490109742863, 0, 3, 'getFd1SubSaleResult', 'JSON', '/fineReport/marketingBoard/fd1SubSale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841355, 0, 1490109742863, 0, 3, 'getFd1SubSaleResult', 'JSON', '/fineReport/marketingBoard/fd1SubSale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841403, 0, 1490109742863, 0, 3, 'getFd1SaleResult', 'JSON', '/fineReport/marketingBoard/fd1Sale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841403, 0, 1490109742863, 0, 3, 'getFd1SaleResult', 'JSON', '/fineReport/marketingBoard/fd1Sale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841452, 0, 1490109742863, 0, 3, 'getFe1MarketResult', 'JSON', '/fineReport/marketingBoard/fe1Market', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841452, 0, 1490109742863, 0, 3, 'getFe1MarketResult', 'JSON', '/fineReport/marketingBoard/fe1Market', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841507, 0, 1490109742863, 0, 3, 'getFd2SaleResult', 'JSON', '/fineReport/marketingBoard/fd2Sale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841507, 0, 1490109742863, 0, 3, 'getFd2SaleResult', 'JSON', '/fineReport/marketingBoard/fd2Sale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841566, 0, 1490109742863, 0, 3, 'getFe1StoreResult', 'JSON', '/fineReport/marketingBoard/fe1Store', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841566, 0, 1490109742863, 0, 3, 'getFe1StoreResult', 'JSON', '/fineReport/marketingBoard/fe1Store', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841568, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/dms/wine/saveWineCustom', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841568, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/dms/wine/saveWineCustom', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841794, 0, 1490109742863, 0, 3, 'clearCacheForMarketing', 'JSON', '/fineReport/marketingBoard/clearCache', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841794, 0, 1490109742863, 0, 3, 'clearCacheForMarketing', 'JSON', '/fineReport/marketingBoard/clearCache', '{ }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841808, 0, 1490109742863, 0, 3, 'getFc1OrderResult', 'JSON', '/fineReport/marketingBoard/fc1Order', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841808, 0, 1490109742863, 0, 3, 'getFc1OrderResult', 'JSON', '/fineReport/marketingBoard/fc1Order', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841847, 0, 1490109742863, 0, 3, 'getFf1RedpackResult', 'JSON', '/fineReport/marketingBoard/ff1Redpack', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841847, 0, 1490109742863, 0, 3, 'getFf1RedpackResult', 'JSON', '/fineReport/marketingBoard/ff1Redpack', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841862, 0, 1490109742863, 0, 3, 'getFf1RedpackLastyearResult', 'JSON', '/fineReport/marketingBoard/ff1RedpackLastyear', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841862, 0, 1490109742863, 0, 3, 'getFf1RedpackLastyearResult', 'JSON', '/fineReport/marketingBoard/ff1RedpackLastyear', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841910, 0, 1490109742863, 0, 3, 'getFf2ScanResult', 'JSON', '/fineReport/marketingBoard/ff2Scan', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841910, 0, 1490109742863, 0, 3, 'getFf2ScanResult', 'JSON', '/fineReport/marketingBoard/ff2Scan', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841917, 0, 1490109742863, 0, 3, 'getFlevelResult', 'JSON', '/fineReport/marketingBoard/flevel', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841917, 0, 1490109742863, 0, 3, 'getFlevelResult', 'JSON', '/fineReport/marketingBoard/flevel', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841927, 0, 1490109742863, 0, 3, 'getCategoryResult', 'JSON', '/fineReport/marketingBoard/getCategory', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841927, 0, 1490109742863, 0, 3, 'getCategoryResult', 'JSON', '/fineReport/marketingBoard/getCategory', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841982, 0, 1490109742863, 0, 3, 'getProductResult', 'JSON', '/fineReport/marketingBoard/getProduct', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841982, 0, 1490109742863, 0, 3, 'getProductResult', 'JSON', '/fineReport/marketingBoard/getProduct', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841984, 0, 1490109742863, 0, 3, 'getDealerResult', 'JSON', '/fineReport/marketingBoard/getDealer', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841984, 0, 1490109742863, 0, 3, 'getDealerResult', 'JSON', '/fineReport/marketingBoard/getDealer', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841986, 0, 1490109742863, 0, 3, 'getDealerScanCodeDetailResult', 'JSON', '/fineReport/marketingBoard/getDealerScanCodeDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392841986, 0, 1490109742863, 0, 3, 'getDealerScanCodeDetailResult', 'JSON', '/fineReport/marketingBoard/getDealerScanCodeDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842045, 0, 1490109742863, 0, 3, 'getJxsResult', 'JSON', '/fineReport/marketingBoard/jxs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842045, 0, 1490109742863, 0, 3, 'getJxsResult', 'JSON', '/fineReport/marketingBoard/jxs', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842047, 0, 1490109742863, 0, 3, 'getSeriesResult', 'JSON', '/fineReport/marketingBoard/getSeries', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842047, 0, 1490109742863, 0, 3, 'getSeriesResult', 'JSON', '/fineReport/marketingBoard/getSeries', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842123, 0, 1490109742863, 0, 3, 'getJxsReturnByMonth', 'JSON', '/fineReport/marketingBoard/jxsReturnByMonth', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842123, 0, 1490109742863, 0, 3, 'getJxsReturnByMonth', 'JSON', '/fineReport/marketingBoard/jxsReturnByMonth', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842195, 0, 1490109742863, 0, 3, 'getOfficesResult', 'JSON', '/fineReport/marketingBoard/offices', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842195, 0, 1490109742863, 0, 3, 'getOfficesResult', 'JSON', '/fineReport/marketingBoard/offices', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842249, 0, 1490109742863, 0, 3, 'getRegionalMarketCostTrackingResult', 'JSON', '/fineReport/marketingBoard/regionalMarketCostTracking', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842249, 0, 1490109742863, 0, 3, 'getRegionalMarketCostTrackingResult', 'JSON', '/fineReport/marketingBoard/regionalMarketCostTracking', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842310, 0, 1490109742863, 0, 3, 'getMOBA1B1Result', 'JSON', '/fineReport/moveOffBoard/a1b1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842310, 0, 1490109742863, 0, 3, 'getMOBA1B1Result', 'JSON', '/fineReport/moveOffBoard/a1b1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842364, 0, 1490109742863, 0, 3, 'getMOBBuysSellsAndStoresForPersonalResult', 'JSON', '/fineReport/moveOffBoard/buysSellsAndStoresForPersonal', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842364, 0, 1490109742863, 0, 3, 'getMOBBuysSellsAndStoresForPersonalResult', 'JSON', '/fineReport/moveOffBoard/buysSellsAndStoresForPersonal', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842372, 0, 1490109742863, 0, 3, 'getByMainstream', 'JSON', '/fineReport/moveOffBoard/byMainstream', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842372, 0, 1490109742863, 0, 3, 'getByMainstream', 'JSON', '/fineReport/moveOffBoard/byMainstream', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842429, 0, 1490109742863, 0, 3, 'getMOBCategoryResult', 'PARAM', '/fineReport/moveOffBoard/category', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842429, 0, 1490109742863, 0, 3, 'getMOBCategoryResult', 'PARAM', '/fineReport/moveOffBoard/category', '{ }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842434, 0, 1490109742863, 0, 3, 'clearCacheForMove', 'JSON', '/fineReport/moveOffBoard/clearCache', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842434, 0, 1490109742863, 0, 3, 'clearCacheForMove', 'JSON', '/fineReport/moveOffBoard/clearCache', '{ }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842491, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalResult', 'JSON', '/fineReport/moveOffBoard/coreTerminal', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842491, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalResult', 'JSON', '/fineReport/moveOffBoard/coreTerminal', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842493, 0, 1490109742863, 0, 3, 'getCompletionAmount', 'JSON', '/fineReport/moveOffBoard/completionAmount', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842493, 0, 1490109742863, 0, 3, 'getCompletionAmount', 'JSON', '/fineReport/moveOffBoard/completionAmount', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842755, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalForPersonalResult', 'JSON', '/fineReport/moveOffBoard/coreTerminalForPersonal', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842755, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalForPersonalResult', 'JSON', '/fineReport/moveOffBoard/coreTerminalForPersonal', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842760, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalReplenishmentResult', 'JSON', '/fineReport/moveOffBoard/coreTerminalReplenishment', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842760, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalReplenishmentResult', 'JSON', '/fineReport/moveOffBoard/coreTerminalReplenishment', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842817, 0, 1490109742863, 0, 3, 'getMOBFNameForStringResult', 'JSON', '/fineReport/moveOffBoard/fNameForString', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842817, 0, 1490109742863, 0, 3, 'getMOBFNameForStringResult', 'JSON', '/fineReport/moveOffBoard/fNameForString', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842819, 0, 1490109742863, 0, 3, 'getMOBFNameResult', 'JSON', '/fineReport/moveOffBoard/fName', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842819, 0, 1490109742863, 0, 3, 'getMOBFNameResult', 'JSON', '/fineReport/moveOffBoard/fName', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842848, 0, 1490109742863, 0, 3, 'getCompletionRate', 'JSON', '/fineReport/moveOffBoard/completionRate', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842848, 0, 1490109742863, 0, 3, 'getCompletionRate', 'JSON', '/fineReport/moveOffBoard/completionRate', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842875, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/moveOffBoard/fa1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842875, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/moveOffBoard/fa1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842894, 0, 1490109742863, 0, 3, 'getMOBFc3Result', 'JSON', '/fineReport/moveOffBoard/fc3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842894, 0, 1490109742863, 0, 3, 'getMOBFc3Result', 'JSON', '/fineReport/moveOffBoard/fc3', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842935, 0, 1490109742863, 0, 3, 'getMOBFc1TargetResult', 'JSON', '/fineReport/moveOffBoard/fc1Target', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842935, 0, 1490109742863, 0, 3, 'getMOBFc1TargetResult', 'JSON', '/fineReport/moveOffBoard/fc1Target', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842945, 0, 1490109742863, 0, 3, 'getMOBFc1Target1Result', 'JSON', '/fineReport/moveOffBoard/fc1Target1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842945, 0, 1490109742863, 0, 3, 'getMOBFc1Target1Result', 'JSON', '/fineReport/moveOffBoard/fc1Target1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842957, 0, 1490109742863, 0, 3, 'getMOBFd1Result', 'JSON', '/fineReport/moveOffBoard/fd1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392842957, 0, 1490109742863, 0, 3, 'getMOBFd1Result', 'JSON', '/fineReport/moveOffBoard/fd1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:22.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843007, 0, 1490109742863, 0, 3, 'getMOBFe1Result', 'JSON', '/fineReport/moveOffBoard/fe1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843007, 0, 1490109742863, 0, 3, 'getMOBFe1Result', 'JSON', '/fineReport/moveOffBoard/fe1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843013, 0, 1490109742863, 0, 3, 'getMOBFe3Result', 'JSON', '/fineReport/moveOffBoard/fe3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843013, 0, 1490109742863, 0, 3, 'getMOBFe3Result', 'JSON', '/fineReport/moveOffBoard/fe3', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843078, 0, 1490109742863, 0, 3, 'getMOBFe2Result', 'JSON', '/fineReport/moveOffBoard/fe2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843078, 0, 1490109742863, 0, 3, 'getMOBFe2Result', 'JSON', '/fineReport/moveOffBoard/fe2', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843082, 0, 1490109742863, 0, 3, 'getMOBFe4Result', 'JSON', '/fineReport/moveOffBoard/fe4', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843082, 0, 1490109742863, 0, 3, 'getMOBFe4Result', 'JSON', '/fineReport/moveOffBoard/fe4', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843168, 0, 1490109742863, 0, 3, 'getIndexDefinitionResult', 'JSON', '/fineReport/moveOffBoard/indexDefinition', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843168, 0, 1490109742863, 0, 3, 'getIndexDefinitionResult', 'JSON', '/fineReport/moveOffBoard/indexDefinition', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843269, 0, 1490109742863, 0, 3, 'getMOBLevelResult', 'PARAM', '/fineReport/moveOffBoard/level', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843269, 0, 1490109742863, 0, 3, 'getMOBLevelResult', 'PARAM', '/fineReport/moveOffBoard/level', '{ }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843319, 0, 1490109742863, 0, 3, 'getMediumAndHighEnd', 'JSON', '/fineReport/moveOffBoard/mediumAndHighEnd', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843319, 0, 1490109742863, 0, 3, 'getMediumAndHighEnd', 'JSON', '/fineReport/moveOffBoard/mediumAndHighEnd', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843366, 0, 1490109742863, 0, 3, 'getMOBSalesmanBuysSellsAndStoresResult', 'JSON', '/fineReport/moveOffBoard/salesmanBuysSellsAndStores', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843366, 0, 1490109742863, 0, 3, 'getMOBSalesmanBuysSellsAndStoresResult', 'JSON', '/fineReport/moveOffBoard/salesmanBuysSellsAndStores', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843387, 0, 1490109742863, 0, 3, 'getMOBOrgResult', 'JSON', '/fineReport/moveOffBoard/org', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843387, 0, 1490109742863, 0, 3, 'getMOBOrgResult', 'JSON', '/fineReport/moveOffBoard/org', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843414, 0, 1490109742863, 0, 3, 'getMOBShipmentForPersonalResult', 'JSON', '/fineReport/moveOffBoard/shipmentForPersonal', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843414, 0, 1490109742863, 0, 3, 'getMOBShipmentForPersonalResult', 'JSON', '/fineReport/moveOffBoard/shipmentForPersonal', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843467, 0, 1490109742863, 0, 3, 'getUserInfoPermissionResult', 'JSON', '/fineReport/moveOffBoard/userInfoPermission', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843467, 0, 1490109742863, 0, 3, 'getUserInfoPermissionResult', 'JSON', '/fineReport/moveOffBoard/userInfoPermission', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843521, 0, 1490109742863, 0, 3, 'getJxFlevel', 'JSON', '/fineReport/sauceAroma/flevelForJx', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843521, 0, 1490109742863, 0, 3, 'getJxFlevel', 'JSON', '/fineReport/sauceAroma/flevelForJx', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843569, 0, 1490109742863, 0, 3, 'getJxDealerScanStock', 'JSON', '/fineReport/sauceAroma/jxDealerScanStock', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843569, 0, 1490109742863, 0, 3, 'getJxDealerScanStock', 'JSON', '/fineReport/sauceAroma/jxDealerScanStock', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843600, 0, 1490109742863, 0, 3, 'getJxDistributor', 'JSON', '/fineReport/sauceAroma/jxDistributor', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843600, 0, 1490109742863, 0, 3, 'getJxDistributor', 'JSON', '/fineReport/sauceAroma/jxDistributor', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843618, 0, 1490109742863, 0, 3, 'getJxFA1', 'JSON', '/fineReport/sauceAroma/jxFa1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843618, 0, 1490109742863, 0, 3, 'getJxFA1', 'JSON', '/fineReport/sauceAroma/jxFa1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843655, 0, 1490109742863, 0, 3, 'getJxFA3', 'JSON', '/fineReport/sauceAroma/jxFa3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843655, 0, 1490109742863, 0, 3, 'getJxFA3', 'JSON', '/fineReport/sauceAroma/jxFa3', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843664, 0, 1490109742863, 0, 3, 'getJxFA5', 'JSON', '/fineReport/sauceAroma/jxFa5', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843664, 0, 1490109742863, 0, 3, 'getJxFA5', 'JSON', '/fineReport/sauceAroma/jxFa5', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843679, 0, 1490109742863, 0, 3, 'getJXFB3Market1', 'JSON', '/fineReport/sauceAroma/jxFb3Market1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843679, 0, 1490109742863, 0, 3, 'getJXFB3Market1', 'JSON', '/fineReport/sauceAroma/jxFb3Market1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843709, 0, 1490109742863, 0, 3, 'getJxFD1Sale', 'JSON', '/fineReport/sauceAroma/jxFd1Sale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843709, 0, 1490109742863, 0, 3, 'getJxFD1Sale', 'JSON', '/fineReport/sauceAroma/jxFd1Sale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843713, 0, 1490109742863, 0, 3, 'getJxFD1Subsale', 'JSON', '/fineReport/sauceAroma/jxFd1subsale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843713, 0, 1490109742863, 0, 3, 'getJxFD1Subsale', 'JSON', '/fineReport/sauceAroma/jxFd1subsale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843730, 0, 1490109742863, 0, 3, 'getJXFE1Market', 'JSON', '/fineReport/sauceAroma/jxFe1Market', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843730, 0, 1490109742863, 0, 3, 'getJXFE1Market', 'JSON', '/fineReport/sauceAroma/jxFe1Market', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843775, 0, 1490109742863, 0, 3, 'getJxIndex', 'JSON', '/fineReport/sauceAroma/jxIndex', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843775, 0, 1490109742863, 0, 3, 'getJxIndex', 'JSON', '/fineReport/sauceAroma/jxIndex', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843784, 0, 1490109742863, 0, 3, 'getJxProduct', 'JSON', '/fineReport/sauceAroma/jxProduct', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843784, 0, 1490109742863, 0, 3, 'getJxProduct', 'JSON', '/fineReport/sauceAroma/jxProduct', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843840, 0, 1490109742863, 0, 3, 'getJxRegion', 'JSON', '/fineReport/sauceAroma/jxRegion', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843840, 0, 1490109742863, 0, 3, 'getJxRegion', 'JSON', '/fineReport/sauceAroma/jxRegion', '{ }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843856, 0, 1490109742863, 0, 3, 'getAccumulatedBusiness', 'JSON', '/fineReport/supplyChain/accumulatedBusiness', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843856, 0, 1490109742863, 0, 3, 'getAccumulatedBusiness', 'JSON', '/fineReport/supplyChain/accumulatedBusiness', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843899, 0, 1490109742863, 0, 3, 'getBaseSineInventory', 'JSON', '/fineReport/supplyChain/baseSineInventory', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843899, 0, 1490109742863, 0, 3, 'getBaseSineInventory', 'JSON', '/fineReport/supplyChain/baseSineInventory', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843908, 0, 1490109742863, 0, 3, 'getBaseWine', 'JSON', '/fineReport/supplyChain/baseWine', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843908, 0, 1490109742863, 0, 3, 'getBaseWine', 'JSON', '/fineReport/supplyChain/baseWine', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843959, 0, 1490109742863, 0, 3, 'getBOMVersionManagement', 'JSON', '/fineReport/supplyChain/bomVersionManagement', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843959, 0, 1490109742863, 0, 3, 'getBOMVersionManagement', 'JSON', '/fineReport/supplyChain/bomVersionManagement', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843965, 0, 1490109742863, 0, 3, 'getCapacity', 'JSON', '/fineReport/supplyChain/capacity', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392843965, 0, 1490109742863, 0, 3, 'getCapacity', 'JSON', '/fineReport/supplyChain/capacity', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844027, 0, 1490109742863, 0, 3, 'getClosingThisYear', 'JSON', '/fineReport/supplyChain/closingThisYear', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844027, 0, 1490109742863, 0, 3, 'getClosingThisYear', 'JSON', '/fineReport/supplyChain/closingThisYear', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844078, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouse', 'JSON', '/fineReport/supplyChain/finishedProductWarehouse', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844078, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouse', 'JSON', '/fineReport/supplyChain/finishedProductWarehouse', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844129, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouses', 'JSON', '/fineReport/supplyChain/finishedProductWarehouses', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844129, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouses', 'JSON', '/fineReport/supplyChain/finishedProductWarehouses', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844161, 0, 1490109742863, 0, 3, 'getFinishedProductInventory', 'JSON', '/fineReport/supplyChain/finishedProductInventorie', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844161, 0, 1490109742863, 0, 3, 'getFinishedProductInventory', 'JSON', '/fineReport/supplyChain/finishedProductInventorie', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844180, 0, 1490109742863, 0, 3, 'getJxs', 'JSON', '/fineReport/supplyChain/jxs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844180, 0, 1490109742863, 0, 3, 'getJxs', 'JSON', '/fineReport/supplyChain/jxs', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844213, 0, 1490109742863, 0, 3, 'getLastMonthMaterials', 'JSON', '/fineReport/supplyChain/lastMonthMaterials', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844213, 0, 1490109742863, 0, 3, 'getLastMonthMaterials', 'JSON', '/fineReport/supplyChain/lastMonthMaterials', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844232, 0, 1490109742863, 0, 3, 'getLuzhouFlavor', 'JSON', '/fineReport/supplyChain/luzhouFlavor', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844232, 0, 1490109742863, 0, 3, 'getLuzhouFlavor', 'JSON', '/fineReport/supplyChain/luzhouFlavor', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844251, 0, 1490109742863, 0, 3, 'getMaotaiFlavor', 'JSON', '/fineReport/supplyChain/maotaiFlavor', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844251, 0, 1490109742863, 0, 3, 'getMaotaiFlavor', 'JSON', '/fineReport/supplyChain/maotaiFlavor', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844264, 0, 1490109742863, 0, 3, 'getMonthResults', 'JSON', '/fineReport/supplyChain/month', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844264, 0, 1490109742863, 0, 3, 'getMonthResults', 'JSON', '/fineReport/supplyChain/month', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844267, 0, 1490109742863, 0, 3, 'getMonthlyPackaging', 'JSON', '/fineReport/supplyChain/monthlyPackaging', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844267, 0, 1490109742863, 0, 3, 'getMonthlyPackaging', 'JSON', '/fineReport/supplyChain/monthlyPackaging', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844295, 0, 1490109742863, 0, 3, 'getJXJxs', 'JSON', '/fineReport/sauceAroma/jxJxs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844295, 0, 1490109742863, 0, 3, 'getJXJxs', 'JSON', '/fineReport/sauceAroma/jxJxs', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844302, 0, 1490109742863, 0, 3, 'getPackageInventory', 'JSON', '/fineReport/supplyChain/packageInventory', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844302, 0, 1490109742863, 0, 3, 'getPackageInventory', 'JSON', '/fineReport/supplyChain/packageInventory', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844325, 0, 1490109742863, 0, 3, 'getJxOffice', 'JSON', '/fineReport/sauceAroma/jxOffice', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844325, 0, 1490109742863, 0, 3, 'getJxOffice', 'JSON', '/fineReport/sauceAroma/jxOffice', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844358, 0, 1490109742863, 0, 3, 'getPackagingMaterialInventory', 'JSON', '/fineReport/supplyChain/packagingMaterialInventory', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844358, 0, 1490109742863, 0, 3, 'getPackagingMaterialInventory', 'JSON', '/fineReport/supplyChain/packagingMaterialInventory', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844379, 0, 1490109742863, 0, 3, 'getPackagingMaterialLoss', 'JSON', '/fineReport/supplyChain/packagingMaterialLoss', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844379, 0, 1490109742863, 0, 3, 'getPackagingMaterialLoss', 'JSON', '/fineReport/supplyChain/packagingMaterialLoss', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844385, 0, 1490109742863, 0, 3, 'getProductionQuantity', 'JSON', '/fineReport/supplyChain/ProductionQuantity', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844385, 0, 1490109742863, 0, 3, 'getProductionQuantity', 'JSON', '/fineReport/supplyChain/ProductionQuantity', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844406, 0, 1490109742863, 0, 3, 'getPackingMaterialDetails', 'JSON', '/fineReport/supplyChain/packingMaterialDetails', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844406, 0, 1490109742863, 0, 3, 'getPackingMaterialDetails', 'JSON', '/fineReport/supplyChain/packingMaterialDetails', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844445, 0, 1490109742863, 0, 3, 'getPlanForThisMonth', 'JSON', '/fineReport/supplyChain/planForThisMonth', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844445, 0, 1490109742863, 0, 3, 'getPlanForThisMonth', 'JSON', '/fineReport/supplyChain/planForThisMonth', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844448, 0, 1490109742863, 0, 3, 'getPackagingMaterialProcurement', 'JSON', '/fineReport/supplyChain/packagingMaterialProcurement', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844448, 0, 1490109742863, 0, 3, 'getPackagingMaterialProcurement', 'JSON', '/fineReport/supplyChain/packagingMaterialProcurement', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844453, 0, 1490109742863, 0, 3, 'getProductPlan', 'JSON', '/fineReport/supplyChain/productPlan', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844453, 0, 1490109742863, 0, 3, 'getProductPlan', 'JSON', '/fineReport/supplyChain/productPlan', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844507, 0, 1490109742863, 0, 3, 'getProductionOrder', 'JSON', '/fineReport/supplyChain/productionOrder', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844507, 0, 1490109742863, 0, 3, 'getProductionOrder', 'JSON', '/fineReport/supplyChain/productionOrder', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844513, 0, 1490109742863, 0, 3, 'getProductProduction', 'JSON', '/fineReport/supplyChain/productProduction', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844513, 0, 1490109742863, 0, 3, 'getProductProduction', 'JSON', '/fineReport/supplyChain/productProduction', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844514, 0, 1490109742863, 0, 3, 'getPurchaseOrder', 'JSON', '/fineReport/supplyChain/purchaseOrder', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844514, 0, 1490109742863, 0, 3, 'getPurchaseOrder', 'JSON', '/fineReport/supplyChain/purchaseOrder', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844574, 0, 1490109742863, 0, 3, 'getRateProductPackaging', 'JSON', '/fineReport/supplyChain/rateProductPackaging', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844574, 0, 1490109742863, 0, 3, 'getRateProductPackaging', 'JSON', '/fineReport/supplyChain/rateProductPackaging', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844575, 0, 1490109742863, 0, 3, 'getSalesDelivery', 'JSON', '/fineReport/supplyChain/salesDelivery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844575, 0, 1490109742863, 0, 3, 'getSalesDelivery', 'JSON', '/fineReport/supplyChain/salesDelivery', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844580, 0, 1490109742863, 0, 3, 'getQualityInspectionDetails', 'JSON', '/fineReport/supplyChain/qualityInspectionDetails', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844580, 0, 1490109742863, 0, 3, 'getQualityInspectionDetails', 'JSON', '/fineReport/supplyChain/qualityInspectionDetails', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844599, 0, 1490109742863, 0, 3, 'getSupplierInspection', 'JSON', '/fineReport/supplyChain/supplierInspection', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844599, 0, 1490109742863, 0, 3, 'getSupplierInspection', 'JSON', '/fineReport/supplyChain/supplierInspection', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844601, 0, 1490109742863, 0, 3, 'getSuppliercg', 'JSON', '/fineReport/supplyChain/suppliercg', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844601, 0, 1490109742863, 0, 3, 'getSuppliercg', 'JSON', '/fineReport/supplyChain/suppliercg', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844635, 0, 1490109742863, 0, 3, 'getWineBeLoaded', 'JSON', '/fineReport/supplyChain/wineBeLoaded', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844635, 0, 1490109742863, 0, 3, 'getWineBeLoaded', 'JSON', '/fineReport/supplyChain/wineBeLoaded', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844638, 0, 1490109742863, 0, 3, 'getAOGTimeliness', 'JSON', '/fineReport/supplyChainBoardXS/getAOGTimeliness', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844638, 0, 1490109742863, 0, 3, 'getAOGTimeliness', 'JSON', '/fineReport/supplyChainBoardXS/getAOGTimeliness', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844647, 0, 1490109742863, 0, 3, 'getCapacityUtilization', 'JSON', '/fineReport/supplyChainBoardXS/getCapacityUtilization', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844647, 0, 1490109742863, 0, 3, 'getCapacityUtilization', 'JSON', '/fineReport/supplyChainBoardXS/getCapacityUtilization', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844676, 0, 1490109742863, 0, 3, 'getTimelyProcurement', 'JSON', '/fineReport/supplyChain/timelyProcurement', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844676, 0, 1490109742863, 0, 3, 'getTimelyProcurement', 'JSON', '/fineReport/supplyChain/timelyProcurement', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844711, 0, 1490109742863, 0, 3, 'getDaQuPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getDaQuPercentage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844711, 0, 1490109742863, 0, 3, 'getDaQuPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getDaQuPercentage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844717, 0, 1490109742863, 0, 3, 'getFinishedProductTop10', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductTop10', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844717, 0, 1490109742863, 0, 3, 'getFinishedProductTop10', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductTop10', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844788, 0, 1490109742863, 0, 3, 'getInspectQualifiedRate', 'JSON', '/fineReport/supplyChainBoardXS/getInspectQualifiedRate', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844788, 0, 1490109742863, 0, 3, 'getInspectQualifiedRate', 'JSON', '/fineReport/supplyChainBoardXS/getInspectQualifiedRate', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844818, 0, 1490109742863, 0, 3, 'getLiquorPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorPercentage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844818, 0, 1490109742863, 0, 3, 'getLiquorPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorPercentage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844839, 0, 1490109742863, 0, 3, 'getLiquorStandardPracticalDetail', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPracticalDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844839, 0, 1490109742863, 0, 3, 'getLiquorStandardPracticalDetail', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPracticalDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844877, 0, 1490109742863, 0, 3, 'getPackAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPackAmount', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844877, 0, 1490109742863, 0, 3, 'getPackAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPackAmount', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844890, 0, 1490109742863, 0, 3, 'getLiquorStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPractical', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844890, 0, 1490109742863, 0, 3, 'getLiquorStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPractical', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844941, 0, 1490109742863, 0, 3, 'getPackAttritionRate', 'JSON', '/fineReport/supplyChainBoardXS/getPackAttritionRate', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844941, 0, 1490109742863, 0, 3, 'getPackAttritionRate', 'JSON', '/fineReport/supplyChainBoardXS/getPackAttritionRate', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844944, 0, 1490109742863, 0, 3, 'getPackDetail', 'JSON', '/fineReport/supplyChainBoardXS/getPackDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844944, 0, 1490109742863, 0, 3, 'getPackDetail', 'JSON', '/fineReport/supplyChainBoardXS/getPackDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844970, 0, 1490109742863, 0, 3, 'getPackInventorySituation', 'JSON', '/fineReport/supplyChainBoardXS/getPackInventorySituation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392844970, 0, 1490109742863, 0, 3, 'getPackInventorySituation', 'JSON', '/fineReport/supplyChainBoardXS/getPackInventorySituation', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845001, 0, 1490109742863, 0, 3, 'getPackPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getPackPercentage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845001, 0, 1490109742863, 0, 3, 'getPackPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getPackPercentage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845010, 0, 1490109742863, 0, 3, 'getPackStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getPackStandardPractical', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845010, 0, 1490109742863, 0, 3, 'getPackStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getPackStandardPractical', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845026, 0, 1490109742863, 0, 3, 'getPackProductAndWastage', 'JSON', '/fineReport/supplyChainBoardXS/getPackProductAndWastage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845026, 0, 1490109742863, 0, 3, 'getPackProductAndWastage', 'JSON', '/fineReport/supplyChainBoardXS/getPackProductAndWastage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845066, 0, 1490109742863, 0, 3, 'getParaphrase', 'JSON', '/fineReport/supplyChainBoardXS/getParaphrase', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845066, 0, 1490109742863, 0, 3, 'getParaphrase', 'JSON', '/fineReport/supplyChainBoardXS/getParaphrase', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845071, 0, 1490109742863, 0, 3, 'getPlanAndRealityPack', 'JSON', '/fineReport/supplyChainBoardXS/getPlanAndRealityPack', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845071, 0, 1490109742863, 0, 3, 'getPlanAndRealityPack', 'JSON', '/fineReport/supplyChainBoardXS/getPlanAndRealityPack', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845084, 0, 1490109742863, 0, 3, 'getProductDaysDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductDaysDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845084, 0, 1490109742863, 0, 3, 'getProductDaysDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductDaysDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845136, 0, 1490109742863, 0, 3, 'getProductFinishedSituation', 'JSON', '/fineReport/supplyChainBoardXS/getProductFinishedSituation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845136, 0, 1490109742863, 0, 3, 'getProductFinishedSituation', 'JSON', '/fineReport/supplyChainBoardXS/getProductFinishedSituation', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845140, 0, 1490109742863, 0, 3, 'getProductOrderDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductOrderDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845140, 0, 1490109742863, 0, 3, 'getProductOrderDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductOrderDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845141, 0, 1490109742863, 0, 3, 'getPlanProductionDetail', 'JSON', '/fineReport/supplyChainBoardXS/getPlanProductionDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845141, 0, 1490109742863, 0, 3, 'getPlanProductionDetail', 'JSON', '/fineReport/supplyChainBoardXS/getPlanProductionDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845207, 0, 1490109742863, 0, 3, 'getPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPurchaseAmount', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845207, 0, 1490109742863, 0, 3, 'getPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPurchaseAmount', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845210, 0, 1490109742863, 0, 3, 'getSupplyPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getSupplyPurchaseAmount', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845210, 0, 1490109742863, 0, 3, 'getSupplyPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getSupplyPurchaseAmount', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845269, 0, 1490109742863, 0, 3, 'getUnqualifiedDetail', 'JSON', '/fineReport/supplyChainBoardXS/getUnqualifiedDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845269, 0, 1490109742863, 0, 3, 'getUnqualifiedDetail', 'JSON', '/fineReport/supplyChainBoardXS/getUnqualifiedDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845297, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/ft/product/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845297, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/ft/product/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845299, 0, 1490109742863, 0, 3, 'getYDGoodsYield', 'JSON', '/fineReport/supplyChainBoardXS/getYDGoodsYield', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845299, 0, 1490109742863, 0, 3, 'getYDGoodsYield', 'JSON', '/fineReport/supplyChainBoardXS/getYDGoodsYield', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845320, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/ft/wine/employeeLogin', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845320, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/ft/wine/employeeLogin', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847048, 0, 1490109742863, 0, 3, 'test3', 'JSON', '/test/test3/{time}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847048, 0, 1490109742863, 0, 3, 'test3', 'JSON', '/test/test3/{time}', '{ "time": 1 // 必填。 time }', null, null, null, null, '2022-02-09 15:47:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845354, 0, 1490109742863, 0, 3, 'getFinishedProductStorage', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductStorage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845354, 0, 1490109742863, 0, 3, 'getFinishedProductStorage', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductStorage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845374, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/ft/wine/getDealerPage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845374, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/ft/wine/getDealerPage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845431, 0, 1490109742863, 0, 3, 'getPdfData', 'JSON', '/ft/wine/getPdfData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845431, 0, 1490109742863, 0, 3, 'getPdfData', 'JSON', '/ft/wine/getPdfData', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845447, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/ft/wine/getKuaidi100', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845447, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/ft/wine/getKuaidi100', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845662, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/ft/wine/getWineCustom', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845662, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/ft/wine/getWineCustom', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845716, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/ft/wine/getPoAppPage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845716, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/ft/wine/getPoAppPage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845773, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/ft/wine/getWineLocation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845773, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/ft/wine/getWineLocation', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845776, 0, 1490109742863, 0, 3, 'getWineStorePage', 'JSON', '/ft/wine/getWineStorePage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845776, 0, 1490109742863, 0, 3, 'getWineStorePage', 'JSON', '/ft/wine/getWineStorePage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845852, 0, 1490109742863, 0, 3, 'queryContractus', 'JSON', '/ft/wine/queryContractus', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845852, 0, 1490109742863, 0, 3, 'queryContractus', 'JSON', '/ft/wine/queryContractus', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845853, 0, 1490109742863, 0, 3, 'saveContractPhotos', 'JSON', '/ft/wine/saveContractPhotos', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845853, 0, 1490109742863, 0, 3, 'saveContractPhotos', 'JSON', '/ft/wine/saveContractPhotos', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845911, 0, 1490109742863, 0, 3, 'saveContractus', 'JSON', '/ft/wine/saveContractus', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845911, 0, 1490109742863, 0, 3, 'saveContractus', 'JSON', '/ft/wine/saveContractus', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845962, 0, 1490109742863, 0, 3, 'getProductionInStock', 'JSON', '/fineReport/supplyChainBoardXS/getProductionInStock', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392845962, 0, 1490109742863, 0, 3, 'getProductionInStock', 'JSON', '/fineReport/supplyChainBoardXS/getProductionInStock', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:47:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846017, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/ft/wine/savePayVoucherPhotos', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846017, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/ft/wine/savePayVoucherPhotos', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846080, 0, 1490109742863, 0, 3, 'saveDealer', 'JSON', '/ft/wine/saveDealer', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846080, 0, 1490109742863, 0, 3, 'saveDealer', 'JSON', '/ft/wine/saveDealer', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846143, 0, 1490109742863, 0, 3, 'savePdfImgs', 'JSON', '/ft/wine/savePdfImgs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846143, 0, 1490109742863, 0, 3, 'savePdfImgs', 'JSON', '/ft/wine/savePdfImgs', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846153, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/ft/wine/savePoApp', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846153, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/ft/wine/savePoApp', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846199, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/ft/wine/saveWineCustom', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846199, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/ft/wine/saveWineCustom', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846211, 0, 1490109742863, 0, 3, 'addNewWineStore', 'JSON', '/ft/wine/addNewWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846211, 0, 1490109742863, 0, 3, 'addNewWineStore', 'JSON', '/ft/wine/addNewWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846256, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/ft/wine/saveWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846256, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/ft/wine/saveWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846276, 0, 1490109742863, 0, 3, 'saveWineQueue', 'JSON', '/ft/wine/saveWineQueue', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846276, 0, 1490109742863, 0, 3, 'saveWineQueue', 'JSON', '/ft/wine/saveWineQueue', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846297, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/ft/wine/submitWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846297, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/ft/wine/submitWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846314, 0, 1490109742863, 0, 3, 'suspendSealWine', 'JSON', '/ft/wine/suspendSealWine', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846314, 0, 1490109742863, 0, 3, 'suspendSealWine', 'JSON', '/ft/wine/suspendSealWine', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846347, 0, 1490109742863, 0, 3, 'getActivityPeopleSize', 'JSON', '/h2/activityPeopleSize/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846347, 0, 1490109742863, 0, 3, 'getActivityPeopleSize', 'JSON', '/h2/activityPeopleSize/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846397, 0, 1490109742863, 0, 3, 'getUserRelationshipLevel', 'JSON', '/h2/userRelationship/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846397, 0, 1490109742863, 0, 3, 'getUserRelationshipLevel', 'JSON', '/h2/userRelationship/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846400, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/h2/storeList/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846400, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/h2/storeList/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846431, 0, 1490109742863, 0, 3, 'getUserRelationshipRecord', 'JSON', '/h2/userRelationshipRecord/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846431, 0, 1490109742863, 0, 3, 'getUserRelationshipRecord', 'JSON', '/h2/userRelationshipRecord/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846459, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/hr/oa/callbackProcessData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846459, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/hr/oa/callbackProcessData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846462, 0, 1490109742863, 0, 3, 'checkJobs', 'JSON', '/hr/oa/checkJobs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846462, 0, 1490109742863, 0, 3, 'checkJobs', 'JSON', '/hr/oa/checkJobs', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846494, 0, 1490109742863, 0, 3, 'checkMobile', 'JSON', '/hr/oa/checkMobile', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846494, 0, 1490109742863, 0, 3, 'checkMobile', 'JSON', '/hr/oa/checkMobile', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846547, 0, 1490109742863, 0, 3, 'queryDeparture', 'JSON', '/hr/oa/departure', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846547, 0, 1490109742863, 0, 3, 'queryDeparture', 'JSON', '/hr/oa/departure', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846559, 0, 1490109742863, 0, 3, 'queryPosition', 'JSON', '/hr/oa/position', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846559, 0, 1490109742863, 0, 3, 'queryPosition', 'JSON', '/hr/oa/position', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846596, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/ft/wine/saveWineSubPack', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846596, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/ft/wine/saveWineSubPack', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846620, 0, 1490109742863, 0, 3, 'queryMobileByUserId', 'JSON', '/hr/oa/queryMobileByUserId', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846620, 0, 1490109742863, 0, 3, 'queryMobileByUserId', 'JSON', '/hr/oa/queryMobileByUserId', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846622, 0, 1490109742863, 0, 3, 'queryPositiveTx1', 'JSON', '/hr/oa/queryPositiveTx1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846622, 0, 1490109742863, 0, 3, 'queryPositiveTx1', 'JSON', '/hr/oa/queryPositiveTx1', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846636, 0, 1490109742863, 0, 3, 'queryPositiveTx2', 'JSON', '/hr/oa/queryPositiveTx2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846636, 0, 1490109742863, 0, 3, 'queryPositiveTx2', 'JSON', '/hr/oa/queryPositiveTx2', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846648, 0, 1490109742863, 0, 3, 'getInviteUserFunctionLevel', 'JSON', '/h2/InviteUserFunction/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846648, 0, 1490109742863, 0, 3, 'getInviteUserFunctionLevel', 'JSON', '/h2/InviteUserFunction/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846685, 0, 1490109742863, 0, 3, 'getActivityPeopleList', 'JSON', '/h2/activityPeopleList/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846685, 0, 1490109742863, 0, 3, 'getActivityPeopleList', 'JSON', '/h2/activityPeopleList/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846687, 0, 1490109742863, 0, 3, 'queryTx1', 'JSON', '/hr/oa/queryTx1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846687, 0, 1490109742863, 0, 3, 'queryTx1', 'JSON', '/hr/oa/queryTx1', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846709, 0, 1490109742863, 0, 3, 'checkCode', 'JSON', '/message/check/code', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846709, 0, 1490109742863, 0, 3, 'checkCode', 'JSON', '/message/check/code', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846766, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846766, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send3', '{ "smsMessageDTO": {} // 必填。 smsMessageDTO }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846770, 0, 1490109742863, 0, 3, 'queryTx2', 'JSON', '/hr/oa/queryTx2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846770, 0, 1490109742863, 0, 3, 'queryTx2', 'JSON', '/hr/oa/queryTx2', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846771, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846771, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send', '{ "smsMessageDTO": {} // 必填。 smsMessageDTO }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846835, 0, 1490109742863, 0, 3, 'smsSend', 'JSON', '/message/sms/send', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846835, 0, 1490109742863, 0, 3, 'smsSend', 'JSON', '/message/sms/send', '{ "smsMessageDTO": {} // 必填。 smsMessageDTO }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846837, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846837, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send2', '{ "smsMessageDTO": {} // 必填。 smsMessageDTO }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846900, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/oauth/token/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846900, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/oauth/token/query', '{ "dmsMessageDTO": {} // 必填。 dmsMessageDTO }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846911, 0, 1490109742863, 0, 3, 'storeStockItemMTD', 'JSON', '/sfa/storeStockItemMTD', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846911, 0, 1490109742863, 0, 3, 'storeStockItemMTD', 'JSON', '/sfa/storeStockItemMTD', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846969, 0, 1490109742863, 0, 3, 'xmbarcodeQuery', 'JSON', '/sfa/xmbarcode/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846969, 0, 1490109742863, 0, 3, 'xmbarcodeQuery', 'JSON', '/sfa/xmbarcode/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846971, 0, 1490109742863, 0, 3, 'test1', 'PARAM', '/test/test1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392846971, 0, 1490109742863, 0, 3, 'test1', 'PARAM', '/test/test1', '{ }', null, null, null, null, '2022-02-09 15:47:26.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847206, 0, 1490109742863, 0, 3, 'code', 'PARAM', '/weimob/oauth/code', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847206, 0, 1490109742863, 0, 3, 'code', 'PARAM', '/weimob/oauth/code', '{ "code": "" // code }', null, null, null, null, '2022-02-09 15:47:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847209, 0, 1490109742863, 0, 3, 'suspendWineStore', 'JSON', '/ft/wine/suspendWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847209, 0, 1490109742863, 0, 3, 'suspendWineStore', 'JSON', '/ft/wine/suspendWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:47:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847349, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/wms/xinmaStackData/qryCodeData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847349, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/wms/xinmaStackData/qryCodeData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847352, 0, 1490109742863, 0, 3, 'cancelToDoListById', 'JSON', '/oa/workflow/cancelToDoListById', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847352, 0, 1490109742863, 0, 3, 'cancelToDoListById', 'JSON', '/oa/workflow/cancelToDoListById', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:47:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847449, 0, 1490109742863, 0, 3, 'getStoreListByMobile', 'JSON', '/sfa/getStoreListByMobile', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392847449, 0, 1490109742863, 0, 3, 'getStoreListByMobile', 'JSON', '/sfa/getStoreListByMobile', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:47:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392880998, 0, 1490109742863, 0, 3, 'get', 'JSON', '/apijson/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392880998, 0, 1490109742863, 0, 3, 'get', 'JSON', '/apijson/get', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881034, 0, 1490109742863, 0, 3, 'get', 'JSON', '/apijsonForDc/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881034, 0, 1490109742863, 0, 3, 'get', 'JSON', '/apijsonForDc/get', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881043, 0, 1490109742863, 0, 3, 'callbackAuditZGTZSData', 'JSON', '/audit/oa/callbackAuditZGTZSData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881043, 0, 1490109742863, 0, 3, 'callbackAuditZGTZSData', 'JSON', '/audit/oa/callbackAuditZGTZSData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881057, 0, 1490109742863, 0, 3, 'callbackAuditData', 'JSON', '/audit/oa/callbackAuditData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881057, 0, 1490109742863, 0, 3, 'callbackAuditData', 'JSON', '/audit/oa/callbackAuditData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881072, 0, 1490109742863, 0, 3, 'callbackComprehensiveData', 'JSON', '/comprehensive/oa/callbackComprehensiveData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881072, 0, 1490109742863, 0, 3, 'callbackComprehensiveData', 'JSON', '/comprehensive/oa/callbackComprehensiveData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881084, 0, 1490109742863, 0, 3, 'callbackAuditBGData', 'JSON', '/audit/oa/callbackAuditBGData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881084, 0, 1490109742863, 0, 3, 'callbackAuditBGData', 'JSON', '/audit/oa/callbackAuditBGData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881126, 0, 1490109742863, 0, 3, 'storePerformanceMTD', 'JSON', '/dc/StorePerformanceMTD', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881126, 0, 1490109742863, 0, 3, 'storePerformanceMTD', 'JSON', '/dc/StorePerformanceMTD', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881185, 0, 1490109742863, 0, 3, 'queryMiniprogramAddressDetail', 'JSON', '/dc/addressDetail/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881185, 0, 1490109742863, 0, 3, 'queryMiniprogramAddressDetail', 'JSON', '/dc/addressDetail/miniprogram/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881236, 0, 1490109742863, 0, 3, 'getCategory', 'JSON', '/dc/category/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881236, 0, 1490109742863, 0, 3, 'getCategory', 'JSON', '/dc/category/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881292, 0, 1490109742863, 0, 3, 'getEarnestMoney', 'JSON', '/dc/costplan/detail/earnestMoney', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881292, 0, 1490109742863, 0, 3, 'getEarnestMoney', 'JSON', '/dc/costplan/detail/earnestMoney', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881325, 0, 1490109742863, 0, 3, 'getCostPlanDetail', 'JSON', '/dc/costplan/detail/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881325, 0, 1490109742863, 0, 3, 'getCostPlanDetail', 'JSON', '/dc/costplan/detail/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881351, 0, 1490109742863, 0, 3, 'getVerification', 'JSON', '/dc/costplan/verification/detail/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881351, 0, 1490109742863, 0, 3, 'getVerification', 'JSON', '/dc/costplan/verification/detail/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881356, 0, 1490109742863, 0, 3, 'getDetailSalePlan', 'JSON', '/dc/costplan/detail/salePlan', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881356, 0, 1490109742863, 0, 3, 'getDetailSalePlan', 'JSON', '/dc/costplan/detail/salePlan', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881376, 0, 1490109742863, 0, 3, 'getCostPlanSearch', 'JSON', '/dc/costplan/search/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881376, 0, 1490109742863, 0, 3, 'getCostPlanSearch', 'JSON', '/dc/costplan/search/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881402, 0, 1490109742863, 0, 3, 'callBackFileOperationSuccess', 'JSON', '/dc/file/operation/success/callback', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881402, 0, 1490109742863, 0, 3, 'callBackFileOperationSuccess', 'JSON', '/dc/file/operation/success/callback', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881412, 0, 1490109742863, 0, 3, 'getHtfy', 'JSON', '/dc/htfy/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881412, 0, 1490109742863, 0, 3, 'getHtfy', 'JSON', '/dc/htfy/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881467, 0, 1490109742863, 0, 3, 'XmDownloadLink', 'JSON', '/dc/xmbarcode/download/link', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881467, 0, 1490109742863, 0, 3, 'XmDownloadLink', 'JSON', '/dc/xmbarcode/download/link', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881519, 0, 1490109742863, 0, 3, 'getProductInfo', 'JSON', '/dc/xmbarcode/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881519, 0, 1490109742863, 0, 3, 'getProductInfo', 'JSON', '/dc/xmbarcode/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881524, 0, 1490109742863, 0, 3, 'judge', 'JSON', '/dc/xmbarcode/sfa/exceptioncode', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881524, 0, 1490109742863, 0, 3, 'judge', 'JSON', '/dc/xmbarcode/sfa/exceptioncode', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881557, 0, 1490109742863, 0, 3, 'getCostPlanQuery', 'JSON', '/dc/costplan/list/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881557, 0, 1490109742863, 0, 3, 'getCostPlanQuery', 'JSON', '/dc/costplan/list/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881578, 0, 1490109742863, 0, 3, 'getCateringCancel', 'JSON', '/dc/xmbarcode/statistical/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881578, 0, 1490109742863, 0, 3, 'getCateringCancel', 'JSON', '/dc/xmbarcode/statistical/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881584, 0, 1490109742863, 0, 3, 'getProductInfoStatus', 'JSON', '/dc/xmbarcode/status/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881584, 0, 1490109742863, 0, 3, 'getProductInfoStatus', 'JSON', '/dc/xmbarcode/status/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881621, 0, 1490109742863, 0, 3, 'saveSfaCostCustomer', 'JSON', '/dms/costcustomer/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881621, 0, 1490109742863, 0, 3, 'saveSfaCostCustomer', 'JSON', '/dms/costcustomer/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881651, 0, 1490109742863, 0, 3, 'getSfaCostCustomerPage', 'JSON', '/dms/costcustomerpage/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881651, 0, 1490109742863, 0, 3, 'getSfaCostCustomerPage', 'JSON', '/dms/costcustomerpage/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881652, 0, 1490109742863, 0, 3, 'getDealer', 'JSON', '/dms/dealer/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881652, 0, 1490109742863, 0, 3, 'getDealer', 'JSON', '/dms/dealer/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881657, 0, 1490109742863, 0, 3, 'getMiniprogramDealers', 'JSON', '/dms/dealer/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881657, 0, 1490109742863, 0, 3, 'getMiniprogramDealers', 'JSON', '/dms/dealer/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881672, 0, 1490109742863, 0, 3, 'getDealerByMobile', 'JSON', '/dms/dealer/queryByMobile', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881672, 0, 1490109742863, 0, 3, 'getDealerByMobile', 'JSON', '/dms/dealer/queryByMobile', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881722, 0, 1490109742863, 0, 3, 'getSfaDealer', 'JSON', '/dms/dealer/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881722, 0, 1490109742863, 0, 3, 'getSfaDealer', 'JSON', '/dms/dealer/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881730, 0, 1490109742863, 0, 3, 'dealerTask', 'JSON', '/dms/dealer/todoTask', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881730, 0, 1490109742863, 0, 3, 'dealerTask', 'JSON', '/dms/dealer/todoTask', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881794, 0, 1490109742863, 0, 3, 'dealerAmbQuery', 'JSON', '/dms/dealerAmb/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881794, 0, 1490109742863, 0, 3, 'dealerAmbQuery', 'JSON', '/dms/dealerAmb/sfa/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881796, 0, 1490109742863, 0, 3, 'getDealerAndSub', 'JSON', '/dms/dealer/v2/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881796, 0, 1490109742863, 0, 3, 'getDealerAndSub', 'JSON', '/dms/dealer/v2/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881847, 0, 1490109742863, 0, 3, 'getSfaDealerStoreList', 'JSON', '/dms/dealer_store_list/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881847, 0, 1490109742863, 0, 3, 'getSfaDealerStoreList', 'JSON', '/dms/dealer_store_list/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881865, 0, 1490109742863, 0, 3, 'getSfaDealerStoreSupply', 'JSON', '/dms/dealer_store_supply/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881865, 0, 1490109742863, 0, 3, 'getSfaDealerStoreSupply', 'JSON', '/dms/dealer_store_supply/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881914, 0, 1490109742863, 0, 3, 'getDealerProduct', 'JSON', '/dms/dealerproduct/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881914, 0, 1490109742863, 0, 3, 'getDealerProduct', 'JSON', '/dms/dealerproduct/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881969, 0, 1490109742863, 0, 3, 'addDealerStockOrder', 'JSON', '/dms/dealerstockorder/insert', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392881969, 0, 1490109742863, 0, 3, 'addDealerStockOrder', 'JSON', '/dms/dealerstockorder/insert', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882031, 0, 1490109742863, 0, 3, 'getSfaDealerProduct', 'JSON', '/dms/dealerproduct/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882031, 0, 1490109742863, 0, 3, 'getSfaDealerProduct', 'JSON', '/dms/dealerproduct/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882085, 0, 1490109742863, 0, 3, 'getDealerstockorder', 'JSON', '/dms/dealerstockorder/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882085, 0, 1490109742863, 0, 3, 'getDealerstockorder', 'JSON', '/dms/dealerstockorder/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882127, 0, 1490109742863, 0, 3, 'getMaterial', 'JSON', '/dc/material/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882127, 0, 1490109742863, 0, 3, 'getMaterial', 'JSON', '/dc/material/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882157, 0, 1490109742863, 0, 3, 'saveDealerstockorderStatu', 'JSON', '/dms/dealerstockorder/sfa/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882157, 0, 1490109742863, 0, 3, 'saveDealerstockorderStatu', 'JSON', '/dms/dealerstockorder/sfa/update', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882166, 0, 1490109742863, 0, 3, 'callBackMiniProgramdistibutionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/callback', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882166, 0, 1490109742863, 0, 3, 'callBackMiniProgramdistibutionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/callback', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882184, 0, 1490109742863, 0, 3, 'getSfaDist', 'JSON', '/dms/dis/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882184, 0, 1490109742863, 0, 3, 'getSfaDist', 'JSON', '/dms/dis/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882194, 0, 1490109742863, 0, 3, 'getProductSeries', 'JSON', '/dms/dict/product_series', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882194, 0, 1490109742863, 0, 3, 'getProductSeries', 'JSON', '/dms/dict/product_series', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882225, 0, 1490109742863, 0, 3, 'saveSfaDistStatus', 'JSON', '/dms/diststatus/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882225, 0, 1490109742863, 0, 3, 'saveSfaDistStatus', 'JSON', '/dms/diststatus/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882239, 0, 1490109742863, 0, 3, 'saveFeeBudget', 'JSON', '/dms/fee/saveFeeBudget', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882239, 0, 1490109742863, 0, 3, 'saveFeeBudget', 'JSON', '/dms/fee/saveFeeBudget', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882314, 0, 1490109742863, 0, 3, 'findStoreSCRM', 'JSON', '/dms/find/findStoreSCRM', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882314, 0, 1490109742863, 0, 3, 'findStoreSCRM', 'JSON', '/dms/find/findStoreSCRM', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882317, 0, 1490109742863, 0, 3, 'fnRptConfirm', 'JSON', '/dms/fn/rpt/confirm', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882317, 0, 1490109742863, 0, 3, 'fnRptConfirm', 'JSON', '/dms/fn/rpt/confirm', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882372, 0, 1490109742863, 0, 3, 'fnRptConfirmForXYR', 'JSON', '/dms/fn/rpt/confirmForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882372, 0, 1490109742863, 0, 3, 'fnRptConfirmForXYR', 'JSON', '/dms/fn/rpt/confirmForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882377, 0, 1490109742863, 0, 3, 'fnRptDealerQueryForXYR', 'JSON', '/dms/fn/rpt/dealerQueryForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882377, 0, 1490109742863, 0, 3, 'fnRptDealerQueryForXYR', 'JSON', '/dms/fn/rpt/dealerQueryForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882433, 0, 1490109742863, 0, 3, 'fnRptDownload', 'JSON', '/dms/fn/rpt/download', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882433, 0, 1490109742863, 0, 3, 'fnRptDownload', 'JSON', '/dms/fn/rpt/download', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882483, 0, 1490109742863, 0, 3, 'getUnit', 'JSON', '/dc/unit/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882483, 0, 1490109742863, 0, 3, 'getUnit', 'JSON', '/dc/unit/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882489, 0, 1490109742863, 0, 3, 'fnRptGetVcPdfUrl', 'JSON', '/dms/fn/rpt/getVcPdfUrl', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882489, 0, 1490109742863, 0, 3, 'fnRptGetVcPdfUrl', 'JSON', '/dms/fn/rpt/getVcPdfUrl', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882737, 0, 1490109742863, 0, 3, 'getSfaDistList', 'JSON', '/dms/disList/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882737, 0, 1490109742863, 0, 3, 'getSfaDistList', 'JSON', '/dms/disList/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882744, 0, 1490109742863, 0, 3, 'fnRptQuery', 'JSON', '/dms/fn/rpt/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882744, 0, 1490109742863, 0, 3, 'fnRptQuery', 'JSON', '/dms/fn/rpt/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882753, 0, 1490109742863, 0, 3, 'fnRptQueryForXYR', 'JSON', '/dms/fn/rpt/queryForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392882753, 0, 1490109742863, 0, 3, 'fnRptQueryForXYR', 'JSON', '/dms/fn/rpt/queryForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883020, 0, 1490109742863, 0, 3, 'fnRptYearQueryForXYR', 'JSON', '/dms/fn/rpt/yearQueryForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883020, 0, 1490109742863, 0, 3, 'fnRptYearQueryForXYR', 'JSON', '/dms/fn/rpt/yearQueryForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883044, 0, 1490109742863, 0, 3, 'saveSfaFreePoApp', 'JSON', '/dms/freePoApp/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883044, 0, 1490109742863, 0, 3, 'saveSfaFreePoApp', 'JSON', '/dms/freePoApp/sfa/save', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883151, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList103', 'JSON', '/dms/freePoAppList103/sfa/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883151, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList103', 'JSON', '/dms/freePoAppList103/sfa/delete', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883201, 0, 1490109742863, 0, 3, 'getSfaPoAppPage103', 'JSON', '/dms/freePoAppPage103/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883201, 0, 1490109742863, 0, 3, 'getSfaPoAppPage103', 'JSON', '/dms/freePoAppPage103/sfa/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883230, 0, 1490109742863, 0, 3, 'saveSfaFxPoApp', 'JSON', '/dms/fxpoapp/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883230, 0, 1490109742863, 0, 3, 'saveSfaFxPoApp', 'JSON', '/dms/fxpoapp/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883248, 0, 1490109742863, 0, 3, 'getInvoiceType', 'JSON', '/dms/invoicetype/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883248, 0, 1490109742863, 0, 3, 'getInvoiceType', 'JSON', '/dms/invoicetype/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883287, 0, 1490109742863, 0, 3, 'fnRptDealerQuery', 'JSON', '/dms/fn/rpt/dealerQuery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883287, 0, 1490109742863, 0, 3, 'fnRptDealerQuery', 'JSON', '/dms/fn/rpt/dealerQuery', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883309, 0, 1490109742863, 0, 3, 'login', 'JSON', '/dms/login', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883309, 0, 1490109742863, 0, 3, 'login', 'JSON', '/dms/login', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883336, 0, 1490109742863, 0, 3, 'callbackLogRecord', 'JSON', '/dms/log/callback', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883336, 0, 1490109742863, 0, 3, 'callbackLogRecord', 'JSON', '/dms/log/callback', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883357, 0, 1490109742863, 0, 3, 'loginCode', 'JSON', '/dms/loginCode', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883357, 0, 1490109742863, 0, 3, 'loginCode', 'JSON', '/dms/loginCode', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883385, 0, 1490109742863, 0, 3, 'queryMPDealerStoreSupply', 'JSON', '/dms/miniprogram/dealer_store_supply/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883385, 0, 1490109742863, 0, 3, 'queryMPDealerStoreSupply', 'JSON', '/dms/miniprogram/dealer_store_supply/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883405, 0, 1490109742863, 0, 3, 'queryNotifyList', 'JSON', '/dms/notify/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883405, 0, 1490109742863, 0, 3, 'queryNotifyList', 'JSON', '/dms/notify/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883436, 0, 1490109742863, 0, 3, 'miniprogramLogin', 'JSON', '/dms/miniprogram-login', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883436, 0, 1490109742863, 0, 3, 'miniprogramLogin', 'JSON', '/dms/miniprogram-login', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883488, 0, 1490109742863, 0, 3, 'getPoAppDetail', 'JSON', '/dms/po/poAppDetail/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883488, 0, 1490109742863, 0, 3, 'getPoAppDetail', 'JSON', '/dms/po/poAppDetail/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883517, 0, 1490109742863, 0, 3, 'fnRptPoAppList', 'JSON', '/dms/po/poAppList/poAppListForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883517, 0, 1490109742863, 0, 3, 'fnRptPoAppList', 'JSON', '/dms/po/poAppList/poAppListForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883537, 0, 1490109742863, 0, 3, 'getPoAppList', 'JSON', '/dms/po/poAppList/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883537, 0, 1490109742863, 0, 3, 'getPoAppList', 'JSON', '/dms/po/poAppList/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883571, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/kuadi100/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883571, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/kuadi100/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883589, 0, 1490109742863, 0, 3, 'saveSfaDistributeBill', 'JSON', '/dms/po/saveSfaDistributeBill', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883589, 0, 1490109742863, 0, 3, 'saveSfaDistributeBill', 'JSON', '/dms/po/saveSfaDistributeBill', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883627, 0, 1490109742863, 0, 3, 'wbPoAppMasterForEas', 'JSON', '/dms/po/wbPoAppMasterForEas', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883627, 0, 1490109742863, 0, 3, 'wbPoAppMasterForEas', 'JSON', '/dms/po/wbPoAppMasterForEas', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883691, 0, 1490109742863, 0, 3, 'savePoDistStatus', 'JSON', '/dms/poDistStatus/eas/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883691, 0, 1490109742863, 0, 3, 'savePoDistStatus', 'JSON', '/dms/poDistStatus/eas/save', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883701, 0, 1490109742863, 0, 3, 'startSfaPoApp', 'JSON', '/dms/poapp/sfa/start', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883701, 0, 1490109742863, 0, 3, 'startSfaPoApp', 'JSON', '/dms/poapp/sfa/start', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883746, 0, 1490109742863, 0, 3, 'fnRptYearQuery', 'JSON', '/dms/fn/rpt/yearQuery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883746, 0, 1490109742863, 0, 3, 'fnRptYearQuery', 'JSON', '/dms/fn/rpt/yearQuery', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883757, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList', 'JSON', '/dms/poapplist/sfa/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883757, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList', 'JSON', '/dms/poapplist/sfa/delete', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883760, 0, 1490109742863, 0, 3, 'queueSavePurchaseOrder', 'JSON', '/dms/poapplist/sfa/queueSavePurchaseOrder', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883760, 0, 1490109742863, 0, 3, 'queueSavePurchaseOrder', 'JSON', '/dms/poapplist/sfa/queueSavePurchaseOrder', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883805, 0, 1490109742863, 0, 3, 'getDistributionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883805, 0, 1490109742863, 0, 3, 'getDistributionOrder', 'JSON', '/dms/distibutionOrder/miniprogram/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883865, 0, 1490109742863, 0, 3, 'saveSfaPoAppList', 'JSON', '/dms/poapplist/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883865, 0, 1490109742863, 0, 3, 'saveSfaPoAppList', 'JSON', '/dms/poapplist/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883887, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList105', 'JSON', '/dms/poapplist105/sfa/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883887, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList105', 'JSON', '/dms/poapplist105/sfa/delete', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883924, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage', 'JSON', '/dms/poapppage/posfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883924, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage', 'JSON', '/dms/poapppage/posfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883937, 0, 1490109742863, 0, 3, 'getSfaPoAppPage', 'JSON', '/dms/poapppage/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883937, 0, 1490109742863, 0, 3, 'getSfaPoAppPage', 'JSON', '/dms/poapppage/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883980, 0, 1490109742863, 0, 3, 'saveMiniProgramPoAppPage106', 'JSON', '/dms/poapppage106/miniprogram/callback', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392883980, 0, 1490109742863, 0, 3, 'saveMiniProgramPoAppPage106', 'JSON', '/dms/poapppage106/miniprogram/callback', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884027, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage106', 'JSON', '/dms/poapppage106/posfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884027, 0, 1490109742863, 0, 3, 'getPoSfaPoAppPage106', 'JSON', '/dms/poapppage106/posfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884028, 0, 1490109742863, 0, 3, 'poPreList', 'JSON', '/dms/pre/poPreList', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884028, 0, 1490109742863, 0, 3, 'poPreList', 'JSON', '/dms/pre/poPreList', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884052, 0, 1490109742863, 0, 3, 'startSfaPoPre', 'JSON', '/dms/pre/startSfaPoPre', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884052, 0, 1490109742863, 0, 3, 'startSfaPoPre', 'JSON', '/dms/pre/startSfaPoPre', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884083, 0, 1490109742863, 0, 3, 'suspendSfaPoPre', 'JSON', '/dms/pre/suspendSfaPoPre', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884083, 0, 1490109742863, 0, 3, 'suspendSfaPoPre', 'JSON', '/dms/pre/suspendSfaPoPre', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884116, 0, 1490109742863, 0, 3, 'getProduct', 'JSON', '/dms/product/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884116, 0, 1490109742863, 0, 3, 'getProduct', 'JSON', '/dms/product/query', '{ "dmsMessageDTO": {} // 必填。 dmsMessageDTO }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884140, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/dms/product/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884140, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/dms/product/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884162, 0, 1490109742863, 0, 3, 'aInvQueryDetail', 'JSON', '/dms/rpt/aInvQueryDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884162, 0, 1490109742863, 0, 3, 'aInvQueryDetail', 'JSON', '/dms/rpt/aInvQueryDetail', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884190, 0, 1490109742863, 0, 3, 'getDfundBalanceList', 'JSON', '/dms/rpt/dfundBalance/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884190, 0, 1490109742863, 0, 3, 'getDfundBalanceList', 'JSON', '/dms/rpt/dfundBalance/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884212, 0, 1490109742863, 0, 3, 'fnRptDfundDetail', 'JSON', '/dms/rpt/dfundDetail/dfundDetailForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884212, 0, 1490109742863, 0, 3, 'fnRptDfundDetail', 'JSON', '/dms/rpt/dfundDetail/dfundDetailForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884233, 0, 1490109742863, 0, 3, 'getDfundDetailList', 'JSON', '/dms/rpt/dfundDetail/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884233, 0, 1490109742863, 0, 3, 'getDfundDetailList', 'JSON', '/dms/rpt/dfundDetail/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884241, 0, 1490109742863, 0, 3, 'fnRptDfundSum', 'JSON', '/dms/rpt/dfundSum/dfundSumForXYR', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884241, 0, 1490109742863, 0, 3, 'fnRptDfundSum', 'JSON', '/dms/rpt/dfundSum/dfundSumForXYR', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884266, 0, 1490109742863, 0, 3, 'getTaskQueryList', 'JSON', '/dms/rpt/taskQuery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884266, 0, 1490109742863, 0, 3, 'getTaskQueryList', 'JSON', '/dms/rpt/taskQuery', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884335, 0, 1490109742863, 0, 3, 'getTaskDetailQueryList', 'JSON', '/dms/rpt/taskDetailQuery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884335, 0, 1490109742863, 0, 3, 'getTaskDetailQueryList', 'JSON', '/dms/rpt/taskDetailQuery', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884390, 0, 1490109742863, 0, 3, 'saveStorePickupLocation', 'JSON', '/dms/save/storePickupLocation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884390, 0, 1490109742863, 0, 3, 'saveStorePickupLocation', 'JSON', '/dms/save/storePickupLocation', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884448, 0, 1490109742863, 0, 3, 'deleteMQPoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/deleteMQ', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884448, 0, 1490109742863, 0, 3, 'deleteMQPoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/deleteMQ', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884514, 0, 1490109742863, 0, 3, 'queryWjListForBizPerson', 'JSON', '/dms/servey/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884514, 0, 1490109742863, 0, 3, 'queryWjListForBizPerson', 'JSON', '/dms/servey/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884743, 0, 1490109742863, 0, 3, 'queryMiniprogramServeyList', 'JSON', '/dms/serveyList/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884743, 0, 1490109742863, 0, 3, 'queryMiniprogramServeyList', 'JSON', '/dms/serveyList/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884803, 0, 1490109742863, 0, 3, 'getMiniProgramPoAppPage106', 'JSON', '/dms/poapppage106/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392884803, 0, 1490109742863, 0, 3, 'getMiniProgramPoAppPage106', 'JSON', '/dms/poapppage106/miniprogram/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:04.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885007, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList108', 'JSON', '/dms/sfa/deleteSfaPoAppList108', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885007, 0, 1490109742863, 0, 3, 'deleteSfaPoAppList108', 'JSON', '/dms/sfa/deleteSfaPoAppList108', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885027, 0, 1490109742863, 0, 3, 'getSfaPoAppPage108', 'JSON', '/dms/sfa/getSfaPoAppPage108', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885027, 0, 1490109742863, 0, 3, 'getSfaPoAppPage108', 'JSON', '/dms/sfa/getSfaPoAppPage108', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885066, 0, 1490109742863, 0, 3, 'cancelSfaPromotePoApp', 'JSON', '/dms/sfa/cancelSfaPromotePoApp', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885066, 0, 1490109742863, 0, 3, 'cancelSfaPromotePoApp', 'JSON', '/dms/sfa/cancelSfaPromotePoApp', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885107, 0, 1490109742863, 0, 3, 'queueSaveSfaPromotePoApp', 'JSON', '/dms/sfa/queueSaveSfaPromotePoApp', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885107, 0, 1490109742863, 0, 3, 'queueSaveSfaPromotePoApp', 'JSON', '/dms/sfa/queueSaveSfaPromotePoApp', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885110, 0, 1490109742863, 0, 3, 'orderApprovalRecord', 'JSON', '/dms/sfa/orderApprovalRecord', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885110, 0, 1490109742863, 0, 3, 'orderApprovalRecord', 'JSON', '/dms/sfa/orderApprovalRecord', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885189, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStore', 'JSON', '/dms/sfa/saveOrUpdateSfaStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885189, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStore', 'JSON', '/dms/sfa/saveOrUpdateSfaStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885337, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStoreSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaStoreSupplier', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885337, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaStoreSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaStoreSupplier', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885473, 0, 1490109742863, 0, 3, 'sfaLogin', 'JSON', '/dms/sfaLogin', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885473, 0, 1490109742863, 0, 3, 'sfaLogin', 'JSON', '/dms/sfaLogin', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885476, 0, 1490109742863, 0, 3, 'saveSfaPromotePoApp', 'JSON', '/dms/sfa/saveSfaPromotePoApp', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885476, 0, 1490109742863, 0, 3, 'saveSfaPromotePoApp', 'JSON', '/dms/sfa/saveSfaPromotePoApp', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885597, 0, 1490109742863, 0, 3, 'getMiniprogramSfaStroeSupplierList', 'JSON', '/dms/sfastoresupplierList/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885597, 0, 1490109742863, 0, 3, 'getMiniprogramSfaStroeSupplierList', 'JSON', '/dms/sfastoresupplierList/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885599, 0, 1490109742863, 0, 3, 'getSfaStore', 'JSON', '/dms/store/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885599, 0, 1490109742863, 0, 3, 'getSfaStore', 'JSON', '/dms/store/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885716, 0, 1490109742863, 0, 3, 'saveSfaStore', 'JSON', '/dms/store/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885716, 0, 1490109742863, 0, 3, 'saveSfaStore', 'JSON', '/dms/store/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885766, 0, 1490109742863, 0, 3, 'storeTask', 'JSON', '/dms/store/todoTask', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885766, 0, 1490109742863, 0, 3, 'storeTask', 'JSON', '/dms/store/todoTask', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885816, 0, 1490109742863, 0, 3, 'getSfaExpandStore', 'JSON', '/dms/storeExpand/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885816, 0, 1490109742863, 0, 3, 'getSfaExpandStore', 'JSON', '/dms/storeExpand/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885867, 0, 1490109742863, 0, 3, 'getsfaStoreDateKpiList', 'JSON', '/dms/storeDateKpi/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885867, 0, 1490109742863, 0, 3, 'getsfaStoreDateKpiList', 'JSON', '/dms/storeDateKpi/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885880, 0, 1490109742863, 0, 3, 'getSfaExpandStoreList', 'JSON', '/dms/storeExpandList/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885880, 0, 1490109742863, 0, 3, 'getSfaExpandStoreList', 'JSON', '/dms/storeExpandList/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885899, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/dms/storeList/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885899, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/dms/storeList/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885947, 0, 1490109742863, 0, 3, 'getDmsStoreList', 'JSON', '/dms/storelist/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885947, 0, 1490109742863, 0, 3, 'getDmsStoreList', 'JSON', '/dms/storelist/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885994, 0, 1490109742863, 0, 3, 'getSfaStoreUpdateList', 'JSON', '/dms/storeupdatelist/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392885994, 0, 1490109742863, 0, 3, 'getSfaStoreUpdateList', 'JSON', '/dms/storeupdatelist/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886045, 0, 1490109742863, 0, 3, 'getSfaStoreList', 'JSON', '/dms/storelist/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886045, 0, 1490109742863, 0, 3, 'getSfaStoreList', 'JSON', '/dms/storelist/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886073, 0, 1490109742863, 0, 3, 'saveSfaDealers', 'JSON', '/dms/szdealer/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886073, 0, 1490109742863, 0, 3, 'saveSfaDealers', 'JSON', '/dms/szdealer/sfa/save', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886096, 0, 1490109742863, 0, 3, 'saveSfaSzPoApp', 'JSON', '/dms/szpoapp/sfa/save', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886096, 0, 1490109742863, 0, 3, 'saveSfaSzPoApp', 'JSON', '/dms/szpoapp/sfa/save', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886124, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/dms/token/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886124, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/dms/token/query', '{ "dmsMessageDTO": {} // 必填。 dmsMessageDTO }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886152, 0, 1490109742863, 0, 3, 'queryCooperationStoreDelivery', 'JSON', '/dms/weimob/cooperation_store_delivery/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886152, 0, 1490109742863, 0, 3, 'queryCooperationStoreDelivery', 'JSON', '/dms/weimob/cooperation_store_delivery/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886158, 0, 1490109742863, 0, 3, 'queryDealerStoreSupply', 'JSON', '/dms/weimob/dealer_store_supply/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886158, 0, 1490109742863, 0, 3, 'queryDealerStoreSupply', 'JSON', '/dms/weimob/dealer_store_supply/query', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886174, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/dms/wine/getDealerPage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886174, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/dms/wine/getDealerPage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886208, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/dms/wine/employeeLogin', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886208, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/dms/wine/employeeLogin', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886211, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaDistributorSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaDistributorSupplier', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886211, 0, 1490109742863, 0, 3, 'saveOrUpdateSfaDistributorSupplier', 'JSON', '/dms/sfa/saveOrUpdateSfaDistributorSupplier', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886226, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/wine/getKuaidi100', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886226, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/dms/wine/getKuaidi100', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886262, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/dms/wine/getPoAppPage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886262, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/dms/wine/getPoAppPage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886271, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/dms/wine/getWineCustom', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886271, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/dms/wine/getWineCustom', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886278, 0, 1490109742863, 0, 3, 'saveDealer', 'JSON', '/dms/wine/saveDealer', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886278, 0, 1490109742863, 0, 3, 'saveDealer', 'JSON', '/dms/wine/saveDealer', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886325, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/dms/wine/getWineLocation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886325, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/dms/wine/getWineLocation', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886332, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/dms/wine/savePayVoucherPhotos', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886332, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/dms/wine/savePayVoucherPhotos', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886334, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/dms/wine/savePoApp', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886334, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/dms/wine/savePoApp', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886393, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/dms/wine/saveWineSubPack', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886393, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/dms/wine/saveWineSubPack', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886395, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/dms/wine/saveWineCustom', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886395, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/dms/wine/saveWineCustom', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886397, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/dms/wine/saveWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886397, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/dms/wine/saveWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886421, 0, 1490109742863, 0, 3, 'callRechargeBill', 'JSON', '/eas/recharge', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886421, 0, 1490109742863, 0, 3, 'callRechargeBill', 'JSON', '/eas/recharge', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886453, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/dms/wine/submitWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886453, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/dms/wine/submitWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886464, 0, 1490109742863, 0, 3, 'getbigAreaResult', 'JSON', '/fineReport/marketingBoard/bigArea', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886464, 0, 1490109742863, 0, 3, 'getbigAreaResult', 'JSON', '/fineReport/marketingBoard/bigArea', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886467, 0, 1490109742863, 0, 3, 'clearCacheForMarketing', 'JSON', '/fineReport/marketingBoard/clearCache', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886467, 0, 1490109742863, 0, 3, 'clearCacheForMarketing', 'JSON', '/fineReport/marketingBoard/clearCache', '{ }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886484, 0, 1490109742863, 0, 3, 'getDealerFees', 'JSON', '/fineReport/marketingBoard/dealerFees', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886484, 0, 1490109742863, 0, 3, 'getDealerFees', 'JSON', '/fineReport/marketingBoard/dealerFees', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886529, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/marketingBoard/fa1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886529, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/marketingBoard/fa1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886533, 0, 1490109742863, 0, 3, 'getFa2AreaNameResult', 'JSON', '/fineReport/marketingBoard/fa1AreaName', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886533, 0, 1490109742863, 0, 3, 'getFa2AreaNameResult', 'JSON', '/fineReport/marketingBoard/fa1AreaName', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886537, 0, 1490109742863, 0, 3, 'getFa2Result', 'JSON', '/fineReport/marketingBoard/fa2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886537, 0, 1490109742863, 0, 3, 'getFa2Result', 'JSON', '/fineReport/marketingBoard/fa2', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886550, 0, 1490109742863, 0, 3, 'getFa3Result', 'JSON', '/fineReport/marketingBoard/fa3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886550, 0, 1490109742863, 0, 3, 'getFa3Result', 'JSON', '/fineReport/marketingBoard/fa3', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886622, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886622, 0, 1490109742863, 0, 3, 'deletePoSfaPoAppList106', 'JSON', '/dms/poapplist106/sfa/delete', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886623, 0, 1490109742863, 0, 3, 'getFa6Result', 'JSON', '/fineReport/marketingBoard/fa6', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886623, 0, 1490109742863, 0, 3, 'getFa6Result', 'JSON', '/fineReport/marketingBoard/fa6', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886628, 0, 1490109742863, 0, 3, 'getFa4Result', 'JSON', '/fineReport/marketingBoard/fa4', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886628, 0, 1490109742863, 0, 3, 'getFa4Result', 'JSON', '/fineReport/marketingBoard/fa4', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886637, 0, 1490109742863, 0, 3, 'getFa7Result', 'JSON', '/fineReport/marketingBoard/fa7', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886637, 0, 1490109742863, 0, 3, 'getFa7Result', 'JSON', '/fineReport/marketingBoard/fa7', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886685, 0, 1490109742863, 0, 3, 'getFa5Result', 'JSON', '/fineReport/marketingBoard/fa5', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886685, 0, 1490109742863, 0, 3, 'getFa5Result', 'JSON', '/fineReport/marketingBoard/fa5', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886738, 0, 1490109742863, 0, 3, 'getFa6ShortResult', 'JSON', '/fineReport/marketingBoard/fa6Short', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886738, 0, 1490109742863, 0, 3, 'getFa6ShortResult', 'JSON', '/fineReport/marketingBoard/fa6Short', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886791, 0, 1490109742863, 0, 3, 'getFb3Market1Result', 'JSON', '/fineReport/marketingBoard/fb3Market1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886791, 0, 1490109742863, 0, 3, 'getFb3Market1Result', 'JSON', '/fineReport/marketingBoard/fb3Market1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886819, 0, 1490109742863, 0, 3, 'getFb3Market3Result', 'JSON', '/fineReport/marketingBoard/fb3Market3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886819, 0, 1490109742863, 0, 3, 'getFb3Market3Result', 'JSON', '/fineReport/marketingBoard/fb3Market3', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886845, 0, 1490109742863, 0, 3, 'getFc1OrderResult', 'JSON', '/fineReport/marketingBoard/fc1Order', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886845, 0, 1490109742863, 0, 3, 'getFc1OrderResult', 'JSON', '/fineReport/marketingBoard/fc1Order', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886875, 0, 1490109742863, 0, 3, 'getFd1SaleResult', 'JSON', '/fineReport/marketingBoard/fd1Sale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886875, 0, 1490109742863, 0, 3, 'getFd1SaleResult', 'JSON', '/fineReport/marketingBoard/fd1Sale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886917, 0, 1490109742863, 0, 3, 'getFd1SubSaleResult', 'JSON', '/fineReport/marketingBoard/fd1SubSale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886917, 0, 1490109742863, 0, 3, 'getFd1SubSaleResult', 'JSON', '/fineReport/marketingBoard/fd1SubSale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886920, 0, 1490109742863, 0, 3, 'getFe1MarketResult', 'JSON', '/fineReport/marketingBoard/fe1Market', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886920, 0, 1490109742863, 0, 3, 'getFe1MarketResult', 'JSON', '/fineReport/marketingBoard/fe1Market', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886932, 0, 1490109742863, 0, 3, 'getFf1RedpackResult', 'JSON', '/fineReport/marketingBoard/ff1Redpack', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886932, 0, 1490109742863, 0, 3, 'getFf1RedpackResult', 'JSON', '/fineReport/marketingBoard/ff1Redpack', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886942, 0, 1490109742863, 0, 3, 'getFf2ScanResult', 'JSON', '/fineReport/marketingBoard/ff2Scan', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392886942, 0, 1490109742863, 0, 3, 'getFf2ScanResult', 'JSON', '/fineReport/marketingBoard/ff2Scan', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:06.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887004, 0, 1490109742863, 0, 3, 'getFlevelResult', 'JSON', '/fineReport/marketingBoard/flevel', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887004, 0, 1490109742863, 0, 3, 'getFlevelResult', 'JSON', '/fineReport/marketingBoard/flevel', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887010, 0, 1490109742863, 0, 3, 'getCategoryResult', 'JSON', '/fineReport/marketingBoard/getCategory', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887010, 0, 1490109742863, 0, 3, 'getCategoryResult', 'JSON', '/fineReport/marketingBoard/getCategory', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887021, 0, 1490109742863, 0, 3, 'getDealerResult', 'JSON', '/fineReport/marketingBoard/getDealer', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887021, 0, 1490109742863, 0, 3, 'getDealerResult', 'JSON', '/fineReport/marketingBoard/getDealer', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887070, 0, 1490109742863, 0, 3, 'getSeriesResult', 'JSON', '/fineReport/marketingBoard/getSeries', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887070, 0, 1490109742863, 0, 3, 'getSeriesResult', 'JSON', '/fineReport/marketingBoard/getSeries', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887125, 0, 1490109742863, 0, 3, 'getProductResult', 'JSON', '/fineReport/marketingBoard/getProduct', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887125, 0, 1490109742863, 0, 3, 'getProductResult', 'JSON', '/fineReport/marketingBoard/getProduct', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887202, 0, 1490109742863, 0, 3, 'getJxsResult', 'JSON', '/fineReport/marketingBoard/jxs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887202, 0, 1490109742863, 0, 3, 'getJxsResult', 'JSON', '/fineReport/marketingBoard/jxs', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887251, 0, 1490109742863, 0, 3, 'getJxsByTypeResult', 'JSON', '/fineReport/marketingBoard/jxsByType', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887251, 0, 1490109742863, 0, 3, 'getJxsByTypeResult', 'JSON', '/fineReport/marketingBoard/jxsByType', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887282, 0, 1490109742863, 0, 3, 'getJxsReturnByMonth', 'JSON', '/fineReport/marketingBoard/jxsReturnByMonth', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887282, 0, 1490109742863, 0, 3, 'getJxsReturnByMonth', 'JSON', '/fineReport/marketingBoard/jxsReturnByMonth', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887311, 0, 1490109742863, 0, 3, 'getMonthResult', 'PARAM', '/fineReport/marketingBoard/month', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887311, 0, 1490109742863, 0, 3, 'getMonthResult', 'PARAM', '/fineReport/marketingBoard/month', '{ }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887368, 0, 1490109742863, 0, 3, 'getOfficesResult', 'JSON', '/fineReport/marketingBoard/offices', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887368, 0, 1490109742863, 0, 3, 'getOfficesResult', 'JSON', '/fineReport/marketingBoard/offices', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887418, 0, 1490109742863, 0, 3, 'getRegionalMarketCostTrackingResult', 'JSON', '/fineReport/marketingBoard/regionalMarketCostTracking', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887418, 0, 1490109742863, 0, 3, 'getRegionalMarketCostTrackingResult', 'JSON', '/fineReport/marketingBoard/regionalMarketCostTracking', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887467, 0, 1490109742863, 0, 3, 'getMOBBuysSellsAndStoresForPersonalResult', 'JSON', '/fineReport/moveOffBoard/buysSellsAndStoresForPersonal', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887467, 0, 1490109742863, 0, 3, 'getMOBBuysSellsAndStoresForPersonalResult', 'JSON', '/fineReport/moveOffBoard/buysSellsAndStoresForPersonal', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887570, 0, 1490109742863, 0, 3, 'getMOBA1B1Result', 'JSON', '/fineReport/moveOffBoard/a1b1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887570, 0, 1490109742863, 0, 3, 'getMOBA1B1Result', 'JSON', '/fineReport/moveOffBoard/a1b1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887621, 0, 1490109742863, 0, 3, 'getByMainstream', 'JSON', '/fineReport/moveOffBoard/byMainstream', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887621, 0, 1490109742863, 0, 3, 'getByMainstream', 'JSON', '/fineReport/moveOffBoard/byMainstream', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887672, 0, 1490109742863, 0, 3, 'clearCacheForMove', 'JSON', '/fineReport/moveOffBoard/clearCache', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887672, 0, 1490109742863, 0, 3, 'clearCacheForMove', 'JSON', '/fineReport/moveOffBoard/clearCache', '{ }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887701, 0, 1490109742863, 0, 3, 'getMOBCategoryResult', 'PARAM', '/fineReport/moveOffBoard/category', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887701, 0, 1490109742863, 0, 3, 'getMOBCategoryResult', 'PARAM', '/fineReport/moveOffBoard/category', '{ }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887722, 0, 1490109742863, 0, 3, 'getCompletionAmount', 'JSON', '/fineReport/moveOffBoard/completionAmount', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887722, 0, 1490109742863, 0, 3, 'getCompletionAmount', 'JSON', '/fineReport/moveOffBoard/completionAmount', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887749, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalResult', 'JSON', '/fineReport/moveOffBoard/coreTerminal', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887749, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalResult', 'JSON', '/fineReport/moveOffBoard/coreTerminal', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887769, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalReplenishmentResult', 'JSON', '/fineReport/moveOffBoard/coreTerminalReplenishment', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887769, 0, 1490109742863, 0, 3, 'getMOBCoreTerminalReplenishmentResult', 'JSON', '/fineReport/moveOffBoard/coreTerminalReplenishment', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887799, 0, 1490109742863, 0, 3, 'getFd2SaleResult', 'JSON', '/fineReport/marketingBoard/fd2Sale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887799, 0, 1490109742863, 0, 3, 'getFd2SaleResult', 'JSON', '/fineReport/marketingBoard/fd2Sale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887825, 0, 1490109742863, 0, 3, 'getMOBFNameResult', 'JSON', '/fineReport/moveOffBoard/fName', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887825, 0, 1490109742863, 0, 3, 'getMOBFNameResult', 'JSON', '/fineReport/moveOffBoard/fName', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887849, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/moveOffBoard/fa1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887849, 0, 1490109742863, 0, 3, 'getFa1Result', 'JSON', '/fineReport/moveOffBoard/fa1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887874, 0, 1490109742863, 0, 3, 'getMOBFa1XzchResult', 'JSON', '/fineReport/moveOffBoard/fa1Xzch', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887874, 0, 1490109742863, 0, 3, 'getMOBFa1XzchResult', 'JSON', '/fineReport/moveOffBoard/fa1Xzch', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887903, 0, 1490109742863, 0, 3, 'getMOBFc1TargetResult', 'JSON', '/fineReport/moveOffBoard/fc1Target', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887903, 0, 1490109742863, 0, 3, 'getMOBFc1TargetResult', 'JSON', '/fineReport/moveOffBoard/fc1Target', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887925, 0, 1490109742863, 0, 3, 'getMOBFc1Target1Result', 'JSON', '/fineReport/moveOffBoard/fc1Target1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887925, 0, 1490109742863, 0, 3, 'getMOBFc1Target1Result', 'JSON', '/fineReport/moveOffBoard/fc1Target1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887962, 0, 1490109742863, 0, 3, 'getMOBFc3Result', 'JSON', '/fineReport/moveOffBoard/fc3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887962, 0, 1490109742863, 0, 3, 'getMOBFc3Result', 'JSON', '/fineReport/moveOffBoard/fc3', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887970, 0, 1490109742863, 0, 3, 'getMOBFe1Result', 'JSON', '/fineReport/moveOffBoard/fe1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392887970, 0, 1490109742863, 0, 3, 'getMOBFe1Result', 'JSON', '/fineReport/moveOffBoard/fe1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888011, 0, 1490109742863, 0, 3, 'getDealerScanCodeDetailResult', 'JSON', '/fineReport/marketingBoard/getDealerScanCodeDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888011, 0, 1490109742863, 0, 3, 'getDealerScanCodeDetailResult', 'JSON', '/fineReport/marketingBoard/getDealerScanCodeDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888037, 0, 1490109742863, 0, 3, 'getMOBFe4Result', 'JSON', '/fineReport/moveOffBoard/fe4', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888037, 0, 1490109742863, 0, 3, 'getMOBFe4Result', 'JSON', '/fineReport/moveOffBoard/fe4', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888040, 0, 1490109742863, 0, 3, 'getMOBFe2Result', 'JSON', '/fineReport/moveOffBoard/fe2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888040, 0, 1490109742863, 0, 3, 'getMOBFe2Result', 'JSON', '/fineReport/moveOffBoard/fe2', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888065, 0, 1490109742863, 0, 3, 'getMOBFe3Result', 'JSON', '/fineReport/moveOffBoard/fe3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888065, 0, 1490109742863, 0, 3, 'getMOBFe3Result', 'JSON', '/fineReport/moveOffBoard/fe3', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888096, 0, 1490109742863, 0, 3, 'getIndexDefinitionResult', 'JSON', '/fineReport/moveOffBoard/indexDefinition', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888096, 0, 1490109742863, 0, 3, 'getIndexDefinitionResult', 'JSON', '/fineReport/moveOffBoard/indexDefinition', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888119, 0, 1490109742863, 0, 3, 'getCompletionRate', 'JSON', '/fineReport/moveOffBoard/completionRate', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888119, 0, 1490109742863, 0, 3, 'getCompletionRate', 'JSON', '/fineReport/moveOffBoard/completionRate', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888147, 0, 1490109742863, 0, 3, 'getMediumAndHighEnd', 'JSON', '/fineReport/moveOffBoard/mediumAndHighEnd', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888147, 0, 1490109742863, 0, 3, 'getMediumAndHighEnd', 'JSON', '/fineReport/moveOffBoard/mediumAndHighEnd', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888178, 0, 1490109742863, 0, 3, 'getMOBLevelResult', 'PARAM', '/fineReport/moveOffBoard/level', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888178, 0, 1490109742863, 0, 3, 'getMOBLevelResult', 'PARAM', '/fineReport/moveOffBoard/level', '{ }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888209, 0, 1490109742863, 0, 3, 'getMOBOrgResult', 'JSON', '/fineReport/moveOffBoard/org', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888209, 0, 1490109742863, 0, 3, 'getMOBOrgResult', 'JSON', '/fineReport/moveOffBoard/org', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888235, 0, 1490109742863, 0, 3, 'getMOBShipmentForPersonalResult', 'JSON', '/fineReport/moveOffBoard/shipmentForPersonal', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888235, 0, 1490109742863, 0, 3, 'getMOBShipmentForPersonalResult', 'JSON', '/fineReport/moveOffBoard/shipmentForPersonal', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888261, 0, 1490109742863, 0, 3, 'getMOBSalesmanBuysSellsAndStoresResult', 'JSON', '/fineReport/moveOffBoard/salesmanBuysSellsAndStores', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888261, 0, 1490109742863, 0, 3, 'getMOBSalesmanBuysSellsAndStoresResult', 'JSON', '/fineReport/moveOffBoard/salesmanBuysSellsAndStores', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888288, 0, 1490109742863, 0, 3, 'getMOBFNameForStringResult', 'JSON', '/fineReport/moveOffBoard/fNameForString', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888288, 0, 1490109742863, 0, 3, 'getMOBFNameForStringResult', 'JSON', '/fineReport/moveOffBoard/fNameForString', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888315, 0, 1490109742863, 0, 3, 'getJxFlevel', 'JSON', '/fineReport/sauceAroma/flevelForJx', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888315, 0, 1490109742863, 0, 3, 'getJxFlevel', 'JSON', '/fineReport/sauceAroma/flevelForJx', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888344, 0, 1490109742863, 0, 3, 'getJxDistributor', 'JSON', '/fineReport/sauceAroma/jxDistributor', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888344, 0, 1490109742863, 0, 3, 'getJxDistributor', 'JSON', '/fineReport/sauceAroma/jxDistributor', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888363, 0, 1490109742863, 0, 3, 'getJxDealerScanStock', 'JSON', '/fineReport/sauceAroma/jxDealerScanStock', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888363, 0, 1490109742863, 0, 3, 'getJxDealerScanStock', 'JSON', '/fineReport/sauceAroma/jxDealerScanStock', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888423, 0, 1490109742863, 0, 3, 'getJxFA1', 'JSON', '/fineReport/sauceAroma/jxFa1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888423, 0, 1490109742863, 0, 3, 'getJxFA1', 'JSON', '/fineReport/sauceAroma/jxFa1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888425, 0, 1490109742863, 0, 3, 'getJxFA3', 'JSON', '/fineReport/sauceAroma/jxFa3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888425, 0, 1490109742863, 0, 3, 'getJxFA3', 'JSON', '/fineReport/sauceAroma/jxFa3', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888498, 0, 1490109742863, 0, 3, 'getJxFD1Sale', 'JSON', '/fineReport/sauceAroma/jxFd1Sale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888498, 0, 1490109742863, 0, 3, 'getJxFD1Sale', 'JSON', '/fineReport/sauceAroma/jxFd1Sale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888600, 0, 1490109742863, 0, 3, 'getJxFD1Saletarget', 'JSON', '/fineReport/sauceAroma/jxFd1Saletarget', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888600, 0, 1490109742863, 0, 3, 'getJxFD1Saletarget', 'JSON', '/fineReport/sauceAroma/jxFd1Saletarget', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888650, 0, 1490109742863, 0, 3, 'getMOBFd1Result', 'JSON', '/fineReport/moveOffBoard/fd1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888650, 0, 1490109742863, 0, 3, 'getMOBFd1Result', 'JSON', '/fineReport/moveOffBoard/fd1', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888706, 0, 1490109742863, 0, 3, 'getJXFE1Market', 'JSON', '/fineReport/sauceAroma/jxFe1Market', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888706, 0, 1490109742863, 0, 3, 'getJXFE1Market', 'JSON', '/fineReport/sauceAroma/jxFe1Market', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888761, 0, 1490109742863, 0, 3, 'getJxIndex', 'JSON', '/fineReport/sauceAroma/jxIndex', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888761, 0, 1490109742863, 0, 3, 'getJxIndex', 'JSON', '/fineReport/sauceAroma/jxIndex', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888776, 0, 1490109742863, 0, 3, 'getJxFD1Subsale', 'JSON', '/fineReport/sauceAroma/jxFd1subsale', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888776, 0, 1490109742863, 0, 3, 'getJxFD1Subsale', 'JSON', '/fineReport/sauceAroma/jxFd1subsale', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888804, 0, 1490109742863, 0, 3, 'getJXJxs', 'JSON', '/fineReport/sauceAroma/jxJxs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888804, 0, 1490109742863, 0, 3, 'getJXJxs', 'JSON', '/fineReport/sauceAroma/jxJxs', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888811, 0, 1490109742863, 0, 3, 'getJxOffice', 'JSON', '/fineReport/sauceAroma/jxOffice', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888811, 0, 1490109742863, 0, 3, 'getJxOffice', 'JSON', '/fineReport/sauceAroma/jxOffice', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888829, 0, 1490109742863, 0, 3, 'getJxProduct', 'JSON', '/fineReport/sauceAroma/jxProduct', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888829, 0, 1490109742863, 0, 3, 'getJxProduct', 'JSON', '/fineReport/sauceAroma/jxProduct', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888863, 0, 1490109742863, 0, 3, 'getJxRegion', 'JSON', '/fineReport/sauceAroma/jxRegion', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392888863, 0, 1490109742863, 0, 3, 'getJxRegion', 'JSON', '/fineReport/sauceAroma/jxRegion', '{ }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889015, 0, 1490109742863, 0, 3, 'getAccumulatedBusiness', 'JSON', '/fineReport/supplyChain/accumulatedBusiness', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889015, 0, 1490109742863, 0, 3, 'getAccumulatedBusiness', 'JSON', '/fineReport/supplyChain/accumulatedBusiness', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889066, 0, 1490109742863, 0, 3, 'getBaseSineInventory', 'JSON', '/fineReport/supplyChain/baseSineInventory', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889066, 0, 1490109742863, 0, 3, 'getBaseSineInventory', 'JSON', '/fineReport/supplyChain/baseSineInventory', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889072, 0, 1490109742863, 0, 3, 'getBaseWine', 'JSON', '/fineReport/supplyChain/baseWine', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889072, 0, 1490109742863, 0, 3, 'getBaseWine', 'JSON', '/fineReport/supplyChain/baseWine', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889127, 0, 1490109742863, 0, 3, 'getCapacity', 'JSON', '/fineReport/supplyChain/capacity', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889127, 0, 1490109742863, 0, 3, 'getCapacity', 'JSON', '/fineReport/supplyChain/capacity', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889130, 0, 1490109742863, 0, 3, 'getBOMVersionManagement', 'JSON', '/fineReport/supplyChain/bomVersionManagement', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889130, 0, 1490109742863, 0, 3, 'getBOMVersionManagement', 'JSON', '/fineReport/supplyChain/bomVersionManagement', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889185, 0, 1490109742863, 0, 3, 'getUserInfoPermissionResult', 'JSON', '/fineReport/moveOffBoard/userInfoPermission', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889185, 0, 1490109742863, 0, 3, 'getUserInfoPermissionResult', 'JSON', '/fineReport/moveOffBoard/userInfoPermission', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889189, 0, 1490109742863, 0, 3, 'getClosingThisYear', 'JSON', '/fineReport/supplyChain/closingThisYear', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889189, 0, 1490109742863, 0, 3, 'getClosingThisYear', 'JSON', '/fineReport/supplyChain/closingThisYear', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890833, 0, 1490109742863, 0, 3, 'getParaphrase', 'JSON', '/fineReport/supplyChainBoardXS/getParaphrase', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890833, 0, 1490109742863, 0, 3, 'getParaphrase', 'JSON', '/fineReport/supplyChainBoardXS/getParaphrase', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889243, 0, 1490109742863, 0, 3, 'getFinishedProductInventory', 'JSON', '/fineReport/supplyChain/finishedProductInventorie', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889243, 0, 1490109742863, 0, 3, 'getFinishedProductInventory', 'JSON', '/fineReport/supplyChain/finishedProductInventorie', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889245, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouse', 'JSON', '/fineReport/supplyChain/finishedProductWarehouse', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889245, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouse', 'JSON', '/fineReport/supplyChain/finishedProductWarehouse', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889306, 0, 1490109742863, 0, 3, 'getLastMonthMaterials', 'JSON', '/fineReport/supplyChain/lastMonthMaterials', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889306, 0, 1490109742863, 0, 3, 'getLastMonthMaterials', 'JSON', '/fineReport/supplyChain/lastMonthMaterials', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889308, 0, 1490109742863, 0, 3, 'getJxs', 'JSON', '/fineReport/supplyChain/jxs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889308, 0, 1490109742863, 0, 3, 'getJxs', 'JSON', '/fineReport/supplyChain/jxs', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889367, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouses', 'JSON', '/fineReport/supplyChain/finishedProductWarehouses', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889367, 0, 1490109742863, 0, 3, 'getFinishedProductWarehouses', 'JSON', '/fineReport/supplyChain/finishedProductWarehouses', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889373, 0, 1490109742863, 0, 3, 'getMaotaiFlavor', 'JSON', '/fineReport/supplyChain/maotaiFlavor', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889373, 0, 1490109742863, 0, 3, 'getMaotaiFlavor', 'JSON', '/fineReport/supplyChain/maotaiFlavor', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889426, 0, 1490109742863, 0, 3, 'getLuzhouFlavor', 'JSON', '/fineReport/supplyChain/luzhouFlavor', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889426, 0, 1490109742863, 0, 3, 'getLuzhouFlavor', 'JSON', '/fineReport/supplyChain/luzhouFlavor', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889446, 0, 1490109742863, 0, 3, 'getMonthlyPackaging', 'JSON', '/fineReport/supplyChain/monthlyPackaging', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889446, 0, 1490109742863, 0, 3, 'getMonthlyPackaging', 'JSON', '/fineReport/supplyChain/monthlyPackaging', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889479, 0, 1490109742863, 0, 3, 'getMonthResults', 'JSON', '/fineReport/supplyChain/month', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889479, 0, 1490109742863, 0, 3, 'getMonthResults', 'JSON', '/fineReport/supplyChain/month', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889482, 0, 1490109742863, 0, 3, 'getJxFA5', 'JSON', '/fineReport/sauceAroma/jxFa5', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889482, 0, 1490109742863, 0, 3, 'getJxFA5', 'JSON', '/fineReport/sauceAroma/jxFa5', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889510, 0, 1490109742863, 0, 3, 'getPackagingMaterialInventory', 'JSON', '/fineReport/supplyChain/packagingMaterialInventory', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889510, 0, 1490109742863, 0, 3, 'getPackagingMaterialInventory', 'JSON', '/fineReport/supplyChain/packagingMaterialInventory', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889536, 0, 1490109742863, 0, 3, 'getPackagingMaterialProcurement', 'JSON', '/fineReport/supplyChain/packagingMaterialProcurement', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889536, 0, 1490109742863, 0, 3, 'getPackagingMaterialProcurement', 'JSON', '/fineReport/supplyChain/packagingMaterialProcurement', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889562, 0, 1490109742863, 0, 3, 'getPackingMaterialDetails', 'JSON', '/fineReport/supplyChain/packingMaterialDetails', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889562, 0, 1490109742863, 0, 3, 'getPackingMaterialDetails', 'JSON', '/fineReport/supplyChain/packingMaterialDetails', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889587, 0, 1490109742863, 0, 3, 'getPackagingMaterialLoss', 'JSON', '/fineReport/supplyChain/packagingMaterialLoss', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889587, 0, 1490109742863, 0, 3, 'getPackagingMaterialLoss', 'JSON', '/fineReport/supplyChain/packagingMaterialLoss', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889620, 0, 1490109742863, 0, 3, 'getPlanForThisMonth', 'JSON', '/fineReport/supplyChain/planForThisMonth', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889620, 0, 1490109742863, 0, 3, 'getPlanForThisMonth', 'JSON', '/fineReport/supplyChain/planForThisMonth', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889641, 0, 1490109742863, 0, 3, 'getProductPlan', 'JSON', '/fineReport/supplyChain/productPlan', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889641, 0, 1490109742863, 0, 3, 'getProductPlan', 'JSON', '/fineReport/supplyChain/productPlan', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889686, 0, 1490109742863, 0, 3, 'getProductProduction', 'JSON', '/fineReport/supplyChain/productProduction', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889686, 0, 1490109742863, 0, 3, 'getProductProduction', 'JSON', '/fineReport/supplyChain/productProduction', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889699, 0, 1490109742863, 0, 3, 'getProductionOrder', 'JSON', '/fineReport/supplyChain/productionOrder', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889699, 0, 1490109742863, 0, 3, 'getProductionOrder', 'JSON', '/fineReport/supplyChain/productionOrder', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889993, 0, 1490109742863, 0, 3, 'getPurchaseOrder', 'JSON', '/fineReport/supplyChain/purchaseOrder', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392889993, 0, 1490109742863, 0, 3, 'getPurchaseOrder', 'JSON', '/fineReport/supplyChain/purchaseOrder', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890012, 0, 1490109742863, 0, 3, 'getRateProductPackaging', 'JSON', '/fineReport/supplyChain/rateProductPackaging', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890012, 0, 1490109742863, 0, 3, 'getRateProductPackaging', 'JSON', '/fineReport/supplyChain/rateProductPackaging', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890066, 0, 1490109742863, 0, 3, 'getQualityInspectionDetails', 'JSON', '/fineReport/supplyChain/qualityInspectionDetails', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890066, 0, 1490109742863, 0, 3, 'getQualityInspectionDetails', 'JSON', '/fineReport/supplyChain/qualityInspectionDetails', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890115, 0, 1490109742863, 0, 3, 'getSalesDelivery', 'JSON', '/fineReport/supplyChain/salesDelivery', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890115, 0, 1490109742863, 0, 3, 'getSalesDelivery', 'JSON', '/fineReport/supplyChain/salesDelivery', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890204, 0, 1490109742863, 0, 3, 'getSupplierInspection', 'JSON', '/fineReport/supplyChain/supplierInspection', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890204, 0, 1490109742863, 0, 3, 'getSupplierInspection', 'JSON', '/fineReport/supplyChain/supplierInspection', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890359, 0, 1490109742863, 0, 3, 'getTimelyProcurement', 'JSON', '/fineReport/supplyChain/timelyProcurement', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890359, 0, 1490109742863, 0, 3, 'getTimelyProcurement', 'JSON', '/fineReport/supplyChain/timelyProcurement', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890413, 0, 1490109742863, 0, 3, 'getSuppliercg', 'JSON', '/fineReport/supplyChain/suppliercg', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890413, 0, 1490109742863, 0, 3, 'getSuppliercg', 'JSON', '/fineReport/supplyChain/suppliercg', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890429, 0, 1490109742863, 0, 3, 'getWineBeLoaded', 'JSON', '/fineReport/supplyChain/wineBeLoaded', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890429, 0, 1490109742863, 0, 3, 'getWineBeLoaded', 'JSON', '/fineReport/supplyChain/wineBeLoaded', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890468, 0, 1490109742863, 0, 3, 'getAOGTimeliness', 'JSON', '/fineReport/supplyChainBoardXS/getAOGTimeliness', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890468, 0, 1490109742863, 0, 3, 'getAOGTimeliness', 'JSON', '/fineReport/supplyChainBoardXS/getAOGTimeliness', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890478, 0, 1490109742863, 0, 3, 'getFinishedGoodsDetail', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedGoodsDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890478, 0, 1490109742863, 0, 3, 'getFinishedGoodsDetail', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedGoodsDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890520, 0, 1490109742863, 0, 3, 'getFinishedProductStorage', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductStorage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890520, 0, 1490109742863, 0, 3, 'getFinishedProductStorage', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductStorage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890529, 0, 1490109742863, 0, 3, 'getLiquorPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorPercentage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890529, 0, 1490109742863, 0, 3, 'getLiquorPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorPercentage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890537, 0, 1490109742863, 0, 3, 'getFinishedProductTop10', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductTop10', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890537, 0, 1490109742863, 0, 3, 'getFinishedProductTop10', 'JSON', '/fineReport/supplyChainBoardXS/getFinishedProductTop10', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890551, 0, 1490109742863, 0, 3, 'getPackageInventory', 'JSON', '/fineReport/supplyChain/packageInventory', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890551, 0, 1490109742863, 0, 3, 'getPackageInventory', 'JSON', '/fineReport/supplyChain/packageInventory', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890603, 0, 1490109742863, 0, 3, 'getLiquorStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPractical', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890603, 0, 1490109742863, 0, 3, 'getLiquorStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPractical', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890607, 0, 1490109742863, 0, 3, 'getPackAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPackAmount', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890607, 0, 1490109742863, 0, 3, 'getPackAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPackAmount', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890611, 0, 1490109742863, 0, 3, 'getPackAttritionRate', 'JSON', '/fineReport/supplyChainBoardXS/getPackAttritionRate', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890611, 0, 1490109742863, 0, 3, 'getPackAttritionRate', 'JSON', '/fineReport/supplyChainBoardXS/getPackAttritionRate', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890666, 0, 1490109742863, 0, 3, 'getPackInventorySituation', 'JSON', '/fineReport/supplyChainBoardXS/getPackInventorySituation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890666, 0, 1490109742863, 0, 3, 'getPackInventorySituation', 'JSON', '/fineReport/supplyChainBoardXS/getPackInventorySituation', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890669, 0, 1490109742863, 0, 3, 'getPackDetail', 'JSON', '/fineReport/supplyChainBoardXS/getPackDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890669, 0, 1490109742863, 0, 3, 'getPackDetail', 'JSON', '/fineReport/supplyChainBoardXS/getPackDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890721, 0, 1490109742863, 0, 3, 'getPackPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getPackPercentage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890721, 0, 1490109742863, 0, 3, 'getPackPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getPackPercentage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890724, 0, 1490109742863, 0, 3, 'getPackProductAndWastage', 'JSON', '/fineReport/supplyChainBoardXS/getPackProductAndWastage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890724, 0, 1490109742863, 0, 3, 'getPackProductAndWastage', 'JSON', '/fineReport/supplyChainBoardXS/getPackProductAndWastage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890775, 0, 1490109742863, 0, 3, 'getCurrentPeriodAOG', 'JSON', '/fineReport/supplyChainBoardXS/getCurrentPeriodAOG', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890775, 0, 1490109742863, 0, 3, 'getCurrentPeriodAOG', 'JSON', '/fineReport/supplyChainBoardXS/getCurrentPeriodAOG', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890780, 0, 1490109742863, 0, 3, 'getCapacityUtilization', 'JSON', '/fineReport/supplyChainBoardXS/getCapacityUtilization', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890780, 0, 1490109742863, 0, 3, 'getCapacityUtilization', 'JSON', '/fineReport/supplyChainBoardXS/getCapacityUtilization', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890836, 0, 1490109742863, 0, 3, 'getPackStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getPackStandardPractical', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890836, 0, 1490109742863, 0, 3, 'getPackStandardPractical', 'JSON', '/fineReport/supplyChainBoardXS/getPackStandardPractical', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890918, 0, 1490109742863, 0, 3, 'getProductDaysDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductDaysDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890918, 0, 1490109742863, 0, 3, 'getProductDaysDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductDaysDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890929, 0, 1490109742863, 0, 3, 'getInspectQualifiedRate', 'JSON', '/fineReport/supplyChainBoardXS/getInspectQualifiedRate', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890929, 0, 1490109742863, 0, 3, 'getInspectQualifiedRate', 'JSON', '/fineReport/supplyChainBoardXS/getInspectQualifiedRate', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890994, 0, 1490109742863, 0, 3, 'getProductOrderDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductOrderDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392890994, 0, 1490109742863, 0, 3, 'getProductOrderDetail', 'JSON', '/fineReport/supplyChainBoardXS/getProductOrderDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891000, 0, 1490109742863, 0, 3, 'getProductPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getProductPercentage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891000, 0, 1490109742863, 0, 3, 'getProductPercentage', 'JSON', '/fineReport/supplyChainBoardXS/getProductPercentage', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891059, 0, 1490109742863, 0, 3, 'getProductionInStock', 'JSON', '/fineReport/supplyChainBoardXS/getProductionInStock', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891059, 0, 1490109742863, 0, 3, 'getProductionInStock', 'JSON', '/fineReport/supplyChainBoardXS/getProductionInStock', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891117, 0, 1490109742863, 0, 3, 'getPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPurchaseAmount', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891117, 0, 1490109742863, 0, 3, 'getPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getPurchaseAmount', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891173, 0, 1490109742863, 0, 3, 'getSupplyPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getSupplyPurchaseAmount', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891173, 0, 1490109742863, 0, 3, 'getSupplyPurchaseAmount', 'JSON', '/fineReport/supplyChainBoardXS/getSupplyPurchaseAmount', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891226, 0, 1490109742863, 0, 3, 'getLiquorStandardPracticalDetail', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPracticalDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891226, 0, 1490109742863, 0, 3, 'getLiquorStandardPracticalDetail', 'JSON', '/fineReport/supplyChainBoardXS/getLiquorStandardPracticalDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891272, 0, 1490109742863, 0, 3, 'getUnqualifiedDetail', 'JSON', '/fineReport/supplyChainBoardXS/getUnqualifiedDetail', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891272, 0, 1490109742863, 0, 3, 'getUnqualifiedDetail', 'JSON', '/fineReport/supplyChainBoardXS/getUnqualifiedDetail', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891318, 0, 1490109742863, 0, 3, 'addNewWineStore', 'JSON', '/ft/wine/addNewWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891318, 0, 1490109742863, 0, 3, 'addNewWineStore', 'JSON', '/ft/wine/addNewWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891369, 0, 1490109742863, 0, 3, 'getYDGoodsYield', 'JSON', '/fineReport/supplyChainBoardXS/getYDGoodsYield', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891369, 0, 1490109742863, 0, 3, 'getYDGoodsYield', 'JSON', '/fineReport/supplyChainBoardXS/getYDGoodsYield', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891433, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/ft/product/sfa/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891433, 0, 1490109742863, 0, 3, 'getSfaProduct', 'JSON', '/ft/product/sfa/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891498, 0, 1490109742863, 0, 3, 'assignWineStore', 'JSON', '/ft/wine/assignWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891498, 0, 1490109742863, 0, 3, 'assignWineStore', 'JSON', '/ft/wine/assignWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891540, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/ft/wine/employeeLogin', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891540, 0, 1490109742863, 0, 3, 'employeeLogin', 'JSON', '/ft/wine/employeeLogin', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891601, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/ft/wine/getDealerPage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891601, 0, 1490109742863, 0, 3, 'getDealerPage', 'JSON', '/ft/wine/getDealerPage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891660, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/ft/wine/getKuaidi100', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891660, 0, 1490109742863, 0, 3, 'getKuaidi100', 'JSON', '/ft/wine/getKuaidi100', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891711, 0, 1490109742863, 0, 3, 'getPdfData', 'JSON', '/ft/wine/getPdfData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891711, 0, 1490109742863, 0, 3, 'getPdfData', 'JSON', '/ft/wine/getPdfData', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891760, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/ft/wine/getPoAppPage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891760, 0, 1490109742863, 0, 3, 'getPoAppPage', 'JSON', '/ft/wine/getPoAppPage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891819, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/ft/wine/getWineCustom', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891819, 0, 1490109742863, 0, 3, 'getWineCustom', 'JSON', '/ft/wine/getWineCustom', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891849, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/ft/wine/getWineLocation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891849, 0, 1490109742863, 0, 3, 'getWineLocation', 'JSON', '/ft/wine/getWineLocation', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891867, 0, 1490109742863, 0, 3, 'getWineStorePage', 'JSON', '/ft/wine/getWineStorePage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891867, 0, 1490109742863, 0, 3, 'getWineStorePage', 'JSON', '/ft/wine/getWineStorePage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891900, 0, 1490109742863, 0, 3, 'queryContractus', 'JSON', '/ft/wine/queryContractus', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891900, 0, 1490109742863, 0, 3, 'queryContractus', 'JSON', '/ft/wine/queryContractus', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891917, 0, 1490109742863, 0, 3, 'getWineSubPackPage', 'JSON', '/ft/wine/getWineSubPackPage', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891917, 0, 1490109742863, 0, 3, 'getWineSubPackPage', 'JSON', '/ft/wine/getWineSubPackPage', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891952, 0, 1490109742863, 0, 3, 'saveContractPhotos', 'JSON', '/ft/wine/saveContractPhotos', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891952, 0, 1490109742863, 0, 3, 'saveContractPhotos', 'JSON', '/ft/wine/saveContractPhotos', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891969, 0, 1490109742863, 0, 3, 'saveContractus', 'JSON', '/ft/wine/saveContractus', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392891969, 0, 1490109742863, 0, 3, 'saveContractus', 'JSON', '/ft/wine/saveContractus', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:11.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892038, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/ft/wine/savePayVoucherPhotos', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892038, 0, 1490109742863, 0, 3, 'savePayVoucherPhotos', 'JSON', '/ft/wine/savePayVoucherPhotos', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892113, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/ft/wine/saveWineCustom', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892113, 0, 1490109742863, 0, 3, 'saveWineCustom', 'JSON', '/ft/wine/saveWineCustom', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892115, 0, 1490109742863, 0, 3, 'savePdfImgs', 'JSON', '/ft/wine/savePdfImgs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892115, 0, 1490109742863, 0, 3, 'savePdfImgs', 'JSON', '/ft/wine/savePdfImgs', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892117, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/ft/wine/savePoApp', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892117, 0, 1490109742863, 0, 3, 'savePoApp', 'JSON', '/ft/wine/savePoApp', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892132, 0, 1490109742863, 0, 3, 'getProductFinishedSituation', 'JSON', '/fineReport/supplyChainBoardXS/getProductFinishedSituation', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892132, 0, 1490109742863, 0, 3, 'getProductFinishedSituation', 'JSON', '/fineReport/supplyChainBoardXS/getProductFinishedSituation', '{ "request": null // 必填。 request }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892193, 0, 1490109742863, 0, 3, 'saveWineQueue', 'JSON', '/ft/wine/saveWineQueue', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892193, 0, 1490109742863, 0, 3, 'saveWineQueue', 'JSON', '/ft/wine/saveWineQueue', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892207, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/ft/wine/saveWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892207, 0, 1490109742863, 0, 3, 'saveWineStore', 'JSON', '/ft/wine/saveWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892249, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/ft/wine/saveWineSubPack', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892249, 0, 1490109742863, 0, 3, 'saveWineSubPack', 'JSON', '/ft/wine/saveWineSubPack', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892251, 0, 1490109742863, 0, 3, 'suspendSealWine', 'JSON', '/ft/wine/suspendSealWine', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892251, 0, 1490109742863, 0, 3, 'suspendSealWine', 'JSON', '/ft/wine/suspendSealWine', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892305, 0, 1490109742863, 0, 3, 'suspendWineStore', 'JSON', '/ft/wine/suspendWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892305, 0, 1490109742863, 0, 3, 'suspendWineStore', 'JSON', '/ft/wine/suspendWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892307, 0, 1490109742863, 0, 3, 'getActivityPeopleList', 'JSON', '/h2/activityPeopleList/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892307, 0, 1490109742863, 0, 3, 'getActivityPeopleList', 'JSON', '/h2/activityPeopleList/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892430, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/h2/storeList/miniprogram/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892430, 0, 1490109742863, 0, 3, 'getMiniprogramsSfaStoreList', 'JSON', '/h2/storeList/miniprogram/query', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892460, 0, 1490109742863, 0, 3, 'getUserRelationshipLevel', 'JSON', '/h2/userRelationship/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892460, 0, 1490109742863, 0, 3, 'getUserRelationshipLevel', 'JSON', '/h2/userRelationship/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892479, 0, 1490109742863, 0, 3, 'getUserRelationshipRecord', 'JSON', '/h2/userRelationshipRecord/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892479, 0, 1490109742863, 0, 3, 'getUserRelationshipRecord', 'JSON', '/h2/userRelationshipRecord/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892504, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/hr/oa/callbackProcessData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892504, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/hr/oa/callbackProcessData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892550, 0, 1490109742863, 0, 3, 'checkJobs', 'JSON', '/hr/oa/checkJobs', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892550, 0, 1490109742863, 0, 3, 'checkJobs', 'JSON', '/hr/oa/checkJobs', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892558, 0, 1490109742863, 0, 3, 'queryDeparture', 'JSON', '/hr/oa/departure', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892558, 0, 1490109742863, 0, 3, 'queryDeparture', 'JSON', '/hr/oa/departure', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892606, 0, 1490109742863, 0, 3, 'queryPosition', 'JSON', '/hr/oa/position', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892606, 0, 1490109742863, 0, 3, 'queryPosition', 'JSON', '/hr/oa/position', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892613, 0, 1490109742863, 0, 3, 'queryMobileByUserId', 'JSON', '/hr/oa/queryMobileByUserId', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892613, 0, 1490109742863, 0, 3, 'queryMobileByUserId', 'JSON', '/hr/oa/queryMobileByUserId', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892677, 0, 1490109742863, 0, 3, 'queryPositiveTx2', 'JSON', '/hr/oa/queryPositiveTx2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892677, 0, 1490109742863, 0, 3, 'queryPositiveTx2', 'JSON', '/hr/oa/queryPositiveTx2', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892727, 0, 1490109742863, 0, 3, 'queryTx1', 'JSON', '/hr/oa/queryTx1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892727, 0, 1490109742863, 0, 3, 'queryTx1', 'JSON', '/hr/oa/queryTx1', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892792, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/ft/wine/submitWineStore', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892792, 0, 1490109742863, 0, 3, 'submitWineStore', 'JSON', '/ft/wine/submitWineStore', '{ "json": null // 必填。 json }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892844, 0, 1490109742863, 0, 3, 'queryTx2', 'JSON', '/hr/oa/queryTx2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892844, 0, 1490109742863, 0, 3, 'queryTx2', 'JSON', '/hr/oa/queryTx2', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892893, 0, 1490109742863, 0, 3, 'checkCode', 'JSON', '/message/check/code', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392892893, 0, 1490109742863, 0, 3, 'checkCode', 'JSON', '/message/check/code', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:12.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893042, 0, 1490109742863, 0, 3, 'getInviteUserFunctionLevel', 'JSON', '/h2/InviteUserFunction/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893042, 0, 1490109742863, 0, 3, 'getInviteUserFunctionLevel', 'JSON', '/h2/InviteUserFunction/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893110, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893110, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send', '{ "smsMessageDTO": {} // 必填。 smsMessageDTO }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893159, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893159, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send2', '{ "smsMessageDTO": {} // 必填。 smsMessageDTO }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893183, 0, 1490109742863, 0, 3, 'smsSend', 'JSON', '/message/sms/send', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893183, 0, 1490109742863, 0, 3, 'smsSend', 'JSON', '/message/sms/send', '{ "smsMessageDTO": {} // 必填。 smsMessageDTO }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893233, 0, 1490109742863, 0, 3, 'getActivityPeopleSize', 'JSON', '/h2/activityPeopleSize/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893233, 0, 1490109742863, 0, 3, 'getActivityPeopleSize', 'JSON', '/h2/activityPeopleSize/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893282, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send3', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893282, 0, 1490109742863, 0, 3, '发送短信', 'JSON', '/message/send3', '{ "smsMessageDTO": {} // 必填。 smsMessageDTO }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893332, 0, 1490109742863, 0, 3, 'getMaterial', 'JSON', '/oa/workflow/cancelToDoList', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893332, 0, 1490109742863, 0, 3, 'getMaterial', 'JSON', '/oa/workflow/cancelToDoList', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893382, 0, 1490109742863, 0, 3, 'cancelToDoListById', 'JSON', '/oa/workflow/cancelToDoListById', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893382, 0, 1490109742863, 0, 3, 'cancelToDoListById', 'JSON', '/oa/workflow/cancelToDoListById', '{ "dto": {} // 必填。 dto }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893413, 0, 1490109742863, 0, 3, 'getStoreListByMobile', 'JSON', '/sfa/getStoreListByMobile', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893413, 0, 1490109742863, 0, 3, 'getStoreListByMobile', 'JSON', '/sfa/getStoreListByMobile', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893431, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/oauth/token/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893431, 0, 1490109742863, 0, 3, 'getToken', 'JSON', '/oauth/token/query', '{ "dmsMessageDTO": {} // 必填。 dmsMessageDTO }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893446, 0, 1490109742863, 0, 3, 'xmbarcodeQuery', 'JSON', '/sfa/xmbarcode/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893446, 0, 1490109742863, 0, 3, 'xmbarcodeQuery', 'JSON', '/sfa/xmbarcode/query', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893470, 0, 1490109742863, 0, 3, 'test1', 'PARAM', '/test/test1', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893470, 0, 1490109742863, 0, 3, 'test1', 'PARAM', '/test/test1', '{ }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893481, 0, 1490109742863, 0, 3, 'test3', 'JSON', '/test/test3/{time}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893481, 0, 1490109742863, 0, 3, 'test3', 'JSON', '/test/test3/{time}', '{ "time": 1 // 必填。 time }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893498, 0, 1490109742863, 0, 3, 'test2', 'PARAM', '/test/test2', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893498, 0, 1490109742863, 0, 3, 'test2', 'PARAM', '/test/test2', '{ }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893529, 0, 1490109742863, 0, 3, 'code', 'PARAM', '/weimob/oauth/code', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893529, 0, 1490109742863, 0, 3, 'code', 'PARAM', '/weimob/oauth/code', '{ "code": "" // code }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893544, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/wms/xinmaStackData/qryCodeData', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893544, 0, 1490109742863, 0, 3, 'callbackProcessData', 'JSON', '/wms/xinmaStackData/qryCodeData', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893579, 0, 1490109742863, 0, 3, 'storeStockItemMTD', 'JSON', '/sfa/storeStockItemMTD', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1644392893579, 0, 1490109742863, 0, 3, 'storeStockItemMTD', 'JSON', '/sfa/storeStockItemMTD', '{ "jsonStr": null // 必填。 jsonStr }', null, null, null, null, '2022-02-09 15:48:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1645292852440, 0, 88888, 0, 3, '获取当前登录用户相关信息', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1645292852440, 0, 88888, 0, 3, '获取当前登录用户相关信息', 'JSON', '/get', '{ "curUser-()": "getCurrentUser()", "curId-()": "getCurrentUserId()", "curIdList-()": "getCurrentUserIdAsList()", @@ -15756,7 +15756,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-02-20 01:47:32.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1645900574383, 0, 88888, 0, 3, 'JOIN 副表多个引用赋值', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1645900574383, 0, 88888, 0, 3, 'JOIN 副表多个引用赋值', 'JSON', '/get', '{ "[]": { "join": "": "2017-02-01 11:21:50", "@cast": "date>:DATETIME", @@ -16384,7 +16384,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-05 21:16:38.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646508679123, 0, 82001, 0, 3, '功能符:复杂条件组合', 'JSON', '/get/User[]', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646508679123, 0, 82001, 0, 3, '功能符:复杂条件组合', 'JSON', '/get/User[]', '{ "User": { "date>": "2017-02-01 11:21:50", "name*~": "a", @@ -16492,7 +16492,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-06 03:31:19.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646568413932, 0, 88888, 0, 3, '功能符:@combine:"(date> | !name!) & (contactIdList<> & name!)"', 'JSON', '/get/User[]', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646568413932, 0, 88888, 0, 3, '功能符:@combine:"(date> | !name!) & (contactIdList<> & name!)"', 'JSON', '/get/User[]', '{ "User": { "date>": "2017-02-01 11:21:50", "name!": "a", @@ -16632,7 +16632,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-06 20:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646568597233, 0, 88888, 0, 3, '功能符:@combine:"(date> | name*~) & (contactIdList<> & name*~)"', 'JSON', '/get/User[]', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646568597233, 0, 88888, 0, 3, '功能符:@combine:"(date> | name*~) & (contactIdList<> & name*~)"', 'JSON', '/get/User[]', '{ "User": { "date>": "2017-02-01 11:21:50", "name*~": "a", @@ -16772,7 +16772,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-06 20:09:57.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646568992809, 0, 88888, 0, 3, '功能符:@combine:"(date> | !name*~) & (contactIdList<> | name*~)"', 'JSON', '/get/User[]', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646568992809, 0, 88888, 0, 3, '功能符:@combine:"(date> | !name*~) & (contactIdList<> | name*~)"', 'JSON', '/get/User[]', '{ "User": { "date>": "2017-02-01 11:21:50", "name*~": "a", @@ -16887,7 +16887,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-06 20:16:32.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821886, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821886, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -16896,7 +16896,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821893, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821893, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ "id": 1 // 必填。 id } @@ -16905,7 +16905,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821907, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821907, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ } /** @@ -16913,7 +16913,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务类型 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821910, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821910, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ "queryParam": null // 必填。 queryParam } @@ -16922,7 +16922,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务信息 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646569088993, 0, 88888, 0, 3, '功能符:@combine:"date> | ((!name*~) & !(contactIdList<> | name*~))"', 'JSON', '/get/User[]', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646569088993, 0, 88888, 0, 3, '功能符:@combine:"date> | ((!name*~) & !(contactIdList<> | name*~))"', 'JSON', '/get/User[]', '{ "User": { "date>": "2017-02-01 11:21:50", "name*~": "a", @@ -17037,7 +17037,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-06 20:18:09.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646569248888, 0, 88888, 0, 3, '功能符:@combine:"date> | ((name*~ | date>) & !contactIdList<>)"', 'JSON', '/get/User[]', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1646569248888, 0, 88888, 0, 3, '功能符:@combine:"date> | ((name*~ | date>) & !contactIdList<>)"', 'JSON', '/get/User[]', '{ "User": { "date>": "2017-02-01 11:21:50", "name*~": "a", @@ -17152,7 +17152,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-06 20:20:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1647792882217, 0, 88888, 0, 3, '@having 内 @combine 复杂条件组合', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1647792882217, 0, 88888, 0, 3, '@having 内 @combine 复杂条件组合', 'JSON', '/get', '{ "Comment[]": { "Comment": { "@column": "toId;avg(id):avgId", @@ -17261,7 +17261,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-21 00:14:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1647793025306, 0, 88888, 0, 3, '@having& 内条件 AND 逻辑连接', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1647793025306, 0, 88888, 0, 3, '@having& 内条件 AND 逻辑连接', 'JSON', '/get', '{ "Comment[]": { "Comment": { "@column": "toId;avg(id):avgId", @@ -17337,7 +17337,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-21 00:17:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1647793054436, 0, 88888, 0, 3, '@having 内条件默认 OR 逻辑连接', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1647793054436, 0, 88888, 0, 3, '@having 内条件默认 OR 逻辑连接', 'JSON', '/get', '{ "Comment[]": { "Comment": { "@column": "toId;avg(id):avgId", @@ -17413,7 +17413,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-21 00:17:34.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648331517835, 0, 88888, 0, 3, 'key{}:"复杂 SQL 表达式"', 'JSON', '/get/User[]', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648331517835, 0, 88888, 0, 3, 'key{}:"复杂 SQL 表达式"', 'JSON', '/get/User[]', '{ "User": { "id{}": ">38710,%5+1>2;length(name)%3<=1", "@explain": true @@ -17456,7 +17456,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-27 05:51:57.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648334213865, 0, 88888, 0, 3, '复杂 全文检索/搜索/索引 match(..)AGAINST(..)', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648334213865, 0, 88888, 0, 3, '复杂 全文检索/搜索/索引 match(..)AGAINST(..)', 'JSON', '/get', '{ "User[]": { "User": { "@column": "name,tag;match(name,tag)AGAINST(''tom*'' IN NATURAL LANGUAGE MODE):match", @@ -17543,8 +17543,8 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-03-27 06:36:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648334213866, 0, 82001, 0, 1, '查询动态列表', 'JSON', '/router/get/moments', '{"format":false, "Moment[].page": 0, "Moment[].count": 10 }', '{"format":false, "Moment[]":{"Moment":{"@order":"date-"},"page":0,"count":5}}', null, null, null, '2022-04-17 11:00:27.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648974063944, 0, 1648973644623, 0, 3, '2022-04-03 16:20 关联查询 Comment.userId = User.id', 'JSON', '/login', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648334213866, 0, 82001, 0, 1, '查询动态列表', 'JSON', '/router/get/moments', '{"format":false, "Moment[].page": 0, "Moment[].count": 10 }', '{"format":false, "Moment[]":{"Moment":{"@order":"date-"},"page":0,"count":5}}', null, null, null, '2022-04-17 11:00:27.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648974063944, 0, 1648973644623, 0, 3, '2022-04-03 16:20 关联查询 Comment.userId = User.id', 'JSON', '/login', '{ "type": 0, "phone": "13000082003", "password": "123456", @@ -17659,7 +17659,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-04-03 16:21:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821911, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821911, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ "queryParam": null // 必填。 queryParam } @@ -17668,7 +17668,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务文档目录 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821939, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821939, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ "newParam": null // 必填。 newParam } @@ -17677,7 +17677,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务信息 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821975, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821975, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ "newParam": null // 必填。 newParam } @@ -17686,7 +17686,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务子项 */', null, null, null, null, '2022-05-07 18:03:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648976281083, 0, 1648973644623, 0, 3, 'test', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1648976281083, 0, 1648973644623, 0, 3, 'test', 'JSON', '/get', '{ "User": { "id": 38710 } @@ -17720,7 +17720,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-04-03 16:58:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651805827235, 0, 88888, 0, 3, '查动态列表类 RESTful 简单接口', 'JSON', '/router/get/momentList', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651805827235, 0, 88888, 0, 3, '查动态列表类 RESTful 简单接口', 'JSON', '/router/get/momentList', '{ "Moment[].page": 0, "Moment[].count": 10, "format": false @@ -17767,7 +17767,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-05-06 10:57:07.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651807254036, 0, 88888, 0, 3, '查询 用户名、用户标签 或 评论内容 包含关键词的 用户+评论列表 的列表', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651807254036, 0, 88888, 0, 3, '查询 用户名、用户标签 或 评论内容 包含关键词的 用户+评论列表 的列表', 'JSON', '/get', '{ "[]": { "join": "/Comment", "User": { @@ -17953,7 +17953,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-05-06 11:20:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821458, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821458, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ "id": 1 // 必填。 id } @@ -17962,7 +17962,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询api详情 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821472, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821472, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ "id": 1 // 必填。 id } @@ -17971,7 +17971,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除api */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821490, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821490, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ "param": null // 必填。 param } @@ -17980,7 +17980,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典数据 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821500, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821500, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ "newParam": null // 必填。 newParam } @@ -17989,7 +17989,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增api */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821507, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821507, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ "updateParam": null // 必填。 updateParam } @@ -17998,7 +17998,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新api */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821532, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821532, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18009,7 +18009,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务api */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821582, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821582, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18018,7 +18018,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典数据 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821583, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821583, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ "dictType": "" // 必填。 dictType } @@ -18027,7 +18027,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询字典类型的字典数据 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821587, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821587, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18036,7 +18036,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典类型 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821615, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821615, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ "param": null // 必填。 param } @@ -18045,7 +18045,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典类型 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821616, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821616, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ "param": null // 必填。 param } @@ -18054,7 +18054,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典数据 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821656, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821656, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -18065,7 +18065,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典数据 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821662, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821662, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -18076,7 +18076,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典类型 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821664, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821664, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ "param": null // 必填。 param } @@ -18085,7 +18085,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典类型 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821698, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821698, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ "newParam": null // 必填。 newParam } @@ -18094,7 +18094,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增文档信息 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821727, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821727, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18103,7 +18103,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除文档信息 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821751, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821751, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ "id": 1 // 必填。 id } @@ -18112,7 +18112,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询文档信息详情 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821764, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821764, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ "updateParam": null // 必填。 updateParam } @@ -18121,7 +18121,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新文档信息 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821768, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821768, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18132,7 +18132,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询版本信息 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821789, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821789, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ "queryParam": null // 必填。 queryParam } @@ -18141,7 +18141,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询版本信息 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821838, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821838, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ "newParam": null // 必填。 newParam } @@ -18150,7 +18150,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增版本信息 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821843, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821843, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ "updateParam": null // 必填。 updateParam } @@ -18159,7 +18159,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新版本信息 */', null, null, null, null, '2022-05-07 18:03:41.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821984, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821984, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18170,7 +18170,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务子项 */', null, null, null, null, '2022-05-07 18:03:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821995, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821995, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ "queryParam": null // 必填。 queryParam } @@ -18179,7 +18179,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项 */', null, null, null, null, '2022-05-07 18:03:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821999, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917821999, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -18188,7 +18188,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:03:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822086, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822086, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ "id": 1 // 必填。 id } @@ -18197,7 +18197,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:03:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822087, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822087, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18208,7 +18208,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务信息 */', null, null, null, null, '2022-05-07 18:03:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822092, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822092, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ "updateParam": null // 必填。 updateParam } @@ -18217,7 +18217,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务信息表 */', null, null, null, null, '2022-05-07 18:03:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822161, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917822161, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ "updateParam": null // 必填。 updateParam } @@ -18226,7 +18226,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务子项 */', null, null, null, null, '2022-05-07 18:03:42.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830712, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830712, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ "newParam": null // 必填。 newParam } @@ -18235,7 +18235,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增api */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830718, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830718, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18244,7 +18244,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除api */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830741, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830741, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ "id": 1 // 必填。 id } @@ -18253,7 +18253,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询api详情 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830743, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830743, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ "param": null // 必填。 param } @@ -18262,7 +18262,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典数据 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830750, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830750, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ "updateParam": null // 必填。 updateParam } @@ -18271,7 +18271,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新api */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830782, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830782, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18280,7 +18280,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典数据 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830784, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830784, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -18291,7 +18291,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典数据 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830802, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830802, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18300,7 +18300,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典类型 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830818, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830818, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ "dictType": "" // 必填。 dictType } @@ -18309,7 +18309,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询字典类型的字典数据 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830832, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830832, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ "param": null // 必填。 param } @@ -18318,7 +18318,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典类型 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830846, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830846, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ "param": null // 必填。 param } @@ -18327,7 +18327,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典数据 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830849, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830849, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -18338,7 +18338,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典类型 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830861, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830861, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ "param": null // 必填。 param } @@ -18347,7 +18347,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典类型 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830879, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830879, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ "newParam": null // 必填。 newParam } @@ -18356,7 +18356,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增文档信息 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830886, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830886, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18365,7 +18365,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除文档信息 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830895, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830895, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18376,7 +18376,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询文档信息 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830908, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830908, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ "id": 1 // 必填。 id } @@ -18385,7 +18385,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询文档信息详情 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830914, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830914, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ "updateParam": null // 必填。 updateParam } @@ -18394,7 +18394,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新文档信息 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830925, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830925, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ "newParam": null // 必填。 newParam } @@ -18403,7 +18403,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增版本信息 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830942, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830942, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18412,7 +18412,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除版本信息 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830945, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830945, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18423,7 +18423,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询版本信息 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830961, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830961, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ "queryParam": null // 必填。 queryParam } @@ -18432,7 +18432,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询版本信息 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830976, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830976, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ "id": 1 // 必填。 id } @@ -18441,7 +18441,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询版本信息详情 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830985, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917830985, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ "updateParam": null // 必填。 updateParam } @@ -18450,7 +18450,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新版本信息 */', null, null, null, null, '2022-05-07 18:03:50.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831023, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831023, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -18459,7 +18459,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831042, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831042, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ "id": 1 // 必填。 id } @@ -18468,7 +18468,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831054, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831054, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ "queryParam": null // 必填。 queryParam } @@ -18477,7 +18477,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务文档目录 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831061, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831061, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ "queryParam": null // 必填。 queryParam } @@ -18486,7 +18486,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务信息 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831062, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831062, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ } /** @@ -18494,7 +18494,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务类型 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831203, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831203, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ "newParam": null // 必填。 newParam } @@ -18503,7 +18503,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务信息 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831207, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831207, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ "newParam": null // 必填。 newParam } @@ -18512,7 +18512,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务子项 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831208, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831208, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18523,7 +18523,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务子项 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831212, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831212, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -18532,7 +18532,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除服务子项 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831219, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831219, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18541,7 +18541,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除服务信息表 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831282, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831282, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ "queryParam": null // 必填。 queryParam } @@ -18550,7 +18550,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831309, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831309, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -18559,7 +18559,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831313, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831313, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18570,7 +18570,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务信息 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831317, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831317, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ "id": 1 // 必填。 id } @@ -18579,7 +18579,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831342, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831342, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ "updateParam": null // 必填。 updateParam } @@ -18588,7 +18588,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务子项 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831357, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917831357, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ "updateParam": null // 必填。 updateParam } @@ -18597,7 +18597,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 服务上架、下架 */', null, null, null, null, '2022-05-07 18:03:51.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901888, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901888, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18606,7 +18606,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除api */', null, null, null, null, '2022-05-07 18:05:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901891, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901891, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ "newParam": null // 必填。 newParam } @@ -18615,7 +18615,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增api */', null, null, null, null, '2022-05-07 18:05:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901915, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901915, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18626,7 +18626,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务api */', null, null, null, null, '2022-05-07 18:05:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901920, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917901920, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ "id": 1 // 必填。 id } @@ -18635,7 +18635,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询api详情 */', null, null, null, null, '2022-05-07 18:05:01.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902049, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902049, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18644,7 +18644,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典数据 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902084, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902084, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -18655,7 +18655,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典类型 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902104, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902104, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ "param": null // 必填。 param } @@ -18664,7 +18664,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典类型 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902133, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902133, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ "newParam": null // 必填。 newParam } @@ -18673,7 +18673,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增文档信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902136, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902136, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ "param": null // 必填。 param } @@ -18682,7 +18682,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典数据 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902178, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902178, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18691,7 +18691,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除文档信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902192, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902192, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18702,7 +18702,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询文档信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902266, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902266, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ "id": 1 // 必填。 id } @@ -18711,7 +18711,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询文档信息详情 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902315, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902315, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -18722,7 +18722,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典数据 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902393, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902393, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ "dictType": "" // 必填。 dictType } @@ -18731,7 +18731,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询字典类型的字典数据 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902482, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902482, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ "param": null // 必填。 param } @@ -18740,7 +18740,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典数据 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902500, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902500, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ "updateParam": null // 必填。 updateParam } @@ -18749,7 +18749,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新文档信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902533, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902533, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ "newParam": null // 必填。 newParam } @@ -18758,7 +18758,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增版本信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902539, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902539, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18767,7 +18767,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除版本信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902550, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902550, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18778,7 +18778,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询版本信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902554, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902554, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ "updateParam": null // 必填。 updateParam } @@ -18787,7 +18787,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新api */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902599, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902599, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ "param": null // 必填。 param } @@ -18796,7 +18796,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典类型 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902605, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902605, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ "queryParam": null // 必填。 queryParam } @@ -18805,7 +18805,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询版本信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902659, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902659, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ "id": 1 // 必填。 id } @@ -18814,7 +18814,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询版本信息详情 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902716, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902716, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ "updateParam": null // 必填。 updateParam } @@ -18823,7 +18823,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新版本信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902719, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902719, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ "apiId": 1 // 必填。 apiId } @@ -18832,7 +18832,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询文档信息详情 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902772, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902772, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ "id": 1 // 必填。 id } @@ -18841,7 +18841,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902791, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902791, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ "queryParam": null // 必填。 queryParam } @@ -18850,7 +18850,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务文档目录 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902806, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902806, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -18859,7 +18859,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902827, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902827, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ "queryParam": null // 必填。 queryParam } @@ -18868,7 +18868,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902844, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902844, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ } /** @@ -18876,7 +18876,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务类型 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902957, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902957, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ "newParam": null // 必填。 newParam } @@ -18885,7 +18885,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务信息 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902977, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917902977, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -18894,7 +18894,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除服务子项 */', null, null, null, null, '2022-05-07 18:05:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903002, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903002, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18905,7 +18905,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务子项 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903041, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903041, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -18916,7 +18916,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务信息 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903067, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903067, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -18925,7 +18925,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903089, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903089, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ "id": 1 // 必填。 id } @@ -18934,7 +18934,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903165, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903165, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ "updateParam": null // 必填。 updateParam } @@ -18943,7 +18943,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务信息表 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903225, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903225, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ "updateParam": null // 必填。 updateParam } @@ -18952,7 +18952,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务子项 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903283, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903283, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ "queryParam": null // 必填。 queryParam } @@ -18961,7 +18961,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903320, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903320, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ "updateParam": null // 必填。 updateParam } @@ -18970,7 +18970,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 服务上架、下架 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903372, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903372, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ "newParam": null // 必填。 newParam } @@ -18979,7 +18979,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务子项 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903423, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651917903423, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ "id": 1 // 必填。 id } @@ -18988,7 +18988,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典类型 */', null, null, null, null, '2022-05-07 18:05:03.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013248, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013248, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ "newParam": null // 必填。 newParam } @@ -18997,7 +18997,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增api */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013249, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013249, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ "id": 1 // 必填。 id } @@ -19006,7 +19006,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询api详情 */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013311, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013311, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ "updateParam": null // 必填。 updateParam } @@ -19015,7 +19015,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新api */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013499, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013499, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19024,7 +19024,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典数据 */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013505, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013505, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ "dictType": "" // 必填。 dictType } @@ -19033,7 +19033,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询字典类型的字典数据 */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013514, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013514, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19042,7 +19042,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除api */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013516, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013516, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19053,7 +19053,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务api */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013528, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013528, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ "param": null // 必填。 param } @@ -19062,7 +19062,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典数据 */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013698, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013698, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ "param": null // 必填。 param } @@ -19071,7 +19071,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典类型 */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013764, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013764, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -19082,7 +19082,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典数据 */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013774, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918013774, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19091,7 +19091,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典类型 */', null, null, null, null, '2022-05-07 18:06:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014004, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014004, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ "param": null // 必填。 param } @@ -19100,7 +19100,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典类型 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014030, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014030, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -19111,7 +19111,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典类型 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014185, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014185, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ "newParam": null // 必填。 newParam } @@ -19120,7 +19120,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增文档信息 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014378, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014378, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19129,7 +19129,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除文档信息 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014615, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014615, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19140,7 +19140,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询版本信息 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014699, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014699, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ "updateParam": null // 必填。 updateParam } @@ -19149,7 +19149,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新文档信息 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014786, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014786, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ "queryParam": null // 必填。 queryParam } @@ -19158,7 +19158,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询版本信息 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014788, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014788, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ "newParam": null // 必填。 newParam } @@ -19167,7 +19167,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增版本信息 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014821, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014821, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ "id": 1 // 必填。 id } @@ -19176,7 +19176,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询版本信息详情 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014840, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014840, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ "updateParam": null // 必填。 updateParam } @@ -19185,7 +19185,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新版本信息 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014846, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014846, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ "apiId": 1 // 必填。 apiId } @@ -19194,7 +19194,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询文档信息详情 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014986, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918014986, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -19203,7 +19203,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:06:54.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015007, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015007, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ "id": 1 // 必填。 id } @@ -19212,7 +19212,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015107, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015107, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ "queryParam": null // 必填。 queryParam } @@ -19221,7 +19221,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务文档目录 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015262, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015262, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ } /** @@ -19229,7 +19229,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务类型 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015272, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015272, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ "queryParam": null // 必填。 queryParam } @@ -19238,7 +19238,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务信息 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015315, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015315, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ "newParam": null // 必填。 newParam } @@ -19247,7 +19247,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务信息 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015364, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015364, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ "newParam": null // 必填。 newParam } @@ -19256,7 +19256,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务子项 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015419, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015419, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -19265,7 +19265,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除服务子项 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015588, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015588, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19274,7 +19274,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除服务信息表 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015730, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015730, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19285,7 +19285,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务子项 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015796, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015796, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19296,7 +19296,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询文档信息 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015833, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918015833, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ "updateParam": null // 必填。 updateParam } @@ -19305,7 +19305,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务信息表 */', null, null, null, null, '2022-05-07 18:06:55.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016006, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016006, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19314,7 +19314,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除版本信息 */', null, null, null, null, '2022-05-07 18:06:56.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016210, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016210, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ "updateParam": null // 必填。 updateParam } @@ -19323,7 +19323,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务子项 */', null, null, null, null, '2022-05-07 18:06:56.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016257, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016257, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ "updateParam": null // 必填。 updateParam } @@ -19332,7 +19332,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 服务上架、下架 */', null, null, null, null, '2022-05-07 18:06:56.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016275, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016275, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19343,7 +19343,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务信息 */', null, null, null, null, '2022-05-07 18:06:56.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016315, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016315, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -19352,7 +19352,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:06:56.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016332, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016332, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ "id": 1 // 必填。 id } @@ -19361,7 +19361,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询文档信息详情 */', null, null, null, null, '2022-05-07 18:06:56.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016381, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918016381, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ "id": 1 // 必填。 id } @@ -19370,7 +19370,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:06:56.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043316, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043316, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ "newParam": null // 必填。 newParam } @@ -19379,7 +19379,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增api */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043338, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043338, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ "updateParam": null // 必填。 updateParam } @@ -19388,7 +19388,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新api */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043340, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043340, 0, 82021, 0, 3, '新增字典数据', 'JSON', '/dict/data/add', '{ "param": null // 必填。 param } @@ -19397,7 +19397,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典数据 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043375, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043375, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19408,7 +19408,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务api */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043423, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043423, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19417,7 +19417,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典数据 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043551, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043551, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -19428,7 +19428,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典数据 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043585, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043585, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ "param": null // 必填。 param } @@ -19437,7 +19437,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典数据 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043609, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043609, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ "dictType": "" // 必填。 dictType } @@ -19446,7 +19446,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询字典类型的字典数据 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043748, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043748, 0, 82021, 0, 3, '新增字典类型', 'JSON', '/dict/type/add', '{ "param": null // 必填。 param } @@ -19455,7 +19455,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增字典类型 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043778, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043778, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19464,7 +19464,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典类型 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043803, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043803, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19473,7 +19473,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除文档信息 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043827, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043827, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ "newParam": null // 必填。 newParam } @@ -19482,7 +19482,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增文档信息 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043854, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043854, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ "id": 1 // 必填。 id } @@ -19491,7 +19491,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询文档信息详情 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043871, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043871, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ "param": null // 必填。 param } @@ -19500,7 +19500,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典类型 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043877, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043877, 0, 82021, 0, 3, '分页查询字典类型', 'JSON', '/dict/type/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -19511,7 +19511,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典类型 */', null, null, null, null, '2022-05-07 18:07:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043994, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043994, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ "updateParam": null // 必填。 updateParam } @@ -19520,7 +19520,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新文档信息 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043997, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918043997, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ "newParam": null // 必填。 newParam } @@ -19529,7 +19529,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增版本信息 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044027, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044027, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ "id": 1 // 必填。 id } @@ -19538,7 +19538,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询版本信息详情 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044081, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044081, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19549,7 +19549,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询版本信息 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044089, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044089, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ "updateParam": null // 必填。 updateParam } @@ -19558,7 +19558,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新版本信息 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044249, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044249, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/front/server/detail/doc/{apiId}', '{ "apiId": 1 // 必填。 apiId } @@ -19567,7 +19567,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询文档信息详情 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044280, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044280, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/front/server/detail/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -19576,7 +19576,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044298, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044298, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ "id": 1 // 必填。 id } @@ -19585,7 +19585,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044349, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044349, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ "queryParam": null // 必填。 queryParam } @@ -19594,7 +19594,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务文档目录 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044522, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044522, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ "queryParam": null // 必填。 queryParam } @@ -19603,7 +19603,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务信息 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044577, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044577, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ } /** @@ -19611,7 +19611,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务类型 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044624, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044624, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ "newParam": null // 必填。 newParam } @@ -19620,7 +19620,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务信息 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044672, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044672, 0, 82021, 0, 3, '新增服务子项', 'JSON', '/server/add/module', '{ "newParam": null // 必填。 newParam } @@ -19629,7 +19629,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务子项 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044728, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044728, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -19638,7 +19638,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除服务子项 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044750, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044750, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19647,7 +19647,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除服务信息表 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044902, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044902, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19658,7 +19658,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务子项 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044917, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044917, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ "queryParam": null // 必填。 queryParam } @@ -19667,7 +19667,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044934, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044934, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19678,7 +19678,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务信息 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044950, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918044950, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -19687,7 +19687,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-07 18:07:24.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045087, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045087, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ "id": 1 // 必填。 id } @@ -19696,7 +19696,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-07 18:07:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045103, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045103, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ "updateParam": null // 必填。 updateParam } @@ -19705,7 +19705,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务信息表 */', null, null, null, null, '2022-05-07 18:07:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045119, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045119, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ "updateParam": null // 必填。 updateParam } @@ -19714,7 +19714,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务子项 */', null, null, null, null, '2022-05-07 18:07:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045197, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045197, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ "updateParam": null // 必填。 updateParam } @@ -19723,7 +19723,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 服务上架、下架 */', null, null, null, null, '2022-05-07 18:07:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045199, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1651918045199, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19734,7 +19734,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询文档信息 */', null, null, null, null, '2022-05-07 18:07:25.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373136, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373136, 0, 82021, 0, 3, '更新api', 'JSON', '/api/update', '{ "updateParam": null // 必填。 updateParam } @@ -19743,7 +19743,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新api */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373184, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373184, 0, 82021, 0, 3, '查询api详情', 'PARAM', '/api/query/{id}', '{ "id": 1 // 必填。 id } @@ -19752,7 +19752,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询api详情 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373192, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373192, 0, 82021, 0, 3, '新增api', 'JSON', '/api/add', '{ "newParam": null // 必填。 newParam } @@ -19761,7 +19761,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增api */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373204, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373204, 0, 82021, 0, 3, '分页查询服务api', 'JSON', '/api/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19772,7 +19772,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务api */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373206, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373206, 0, 82021, 0, 3, '删除api', 'JSON', '/api/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19781,7 +19781,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除api */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373267, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373267, 0, 82021, 0, 3, '分页查询字典数据', 'JSON', '/dict/data/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "param": null // 必填。 param @@ -19792,7 +19792,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询字典数据 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373268, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373268, 0, 82021, 0, 3, '删除字典数据', 'JSON', '/dict/data/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19801,7 +19801,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典数据 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373276, 0, 82021, 0, 3, '登录1', 'JSON', '/login', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373276, 0, 82021, 0, 3, '登录1', 'JSON', '/login', '{ "type": 0, "phone": "13000082001", "password": "123456", @@ -19922,7 +19922,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373287, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373287, 0, 82021, 0, 3, '查询字典类型的字典数据', 'PARAM', '/dict/data/queryByDicType/{dictType}', '{ "dictType": "" // 必填。 dictType } @@ -19931,7 +19931,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询字典类型的字典数据 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373302, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373302, 0, 82021, 0, 3, '更新字典数据', 'JSON', '/dict/data/update', '{ "param": null // 必填。 param } @@ -19940,7 +19940,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典数据 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373335, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373335, 0, 82021, 0, 3, '更新字典类型', 'JSON', '/dict/type/update', '{ "param": null // 必填。 param } @@ -19949,7 +19949,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新字典类型 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373344, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373344, 0, 82021, 0, 3, '删除文档信息', 'JSON', '/doc/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19958,7 +19958,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除文档信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373372, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373372, 0, 82021, 0, 3, '新增文档信息', 'JSON', '/doc/add', '{ "newParam": null // 必填。 newParam } @@ -19967,7 +19967,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增文档信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373376, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373376, 0, 82021, 0, 3, '删除字典类型', 'JSON', '/dict/type/delete/{id}', '{ "id": 1 // 必填。 id } @@ -19976,7 +19976,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除字典类型 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321170, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/editExperienceSiteRelater', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321170, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/editExperienceSiteRelater', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -19984,7 +19984,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:28:41.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373389, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373389, 0, 82021, 0, 3, '分页查询文档信息', 'JSON', '/doc/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -19995,7 +19995,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询文档信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373415, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373415, 0, 82021, 0, 3, '删除版本信息', 'JSON', '/edtion/delete/{id}', '{ "id": 1 // 必填。 id } @@ -20004,7 +20004,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除版本信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373418, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373418, 0, 82021, 0, 3, '更新文档信息', 'JSON', '/doc/update', '{ "updateParam": null // 必填。 updateParam } @@ -20013,7 +20013,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新文档信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373438, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373438, 0, 82021, 0, 3, '查询版本信息', 'JSON', '/edtion/query', '{ "queryParam": null // 必填。 queryParam } @@ -20022,7 +20022,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询版本信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373441, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373441, 0, 82021, 0, 3, '新增版本信息', 'JSON', '/edtion/add', '{ "newParam": null // 必填。 newParam } @@ -20031,7 +20031,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增版本信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373445, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373445, 0, 82021, 0, 3, '查询文档信息详情', 'PARAM', '/doc/query/{id}', '{ "id": 1 // 必填。 id } @@ -20040,7 +20040,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询文档信息详情 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373468, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373468, 0, 82021, 0, 3, '分页查询版本信息', 'JSON', '/edtion/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -20051,7 +20051,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询版本信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373470, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373470, 0, 82021, 0, 3, '查询版本信息详情', 'PARAM', '/edtion/query/{id}', '{ "id": 1 // 必填。 id } @@ -20060,7 +20060,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询版本信息详情 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373480, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373480, 0, 82021, 0, 3, '更新版本信息', 'JSON', '/edtion/update', '{ "updateParam": null // 必填。 updateParam } @@ -20069,7 +20069,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新版本信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373503, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373503, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/front/server/detail/{id}', '{ "id": 1 // 必填。 id } @@ -20078,7 +20078,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373536, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373536, 0, 82021, 0, 3, '查询服务文档目录', 'JSON', '/front/server/doc/catalog', '{ "queryParam": null // 必填。 queryParam } @@ -20087,7 +20087,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务文档目录 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373561, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373561, 0, 82021, 0, 3, '查询服务类型', 'PARAM', '/front/server/type', '{ } /** @@ -20095,7 +20095,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务类型 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373630, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373630, 0, 82021, 0, 3, '新增服务信息', 'JSON', '/server/add', '{ "newParam": null // 必填。 newParam } @@ -20104,7 +20104,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 新增服务信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373681, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373681, 0, 82021, 0, 3, '删除服务子项', 'JSON', '/server/delete/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -20113,7 +20113,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除服务子项 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373729, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373729, 0, 82021, 0, 3, '删除服务信息表', 'JSON', '/server/delete/{id}', '{ "id": 1 // 必填。 id } @@ -20122,7 +20122,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 删除服务信息表 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373752, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373752, 0, 82021, 0, 3, '查询服务信息', 'JSON', '/front/server/query', '{ "queryParam": null // 必填。 queryParam } @@ -20131,7 +20131,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373789, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373789, 0, 82021, 0, 3, '分页查询服务子项', 'JSON', '/server/module/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -20142,7 +20142,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务子项 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373817, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373817, 0, 82021, 0, 3, '查询服务子项', 'JSON', '/server/module/query', '{ "queryParam": null // 必填。 queryParam } @@ -20151,7 +20151,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373840, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373840, 0, 82021, 0, 3, '分页查询服务信息', 'JSON', '/server/page', '{ "pageNum": 1, // 必填。 pageNum "pageSize": 10, // 必填。 pageSize "queryParam": null // 必填。 queryParam @@ -20162,7 +20162,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 分页查询服务信息 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373994, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079373994, 0, 82021, 0, 3, '查询服务信息详情', 'PARAM', '/server/query/{id}', '{ "id": 1 // 必填。 id } @@ -20171,7 +20171,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 根据id查询服务信息详情 */', null, null, null, null, '2022-05-09 14:56:13.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374015, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374015, 0, 82021, 0, 3, '更新服务信息表', 'JSON', '/server/update', '{ "updateParam": null // 必填。 updateParam } @@ -20180,7 +20180,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务信息表 */', null, null, null, null, '2022-05-09 14:56:14.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374047, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374047, 0, 82021, 0, 3, '更新服务子项', 'JSON', '/server/update/module', '{ "updateParam": null // 必填。 updateParam } @@ -20189,7 +20189,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 更新服务子项 */', null, null, null, null, '2022-05-09 14:56:14.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374052, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374052, 0, 82021, 0, 3, '查询服务子项详情', 'PARAM', '/server/query/module/{nodeCode}', '{ "nodeCode": "" // 必填。 nodeCode } @@ -20198,7 +20198,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 查询服务子项详情 */', null, null, null, null, '2022-05-09 14:56:14.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374102, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652079374102, 0, 82021, 0, 3, '服务上架、下架', 'JSON', '/server/upper', '{ "updateParam": null // 必填。 updateParam } @@ -20207,72 +20207,72 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, 服务上架、下架 */', null, null, null, null, '2022-05-09 14:56:14.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615189, 0, 82021, 0, 3, '语令调度查询', 'JSON', '/accessSemanticTemplate', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615189, 0, 82021, 0, 3, '语令调度查询', 'JSON', '/accessSemanticTemplate', '{ "semanticTemplateDTO": {} // 必填。 semanticTemplateDTO }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615216, 0, 82021, 0, 3, '语音指令新增', 'JSON', '/addSemanticOrder', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615216, 0, 82021, 0, 3, '语音指令新增', 'JSON', '/addSemanticOrder', '{ "semanticOrderDTO": {} // 必填。 semanticOrderDTO }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615224, 0, 82021, 0, 3, '获取clientId', 'PARAM', '/client/getClientId', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615224, 0, 82021, 0, 3, '获取clientId', 'PARAM', '/client/getClientId', '{ }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615232, 0, 82021, 0, 3, '语音指令删除', 'JSON', '/deleteSemanticOrder', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615232, 0, 82021, 0, 3, '语音指令删除', 'JSON', '/deleteSemanticOrder', '{ "orderId": "" // 必填。 orderId }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615279, 0, 82021, 0, 3, '语令调度删除', 'JSON', '/deleteSemanticTemplate', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615279, 0, 82021, 0, 3, '语令调度删除', 'JSON', '/deleteSemanticTemplate', '{ "templateId": 1 // 必填。 templateId }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615281, 0, 82021, 0, 3, '语音合成接口', 'PARAM', '/client/tts', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615281, 0, 82021, 0, 3, '语音合成接口', 'PARAM', '/client/tts', '{ "clientId": "", // 必填。 clientId "topic": "", // 必填。 topic "ttsContent": "", // 必填。 ttsContent "是否通过客户端直接播放:1-是 2-否 (默认为1)": 1 // 是否通过客户端直接播放:1-是 2-否 (默认为1) }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615310, 0, 82021, 0, 3, '账户信息查询', 'PARAM', '/getAccountInfo', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615310, 0, 82021, 0, 3, '账户信息查询', 'PARAM', '/getAccountInfo', '{ "macCode": "" // 必填。 macCode }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615326, 0, 82021, 0, 3, '语音指令查询', 'PARAM', '/getOrderByOrderName', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615326, 0, 82021, 0, 3, '语音指令查询', 'PARAM', '/getOrderByOrderName', '{ "orderName": "" // orderName }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615327, 0, 82021, 0, 3, '测试使用,测试使用!!!--获取第三方热词', 'PARAM', '/getByThird', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615327, 0, 82021, 0, 3, '测试使用,测试使用!!!--获取第三方热词', 'PARAM', '/getByThird', '{ }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615440, 0, 82021, 0, 3, '心跳上报', 'JSON', '/heartbeat', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615440, 0, 82021, 0, 3, '心跳上报', 'JSON', '/heartbeat', '{ "param": null // 必填。 param }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615443, 0, 82021, 0, 3, '测试连接状态接口', 'PARAM', '/test/connect/status', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615443, 0, 82021, 0, 3, '测试连接状态接口', 'PARAM', '/test/connect/status', '{ "clientId": "", // 必填。 clientId "topic": "" // 必填。 topic }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615587, 0, 82021, 0, 3, '按键唤醒', 'PARAM', '/key/awake-up', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615587, 0, 82021, 0, 3, '按键唤醒', 'PARAM', '/key/awake-up', '{ "clientId": "", // 必填。 clientId "topic": "" // 必填。 topic }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615592, 0, 82021, 0, 3, '查询所有客户端信息配置', 'PARAM', '/mac/getMac', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615592, 0, 82021, 0, 3, '查询所有客户端信息配置', 'PARAM', '/mac/getMac', '{ }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615692, 0, 82021, 0, 3, 'topic注册', 'PARAM', '/topic/register', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615692, 0, 82021, 0, 3, 'topic注册', 'PARAM', '/topic/register', '{ "clientId": "", // 必填。 clientId "topic": "", // 必填。 topic "type": 1 // 必填。 1生产者 2消费者 3全部 }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615693, 0, 82021, 0, 3, 'testTts', 'PARAM', '/test/tts', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615693, 0, 82021, 0, 3, 'testTts', 'PARAM', '/test/tts', '{ "clientId": "", // 必填。 clientId "filePath": "", // 必填。 filePath "topic": "", // 必填。 topic "ttsContent": "" // 必填。 ttsContent }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615707, 0, 82021, 0, 3, 'topic删除', 'PARAM', '/topic/delete', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615707, 0, 82021, 0, 3, 'topic删除', 'PARAM', '/topic/delete', '{ "clientId": "", // 必填。 clientId "topic": "", // 必填。 topic "type": 1 // 必填。 1生产者 2消费者 3全部 }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615760, 0, 82021, 0, 3, '语令调度修改', 'JSON', '/updateSemanticTemplate', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615760, 0, 82021, 0, 3, '语令调度修改', 'JSON', '/updateSemanticTemplate', '{ "semanticTemplateDTO": {} // 必填。 semanticTemplateDTO }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615800, 0, 82021, 0, 3, '同步第三方热词', 'PARAM', '/updateByThird', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615800, 0, 82021, 0, 3, '同步第三方热词', 'PARAM', '/updateByThird', '{ }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615801, 0, 82021, 0, 3, '语音指令修改', 'JSON', '/updateSemanticOrder', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652765615801, 0, 82021, 0, 3, '语音指令修改', 'JSON', '/updateSemanticOrder', '{ "semanticOrderDTO": {} // 必填。 semanticOrderDTO }', null, null, null, null, '2022-05-17 13:33:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652867168125, 0, 82021, 0, 3, '新增动态', 'JSON', '/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1652867168125, 0, 82021, 0, 3, '新增动态', 'JSON', '/post', '{ "Moment": { "content": "测试新增动态", "pictureList": [ @@ -20339,7 +20339,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-05-18 17:46:08.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1654148705805, 0, 82001, 0, 3, '多字段参与join,是否出现1+N查询', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1654148705805, 0, 82001, 0, 3, '多字段参与join,是否出现1+N查询', 'JSON', '/get', '{ "[]": { "count": 10, "page": 0, @@ -20549,7 +20549,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-06-02 13:45:05.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657045372046, 0, 82001, 0, 3, '一对多关联查询 Comment.userId = User.id', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657045372046, 0, 82001, 0, 3, '一对多关联查询 Comment.userId = User.id', 'JSON', '/get', '{ "User": { "id": 82001 }, @@ -20638,46 +20638,46 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, ] }', 'Authorization: Basic GERIJ2438R9FH239NW= //取出 /login 接口返回的 token Other-Header: test', '2022-07-06 02:22:52.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522417111, 0, 1657522377266, 0, 3, '用户列表', 'PARAM', '/user/list', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522417111, 0, 1657522377266, 0, 3, '用户列表', 'PARAM', '/user/list', '{ "pageSize": 10, // 每页数量 "pageNum": 1, // "searchKey": "a" // 搜索关键词 }', null, null, null, null, '2022-07-11 14:53:37.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522417180, 0, 1657522377266, 0, 3, '用户详情', 'PARAM', '/user', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522417180, 0, 1657522377266, 0, 3, '用户详情', 'PARAM', '/user', '{ "id": 82001 // 主键 }', null, null, null, null, '2022-07-11 14:53:37.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522417193, 0, 1657522377266, 0, 3, '新增评论', 'JSON', '/comment/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522417193, 0, 1657522377266, 0, 3, '新增评论', 'JSON', '/comment/post', '{ "userId": 82001, // 用户id "momentId": 15, // 动态id "content": "测试评论" // 内容 }', null, null, null, null, '2022-07-11 14:53:37.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522425829, 0, 1657522377266, 0, 3, '用户列表', 'PARAM', '/user/list', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522425829, 0, 1657522377266, 0, 3, '用户列表', 'PARAM', '/user/list', '{ "pageSize": 10, // 每页数量 "pageNum": 1, // "searchKey": "a" // 搜索关键词 }', null, null, null, null, '2022-07-11 14:53:45.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522425838, 0, 1657522377266, 0, 3, '用户详情', 'PARAM', '/user', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522425838, 0, 1657522377266, 0, 3, '用户详情', 'PARAM', '/user', '{ "id": 82001 // 主键 }', null, null, null, null, '2022-07-11 14:53:45.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522425841, 0, 1657522377266, 0, 3, '新增评论', 'JSON', '/comment/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522425841, 0, 1657522377266, 0, 3, '新增评论', 'JSON', '/comment/post', '{ "userId": 82001, // 用户id "momentId": 15, // 动态id "content": "测试评论" // 内容 }', null, null, null, null, '2022-07-11 14:53:45.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522502038, 0, 1657522377266, 0, 3, '用户列表', 'PARAM', '/user/list', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522502038, 0, 1657522377266, 0, 3, '用户列表', 'PARAM', '/user/list', '{ "pageSize": 10, // 每页数量 "pageNum": 1, // "searchKey": "a" // 搜索关键词 }', null, null, null, null, '2022-07-11 14:55:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522502100, 0, 1657522377266, 0, 3, '用户详情', 'PARAM', '/user', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522502100, 0, 1657522377266, 0, 3, '用户详情', 'PARAM', '/user', '{ "id": 82001 // 主键 }', null, null, null, null, '2022-07-11 14:55:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522502117, 0, 1657522377266, 0, 3, '新增评论', 'JSON', '/comment/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657522502117, 0, 1657522377266, 0, 3, '新增评论', 'JSON', '/comment/post', '{ "userId": 82001, // 用户id "momentId": 15, // 动态id "content": "测试评论" // 内容 }', null, null, null, null, '2022-07-11 14:55:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657797765823, 0, 82001, 0, 3, '一对一关联查询 User.id = Comment.userId', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657797765823, 0, 82001, 0, 3, '一对一关联查询 User.id = Comment.userId', 'JSON', '/get', '{ "Comment": { "id": 22 }, @@ -20749,7 +20749,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, ] }', 'Authorization: Basic GERIJ2438R9FH239NW= //取出 /login 接口返回的 token Other-Header: test', '2022-07-14 19:22:45.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657811332517, 0, 88888, 0, 3, '跨级 APP JOIN', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1657811332517, 0, 88888, 0, 3, '跨级 APP JOIN', 'JSON', '/get', '{ "[]": { "count": 2, "join": "@/User,@/Comment[]/Comment/momentId@", @@ -20882,7 +20882,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-07-14 23:08:52.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1663749767546, 0, 82003, 0, 3, 'test', 'JSON', '/sys', '{}', null, 'SELECT `Comment`.`userId`, `User`.`id`, COUNT(1) +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1663749767546, 0, 82003, 0, 3, 'test', 'JSON', '/sys', '{}', null, 'SELECT `Comment`.`userId`, `User`.`id`, COUNT(1) FROM `sys`.`Comment` AS `Comment` INNER JOIN `sys`.`apijson_user` AS `User` ON `User`.`id` = `Comment`.`userId` @@ -20892,7 +20892,7 @@ ORDER BY `User`.`id` ASC LIMIT ${limit} OFFSET ${offset}', null, 'searchKey: ''% userId: 82001 limit: 3 offset: 0', '2022-09-21 16:42:47.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321253, 0, 82001, 82001, 3, '', 'JSON', '/web/attendance/setAttendanceInfo', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321253, 0, 82001, 82001, 3, '', 'JSON', '/web/attendance/setAttendanceInfo', '{ "userId": null }', null, null, '{ "notnull": true, @@ -20908,7 +20908,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:28:41.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1660136144185, 0, 82001, 0, 3, '查询用户 v4', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1660136144185, 0, 82001, 0, 3, '查询用户 v4', 'JSON', '/get', '{ "User": { "id": 82001 } @@ -20950,7 +20950,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, ] }', 'Authorization: Basic GERIJ2438R9FH239NW= //取出 /login 接口返回的 token Other-Header: test', '2022-08-10 20:55:44.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662114150688, 0, 1662112443331, 0, 3, '2022-09-02 17:27 一对多关联查询 Comment.userId = User.id', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662114150688, 0, 1662112443331, 0, 3, '2022-09-02 17:27 一对多关联查询 Comment.userId = User.id', 'JSON', '/get', '{ "User": { "id": 82001 }, @@ -21017,7 +21017,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-09-02 18:22:30.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662568938435, 0, 82003, 0, 3, '默认测试用例', 'JSON', '/sys', '{}', null, 'SELECT `Comment`.`userId`, `User`.`id`, COUNT(1) +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662568938435, 0, 82003, 0, 3, '默认测试用例', 'JSON', '/sys', '{}', null, 'SELECT `Comment`.`userId`, `User`.`id`, COUNT(1) FROM `sys`.`Comment` AS `Comment` INNER JOIN `sys`.`apijson_user` AS `User` ON `User`.`id` = `Comment`.`userId` @@ -21027,12 +21027,12 @@ ORDER BY `User`.`id` ASC LIMIT ${limit} OFFSET ${offset}', null, 'searchKey: ''% userId: 82001 limit: 3 offset: 0', '2022-09-08 00:42:18.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662569033547, 0, 82003, 0, 3, '带变量查询 LIKE, LIMIT', 'JSON', '/sys', '{}', null, 'SELECT * FROM sys.Comment +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662569033547, 0, 82003, 0, 3, '带变量查询 LIKE, LIMIT', 'JSON', '/sys', '{}', null, 'SELECT * FROM sys.Comment WHERE content LIKE concat(''%'',${key},''%'') LIMIT ${limit}', null, 'key: "s" limit: 2', '2022-09-08 00:43:53.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662569350286, 0, 82003, 0, 3, '简单查询', 'JSON', '/sys', '{}', null, 'SELECT * FROM sys.Comment ORDER BY id DESC LIMIT 3', null, '', '2022-09-08 00:49:10.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662603529187, 0, 82003, 0, 3, '两表 JOIN & 多字段搜索', 'JSON', '/sys', '{}', null, 'SELECT `User`.`id`,`User`.`name`,`User`.`tag`, `Comment`.* +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662569350286, 0, 82003, 0, 3, '简单查询', 'JSON', '/sys', '{}', null, 'SELECT * FROM sys.Comment ORDER BY id DESC LIMIT 3', null, '', '2022-09-08 00:49:10.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662603529187, 0, 82003, 0, 3, '两表 JOIN & 多字段搜索', 'JSON', '/sys', '{}', null, 'SELECT `User`.`id`,`User`.`name`,`User`.`tag`, `Comment`.* FROM `sys`.`apijson_user` AS `User` INNER JOIN `sys`.`Comment` AS `Comment` ON `Comment`.`userId`=`User`.`id` WHERE ( ( (`User`.`name` REGEXP BINARY ${searchKey1}) @@ -21044,20 +21044,20 @@ searchKey2: ''an'' searchKey3: ''an'' offset: 0 limit: 3', '2022-09-08 10:18:49.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662603872425, 0, 82003, 0, 3, '单表 HAVING OR', 'JSON', '/sys', '{}', null, 'SELECT `toId`,avg(`id`) AS `avgId` +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662603872425, 0, 82003, 0, 3, '单表 HAVING OR', 'JSON', '/sys', '{}', null, 'SELECT `toId`,avg(`id`) AS `avgId` FROM `sys`.`Comment` GROUP BY `toId` HAVING `toId`>${minToId} OR `avgId`<=${maxAvgId} LIMIT 10', null, 'minToId: 0 maxAvgId: 10000', '2022-09-08 10:24:32.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662604351793, 0, 82003, 0, 3, '全文检索 match AGAINST', 'JSON', '/sys', '{}', null, 'SELECT `name`,`tag`,match(`name`,`tag`) AGAINST (${key1} IN NATURAL LANGUAGE MODE) AS `match` +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662604351793, 0, 82003, 0, 3, '全文检索 match AGAINST', 'JSON', '/sys', '{}', null, 'SELECT `name`,`tag`,match(`name`,`tag`) AGAINST (${key1} IN NATURAL LANGUAGE MODE) AS `match` FROM `sys`.`apijson_user` WHERE ( (match(`name`,`tag`) AGAINST (${key2} IN NATURAL LANGUAGE MODE)>=1) ) HAVING ( match(`name`,`tag`) AGAINST (${key3} IN NATURAL LANGUAGE MODE)<5 ) LIMIT 10', null, 'key1: ''tom*'' key2: ''tom*'' key3: ''tom*''', '2022-09-08 10:32:31.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662604680510, 0, 82003, 0, 3, 'JOIN ON 字段、条件、分组、聚合、排序等', 'JSON', '/sys', '{}', null, 'SELECT `Comment`.`userId`, `User`.`id`,count(1) +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662604680510, 0, 82003, 0, 3, 'JOIN ON 字段、条件、分组、聚合、排序等', 'JSON', '/sys', '{}', null, 'SELECT `Comment`.`userId`, `User`.`id`,count(1) FROM `sys`.`Comment` AS `Comment` INNER JOIN `sys`.`apijson_user` AS `User` ON `User`.`id` = `Comment`.`userId` @@ -21065,28 +21065,28 @@ INNER JOIN `sys`.`apijson_user` AS `User` GROUP BY `User`.`id` HAVING ( (`User`.`id`)%7!=0 ) ORDER BY `User`.`id` ASC LIMIT 3', null, 'like: ''%a%'' regexp: ''a''', '2022-09-08 10:38:00.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662605088494, 0, 82003, 0, 3, '窗口函数 sum(..)OVER(PARTITION BY.. ODER BY..)', 'JSON', '/sys', '{}', null, 'SELECT sum(`id`) OVER (PARTITION BY `toId` ORDER BY `date` DESC) +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662605088494, 0, 82003, 0, 3, '窗口函数 sum(..)OVER(PARTITION BY.. ODER BY..)', 'JSON', '/sys', '{}', null, 'SELECT sum(`id`) OVER (PARTITION BY `toId` ORDER BY `date` DESC) FROM `sys`.`Comment` LIMIT ${limit} OFFSET ${offset}', null, 'limit: 3 offset: 0', '2022-09-08 10:44:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662605495868, 0, 82003, 0, 3, 'Moment INNER JOIN LEFT JOIN Comment WHERE AND', 'JSON', '/sys', '{}', null, 'SELECT `Moment`.`id`,`Moment`.`userId`,`Moment`.`content`, `User`.`id`,`User`.`name`, `Comment`.* +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662605495868, 0, 82003, 0, 3, 'Moment INNER JOIN LEFT JOIN Comment WHERE AND', 'JSON', '/sys', '{}', null, 'SELECT `Moment`.`id`,`Moment`.`userId`,`Moment`.`content`, `User`.`id`,`User`.`name`, `Comment`.* FROM `sys`.`Moment` AS `Moment` INNER JOIN `sys`.`apijson_user` AS `User` ON `User`.`id` = `Moment`.`userId` LEFT JOIN ( SELECT * FROM `sys`.`Comment` ) AS `Comment` ON `Comment`.`momentId` = `Moment`.`id` WHERE ( ( (`Moment`.`content` REGEXP ${regexp}) ) AND ( ( (`User`.`sex` = ${sex}) ) ) ) LIMIT 10', null, 'regexp: ''a'' sex: 0', '2022-09-08 10:51:35.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662606200791, 0, 82003, 0, 3, 'INSERT INTO sys.Comment', 'JSON', '/sys', '{}', null, 'INSERT INTO `sys`.`Comment`(`momentId`,`userId`,`content`) +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662606200791, 0, 82003, 0, 3, 'INSERT INTO sys.Comment', 'JSON', '/sys', '{}', null, 'INSERT INTO `sys`.`Comment`(`momentId`,`userId`,`content`) VALUES(${momentId}, ${userId}, ${content})', null, 'momentId: 15 userId: 82001 content: "test"', '2022-09-08 11:03:20.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662606482664, 0, 82003, 0, 3, 'UPDATE User SET name WHERE id', 'JSON', '/sys', '{}', null, 'UPDATE `sys`.`apijson_user` +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662606482664, 0, 82003, 0, 3, 'UPDATE User SET name WHERE id', 'JSON', '/sys', '{}', null, 'UPDATE `sys`.`apijson_user` SET `name` = ${name} WHERE ( (`id` = ${id}) ) LIMIT 1', null, 'name: ''Test User'' id: 82001', '2022-09-08 11:08:02.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662606992370, 0, 82003, 0, 3, 'WHERE id>${minId} AND id<=${maxId}', 'JSON', '/sys', '{}', null, 'SELECT count(*) AS count FROM `sys`.`apijson_user` +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662606992370, 0, 82003, 0, 3, 'WHERE id>${minId} AND id<=${maxId}', 'JSON', '/sys', '{}', null, 'SELECT count(*) AS count FROM `sys`.`apijson_user` WHERE ( (`id` > ${minId} AND `id` <= ${maxId}) ) ', null, 'minId: 82001 maxId: 820010', '2022-09-08 11:16:32.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662634839699, 0, 82005, 0, 3, 'Nebula Explorer 接口', 'JSON', '/api-nebula/db/exec', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1662634839699, 0, 82005, 0, 3, 'Nebula Explorer 接口', 'JSON', '/api-nebula/db/exec', '{ "gql": "fetch prop on `evolves_to` \"monster033\"->\"monster034\"@0 YIELD edge as `edge_`" }', null, null, '{ "notnull": true, @@ -21114,8 +21114,8 @@ sec-ch-ua-platform: "macOS" Sec-Fetch-Dest: empty Sec-Fetch-Mode: cors Sec-Fetch-Site: same-origin', '2022-09-08 19:00:39.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1663144540138, 0, 82003, 0, 3, 'Nebula Test', 'JSON', '/JDBC_TEST_SPACE', '{}', null, 'MATCH (v:testNode) WHERE id(v) == ${id} return v;', null, 'id: ''testNode_9''', '2022-09-14 16:35:40.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665343358862, 0, 88888, 0, 3, '子查询内外都带条件', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1663144540138, 0, 82003, 0, 3, 'Nebula Test', 'JSON', '/JDBC_TEST_SPACE', '{}', null, 'MATCH (v:testNode) WHERE id(v) == ${id} return v;', null, 'id: ''testNode_9''', '2022-09-14 16:35:40.000000', null); +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665343358862, 0, 88888, 0, 3, '子查询内外都带条件', 'JSON', '/get', '{ "[]": { "Comment": { "name$": "%a%", @@ -21279,7 +21279,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-10-10 03:22:38.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665343763962, 0, 88888, 0, 3, 'JOIN + 子查询 且全都带条件', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665343763962, 0, 88888, 0, 3, 'JOIN + 子查询 且全都带条件', 'JSON', '/get', '{ "[]": { "join": "*/Moment", "Comment": { @@ -21489,20 +21489,20 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-10-10 03:29:23.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665482688193, 0, 82002, 0, 3, '用户列表', 'PARAM', '/user/list', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665482688193, 0, 82002, 0, 3, '用户列表', 'PARAM', '/user/list', '{ "pageSize": 10, // 每页数量 "pageNum": 1, // "searchKey": "a" // 搜索关键词 }', null, null, null, null, '2022-10-11 18:04:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665482688213, 0, 82002, 0, 3, '新增评论', 'JSON', '/comment/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665482688213, 0, 82002, 0, 3, '新增评论', 'JSON', '/comment/post', '{ "userId": 82001, // 用户id "momentId": 15, // 动态id "content": "测试评论" // 内容 }', null, null, null, null, '2022-10-11 18:04:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665482688227, 0, 82002, 0, 3, '用户详情', 'PARAM', '/user', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1665482688227, 0, 82002, 0, 3, '用户详情', 'PARAM', '/user', '{ "id": 82001 // 主键 }', null, null, null, null, '2022-10-11 18:04:48.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1666202661817, 0, 88888, 0, 3, '测试对象注释类型', 'JSON', '/get', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1666202661817, 0, 88888, 0, 3, '测试对象注释类型', 'JSON', '/get', '{ "User": { "id": 38710 } @@ -21537,7 +21537,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', '', '2022-10-20 02:04:21.000000', null); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501121004, 0, 82001, 82001, 3, '', 'JSON', '/mini/device/authFace', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501121004, 0, 82001, 82001, 3, '', 'JSON', '/mini/device/authFace', '{ "openid": null, "deviceSerialNumber": null, "changeSite": null @@ -21565,7 +21565,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:25:21.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501121006, 0, 82001, 82001, 3, '', 'JSON', '/mini/baidu/getIdCard', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501121006, 0, 82001, 82001, 3, '', 'JSON', '/mini/baidu/getIdCard', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21573,7 +21573,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:25:21.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501172605, 0, 82001, 82001, 3, '', 'JSON', '/event/securityRisk/add', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501172605, 0, 82001, 82001, 3, '', 'JSON', '/event/securityRisk/add', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21581,7 +21581,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:26:12.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501172606, 0, 82001, 82001, 3, '', 'JSON', '/event/insurance/insuranceNotice', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501172606, 0, 82001, 82001, 3, '', 'JSON', '/event/insurance/insuranceNotice', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21589,7 +21589,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:26:12.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501172611, 0, 82001, 82001, 3, '', 'JSON', '/h5/device/decodeQrPic', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501172611, 0, 82001, 82001, 3, '', 'JSON', '/h5/device/decodeQrPic', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21597,7 +21597,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:26:12.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501215823, 0, 82001, 82001, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/online', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501215823, 0, 82001, 82001, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/online', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21605,7 +21605,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:26:56.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501215857, 0, 82001, 82001, 3, '', 'PARAM', '/easypoi/wps/v1/3rd/file/info', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501215857, 0, 82001, 82001, 3, '', 'PARAM', '/easypoi/wps/v1/3rd/file/info', '{ "_w_userid": null, "_w_filepath": null }', null, null, '{ @@ -21622,7 +21622,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:26:56.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501216175, 0, 82001, 82001, 3, '', 'JSON', '/dev/api/task/task/add', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501216175, 0, 82001, 82001, 3, '', 'JSON', '/dev/api/task/task/add', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21630,7 +21630,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:26:56.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321042, 0, 82001, 82001, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/rename', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321042, 0, 82001, 82001, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/rename', '{ "_w_userid": null }', null, null, '{ "notnull": true, @@ -21640,7 +21640,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:28:41.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321155, 0, 82001, 82001, 3, '', 'JSON', '/web/encodeDevice/hatBroadCast', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321155, 0, 82001, 82001, 3, '', 'JSON', '/web/encodeDevice/hatBroadCast', '{ "userphone": null, "siteIds": null, "fileName": null @@ -21663,7 +21663,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:28:41.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321169, 0, 82001, 82001, 3, '', 'JSON', '/web/group/insertGroup', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501321169, 0, 82001, 82001, 3, '', 'JSON', '/web/group/insertGroup', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21671,7 +21671,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:28:41.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501372592, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/delSiteRelaterMsg', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501372592, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/delSiteRelaterMsg', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21679,7 +21679,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:29:32.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501429064, 0, 82001, 82001, 3, '', 'JSON', '/pc/site/editSite', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501429064, 0, 82001, 82001, 3, '', 'JSON', '/pc/site/editSite', '{ "relater": null }', null, null, '{ "notnull": true, @@ -21689,7 +21689,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:30:29.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482586, 0, 82001, 82001, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/rename', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482586, 0, 82001, 82001, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/rename', '{ "_w_userid": null }', null, null, '{ "notnull": true, @@ -21699,7 +21699,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:31:22.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482681, 0, 82001, 82001, 3, '', 'JSON', '/web/group/insertGroup', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482681, 0, 82001, 82001, 3, '', 'JSON', '/web/group/insertGroup', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21707,7 +21707,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:31:22.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482682, 0, 82001, 82001, 3, '', 'JSON', '/web/attendance/updateAttendanceInfo', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482682, 0, 82001, 82001, 3, '', 'JSON', '/web/attendance/updateAttendanceInfo', '{ "userId": null }', null, null, '{ "notnull": true, @@ -21723,7 +21723,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:31:22.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482686, 0, 82001, 82001, 3, '', 'JSON', '/web/attendance/setAttendanceInfo', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501482686, 0, 82001, 82001, 3, '', 'JSON', '/web/attendance/setAttendanceInfo', '{ "userId": null }', null, null, '{ "notnull": true, @@ -21739,7 +21739,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:31:22.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501533979, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/batchDelRelater', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501533979, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/batchDelRelater', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21747,7 +21747,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:32:14.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501585123, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/editExperienceSiteRelater', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501585123, 0, 82001, 82001, 3, '', 'JSON', '/pc/siteMember/editExperienceSiteRelater', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21755,7 +21755,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:33:05.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501614027, 0, 82001, 82001, 3, '', 'JSON', '/pc/site/editExperienceSite', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501614027, 0, 82001, 82001, 3, '', 'JSON', '/pc/site/editExperienceSite', '{ "site": null }', null, null, '{ "notnull": true, @@ -21771,7 +21771,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:33:34.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501614108, 0, 82001, 82001, 3, '', 'JSON', '/mini/device/noFacePunch', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501614108, 0, 82001, 82001, 3, '', 'JSON', '/mini/device/noFacePunch', '{ "openid": null, "deviceSerialNumber": null }', null, null, '{ @@ -21793,7 +21793,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:33:34.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501639982, 0, 82001, 82002, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/rename', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501639982, 0, 82001, 82002, 3, '', 'JSON', '/easypoi/wps/v1/3rd/file/rename', '{ "_w_userid": null }', null, null, '{ "notnull": true, @@ -21803,7 +21803,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:34:00.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640011, 0, 82001, 82002, 3, '', 'JSON', '/web/group/insertGroup', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640011, 0, 82001, 82002, 3, '', 'JSON', '/web/group/insertGroup', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21811,7 +21811,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:34:00.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640050, 0, 82001, 82002, 3, '', 'JSON', '/web/encodeDevice/hatBroadCast', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640050, 0, 82001, 82002, 3, '', 'JSON', '/web/encodeDevice/hatBroadCast', '{ "userphone": null, "siteIds": null, "fileName": null @@ -21834,7 +21834,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:34:00.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640052, 0, 82001, 82002, 3, '', 'JSON', '/pc/siteMember/delSiteRelaterMsg', '{}', null, null, '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640052, 0, 82001, 82002, 3, '', 'JSON', '/pc/siteMember/delSiteRelaterMsg', '{}', null, null, '{ "notnull": true, "type": "object", "valueLevel": 0, @@ -21842,7 +21842,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, {} ] }', null, '2023-01-12 13:34:00.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640053, 0, 82001, 82002, 3, '', 'JSON', '/web/attendance/setAttendanceInfo', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640053, 0, 82001, 82002, 3, '', 'JSON', '/web/attendance/setAttendanceInfo', '{ "userId": null }', null, null, '{ "notnull": true, @@ -21858,7 +21858,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:34:00.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640054, 0, 82001, 82002, 3, '', 'JSON', '/web/attendance/updateAttendanceInfo', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673501640054, 0, 82001, 82002, 3, '', 'JSON', '/web/attendance/updateAttendanceInfo', '{ "userId": null }', null, null, '{ "notnull": true, @@ -21874,7 +21874,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-12 13:34:00.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673597032710, 0, 82001, 82003, 3, '用户列表', 'PARAM', '/user/list', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673597032710, 0, 82001, 82003, 3, '用户列表', 'PARAM', '/user/list', '{ "pageSize": 10, "pageNum": 1, "searchKey": "a" @@ -21923,7 +21923,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-13 16:03:52.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673597032720, 0, 82001, 82003, 3, '用户详情', 'PARAM', '/user', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673597032720, 0, 82001, 82003, 3, '用户详情', 'PARAM', '/user', '{ "id": 82001 }', null, null, '{ "notnull": true, @@ -21947,7 +21947,7 @@ insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, } ] }', null, '2023-01-13 16:03:52.000000', ''); -insert into MY_TABLE (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673597032761, 0, 82001, 82003, 3, '新增评论', 'JSON', '/comment/post', '{ +insert into "Document" (id, debug, "userId", "testAccountId", version, name, type, url, request, apijson, sqlauto, standard, header, date, detail) values (1673597032761, 0, 82001, 82003, 3, '新增评论', 'JSON', '/comment/post', '{ "userId": 82001, "momentId": 15, "content": "测试评论" From 113eac29d2b61bd4f437f6576c84d3f1f5df3c02 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sat, 1 Feb 2025 17:46:32 +0800 Subject: [PATCH 04/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=20SurrealDB=20Demo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONBoot-MultiDataSource/pom.xml | 10 ++ .../main/java/apijson/demo/DemoSQLConfig.java | 130 +++++++++++------- .../java/apijson/demo/DemoSQLExecutor.java | 17 ++- 3 files changed, 103 insertions(+), 54 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml index b8227a2..e5e1771 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml @@ -77,6 +77,16 @@ 2.0.3 + + + + + + + + + + diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index f804010..6a614fc 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -28,6 +28,7 @@ import apijson.orm.AbstractParser; import apijson.orm.AbstractSQLConfig; import apijson.orm.Parser; +//import apijson.surrealdb.SurrealDBUtil; import com.alibaba.fastjson.annotation.JSONField; import apijson.column.ColumnUtil; @@ -54,7 +55,8 @@ public DemoSQLConfig(RequestMethod method, String table) { static { DEFAULT_DATABASE = DATABASE_MYSQL; //TODO 默认数据库类型,改成你自己的。TiDB, MariaDB, OceanBase 这类兼容 MySQL 的可当做 MySQL 使用 - DEFAULT_SCHEMA = "sys"; // ""apijson"; //TODO 默认数据库名/模式,改成你自己的,默认情况是 MySQL: sys, PostgreSQL: sys, SQL Server: dbo, Oracle: + // DEFAULT_NAMESPACE = "root"; //TODO 默认数据库名/模式,改成你自己的,仅对 PostgreSQL: posgres, SurrealDB: root 等数据库有效 + DEFAULT_SCHEMA = "sys"; // "apijson"; //TODO 默认数据库名/模式,改成你自己的,默认情况是 MySQL: sys, PostgreSQL: sys, SQL Server: dbo, Oracle: // 表名和数据库不一致的,需要配置映射关系。只使用 APIJSONORM 时才需要; // 这个 Demo 用了 apijson-framework 且调用了 APIJSONApplication.init 则不需要 @@ -77,9 +79,10 @@ public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, Str //取消注释来实现自定义各个表的主键名 // @Override // public String getIdKey(String database, String schema, String datasource, String table) { + // // return "_id"; // SurrealDB 强制用 id 作为主键名,surrealdb.java 查不到也改不了,所以需要另外加主键 // return StringUtil.firstCase(table + "Id"); // userId, comemntId ... - // // return StringUtil.toLowerCase(t) + "_id"; // user_id, comemnt_id ... - // // return StringUtil.toUpperCase(t) + "_ID"; // USER_ID, COMMENT_ID ... + // // return StringUtil.toLowerCase(t) + "_id"; // user_id, comemnt_id ... + // // return StringUtil.toUpperCase(t) + "_ID"; // USER_ID, COMMENT_ID ... // } @Override @@ -159,9 +162,9 @@ public String getDBVersion() { if (isDb2()) { return "11.5"; //TODO 改成你自己的 } - //if (isSQLite()) { - // return "3.39.3"; //TODO 改成你自己的 - //} + // if (isSQLite()) { + // return "3.39.3"; //TODO 改成你自己的 + // } if (isDameng()) { return "8.1.2.141"; //TODO 改成你自己的 } @@ -171,18 +174,21 @@ public String getDBVersion() { if (isMilvus()) { return "2.3.4"; //TODO 改成你自己的 } - if (isIoTDB()) { - return "1.3.1"; //TODO 改成你自己的 - } + // if (isIoTDB()) { + // return "1.3.1"; //TODO 改成你自己的 + // } if (isMongoDB()) { return "6.0.12"; //TODO 改成你自己的 } if (isCassandra()) { return "4.0.1"; //TODO 改成你自己的 } - if (isDuckDB()) { - return "1.1.3"; //TODO 改成你自己的 - } + // if (isDuckDB()) { + // return "1.1.3"; //TODO 改成你自己的 + // } + // if (isSurrealDB()) { + // return "2.0.0"; //TODO 改成你自己的 + // } return null; } @@ -233,18 +239,23 @@ public String getDBUri() { if (isMilvus()) { return "http://localhost:19530"; //TODO 改成你自己的 } - if (isIoTDB()) { - return "jdbc:iotdb://localhost:6667"; // ?charset=GB18030 加参数会报错 URI 格式错误 //TODO 改成你自己的 - } + // if (isIoTDB()) { + // return "jdbc:iotdb://localhost:6667"; // ?charset=GB18030 加参数会报错 URI 格式错误 //TODO 改成你自己的 + // } if (isMongoDB()) { return "jdbc:mongodb://atlas-sql-6593c65c296c5865121e6ebe-xxskv.a.query.mongodb.net/myVirtualDatabase?ssl=true&authSource=admin"; //TODO 改成你自己的 } if (isCassandra()) { return "http://localhost:7001"; //TODO 改成你自己的 } - if (isDuckDB()) { - return "jdbc:duckdb:/Users/tommylemon/my_database.duckdb"; //TODO 改成你自己的 - } + // if (isDuckDB()) { + // return "jdbc:duckdb:/Users/tommylemon/my_database.duckdb"; //TODO 改成你自己的 + // } + // if (isSurrealDB()) { + // // return "memory"; //TODO 改成你自己的 + // // return "surrealkv://localhost:8000"; //TODO 改成你自己的 + // return "ws://localhost:8000"; //TODO 改成你自己的 + // } return null; } @@ -291,18 +302,21 @@ public String getDBAccount() { if (isMilvus()) { return "root"; } - if (isIoTDB()) { - return "root"; - } + // if (isIoTDB()) { + // return "root"; + // } if (isMongoDB()) { return "root"; //TODO 改成你自己的 } if (isCassandra()) { return "root"; //TODO 改成你自己的 } - if (isDuckDB()) { - return "root"; //TODO 改成你自己的 - } + // if (isDuckDB()) { + // return "root"; //TODO 改成你自己的 + // } + // if (isSurrealDB()) { + // return "root"; //TODO 改成你自己的 + // } return null; } @@ -334,9 +348,9 @@ public String getDBPassword() { if (isDb2()) { return "123"; //TODO 改成你自己的 } - //if (isSQLite()) { - // return "apijson"; //TODO 改成你自己的 - //} + // if (isSQLite()) { + // return "apijson"; //TODO 改成你自己的 + // } if (isDameng()) { return "SYSDBA"; } @@ -349,18 +363,21 @@ public String getDBPassword() { if (isMilvus()) { return "apijson"; //TODO 改成你自己的 } - if (isIoTDB()) { - return "root"; - } + // if (isIoTDB()) { + // return "root"; + // } if (isMongoDB()) { return "apijson"; //TODO 改成你自己的 } if (isCassandra()) { return "apijson"; //TODO 改成你自己的 } - if (isDuckDB()) { - return ""; //TODO 改成你自己的 - } + // if (isDuckDB()) { + // return ""; //TODO 改成你自己的 + // } + // if (isSurrealDB()) { + // return "root"; //TODO 改成你自己的 + // } return null; } @@ -464,29 +481,42 @@ protected int getMaxCombineCount() { return 10; } -// @Override -// public String getSchema() { -// return InfluxDBUtil.getSchema(super.getSchema(), DEFAULT_SCHEMA, isIoTDB()); -//// return IoTDBUtil.getSchema(super.getSchema(), DEFAULT_SCHEMA, isIoTDB()); -// } -// -// @Override -// public String getSQLSchema() { -// return InfluxDBUtil.getSQLSchema(super.getSQLSchema(), isIoTDB()); -//// return IoTDBUtil.getSQLSchema(super.getSQLSchema().replaceAll("-", "."), isIoTDB()); -// } + // @Override + // public String getNamespace() { + // return SurrealDBUtil.getNamespace(super.getNamespace(), DEFAULT_NAMESPACE, isSurrealDB()); + // } + // + // @Override + // public String getSQLNamespace() { + // return SurrealDBUtil.getSQLNamespace(super.getSQLNamespace(), isSurrealDB()); + // } + // + // @Override + // public String getSchema() { + // return SurrealDBUtil.getSchema(super.getSchema(), DEFAULT_SCHEMA, isSurrealDB()); + //// return InfluxDBUtil.getSchema(super.getSchema(), DEFAULT_SCHEMA, isIoTDB()); + //// return IoTDBUtil.getSchema(super.getSchema(), DEFAULT_SCHEMA, isIoTDB()); + // } + // + // @Override + // public String getSQLSchema() { + // return SurrealDBUtil.getSQLSchema(super.getSQLSchema(), isSurrealDB()); + //// return InfluxDBUtil.getSQLSchema(super.getSQLSchema(), isIoTDB()); + //// return IoTDBUtil.getSQLSchema(super.getSQLSchema().replaceAll("-", "."), isIoTDB()); + // } @Override public String getSQLTable() { String t = super.getSQLTable(); - return isInfluxDB() || isIoTDB() ? t.toLowerCase() : t; - // return isInfluxDB() ? t.toLowerCase() : StringUtil.firstCase(JSONRequest.recoverUnderline(t, false), false); + return isInfluxDB() ? t.toLowerCase() : t; + // return isInfluxDB() || isIoTDB() ? t.toLowerCase() : t; + // return isInfluxDB() ? t.toLowerCase() : StringUtil.firstCase(JSONRequest.recoverUnderline(t, false), false); } -// @Override -// public String getTablePath() { -// return IoTDBUtil.getTablePath(super.getTablePath(), isIoTDB()); -// } + // @Override + // public String getTablePath() { + // return IoTDBUtil.getTablePath(super.getTablePath(), isIoTDB()); + // } // 取消注释可将前端传参驼峰命名转为蛇形命名 aBCdEfg => upper ? A_B_CD_EFG : a_b_cd_efg // @Override diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java index 1f5ad01..44f5857 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -23,6 +23,7 @@ //import apijson.mongodb.MongoUtil; //import apijson.iotdb.IoTDBUtil; import apijson.orm.SQLConfig; +//import apijson.surrealdb.SurrealDBUtil; import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.fastjson.JSONObject; //import org.duckdb.JsonNode; @@ -194,11 +195,12 @@ public Connection getConnection(SQLConfig config) throws Exception { @Override public JSONObject execute(@NotNull SQLConfig config, boolean unknownType) throws Exception { boolean isMilvus = config.isMilvus(); // DATABASE_MILVUS.equals(config.getDatabase()); // APIJSON 6.4.0+ 可用 config.isMilvus(); - boolean isCassandra = config.isCassandra(); - boolean isInfluxDB = config.isInfluxDB(); - boolean isIoTDB = config.isIoTDB(); // DemoSQLConfig.DATABASE_IOTDB.equals(config.getDatabase()); + boolean isCassandra = config.isCassandra(); // DemoSQLConfig.DATABASE_CASSANDRA.equals(config.getDatabase()); + boolean isInfluxDB = config.isInfluxDB(); // DemoSQLConfig.DATABASE_INFLUXDB.equals(config.getDatabase()); + // boolean isIoTDB = config.isIoTDB(); // DemoSQLConfig.DATABASE_IOTDB.equals(config.getDatabase()); + // boolean isSurrealDB = config.isSurrealDB(); // DemoSQLConfig.DATABASE_SURREALDB.equals(config.getDatabase()); - if (isMilvus || isCassandra || isInfluxDB || isIoTDB) { + if (isMilvus || isCassandra || isInfluxDB) { // || isIoTDB || isSurrealDB) { // TODO 把 execute 内与缓存无关只与数据库读写逻辑相关的代码抽取到 executeSQL 函数 String sql = config.getSQL(false); // config.isPrepared()); if (sql != null && config.getMethod() == null) { @@ -257,6 +259,13 @@ else if (sqlPrefix.startsWith("DELETE ")) { // } // // resultList = IoTDBUtil.executeQuery(config, sql, unknownType); +// } +// else if (isSurrealDB) { +// if (isWrite) { +// return SurrealDBUtil.executeUpdate(config, sql); +// } +// +// resultList = SurrealDBUtil.executeQuery(config, sql, unknownType); // } // TODO 把 execute 内与缓存无关只与数据库读写逻辑相关的代码抽取到 executeSQL 函数 From 7005853e15094b747818629405d0fcc974c716f0 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 2 Feb 2025 20:27:11 +0800 Subject: [PATCH 05/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20APIJSON,=20apijson-framework=20=E5=8F=8A=E8=87=AA?= =?UTF-8?q?=E8=BA=AB=207.1.0=EF=BC=8Capijson-column=20=E5=8F=8A=20apijson-?= =?UTF-8?q?router=202.1.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONBoot-MultiDataSource/pom.xml | 23 ++-- .../java/apijson/boot/DemoApplication.java | 9 -- .../java/apijson/boot/DemoController.java | 130 +----------------- .../main/java/apijson/demo/DemoSQLConfig.java | 1 + .../java/apijson/demo/DemoSQLExecutor.java | 20 --- .../resources/static/api/apijson/CodeUtil.js | 11 +- .../resources/static/sql/apijson/CodeUtil.js | 11 +- .../resources/static/unit/apijson/CodeUtil.js | 11 +- 8 files changed, 42 insertions(+), 174 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml index e5e1771..c0b5992 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml @@ -5,7 +5,7 @@ apijson.boot apijson-boot-multi-datasource - 7.0.3 + 7.1.0 jar APIJSONBoot-MultiDataSource @@ -56,25 +56,25 @@ - - - - - + + com.github.Tencent + APIJSON + 7.1.0 + com.github.APIJSON apijson-framework - 7.0.3 + 7.1.0 com.github.APIJSON apijson-column - 2.0.3 + 2.1.0 com.github.APIJSON apijson-router - 2.0.3 + 2.1.0 @@ -194,11 +194,6 @@ taos-jdbcdriver 2.0.38 - - - - - org.influxdb influxdb-java diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java index 73f2fc6..910e62f 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java @@ -222,15 +222,6 @@ public void addCorsMappings(CorsRegistry registry) { // e.printStackTrace(); // Log.e(TAG, "加载 TDengine 驱动失败,请检查 pom.xml 中 com.taosdata.jdbc 版本是否存在以及可用 !!!"); // } - // - // try { //加载驱动程序 - // Log.d(TAG, "尝试加载 NebulaGraph 驱动 <<<<<<<<<<<<<<<<<<<<< "); - // Class.forName("com.vesoft.nebula.jdbc.impl.NebulaDriver"); - // Log.d(TAG, "成功加载 NebulaGraph 驱动!>>>>>>>>>>>>>>>>>>>>> "); - // } catch (ClassNotFoundException e) { - // e.printStackTrace(); - // Log.e(TAG, "加载 NebulaGraph 驱动失败,请检查 pom.xml 中 org.nebula-contrib 版本是否存在以及可用 !!!"); - // } // APIJSON 配置 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java index 1063fe7..f54d5b2 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java @@ -155,10 +155,10 @@ public String getRequestURL() { return getRequestBaseURL() + getRequestPath(); } -// @Override -// public Parser newParser(HttpSession session, RequestMethod method) { -// return super.newParser(session, method).setNeedVerify(false); -// } + // @Override + // public Parser newParser(HttpSession session, RequestMethod method) { + // return super.newParser(session, method).setNeedVerify(false); + // } /**增删改查统一的类 RESTful API 入口,牺牲一点路由解析性能来提升一些开发效率 * @param method @@ -2189,127 +2189,7 @@ public String execute(@RequestBody String request, HttpSession session) { result.put("time:start|duration|end|parse|sql", startTime + "|" + duration + "|" + endTime + "|" + parseDuration + "|" + sqlDuration); - if (DemoSQLExecutor.DATABASE_NEBULA.equalsIgnoreCase(database) == false) { - return result.toJSONString(); - } - - return com.alibaba.fastjson.JSON.toJSONString(result, new ValueFilter() { - @Override - public Object process(Object o, String key, Object val) { -// if (val instanceof ValueWrapper) { -// return process(o, key, ((ValueWrapper) val).getValue()); -// } -// -// if (val instanceof Value) { -// return process(o, key, ((Value) val).getFieldValue()); -// } -// -// if (val instanceof Vertex) { -// JSONObject obj = new JSONObject(true); -// obj.put("vid", new String(((Vertex) val).getVid().getSVal())); -// obj.put("str", val.toString()); -// -// List tags = ((Vertex) val).getTags(); -// -// if (tags != null) { -// JSONArray arr = new JSONArray(); -// for (int i = 0; i < tags.size(); i++) { -// arr.add(process(o, String.valueOf(i), tags.get(i))); -// } -// obj.put("tags", arr); -// } -// -// return obj; -// } -// -// if (val instanceof Tag) { -// JSONObject obj = new JSONObject(true); -// obj.put("name", new String(((Tag) val).getName())); -// obj.put("str", val.toString()); -// -// Map props = ((Tag) val).getProps(); -// -// if (props != null) { -// JSONObject propsObj = new JSONObject(true); -// props.forEach(new BiConsumer() { -// @Override -// public void accept(byte[] bytes, Value value) { -// String k = new String(bytes); -// propsObj.put(k, process(propsObj, k, value)); -// } -// }); -// obj.put("props", propsObj); -// } -// -// return obj; -// } -// -// if (val instanceof Edge) { -// JSONObject obj = new JSONObject(true); -// obj.put("name", new String(((Edge) val).getName())); -// obj.put("str", val.toString()); -// -// Map props = ((Edge) val).getProps(); -// -// if (props != null) { -// JSONObject propsObj = new JSONObject(true); -// props.forEach(new BiConsumer() { -// @Override -// public void accept(byte[] bytes, Value value) { -// String k = new String(bytes); -// propsObj.put(k, process(propsObj, k, value)); -// } -// }); -// obj.put("props", propsObj); -// } -// -// return obj; -// } -// -// if (val instanceof NullType) { -// return null; -// } -// -// if (val instanceof DateWrapper) { -// return ((DateWrapper) val).toString(); -// } -// -// if (val instanceof TimeWrapper) { -// return ((TimeWrapper) val).getLocalTimeStr(); -// } -// -// if (val instanceof DateTimeWrapper) { -// return ((DateTimeWrapper) val).getLocalDateTimeStr(); -// } -// -// if (val instanceof DurationWrapper) { -// return ((DurationWrapper) val).getMicroseconds(); -// } -// -// if (val instanceof Date) { -// Date d = (Date) val; -// return new java.sql.Date(d.getYear() - 1900, d.getMonth(), d.getDay()).toString(); -// } -// -// if (val instanceof Time) { -// Time t = (Time) val; -// return new java.sql.Time(t.getHour(), t.getMinute(), t.getSec()).toString(); -// } -// -// if (val instanceof DateTime) { -// DateTime dt = (DateTime) val; -// // return new java.util.Date(dt.getYear(), dt.getNonth(), dt.getDayO, dt.getHour(), dt.getMinute(), dt.getSec0).toGnTString(); -// return new java.sql.Date(dt.getYear() - 1988, dt.getMonth(), dt.getDay()) -// + " " + new java.sql.Time(dt.getHour(), dt.getMinute(), dt.getSec()); -// } -// -// if (val instanceof Duration) { -// return ((Duration) val).getMicroseconds(); -// } - - return val; - } - }, SerializerFeature.WriteMapNullValue); + return result.toJSONString(); } catch (Exception e) { JSONObject result = DemoParser.newErrorResult(e); result.put("throw", e.getClass().getName()); diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index 6a614fc..82918ad 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -106,6 +106,7 @@ public String getUserIdKey(String database, String schema, String datasource, St RAW_MAP.put("`to`.`id`", ""); // 空字符串 "" 表示用 key 的值 `to`.`id` RAW_MAP.put("toDate", ""); // "@column": "date;date_format('2020-01-01','%Y-%m-%d'):toDate", "@having": "(date > toDate)", "@raw": "@column,@having" RAW_MAP.put("to.momentId", "`to`.`momentId`"); // 最终以 `to`.`userId` 拼接 SQL,相比以上写法可以让前端写起来更简单 + RAW_MAP.put("Comment:to.momentId", "`Comment__to`.`momentId`"); // 最终以 `Comment__to`.`userId` 拼接 SQL,相比以上写法可以让前端写起来更简单 RAW_MAP.put("(`Comment`.`userId`=`to`.`userId`)", ""); // 已经是一个条件表达式了,用 () 包裹是为了避免 JSON 中的 key 拼接在前面导致 SQL 出错 RAW_MAP.put("sum(if(userId%2=0,1,0))", ""); // 超过单个函数的 SQL 表达式 RAW_MAP.put("sumUserIdIsEven", "sum(if(`userId`%2=0,1,0)) AS sumUserIdIsEven"); // 简化前端传参 diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java index 44f5857..afd939f 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -122,30 +122,10 @@ public synchronized void removeCache(String sql, SQLConfig config) { // Redis 缓存 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> - public static final String DATABASE_NEBULA = "NEBULA"; // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, dbPassword @Override public Connection getConnection(SQLConfig config) throws Exception { -// if (DATABASE_NEBULA.equals(config.getDatabase())) { // 3.0.0 及以下要这样连接 -// String uri = config.getDBUri(); -// -// int start = uri.indexOf("://"); -// String prefix = uri.substring(0, start); -// -// uri = uri.substring(start + "://".length()); -// int end = uri.indexOf("/"); -// String space = uri.substring(end + 1); -// -// Properties props = new Properties(); -// props.put("url", prefix + "://" + space); -// props.put("graphSpace", space); -// -// NebulaDriver driver = new NebulaDriver(uri.substring(0, end)); -// return driver.connect(prefix + "://" + space, props); -// // return DriverManager.getConnection("jdbc:nebula://JDBC_TEST_SPACE", "root", "nebula"); -// } - String datasource = config.getDatasource(); Log.d(TAG, "getConnection config.getDatasource() = " + datasource); diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/CodeUtil.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/CodeUtil.js index 4a5a4ed..8a66958 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/CodeUtil.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/CodeUtil.js @@ -54,7 +54,7 @@ var CodeUtil = { DATABASE_KINGBASE: 'KINGBASE', DATABASE_TIDB: 'TIDB', DATABASE_TDENGINE: 'TDENGINE', - DATABASE_NEBULA: 'NEBULA', + DATABASE_SURREALDB: 'SURREALDB', DATABASE_PRESTO: 'PRESTO', DATABASE_TRINO: 'TRINO', DATABASE_INFLUXDB: 'INFLUXDB', @@ -64,6 +64,13 @@ var CodeUtil = { DATABASE_KAFKA: 'KAFKA', DATABASE_MARIADB: 'MARIADB', DATABASE_HIVE: 'HIVE', + DATABASE_SNOWFLAKE: 'SNOWFLAKE', + DATABASE_DATABRICKS: 'DATABRICKS', + DATABASE_MILVUS: 'MILVUS', + DATABASE_IOTDB: 'IOTDB', + DATABASE_DUCKDB: 'DUCKDB', + DATABASE_CASSANDRA: 'CASSANDRA', + DATABASE_MONGODB: 'MONGODB', type: 'JSON', database: 'MYSQL', @@ -6222,7 +6229,7 @@ res_data = rep.json() OWNER: '拥有者', ADMIN: '管理员' }, - DATABASE_KEYS: ['MYSQL', 'POSTGRESQL', 'SQLSERVER', 'ORACLE', 'DB2', 'DAMENG', 'KINGBASE', 'MARIADB', 'SQLITE', 'INFLUXDB', 'TDENGINE', 'PRESTO', 'TRINO', 'HIVE', 'TIDB', 'CLICKHOUSE', 'ELASTICSEARCH', 'REDIS'], // , 'KAFKA'], + DATABASE_KEYS: ['MYSQL', 'POSTGRESQL', 'SQLSERVER', 'ORACLE', 'DB2', 'DAMENG', 'KINGBASE', 'MARIADB', 'SQLITE', 'INFLUXDB', 'TDENGINE', 'PRESTO', 'TRINO', 'HIVE', 'TIDB', 'CLICKHOUSE', 'ELASTICSEARCH', 'REDIS', 'IOTDB', 'SURREALDB', 'DUCKDB', 'CASSANDRA', 'MONGODB', 'SNOWFLAKE', 'DATABRICKS', 'MILVUS'], // , 'KAFKA'], getComment4Function: function (funCallStr, method, language) { if (typeof funCallStr != 'string') { diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/sql/apijson/CodeUtil.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/sql/apijson/CodeUtil.js index 8c4ad56..3f11755 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/sql/apijson/CodeUtil.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/sql/apijson/CodeUtil.js @@ -54,7 +54,7 @@ var CodeUtil = { DATABASE_KINGBASE: 'KINGBASE', DATABASE_TIDB: 'TIDB', DATABASE_TDENGINE: 'TDENGINE', - DATABASE_NEBULA: 'NEBULA', + DATABASE_SURREALDB: 'SURREALDB', DATABASE_PRESTO: 'PRESTO', DATABASE_TRINO: 'TRINO', DATABASE_INFLUXDB: 'INFLUXDB', @@ -64,6 +64,13 @@ var CodeUtil = { DATABASE_KAFKA: 'KAFKA', DATABASE_MARIADB: 'MARIADB', DATABASE_HIVE: 'HIVE', + DATABASE_SNOWFLAKE: 'SNOWFLAKE', + DATABASE_DATABRICKS: 'DATABRICKS', + DATABASE_MILVUS: 'MILVUS', + DATABASE_IOTDB: 'IOTDB', + DATABASE_DUCKDB: 'DUCKDB', + DATABASE_CASSANDRA: 'CASSANDRA', + DATABASE_MONGODB: 'MONGODB', type: 'JSON', database: 'MYSQL', @@ -5904,7 +5911,7 @@ var CodeUtil = { OWNER: '拥有者', ADMIN: '管理员' }, - DATABASE_KEYS: ['MYSQL', 'POSTGRESQL', 'SQLSERVER', 'ORACLE', 'DB2', 'DAMENG', 'KINGBASE', 'MARIADB', 'SQLITE', 'INFLUXDB', 'TDENGINE', 'PRESTO', 'TRINO', 'HIVE', 'TIDB', 'CLICKHOUSE', 'ELASTICSEARCH', 'REDIS'], // , 'KAFKA'], + DATABASE_KEYS: ['MYSQL', 'POSTGRESQL', 'SQLSERVER', 'ORACLE', 'DB2', 'DAMENG', 'KINGBASE', 'MARIADB', 'SQLITE', 'INFLUXDB', 'TDENGINE', 'PRESTO', 'TRINO', 'HIVE', 'TIDB', 'CLICKHOUSE', 'ELASTICSEARCH', 'REDIS', 'IOTDB', 'SURREALDB', 'DUCKDB', 'CASSANDRA', 'MONGODB', 'SNOWFLAKE', 'DATABRICKS', 'MILVUS'], // , 'KAFKA'], getComment4Function: function (funCallStr, method, language) { if (typeof funCallStr != 'string') { diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/unit/apijson/CodeUtil.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/unit/apijson/CodeUtil.js index 3b1bff7..cd4bd6d 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/unit/apijson/CodeUtil.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/unit/apijson/CodeUtil.js @@ -58,7 +58,7 @@ var CodeUtil = { DATABASE_KINGBASE: 'KINGBASE', DATABASE_TIDB: 'TIDB', DATABASE_TDENGINE: 'TDENGINE', - DATABASE_NEBULA: 'NEBULA', + DATABASE_SURREALDB: 'SURREALDB', DATABASE_PRESTO: 'PRESTO', DATABASE_TRINO: 'TRINO', DATABASE_INFLUXDB: 'INFLUXDB', @@ -68,6 +68,13 @@ var CodeUtil = { DATABASE_KAFKA: 'KAFKA', DATABASE_MARIADB: 'MARIADB', DATABASE_HIVE: 'HIVE', + DATABASE_SNOWFLAKE: 'SNOWFLAKE', + DATABASE_DATABRICKS: 'DATABRICKS', + DATABASE_MILVUS: 'MILVUS', + DATABASE_IOTDB: 'IOTDB', + DATABASE_DUCKDB: 'DUCKDB', + DATABASE_CASSANDRA: 'CASSANDRA', + DATABASE_MONGODB: 'MONGODB', type: 'JSON', database: 'MYSQL', @@ -6219,7 +6226,7 @@ res_data = rep.json() OWNER: '拥有者', ADMIN: '管理员' }, - DATABASE_KEYS: ['MYSQL', 'POSTGRESQL', 'SQLSERVER', 'ORACLE', 'DB2', 'DAMENG', 'KINGBASE', 'MARIADB', 'SQLITE', 'INFLUXDB', 'TDENGINE', 'PRESTO', 'TRINO', 'HIVE', 'TIDB', 'CLICKHOUSE', 'ELASTICSEARCH', 'REDIS'], // , 'KAFKA'], + DATABASE_KEYS: ['MYSQL', 'POSTGRESQL', 'SQLSERVER', 'ORACLE', 'DB2', 'DAMENG', 'KINGBASE', 'MARIADB', 'SQLITE', 'INFLUXDB', 'TDENGINE', 'PRESTO', 'TRINO', 'HIVE', 'TIDB', 'CLICKHOUSE', 'ELASTICSEARCH', 'REDIS', 'IOTDB', 'SURREALDB', 'DUCKDB', 'CASSANDRA', 'MONGODB', 'SNOWFLAKE', 'DATABRICKS', 'MILVUS'], // , 'KAFKA'], getComment4Function: function (funCallStr, method, language) { if (typeof funCallStr != 'string') { From 644546f5682194c3cf02d38ec76724d22d331c18 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 2 Feb 2025 20:28:56 +0800 Subject: [PATCH 06/80] =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=B8=8D=E5=86=8D?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/apijson/boot/DemoController.java | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java index f54d5b2..bc7ac64 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java @@ -22,20 +22,6 @@ import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.serializer.ValueFilter; import com.fasterxml.jackson.databind.util.LRUMap; -//import com.vesoft.nebula.Date; -//import com.vesoft.nebula.DateTime; -//import com.vesoft.nebula.Duration; -//import com.vesoft.nebula.Edge; -//import com.vesoft.nebula.NullType; -//import com.vesoft.nebula.Tag; -//import com.vesoft.nebula.Time; -//import com.vesoft.nebula.Value; -//import com.vesoft.nebula.Vertex; -//import com.vesoft.nebula.client.graph.data.DateTimeWrapper; -//import com.vesoft.nebula.client.graph.data.DateWrapper; -//import com.vesoft.nebula.client.graph.data.DurationWrapper; -//import com.vesoft.nebula.client.graph.data.TimeWrapper; -//import com.vesoft.nebula.client.graph.data.ValueWrapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.*; @@ -2065,8 +2051,6 @@ public String execute(@RequestBody String request, HttpSession session) { account = "test"; // "peter"; password = "test"; // null; } - } else if (DemoSQLExecutor.DATABASE_NEBULA.equalsIgnoreCase(prefix)) { - database = prefix.toUpperCase(); } } From 709779d99bd76c03b316fae7f8c6dabd4d7165c0 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 2 Feb 2025 20:44:25 +0800 Subject: [PATCH 07/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON,=20apijson-framework=20?= =?UTF-8?q?=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.0=EF=BC=8Capijson-column=202.?= =?UTF-8?q?1.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONBoot-MultiDataSource/pom.xml | 4 +- APIJSON-Java-Server/APIJSONBoot/pom.xml | 74 ++++++++++++------- .../java/apijson/boot/DemoController.java | 8 +- .../java/apijson/boot/FileController.java | 2 +- .../java/apijson/demo/DemoFunctionParser.java | 2 +- .../java/apijson/demo/DemoObjectParser.java | 2 +- 6 files changed, 57 insertions(+), 35 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml index c0b5992..148bbe2 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml @@ -29,7 +29,7 @@ 1.2.83 - + jakarta.servlet jakarta.servlet-api @@ -262,6 +262,8 @@ + + org.yaml snakeyaml diff --git a/APIJSON-Java-Server/APIJSONBoot/pom.xml b/APIJSON-Java-Server/APIJSONBoot/pom.xml index b72c642..6e90545 100755 --- a/APIJSON-Java-Server/APIJSONBoot/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot/pom.xml @@ -5,7 +5,7 @@ apijson.boot apijson-boot - 6.3.0 + 7.1.0 jar APIJSONBoot @@ -14,7 +14,11 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 + 3.2.5 @@ -25,11 +29,11 @@ 1.2.83 - + - javax.servlet - javax.servlet-api - 4.0.1 + jakarta.servlet + jakarta.servlet-api + 6.0.0 @@ -55,30 +59,30 @@ com.github.Tencent APIJSON - 6.3.0 + 7.1.0 com.github.APIJSON apijson-framework - 6.3.0 + 7.1.0 com.github.APIJSON apijson-column - 1.8.0 + 2.1.0 - mysql - mysql-connector-java - 8.0.29 + com.mysql + mysql-connector-j + 8.4.0 org.postgresql postgresql - 42.3.4 + 42.7.3 net.sourceforge.jtds @@ -94,11 +98,27 @@ - + + + org.yaml + snakeyaml + 2.2 + + org.springframework.boot spring-boot-starter-web - 2.5.13 + 3.2.5 + + + ch.qos.logback + logback-classic + + + + + + @@ -108,20 +128,22 @@ org.springframework.boot spring-boot-maven-plugin + 3.2.5 - - - repackage - - + + + repackage + + org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 @@ -141,14 +163,14 @@ spring-snapshots - http://repo.spring.io/snapshot + https://repo.spring.io/snapshot true spring-milestones - http://repo.spring.io/milestone + https://repo.spring.io/milestone true @@ -157,11 +179,11 @@ spring-snapshots - http://repo.spring.io/snapshot + https://repo.spring.io/snapshot spring-milestones - http://repo.spring.io/milestone + https://repo.spring.io/milestone diff --git a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/DemoController.java b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/DemoController.java index e6d70aa..5bc52e5 100644 --- a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/DemoController.java +++ b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/DemoController.java @@ -45,9 +45,9 @@ import java.util.Set; import java.util.concurrent.TimeoutException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpSession; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpEntity; @@ -115,8 +115,6 @@ public String getRequestURL() { /**增删改查统一入口,这个一个方法可替代以下 7 个方法,牺牲一些路由解析性能来提升一点开发效率 * @param method - * @param tag - * @param params * @param request * @param session * @return diff --git a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/FileController.java b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/FileController.java index 89cbf83..93476dd 100755 --- a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/FileController.java +++ b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/FileController.java @@ -7,7 +7,7 @@ import java.util.ArrayList; import java.util.List; -import javax.annotation.PostConstruct; +import jakarta.annotation.PostConstruct; import org.springframework.core.io.InputStreamResource; import org.springframework.http.HttpHeaders; diff --git a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoFunctionParser.java index c2d7505..d62f0cc 100644 --- a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoFunctionParser.java @@ -19,7 +19,7 @@ import java.util.Collection; import java.util.List; -import javax.servlet.http.HttpSession; +import jakarta.servlet.http.HttpSession; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; diff --git a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoObjectParser.java index ad56f48..837ccd5 100644 --- a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoObjectParser.java @@ -18,7 +18,7 @@ import java.util.List; -import javax.servlet.http.HttpSession; +import jakarta.servlet.http.HttpSession; import apijson.NotNull; import apijson.RequestMethod; From 15fa3e3473e118eecdd608010913e8d3fffc05c7 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 2 Feb 2025 22:41:26 +0800 Subject: [PATCH 08/80] =?UTF-8?q?Java=EF=BC=9ADemo=20=E5=8D=87=E7=BA=A7=20?= =?UTF-8?q?APIJSON=207.1.0,=20apijson-framework=20=E5=8F=8A=E8=87=AA?= =?UTF-8?q?=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONDemo/pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo/pom.xml b/APIJSON-Java-Server/APIJSONDemo/pom.xml index 6973f93..22d577c 100755 --- a/APIJSON-Java-Server/APIJSONDemo/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo/pom.xml @@ -5,7 +5,7 @@ apijson.demo apijson-demo - 7.0.3 + 7.1.5 APIJSONDemo Demo project for Testing APIJSON Server based on SpringBoot @@ -24,12 +24,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 jakarta.servlet From ed110053387f4bca4aac74a37c82919a6a793048 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 2 Feb 2025 22:53:12 +0800 Subject: [PATCH 09/80] =?UTF-8?q?Java=EF=BC=9A=E6=96=B0=E5=A2=9E=20APIJSON?= =?UTF-8?q?Demo-Javax=EF=BC=8C=E6=BC=94=E7=A4=BA=E5=85=BC=E5=AE=B9=20JDK?= =?UTF-8?q?=201.8=20=E5=8F=8A=20SpringBoot=202.x?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONDemo-Javax/.gitignore | 1 + .../APIJSONDemo-Javax/README.md | 7 + APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml | 138 ++++++++++++++++++ .../java/apijson/demo/DemoApplication.java | 109 ++++++++++++++ .../java/apijson/demo/DemoController.java | 119 +++++++++++++++ .../main/java/apijson/demo/DemoSQLConfig.java | 68 +++++++++ .../src/main/resources/application.properties | 0 7 files changed, 442 insertions(+) create mode 100644 APIJSON-Java-Server/APIJSONDemo-Javax/.gitignore create mode 100755 APIJSON-Java-Server/APIJSONDemo-Javax/README.md create mode 100755 APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml create mode 100755 APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoApplication.java create mode 100644 APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoController.java create mode 100755 APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoSQLConfig.java create mode 100755 APIJSON-Java-Server/APIJSONDemo-Javax/src/main/resources/application.properties diff --git a/APIJSON-Java-Server/APIJSONDemo-Javax/.gitignore b/APIJSON-Java-Server/APIJSONDemo-Javax/.gitignore new file mode 100644 index 0000000..b83d222 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-Javax/.gitignore @@ -0,0 +1 @@ +/target/ diff --git a/APIJSON-Java-Server/APIJSONDemo-Javax/README.md b/APIJSON-Java-Server/APIJSONDemo-Javax/README.md new file mode 100755 index 0000000..c80bbfe --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-Javax/README.md @@ -0,0 +1,7 @@ +# APIJSONDemo + +APIJSON + SpringBoot 初级使用的最简单 Demo + +### 运行 + +右键 DemoApplication > Run As > Java Application diff --git a/APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml new file mode 100755 index 0000000..2c9ae24 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml @@ -0,0 +1,138 @@ + + + 4.0.0 + + apijson.demo + apijson-demo-javax + 7.1.5 + + APIJSONDemo + Demo project for Testing APIJSON Server based on SpringBoot, compat JDK 1.8~16 and SpringBoot 1.4~2.7 + + + UTF-8 + UTF-8 + 1.8 + + + + + + com.github.Tencent + APIJSON + 7.1.0 + + + + com.github.APIJSON + apijson-framework + 7.1.5 + + + + com.github.APIJSON + apijson-router + 2.1.5 + + + + + jakarta.servlet + jakarta.servlet-api + 6.0.0 + + + + + javax.servlet + javax.servlet-api + 4.0.1 + + + + + com.github.TommyLemon + unitauto-java + 3.0.5 + + + com.github.TommyLemon + unitauto-jar + 3.0.5 + + + + + + + mysql + mysql-connector-java + 8.0.29 + + + org.postgresql + postgresql + 42.3.8 + + + + + + org.springframework.boot + spring-boot-starter-web + 2.5.13 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.5.13 + + + + repackage + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + 1.8 + 1.8 + + + + + + + + + jitpack.io + https://jitpack.io + + true + + + + + spring-snapshots + https://repo.spring.io/snapshot + + true + + + + spring-milestones + https://repo.spring.io/milestone + + + + diff --git a/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoApplication.java new file mode 100755 index 0000000..0717742 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoApplication.java @@ -0,0 +1,109 @@ +/*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License.*/ + +package apijson.demo; + +import apijson.router.javax.APIJSONRouterApplication; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.boot.web.server.WebServerFactoryCustomizer; +import org.springframework.boot.web.servlet.server.ConfigurableServletWebServerFactory; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.CorsRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +import apijson.Log; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; +import apijson.orm.SQLConfig; + + +/** + * Demo SpringBoot Application 主应用程序启动类 + * 右键这个类 > Run As > Java Application + * 具体见 SpringBoot 文档 + * https://www.springcloud.cc/spring-boot.html#using-boot-locating-the-main-class + * + * @author Lemon + */ +@Configuration +@SpringBootApplication +@EnableConfigurationProperties +public class DemoApplication implements WebServerFactoryCustomizer { + + public static void main(String[] args) throws Exception { + SpringApplication.run(DemoApplication.class, args); + + Log.DEBUG = true; + APIJSONApplication.init(false); // 4.4.0 以上需要这句来保证以上 static 代码块中给 DEFAULT_APIJSON_CREATOR 赋值会生效 + APIJSONRouterApplication.init(); + } + + // SpringBoot 2.x 自定义端口方式 + @Override + public void customize(ConfigurableServletWebServerFactory server) { + server.setPort(8080); + } + + // 支持 APIAuto 中 JavaScript 代码跨域请求 + @Bean + public WebMvcConfigurer corsConfigurer() { + return new WebMvcConfigurer() { + @Override + public void addCorsMappings(CorsRegistry registry) { + registry.addMapping("/**") + .allowedOriginPatterns("*") + .allowedMethods("*") + .allowCredentials(true) + .maxAge(3600); + } + }; + } + + static { + // 使用本项目的自定义处理类 + APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { + @Override + public SQLConfig createSQLConfig() { + return new DemoSQLConfig(); + } + }; + + // 把以下需要用到的数据库驱动取消注释即可,如果这里没有可以自己新增 + // try { //加载驱动程序 + // Log.d(TAG, "尝试加载 SQLServer 驱动 <<<<<<<<<<<<<<<<<<<<< "); + // Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); + // Log.d(TAG, "成功加载 SQLServer 驱动!>>>>>>>>>>>>>>>>>>>>> "); + // } + // catch (ClassNotFoundException e) { + // e.printStackTrace(); + // Log.e(TAG, "加载 SQLServer 驱动失败,请检查 pom.xml 中 net.sourceforge.jtds 版本是否存在以及可用 !!!"); + // } + // + // try { //加载驱动程序 + // Log.d(TAG, "尝试加载 Oracle 驱动 <<<<<<<<<<<<<<<<<<<<< "); + // Class.forName("oracle.jdbc.driver.OracleDriver"); + // Log.d(TAG, "成功加载 Oracle 驱动!>>>>>>>>>>>>>>>>>>>>> "); + // } + // catch (ClassNotFoundException e) { + // e.printStackTrace(); + // Log.e(TAG, "加载 Oracle 驱动失败,请检查 pom.xml 中 com.oracle.jdbc 版本是否存在以及可用 !!!"); + // } + + } + +} diff --git a/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoController.java new file mode 100644 index 0000000..f8d758a --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoController.java @@ -0,0 +1,119 @@ +/*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License.*/ + +package apijson.demo; + +import java.net.URLDecoder; +import java.util.Map; + +import javax.servlet.http.HttpSession; + +import apijson.router.javax.APIJSONRouterController; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import apijson.RequestMethod; +import apijson.StringUtil; +import apijson.framework.javax.APIJSONController; +import apijson.orm.Parser; + + +/**请求路由入口控制器,包括通用增删改查接口等,转交给 APIJSON 的 Parser 来处理 + * 具体见 SpringBoot 文档 + * https://www.springcloud.cc/spring-boot.html#boot-features-spring-mvc + * 以及 APIJSON 通用文档 3.设计规范 3.1 操作方法 + * https://github.com/Tencent/APIJSON/blob/master/Document.md#3.1 + *
    建议全通过HTTP POST来请求: + *
    1.减少代码 - 客户端无需写HTTP GET,PUT等各种方式的请求代码 + *
    2.提高性能 - 无需URL encode和decode + *
    3.调试方便 - 建议使用 APIAuto(http://apijson.cn/api) 或 Postman + * @author Lemon + */ +@RestController +@RequestMapping("") +public class DemoController extends APIJSONRouterController { + + @Override + public Parser newParser(HttpSession session, RequestMethod method) { + return super.newParser(session, method).setNeedVerify(false); // TODO 这里关闭校验,方便新手快速测试,实际线上项目建议开启 + } + + @PostMapping("router/{method}/{tag}") + @Override + public String router(@PathVariable("method") String method, @PathVariable("tag") String tag + , @RequestParam Map params, @RequestBody String request, HttpSession session) { + return super.router(method, tag, params, request, session); + } + + /**增删改查统一接口,这个一个接口可替代 7 个万能通用接口,牺牲一些路由解析性能来提升一点开发效率 + * @param method + * @param request + * @param session + * @return + */ + @PostMapping(value = "{method}") // 如果和其它的接口 URL 冲突,可以加前缀,例如改为 crud/{method} 或 Controller 注解 @RequestMapping("crud") + @Override + public String crud(@PathVariable("method") String method, @RequestBody String request, HttpSession session) { + return super.crud(method, request, session); + } + + /**全能增删改查接口,可同时进行 增、删、改、查 多种操作, + * 通过 @method: "POST", @gets: { "Privacy":"Privacy-CIRCLE", "User": { "@role":"LOGIN", "tag":"User" } } 等关键词指定 + * @param request + * @param session + * @return + */ + @PostMapping(value = "crud") // 直接 {method} 或 apijson/{method} 会和内置网页的路由有冲突 + // @Override + public String crudAll(@RequestBody String request, HttpSession session) { + return newParser(session, RequestMethod.CRUD).parse(request); + } + + /**增删改查统一接口,这个一个接口可替代 7 个万能通用接口,牺牲一些路由解析性能来提升一点开发效率 + * @param method + * @param tag + * @param params + * @param request + * @param session + * @return + */ + @PostMapping("{method}/{tag}") // 如果和其它的接口 URL 冲突,可以加前缀,例如改为 crud/{method}/{tag} 或 Controller 注解 @RequestMapping("crud") + @Override + public String crudByTag(@PathVariable("method") String method, @PathVariable("tag") String tag, @RequestParam Map params, @RequestBody String request, HttpSession session) { + return super.crudByTag(method, tag, params, request, session); + } + + /**获取 + * 只为兼容HTTP GET请求,推荐用HTTP POST,可删除 + * @param request 只用String,避免encode后未decode + * @param session + * @return + * @see {@link RequestMethod#GET} + */ + @GetMapping("get/{request}") + public String openGet(@PathVariable("request") String request, HttpSession session) { + try { + request = URLDecoder.decode(request, StringUtil.UTF_8); + } catch (Exception e) { + // Parser 会报错 + } + return get(request, session); + } + +} \ No newline at end of file diff --git a/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoSQLConfig.java new file mode 100755 index 0000000..7999acb --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/java/apijson/demo/DemoSQLConfig.java @@ -0,0 +1,68 @@ +/*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License.*/ + +package apijson.demo; + +import com.alibaba.fastjson.annotation.JSONField; + +import apijson.framework.javax.APIJSONSQLConfig; + + +/**SQL 配置 + * TiDB 用法和 MySQL 一致 + * 具体见详细的说明文档 C.开发说明 C-1-1.修改数据库链接 + * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 + * @author Lemon + */ +public class DemoSQLConfig extends APIJSONSQLConfig { + + static { + DEFAULT_DATABASE = DATABASE_MYSQL; // TODO 默认数据库类型,改成你自己的 + DEFAULT_SCHEMA = "sys"; // TODO 默认数据库名/模式,改成你自己的,默认情况是 MySQL: sys, PostgreSQL: public, SQL Server: dbo, Oracle: + + // 表名和数据库不一致的,需要配置映射关系。只使用 APIJSONORM 时才需要; + // 如果用了 apijson-framework 且调用了 APIJSONApplication.init 则不需要 + // (间接调用 DemoVerifier.init 方法读取数据库 Access 表来替代手动输入配置)。 + // 但如果 Access 这张表的对外表名与数据库实际表名不一致,仍然需要这里注册。例如 + // TABLE_KEY_MAP.put(Access.class.getSimpleName(), "access"); + + //表名映射,隐藏真实表名,对安全要求很高的表可以这么做 + TABLE_KEY_MAP.put("User", "apijson_user"); + TABLE_KEY_MAP.put("Privacy", "apijson_privacy"); + } + + @Override + public String getDBVersion() { + return "5.7.22"; // "8.0.11"; // TODO 改成你自己的 MySQL 或 PostgreSQL 数据库版本号 // MYSQL 8 和 7 使用的 JDBC 配置不一样 + } + + @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 + @Override + public String getDBUri() { + return "jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; // TODO 改成你自己的,TiDB 可以当成 MySQL 使用,默认端口为 4000 + } + + @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 + @Override + public String getDBAccount() { + return "root"; // TODO 改成你自己的 + } + + @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 + @Override + public String getDBPassword() { + return "apijson"; // TODO 改成你自己的,TiDB 可以当成 MySQL 使用, 默认密码为空字符串 "" + } + +} diff --git a/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/resources/application.properties b/APIJSON-Java-Server/APIJSONDemo-Javax/src/main/resources/application.properties new file mode 100755 index 0000000..e69de29 From 5e985f630a84f097e56a6656c5886ca30b877c82 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 10:19:50 +0800 Subject: [PATCH 10/80] =?UTF-8?q?Java=EF=BC=9ASolon=20Demo=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20APIJSON=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml | 4 ++-- .../src/main/java/apijson/demo/DemoFunctionParser.java | 2 +- .../src/main/java/apijson/demo/DemoObjectParser.java | 4 +++- .../src/main/java/apijson/demo/DemoSQLConfig.java | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml index 6c03209..2172ea6 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml @@ -12,7 +12,7 @@ apijson-demo apijson-demo Demo project for Solon - 7.0.3 + 7.1.0 17 @@ -28,7 +28,7 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoFunctionParser.java index cefa94f..ef80008 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoFunctionParser.java @@ -24,7 +24,7 @@ * 具体见 https://github.com/Tencent/APIJSON/issues/101 * @author Lemon */ -public class DemoFunctionParser extends AbstractFunctionParser { +public class DemoFunctionParser extends AbstractFunctionParser { public static final String TAG = "DemoFunctionParser"; diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoObjectParser.java index ffb1168..1f13216 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoObjectParser.java @@ -30,15 +30,17 @@ /**对象解析器,用来简化 Parser * @author Lemon */ -public class DemoObjectParser extends AbstractObjectParser { +public class DemoObjectParser extends AbstractObjectParser { public DemoObjectParser(SessionState session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { super(request, parentPath, arrayConfig, isSubquery, isTable, isArrayMainTable); } + @Override public SQLConfig newSQLConfig(RequestMethod method, String table, String alias, JSONObject request, List joinList, boolean isProcedure) throws Exception { return DemoSQLConfig.newSQLConfig(method, table, alias, request, joinList, isProcedure); } + } diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLConfig.java index 0088190..cf78ace 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLConfig.java @@ -109,7 +109,7 @@ protected void onJoinNotRelation(String sql, String quote, Join j, String jt, Li // 开启 JOIN ON t1.c1 != t2.c2 等不等式关联 super.onJoinNotRelation(sql, quote, j, jt, onList, on); } @Override - protected void onJoinComplextRelation(String sql, String quote, Join j, String jt, List onList, On on) { + protected void onJoinComplexRelation(String sql, String quote, Join j, String jt, List onList, On on) { // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplextRelation(sql, quote, j, jt, onList, on); } From bd3275a610c8e57508910178bd38b9590efd2eb8 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 10:25:56 +0800 Subject: [PATCH 11/80] =?UTF-8?q?Java=EF=BC=9AJFinal=20Demo=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijson-framewo?= =?UTF-8?q?rk=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONFinal/pom.xml | 20 ++++++++++---- .../java/apijson/demo/DemoFunctionParser.java | 2 +- .../main/java/apijson/demo/DemoParser.java | 2 +- .../main/java/apijson/demo/DemoSQLConfig.java | 12 ++++----- .../main/java/apijson/demo/DemoVerifier.java | 2 +- .../main/java/apijson/demo/model/Privacy.java | 2 +- .../main/java/apijson/demo/model/User.java | 2 +- .../main/java/apijson/demo/model/Verify.java | 2 +- .../java/apijson/jfinal/DemoAppConfig.java | 4 +-- .../java/apijson/jfinal/DemoController.java | 26 +++++++++---------- 10 files changed, 42 insertions(+), 32 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONFinal/pom.xml b/APIJSON-Java-Server/APIJSONFinal/pom.xml index d857e77..4f966b5 100755 --- a/APIJSON-Java-Server/APIJSONFinal/pom.xml +++ b/APIJSON-Java-Server/APIJSONFinal/pom.xml @@ -4,9 +4,19 @@ apijson.jfinal apijson-final jar - 7.0.3 + 7.1.5 Demo project for APIJSON Server based on JFinal http://maven.apache.org + + + UTF-8 + UTF-8 + 17 + UTF-8 + 17 + 17 + + @@ -26,12 +36,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -89,8 +99,8 @@ maven-compiler-plugin 3.6.1 - 1.8 - 1.8 + 17 + 17 UTF-8 -parameters diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoFunctionParser.java index c2d7505..19edc36 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoFunctionParser.java @@ -28,7 +28,7 @@ import apijson.NotNull; import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONFunctionParser; +import apijson.framework.javax.APIJSONFunctionParser; import apijson.orm.AbstractVerifier; import apijson.orm.JSONRequest; import apijson.orm.Visitor; diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoParser.java index 0fbc9c8..37f7611 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoParser.java @@ -15,7 +15,7 @@ package apijson.demo; import apijson.RequestMethod; -import apijson.framework.APIJSONParser; +import apijson.framework.javax.APIJSONParser; /**请求解析器 diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoSQLConfig.java index fb4bba7..273f3c3 100755 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoSQLConfig.java @@ -14,10 +14,10 @@ package apijson.demo; -import static apijson.framework.APIJSONConstant.ID; -import static apijson.framework.APIJSONConstant.PRIVACY_; -import static apijson.framework.APIJSONConstant.USER_; -import static apijson.framework.APIJSONConstant.USER_ID; +import static apijson.framework.javax.APIJSONConstant.ID; +import static apijson.framework.javax.APIJSONConstant.PRIVACY_; +import static apijson.framework.javax.APIJSONConstant.USER_; +import static apijson.framework.javax.APIJSONConstant.USER_ID; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -30,7 +30,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; import apijson.orm.AbstractSQLConfig; import apijson.orm.Join; import apijson.orm.Join.On; @@ -295,7 +295,7 @@ protected void onJoinNotRelation(String sql, String quote, Join j, String jt, Li // 开启 JOIN ON t1.c1 != t2.c2 等不等式关联 super.onJoinNotRelation(sql, quote, j, jt, onList, on); } @Override - protected void onJoinComplextRelation(String sql, String quote, Join j, String jt, List onList, On on) { + protected void onJoinComplexRelation(String sql, String quote, Join j, String jt, List onList, On on) { // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplextRelation(sql, quote, j, jt, onList, on); } diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoVerifier.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoVerifier.java index 621a8f0..4875b62 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoVerifier.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoVerifier.java @@ -14,7 +14,7 @@ package apijson.demo; -import apijson.framework.APIJSONVerifier; +import apijson.framework.javax.APIJSONVerifier; /**安全校验器,校验请求参数、角色与权限等 * 具体见 https://github.com/Tencent/APIJSON/issues/12 diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Privacy.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Privacy.java index e8877e9..930c4ed 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Privacy.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Privacy.java @@ -21,7 +21,7 @@ import com.alibaba.fastjson.annotation.JSONField; import apijson.MethodAccess; -import apijson.framework.BaseModel; +import apijson.framework.javax.BaseModel; /** * TODO 漏洞:如果GETS允许CONTACT,则CONTACT能看到自己的余额,tag可以不是Privacy-circle。 diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/User.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/User.java index 1ea8900..a535d28 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/User.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/User.java @@ -20,7 +20,7 @@ import java.util.List; import apijson.MethodAccess; -import apijson.framework.BaseModel; +import apijson.framework.javax.BaseModel; import apijson.orm.Visitor; /**用户开放信息 diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Verify.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Verify.java index 0da333a..fa5fc13 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Verify.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Verify.java @@ -22,7 +22,7 @@ import static apijson.orm.AbstractVerifier.UNKNOWN; import apijson.MethodAccess; -import apijson.framework.BaseModel; +import apijson.framework.javax.BaseModel; /**验证码 * @author Lemon diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoAppConfig.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoAppConfig.java index 1d9263a..b580ebe 100755 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoAppConfig.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoAppConfig.java @@ -38,8 +38,8 @@ import apijson.demo.DemoParser; import apijson.demo.DemoSQLConfig; import apijson.demo.DemoVerifier; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.AbstractVerifier; import apijson.orm.FunctionParser; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoController.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoController.java index aa02620..fdefb58 100755 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoController.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoController.java @@ -22,16 +22,16 @@ import static apijson.RequestMethod.HEADS; import static apijson.RequestMethod.POST; import static apijson.RequestMethod.PUT; -import static apijson.framework.APIJSONConstant.ACCESS_; -import static apijson.framework.APIJSONConstant.COUNT; -import static apijson.framework.APIJSONConstant.FORMAT; -import static apijson.framework.APIJSONConstant.FUNCTION_; -import static apijson.framework.APIJSONConstant.ID; -import static apijson.framework.APIJSONConstant.REQUEST_; -import static apijson.framework.APIJSONConstant.USER_ID; -import static apijson.framework.APIJSONConstant.VERSION; -import static apijson.framework.APIJSONConstant.VISITOR_; -import static apijson.framework.APIJSONConstant.VISITOR_ID; +import static apijson.framework.javax.APIJSONConstant.ACCESS_; +import static apijson.framework.javax.APIJSONConstant.COUNT; +import static apijson.framework.javax.APIJSONConstant.FORMAT; +import static apijson.framework.javax.APIJSONConstant.FUNCTION_; +import static apijson.framework.javax.APIJSONConstant.ID; +import static apijson.framework.javax.APIJSONConstant.REQUEST_; +import static apijson.framework.javax.APIJSONConstant.USER_ID; +import static apijson.framework.javax.APIJSONConstant.VERSION; +import static apijson.framework.javax.APIJSONConstant.VISITOR_; +import static apijson.framework.javax.APIJSONConstant.VISITOR_ID; import java.net.URLDecoder; import java.rmi.ServerException; @@ -62,9 +62,9 @@ import apijson.demo.model.Privacy; import apijson.demo.model.User; import apijson.demo.model.Verify; -import apijson.framework.APIJSONController; -import apijson.framework.APIJSONParser; -import apijson.framework.BaseModel; +import apijson.framework.javax.APIJSONController; +import apijson.framework.javax.APIJSONParser; +import apijson.framework.javax.BaseModel; import apijson.orm.AbstractParser; import apijson.orm.JSONRequest; import apijson.orm.Parser; From 27c704e9921fe4e923e236924e9724afe8a0fdd0 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 11:24:01 +0800 Subject: [PATCH 12/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource-Elasticsearc?= =?UTF-8?q?h=20=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20ap?= =?UTF-8?q?ijson-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/apijson/boot/DemoController.java | 8 +-- .../pom.xml | 6 +- .../java/apijson/demo/DataBaseConfig.java | 2 +- .../main/java/apijson/demo/DataBaseUtil.java | 4 +- .../java/apijson/demo/DemoApplication.java | 18 +++--- .../java/apijson/demo/DemoController.java | 6 +- .../java/apijson/demo/DemoFunctionParser.java | 6 +- .../java/apijson/demo/DemoObjectParser.java | 4 +- .../main/java/apijson/demo/DemoParser.java | 6 +- .../main/java/apijson/demo/DemoSQLConfig.java | 18 +++--- .../java/apijson/demo/DemoSQLExecutor.java | 58 +++++++++---------- .../apijson/demo/DynamicJdbcDataSource.java | 4 +- .../src/main/resources/application.yml | 4 +- APIJSON-Java-Server/APIJSONFinal/pom.xml | 1 + 14 files changed, 74 insertions(+), 71 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java index bc7ac64..bf3f44f 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java @@ -141,10 +141,10 @@ public String getRequestURL() { return getRequestBaseURL() + getRequestPath(); } - // @Override - // public Parser newParser(HttpSession session, RequestMethod method) { - // return super.newParser(session, method).setNeedVerify(false); - // } + @Override + public Parser newParser(HttpSession session, RequestMethod method) { + return super.newParser(session, method).setNeedVerify(false); + } /**增删改查统一的类 RESTful API 入口,牺牲一点路由解析性能来提升一些开发效率 * @param method diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/pom.xml b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/pom.xml index 3dab5ac..f15201e 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/pom.xml @@ -9,7 +9,7 @@ apijson.demo apijsondemo-multidatasource-elasticsearch - 7.0.3 + 7.1.5 apijsondemo-multidatasource-elasticsearch Demo project for testing APIJSON server based on SpringBoot @@ -46,12 +46,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DataBaseConfig.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DataBaseConfig.java index 6e26153..aede54e 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DataBaseConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DataBaseConfig.java @@ -16,7 +16,7 @@ public String getPrimary() { return primary; } - public static DataBaseConfig getInstence() { + public static DataBaseConfig getInstance() { return SpringContextUtils.getBean(DataBaseConfig.class); } } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DataBaseUtil.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DataBaseUtil.java index fc736df..2edac2b 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DataBaseUtil.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DataBaseUtil.java @@ -13,7 +13,7 @@ public class DataBaseUtil { * @param url * @return */ - public static String getLibname(String url) { + public static String getDBName(String url) { Pattern p = Pattern.compile("jdbc:(?\\w+):.*((//)|@)(?.+):(?\\d+)(/|(;DatabaseName=)|:)(?\\w+)\\??.*"); Matcher m = p.matcher(url); if(m.find()) { @@ -41,7 +41,7 @@ public static String getDruidUrl(String datasource) { } public static String getDruidSchema(String datasource) { - return getLibname(DynamicJdbcDataSource.getDetail(datasource).getUrl()); // 数据库名; + return getDBName(DynamicJdbcDataSource.getDetail(datasource).getUrl()); // 数据库名; } public static String getDruidDBAccount(String datasource) { diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoApplication.java index f20b9ea..f44c018 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoApplication.java @@ -26,9 +26,9 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; +import apijson.framework.javax.APIJSONSQLConfig; import apijson.orm.AbstractFunctionParser; import apijson.orm.AbstractVerifier; import apijson.orm.FunctionParser; @@ -67,7 +67,7 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { @@ -79,24 +79,24 @@ public void addCorsMappings(CorsRegistry registry) { static { // 使用本项目的自定义处理类 - APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { + APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { @Override - public Parser createParser() { + public Parser createParser() { return new DemoParser(); } @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public FunctionParser createFunctionParser() { + public FunctionParser createFunctionParser() { return new DemoFunctionParser(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } }; diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoController.java index c91c58f..9d5d7ca 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; @@ -46,10 +46,10 @@ */ @RestController @RequestMapping("") -public class DemoController extends APIJSONController { +public class DemoController extends APIJSONController { @Override - public Parser newParser(HttpSession session, RequestMethod method) { + public Parser newParser(HttpSession session, RequestMethod method) { return super.newParser(session, method).setNeedVerify(false); // TODO 这里关闭校验,方便新手快速测试,实际线上项目建议开启 } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoFunctionParser.java index 92e729c..7f07ff5 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoFunctionParser.java @@ -7,12 +7,12 @@ import apijson.NotNull; import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONFunctionParser; -import apijson.framework.APIJSONVerifier; +import apijson.framework.javax.APIJSONFunctionParser; +import apijson.framework.javax.APIJSONVerifier; import lombok.extern.slf4j.Slf4j; @Slf4j -public class DemoFunctionParser extends APIJSONFunctionParser { +public class DemoFunctionParser extends APIJSONFunctionParser { public DemoFunctionParser() { this(null, null, 0, null, null); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoObjectParser.java index 627de64..67229c2 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoObjectParser.java @@ -8,11 +8,11 @@ import apijson.NotNull; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; +import apijson.framework.javax.APIJSONObjectParser; import apijson.orm.Join; import apijson.orm.SQLConfig; -public class DemoObjectParser extends APIJSONObjectParser { +public class DemoObjectParser extends APIJSONObjectParser { public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoParser.java index e12333e..0cbf211 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoParser.java @@ -3,11 +3,11 @@ import com.alibaba.fastjson.JSONObject; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; -import apijson.framework.APIJSONParser; +import apijson.framework.javax.APIJSONObjectParser; +import apijson.framework.javax.APIJSONParser; import apijson.orm.SQLConfig; -public class DemoParser extends APIJSONParser { +public class DemoParser extends APIJSONParser { public DemoParser() { super(); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoSQLConfig.java index 6599455..3c52948 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoSQLConfig.java @@ -19,7 +19,7 @@ import com.alibaba.fastjson.annotation.JSONField; import apijson.RequestMethod; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; import apijson.orm.AbstractSQLConfig; @@ -29,7 +29,7 @@ * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 * @author Lemon */ -public class DemoSQLConfig extends APIJSONSQLConfig { +public class DemoSQLConfig extends APIJSONSQLConfig { public DemoSQLConfig() { super(); @@ -40,8 +40,8 @@ public DemoSQLConfig(RequestMethod method, String table) { } static { -// DEFAULT_DATABASE = DATABASE_ELASTICSEARCH; // TODO 默认数据库类型,改成你自己的 -// DEFAULT_SCHEMA = "sys"; // TODO 默认数据库名/模式,改成你自己的,默认情况是 MySQL: sys, PostgreSQL: public, SQL Server: dbo, Oracle: + // DEFAULT_DATABASE = DATABASE_ELASTICSEARCH; // TODO 默认数据库类型,改成你自己的 + // DEFAULT_SCHEMA = "sys"; // TODO 默认数据库名/模式,改成你自己的,默认情况是 MySQL: sys, PostgreSQL: public, SQL Server: dbo, Oracle: // 表名和数据库不一致的,需要配置映射关系。只使用 APIJSONORM 时才需要; // 如果用了 apijson-framework 且调用了 APIJSONApplication.init 则不需要 @@ -79,8 +79,9 @@ public String getDBVersion() { @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加 @Override public String getDatabase() { - if (super.getDatabase() != null) { - return super.getDatabase(); + String db = super.getDatabase(); + if (db != null) { + return db; } try { return DynamicJdbcDataSource.getDetail(this.getDatasource()).getDatabase(); @@ -92,8 +93,9 @@ public String getDatabase() { @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加 @Override public String getSchema() { - if (super.getSchema() != null) { - return super.getSchema(); + String sch = super.getSchema(); + if (sch != null) { + return sch; } try { return DynamicJdbcDataSource.getDetail(this.getDatasource()).getSchema(); diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoSQLExecutor.java index a34da11..f77947e 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -19,7 +19,7 @@ import apijson.Log; import apijson.NotNull; import apijson.StringUtil; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; import lombok.extern.log4j.Log4j2; @@ -29,7 +29,7 @@ * @author Lemon */ @Log4j2 -public class DemoSQLExecutor extends APIJSONSQLExecutor { +public class DemoSQLExecutor extends APIJSONSQLExecutor { public static final String TAG = "DemoSQLExecutor"; // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, @@ -68,33 +68,33 @@ public int executeUpdate(@NotNull SQLConfig config, String sql) throws Exception /*** * 查询返回字段值进行二次处理 */ -// @Override -// protected JSONObject onPutColumn(@NotNull SQLConfig config, @NotNull ResultSet rs, @NotNull ResultSetMetaData rsmd -// , final int tablePosition, @NotNull JSONObject table, final int columnIndex, Join join, Map childMap) throws Exception { -// if (table == null) { // 对应副表 viceSql 不能生成正常 SQL, 或者是 ! - Outer, ( - ANTI JOIN 的副表这种不需要缓存及返回的数据 -// Log.i(TAG, "onPutColumn table == null >> return table;"); -// return table; -// } -// -// if (isHideColumn(config, rs, rsmd, tablePosition, table, columnIndex, childMap)) { -// Log.i(TAG, "onPutColumn isHideColumn(config, rs, rsmd, tablePosition, table, columnIndex, childMap) >> return table;"); -// return table; -// } -// -// String label = getKey(config, rs, rsmd, tablePosition, table, columnIndex, childMap); -// Object value = getValue(config, rs, rsmd, tablePosition, table, columnIndex, label, childMap); -// -// // TODO -// if(StringUtils.equals(config.getTable(), "User") && StringUtils.equals(label, "addr_id")) { -// value = "1-1-1"; -// } -// // 主表必须 put 至少一个 null 进去,否则全部字段为 null 都不 put 会导致中断后续正常返回值 -// if (value != null || (join == null && table.isEmpty())) { -// table.put(label, value); -// } -// -// return table; -// } + // @Override + // protected JSONObject onPutColumn(@NotNull SQLConfig config, @NotNull ResultSet rs, @NotNull ResultSetMetaData rsmd + // , final int tablePosition, @NotNull JSONObject table, final int columnIndex, Join join, Map childMap) throws Exception { + // if (table == null) { // 对应副表 viceSql 不能生成正常 SQL, 或者是 ! - Outer, ( - ANTI JOIN 的副表这种不需要缓存及返回的数据 + // Log.i(TAG, "onPutColumn table == null >> return table;"); + // return table; + // } + // + // if (isHideColumn(config, rs, rsmd, tablePosition, table, columnIndex, childMap)) { + // Log.i(TAG, "onPutColumn isHideColumn(config, rs, rsmd, tablePosition, table, columnIndex, childMap) >> return table;"); + // return table; + // } + // + // String label = getKey(config, rs, rsmd, tablePosition, table, columnIndex, childMap); + // Object value = getValue(config, rs, rsmd, tablePosition, table, columnIndex, label, childMap); + // + // // TODO + // if(StringUtils.equals(config.getTable(), "User") && StringUtils.equals(label, "addr_id")) { + // value = "1-1-1"; + // } + // // 主表必须 put 至少一个 null 进去,否则全部字段为 null 都不 put 会导致中断后续正常返回值 + // if (value != null || (join == null && table.isEmpty())) { + // table.put(label, value); + // } + // + // return table; + // } // 取消注释支持 !key 反选字段 和 字段名映射,需要先依赖插件 https://github.com/APIJSON/apijson-column // @Override diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DynamicJdbcDataSource.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DynamicJdbcDataSource.java index 1e7f328..f1d6185 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DynamicJdbcDataSource.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/java/apijson/demo/DynamicJdbcDataSource.java @@ -75,7 +75,7 @@ public static void addDataSource(DynamicJdbcDataSource detail) { public static DynamicJdbcDataSource getDetail(String datasource) { if (datasource == null) { // 默认数据源 - datasource = DataBaseConfig.getInstence().getPrimary(); + datasource = DataBaseConfig.getInstance().getPrimary(); } // 不存在交给框架处理 return dataSourceMap.get(datasource); @@ -157,7 +157,7 @@ private void initJdbcDataSource() { ItemDataSource dataSource = (ItemDataSource) dataSourceList.getDataSources().get(datasourceName); DruidDataSource druid = (DruidDataSource) dataSource.getRealDataSource(); String url = druid.getDataSourceStat().getUrl(); // 数据库连接url - String schema = DataBaseUtil.getLibname(url); // 数据库名; + String schema = DataBaseUtil.getDBName(url); // 数据库名; String database = JdbcUtils.getDbType(url).getDb().toUpperCase(); // 数据库类型 String dbAccount = druid.getUsername(); // 数据库用户名 String dbPassword = druid.getPassword(); // 数据库密码 diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/resources/application.yml b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/resources/application.yml index 9afb4f6..8dd5c23 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/resources/application.yml +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Elasticsearch/src/main/resources/application.yml @@ -27,12 +27,12 @@ spring: password: apijson 155db: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3888/sys?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false + url: jdbc:mysql://localhost:3306/sys?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false username: root password: apijson 213db: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3888/sys?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false + url: jdbc:mysql://localhost:3306/sys?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false username: root password: apijson db1: diff --git a/APIJSON-Java-Server/APIJSONFinal/pom.xml b/APIJSON-Java-Server/APIJSONFinal/pom.xml index 4f966b5..9055a63 100755 --- a/APIJSON-Java-Server/APIJSONFinal/pom.xml +++ b/APIJSON-Java-Server/APIJSONFinal/pom.xml @@ -114,6 +114,7 @@ 资源复制到 jar 包中去,注意打包的时候需要配置 engine: me.setBaseTemplatePath("webapp"); me.setToClassPathSourceFactory(); 如果 web 资源本身就放在 src/main/resources/webapp 之下,则不需要此插件 --> + org.apache.maven.plugins maven-resources-plugin 3.1.0 From d06d793bc61c8b78ce32496e5016aeb92c21e017 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 11:37:47 +0800 Subject: [PATCH 13/80] =?UTF-8?q?Java=EF=BC=9ABigData=20=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijson-framework=20?= =?UTF-8?q?=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5,=20apijson-column=202.1.0,?= =?UTF-8?q?=20UnitAuto=203.0.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONBoot-BigData/pom.xml | 23 +++++++++------ .../java/apijson/boot/DemoApplication.java | 12 ++++---- .../java/apijson/boot/DemoController.java | 29 ++++++++++--------- .../java/apijson/demo/DemoFunctionParser.java | 4 +-- .../java/apijson/demo/DemoObjectParser.java | 4 +-- .../main/java/apijson/demo/DemoParser.java | 6 ++-- .../main/java/apijson/demo/DemoSQLConfig.java | 14 ++++----- .../java/apijson/demo/DemoSQLExecutor.java | 2 +- .../main/java/apijson/demo/DemoVerifier.java | 2 +- .../main/java/apijson/demo/model/Privacy.java | 2 +- .../main/java/apijson/demo/model/User.java | 2 +- .../main/java/apijson/demo/model/Verify.java | 2 +- 12 files changed, 55 insertions(+), 47 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/pom.xml b/APIJSON-Java-Server/APIJSONBoot-BigData/pom.xml index 8a7b0fc..ff46cf9 100755 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/pom.xml @@ -5,7 +5,7 @@ apijson.boot apijson-boot - 7.0.3 + 7.1.5 jar APIJSONBoot-BigData @@ -14,7 +14,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 @@ -36,12 +39,12 @@ com.github.TommyLemon unitauto-java - 2.9.0 + 3.0.5 com.github.TommyLemon unitauto-jar - 2.9.0 + 3.0.5 io.github.classgraph @@ -55,17 +58,17 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 com.github.APIJSON apijson-column - 2.0.3 + 2.1.0 @@ -110,6 +113,7 @@ org.springframework.boot spring-boot-maven-plugin + 3.2.5 @@ -121,9 +125,10 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoApplication.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoApplication.java index 83c9e73..e8cb24a 100755 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoApplication.java @@ -43,9 +43,9 @@ import apijson.demo.DemoSQLConfig; import apijson.demo.DemoSQLExecutor; import apijson.demo.DemoVerifier; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; -import apijson.framework.APIJSONParser; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; +import apijson.framework.javax.APIJSONParser; import apijson.orm.AbstractVerifier; import apijson.orm.FunctionParser; import apijson.orm.Parser; @@ -188,7 +188,7 @@ public Parser createParser() { } @Override - public FunctionParser createFunctionParser() { + public FunctionParser createFunctionParser() { return new DemoFunctionParser(); } @@ -198,12 +198,12 @@ public Verifier createVerifier() { } @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoController.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoController.java index e6d70aa..590aa4d 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoController.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoController.java @@ -21,14 +21,14 @@ import static apijson.RequestMethod.HEADS; import static apijson.RequestMethod.POST; import static apijson.RequestMethod.PUT; -import static apijson.framework.APIJSONConstant.ACCESS_; -import static apijson.framework.APIJSONConstant.COUNT; -import static apijson.framework.APIJSONConstant.FORMAT; -import static apijson.framework.APIJSONConstant.FUNCTION_; -import static apijson.framework.APIJSONConstant.ID; -import static apijson.framework.APIJSONConstant.REQUEST_; -import static apijson.framework.APIJSONConstant.USER_ID; -import static apijson.framework.APIJSONConstant.VERSION; +import static apijson.framework.javax.APIJSONConstant.ACCESS_; +import static apijson.framework.javax.APIJSONConstant.COUNT; +import static apijson.framework.javax.APIJSONConstant.FORMAT; +import static apijson.framework.javax.APIJSONConstant.FUNCTION_; +import static apijson.framework.javax.APIJSONConstant.ID; +import static apijson.framework.javax.APIJSONConstant.REQUEST_; +import static apijson.framework.javax.APIJSONConstant.USER_ID; +import static apijson.framework.javax.APIJSONConstant.VERSION; import static org.springframework.http.HttpHeaders.COOKIE; import static org.springframework.http.HttpHeaders.SET_COOKIE; @@ -49,6 +49,7 @@ import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; +import apijson.orm.Parser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; @@ -78,8 +79,8 @@ import apijson.demo.model.Privacy; import apijson.demo.model.User; import apijson.demo.model.Verify; -import apijson.framework.APIJSONController; -import apijson.framework.BaseModel; +import apijson.framework.javax.APIJSONController; +import apijson.framework.javax.BaseModel; import apijson.orm.JSONRequest; import apijson.orm.exception.ConditionErrorException; import apijson.orm.exception.ConflictException; @@ -110,13 +111,15 @@ public String getRequestURL() { return httpServletRequest.getRequestURL().toString(); } - + @Override + public Parser newParser(HttpSession session, RequestMethod method) { + return super.newParser(session, method).setNeedVerify(false); + } + // 通用接口,非事务型操作 和 简单事务型操作 都可通过这些接口自动化实现 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< /**增删改查统一入口,这个一个方法可替代以下 7 个方法,牺牲一些路由解析性能来提升一点开发效率 * @param method - * @param tag - * @param params * @param request * @param session * @return diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoFunctionParser.java index c2d7505..6b641ed 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoFunctionParser.java @@ -28,7 +28,7 @@ import apijson.NotNull; import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONFunctionParser; +import apijson.framework.javax.APIJSONFunctionParser; import apijson.orm.AbstractVerifier; import apijson.orm.JSONRequest; import apijson.orm.Visitor; @@ -38,7 +38,7 @@ * 具体见 https://github.com/Tencent/APIJSON/issues/101 * @author Lemon */ -public class DemoFunctionParser extends APIJSONFunctionParser { +public class DemoFunctionParser extends APIJSONFunctionParser { public static final String TAG = "DemoFunctionParser"; public DemoFunctionParser() { diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoObjectParser.java index f177a9d..c789fc2 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoObjectParser.java @@ -22,7 +22,7 @@ import apijson.NotNull; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; +import apijson.framework.javax.APIJSONObjectParser; import apijson.orm.Join; import apijson.orm.SQLConfig; @@ -30,7 +30,7 @@ /**对象解析器,用来简化 Parser * @author Lemon */ -public class DemoObjectParser extends APIJSONObjectParser { +public class DemoObjectParser extends APIJSONObjectParser { public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoParser.java index 0810316..9ed3491 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoParser.java @@ -17,8 +17,8 @@ import com.alibaba.fastjson.JSONObject; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; -import apijson.framework.APIJSONParser; +import apijson.framework.javax.APIJSONObjectParser; +import apijson.framework.javax.APIJSONParser; import apijson.orm.SQLConfig; @@ -46,7 +46,7 @@ public DemoParser(RequestMethod method, boolean needVerify) { @Override - public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig + public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { return new DemoObjectParser(getSession(), request, parentPath, arrayConfig , isSubquery, isTable, isArrayMainTable).setMethod(getMethod()).setParser(this); diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLConfig.java index 57a7eb2..0192b96 100755 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLConfig.java @@ -14,10 +14,10 @@ package apijson.demo; -import static apijson.framework.APIJSONConstant.ID; -import static apijson.framework.APIJSONConstant.PRIVACY_; -import static apijson.framework.APIJSONConstant.USER_; -import static apijson.framework.APIJSONConstant.USER_ID; +import static apijson.framework.javax.APIJSONConstant.ID; +import static apijson.framework.javax.APIJSONConstant.PRIVACY_; +import static apijson.framework.javax.APIJSONConstant.USER_; +import static apijson.framework.javax.APIJSONConstant.USER_ID; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -31,7 +31,7 @@ import apijson.RequestMethod; import apijson.StringUtil; import apijson.column.ColumnUtil; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; import apijson.orm.AbstractSQLConfig; import apijson.orm.Join; import apijson.orm.Join.On; @@ -309,8 +309,8 @@ protected void onJoinNotRelation(String sql, String quote, Join join, String tab } @Override - protected void onJoinComplextRelation(String sql, String quote, Join j, String jt, List onList, On on) { - // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplextRelation(sql, quote, j, jt, onList, on); + protected void onJoinComplexRelation(String sql, String quote, Join j, String jt, List onList, On on) { + // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplexRelation(sql, quote, j, jt, onList, on); } } diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLExecutor.java index 6119a68..0983685 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -20,7 +20,7 @@ import apijson.Log; import apijson.boot.DemoApplication; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoVerifier.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoVerifier.java index 97b3912..1a0ee18 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoVerifier.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoVerifier.java @@ -14,7 +14,7 @@ package apijson.demo; -import apijson.framework.APIJSONVerifier; +import apijson.framework.javax.APIJSONVerifier; /**安全校验器,校验请求参数、角色与权限等 diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/Privacy.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/Privacy.java index e8877e9..930c4ed 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/Privacy.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/Privacy.java @@ -21,7 +21,7 @@ import com.alibaba.fastjson.annotation.JSONField; import apijson.MethodAccess; -import apijson.framework.BaseModel; +import apijson.framework.javax.BaseModel; /** * TODO 漏洞:如果GETS允许CONTACT,则CONTACT能看到自己的余额,tag可以不是Privacy-circle。 diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/User.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/User.java index 1ea8900..a535d28 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/User.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/User.java @@ -20,7 +20,7 @@ import java.util.List; import apijson.MethodAccess; -import apijson.framework.BaseModel; +import apijson.framework.javax.BaseModel; import apijson.orm.Visitor; /**用户开放信息 diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/Verify.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/Verify.java index 0da333a..fa5fc13 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/Verify.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/model/Verify.java @@ -22,7 +22,7 @@ import static apijson.orm.AbstractVerifier.UNKNOWN; import apijson.MethodAccess; -import apijson.framework.BaseModel; +import apijson.framework.javax.BaseModel; /**验证码 * @author Lemon From b578e47849432fca3eaeb97bd09550b1c5b5d0a7 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 15:45:31 +0800 Subject: [PATCH 14/80] =?UTF-8?q?Java=EF=BC=9AClickHouse=20Demo=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONDemo-ClickHouse/pom.xml | 18 ++++++++++++------ .../java/apijson/demo/DemoApplication.java | 4 ++-- .../main/java/apijson/demo/DemoController.java | 2 +- .../main/java/apijson/demo/DemoSQLConfig.java | 4 ++-- 4 files changed, 17 insertions(+), 11 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-ClickHouse/pom.xml b/APIJSON-Java-Server/APIJSONDemo-ClickHouse/pom.xml index 0d38d74..7d41de5 100755 --- a/APIJSON-Java-Server/APIJSONDemo-ClickHouse/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-ClickHouse/pom.xml @@ -5,7 +5,7 @@ apijson.demo apijson-demo - 7.0.3 + 7.1.5 APIJSONDemo-ClickHouse Demo project for testing APIJSON server based on SpringBoot @@ -13,7 +13,11 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 + 3.2.5 @@ -45,12 +49,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -69,6 +73,7 @@ org.springframework.boot spring-boot-maven-plugin + 3.2.5 @@ -80,9 +85,10 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoApplication.java index 6893b9e..051c06b 100755 --- a/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoApplication.java @@ -26,8 +26,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.SQLConfig; diff --git a/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoController.java index c91c58f..aa5287d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoSQLConfig.java index 90be663..be5c4e9 100755 --- a/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-ClickHouse/src/main/java/apijson/demo/DemoSQLConfig.java @@ -16,7 +16,7 @@ import com.alibaba.fastjson.annotation.JSONField; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置 @@ -62,7 +62,7 @@ public String getDBAccount() { @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 @Override public String getDBPassword() { - return "123456"; // TODO 改成你自己的 + return "apijson"; // TODO 改成你自己的 } } From 519bd5a8f8cd72f79b38bb6b9dd4223ad6f7466d Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 15:51:46 +0800 Subject: [PATCH 15/80] =?UTF-8?q?Java=EF=BC=9ADruid=20Demo=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijson-framewo?= =?UTF-8?q?rk=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONDemo-Druid/pom.xml | 17 +++++++++++------ .../main/java/apijson/demo/DemoApplication.java | 6 +++--- .../main/java/apijson/demo/DemoController.java | 2 +- .../main/java/apijson/demo/DemoSQLConfig.java | 2 +- .../main/java/apijson/demo/DemoSQLExecutor.java | 2 +- 5 files changed, 17 insertions(+), 12 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-Druid/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Druid/pom.xml index 324eeeb..8a7edb7 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Druid/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-Druid/pom.xml @@ -6,7 +6,7 @@ apijson.demo apijson-demo-druid jar - 7.0.3 + 7.1.5 APIJSONDemo-Druid Demo project for Testing APIJSON Server based on SpringBoot @@ -14,7 +14,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 @@ -22,12 +25,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -64,6 +67,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.5.13 @@ -75,9 +79,10 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoApplication.java index 9a7543b..32c1ae6 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoApplication.java @@ -27,8 +27,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.SQLConfig; import apijson.orm.SQLExecutor; @@ -65,7 +65,7 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { diff --git a/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoController.java index 2e5f213..e2e2b9f 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoSQLConfig.java index 37a7d12..d29d72f 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoSQLConfig.java @@ -14,7 +14,7 @@ package apijson.demo; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置,这里不配置数据库账号密码等信息,改为使用 DemoDataSourceConfig 来配置 diff --git a/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoSQLExecutor.java index e6378b7..f933aa1 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -18,7 +18,7 @@ import javax.sql.DataSource; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; From 382f53c08a68c36dea17cc3f43ff5d482d36c8c7 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 15:55:01 +0800 Subject: [PATCH 16/80] =?UTF-8?q?Java=EF=BC=9AElasticsearch=20Demo=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONDemo-Elasticsearch/pom.xml | 17 +++++++++++------ .../main/java/apijson/demo/DemoApplication.java | 4 ++-- .../main/java/apijson/demo/DemoController.java | 2 +- .../main/java/apijson/demo/DemoSQLConfig.java | 2 +- 4 files changed, 15 insertions(+), 10 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/pom.xml index f20aaf5..f3eb442 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/pom.xml @@ -5,7 +5,7 @@ apijson.demo apijson-demo - 7.0.3 + 7.1.5 APIJSONDemo-Elasticsearch Demo project for testing APIJSON server based on SpringBoot @@ -13,7 +13,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 @@ -21,12 +24,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -52,6 +55,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.5.13 @@ -63,9 +67,10 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoApplication.java index 01e48ac..326ee8f 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoApplication.java @@ -26,8 +26,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.SQLConfig; diff --git a/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoController.java index c91c58f..aa5287d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoSQLConfig.java index 1af032f..6c95491 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-Elasticsearch/src/main/java/apijson/demo/DemoSQLConfig.java @@ -16,7 +16,7 @@ import com.alibaba.fastjson.annotation.JSONField; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置 From db85340b6fbdad7ecdf4a543ca4507c64ce97801 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 16:15:14 +0800 Subject: [PATCH 17/80] =?UTF-8?q?Java=EF=BC=9AHikariCP=20Demo=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijson-framewo?= =?UTF-8?q?rk=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/apijson/boot/DemoApplication.java | 2 +- .../APIJSONDemo-HikariCP/pom.xml | 17 +++++++++++------ .../main/java/apijson/demo/DemoApplication.java | 8 ++++---- .../main/java/apijson/demo/DemoController.java | 2 +- .../main/java/apijson/demo/DemoSQLConfig.java | 2 +- .../main/java/apijson/demo/DemoSQLExecutor.java | 2 +- 6 files changed, 19 insertions(+), 14 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoApplication.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoApplication.java index e8cb24a..f2206c1 100755 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/boot/DemoApplication.java @@ -96,7 +96,7 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { diff --git a/APIJSON-Java-Server/APIJSONDemo-HikariCP/pom.xml b/APIJSON-Java-Server/APIJSONDemo-HikariCP/pom.xml index fb670c8..4345d78 100755 --- a/APIJSON-Java-Server/APIJSONDemo-HikariCP/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-HikariCP/pom.xml @@ -6,7 +6,7 @@ apijson.demo apijson-demo-hikaricp jar - 7.0.3 + 7.1.5 APIJSONDemo Demo project for Testing APIJSON Server based on SpringBoot @@ -14,7 +14,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 @@ -22,12 +25,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -64,6 +67,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.5.13 @@ -75,9 +79,10 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoApplication.java index 9a7543b..387cda0 100755 --- a/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoApplication.java @@ -27,8 +27,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.SQLConfig; import apijson.orm.SQLExecutor; @@ -82,12 +82,12 @@ public void addCorsMappings(CorsRegistry registry) { // 使用本项目的自定义处理类 APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } }; diff --git a/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoController.java index 2e5f213..e2e2b9f 100644 --- a/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoSQLConfig.java index ad9a23b..63a81fd 100755 --- a/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoSQLConfig.java @@ -14,7 +14,7 @@ package apijson.demo; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置,这里不配置数据库账号密码等信息,改为使用 DemoDataSourceConfig 来配置 diff --git a/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoSQLExecutor.java index e6378b7..f933aa1 100644 --- a/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-HikariCP/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -18,7 +18,7 @@ import javax.sql.DataSource; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; From 55976065f905456d6991a9e7461488170d6ed304 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 16:59:43 +0800 Subject: [PATCH 18/80] =?UTF-8?q?Java=EF=BC=9AScript=20Demo=20=E5=8D=95?= =?UTF-8?q?=E7=8B=AC=E4=BE=9D=E8=B5=96=20org.openjdk.nashorn=EF=BC=8C?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONDemo-Script/pom.xml | 21 +++++++++++++------ .../java/apijson/demo/DemoApplication.java | 4 ++-- .../java/apijson/demo/DemoController.java | 2 +- .../main/java/apijson/demo/DemoSQLConfig.java | 2 +- .../java/apijson/demo/DemoSQLExecutor.java | 2 +- .../demo/script/NashornScriptExecutor.java | 3 ++- 6 files changed, 22 insertions(+), 12 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-Script/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Script/pom.xml index 2518c45..d8eef6d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Script/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-Script/pom.xml @@ -4,7 +4,7 @@ 4.0.0 apijson.demo apijson-demo-script - 7.0.3 + 7.1.5 APIJSONDemo-Druid Demo project for Testing APIJSON Server based on SpringBoot @@ -12,7 +12,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 21.3.3.1 1.18.4 @@ -22,12 +25,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -56,6 +59,12 @@ druid 1.2.9 + + + org.openjdk.nashorn + nashorn-core + 15.4 + org.graalvm.js js @@ -87,8 +96,8 @@ maven-compiler-plugin 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoApplication.java index 4fd73ce..67f88e2 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoApplication.java @@ -30,8 +30,8 @@ import apijson.demo.script.GraalJavaScriptExecutor; import apijson.demo.script.LuaScriptExecutor; import apijson.demo.script.NashornScriptExecutor; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.SQLConfig; import apijson.orm.SQLExecutor; import apijson.orm.script.ScriptExecutor; diff --git a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoController.java index 2e5f213..e2e2b9f 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoSQLConfig.java index 37a7d12..d29d72f 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoSQLConfig.java @@ -14,7 +14,7 @@ package apijson.demo; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置,这里不配置数据库账号密码等信息,改为使用 DemoDataSourceConfig 来配置 diff --git a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoSQLExecutor.java index e6378b7..f933aa1 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -18,7 +18,7 @@ import javax.sql.DataSource; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; diff --git a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/script/NashornScriptExecutor.java b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/script/NashornScriptExecutor.java index eb2b864..94ef810 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/script/NashornScriptExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-Script/src/main/java/apijson/demo/script/NashornScriptExecutor.java @@ -8,7 +8,8 @@ import apijson.orm.AbstractFunctionParser; import apijson.orm.script.JSR223ScriptExecutor; import apijson.orm.script.ScriptExecutor; -import jdk.nashorn.api.scripting.NashornScriptEngineFactory; +// JDK 1.8~16 用 JDK 自带的,JDK 17+ 必须单独依赖 import jdk.nashorn.api.scripting.NashornScriptEngineFactory; +import org.openjdk.nashorn.api.scripting.NashornScriptEngineFactory; public class NashornScriptExecutor extends JSR223ScriptExecutor { @SuppressWarnings("restriction") From 8a1d53276ed7e600b5d2ea17e0d66e60adc910eb Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 17:04:38 +0800 Subject: [PATCH 19/80] =?UTF-8?q?Java=EF=BC=9AHadoop&Hive=20Demo=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONDemo-Hadoop/pom.xml | 17 +++++++++------ .../java/apijson/demo/DemoApplication.java | 8 +++---- .../java/apijson/demo/DemoController.java | 2 +- .../main/java/apijson/demo/DemoSQLConfig.java | 4 ++-- .../java/apijson/demo/DemoSQLExecutor.java | 21 ++++++++++++------- 5 files changed, 32 insertions(+), 20 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-Hadoop/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Hadoop/pom.xml index 0382cd8..e3bcea0 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Hadoop/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-Hadoop/pom.xml @@ -5,7 +5,7 @@ apijson.demo apijson-demo - 7.0.3 + 7.1.5 APIJSONDemo-Hadoop Demo project for testing APIJSON server based on SpringBoot @@ -13,7 +13,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 @@ -21,12 +24,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -123,6 +126,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.5.13 @@ -134,9 +138,10 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoApplication.java index d617187..1844cda 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoApplication.java @@ -26,8 +26,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.SQLConfig; import apijson.orm.SQLExecutor; @@ -61,12 +61,12 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") - .allowedOrigins("*") //.allowedOriginPatterns("*") + .allowedOriginPatterns("*") .allowedMethods("*") .allowCredentials(true) .maxAge(3600); diff --git a/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoController.java index c91c58f..aa5287d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoSQLConfig.java index 2ed2fc1..70120f9 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoSQLConfig.java @@ -16,7 +16,7 @@ import com.alibaba.fastjson.annotation.JSONField; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置 @@ -44,7 +44,7 @@ public class DemoSQLConfig extends APIJSONSQLConfig { @Override public String getDBVersion() { - return "4.0.0-alpha-1"; // TODO 改成你自己的 + return "4.0.1"; // TODO 改成你自己的 } @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 diff --git a/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoSQLExecutor.java index 708fb76..7b98aab 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-Hadoop/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -25,8 +25,8 @@ import apijson.Log; import apijson.RequestMethod; -import apijson.framework.APIJSONSQLConfig; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; @@ -37,13 +37,20 @@ public class DemoSQLExecutor extends APIJSONSQLExecutor { public static final String TAG = "DemoSQLExecutor"; @Override - protected String getKey(SQLConfig config, ResultSet rs, ResultSetMetaData rsmd, int tablePosition, JSONObject table, int columnIndex, Map childMap) throws Exception { + protected String getKey(SQLConfig config, ResultSet rs, ResultSetMetaData rsmd, int tablePosition, JSONObject table, int columnIndex, Map childMap) throws Exception { String key = super.getKey(config, rs, rsmd, tablePosition, table, columnIndex, childMap); - String table_name = config.getTable(); - if(APIJSONSQLConfig.TABLE_KEY_MAP.containsKey(table_name)) table_name = APIJSONSQLConfig.TABLE_KEY_MAP.get(table_name); - String pattern = "^" + table_name + "\\." + "[a-zA-Z]+$"; + String tbl = config.getTable(); + + if (APIJSONSQLConfig.TABLE_KEY_MAP.containsKey(tbl)) { + tbl = APIJSONSQLConfig.TABLE_KEY_MAP.get(tbl); + } + + String pattern = "^" + tbl + "\\." + "[a-zA-Z]+$"; boolean isMatch = Pattern.matches(pattern, key); - if(isMatch) key = key.split("\\.")[1]; + if (isMatch) { + key = key.split("\\.")[1]; + } + return key; } From 664776f9e633de2d9bfdc35292c78e6be065eb80 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 17:29:38 +0800 Subject: [PATCH 20/80] =?UTF-8?q?Java=EF=BC=9AKafka=20Demo=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijson-framewo?= =?UTF-8?q?rk=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONDemo-MultiDataSource-Kafka/pom.xml | 18 ++++++++++++------ .../main/java/apijson/demo/DataBaseUtil.java | 4 ++-- .../java/apijson/demo/DemoApplication.java | 17 ++++++++++------- .../main/java/apijson/demo/DemoController.java | 6 +++--- .../java/apijson/demo/DemoFunctionParser.java | 6 +++--- .../java/apijson/demo/DemoObjectParser.java | 4 ++-- .../src/main/java/apijson/demo/DemoParser.java | 6 +++--- .../main/java/apijson/demo/DemoSQLConfig.java | 4 ++-- .../java/apijson/demo/DemoSQLExecutor.java | 4 ++-- .../java/apijson/demo/DynamicDataSource.java | 14 +++++++------- .../java/apijson/demo/KafkaSimpleProducer.java | 4 ++-- .../src/main/resources/application.yml | 6 +++--- 12 files changed, 51 insertions(+), 42 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/pom.xml b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/pom.xml index dc7c9e1..24b5d7e 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/pom.xml @@ -9,7 +9,7 @@ apijson.demo apijsondemo-multidatasource-kafka - 7.0.3 + 7.1.5 apijsondemo-multidatasource-kafka Demo project for testing APIJSON server based on SpringBoot @@ -17,6 +17,10 @@ UTF-8 UTF-8 + 17 + UTF-8 + 17 + 17 3.12.0 1.1.16 3.5.1 @@ -37,7 +41,6 @@ 5.3.18 2.6.6 3.5.2 - 1.8 3.2.1 @@ -46,12 +49,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -62,6 +65,7 @@ org.springframework.boot spring-boot-starter-web + 2.5.13 org.springframework @@ -147,6 +151,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.5.13 true apijson.demo.DemoApplication @@ -162,9 +167,10 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DataBaseUtil.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DataBaseUtil.java index a4c6bbf..47b63d8 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DataBaseUtil.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DataBaseUtil.java @@ -13,7 +13,7 @@ public class DataBaseUtil { * @param url * @return */ - public static String getLibname(String url) { + public static String getDbName(String url) { Pattern p = Pattern.compile("jdbc:(?\\w+):.*((//)|@)(?.+):(?\\d+)(/|(;DatabaseName=)|:)(?\\w+)\\??.*"); Matcher m = p.matcher(url); if(m.find()) { @@ -41,7 +41,7 @@ public static String getDruidUrl(String datasource) { } public static String getDruidSchema(String datasource) { - return getLibname(DynamicDataSource.getDetail(datasource).getUrl()); // 数据库名; + return getDbName(DynamicDataSource.getDetail(datasource).getUrl()); // 数据库名; } public static String getDruidDBAccount(String datasource) { diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoApplication.java index a82838e..3306012 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoApplication.java @@ -26,8 +26,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.AbstractFunctionParser; import apijson.orm.AbstractVerifier; import apijson.orm.FunctionParser; @@ -62,11 +62,14 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { - registry.addMapping("/**").allowedOriginPatterns("*").allowedMethods("*").allowCredentials(true) + registry.addMapping("/**") + .allowedOriginPatterns("*") + .allowedMethods("*") + .allowCredentials(true) .maxAge(3600); } }; @@ -81,17 +84,17 @@ public Parser createParser() { } @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public FunctionParser createFunctionParser() { + public FunctionParser createFunctionParser() { return new DemoFunctionParser(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } }; diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoController.java index c91c58f..fee8e14 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; @@ -46,10 +46,10 @@ */ @RestController @RequestMapping("") -public class DemoController extends APIJSONController { +public class DemoController extends APIJSONController { @Override - public Parser newParser(HttpSession session, RequestMethod method) { + public Parser newParser(HttpSession session, RequestMethod method) { return super.newParser(session, method).setNeedVerify(false); // TODO 这里关闭校验,方便新手快速测试,实际线上项目建议开启 } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoFunctionParser.java index 92e729c..bedcce9 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoFunctionParser.java @@ -7,12 +7,12 @@ import apijson.NotNull; import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONFunctionParser; -import apijson.framework.APIJSONVerifier; +import apijson.framework.javax.APIJSONFunctionParser; +import apijson.framework.javax.APIJSONVerifier; import lombok.extern.slf4j.Slf4j; @Slf4j -public class DemoFunctionParser extends APIJSONFunctionParser { +public class DemoFunctionParser extends APIJSONFunctionParser { public DemoFunctionParser() { this(null, null, 0, null, null); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoObjectParser.java index 627de64..eca903d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoObjectParser.java @@ -8,11 +8,11 @@ import apijson.NotNull; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; +import apijson.framework.javax.APIJSONObjectParser; import apijson.orm.Join; import apijson.orm.SQLConfig; -public class DemoObjectParser extends APIJSONObjectParser { +public class DemoObjectParser extends APIJSONObjectParser { public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoParser.java index e12333e..84325b2 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoParser.java @@ -3,8 +3,8 @@ import com.alibaba.fastjson.JSONObject; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; -import apijson.framework.APIJSONParser; +import apijson.framework.javax.APIJSONObjectParser; +import apijson.framework.javax.APIJSONParser; import apijson.orm.SQLConfig; public class DemoParser extends APIJSONParser { @@ -27,7 +27,7 @@ public DemoParser(RequestMethod method, boolean needVerify) { // } @Override - public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig, boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { + public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig, boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { return new DemoObjectParser(getSession(), request, parentPath, arrayConfig, isSubquery, isTable, isArrayMainTable).setMethod(getMethod()).setParser(this); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoSQLConfig.java index c8ba3c3..d8c97ec 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoSQLConfig.java @@ -19,7 +19,7 @@ import com.alibaba.fastjson.annotation.JSONField; import apijson.RequestMethod; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; import apijson.orm.AbstractSQLConfig; @@ -29,7 +29,7 @@ * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 * @author Lemon */ -public class DemoSQLConfig extends APIJSONSQLConfig { +public class DemoSQLConfig extends APIJSONSQLConfig { public DemoSQLConfig() { super(); diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoSQLExecutor.java index 88f7d91..cb625a8 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -22,7 +22,7 @@ import apijson.Log; import apijson.NotNull; import apijson.StringUtil; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; import lombok.extern.log4j.Log4j2; @@ -32,7 +32,7 @@ * @author Lemon */ @Log4j2 -public class DemoSQLExecutor extends APIJSONSQLExecutor { +public class DemoSQLExecutor extends APIJSONSQLExecutor { public static final String TAG = "DemoSQLExecutor"; // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DynamicDataSource.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DynamicDataSource.java index 7eef7c5..4133e97 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DynamicDataSource.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/DynamicDataSource.java @@ -85,7 +85,7 @@ private void initJdbcDataSource() { ItemDataSource dataSource = (ItemDataSource) dataSourceList.getDataSources().get(datasourceName); DruidDataSource druid = (DruidDataSource) dataSource.getRealDataSource(); String url = druid.getDataSourceStat().getUrl(); // 数据库连接url - String schema = DataBaseUtil.getLibname(url); // 数据库名; + String schema = DataBaseUtil.getDbName(url); // 数据库名; String database = JdbcUtils.getDbType(url).getDb().toUpperCase(); // 数据库类型 String dbAccount = druid.getUsername(); // 数据库用户名 String dbPassword = druid.getPassword(); // 数据库密码 @@ -111,9 +111,9 @@ public void initMQ_kafka() { /* 1.创建kafka生产者的配置信息 */ Properties props = new Properties(); /*2.指定连接的kafka集群, broker-list */ - props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "xxx:9092"); + props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "http://localhost:9092"); // TODO 改成你自己的 /*3.ack应答级别*/ - props.put(ProducerConfig.ACKS_CONFIG, "all"); + props.put(ProducerConfig.ACKS_CONFIG, "all"); // TODO 改成你自己的 /*4.重试次数*/ props.put(ProducerConfig.RETRIES_CONFIG, 3); /*5.批次大小,一次发送多少数据,当数据大于16k,生产者会发送数据到 kafka集群 */ @@ -128,11 +128,11 @@ public void initMQ_kafka() { DynamicDataSource dynDataSource = new DynamicDataSource(); - dynDataSource.setDatasourceName("kafka"); - dynDataSource.setDatabase("MQ"); + dynDataSource.setDatasourceName("kafka"); // TODO 改成你自己的 + dynDataSource.setDatabase("MQ"); // TODO 改成你自己的 dynDataSource.setSchema(""); // 不需要配置数据库名 - dynDataSource.setDbVersion("2.8.1"); // 后面做成动态的 - dynDataSource.setClusterName("kafka"); + dynDataSource.setDbVersion("2.8.1"); // TODO 改成你自己的 后面做成动态的 + dynDataSource.setClusterName("kafka"); // TODO 改成你自己的 dynDataSource.setProps(props); dataSourceMap.put(dynDataSource.getDatasourceName(), dynDataSource); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/KafkaSimpleProducer.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/KafkaSimpleProducer.java index 71c822f..7836841 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/KafkaSimpleProducer.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/java/apijson/demo/KafkaSimpleProducer.java @@ -12,7 +12,7 @@ @Slf4j public class KafkaSimpleProducer { - public static int sendMessage(String datasource, Properties props,String topic, Object message) { + public static int sendMessage(String datasource, Properties props, String topic, Object message) { KafkaProducer producer = null; try { /* 9.创建生产者对象 */ @@ -25,7 +25,7 @@ public static int sendMessage(String datasource, Properties props,String topic, e.printStackTrace(); throw new IllegalArgumentException("动态数据源配置错误 " + datasource); } finally { - if(producer != null) { + if (producer != null) { /* 关闭资源 */ producer.close(); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/resources/application.yml b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/resources/application.yml index 7d5a68e..46b9996 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/resources/application.yml +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Kafka/src/main/resources/application.yml @@ -22,9 +22,9 @@ spring: datasource: master: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3306/xxxx?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false - username: - password: + url: jdbc:mysql://localhost:3306?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false + username: root + password: apijson filter: stat: log-slow-sql: true From a99e6db4fccb9f4d98402bd2cde60ae795b2adda Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 18:12:07 +0800 Subject: [PATCH 21/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource-RediSQL=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../README.md | 33 ++++++++++++++++++- .../pom.xml | 18 ++++++---- .../java/apijson/demo/DataBaseConfig.java | 2 +- .../java/apijson/demo/DemoApplication.java | 19 ++++++----- .../java/apijson/demo/DemoController.java | 6 ++-- .../java/apijson/demo/DemoFunctionParser.java | 6 ++-- .../java/apijson/demo/DemoObjectParser.java | 4 +-- .../main/java/apijson/demo/DemoParser.java | 6 ++-- .../main/java/apijson/demo/DemoSQLConfig.java | 4 +-- .../java/apijson/demo/DemoSQLExecutor.java | 4 +-- .../java/apijson/demo/DynamicDataSource.java | 2 +- .../java/apijson/demo/JedisClusterUtil.java | 26 ++++++++++----- .../redisql/client/ParseRediSQLReply.java | 13 +++++--- .../src/main/resources/application.yml | 2 +- 14 files changed, 100 insertions(+), 45 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/README.md b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/README.md index a11a383..6cd1bdb 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/README.md +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/README.md @@ -12,9 +12,40 @@ Access、Request配置 访问操作权限
    rediSQL安装使用
    https://github.com/RedBeardLab/rediSQL +下载 rediSQL.so +https://github.com/RedBeardLab/rediSQL/releases + +启动 redis-server 并加载 RediSQL.so +```shell +redis-server --loadmodule RediSQL_.so +``` + +例如 +```shell +redis-server --loadmodule RediSQL_v1.1.1_9b110f__debug.so +``` + +```shell +redis-server --loadmodule RediSQL_v1.1.1_9b110f__release.so +``` + +```shell +redis-server --loadmodule RediSQL_v1.1.1_9b110f_x86_64-unknown-linux-gnu_debug.so +``` + +```shell +redis-server --loadmodule RediSQL_v1.1.1_9b110f_armv7-unknown-linux-gnueabihf_debug.so +``` + +```shell +redis-server --loadmodule RediSQL_v1.1.1_9b110f_arm-unknown-linux-gnueabi_debug.so +``` + 官方docker安装
    +```shell docker pull dalongrong/redisql docker run -itd --name redisql -p 6399:6379 dalongrong/redisql +``` rediSQL注意事项
    rediSQL免费版有后遥控制,每个小时会发送 redist info 统计信息
    @@ -30,7 +61,7 @@ https://www.youtube.com/watch?v=YRusC-AIq_g 将 libredis_sql.so 导入redis.config
    --loadmodule /etc/redis/libredis_sql.so
    rediSQL 创建数据库表命令
    -``` +```shell REDISQL.EXEC DB "CREATE TABLE REDIS_TABLE_A(id TEXT, A INT, B TEXT, C TEXT, userId TEXT);" REDISQL.EXEC DB "INSERT INTO REDIS_TABLE_A(id,A,B,C,userId) VALUES('1', 3, '1c', 'bar','1');" diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/pom.xml b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/pom.xml index 88b0678..f182dbc 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/pom.xml @@ -9,7 +9,7 @@ apijson.demo apijsondemo-multidatasource-rediSQL - 7.0.3 + 7.1.5 apijsondemo-multidatasource-rediSQL Demo project for testing APIJSON server based on SpringBoot @@ -17,6 +17,10 @@ UTF-8 UTF-8 + 17 + UTF-8 + 17 + 17 3.12.0 1.1.16 3.5.1 @@ -38,7 +42,6 @@ 2.6.6 3.5.2 3.7.1 - 1.8 @@ -46,12 +49,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -62,6 +65,7 @@ org.springframework.boot spring-boot-starter-web + 2.5.13 org.springframework @@ -147,6 +151,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.5.13 @@ -158,9 +163,10 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DataBaseConfig.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DataBaseConfig.java index 6e26153..aede54e 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DataBaseConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DataBaseConfig.java @@ -16,7 +16,7 @@ public String getPrimary() { return primary; } - public static DataBaseConfig getInstence() { + public static DataBaseConfig getInstance() { return SpringContextUtils.getBean(DataBaseConfig.class); } } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoApplication.java index ef58ecf..484375c 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoApplication.java @@ -25,9 +25,9 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; -import apijson.framework.APIJSONParser; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; +import apijson.framework.javax.APIJSONParser; import apijson.orm.AbstractFunctionParser; import apijson.orm.AbstractVerifier; import apijson.orm.FunctionParser; @@ -65,11 +65,14 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { - registry.addMapping("/**").allowedOriginPatterns("*").allowedMethods("*").allowCredentials(true) + registry.addMapping("/**") + .allowedOriginPatterns("*") + .allowedMethods("*") + .allowCredentials(true) .maxAge(3600); } }; @@ -84,17 +87,17 @@ public Parser createParser() { } @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public FunctionParser createFunctionParser() { + public FunctionParser createFunctionParser() { return new DemoFunctionParser(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } }; diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoController.java index c91c58f..fee8e14 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; @@ -46,10 +46,10 @@ */ @RestController @RequestMapping("") -public class DemoController extends APIJSONController { +public class DemoController extends APIJSONController { @Override - public Parser newParser(HttpSession session, RequestMethod method) { + public Parser newParser(HttpSession session, RequestMethod method) { return super.newParser(session, method).setNeedVerify(false); // TODO 这里关闭校验,方便新手快速测试,实际线上项目建议开启 } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoFunctionParser.java index 92e729c..bedcce9 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoFunctionParser.java @@ -7,12 +7,12 @@ import apijson.NotNull; import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONFunctionParser; -import apijson.framework.APIJSONVerifier; +import apijson.framework.javax.APIJSONFunctionParser; +import apijson.framework.javax.APIJSONVerifier; import lombok.extern.slf4j.Slf4j; @Slf4j -public class DemoFunctionParser extends APIJSONFunctionParser { +public class DemoFunctionParser extends APIJSONFunctionParser { public DemoFunctionParser() { this(null, null, 0, null, null); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoObjectParser.java index 627de64..eca903d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoObjectParser.java @@ -8,11 +8,11 @@ import apijson.NotNull; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; +import apijson.framework.javax.APIJSONObjectParser; import apijson.orm.Join; import apijson.orm.SQLConfig; -public class DemoObjectParser extends APIJSONObjectParser { +public class DemoObjectParser extends APIJSONObjectParser { public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoParser.java index e12333e..84325b2 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoParser.java @@ -3,8 +3,8 @@ import com.alibaba.fastjson.JSONObject; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; -import apijson.framework.APIJSONParser; +import apijson.framework.javax.APIJSONObjectParser; +import apijson.framework.javax.APIJSONParser; import apijson.orm.SQLConfig; public class DemoParser extends APIJSONParser { @@ -27,7 +27,7 @@ public DemoParser(RequestMethod method, boolean needVerify) { // } @Override - public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig, boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { + public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig, boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { return new DemoObjectParser(getSession(), request, parentPath, arrayConfig, isSubquery, isTable, isArrayMainTable).setMethod(getMethod()).setParser(this); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoSQLConfig.java index c8ba3c3..d8c97ec 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoSQLConfig.java @@ -19,7 +19,7 @@ import com.alibaba.fastjson.annotation.JSONField; import apijson.RequestMethod; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; import apijson.orm.AbstractSQLConfig; @@ -29,7 +29,7 @@ * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 * @author Lemon */ -public class DemoSQLConfig extends APIJSONSQLConfig { +public class DemoSQLConfig extends APIJSONSQLConfig { public DemoSQLConfig() { super(); diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoSQLExecutor.java index dce106f..b99b941 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -25,7 +25,7 @@ import apijson.NotNull; import apijson.StringUtil; import apijson.demo.resultSet.DataBuildResultSet; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; import lombok.extern.log4j.Log4j2; @@ -35,7 +35,7 @@ * @author Lemon */ @Log4j2 -public class DemoSQLExecutor extends APIJSONSQLExecutor { +public class DemoSQLExecutor extends APIJSONSQLExecutor { public static final String TAG = "DemoSQLExecutor"; // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DynamicDataSource.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DynamicDataSource.java index 88d6ed5..86ae5be 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DynamicDataSource.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/DynamicDataSource.java @@ -65,7 +65,7 @@ public static void addDataSource(DynamicDataSource detail) { public static DynamicDataSource getDetail(String datasource) { if (datasource == null) { // 默认数据源 - datasource = DataBaseConfig.getInstence().getPrimary(); + datasource = DataBaseConfig.getInstance().getPrimary(); } // 不存在交给框架处理 return dataSourceMap.get(datasource); diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/JedisClusterUtil.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/JedisClusterUtil.java index 8f973a9..09b6e6f 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/JedisClusterUtil.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/apijson/demo/JedisClusterUtil.java @@ -51,12 +51,22 @@ public class JedisClusterUtil { */ public void createJedisPool() { Set jedisClusterNode = new HashSet(); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6371)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6372)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6373)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6374)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6375)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6376)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6379)); + + // TODO 至少启动 6 个节点,参考教程 https://medium.com/@bertrandoubida/setting-up-redis-cluster-on-macos-cf35a21465a + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6380)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6381)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6382)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6383)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6384)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6385)); + + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6371)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6372)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6373)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6374)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6375)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6376)); JedisPoolConfig poolConfig = new JedisPoolConfig(); /* * 注意: 在高版本的jedis jar包,比如本版本2.9.0,JedisPoolConfig没有setMaxActive和setMaxWait属性了 @@ -73,7 +83,8 @@ public void createJedisPool() { int maxAttempts = 5; // JedisCluster jc = new JedisCluster(jedisClusterNode, DEFAULT_TIMEOUT, // DEFAULT_TIMEOUT, DEFAULT_REDIRECTIONS, "cluster", DEFAULT_CONFIG); - jedisCluster = new JedisCluster(jedisClusterNode, connectionTimeout, soTimeout, maxAttempts, PASSWORD, poolConfig); + jedisCluster = new JedisCluster(jedisClusterNode, connectionTimeout, soTimeout, maxAttempts, poolConfig); // TODO 如果需要密码则用下面一行代码,并设置正确的密码 + //jedisCluster = new JedisCluster(jedisClusterNode, connectionTimeout, soTimeout, maxAttempts, PASSWORD, poolConfig); log.info("节点信息:{}", jedisCluster.getClusterNodes().keySet()); } @@ -92,7 +103,6 @@ public void setJedis(String db) { public Jedis getJedis(String key) { int slot = JedisClusterCRC16.getSlot(key); return jedisCluster.getConnectionFromSlot(slot); - } private String ok_returns(RediSQLCommand.ModuleCommand cmd, String... args) { diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/com/redbeardlab/redisql/client/ParseRediSQLReply.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/com/redbeardlab/redisql/client/ParseRediSQLReply.java index 505e56c..0ae0627 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/com/redbeardlab/redisql/client/ParseRediSQLReply.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/java/com/redbeardlab/redisql/client/ParseRediSQLReply.java @@ -4,18 +4,23 @@ public class ParseRediSQLReply { public static boolean done_reply(List reply) { - if (reply.size() != 2) { return false; } - if ((reply.get(0) instanceof byte[]) && (new String((byte[])reply.get(0)).equals("DONE"))) { + if (reply == null || reply.size() != 2) { + return false; + } + + Object first = reply.get(0); + if ((first instanceof byte[]) && (new String((byte[]) first).equals("DONE"))) { return (reply.get(1) instanceof Long); } + return false; } public static Long how_many_done(List reply) { - if (reply == null || reply.size() == 0 ||done_reply(reply) == false) { + if (reply == null || reply.isEmpty() || ! done_reply(reply)) { return 0L; } - return (Long)reply.get(1); + return (Long) reply.get(1); } public static boolean is_integer(Object o) { diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/resources/application.yml b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/resources/application.yml index dc156f9..46b9996 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/resources/application.yml +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-RediSQL/src/main/resources/application.yml @@ -22,7 +22,7 @@ spring: datasource: master: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3306/sys?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false + url: jdbc:mysql://localhost:3306?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false username: root password: apijson filter: From 00adec8fb42dddbf2821b2e31335550d77c9e407 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 18:22:21 +0800 Subject: [PATCH 22/80] =?UTF-8?q?Java=EF=BC=9ARedis=20=E5=BD=93=E7=BC=93?= =?UTF-8?q?=E5=AD=98=E7=94=A8=E7=9A=84=20Demo=20=E5=AE=8C=E5=96=84?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=AF=B4=E6=98=8E=E3=80=81=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijson-framework=20?= =?UTF-8?q?=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONDemo-Redis/pom.xml | 15 +++++++++------ .../java/apijson/demo/DemoApplication.java | 18 +++++++++--------- .../main/java/apijson/demo/DemoController.java | 2 +- .../main/java/apijson/demo/DemoSQLConfig.java | 2 +- .../java/apijson/demo/DemoSQLExecutor.java | 17 +++++++++++------ 5 files changed, 31 insertions(+), 23 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-Redis/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Redis/pom.xml index 8631c69..0371ad5 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Redis/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-Redis/pom.xml @@ -5,7 +5,7 @@ apijson.demo apijson-demo-redis - 7.0.3 + 7.1.5 APIJSONDemo-Redis Demo project for Testing APIJSON Server based on SpringBoot @@ -13,7 +13,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 @@ -21,12 +24,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -88,8 +91,8 @@ maven-compiler-plugin 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoApplication.java index d245198..4f762b9 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoApplication.java @@ -27,8 +27,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.SQLConfig; @@ -60,15 +60,15 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") - .allowedOriginPatterns("*") - .allowedMethods("*") - .allowCredentials(true) - .maxAge(3600); + .allowedOriginPatterns("*") + .allowedMethods("*") + .allowCredentials(true) + .maxAge(3600); } }; } @@ -77,12 +77,12 @@ public void addCorsMappings(CorsRegistry registry) { // 使用本项目的自定义处理类 APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } }; diff --git a/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoController.java index 2e5f213..e2e2b9f 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoSQLConfig.java index e131d0b..9886332 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoSQLConfig.java @@ -16,7 +16,7 @@ import com.alibaba.fastjson.annotation.JSONField; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置 diff --git a/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoSQLExecutor.java index e6ba5bf..892a052 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-Redis/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -30,8 +30,8 @@ import java.util.List; import java.util.concurrent.TimeUnit; -import static apijson.framework.APIJSONConstant.PRIVACY_; -import static apijson.framework.APIJSONConstant.USER_; +import static apijson.framework.javax.APIJSONConstant.PRIVACY_; +import static apijson.framework.javax.APIJSONConstant.USER_; /** @@ -46,8 +46,13 @@ public class DemoSQLExecutor extends APIJSONSQLExecutor { // Redis 缓存 <<<<<<<<<<<<<<<<<<<<<<< public static final RedisTemplate REDIS_TEMPLATE; static { + RedisStandaloneConfiguration config = new RedisStandaloneConfiguration("127.0.0.1", 6379); // TODO 改成你自己的 + // 如果需要账号及密码则按以下方式设置 + // config.setUsername("root"); // TODO 改成你自己的 + // config.setPassword("apijson"); // TODO 改成你自己的 + REDIS_TEMPLATE = new RedisTemplate<>(); - REDIS_TEMPLATE.setConnectionFactory(new JedisConnectionFactory(new RedisStandaloneConfiguration("127.0.0.1", 6379))); + REDIS_TEMPLATE.setConnectionFactory(new JedisConnectionFactory(config)); REDIS_TEMPLATE.setKeySerializer(new StringRedisSerializer()); REDIS_TEMPLATE.setHashValueSerializer(new GenericToStringSerializer<>(Serializable.class)); REDIS_TEMPLATE.setValueSerializer(new GenericToStringSerializer<>(Serializable.class)); @@ -57,7 +62,7 @@ public class DemoSQLExecutor extends APIJSONSQLExecutor { // 可重写以下方法,支持 Redis 等单机全局缓存或分布式缓存 @Override - public List getCache(String sql, SQLConfig config) { + public List getCache(String sql, SQLConfig config) { List list = super.getCache(sql, config); if (list == null) { list = JSON.parseArray(REDIS_TEMPLATE.opsForValue().get(sql), JSONObject.class); @@ -66,7 +71,7 @@ public List getCache(String sql, SQLConfig config) { } @Override - public synchronized void putCache(String sql, List list, SQLConfig config) { + public synchronized void putCache(String sql, List list, SQLConfig config) { super.putCache(sql, list, config); String table = config != null && config.isMain() ? config.getTable() : null; @@ -80,7 +85,7 @@ public synchronized void putCache(String sql, List list, SQLConfig c } @Override - public synchronized void removeCache(String sql, SQLConfig config) { + public synchronized void removeCache(String sql, SQLConfig config) { super.removeCache(sql, config); if (config.getMethod() == RequestMethod.DELETE) { // 避免缓存击穿 REDIS_TEMPLATE.expire(sql, 60, TimeUnit.SECONDS); From 81a28462c114873fa2bc58bd63d877204c081d4e Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 18:29:45 +0800 Subject: [PATCH 23/80] =?UTF-8?q?Java=EF=BC=9AAPIJSONDemo-SpringBoot3=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONDemo-SpringBoot3/pom.xml | 9 ++++++--- .../main/java/apijson/demo/DemoApplication.java | 2 +- .../java/apijson/demo/DemoFunctionParser.java | 2 +- .../main/java/apijson/demo/DemoObjectParser.java | 2 +- .../src/main/java/apijson/demo/DemoParser.java | 16 +++++++++------- .../main/java/apijson/demo/DemoSQLConfig.java | 4 ++-- 6 files changed, 20 insertions(+), 15 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/pom.xml b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/pom.xml index 9a0eefb..b4bbaa9 100644 --- a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/pom.xml @@ -5,14 +5,14 @@ org.springframework.boot spring-boot-starter-parent - 3.0.6 + 3.2.5 apijson.demo apijson-demo apijson-demo Demo project for Spring Boot - 7.0.3 + 7.1.0 17 @@ -28,7 +28,7 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 @@ -42,11 +42,13 @@ org.springframework.boot spring-boot-starter-web + 3.2.5 org.springframework.boot spring-boot-starter-test + 3.2.5 test @@ -56,6 +58,7 @@ org.springframework.boot spring-boot-maven-plugin + 3.2.5 diff --git a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoApplication.java index 2848bf2..ab8e9de 100755 --- a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoApplication.java @@ -57,7 +57,7 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { diff --git a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoFunctionParser.java index cefa94f..ef80008 100644 --- a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoFunctionParser.java @@ -24,7 +24,7 @@ * 具体见 https://github.com/Tencent/APIJSON/issues/101 * @author Lemon */ -public class DemoFunctionParser extends AbstractFunctionParser { +public class DemoFunctionParser extends AbstractFunctionParser { public static final String TAG = "DemoFunctionParser"; diff --git a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoObjectParser.java index aae26bc..8c511ec 100644 --- a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoObjectParser.java @@ -30,7 +30,7 @@ /**对象解析器,用来简化 Parser * @author Lemon */ -public class DemoObjectParser extends AbstractObjectParser { +public class DemoObjectParser extends AbstractObjectParser { public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { diff --git a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoParser.java index b94c1e5..268fb16 100644 --- a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoParser.java @@ -85,24 +85,24 @@ public Parser createParser() { } @Override - public ObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig + public ObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { return new DemoObjectParser(getSession(), request, parentPath, arrayConfig , isSubquery, isTable, isArrayMainTable).setMethod(getMethod()).setParser(this); } @Override - public FunctionParser createFunctionParser() { + public FunctionParser createFunctionParser() { return new DemoFunctionParser(); } @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } @@ -111,11 +111,13 @@ public Verifier createVerifier() { return new DemoVerifier(); } - private FunctionParser functionParser; - public FunctionParser getFunctionParser() { + private FunctionParser functionParser; + public FunctionParser getFunctionParser() { return functionParser; } - public Object onFunctionParse(String key, String function, String parentPath, String currentName, JSONObject currentObject, boolean containRaw) throws Exception { + + public Object onFunctionParse(String key, String function, String parentPath, String currentName + , JSONObject currentObject, boolean containRaw) throws Exception { if (functionParser == null) { functionParser = createFunctionParser(); functionParser.setMethod(getMethod()); diff --git a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoSQLConfig.java index 0088190..72b79a4 100755 --- a/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-SpringBoot3/src/main/java/apijson/demo/DemoSQLConfig.java @@ -109,8 +109,8 @@ protected void onJoinNotRelation(String sql, String quote, Join j, String jt, Li // 开启 JOIN ON t1.c1 != t2.c2 等不等式关联 super.onJoinNotRelation(sql, quote, j, jt, onList, on); } @Override - protected void onJoinComplextRelation(String sql, String quote, Join j, String jt, List onList, On on) { - // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplextRelation(sql, quote, j, jt, onList, on); + protected void onJoinComplexRelation(String sql, String quote, Join j, String jt, List onList, On on) { + // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplexRelation(sql, quote, j, jt, onList, on); } From 216b31af644e17b9f843e1dc17d25341ff2e7a65 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 18:35:16 +0800 Subject: [PATCH 24/80] =?UTF-8?q?Java=EF=BC=9AAPIJSONSimpleDemo-SpringBoot?= =?UTF-8?q?3=20=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20ap?= =?UTF-8?q?ijson-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONSimpleDemo-SpringBoot3/README.md | 14 +++++++------- .../APIJSONSimpleDemo-SpringBoot3/pom.xml | 12 ++++++++---- .../apijsondemo/ApijsonDemoApplication.java | 6 +++--- .../com/example/apijsondemo/DemoSQLExecutor.java | 8 ++++---- .../example/apijsondemo/config/DemoSQLConfig.java | 6 ++---- .../apijsondemo/controller/DemoController.java | 4 ++-- .../src/main/resources/application.yml | 6 +++--- 7 files changed, 29 insertions(+), 27 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/README.md b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/README.md index 5899a23..c36388b 100644 --- a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/README.md +++ b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/README.md @@ -1,17 +1,17 @@ # 环境 -- SpringBoot3 -- java17 -- APIJSON 6.1.0 -- apijson-framework 6.1.0_springboot3 +- SpringBoot 3 +- Java 17 +- APIJSON 7.1.0 +- apijson-framework 7.1.5 -> 使用的apijson 版本较旧,可自行升级到最新的apijson-springboot3版本,因为没做测试,这里就先不升级了。 +> 使用的 apijson 版本较旧,可自行升级到最新的 apijson-springboot3 版本,因为没做测试,这里就先不升级了。 # 和其他例子的主要区别 -- 复杂度介于APIJSONBoot 和 APIJSONDemo 之间 +- 复杂度介于 APIJSONBoot 和 APIJSONDemo 之间 - 完成了一些常用配置 - 简单鉴权 - - samesite策略 + - samesite 策略 - HikariCP 多数据源配置 - 解决数字返回前端精度丢失问题 \ No newline at end of file diff --git a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/pom.xml b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/pom.xml index 2f4439b..07a2b18 100644 --- a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/pom.xml +++ b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/pom.xml @@ -5,13 +5,13 @@ org.springframework.boot spring-boot-starter-parent - 3.2.1 + 3.2.5 com.example apijson-demo - 1.2.1 + 7.1.5 apijson-demo Demo project for Spring Boot @@ -21,17 +21,20 @@ org.springframework.boot spring-boot-starter-web + 3.2.5 org.springframework.boot spring-boot-devtools + 3.2.5 runtime true org.springframework.boot spring-boot-starter-test + 3.2.5 test @@ -39,12 +42,12 @@ com.github.Tencent APIJSON - 6.1.0 + 7.1.0 com.github.APIJSON apijson-framework - 6.1.0_springboot3 + 7.1.5 @@ -73,6 +76,7 @@ org.springframework.boot spring-boot-maven-plugin + 3.2.5 diff --git a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/ApijsonDemoApplication.java b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/ApijsonDemoApplication.java index a901f01..3c395b3 100644 --- a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/ApijsonDemoApplication.java +++ b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/ApijsonDemoApplication.java @@ -42,7 +42,7 @@ public static void main(String[] args) throws Exception { // TODO 需要设置限制条件 // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { @@ -60,12 +60,12 @@ public void addCorsMappings(CorsRegistry registry) { // 使用本项目的自定义处理类 APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } }; diff --git a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/DemoSQLExecutor.java index 1a9e448..51b2287 100644 --- a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/DemoSQLExecutor.java @@ -24,7 +24,7 @@ import com.alibaba.fastjson.JSONObject; import apijson.Log; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; /** @@ -33,11 +33,11 @@ * * @author Lemon */ -public class DemoSQLExecutor extends APIJSONSQLExecutor { +public class DemoSQLExecutor extends APIJSONSQLExecutor { public static final String TAG = "SQL执行器"; // 解决 id 精度丢失 问题 - protected Object getValue(SQLConfig config, ResultSet rs, ResultSetMetaData rsmd, int tablePosition, + protected Object getValue(SQLConfig config, ResultSet rs, ResultSetMetaData rsmd, int tablePosition, JSONObject table, int columnIndex, String lable, Map childMap) throws Exception { Object value = super.getValue(config, rs, rsmd, tablePosition, table, columnIndex, lable, childMap); @@ -60,7 +60,7 @@ protected Object getValue(SQLConfig config, ResultSet rs, ResultSetMetaData rsmd // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, @Override - public Connection getConnection(SQLConfig config) throws Exception { + public Connection getConnection(SQLConfig config) throws Exception { String datasource = config.getDatasource(); Log.d(TAG, "getConnection config.getDatasource() = " + datasource); diff --git a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/config/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/config/DemoSQLConfig.java index 4cbc752..3eb94af 100644 --- a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/config/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/config/DemoSQLConfig.java @@ -1,14 +1,12 @@ package com.example.apijsondemo.config; -import com.alibaba.fastjson.annotation.JSONField; - import apijson.framework.APIJSONSQLConfig; -public class DemoSQLConfig extends APIJSONSQLConfig { +public class DemoSQLConfig extends APIJSONSQLConfig { static { DEFAULT_DATABASE = DATABASE_MYSQL; // 用的数据库软件 - DEFAULT_SCHEMA = "apijson"; // 数据库名 + DEFAULT_SCHEMA = "sys"; // 数据库名 // 表名和数据库不一致的,需要配置映射关系。只使用 APIJSONORM 时才需要; // 如果用了 apijson-framework 且调用了 APIJSONApplication.init 则不需要 diff --git a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/controller/DemoController.java b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/controller/DemoController.java index 90e727a..87df8c8 100644 --- a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/controller/DemoController.java +++ b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/java/com/example/apijsondemo/controller/DemoController.java @@ -70,7 +70,7 @@ public Parser newParser(HttpSession session, RequestMethod method) { * @param session * @return */ - @PostMapping(value = "crud/{method}") // 如果和其它的接口 URL 冲突,可以加前缀,例如改为 crud/{method} 或 Controller 注解 + @PostMapping(value = "{method}") // 如果和其它的接口 URL 冲突,可以加前缀,例如改为 crud/{method} 或 Controller 注解 @Override public String crud(@PathVariable String method, @RequestBody String request, HttpSession session) { return super.crud(method, request, session); @@ -86,7 +86,7 @@ public String crud(@PathVariable String method, @RequestBody String request, Htt * @param session * @return */ - @PostMapping("crud/{method}/{tag}") // 如果和其它的接口 URL 冲突,可以加前缀,例如改为 crud/{method}/{tag} 或 Controller 注解 + @PostMapping("{method}/{tag}") // 如果和其它的接口 URL 冲突,可以加前缀,例如改为 crud/{method}/{tag} 或 Controller 注解 @Override public String crudByTag(@PathVariable String method, @PathVariable String tag, @RequestParam Map params, @RequestBody String request, HttpSession session) { diff --git a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/resources/application.yml b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/resources/application.yml index d4cb79c..e76aa2a 100644 --- a/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/resources/application.yml +++ b/APIJSON-Java-Server/APIJSONSimpleDemo-SpringBoot3/src/main/resources/application.yml @@ -12,18 +12,18 @@ spring: driver-class-name: com.mysql.cj.jdbc.Driver jdbc-url: jdbc:mysql://127.0.0.1:3306 username: root - password: 123456 + password: apijson db1: type: com.zaxxer.hikari.HikariDataSource driver-class-name: com.mysql.cj.jdbc.Driver jdbc-url: jdbc:mysql://127.0.0.1:3306 username: root - password: 123456 + password: apijson db2: type: com.zaxxer.hikari.HikariDataSource driver-class-name: com.mysql.cj.jdbc.Driver jdbc-url: jdbc:mysql://127.0.0.1:3306 username: root - password: 123456 + password: apijson From febfac887413f064c4da5b8f26074d9a2d331b61 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 18:38:56 +0800 Subject: [PATCH 25/80] =?UTF-8?q?Java=EF=BC=9AAPIJSONDemo-Presto=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONDemo-Presto/pom.xml | 15 +++++++++------ .../main/java/apijson/demo/DemoApplication.java | 8 ++++---- .../main/java/apijson/demo/DemoController.java | 2 +- .../src/main/java/apijson/demo/DemoSQLConfig.java | 2 +- 4 files changed, 15 insertions(+), 12 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-Presto/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Presto/pom.xml index 2835b39..0f9c315 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Presto/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-Presto/pom.xml @@ -5,7 +5,7 @@ apijson.demo apijson-demo - 7.0.3 + 7.1.5 APIJSONDemo-Presto Demo project for testing APIJSON server based on SpringBoot @@ -13,7 +13,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 @@ -21,12 +24,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -71,8 +74,8 @@ maven-compiler-plugin 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoApplication.java index efd5272..c57051b 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoApplication.java @@ -26,8 +26,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.SQLConfig; @@ -60,7 +60,7 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { @@ -77,7 +77,7 @@ public void addCorsMappings(CorsRegistry registry) { // 使用本项目的自定义处理类 APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } }; diff --git a/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoController.java index c91c58f..aa5287d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoSQLConfig.java index 6bf6751..d4b7b73 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-Presto/src/main/java/apijson/demo/DemoSQLConfig.java @@ -16,7 +16,7 @@ import com.alibaba.fastjson.annotation.JSONField; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置 From 1b0de994ab626d2b767bf7a9a2419d72862edb7f Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 18:50:33 +0800 Subject: [PATCH 26/80] =?UTF-8?q?Java=EF=BC=9AAPIJSONDemo-RawSQL=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=20=E2=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONDemo-RawSQL/pom.xml | 17 ++++++++++------- .../main/java/apijson/demo/DemoApplication.java | 12 ++++++------ .../main/java/apijson/demo/DemoController.java | 2 +- .../java/apijson/demo/DemoFunctionParser.java | 8 ++++---- .../main/java/apijson/demo/DemoSQLConfig.java | 4 ++-- .../main/java/apijson/demo/DemoSQLExecutor.java | 6 +++--- .../src/main/resources/application.yml | 4 ++-- 7 files changed, 28 insertions(+), 25 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-RawSQL/pom.xml b/APIJSON-Java-Server/APIJSONDemo-RawSQL/pom.xml index 85b273b..be4a1d9 100644 --- a/APIJSON-Java-Server/APIJSONDemo-RawSQL/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-RawSQL/pom.xml @@ -5,7 +5,7 @@ apijson.demo apijson-demo-druid-rawSQL jar - 7.0.3 + 7.1.5 APIJSONDemo-Druid Demo project for Testing APIJSON Server based on SpringBoot @@ -13,7 +13,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 @@ -21,17 +24,17 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 com.github.APIJSON apijson-router - 2.0.3 + 2.1.5 @@ -82,8 +85,8 @@ maven-compiler-plugin 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoApplication.java index c8d4815..53657ac 100644 --- a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoApplication.java @@ -28,8 +28,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.FunctionParser; import apijson.orm.SQLConfig; import apijson.orm.SQLExecutor; @@ -87,19 +87,19 @@ public void addCorsMappings(CorsRegistry registry) { static { // 使用本项目的自定义处理类 - APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { + APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } @Override - public FunctionParser createFunctionParser() { + public FunctionParser createFunctionParser() { return new DemoFunctionParser(); } }; diff --git a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoController.java index 0c64271..8be04a5 100644 --- a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoController.java @@ -30,7 +30,7 @@ import apijson.RequestMethod; import apijson.StringUtil; import apijson.orm.Parser; -import apijson.router.APIJSONRouterController; +import apijson.router.javax.APIJSONRouterController; /**请求路由入口控制器,包括通用增删改查接口等,转交给 APIJSON 的 Parser 来处理 diff --git a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoFunctionParser.java index f62a849..370877e 100644 --- a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoFunctionParser.java @@ -16,11 +16,11 @@ import apijson.NotNull; import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONConstant; -import apijson.framework.APIJSONFunctionParser; -import apijson.router.APIJSONRouterVerifier; +import apijson.framework.javax.APIJSONConstant; +import apijson.framework.javax.APIJSONFunctionParser; +import apijson.router.javax.APIJSONRouterVerifier; -public class DemoFunctionParser extends APIJSONFunctionParser { +public class DemoFunctionParser extends APIJSONFunctionParser { public DemoFunctionParser() { this(null, null, 0, null, null); } diff --git a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoSQLConfig.java index 1a8a322..c20d1b7 100644 --- a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoSQLConfig.java @@ -14,7 +14,7 @@ package apijson.demo; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置,这里不配置数据库账号密码等信息,改为使用 DemoDataSourceConfig 来配置 @@ -23,7 +23,7 @@ * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 * @author Lemon */ -public class DemoSQLConfig extends APIJSONSQLConfig { +public class DemoSQLConfig extends APIJSONSQLConfig { static { DEFAULT_DATABASE = DATABASE_MYSQL; // TODO 默认数据库类型,改成你自己的 diff --git a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoSQLExecutor.java index e6378b7..e944880 100644 --- a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -18,7 +18,7 @@ import javax.sql.DataSource; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; @@ -26,12 +26,12 @@ * 具体见 https://github.com/Tencent/APIJSON/issues/151 * @author Lemon */ -public class DemoSQLExecutor extends APIJSONSQLExecutor { +public class DemoSQLExecutor extends APIJSONSQLExecutor { public static final String TAG = "DemoSQLExecutor"; // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, dbPassword @Override - public Connection getConnection(SQLConfig config) throws Exception { + public Connection getConnection(SQLConfig config) throws Exception { // Log.d(TAG, "getConnection config.getDatasource() = " + config.getDatasource()); String key = config.getDatasource() + "-" + config.getDatabase(); diff --git a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/resources/application.yml b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/resources/application.yml index bdd4450..48ad937 100644 --- a/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/resources/application.yml +++ b/APIJSON-Java-Server/APIJSONDemo-RawSQL/src/main/resources/application.yml @@ -7,9 +7,9 @@ spring: # password: apijson druid: driverClassName: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3306/apijson?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8 + url: jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8 username: root - password: root + password: apijson type: com.alibaba.druid.pool.DruidDataSource initialSize: 5 minIdle: 5 From 43f412d07cb30f7992e4e6dc140abbc5660d141b Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 20:44:31 +0800 Subject: [PATCH 27/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource-Redis=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONDemo-MultiDataSource-Redis/pom.xml | 18 ++++++++---- .../java/apijson/demo/DemoApplication.java | 19 +++++++----- .../java/apijson/demo/DemoController.java | 6 ++-- .../java/apijson/demo/DemoFunctionParser.java | 6 ++-- .../java/apijson/demo/DemoObjectParser.java | 6 ++-- .../main/java/apijson/demo/DemoParser.java | 6 ++-- .../main/java/apijson/demo/DemoSQLConfig.java | 6 ++-- .../java/apijson/demo/DemoSQLExecutor.java | 14 ++++----- .../java/apijson/demo/DynamicDataSource.java | 2 +- .../apijson/demo/redis/RedisDataSource.java | 29 ++++++++++++------- .../src/main/resources/application.yml | 2 +- 11 files changed, 66 insertions(+), 48 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/pom.xml b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/pom.xml index 75c7624..a6d366d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/pom.xml @@ -9,7 +9,7 @@ apijson.demo apijsondemo-multidatasource-redis - 7.0.3 + 7.1.5 apijsondemo-multidatasource-redis Demo project for testing APIJSON server based on SpringBoot @@ -17,6 +17,10 @@ UTF-8 UTF-8 + 17 + UTF-8 + 17 + 17 3.12.0 1.1.16 3.5.1 @@ -38,7 +42,6 @@ 2.6.6 3.5.2 3.7.1 - 1.8 @@ -46,12 +49,12 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 @@ -62,6 +65,7 @@ org.springframework.boot spring-boot-starter-web + 2.5.13 org.springframework @@ -147,6 +151,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.5.13 @@ -158,9 +163,10 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoApplication.java index 8e305a6..919d518 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoApplication.java @@ -27,9 +27,9 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; -import apijson.framework.APIJSONParser; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; +import apijson.framework.javax.APIJSONParser; import apijson.orm.AbstractFunctionParser; import apijson.orm.AbstractVerifier; import apijson.orm.FunctionParser; @@ -67,7 +67,7 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void configureContentNegotiation(ContentNegotiationConfigurer configurer) { @@ -77,7 +77,10 @@ public void configureContentNegotiation(ContentNegotiationConfigurer configurer) @Override public void addCorsMappings(CorsRegistry registry) { - registry.addMapping("/**").allowedOriginPatterns("*").allowedMethods("*").allowCredentials(true) + registry.addMapping("/**") + .allowedOriginPatterns("*") + .allowedMethods("*") + .allowCredentials(true) .maxAge(3600); } }; @@ -92,17 +95,17 @@ public Parser createParser() { } @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public FunctionParser createFunctionParser() { + public FunctionParser createFunctionParser() { return new DemoFunctionParser(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } }; diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoController.java index c91c58f..fee8e14 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; @@ -46,10 +46,10 @@ */ @RestController @RequestMapping("") -public class DemoController extends APIJSONController { +public class DemoController extends APIJSONController { @Override - public Parser newParser(HttpSession session, RequestMethod method) { + public Parser newParser(HttpSession session, RequestMethod method) { return super.newParser(session, method).setNeedVerify(false); // TODO 这里关闭校验,方便新手快速测试,实际线上项目建议开启 } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoFunctionParser.java index 92e729c..bedcce9 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoFunctionParser.java @@ -7,12 +7,12 @@ import apijson.NotNull; import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONFunctionParser; -import apijson.framework.APIJSONVerifier; +import apijson.framework.javax.APIJSONFunctionParser; +import apijson.framework.javax.APIJSONVerifier; import lombok.extern.slf4j.Slf4j; @Slf4j -public class DemoFunctionParser extends APIJSONFunctionParser { +public class DemoFunctionParser extends APIJSONFunctionParser { public DemoFunctionParser() { this(null, null, 0, null, null); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoObjectParser.java index 627de64..3021be2 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoObjectParser.java @@ -8,13 +8,13 @@ import apijson.NotNull; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; +import apijson.framework.javax.APIJSONObjectParser; import apijson.orm.Join; import apijson.orm.SQLConfig; -public class DemoObjectParser extends APIJSONObjectParser { +public class DemoObjectParser extends APIJSONObjectParser { - public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig + public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { super(session, request, parentPath, arrayConfig, isSubquery, isTable, isArrayMainTable); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoParser.java index e12333e..3cf74da 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoParser.java @@ -3,8 +3,8 @@ import com.alibaba.fastjson.JSONObject; import apijson.RequestMethod; -import apijson.framework.APIJSONObjectParser; -import apijson.framework.APIJSONParser; +import apijson.framework.javax.APIJSONObjectParser; +import apijson.framework.javax.APIJSONParser; import apijson.orm.SQLConfig; public class DemoParser extends APIJSONParser { @@ -27,7 +27,7 @@ public DemoParser(RequestMethod method, boolean needVerify) { // } @Override - public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig, boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { + public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig, boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { return new DemoObjectParser(getSession(), request, parentPath, arrayConfig, isSubquery, isTable, isArrayMainTable).setMethod(getMethod()).setParser(this); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoSQLConfig.java index c8ba3c3..12c658e 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoSQLConfig.java @@ -19,7 +19,7 @@ import com.alibaba.fastjson.annotation.JSONField; import apijson.RequestMethod; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; import apijson.orm.AbstractSQLConfig; @@ -29,7 +29,7 @@ * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 * @author Lemon */ -public class DemoSQLConfig extends APIJSONSQLConfig { +public class DemoSQLConfig extends APIJSONSQLConfig { public DemoSQLConfig() { super(); @@ -52,7 +52,7 @@ public DemoSQLConfig(RequestMethod method, String table) { SIMPLE_CALLBACK = new SimpleCallback() { @Override - public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, String schema, + public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, String schema, String datasource, String table) { return new DemoSQLConfig(method, table); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoSQLExecutor.java index 9de925b..f5beb43 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -36,7 +36,7 @@ import apijson.demo.redis.RedisClusterModelEnum; import apijson.demo.redis.RedisExecutor; import apijson.demo.resultSet.DataBuildResultSet; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; import lombok.extern.log4j.Log4j2; import redis.clients.jedis.ListPosition; @@ -51,13 +51,13 @@ * @author Lemon */ @Log4j2 -public class DemoSQLExecutor extends APIJSONSQLExecutor { +public class DemoSQLExecutor extends APIJSONSQLExecutor { public static final String TAG = "DemoSQLExecutor"; // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, // dbPassword @Override - public Connection getConnection(SQLConfig config) throws Exception { + public Connection getConnection(SQLConfig config) throws Exception { String datasource = config.getDatasource(); Log.d(TAG, "getConnection config.getDatasource() = " + datasource); @@ -71,7 +71,7 @@ public Connection getConnection(SQLConfig config) throws Exception { } @Override - public ResultSet executeQuery(@NotNull SQLConfig config, String sql) throws Exception { + public ResultSet executeQuery(@NotNull SQLConfig config, String sql) throws Exception { if (config.isRedis()) { return redisExecuteQuery(config, sql); } @@ -80,7 +80,7 @@ public ResultSet executeQuery(@NotNull SQLConfig config, String sql) throws Exce @Override - public int executeUpdate(@NotNull SQLConfig config, String sql) throws Exception { + public int executeUpdate(@NotNull SQLConfig config, String sql) throws Exception { if (config.isRedis()) { return redisExecuteUpdate(config, sql).intValue(); } @@ -88,7 +88,7 @@ public int executeUpdate(@NotNull SQLConfig config, String sql) throws Exception } @SuppressWarnings("unchecked") - public ResultSet redisExecuteQuery(@NotNull SQLConfig config, String sql) throws Exception { + public ResultSet redisExecuteQuery(@NotNull SQLConfig config, String sql) throws Exception { try { List> rsData = new ArrayList<>(); List headers = new ArrayList<>(); @@ -517,7 +517,7 @@ public ResultSet redisExecuteQuery(@NotNull SQLConfig config, String sql) throws return null; } - private Long redisExecuteUpdate(@NotNull SQLConfig config, String sql) throws Exception { + private Long redisExecuteUpdate(@NotNull SQLConfig config, String sql) throws Exception { try { RedisExecutor redisExecutor = DynamicDataSource.getDetail(config.getDatasource()).getRedisExecutor(); String configTable = config.getTable(); diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DynamicDataSource.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DynamicDataSource.java index de77afc..e7ee413 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DynamicDataSource.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/DynamicDataSource.java @@ -93,7 +93,7 @@ public void run(ApplicationArguments args) throws Exception { initRedisSingle(); - initRedisSentinel(); + //initRedisSentinel(); } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/redis/RedisDataSource.java b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/redis/RedisDataSource.java index 47b4b11..deed659 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/redis/RedisDataSource.java +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/java/apijson/demo/redis/RedisDataSource.java @@ -59,7 +59,7 @@ public void createSingle() { } public void createSentinel() { - Set sentinels = new HashSet(Arrays.asList("xxx:26379", "xxx:26380", "xxx:26381")); + Set sentinels = new HashSet(Arrays.asList("localhost:26379", "localhost:26380", "localhost:26381")); // 创建Jedis配置对象 String password = ""; Integer port = 6379; @@ -72,7 +72,8 @@ public void createSentinel() { poolConfig.setTestOnReturn(TEST_ON_RETURN); String masterName = "mymaster"; // 初始化 - sentinelPool = new JedisSentinelPool(masterName, sentinels, poolConfig, TIMEOUT, password); + sentinelPool = new JedisSentinelPool(masterName, sentinels, poolConfig, TIMEOUT); + //sentinelPool = new JedisSentinelPool(masterName, sentinels, poolConfig, TIMEOUT, password); } /** @@ -81,12 +82,20 @@ public void createSentinel() { public void createCluster() { Set jedisClusterNode = new HashSet(); String password = "apijson"; - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6371)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6372)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6373)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6374)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6375)); - jedisClusterNode.add(new HostAndPort("127.0.0.1", 6376)); + + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6380)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6381)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6382)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6383)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6384)); + jedisClusterNode.add(new HostAndPort("127.0.0.1", 6385)); + + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6371)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6372)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6373)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6374)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6375)); + //jedisClusterNode.add(new HostAndPort("127.0.0.1", 6376)); JedisPoolConfig poolConfig = new JedisPoolConfig(); /* * 注意: 在高版本的jedis jar包,比如本版本2.9.0,JedisPoolConfig没有setMaxActive和setMaxWait属性了 @@ -103,9 +112,9 @@ public void createCluster() { int maxAttempts = 5; // JedisCluster jc = new JedisCluster(jedisClusterNode, DEFAULT_TIMEOUT, // DEFAULT_TIMEOUT, DEFAULT_REDIRECTIONS, "cluster", DEFAULT_CONFIG); - jedisCluster = new JedisCluster(jedisClusterNode, connectionTimeout, soTimeout, maxAttempts, password, poolConfig); + jedisCluster = new JedisCluster(jedisClusterNode, connectionTimeout, soTimeout, maxAttempts, poolConfig); + //jedisCluster = new JedisCluster(jedisClusterNode, connectionTimeout, soTimeout, maxAttempts, password, poolConfig); log.info("节点信息:{}", jedisCluster.getClusterNodes().keySet()); } - } diff --git a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/resources/application.yml b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/resources/application.yml index 0cc3315..d410c49 100644 --- a/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/resources/application.yml +++ b/APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis/src/main/resources/application.yml @@ -22,7 +22,7 @@ spring: datasource: master: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://127.0.0.1:3306/sys?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false + url: jdbc:mysql://127.0.0.1:3306?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false username: root password: apijson filter: From 792acb7e11c98e7ec27c562326635871d4bfb57d Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 23:31:24 +0800 Subject: [PATCH 28/80] =?UTF-8?q?Java=EF=BC=9A=E5=AE=8C=E5=96=84=20Shardin?= =?UTF-8?q?gSphere=20=20Demo=20=E7=9A=84=E4=BB=A3=E7=A0=81=E3=80=81?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E3=80=81=E6=95=B0=E6=8D=AE=EF=BC=8C=E5=B9=B6?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=20JDK=2017=EF=BC=8CAPIJSON=207.1.0,=20apijso?= =?UTF-8?q?n-framework=207.1.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MySQL/ds_1_single/ds_1_Comment_0.sql | 59 ++++++++++ .../MySQL/ds_1_single/ds_1_Comment_1.sql | 59 ++++++++++ .../MySQL/ds_1_single/ds_1_Moment_0.sql | 57 ++++++++++ .../MySQL/ds_1_single/ds_1_Moment_1.sql | 57 ++++++++++ .../MySQL/ds_1_single/ds_1_apijson_user.sql | 59 ++++++++++ .../MySQL/ds_2_single/ds_2_Comment_0.sql | 59 ++++++++++ .../MySQL/ds_2_single/ds_2_Comment_1.sql | 59 ++++++++++ .../MySQL/ds_2_single/ds_2_apijson_user.sql | 59 ++++++++++ .../APIJSONDemo-ShardingSphere/pom.xml | 85 ++++++++++++--- .../java/apijson/demo/DemoApplication.java | 10 +- .../java/apijson/demo/DemoController.java | 2 +- .../apijson/demo/DemoDataSourceConfig.java | 102 +++++++++--------- .../main/java/apijson/demo/DemoSQLConfig.java | 11 +- .../java/apijson/demo/DemoSQLExecutor.java | 31 ++++-- ...pplication-sharding-auto-tables.properties | 55 ---------- ...ation-sharding-databases-tables.properties | 70 ------------ .../application-sharding-databases.properties | 55 ---------- .../application-sharding-tables.properties | 59 ---------- .../src/main/resources/application.properties | 21 ---- .../src/main/resources/application.yml | 43 -------- .../src/main/resources/config.yaml | 22 ++++ .../src/main/resources/logback.xml | 36 ------- 22 files changed, 649 insertions(+), 421 deletions(-) create mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_0.sql create mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_1.sql create mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_0.sql create mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_1.sql create mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_apijson_user.sql create mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_0.sql create mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_1.sql create mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_apijson_user.sql delete mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-auto-tables.properties delete mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-databases-tables.properties delete mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-databases.properties delete mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-tables.properties delete mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application.yml create mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/config.yaml delete mode 100644 APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/logback.xml diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_0.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_0.sql new file mode 100644 index 0000000..7c4d554 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_0.sql @@ -0,0 +1,59 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: localhost Database: ds_1 +-- ------------------------------------------------------ +-- Server version 8.0.32 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `Comment_0` +-- + +DROP TABLE IF EXISTS `Comment_0`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Comment_0` ( + `id` bigint NOT NULL COMMENT '主键', + `toId` bigint NOT NULL DEFAULT '0' COMMENT '被回复的id', + `userId` bigint NOT NULL COMMENT '评论人 User 的 id', + `momentId` bigint NOT NULL COMMENT '动态id', + `date` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期', + `content` varchar(1000) NOT NULL COMMENT '内容', + PRIMARY KEY (`id`), + KEY `index_date` (`date`), + KEY `index_userId` (`userId`), + KEY `index_moment` (`momentId`), + KEY `index_toId` (`toId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='评论'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `Comment_0` +-- + +LOCK TABLES `Comment_0` WRITE; +/*!40000 ALTER TABLE `Comment_0` DISABLE KEYS */; +INSERT INTO `Comment_0` VALUES (8,0,38710,470,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-4'),(16,0,82003,170,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-44'),(68,0,82005,371,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-68'),(76,45,93793,301,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-76'),(116,0,70793,371,'2017-03-02 05:56:06','ds_1.Comment_0: This is a Content...-116'),(120,0,93793,301,'2017-03-02 05:56:06','ds_1.Comment_0: This is a Content...-110'),(124,0,82001,301,'2017-03-02 05:56:06','ds_1.Comment_0: test multi put'),(160,0,82001,235,'2017-03-02 05:56:06','ds_1.Comment_0: This is a Content...-160'),(164,0,93793,12,'2017-03-06 05:03:45','ds_1.Comment_0: This is a Content...-164'),(168,1490442545077,82001,235,'2017-03-25 11:49:14','ds_1.Comment_0: ???'),(172,162,82001,12,'2017-03-25 12:22:58','ds_1.Comment_0: OK'),(188,97,82001,58,'2017-03-26 07:21:32','ds_1.Comment_0: 1646'),(300,97,82001,58,'2017-03-29 03:06:07','ds_1.Comment_0: hj'),(1490776966828,173,82001,58,'2017-03-29 08:42:46','ds_1.Comment_0: me too'),(1490781009548,51,82001,301,'2017-03-29 09:50:09','ds_1.Comment_0: 3'),(1490781817044,209,38710,58,'2017-03-29 10:03:37','ds_1.Comment_0: 82001'),(1490794610632,172,82001,12,'2017-03-29 13:36:50','ds_1.Comment_0: All right'),(1490800971064,175,38710,12,'2017-03-29 15:22:51','ds_1.Comment_0: I do'),(1490848396072,175,82001,12,'2017-03-30 04:33:16','ds_1.Comment_0: Lemon'),(1490848581424,166,82001,12,'2017-03-30 04:36:21','ds_1.Comment_0: 82001ejej'),(1490850764448,162,82001,12,'2017-03-30 05:12:44','ds_1.Comment_0: -162'),(1490850844016,0,82001,12,'2017-03-30 05:14:04','ds_1.Comment_0: I like it'),(1490850876656,1490800971064,82001,12,'2017-03-30 05:14:36','ds_1.Comment_0: I do so'),(1490863563124,0,82003,704,'2017-03-30 08:46:03','ds_1.Comment_0: I want one'),(1490863783276,1490863711703,93793,511,'2017-03-30 08:49:43','ds_1.Comment_0: haha welcome'),(1490863903900,0,82006,470,'2017-03-30 08:51:43','ds_1.Comment_0: SOGA'),(1490863938712,0,82006,12,'2017-03-30 08:52:18','ds_1.Comment_0: Handsome!'),(1490864023700,0,82006,543,'2017-03-30 08:53:43','ds_1.Comment_0: oops'),(1490864039264,0,82006,551,'2017-03-30 08:53:59','ds_1.Comment_0: Wonderful!'),(1490864152008,0,82006,58,'2017-03-30 08:55:52','ds_1.Comment_0: U R ugly( ´?` )'),(1490864254400,1490863915675,82044,235,'2017-03-30 08:57:34','ds_1.Comment_0: And I have no idea'),(1490864276824,0,82044,12,'2017-03-30 08:57:56','ds_1.Comment_0: Oh my God!'),(1490864292184,1490864152008,82044,58,'2017-03-30 08:58:12','ds_1.Comment_0: haha!'),(1490864379424,1490863938712,82001,12,'2017-03-30 08:59:39','ds_1.Comment_0: Thank you~'),(1490875046704,120,82055,301,'2017-03-30 11:57:26','ds_1.Comment_0: 110'),(1491014830404,1490864016738,82001,511,'2017-04-01 02:47:10','ds_1.Comment_0: Have a nice day!'),(1491119695580,0,82001,371,'2017-04-02 07:54:55','ds_1.Comment_0: leave a word'),(1493186363132,1490850764448,82001,12,'2017-04-26 05:59:23','ds_1.Comment_0: sndnd'),(1508492585904,1508462026394,82001,12,'2017-10-20 09:43:05','ds_1.Comment_0: my god'),(1510813295700,162,82001,12,'2017-11-16 06:21:35','ds_1.Comment_0: adsdasdasdasd'),(1512533520832,1512531859019,38710,1512314438990,'2017-12-06 04:12:00','ds_1.Comment_0: 嘿嘿'),(1514617131036,0,82005,1513094436910,'2017-12-30 06:58:51','ds_1.Comment_0: 口子'),(1514960713300,0,82001,1513094436910,'2018-01-03 06:25:13','ds_1.Comment_0: 1'),(1515057852156,0,82001,58,'2018-01-04 09:24:12','ds_1.Comment_0: 你说'),(1515057857464,0,82001,58,'2018-01-04 09:24:17','ds_1.Comment_0: 你说'),(1516629533520,0,82001,1508072633830,'2018-01-22 13:58:53','ds_1.Comment_0: 小臭臭'),(1516780129884,0,82001,1516086423441,'2018-01-24 07:48:49','ds_1.Comment_0: aaa'),(1516785657724,0,82001,1516086423441,'2018-01-24 09:20:57','ds_1.Comment_0: hj'),(1516951754620,0,82001,1513094436910,'2018-01-26 07:29:14','ds_1.Comment_0: 凤飞飞刚刚好'),(1517193267472,1513656045399,82001,1508072633830,'2018-01-29 02:34:27','ds_1.Comment_0: 1'),(1517730034960,0,82001,170,'2018-02-04 07:40:34','ds_1.Comment_0: 陌陌陌陌'),(1519974842508,0,82001,1516086423441,'2018-03-02 07:14:02','ds_1.Comment_0: 1111'),(1519974868848,1516691119239,82001,1516086423441,'2018-03-02 07:14:28','ds_1.Comment_0: 1111'),(1522074343188,1513656045399,82001,1508072633830,'2018-03-26 14:25:43','ds_1.Comment_0: rrrrr'),(1522657767636,120,82001,301,'2018-04-02 08:29:27','ds_1.Comment_0: 云画'),(1522741138316,1517193278459,82001,1508072633830,'2018-04-03 07:38:58','ds_1.Comment_0: 哦哦哦'),(1522986959852,1508072695833,82001,1508072633830,'2018-04-06 03:55:59','ds_1.Comment_0: !????'),(1523936378484,0,1523935772553,1523936332614,'2018-04-17 03:39:38','ds_1.Comment_0: 不错不错哦'),(1524178500568,1524178495587,1524042900591,1524178455305,'2018-04-19 22:55:00','ds_1.Comment_0: 哈哈哈'),(1524190367904,0,38710,1524178455305,'2018-04-20 02:12:47','ds_1.Comment_0: 你头像用的是本地的路径,只有你能看到,别人看不到哦,可以换一个url'),(1524191012552,0,82003,1524178455305,'2018-04-20 02:23:32','ds_1.Comment_0: 早上好小姐姐'),(1524582671132,1524461441914,82003,1508072633830,'2018-04-24 15:11:11','ds_1.Comment_0: 陌陌'),(1524799118232,0,1523626157302,1512314438990,'2018-04-27 03:18:38','ds_1.Comment_0: 这些图片是怎么发上去的呢?我发动态只有默认的两张图'),(1527821844576,0,1527821445610,1527821296110,'2018-06-01 02:57:24','ds_1.Comment_0: 好不好用啊'),(1527837906576,0,38710,1527830331780,'2018-06-01 07:25:06','ds_1.Comment_0: 哇,好漂亮'),(1527862540820,0,1527495857924,1527830331780,'2018-06-01 14:15:40','ds_1.Comment_0: 谢谢你'),(1527862609352,1527837965006,1527495857924,1527830474378,'2018-06-01 14:16:49','ds_1.Comment_0: ㄟ(≧◇≦)ㄏ'),(1528105592852,0,82001,1516086423441,'2018-06-04 09:46:32','ds_1.Comment_0: aaaaa'),(1528289446172,0,82001,1528269988360,'2018-06-06 12:50:46','ds_1.Comment_0: 因为没做前端上传和后端保存图片的功能,APIJSONApp主要是用来展示APIJSON的自动化接口的'),(1528289580140,0,38710,1528274037224,'2018-06-06 12:53:00','ds_1.Comment_0: 这两张图片的url错了哦,都是网页url,所以小图加载不出来,只能点击后用WebView查看'),(1528333168328,0,82001,1514017444961,'2018-06-07 00:59:28','ds_1.Comment_0: zj'),(1528676480604,0,1528339692804,1528356421201,'2018-06-11 00:21:20','ds_1.Comment_0: nihshs'),(1528681265496,1528516951218,1528339692804,1528462217322,'2018-06-11 01:41:05','ds_1.Comment_0: 你输了有什么惩罚吗?'),(1528972555336,0,82001,1528462217322,'2018-06-14 10:35:55','ds_1.Comment_0: 合计怕v就怕vi'),(1531063660028,0,82003,1531062713966,'2018-07-08 15:27:40','ds_1.Comment_0: 这是哪里啊?我也想去'),(1532057419100,0,38710,1531969818357,'2018-07-20 03:30:19','ds_1.Comment_0: 可以加上标题哦'),(1533186909764,0,82001,1531969818357,'2018-08-02 05:15:09','ds_1.Comment_0: hello'),(1533809879340,1533186909764,82001,1531969818357,'2018-08-09 10:17:59','ds_1.Comment_0: 434'),(1533889646344,0,82001,1508072491570,'2018-08-10 08:27:26','ds_1.Comment_0: 11111111'),(1533902815448,0,82001,1531969818357,'2018-08-10 12:06:55','ds_1.Comment_0: 很不要吃'),(1534684209052,110,82001,371,'2018-08-19 13:10:09','ds_1.Comment_0: 44444444444444444444444444'),(1534926143012,0,82001,1508053762227,'2018-08-22 08:22:23','ds_1.Comment_0: 治标不治本在不在不在不'),(1535279823332,0,82001,1520242333325,'2018-08-26 10:37:03','ds_1.Comment_0: 斤斤计较'),(1535598334136,1534992151350,82003,1516086423441,'2018-08-30 03:05:34','ds_1.Comment_0: 啥?'),(1535600352436,0,82001,1520242333325,'2018-08-30 03:39:12','ds_1.Comment_0: 6666666'),(1535963519864,0,82001,1535781636403,'2018-09-03 08:31:59','ds_1.Comment_0: gghhh'),(1536378833060,0,82001,1508072633830,'2018-09-08 03:53:53','ds_1.Comment_0: 真的嘛'),(1536469270492,0,82001,1528356496939,'2018-09-09 05:01:10','ds_1.Comment_0: 这是啥表情?Σ(ŎдŎ|||)ノノ'),(1537710359760,0,82001,1516086423441,'2018-09-23 13:45:59','ds_1.Comment_0: 锵锵锵'),(1539868258868,1533188056603,82001,1531062713966,'2018-10-18 13:10:58','ds_1.Comment_0: 555555555'),(1545527888416,0,82001,1553096819293,'2018-12-23 01:18:08','ds_1.Comment_0: hello'),(1545527923036,1545527888416,82001,1553096819293,'2018-12-23 01:18:43','ds_1.Comment_0: 还差还差还差'),(1551080228544,0,82001,1553096819293,'2019-02-25 07:37:08','ds_1.Comment_0: 几何画板'),(1551080263524,0,82001,1516086423441,'2019-02-25 07:37:43','ds_1.Comment_0: 你就看看'),(1551430453424,0,82001,1553096819293,'2019-03-01 08:54:13','ds_1.Comment_0: 啊啊'),(1551430485828,0,82001,1553096819293,'2019-03-01 08:54:45','ds_1.Comment_0: 品牌'),(1552298015880,1524799118232,82001,1512314438990,'2019-03-11 09:53:35','ds_1.Comment_0: 评论真的假的'),(1553065269448,0,82001,1553096819293,'2019-03-20 07:01:09','ds_1.Comment_0: 3333'),(1553837842352,0,82001,1541557989440,'2019-03-29 05:37:22','ds_1.Comment_0: 小赤佬'),(1554286215772,0,82001,301,'2019-04-03 10:10:15','ds_1.Comment_0: hjkj'),(1554373265740,0,82001,543,'2019-04-04 10:21:05','ds_1.Comment_0: 那你'),(1555557851140,1512035117021,82001,32,'2019-04-18 03:24:11','ds_1.Comment_0: 1545456'),(1555557877452,1555557868075,82001,32,'2019-04-18 03:24:37','ds_1.Comment_0: 123121545645'),(1557024488300,1556953340357,82001,1556387217941,'2019-05-05 02:48:08','ds_1.Comment_0: 222'),(1557367770352,0,82001,1508072633830,'2019-05-09 02:09:30','ds_1.Comment_0: 哈哈'),(1557838424004,0,1508072105320,1557754680146,'2019-05-14 12:53:44','ds_1.Comment_0: 666'),(1558440335644,0,82001,1557754680146,'2019-05-21 12:05:35','ds_1.Comment_0: 就是就是觉得奖学金'),(1563641514400,0,82001,1563605336326,'2019-07-20 16:51:54','ds_1.Comment_0: 年轻人不要想不开'),(1567393121856,1557754765785,82001,1557754680146,'2019-09-02 02:58:41','ds_1.Comment_0: 1'),(1571186443512,0,82001,1568087960412,'2019-10-16 00:40:43','ds_1.Comment_0: 3条重复的'),(1573260321560,1551080228544,82001,1553096819293,'2019-11-09 00:45:21','ds_1.Comment_0: 不错'),(1575335926376,0,82001,1557415707105,'2019-12-03 01:18:46','ds_1.Comment_0: 哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈'),(1576678047584,0,82001,1557415707105,'2019-12-18 14:07:27','ds_1.Comment_0: 12'),(1576678207904,0,82001,1572177746393,'2019-12-18 14:10:07','ds_1.Comment_0: W'),(1583897660640,0,82001,1583574596245,'2020-03-11 03:34:20','ds_1.Comment_0: 打击打击'),(1589255390204,1589255382551,82001,371,'2020-05-12 03:49:50','ds_1.Comment_0: u好赶紧'),(1591754318836,1591754308326,82001,1514858533480,'2020-06-10 01:58:38','ds_1.Comment_0: 我现在'),(1592109072272,1576678047584,82001,1557415707105,'2020-06-14 04:31:12','ds_1.Comment_0: 呃呃呃呃呃呃'),(1592119582864,1516686985310,82001,1516086423441,'2020-06-14 07:26:22','ds_1.Comment_0: HCG和'),(1594290780472,1589255368635,82001,371,'2020-07-09 10:33:00','ds_1.Comment_0: 哈哈哈'),(1594290803016,1511407702981,82001,371,'2020-07-09 10:33:23','ds_1.Comment_0: 丰富'),(1594352418324,1594352357029,82001,1594127400223,'2020-07-10 03:40:18','ds_1.Comment_0: 试试就试试'),(1594462409216,0,82001,1594127400223,'2020-07-11 10:13:29','ds_1.Comment_0: 可以'),(1596209179840,0,82001,1583574596245,'2020-07-31 15:26:19','ds_1.Comment_0: ndj'),(1611824253904,0,82001,1558798664043,'2021-01-28 08:57:33','ds_1.Comment_0: 弄'),(1612419525572,0,82001,1606312076474,'2021-02-04 06:18:45','ds_1.Comment_0: 你好'),(1613809673288,0,82001,12,'2021-02-20 08:27:53','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617350098600,0,82001,12,'2021-04-02 07:54:58','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617457449128,0,82001,371,'2021-04-03 13:44:09','ds_1.Comment_0: 中'),(1617685756488,0,82001,1617562878095,'2021-04-06 05:09:16','ds_1.Comment_0: 阿萨德'),(1624697876724,0,82001,1594385350586,'2021-06-26 08:57:56','ds_1.Comment_0: 就啊快快乐乐'),(1625645166228,0,82001,1568087960391,'2021-07-07 08:06:06','ds_1.Comment_0: 123'),(1626428214932,0,82001,1619511861462,'2021-07-16 09:36:55','ds_1.Comment_0: 经济结构'),(1628313873444,0,82001,1624700434072,'2021-08-07 05:24:33','ds_1.Comment_0: 好!!!!'),(1631761292056,0,82001,1491200468898,'2021-09-16 03:01:32','ds_1.Comment_0: 啥意思?'),(1631761346084,0,82001,301,'2021-09-16 03:02:26','ds_1.Comment_0: 品牌'),(1631761396620,0,82001,1594385349411,'2021-09-16 03:03:16','ds_1.Comment_0: 12'),(1631761397840,0,82001,1520242333325,'2021-09-16 03:03:17','ds_1.Comment_0: 3333'),(1631761399032,0,82001,1553096819293,'2021-09-16 03:03:19','ds_1.Comment_0: 6666666'),(1631761399208,0,82001,1516086423441,'2021-09-16 03:03:19','ds_1.Comment_0: 82001ejej'),(1631761408808,0,82001,58,'2021-09-16 03:03:28','ds_1.Comment_0: $$'),(1631761410368,0,82001,58,'2021-09-16 03:03:30','ds_1.Comment_0: 555555555555555555'),(1631761412016,0,82001,58,'2021-09-16 03:03:32','ds_1.Comment_0: 6765765756'),(1631761412184,0,82001,12,'2021-09-16 03:03:32','ds_1.Comment_0: (fdsd)'),(1631761413492,0,82001,1528462217322,'2021-09-16 03:03:33','ds_1.Comment_0: 111'),(1631761415712,0,82001,58,'2021-09-16 03:03:35','ds_1.Comment_0: 111'),(1631761416936,0,82001,1531969818357,'2021-09-16 03:03:36','ds_1.Comment_0: 00'),(1631761418524,0,82001,371,'2021-09-16 03:03:38','ds_1.Comment_0: 123121545645'),(1631761418696,0,82001,1563605336326,'2021-09-16 03:03:38','ds_1.Comment_0: 1646'),(1631761419264,0,82001,1594385349411,'2021-09-16 03:03:39','ds_1.Comment_0: 555555'),(1631761430528,0,82001,1553096819293,'2021-09-16 03:03:50','ds_1.Comment_0: 3'),(1631761433108,0,82001,1524178455305,'2021-09-16 03:03:53','ds_1.Comment_0: 123121545645'),(1631761433268,0,82001,371,'2021-09-16 03:03:53','ds_1.Comment_0: 3'),(1631761433984,0,82001,12,'2021-09-16 03:03:53','ds_1.Comment_0: 123121545645'),(1631761440748,0,82001,1516086423441,'2021-09-16 03:04:00','ds_1.Comment_0: $$'),(1631761441136,0,82001,1516086423441,'2021-09-16 03:04:01','ds_1.Comment_0: 11'),(1631761441648,0,82001,1527830474378,'2021-09-16 03:04:01','ds_1.Comment_0: 123'),(1631761441988,0,82001,1508072633830,'2021-09-16 03:04:01','ds_1.Comment_0: 157'),(1631761442124,0,82001,511,'2021-09-16 03:04:02','ds_1.Comment_0: (fdsd)'),(1631761442488,0,82001,1516086423441,'2021-09-16 03:04:02','ds_1.Comment_0: 11'),(1631761443216,0,82001,371,'2021-09-16 03:04:03','ds_1.Comment_0: 123121545645'),(1631761443728,0,82001,1512314438990,'2021-09-16 03:04:03','ds_1.Comment_0: 1'),(1631761444028,0,82001,1516086423441,'2021-09-16 03:04:04','ds_1.Comment_0: 111'),(1631761444552,0,82001,1513094436910,'2021-09-16 03:04:04','ds_1.Comment_0: 123121545645'),(1631761445424,0,82001,1553096819293,'2021-09-16 03:04:05','ds_1.Comment_0: 111'),(1631761447040,0,82001,1541557989440,'2021-09-16 03:04:07','ds_1.Comment_0: 111'),(1631761447240,0,82001,58,'2021-09-16 03:04:07','ds_1.Comment_0: 1111'),(1631761447416,0,82001,1516086423441,'2021-09-16 03:04:07','ds_1.Comment_0: 12'),(1631761447752,0,82001,1520242333325,'2021-09-16 03:04:07','ds_1.Comment_0: 123'),(1631761448328,0,82001,301,'2021-09-16 03:04:08','ds_1.Comment_0: 1'),(1631761449000,0,82001,1536805585275,'2021-09-16 03:04:09','ds_1.Comment_0: 1111'),(1631761449200,0,82001,1527821296110,'2021-09-16 03:04:09','ds_1.Comment_0: 112'),(1631761455032,0,82001,12,'2021-09-16 03:04:15','ds_1.Comment_0: 00'),(1631761456092,0,82001,470,'2021-09-16 03:04:16','ds_1.Comment_0: 111'),(1631761457120,0,82001,12,'2021-09-16 03:04:17','ds_1.Comment_0: $$'),(1631761458380,0,82001,1493835799335,'2021-09-16 03:04:18','ds_1.Comment_0: 11'),(1631761458548,0,82001,1531062713966,'2021-09-16 03:04:18','ds_1.Comment_0: 110'),(1631761458696,0,82001,1516086423441,'2021-09-16 03:04:18','ds_1.Comment_0: 111'),(1631761459508,0,82001,1508053762227,'2021-09-16 03:04:19','ds_1.Comment_0: $$'),(1631761460348,0,82001,511,'2021-09-16 03:04:20','ds_1.Comment_0: 00'),(1631761632132,0,82001,12,'2021-09-16 03:07:12','ds_1.Comment_0: hhhj'),(1631761632236,0,82001,12,'2021-09-16 03:07:12','ds_1.Comment_0: thank you'),(1635402883632,0,82002,12,'2021-10-28 06:34:43','ds_1.Comment_0: APIJSON,let !'),(1638631329728,0,82001,1637985952844,'2021-12-04 15:22:09','ds_1.Comment_0: 额'),(1639449621808,0,82001,1638327674898,'2021-12-14 02:40:21','ds_1.Comment_0: 都给你跟大哥'),(1639449624732,0,82001,1638327674898,'2021-12-14 02:40:24','ds_1.Comment_0: 四个就是个'),(1640103342448,0,82001,12,'2021-12-21 16:15:42','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1640103353312,0,82001,12,'2021-12-21 16:15:53','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1645678670104,1645678666889,82001,1645416338268,'2022-02-24 04:57:50','ds_1.Comment_0: 一样'),(1645896988764,0,82001,1638327674898,'2022-02-26 17:36:28','ds_1.Comment_0: qq'),(1649327537444,0,82001,1649086185746,'2022-04-07 10:32:17','ds_1.Comment_0: 123'),(1649433736040,1649327537444,82001,1649086185746,'2022-04-08 16:02:16','ds_1.Comment_0: 过去吧'),(1650022306840,0,82001,1649086185746,'2022-04-15 11:31:46','ds_1.Comment_0: 建模'),(1650022321636,0,82001,1649086185746,'2022-04-15 11:32:01','ds_1.Comment_0: 明敏'),(1650023785000,1649548802611,82001,1649086182892,'2022-04-15 11:56:25','ds_1.Comment_0: 哈哈哈'),(1650353617956,0,82002,12,'2022-04-19 07:33:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1653122465708,0,82001,12,'2022-05-21 08:41:05','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1653122466756,0,82001,12,'2022-05-21 08:41:06','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1660209509324,0,82001,12,'2022-08-11 09:18:29','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1661830719104,0,82001,12,'2022-08-30 03:38:39','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1663572550152,0,82001,12,'2022-09-19 07:29:10','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1663572550228,0,82001,12,'2022-09-19 07:29:10','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1663572557752,0,82001,12,'2022-09-19 07:29:17','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1667542793524,0,82001,12,'2022-11-04 06:19:53','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1669276194512,0,82001,1649086182892,'2022-11-24 07:49:54','ds_1.Comment_0: 111'),(1670420459420,0,82001,1665293930441,'2022-12-07 13:40:59','ds_1.Comment_0: 哈哈哈哈'),(1671437036020,0,82001,1649672357944,'2022-12-19 08:03:56','ds_1.Comment_0: sss'),(1671437046068,0,82001,1649672357944,'2022-12-19 08:04:06','ds_1.Comment_0: sss'),(1675762587396,1630891147547,82001,1630746489563,'2023-02-07 09:36:27','ds_1.Comment_0: 222'),(1675840978164,0,82001,1674308870813,'2023-02-08 07:22:58','ds_1.Comment_0: 不怀好意'),(1676271666564,0,82001,1675910359578,'2023-02-13 07:01:06','ds_1.Comment_0: 33333'),(1679450011332,0,82001,1679313363196,'2023-03-22 01:53:31','ds_1.Comment_0: aassdddd'),(1679645509096,1675840929526,82001,1675742375160,'2023-03-24 08:11:49','ds_1.Comment_0: ghh'),(1679645540712,0,82001,1675742375160,'2023-03-24 08:12:20','ds_1.Comment_0: xccccxx'),(1680742770380,0,82001,1649086185746,'2023-04-06 00:59:30','ds_1.Comment_0: 6'),(1680742794912,0,82001,1670981978461,'2023-04-06 00:59:54','ds_1.Comment_0: 6'),(1681721463936,0,82002,1617562878095,'2023-04-17 08:51:03','ds_1.Comment_0: 22'),(1681882805412,0,82001,12,'2023-04-19 05:40:05','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1681882815816,0,82001,12,'2023-04-19 05:40:15','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1681999094052,0,82001,470,'2023-04-20 13:58:14','ds_1.Comment_0: ffff'),(1681999141244,0,82001,470,'2023-04-20 13:59:01','ds_1.Comment_0: ffff'),(1681999171716,0,82001,470,'2023-04-20 13:59:31','ds_1.Comment_0: ffff'),(1681999221100,0,82001,470,'2023-04-20 14:00:21','ds_1.Comment_0: ffff'),(1681999221488,0,82001,470,'2023-04-20 14:00:21','ds_1.Comment_0: ffff'),(1682000817856,0,82001,470,'2023-04-20 14:26:57','ds_1.Comment_0: xdddddd'),(1682103783776,0,82002,1682103762126,'2023-04-21 19:03:04','ds_1.Comment_0: 5555'),(1682103837432,0,82001,1682096402171,'2023-04-21 19:03:57','ds_1.Comment_0: 555'),(1682621619808,0,82001,235,'2023-04-27 18:53:40','ds_1.Comment_0: Ab_Cd4426623868886511'),(1683353876304,0,82001,142,'2023-05-06 06:17:56','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354453356,0,82001,12,'2023-05-06 06:27:33','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354577460,0,82001,142,'2023-05-06 06:29:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354577540,0,82001,143,'2023-05-06 06:29:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1686196003780,0,82001,1684981418161,'2023-06-08 03:46:43','ds_1.Comment_0: 1册'),(1686196013836,0,82001,1684981418161,'2023-06-08 03:46:53','ds_1.Comment_0: 1册'),(1686196362356,0,82001,1682103762126,'2023-06-08 03:52:42','ds_1.Comment_0: 5666'),(1686196372436,0,82001,1682103762126,'2023-06-08 03:52:52','ds_1.Comment_0: 5666'),(1686196382524,0,82001,1682103762126,'2023-06-08 03:53:02','ds_1.Comment_0: 5666'),(1686303817280,0,82001,1645416338268,'2023-06-09 09:43:37','ds_1.Comment_0: 哦咯模棱两可'),(1686328077792,0,82001,1645416338268,'2023-06-09 16:27:57','ds_1.Comment_0: 牛逼'),(1686328087852,0,82001,1645416338268,'2023-06-09 16:28:07','ds_1.Comment_0: 牛逼'),(1686328107960,0,82001,1645416338268,'2023-06-09 16:28:27','ds_1.Comment_0: 牛逼'),(1686328138132,0,82001,1645416338268,'2023-06-09 16:28:58','ds_1.Comment_0: 牛逼'),(1686897914980,0,82001,1684981561371,'2023-06-16 06:45:15','ds_1.Comment_0: mood'),(1687589876712,0,82001,12,'2023-06-24 06:57:56','ds_1.Comment_0: dkf;dfd;akfd;dadj;\''),(1689569588432,0,82001,1688307338283,'2023-07-17 04:53:08','ds_1.Comment_0: hi'),(1689569598488,0,82001,1688307338283,'2023-07-17 04:53:18','ds_1.Comment_0: hi'),(1689569608508,0,82001,1688307338283,'2023-07-17 04:53:28','ds_1.Comment_0: hi'),(1689569628628,0,82001,1688307338283,'2023-07-17 04:53:48','ds_1.Comment_0: hi'),(1689569638652,0,82001,1688307338283,'2023-07-17 04:53:58','ds_1.Comment_0: hi'),(1692583202328,0,82001,1692260707538,'2023-08-21 02:00:02','ds_1.Comment_0: 哦'),(1693680555320,0,82001,12,'2023-09-02 18:49:15','ds_1.Comment_0: Ab_Cd6844800776712211'),(1693680555324,0,82001,12,'2023-09-04 06:11:58','ds_1.Comment_0: Ab_Cd-844510703468296'),(1693680555328,0,82004,12,'2023-09-04 06:11:58','ds_1.Comment_0: Ab_Cd-2856071793404688'),(1693680555340,0,82007,12,'2023-09-04 06:11:59','ds_1.Comment_0: Ab_Cd1176977250559359'),(1693680555344,0,82002,12,'2023-09-04 06:11:59','ds_1.Comment_0: Ab_Cd-6771634456018543'),(1693680555372,0,82010,12,'2023-09-04 06:11:59','ds_1.Comment_0: Ab_Cd2261114733788087'),(1697115573792,0,82001,1,'2023-10-12 12:59:33','ds_1.Comment_0: 1'),(1697115635288,0,82001,1,'2023-10-12 13:00:35','ds_1.Comment_0: 1'),(1698723267316,0,82002,12,'2023-10-31 03:34:27','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701053335092,0,82001,12,'2023-11-27 02:48:55','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701054529204,0,82001,12,'2023-11-27 03:08:49','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701155522140,0,82001,12,'2023-11-28 07:12:02','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701222080568,0,82001,12,'2023-11-29 01:41:20','ds_1.Comment_0: 这是新建内容。'),(1701222619948,0,82001,12,'2023-11-29 01:50:19','ds_1.Comment_0: 这是修改内容。这是第二次修改内容!!!'),(1701660697608,0,82001,12,'2023-12-04 03:31:37','ds_1.Comment_0: hello'),(1701661955488,0,82001,12,'2023-12-04 03:52:35','ds_1.Comment_0: 测试'),(1701675730504,0,82002,12,'2023-12-04 07:42:10','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701676218464,0,82002,666666,'2023-12-04 07:50:18','ds_1.Comment_0: 这是新建 !'),(1701676481104,0,82002,666666,'2023-12-04 07:54:41','ds_1.Comment_0: 这是新建666666 !'),(1701676481124,0,82002,88888888,'2023-12-04 07:54:41','ds_1.Comment_0: 这是新建88888888 !'),(1701677667312,0,82002,12,'2023-12-04 08:14:27','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1702401213384,0,82009,401,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd8472212734801559'),(1702401213392,0,82004,401,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd8952784214322235'),(1702401213396,0,82008,12,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd-932793048539156'),(1702401213404,0,82007,12,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd2813830567792671'),(1702401213408,0,82010,401,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd-8872216150197055'),(1702401213416,0,82008,12,'2023-12-13 10:02:07','ds_1.Comment_0: Ab_Cd4002198057064007'),(1702401213432,0,82003,401,'2023-12-13 10:02:07','ds_1.Comment_0: Ab_Cd8403206842567007'),(1702401213444,0,82006,12,'2023-12-13 10:02:07','ds_1.Comment_0: Ab_Cd-484858090257340'),(1702401213448,0,82010,12,'2023-12-13 10:02:08','ds_1.Comment_0: Ab_Cd5900887805284295'),(1702401213452,0,82007,401,'2023-12-13 10:02:08','ds_1.Comment_0: Ab_Cd3639994649234319'),(1702401213464,0,82008,12,'2023-12-13 10:02:08','ds_1.Comment_0: Ab_Cd6460773887962923'),(1702401213472,0,82005,12,'2023-12-13 10:02:39','ds_1.Comment_0: Ab_Cd8307714633821023'),(1702401213484,0,82002,12,'2023-12-13 10:02:39','ds_1.Comment_0: Ab_Cd-6411974162780868'),(1702401213496,0,82010,401,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd155628970462443'),(1702401213504,0,82005,401,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd5433003463187443'),(1702401213516,0,82006,12,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd7041822330120711'),(1702401213524,0,82010,401,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd-6271936389850452'),(1702401213536,0,82006,12,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-5998477146992516'),(1702401213540,0,82010,12,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-7350608159302187'),(1702401213548,0,82010,401,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-7893702573699523'),(1702401213552,0,82002,12,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-3816420196613040'),(1702401213556,0,82005,401,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-2832029110325044'),(1702401213560,0,82002,401,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd3362825843579787'),(1702731872076,0,820012,153,'2023-12-18 09:17:26','ds_1.Comment_0: test1'),(1704439987844,1700489417302,82001,1700488719094,'2024-01-05 07:33:07','ds_1.Comment_0: 嗯'),(1706848337524,0,82001,1684980965206,'2024-02-02 04:32:17','ds_1.Comment_0: 12'),(1708314761672,0,82001,1684979928085,'2024-02-19 03:52:41','ds_1.Comment_0: ok'),(1708314764376,0,82001,1684979928085,'2024-02-19 03:52:44','ds_1.Comment_0: ok'),(1708565420024,0,82001,1693680292080,'2024-02-22 01:30:20','ds_1.Comment_0: 111'),(1709026358748,0,88888,15,'2024-02-27 09:32:38','ds_1.Comment_0: 测试新增评论'),(1709174743328,0,82001,15,'2024-02-29 02:45:43','ds_1.Comment_0: 测试新增评论'),(1709631441780,0,82002,15,'2024-03-05 09:37:21','ds_1.Comment_0: 测试新增评论'),(1709634537372,0,88888,15,'2024-03-05 10:28:57','ds_1.Comment_0: 测试新增评论'),(1709810588660,0,82001,15,'2024-03-07 11:23:08','ds_1.Comment_0: 测试新增评论'),(1709975265936,1633794180858,82003,1632294230574,'2024-03-09 09:07:45','ds_1.Comment_0: 123'),(1709975301096,0,82003,1594385350586,'2024-03-09 09:08:21','ds_1.Comment_0: hok'),(1710337736388,0,82001,1710233170301,'2024-03-13 13:48:56','ds_1.Comment_0: wee'),(1711439077460,0,88888,15,'2024-03-26 07:44:37','ds_1.Comment_0: 测试新增评论'),(1713152305880,1712644302113,82001,1690970599784,'2024-04-15 03:38:25','ds_1.Comment_0: 65'),(1713407030604,0,82001,1711013832774,'2024-04-18 02:23:50','ds_1.Comment_0: bb'),(1713949089248,0,82003,12,'2024-04-24 08:58:09','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1713949152716,0,82003,12,'2024-04-24 08:59:12','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1713949179176,0,82003,12,'2024-04-24 08:59:39','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1713949237832,0,82003,12,'2024-04-24 09:00:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1714048097100,0,82003,15,'2024-04-25 12:28:17','ds_1.Comment_0: 测试新增评论'),(1717561711548,0,82001,1705675845917,'2024-06-05 04:28:31','ds_1.Comment_0: 测试评论'),(1717588299400,0,82001,1716707004081,'2024-06-05 11:51:39','ds_1.Comment_0: 123456'),(1717862884920,0,82001,1717757679298,'2024-06-08 16:08:04','ds_1.Comment_0: 测试新增评论'),(1717862884960,0,82001,15,'2024-06-08 16:08:04','ds_1.Comment_0: 测试新增评论'),(1717862890920,0,38710,1717757679298,'2024-06-08 16:08:10','ds_1.Comment_0: 测试新增评论'),(1717939348020,0,82001,1717757679298,'2024-06-09 13:22:28','ds_1.Comment_0: 考虑考虑'); +/*!40000 ALTER TABLE `Comment_0` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-02-03 23:27:31 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_1.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_1.sql new file mode 100644 index 0000000..9c43a92 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_1.sql @@ -0,0 +1,59 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: localhost Database: ds_1 +-- ------------------------------------------------------ +-- Server version 8.0.32 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `Comment_1` +-- + +DROP TABLE IF EXISTS `Comment_1`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Comment_1` ( + `id` bigint NOT NULL COMMENT '主键', + `toId` bigint NOT NULL DEFAULT '0' COMMENT '被回复的id', + `userId` bigint NOT NULL COMMENT '评论人 User 的 id', + `momentId` bigint NOT NULL COMMENT '动态id', + `date` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期', + `content` varchar(1000) NOT NULL COMMENT '内容', + PRIMARY KEY (`id`), + KEY `index_date` (`date`), + KEY `index_userId` (`userId`), + KEY `index_moment` (`momentId`), + KEY `index_toId` (`toId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='评论'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `Comment_1` +-- + +LOCK TABLES `Comment_1` WRITE; +/*!40000 ALTER TABLE `Comment_1` DISABLE KEYS */; +INSERT INTO `Comment_1` VALUES (13,0,82005,58,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-13'),(45,0,93793,301,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-45'),(77,13,93793,58,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-77'),(97,13,82006,58,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-97'),(157,0,93793,371,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-157'),(173,0,38710,58,'2017-03-25 12:25:13','ds_1.Comment_1: Good'),(209,13,82001,58,'2017-03-29 03:05:59','ds_1.Comment_1: hehj'),(301,194,82001,235,'2017-03-29 03:06:24','ds_1.Comment_1: jj'),(4001,0,82001,58,'2017-03-29 08:39:52','ds_1.Comment_1: I would like to say …'),(1490776944301,0,82001,58,'2017-03-29 08:42:24','ds_1.Comment_1: hello'),(1490777905437,0,82001,543,'2017-03-29 08:58:25','ds_1.Comment_1: rr'),(1490778681337,166,82001,12,'2017-03-29 09:11:21','ds_1.Comment_1: gg'),(1490781032005,45,82001,301,'2017-03-29 09:50:32','ds_1.Comment_1: 93793'),(1490781850893,1490776966828,38710,58,'2017-03-29 10:04:10','ds_1.Comment_1: haha!'),(1490794439561,1490778681337,82001,12,'2017-03-29 13:33:59','ds_1.Comment_1: gg?'),(1490794937137,1490794919957,82001,12,'2017-03-29 13:42:17','ds_1.Comment_1: All right ok ok'),(1490863651493,0,70793,595,'2017-03-30 08:47:31','ds_1.Comment_1: wow'),(1490863676989,0,70793,12,'2017-03-30 08:47:56','ds_1.Comment_1: Shy'),(1490875040761,158,82055,301,'2017-03-30 11:57:20','ds_1.Comment_1: 157'),(1491119670185,68,82001,371,'2017-04-02 07:54:30','ds_1.Comment_1: Leave a word'),(1491277552385,0,82001,58,'2017-04-04 03:45:52','ds_1.Comment_1: Seven'),(1491709064513,0,82001,551,'2017-04-09 03:37:44','ds_1.Comment_1: soga'),(1491798370749,0,82002,551,'2017-04-10 04:26:10','ds_1.Comment_1: Nice!'),(1491830543193,0,82001,170,'2017-04-10 13:22:23','ds_1.Comment_1: What is the hell?'),(1508072695833,0,82003,1508072633830,'2017-10-15 13:04:55','ds_1.Comment_1: 心疼地抱住自己(๑´ㅂ`๑)'),(1509003045509,0,82001,1508072633830,'2017-10-26 07:30:45','ds_1.Comment_1: hhh'),(1511407702981,157,1511407581570,371,'2017-11-23 03:28:22','ds_1.Comment_1: 你好'),(1512035117021,0,82001,32,'2017-11-30 09:45:17','ds_1.Comment_1: 图片看不了啊'),(1514473034425,1514425796195,93793,1513094436910,'2017-12-28 14:57:14','ds_1.Comment_1: 干啥?'),(1514478784653,0,82001,1513094436910,'2017-12-28 16:33:04','ds_1.Comment_1: bug很多'),(1514858592813,0,82001,1514858533480,'2018-01-02 02:03:12','ds_1.Comment_1: 铁人'),(1514960744185,1512531859019,82001,1512314438990,'2018-01-03 06:25:44','ds_1.Comment_1: 哇'),(1516805226757,1516785657724,38710,1516086423441,'2018-01-24 14:47:06','ds_1.Comment_1: 滑稽?'),(1516805340593,1516783920998,38710,1513094436910,'2018-01-24 14:49:00','ds_1.Comment_1: 看怎么定义 实时 。这个是仿微信朋友圈列表和QQ空间说说详情,在线同步的,但没做推送,所以不是QQ微信聊天那种即时通讯。'),(1517303775429,1490863903900,82001,470,'2018-01-30 09:16:15','ds_1.Comment_1: ???'),(1517375165233,0,82001,1508053762227,'2018-01-31 05:06:05','ds_1.Comment_1: 666'),(1518365470893,44,82001,170,'2018-02-11 16:11:10','ds_1.Comment_1: 野蜂飞舞'),(1518614899681,0,82001,301,'2018-02-14 13:28:19','ds_1.Comment_1: https://goo.gl/search/JJB+Sports\nJJB Sports,'),(1519793574249,1519719341810,93793,1516086423441,'2018-02-28 04:52:54','ds_1.Comment_1: 哈哈,春运都过了啊'),(1520578883309,0,82001,12,'2018-03-09 07:01:23','ds_1.Comment_1: 我用流量'),(1524032244441,1519974842508,82001,1516086423441,'2018-04-18 06:17:24','ds_1.Comment_1: 干嘛,单身吗?'),(1524190981549,1522657767636,82003,301,'2018-04-20 02:23:01','ds_1.Comment_1: 这个6'),(1524582716289,1524461441914,70793,1508072633830,'2018-04-24 15:11:56','ds_1.Comment_1: 脉脉'),(1524844181029,1524798402799,82001,1524178455305,'2018-04-27 15:49:41','ds_1.Comment_1: 确实有这样的问题,但这个Demo仅供展示APIJSON的接口数据增删改查的能力,又拍云,七牛等平台又需要对接及付费,所以Demo暂时不提供哈,需要的话可以自己搞。建议先把图片上传到又拍云等平台,拿回url再传到自己的服务器^_^'),(1528270188205,0,1528250827953,1527830474378,'2018-06-06 07:29:48','ds_1.Comment_1: 这个图片是怎么发出来的啊,我发动态就只是那两张默认图片'),(1528278187969,0,82001,470,'2018-06-06 09:43:07','ds_1.Comment_1: 啊啊啊啊'),(1528327885509,1528289580140,1528250827953,1528274037224,'2018-06-06 23:31:25','ds_1.Comment_1: 噢噢,没想到你能这么快回复,谢谢'),(1528393204569,1528270188205,38710,1527830474378,'2018-06-07 17:40:04','ds_1.Comment_1: 把接口里的pictureList的值改下,里面包含图片url'),(1528677257985,0,1528339692804,1528676875139,'2018-06-11 00:34:17','ds_1.Comment_1: aaa'),(1528799506317,1516805340593,82001,1513094436910,'2018-06-12 10:31:46','ds_1.Comment_1: 摩恩'),(1529730035521,0,82001,1527830331780,'2018-06-23 05:00:35','ds_1.Comment_1: 还有别的吗?'),(1531412238453,0,82001,1528356378455,'2018-07-12 16:17:18','ds_1.Comment_1: 去啊'),(1533187733941,0,82001,1508072633830,'2018-08-02 05:28:53','ds_1.Comment_1: 好好'),(1533202426013,1533186909764,82003,1531969818357,'2018-08-02 09:33:46','ds_1.Comment_1: world'),(1533629063261,0,82001,1531969818357,'2018-08-07 08:04:23','ds_1.Comment_1: 大鸡鸡'),(1533902902749,0,82001,1531969818357,'2018-08-10 12:08:22','ds_1.Comment_1: 性能还可以'),(1534053913157,1524190941111,1508072160401,1516086423441,'2018-08-12 06:05:13','ds_1.Comment_1: 怎么约?'),(1534412022857,0,82001,1531969818357,'2018-08-16 09:33:42','ds_1.Comment_1: dgf'),(1534684074665,1531983163150,82001,1531969818357,'2018-08-19 13:07:54','ds_1.Comment_1: ggggg'),(1536337000073,1516686985310,82001,1516086423441,'2018-09-07 16:16:40','ds_1.Comment_1: heh'),(1536805661269,0,70793,1536805585275,'2018-09-13 02:27:41','ds_1.Comment_1: 6s再战一年'),(1539868275645,1531887938362,82001,1531062713966,'2018-10-18 13:11:15','ds_1.Comment_1: 22222222222222222'),(1541496033857,0,82001,301,'2018-11-06 09:20:33','ds_1.Comment_1: 能解决'),(1546050386785,0,82001,1516086423441,'2018-12-29 02:26:26','ds_1.Comment_1: 不鸟你'),(1551430465241,1551430453424,82001,1553096819293,'2019-03-01 08:54:25','ds_1.Comment_1: 123'),(1551430485689,1551430453424,82001,1553096819293,'2019-03-01 08:54:45','ds_1.Comment_1: 品牌'),(1551683545557,1490863711703,82001,511,'2019-03-04 07:12:25','ds_1.Comment_1: 科技'),(1553053362233,1551430485689,82001,1553096819293,'2019-03-20 03:42:42','ds_1.Comment_1: 集合vyih'),(1554373282941,0,82001,543,'2019-04-04 10:21:22','ds_1.Comment_1: 。'),(1556953335513,0,82001,1556387217941,'2019-05-04 07:02:15','ds_1.Comment_1: 嘻嘻嘻'),(1556953340357,1556953335513,82001,1556387217941,'2019-05-04 07:02:20','ds_1.Comment_1: 额额额'),(1557754765785,0,70793,1557754680146,'2019-05-13 13:39:25','ds_1.Comment_1: 链接发下'),(1558440302601,0,82001,1557415707105,'2019-05-21 12:05:02','ds_1.Comment_1: 咔咔咔'),(1558440307225,0,82001,1557415707105,'2019-05-21 12:05:07','ds_1.Comment_1: i我看'),(1558440357141,1558440335644,82001,1557754680146,'2019-05-21 12:05:57','ds_1.Comment_1: 惊声尖叫额'),(1563688523833,0,82001,1563605336326,'2019-07-21 05:55:23','ds_1.Comment_1: 嗯嗯'),(1564493464049,0,82001,1557754680146,'2019-07-30 13:31:04','ds_1.Comment_1: 真牛逼'),(1566270974217,0,82001,1558798664043,'2019-08-20 03:16:14','ds_1.Comment_1: what'),(1570262731881,0,82001,1512314438990,'2019-10-05 08:05:31','ds_1.Comment_1: Ghhh'),(1570609944245,0,82001,704,'2019-10-09 08:32:24','ds_1.Comment_1: 呃呃呃'),(1571273540137,0,82001,543,'2019-10-17 00:52:20','ds_1.Comment_1: 太快了'),(1575518027953,0,82001,1572177746393,'2019-12-05 03:53:47','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1576678033649,1558440307225,82001,1557415707105,'2019-12-18 14:07:13','ds_1.Comment_1: 124'),(1589255358661,1491119695580,82001,371,'2020-05-12 03:49:18','ds_1.Comment_1: 好吃'),(1592119592201,0,82001,1516086423441,'2020-06-14 07:26:32','ds_1.Comment_1: 据记'),(1592119607109,1516687437251,82001,1516086423441,'2020-06-14 07:26:47','ds_1.Comment_1: 工厂'),(1594290735773,0,82001,371,'2020-07-09 10:32:15','ds_1.Comment_1: 哈哈'),(1594352357029,0,82001,1594127400223,'2020-07-10 03:39:17','ds_1.Comment_1: 换一个模拟器试试'),(1594462397453,0,82001,1594385349411,'2020-07-11 10:13:17','ds_1.Comment_1: uuu'),(1599054157165,1596209179840,82001,1583574596245,'2020-09-02 13:42:37','ds_1.Comment_1: 既解决'),(1605590426089,1592119592201,82001,1516086423441,'2020-11-17 05:20:26','ds_1.Comment_1: 讨论嘟嘟嘟特特特'),(1609774951037,0,82001,1493835799335,'2021-01-04 15:42:31','ds_1.Comment_1: Ffjfjkf'),(1611892629701,1611547274671,82001,1611503147421,'2021-01-29 03:57:09','ds_1.Comment_1: Test'),(1617550618501,0,82001,1611503147421,'2021-04-04 15:36:58','ds_1.Comment_1: 哈哈哈'),(1624275284477,0,82001,1572177746393,'2021-06-21 11:34:44','ds_1.Comment_1: 111'),(1624697881241,0,82001,1594385350586,'2021-06-26 08:58:01','ds_1.Comment_1: 华山卡'),(1625214509673,0,82001,12,'2021-07-02 08:28:29','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1626417070325,0,82001,1508053762227,'2021-07-16 06:31:10','ds_1.Comment_1: Vnn'),(1629102895605,0,82001,12,'2021-08-16 08:34:55','ds_1.Comment_1: test'),(1629102906693,0,82001,12,'2021-08-16 08:35:06','ds_1.Comment_1: test'),(1631761271589,0,82001,1553096819293,'2021-09-16 03:01:11','ds_1.Comment_1: 555555'),(1631761290317,0,82001,1535781636403,'2021-09-16 03:01:30','ds_1.Comment_1: 哈哈'),(1631761345493,0,82001,1512314438990,'2021-09-16 03:02:25','ds_1.Comment_1: hhhhh'),(1631761390009,0,82001,551,'2021-09-16 03:03:10','ds_1.Comment_1: $$'),(1631761397009,0,82001,12,'2021-09-16 03:03:17','ds_1.Comment_1: 123'),(1631761397393,0,82001,1558798664043,'2021-09-16 03:03:17','ds_1.Comment_1: 124'),(1631761397649,0,82001,371,'2021-09-16 03:03:17','ds_1.Comment_1: 1646'),(1631761398865,0,82001,1528462217322,'2021-09-16 03:03:18','ds_1.Comment_1: 666'),(1631761410153,0,82001,301,'2021-09-16 03:03:30','ds_1.Comment_1: 3423423423'),(1631761410569,0,82001,1611503147421,'2021-09-16 03:03:30','ds_1.Comment_1: 82001ejej'),(1631761411209,0,82001,1531062713966,'2021-09-16 03:03:31','ds_1.Comment_1: 123121545645'),(1631761411849,0,82001,12,'2021-09-16 03:03:31','ds_1.Comment_1: 555555'),(1631761412361,0,82001,301,'2021-09-16 03:03:32','ds_1.Comment_1: 111'),(1631761413857,0,82001,1531969818357,'2021-09-16 03:03:33','ds_1.Comment_1: 3333'),(1631761414841,0,82001,1513094436910,'2021-09-16 03:03:34','ds_1.Comment_1: 123121545645'),(1631761416361,0,82001,1531969818357,'2021-09-16 03:03:36','ds_1.Comment_1: 444444'),(1631761417441,0,82001,1513094436910,'2021-09-16 03:03:37','ds_1.Comment_1: 222'),(1631761417781,0,82001,1513094436910,'2021-09-16 03:03:37','ds_1.Comment_1: 434'),(1631761417945,0,82001,1617562878095,'2021-09-16 03:03:37','ds_1.Comment_1: 555555555'),(1631761418125,0,82001,58,'2021-09-16 03:03:38','ds_1.Comment_1: 1'),(1631761418945,0,82001,32,'2021-09-16 03:03:38','ds_1.Comment_1: 3条重复的'),(1631761433633,0,82001,12,'2021-09-16 03:03:53','ds_1.Comment_1: 1'),(1631761439061,0,82001,1516086423441,'2021-09-16 03:03:59','ds_1.Comment_1: 1'),(1631761439473,0,82001,12,'2021-09-16 03:03:59','ds_1.Comment_1: 111'),(1631761440161,0,82001,1594127400223,'2021-09-16 03:04:00','ds_1.Comment_1: 123'),(1631761440541,0,82001,12,'2021-09-16 03:04:00','ds_1.Comment_1: 1646'),(1631761441817,0,82001,1557415707105,'2021-09-16 03:04:01','ds_1.Comment_1: 123121545645'),(1631761442305,0,82001,1513094436910,'2021-09-16 03:04:02','ds_1.Comment_1: 00'),(1631761444713,0,82001,1524178455305,'2021-09-16 03:04:04','ds_1.Comment_1: $$'),(1631761445929,0,82001,1516086423441,'2021-09-16 03:04:05','ds_1.Comment_1: 123121545645'),(1631761446849,0,82001,511,'2021-09-16 03:04:06','ds_1.Comment_1: 110'),(1631761447937,0,82001,58,'2021-09-16 03:04:07','ds_1.Comment_1: (fdsd)'),(1631761454057,0,82001,1512314438990,'2021-09-16 03:04:14','ds_1.Comment_1: $$'),(1631761454625,0,82001,543,'2021-09-16 03:04:14','ds_1.Comment_1: (fdsd)'),(1631761454817,0,82001,1557754680146,'2021-09-16 03:04:14','ds_1.Comment_1: -162'),(1631761455589,0,82001,1531969818357,'2021-09-16 03:04:15','ds_1.Comment_1: 1'),(1631761455929,0,82001,1516086423441,'2021-09-16 03:04:15','ds_1.Comment_1: 111'),(1631761456265,0,82001,1513094436910,'2021-09-16 03:04:16','ds_1.Comment_1: 111'),(1631761458221,0,82001,371,'2021-09-16 03:04:18','ds_1.Comment_1: 1'),(1631761459665,0,82001,371,'2021-09-16 03:04:19','ds_1.Comment_1: $$'),(1631761459965,0,82001,1512314438990,'2021-09-16 03:04:19','ds_1.Comment_1: ,王者荣耀'),(1631761460153,0,82001,543,'2021-09-16 03:04:20','ds_1.Comment_1: -162'),(1637305836417,0,82001,1594127400223,'2021-11-19 07:10:36','ds_1.Comment_1: (fdsd)'),(1639101116341,0,82001,1638327674898,'2021-12-10 01:51:56','ds_1.Comment_1: 546411'),(1639386666589,0,82001,1638327674898,'2021-12-13 09:11:06','ds_1.Comment_1: 搞不好'),(1639386674965,1639386671675,82001,1638327674898,'2021-12-13 09:11:14','ds_1.Comment_1: 抱抱你'),(1639449630593,0,82001,1638327674898,'2021-12-14 02:40:30','ds_1.Comment_1: 大概就是感觉分手就分手'),(1639449633733,0,82001,1638327674898,'2021-12-14 02:40:33','ds_1.Comment_1: 财政局干啥干啥就是贵公司'),(1639455622365,1639449637290,82001,1638327674898,'2021-12-14 04:20:22','ds_1.Comment_1: 和不不不不'),(1645290759533,0,82001,1638327674898,'2022-02-19 17:12:39','ds_1.Comment_1: g'),(1645497835569,0,82001,1645416338268,'2022-02-22 02:43:55','ds_1.Comment_1: 456'),(1645678658757,0,82001,1645416338268,'2022-02-24 04:57:38','ds_1.Comment_1: 厉害了'),(1645678666889,1645678658757,82001,1645416338268,'2022-02-24 04:57:46','ds_1.Comment_1: 刚刚'),(1646123831361,0,82001,1645416338268,'2022-03-01 08:37:11','ds_1.Comment_1: 啃你'),(1648697303481,0,82001,12,'2022-03-31 03:28:23','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1648697310625,0,82001,12,'2022-03-31 03:28:30','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1648716225389,1648716219295,82001,1648604448242,'2022-03-31 08:43:45','ds_1.Comment_1: 1212'),(1650022311005,0,82001,1649086185746,'2022-04-15 11:31:51','ds_1.Comment_1: 寂寞'),(1650022318825,0,82001,1649086185746,'2022-04-15 11:31:58','ds_1.Comment_1: 明年'),(1650786597757,0,82001,1649086185746,'2022-04-24 07:49:57','ds_1.Comment_1: 你好'),(1651717773049,0,82001,12,'2022-05-05 02:29:33','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1657618548589,0,82001,12,'2022-07-12 09:35:48','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1659423914365,1638631329728,82001,1637985952844,'2022-08-02 07:05:14','ds_1.Comment_1: wdd'),(1660616987885,0,82001,12,'2022-08-16 02:29:47','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1666604060829,0,82003,12,'2022-10-24 09:34:20','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1667605291185,1652796392746,82001,1651846337935,'2022-11-04 23:41:31','ds_1.Comment_1: 1'),(1671437056133,0,82001,1649672357944,'2022-12-19 08:04:16','ds_1.Comment_1: sssccccccc'),(1671437066189,0,82001,1649672357944,'2022-12-19 08:04:26','ds_1.Comment_1: sssccccccc'),(1675395998069,0,82001,1674308870813,'2023-02-03 03:46:38','ds_1.Comment_1: tff'),(1675676416033,1639556974079,82001,1637985952844,'2023-02-06 09:40:16','ds_1.Comment_1: 1234'),(1675762580073,1630891147547,82001,1630746489563,'2023-02-07 09:36:20','ds_1.Comment_1: 222'),(1676271716321,0,82001,1675742375160,'2023-02-13 07:01:56','ds_1.Comment_1: 333'),(1678959296341,0,82003,12,'2023-03-16 09:34:56','ds_1.Comment_1: APIJSON'),(1680320444497,0,82001,1677223327076,'2023-04-01 03:40:44','ds_1.Comment_1: 灌灌灌灌'),(1681710737853,0,82002,1679908549702,'2023-04-17 05:52:17','ds_1.Comment_1: gjbgh'),(1681999075961,0,82001,470,'2023-04-20 13:57:55','ds_1.Comment_1: ffff'),(1681999171521,0,82001,470,'2023-04-20 13:59:31','ds_1.Comment_1: ffff'),(1682000985545,0,82001,470,'2023-04-20 14:29:45','ds_1.Comment_1: xdddddd'),(1683353882473,0,82001,142,'2023-05-06 06:18:02','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683353886837,0,82001,142,'2023-05-06 06:18:06','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683354577541,0,82001,144,'2023-05-06 06:29:37','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683355604325,0,82001,12,'2023-05-06 06:46:44','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1684140534961,0,82001,12,'2023-05-15 08:48:55','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1685617635685,0,82001,1665293930441,'2023-06-01 11:07:15','ds_1.Comment_1: 5464646'),(1685617655797,0,82001,1665293930441,'2023-06-01 11:07:35','ds_1.Comment_1: 5464646'),(1686196352285,0,82001,1682103762126,'2023-06-08 03:52:32','ds_1.Comment_1: 5666'),(1686303797185,0,82001,1645416338268,'2023-06-09 09:43:17','ds_1.Comment_1: 哦咯模棱两可'),(1686328128073,0,82001,1645416338268,'2023-06-09 16:28:48','ds_1.Comment_1: 牛逼'),(1686710639953,0,82001,1684981561371,'2023-06-14 02:43:59','ds_1.Comment_1: ?'),(1686710650057,0,82001,1684981561371,'2023-06-14 02:44:10','ds_1.Comment_1: ?'),(1686897854569,0,82001,1684981561371,'2023-06-16 06:44:14','ds_1.Comment_1: mood'),(1686897874733,0,82001,1684981561371,'2023-06-16 06:44:34','ds_1.Comment_1: mood'),(1686897894829,0,82001,1684981561371,'2023-06-16 06:44:54','ds_1.Comment_1: mood'),(1686897904885,0,82001,1684981561371,'2023-06-16 06:45:04','ds_1.Comment_1: mood'),(1693680555321,0,82001,235,'2023-09-02 18:49:15','ds_1.Comment_1: Ab_Cd4426623868886511'),(1693680555325,0,82002,401,'2023-09-04 06:11:58','ds_1.Comment_1: Ab_Cd-2186617588410572'),(1693680555337,0,82004,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd6203800719877287'),(1693680555341,0,82009,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd-7313973027522679'),(1693680555345,0,82001,401,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd7237422506126807'),(1693680555353,0,82001,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd6294670593907367'),(1693680555357,0,82005,401,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd6999788992225395'),(1693680555361,0,82009,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd-386791421830424'),(1693680555369,0,82007,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd-4315325886904'),(1695808012765,0,82001,12,'2023-09-27 09:46:52','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1697115622725,0,82001,1,'2023-10-12 13:00:22','ds_1.Comment_1: 1'),(1698723301949,0,82002,12,'2023-10-31 03:35:02','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1700488670273,0,82002,1700372077715,'2023-11-20 13:57:50','ds_1.Comment_1: test'),(1700488850297,0,82002,1700488719094,'2023-11-20 14:00:50','ds_1.Comment_1: test'),(1701153067449,0,82001,12,'2023-11-28 06:31:07','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1701661625917,0,82001,12,'2023-12-04 03:47:05','ds_1.Comment_1: 测试1111'),(1701676438353,0,82002,666666,'2023-12-04 07:53:58','ds_1.Comment_1: 这是新建 !'),(1701676438401,0,82002,88888888,'2023-12-04 07:53:58','ds_1.Comment_1: 这是新建 !'),(1701677681717,0,82002,12,'2023-12-04 08:14:41','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1702401213373,0,82007,401,'2023-12-13 10:02:05','ds_1.Comment_1: Ab_Cd-4225572075990508'),(1702401213381,0,82004,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd6373722079198439'),(1702401213389,0,82010,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd2988679823594555'),(1702401213397,0,82009,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd-3632240841909172'),(1702401213401,0,82002,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd-2170731090025816'),(1702401213405,0,82009,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd269140865411543'),(1702401213409,0,82001,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd4852681634615031'),(1702401213417,0,82009,401,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-350368370475472'),(1702401213421,0,82005,12,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd3119145138660639'),(1702401213425,0,82008,401,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-1827902215893684'),(1702401213429,0,82002,401,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-6315333086151784'),(1702401213437,0,82009,12,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-7802139111814783'),(1702401213445,0,82007,401,'2023-12-13 10:02:08','ds_1.Comment_1: Ab_Cd-5115620335352312'),(1702401213461,0,82005,12,'2023-12-13 10:02:08','ds_1.Comment_1: Ab_Cd2243993689411583'),(1702401213473,0,82006,401,'2023-12-13 10:02:39','ds_1.Comment_1: Ab_Cd-4734672872211368'),(1702401213481,0,82005,401,'2023-12-13 10:02:39','ds_1.Comment_1: Ab_Cd2098233721074687'),(1702401213489,0,82009,401,'2023-12-13 10:02:39','ds_1.Comment_1: Ab_Cd1198887753628367'),(1702401213497,0,82005,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd8789538862152891'),(1702401213501,0,82004,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd-702044903466940'),(1702401213521,0,82005,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd7241299919300251'),(1702401213525,0,82007,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd-1953719130947616'),(1702401213533,0,82003,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd4838654061396323'),(1702401213537,0,82008,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd5161976574809799'),(1702401213541,0,82002,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd-598365248638636'),(1702401213549,0,82009,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd2272851398768027'),(1702401213561,0,82001,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd95863935516583'),(1702401213569,0,82010,401,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd-4317357036955636'),(1704439979409,0,82001,1703425198937,'2024-01-05 07:32:59','ds_1.Comment_1: 牛逼'),(1705974277629,1680742650703,82001,1680494769487,'2024-01-23 01:44:37','ds_1.Comment_1: ggv'),(1708565424757,0,82001,1693680292080,'2024-02-22 01:30:24','ds_1.Comment_1: 222'),(1708916797305,0,82002,15,'2024-02-26 03:06:37','ds_1.Comment_1: 测试新增评论'),(1708929594961,0,82001,1693680292080,'2024-02-26 06:39:54','ds_1.Comment_1: 1111'),(1709020162497,0,82001,1690970599784,'2024-02-27 07:49:22','ds_1.Comment_1: cmmc'),(1709022349529,0,82002,15,'2024-02-27 08:25:49','ds_1.Comment_1: 测试新增评论'),(1709022696285,0,88888,15,'2024-02-27 08:31:36','ds_1.Comment_1: 测试新增评论'),(1709178281285,0,82002,15,'2024-02-29 03:44:41','ds_1.Comment_1: 测试新增评论'),(1709273218365,0,82001,15,'2024-03-01 06:06:58','ds_1.Comment_1: 测试新增评论'),(1709277353041,0,82003,15,'2024-03-01 07:15:53','ds_1.Comment_1: 测试新增评论'),(1709278973645,0,88888,15,'2024-03-01 07:42:53','ds_1.Comment_1: 测试新增评论'),(1709285310765,0,82001,15,'2024-03-01 09:28:30','ds_1.Comment_1: 测试新增评论'),(1709629786697,0,82001,15,'2024-03-05 09:09:46','ds_1.Comment_1: 测试新增评论'),(1709632979285,0,82003,15,'2024-03-05 10:02:59','ds_1.Comment_1: 测试新增评论'),(1709785630273,0,82002,15,'2024-03-07 04:27:10','ds_1.Comment_1: 测试新增评论'),(1709813932965,0,88888,15,'2024-03-07 12:18:53','ds_1.Comment_1: 测试新增评论'),(1709975144529,1584336841458,82003,1583574596245,'2024-03-09 09:05:44','ds_1.Comment_1: hhh'),(1709975284389,1626428214932,82003,1619511861462,'2024-03-09 09:08:04','ds_1.Comment_1: ok'),(1710338148649,0,82001,1685592384514,'2024-03-13 13:55:48','ds_1.Comment_1: hello'),(1710488594505,1710337723054,82001,1710233170301,'2024-03-15 07:43:14','ds_1.Comment_1: 你个'),(1711433950209,0,82001,15,'2024-03-26 06:19:10','ds_1.Comment_1: 测试新增评论'),(1711961505969,0,82001,1710746917236,'2024-04-01 08:51:45','ds_1.Comment_1: 宝宝'),(1712644302113,1709020162497,82001,1690970599784,'2024-04-09 06:31:42','ds_1.Comment_1: 现在想想'),(1713955538785,0,82003,12,'2024-04-24 10:45:38','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1714048094805,0,82003,15,'2024-04-25 12:28:14','ds_1.Comment_1: 测试新增评论'),(1714048096613,0,82003,15,'2024-04-25 12:28:16','ds_1.Comment_1: 测试新增评论'),(1714048097493,0,82003,15,'2024-04-25 12:28:17','ds_1.Comment_1: 测试新增评论'),(1717862858501,0,82001,1717757679298,'2024-06-08 16:07:38','ds_1.Comment_1: 测试新增评论'); +/*!40000 ALTER TABLE `Comment_1` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-02-03 23:27:30 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_0.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_0.sql new file mode 100644 index 0000000..936529e --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_0.sql @@ -0,0 +1,57 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: localhost Database: ds_1 +-- ------------------------------------------------------ +-- Server version 8.0.32 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `Moment_0` +-- + +DROP TABLE IF EXISTS `Moment_0`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Moment_0` ( + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '唯一标识', + `userId` bigint NOT NULL COMMENT '用户id', + `date` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期', + `content` varchar(300) DEFAULT NULL COMMENT '内容', + `praiseUserIdList` json NOT NULL COMMENT '点赞的用户id列表', + `pictureList` json NOT NULL COMMENT '图片列表', + PRIMARY KEY (`id`), + KEY `userId` (`userId`,`date`), + KEY `index_date` (`date`) +) ENGINE=InnoDB AUTO_INCREMENT=1717862890827 DEFAULT CHARSET=utf8mb3 COMMENT='动态'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `Moment_0` +-- + +LOCK TABLES `Moment_0` WRITE; +/*!40000 ALTER TABLE `Moment_0` DISABLE KEYS */; +INSERT INTO `Moment_0` VALUES (12,70793,'2017-02-08 08:06:11','Moment_0: APIJSON,let interfaces and documents go to hell !','[70793, 93793, 82044, 82040, 82055, 90814, 38710, 82002, 82006, 1508072105320, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/788c0a7e11a4f5aadef3c886f028c79b4808613a/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343932353935372d313732303737333630382e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\"]'),(32,82002,'2017-02-08 08:06:11','Moment_0: tst','[38710, 82001, 82005]','[\"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg\"]'),(58,90814,'2017-02-01 11:14:31','Moment_0: This is a Content...-435','[38710, 82003, 82005, 93793, 82006, 82044, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\"]'),(170,70793,'2017-02-01 11:14:31','Moment_0: This is a Content...-73','[82044, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg\"]'),(470,38710,'2017-02-01 11:14:31','Moment_0: This is a Content...-470','[]','[\"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\"]'),(704,38710,'2017-03-12 09:39:44','Moment_0: APIJSON is a JSON Transmission Structure Protocol…','[82003, 82002, 82001]','[\"https://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000\", \"https://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000\"]'),(1491200468898,38710,'2017-04-03 06:21:08','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000\", \"https://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000\"]'),(1508072491570,82002,'2017-10-15 13:01:31','Moment_0: 有点冷~','[82001, 82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1508072633830,93793,'2017-10-15 13:03:53','Moment_0: 天凉了\n有男朋友的抱男盆友\n有女朋友的抱女朋友\n而我就比较牛逼了\n我不冷。','[82005, 82002, 70793, 38710, 82045, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1512314438990,38710,'2017-12-03 15:20:38','Moment_0: APIJSON iOS-Swift版发布,自动生成请求代码,欢迎使用^_^ \n https://github.com/TommyLemon/APIJSON','[82002, 70793, 1512531601485, 82001]','[\"https://images2018.cnblogs.com/blog/660067/201712/660067-20171203231829476-1202860128.jpg\"]'),(1513094436910,38710,'2017-12-12 16:00:36','Moment_0: APIJSON-Python已发布,欢迎体验^_^\nhttps://github.com/TommyLemon/APIJSON','[82005, 82001]','[\"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_get.jpg\", \"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_code.jpg\", \"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_doc.jpg\"]'),(1514858533480,82056,'2018-01-02 02:02:13','Moment_0: I am the Iron Man','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1523935589834,1523626157302,'2018-04-17 03:26:29','Moment_0: by第一条动态','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1523936332614,1523626157302,'2018-04-17 03:38:52','Moment_0: by第二条','[82001, 1523935772553]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524298780222,1524298730523,'2018-04-21 08:19:40','Moment_0: e说点什么吧~','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524826652626,1524298730523,'2018-04-27 10:57:32','Moment_0: 说点什么吧~哈哈哈','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1527498273102,1527498229991,'2018-05-28 09:04:33','Moment_0: 说点什么吧~yui','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1527821296110,1527495857924,'2018-06-01 02:48:16','Moment_0: 这是我的商品1号','[1527821445610, 82003, 82001]','[\"http://pic31.nipic.com/20130710/13151003_093759013311_2.jpg\", \"https://cbu01.alicdn.com/img/ibank/2013/514/580/740085415_2101098104.310x310.jpg\"]'),(1527830331780,1527495857924,'2018-06-01 05:18:51','Moment_0: 各种购物袋','[38710, 82002, 1527495857924, 82003]','[\"https://cbu01.alicdn.com/img/ibank/2018/292/335/8058533292_57202994.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2018/089/747/8586747980_1843977904.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2016/025/123/3012321520_471514049.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2017/729/995/4800599927_69233977.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2016/377/263/3755362773_609022431.310x310.jpg\"]'),(1527830474378,1527495857924,'2018-06-01 05:21:14','Moment_0: 电视机','[1527495857924, 82001]','[\"https://cbu01.alicdn.com/img/ibank/2017/231/077/4524770132_781046171.310x310.jpg\"]'),(1528251335464,1528250827953,'2018-06-06 02:15:35','Moment_0: meiyou','[1528250827953]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528260617722,1528255497767,'2018-06-06 04:50:17','Moment_0: 。。。。','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528269822710,1528264711016,'2018-06-06 07:23:42','Moment_0: hhhhhhh','[1528250827953, 82001, 82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528269988360,1528250827953,'2018-06-06 07:26:28','Moment_0: 为什么发动态默认会有这两张图片啊?不可以选择自己的图片','[1528250827953]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528274037224,1528250827953,'2018-06-06 08:33:57','Moment_0: 说点什么吧~hgdsryh','[]','[\"https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=0&spn=0&di=163958046450&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=1403824732%2C1921310327&os=1571651475%2C3950546936&simid=3426978648%2C550887139&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fooo_z%26e3Botg9aaa_z%26e3Bv54AzdH3Fowssrwrj6_kt2_88an88_8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=\", \"https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=12&spn=0&di=105575240210&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=832573604%2C2847830718&os=1862795828%2C1682403963&simid=4268934412%2C608274877&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fkkf_z%26e3Bfzi54j_z%26e3Bv54AzdH3Fna-ccbaa-1jpwts-d90cd8ll-a-8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=\"]'),(1528462217322,1528339692804,'2018-06-08 12:50:17','Moment_0: 有没有小姐姐准备端午出游的?\n地点:北戴河','[]','[\"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg\", \"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg\"]'),(1531062713966,82002,'2018-07-08 15:11:53','Moment_0: 云南好美啊( ◞˟૩˟)◞','[82001, 82005, 38710, 70793, 93793, 82003, 1531969715979]','[\"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg\", \"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg\"]'),(1533908589726,1533835176109,'2018-08-10 13:43:09','Moment_0: 我的','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1541557989440,38710,'2018-11-07 02:33:09','Moment_0: 自动化接口和文档 APIJSON 3.0.0 发布\nhttps://www.oschina.net/news/101548/apijson-3-0-released','[82001]','[\"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Auto_get.jpg\"]'),(1557754680146,82012,'2019-05-13 13:38:00','Moment_0: 马云:工作上要有996的精神,生活上要669,也就是6天6次关键要“久”。大家怎么看?','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1559129731896,1559129626356,'2019-05-29 11:35:31','Moment_0: xfshter','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1563605336326,1563605318975,'2019-07-20 06:48:56','Moment_0: 说点什么吧~死','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1568087960412,70793,'2019-09-10 03:59:20','Moment_0: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1594385350586,82003,'2020-07-10 12:49:10','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1606312076474,82002,'2020-11-25 13:47:56',NULL,'[82001]','[]'),(1608215822376,82003,'2020-12-17 14:37:02','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1619511861462,82003,'2021-04-27 08:24:21','Moment_0: 对象关系映射- 维基百科,自由的百科全书','[82003, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1624700434072,82002,'2021-06-26 09:40:34','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1627367646018,70793,'2021-07-27 06:34:06','Moment_0: 什么玩意啊!数据呢!','[]','[]'),(1630892587084,82001,'2021-09-06 01:43:07','Moment_0: \"你OK里咯ing3123123\"gjh','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630893108502,82001,'2021-09-06 01:51:48','Moment_0: \"\"55982\"\"','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630894539008,82001,'2021-09-06 02:15:39','Moment_0: \"说点什么吧~12\"','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630980585686,82001,'2021-09-07 02:09:45','Moment_0: 说点什么吧~;;;;','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1632294230574,82003,'2021-09-22 07:03:50','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001, 82003]','[]'),(1637590638534,82004,'2021-11-22 14:17:18','Moment_0: APIJSON,let interfaces and documents go to hell !','[82002]','[]'),(1637985952844,82001,'2021-11-27 04:05:52','Moment_0: 111','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1638327674898,82002,'2021-12-01 03:01:14','Moment_0: 海洋动物数量减少,如果非吃不可,不点杀也是在保护它们','[82001]','[]'),(1645416338268,82005,'2022-02-21 04:05:38','Moment_0: 说点什么吧~嘤嘤嘤','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1646030604412,38710,'2022-02-28 06:43:24','Moment_0: 今天天气不错,到处都是提拉米苏雪','[38710]','[]'),(1647781303020,82003,'2022-03-20 13:01:43','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1648604448242,82002,'2022-03-30 01:40:48','Moment_0: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1649086182892,82002,'2022-04-04 15:29:42','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1649086185746,82003,'2022-04-04 15:29:45','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1649672357944,82001,'2022-04-11 10:19:17','Moment_0: 今天天气真好','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1661002561890,1660645570787,'2022-08-20 13:36:01','Moment_0: 老铁双击888!','[]','[]'),(1670981809240,82001,'2022-12-14 01:36:49','Moment_0: 今天是2022年12月14日,zyy在这里测试!','[]','[]'),(1675742375160,82001,'2023-02-07 03:59:35','Moment_0: 测试看看','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1675910359578,82001,'2023-02-09 02:39:19','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677051490546,82001,'2023-02-22 07:38:10','Moment_0: 说点什么吧~哈哈V大夫才发货呢','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677051517418,82001,'2023-02-22 07:38:37','Moment_0: 说点什么吧~444个重复过程','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677223327076,82001,'2023-02-24 07:22:07','Moment_0: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1678877778484,82001,'2023-03-15 10:56:18','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679078499770,82001,'2023-03-17 18:41:39','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679313363196,82001,'2023-03-20 11:56:03','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679908549702,82002,'2023-03-27 09:15:49','Moment_0: APIJSON,let interfaces and documents go to hell !','[82002]','[]'),(1682103762126,82002,'2023-04-21 19:02:42','Moment_0: 55555','[82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682137190808,38710,'2023-04-22 04:19:50','Moment_0: 555','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682406888196,82001,'2023-04-25 07:14:48','Moment_0: gjhtest10087','[]','[]'),(1682783909204,82001,'2023-04-29 15:58:29','Moment_0: 说点什么吧~哈喽','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1684979928084,82001,'2023-05-25 01:58:48','Moment_0: test01','[82001]','[]'),(1684980965206,82001,'2023-05-25 02:16:05','Moment_0: Test of 0206','[]','[]'),(1684981222020,82001,'2023-05-25 02:20:22','Moment_0: test ctmd','[]','[]'),(1684981540478,82001,'2023-05-25 02:25:40','Moment_0: Test of 6838','[82001]','[]'),(1685592384514,82001,'2023-06-01 04:06:24','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1690970599784,82001,'2023-08-02 10:03:19','Moment_0: 说点什么吧~粑粑麻麻','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1692260707538,82002,'2023-08-17 08:25:07','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1693680292080,82001,'2023-09-02 18:44:53','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1700488719094,82002,'2023-11-20 13:58:39','Moment_0: 测试发动态','[82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1704175454868,82002,'2024-01-14 04:04:49','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1704175454870,82002,'2024-01-15 03:53:22','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1704175454874,1490109742863,'2024-01-15 04:22:47','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675844446,88888,'2024-01-19 14:50:44','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705675845904,82001,'2024-01-21 09:38:56','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705675845914,82002,'2024-01-22 04:13:41','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1714964371588,82001,'2024-05-06 02:59:31','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1715133130408,82001,'2024-05-08 01:52:10','Moment_0: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133150286,82001,'2024-05-08 01:52:30','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133174704,82001,'2024-05-08 01:52:54','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715221781960,82002,'2024-05-09 02:29:41','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1715222278578,82002,'2024-05-26 04:19:55','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1716706970370,38710,'2024-05-26 07:02:50','Moment_0: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1716707116336,82001,'2024-05-26 07:05:16','Moment_0: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717124655020,82002,'2024-05-31 03:04:15','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717468801248,82001,'2024-06-04 02:40:01','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717561747710,82001,'2024-06-05 04:29:07','Moment_0: 说点什么吧~1001','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717757679298,82001,'2024-06-07 10:54:39','Moment_0: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717862890826,38710,'2024-06-08 16:08:10','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'); +/*!40000 ALTER TABLE `Moment_0` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-02-03 23:27:31 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_1.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_1.sql new file mode 100644 index 0000000..0b6142b --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_1.sql @@ -0,0 +1,57 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: localhost Database: ds_1 +-- ------------------------------------------------------ +-- Server version 8.0.32 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `Moment_1` +-- + +DROP TABLE IF EXISTS `Moment_1`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Moment_1` ( + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '唯一标识', + `userId` bigint NOT NULL COMMENT '用户id', + `date` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期', + `content` varchar(300) DEFAULT NULL COMMENT '内容', + `praiseUserIdList` json NOT NULL COMMENT '点赞的用户id列表', + `pictureList` json NOT NULL COMMENT '图片列表', + PRIMARY KEY (`id`), + KEY `userId` (`userId`,`date`), + KEY `index_date` (`date`) +) ENGINE=InnoDB AUTO_INCREMENT=1717862890827 DEFAULT CHARSET=utf8mb3 COMMENT='动态'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `Moment_1` +-- + +LOCK TABLES `Moment_1` WRITE; +/*!40000 ALTER TABLE `Moment_1` DISABLE KEYS */; +INSERT INTO `Moment_1` VALUES (15,82001,'2017-02-08 00:06:11','Moment_1: \"12312gjhtest15','[82002, 70793, 38710, 93793, 82005, 82009, 82007, 82014, 82021, 82026, 82006, 82011, 82016, 82020, 82024, 82004, 82012, 82015, 82019, 82025, 82003, 82008, 82013, 82018, 82023, 82010, 82022, 82017]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(235,38710,'2017-02-08 08:06:11','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[\"http://abc.cn/1.png\"]'),(301,93793,'2017-02-01 11:14:31','Moment_1: This is a Content...-301','[38710, 93793, 82003, 82005, 82040, 82055, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(371,82002,'2017-02-01 11:14:31','Moment_1: This is a Content...-371','[90814, 93793, 82003, 82005, 82006, 82040, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(511,38710,'2017-02-08 08:06:11','Moment_1: APIJSON,let interfaces and documents go to hell !','[70793, 93793, 82001]','[\"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\"]'),(543,93793,'2017-02-08 08:06:11',NULL,'[82001]','[\"https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(551,70793,'2017-02-08 08:06:11','Moment_1: 海洋动物数量减少,如果非吃不可,不点杀也是在保护它们','[82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\"]'),(595,38710,'2017-03-05 05:29:19',NULL,'[70793, 82002, 82001]','[\"https://common.cnblogs.com/images/icon_weibo_24.png\", \"https://static.oschina.net/uploads/user/19/39085_50.jpg\"]'),(1493835799335,38710,'2017-05-03 18:23:19','Moment_1: APIJSON is a JSON Transmission Structure Protocol…','[82002, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1508053762227,82003,'2017-10-15 07:49:22','Moment_1: 我也试试','[1515565976140, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1514017444961,82002,'2017-12-23 08:24:04','Moment_1: 123479589679','[82002, 1520242280259, 82001, 70793, 1524042900591, 1528264711016]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1516086423441,93793,'2018-01-16 07:07:03','Moment_1: 抢到票了,开心ପ( ˘ᵕ˘ ) ੭ ☆','[93793, 38710, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1520242333325,1520242280259,'2018-03-05 09:32:13','Moment_1: 法拉利','[1520242280259, 70793, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524178455305,1524042900591,'2018-04-19 22:54:15','Moment_1: 早上好啊','[1524042900591, 38710, 82003, 82001, 1523626157302]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528356378455,1528264711016,'2018-06-07 07:26:18','Moment_1: 去旅游嘛~','[82001]','[]'),(1528356421201,1528264711016,'2018-06-07 07:27:01','Moment_1: (ง •̀_•́)ง','[]','[]'),(1528356496939,1528356470041,'2018-06-07 07:28:16','Moment_1: (๑•ั็ω•็ั๑)','[]','[]'),(1528676875139,1528339692804,'2018-06-11 00:27:55','Moment_1: 123456','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1531969818357,1531969715979,'2018-07-19 03:10:18','Moment_1: http://q18idc.com','[1531969715979, 82001, 38710, 1534926301956]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1535781636403,1532188114543,'2018-09-01 06:00:36','Moment_1: 这是一个测试','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1536064087117,1532188114543,'2018-09-04 12:28:07','Moment_1: 说点什么吧~奥哈达','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1536805585275,82003,'2018-09-13 02:26:25','Moment_1: iPhone Xs发布了,大家怎么看?','[82002, 82005, 70793, 82003, 82001]','[\"https://pic1.zhimg.com/80/v2-e129b40810070443add1c28e6185c894_hd.jpg\"]'),(1544276216289,1544276209348,'2018-12-08 13:36:56','Moment_1: 说点什么吧~ey','[1544276209348]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1545187924367,1544503822963,'2018-12-19 02:52:04','Moment_1: 说哼哼唧唧点什么吧~','[1544503822963, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1553096819293,1553095415917,'2019-03-20 15:46:59','Moment_1: 说点什么吧~睡觉觉很喜欢','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1556387217941,82002,'2019-04-27 17:46:57','Moment_1: 说点什么吧~啦啦啦','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1557415707105,82003,'2019-05-09 15:28:27','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1558798664043,82003,'2019-05-25 15:37:44','Moment_1: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1568086574157,70793,'2019-09-10 03:36:14','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1568087960391,70793,'2019-09-10 03:59:20','Moment_1: 今天天气不错,到处都是提拉米苏雪','[82001]','[]'),(1572177746393,82002,'2019-10-27 12:02:26','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1577855941093,38710,'2020-01-01 05:19:01','Moment_1: 大家新年快乐鸭~','[82001, 38710]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1583574596245,82003,'2020-03-07 09:49:56','Moment_1: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1594127400223,82002,'2020-07-07 13:10:00','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001, 82002]','[]'),(1594385349411,82002,'2020-07-10 12:49:09','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1611503147421,82002,'2021-01-24 15:45:47','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1617562878095,82002,'2021-04-04 19:01:18','Moment_1: test','[82002, 82001]','[\"http://abc.com/2.png\"]'),(1627367513331,70793,'2021-07-27 06:31:53','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1630746489563,82001,'2021-09-04 09:08:09','Moment_1: \"312312312\"gjhtest04','[82001]','[]'),(1631257842981,82001,'2021-09-10 07:10:42','Moment_1: dasdas','[82001]','[]'),(1634090516839,82001,'2021-10-13 02:01:56','Moment_1: huojianfeng','[82001]','[]'),(1637405012523,82003,'2021-11-20 10:43:32','Moment_1: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1637590638567,82004,'2021-11-22 14:17:18','Moment_1: 测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1646030924765,38710,'2022-02-28 06:48:44','Moment_1: 测试专用测试专用测试专用测试专用','[38710]','[]'),(1646031858837,38710,'2022-02-28 07:04:18','Moment_1: 387103871038710387103871038710387103871038710','[38710]','[]'),(1646657313491,82002,'2022-03-07 12:48:33','Moment_1: 今天天气不错,^^^!!!','[]','[]'),(1648517248247,82003,'2022-03-29 01:27:28','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1648604448403,82002,'2022-03-30 01:40:48','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1651846337935,82002,'2022-05-06 14:12:17','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1665293930441,82002,'2022-10-09 05:38:50','Moment_1: 我就试试','[]','[]'),(1670420616061,82001,'2022-12-07 13:43:36','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1670981978461,82002,'2022-12-14 01:39:38','Moment_1: 今天是2022年12月14日,测试82002!','[]','[]'),(1673797744161,82001,'2023-01-15 15:49:04','Moment_1: 对方官方的说法','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1674308870813,82001,'2023-01-21 13:47:50','Moment_1: 说点什么吧~看看就','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677144307563,82001,'2023-02-23 09:25:07','Moment_1: APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677684807693,82001,'2023-03-01 15:33:27','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1680494769487,82001,'2023-04-03 04:06:09','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1681403443101,82001,'2023-04-13 16:30:43','Moment_1: 测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1681403571733,82002,'2023-04-13 16:32:51','Moment_1: 测试新增动态','[82002]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1681404270495,82003,'2023-04-13 16:44:30','Moment_1: 测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1682096402171,82001,'2023-04-21 17:00:02','Moment_1: Test of 0622','[82001]','[]'),(1682171738141,38710,'2023-04-22 13:55:38','Moment_1: 哈哈哈哈','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682269375445,82001,'2023-04-23 17:02:55','Moment_1: ','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682314259661,82001,'2023-04-24 05:30:59','Moment_1: 说点什么吧~哈哈哈','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682320252383,38710,'2023-04-24 07:10:52','Moment_1: 123123123','[]','[]'),(1682320399121,38710,'2023-04-24 07:13:19','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1682501802339,82001,'2023-04-26 09:36:42','Moment_1: 说点什么吧~发朋友圈','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1683911924815,82001,'2023-05-12 17:18:44','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1684980752101,82001,'2023-05-25 02:12:32','Moment_1: ctmd','[82001]','[]'),(1684981220795,82001,'2023-05-25 02:20:20','Moment_1: test ctmd','[82001]','[]'),(1684981356791,82001,'2023-05-25 02:22:36','Moment_1: 123','[]','[]'),(1685592394221,82001,'2023-06-01 04:06:34','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1686563612923,82001,'2023-06-12 09:53:33','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1690970609817,82001,'2023-08-02 10:03:29','Moment_1: 说点什么吧~粑粑麻麻','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1700372077715,82002,'2023-11-19 05:34:37','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1703425198937,88888,'2023-12-24 13:39:59','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454867,82002,'2024-01-14 04:04:48','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454869,82002,'2024-01-15 03:53:21','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454873,1490109742863,'2024-01-15 04:22:45','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705663946041,82001,'2024-01-19 11:32:26','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705663946759,82001,'2024-01-19 11:32:26','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845903,88888,'2024-01-19 14:50:45','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845905,82001,'2024-01-21 09:39:09','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845917,82001,'2024-05-04 16:20:24','Moment_1: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1715133152873,82001,'2024-05-08 01:52:32','Moment_1: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133172877,82001,'2024-05-08 01:52:52','Moment_1: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715222278579,82002,'2024-05-26 04:19:56','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1716707004081,38710,'2024-05-26 07:03:24','Moment_1: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717468800883,82001,'2024-06-04 02:40:00','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1717757674241,82001,'2024-06-07 10:54:34','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717862884827,82001,'2024-06-08 16:08:04','Moment_1: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'); +/*!40000 ALTER TABLE `Moment_1` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-02-03 23:27:31 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_apijson_user.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_apijson_user.sql new file mode 100644 index 0000000..516a8d8 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_apijson_user.sql @@ -0,0 +1,59 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: localhost Database: ds_1 +-- ------------------------------------------------------ +-- Server version 8.0.32 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `apijson_user` +-- + +DROP TABLE IF EXISTS `apijson_user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `apijson_user` ( + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '唯一标识', + `sex` tinyint NOT NULL DEFAULT '0' COMMENT '性别:\n0-男\n1-女', + `name` varchar(20) NOT NULL COMMENT '名称', + `tag` varchar(45) DEFAULT NULL COMMENT '标签', + `head` varchar(300) DEFAULT 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png' COMMENT '头像url', + `contactIdList` json DEFAULT NULL COMMENT '联系人id列表', + `pictureList` json DEFAULT NULL COMMENT '照片列表', + `date` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期', + PRIMARY KEY (`id`), + KEY `index_date` (`date`), + FULLTEXT KEY `name_tag_index` (`name`,`tag`) /*!50100 WITH PARSER `ngram` */ +) ENGINE=InnoDB AUTO_INCREMENT=1704867024922 DEFAULT CHARSET=utf8mb3 COMMENT='用户公开信息表。\n对安全要求高,不想泄漏真实名称。对外名称为 User'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `apijson_user` +-- + +LOCK TABLES `apijson_user` WRITE; +/*!40000 ALTER TABLE `apijson_user` DISABLE KEYS */; +INSERT INTO `apijson_user` VALUES (38710,0,'TommyLemon','ds_1','https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000','[82003, 82005, 90814, 82004, 82009, 82002, 82044, 93793, 70793]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]','2017-02-01 11:21:50'),(82002,1,'Jan','ds_1','https://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000','[82005, 38710]','[]','2017-02-01 11:21:50'),(82004,0,'Tommy','ds_1','https://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000','[]','[]','2017-02-01 11:21:50'),(82006,1,'Meria','ds_1','https://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000','[]','[]','2017-02-01 11:21:50'),(82012,0,'Steve','ds_1','https://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000','[82004, 82002, 93793]','[]','2017-02-01 11:21:50'),(82020,0,'ORANGE','ds_1','https://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000','[]','[]','2017-02-01 11:21:50'),(82022,0,'Internet','ds_1','https://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000','[]','[]','2017-02-01 11:21:50'),(82024,0,'Lemon','ds_1','https://static.oschina.net/uploads/user/427/855532_50.jpg?t=1435030876000','[]','[]','2017-02-01 11:21:50'),(82026,0,'iOS','ds_1','https://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000','[]','[]','2017-02-01 11:21:50'),(82028,1,'gaeg','ds_1','https://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000','[]','[]','2017-02-01 11:21:50'),(82030,1,'Fun','ds_1','https://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000','[]','[]','2017-02-01 11:21:50'),(82032,0,'Stack','ds_1','https://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000','[]','[]','2017-02-01 11:21:50'),(82034,1,'Jump','ds_1','https://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000','[]','[]','2017-02-01 11:21:50'),(82036,0,'SAG','ds_1','https://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000','[]','[]','2017-02-01 11:21:50'),(82038,0,'Battle','ds_1','https://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000','[]','[]','2017-02-01 11:21:50'),(82040,1,'Dream','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[70793]','[]','2017-03-02 16:44:26'),(82042,1,'Why','ds_1','https://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000','[]','[]','2017-03-04 10:04:33'),(82044,1,'Love','ds_1','https://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000','[82006]','[]','2017-03-04 10:20:27'),(82046,0,'Team','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[38710, 82002, 1485246481130]','[]','2017-03-04 15:11:17'),(82048,0,'Moto','ds_1','https://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000','[]','[]','2017-03-04 16:04:02'),(82050,0,'Parl','ds_1','https://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000','[]','[]','2017-03-05 09:52:52'),(82052,0,'Unbrella','ds_1','https://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000','[]','[]','2017-03-05 09:57:54'),(82054,0,'Harvey','ds_1','https://static.oschina.net/uploads/user/19/39085_50.jpg','[]','[]','2017-03-06 12:29:03'),(82056,1,'IronMan','ds_1','https://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000','[]','[]','2017-03-11 15:32:25'),(82058,0,'StupidBird','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[82001, 82002]','[]','2017-03-12 11:23:04'),(82060,1,'Anyway~','ds_1','https://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000','[]','[]','2017-03-21 14:10:18'),(88888,0,'管理员','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-01-30 18:52:27'),(90814,0,'007','ds_1','https://static.oschina.net/uploads/user/51/102723_50.jpg?t=1449212504000','[]','[]','2017-02-01 11:21:50'),(93794,0,'Lemon','ds_1','https://static.oschina.net/uploads/user/48/97721_50.jpg?t=1451544779000','[]','[]','2017-02-01 11:21:50'),(1490109845208,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-03-21 15:24:05'),(1490420651686,1,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[70793]','[]','2017-03-25 05:44:11'),(1490584952968,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-03-27 03:22:32'),(1490973670928,1,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[70793, 93793]','[]','2017-03-31 15:21:10'),(1492936169722,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-04-23 08:29:29'),(1493480142628,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-04-29 15:35:42'),(1493747512860,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-05-02 17:51:52'),(1493747777770,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-05-02 17:56:17'),(1493883110132,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-05-04 07:31:50'),(1493890303474,0,'Test Post','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-06-12 15:50:44'),(1497792972314,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-06-18 13:36:12'),(1500825221910,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-07-23 15:53:41'),(1502639062900,0,'TESLA','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-08-13 15:44:22'),(1508072071492,0,'赵钱孙李','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-10-15 12:54:31'),(1508072105320,1,'周吴郑王','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-10-15 12:55:05'),(1510495628760,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-11-12 14:07:08'),(1511407581570,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[82002, 82003, 82005, 82006, 82021, 82023, 82036, 82033]','[]','2017-11-23 03:26:21'),(1512387063078,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-12-04 11:31:03'),(1514626163032,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2017-12-30 09:29:23'),(1515565976140,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[82003, 82021]',NULL,'2018-01-10 06:32:56'),(1519778917280,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-02-28 00:48:37'),(1521274648008,0,'Kiro','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-03-17 08:17:28'),(1521371722416,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-03-18 11:15:22'),(1521374327542,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-03-18 11:58:47'),(1523626157302,1,'Charlie_brown','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[1523935772553, 93793]',NULL,'2018-04-13 13:29:17'),(1524878698882,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-04-28 01:24:58'),(1527495857924,0,'account','ds_1','https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2510057322,2452415311&fm=27&gp=0.jpg','[1527821445610, 82012]',NULL,'2018-05-28 08:24:17'),(1527821445610,0,'accountt','ds_1','https://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000','[1527495857924]',NULL,'2018-06-01 02:50:45'),(1528264711016,0,'梦','ds_1','https://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000','[82021, 1528250827953]',NULL,'2018-06-06 05:58:31'),(1528339692804,1,'568599','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[1528250827953, 1528264711016]',NULL,'2018-06-07 02:48:12'),(1528344980598,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-06-07 04:16:20'),(1532439021068,0,'huxiaofan','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[38710, 82002, 82003, 82006, 82021]',NULL,'2018-07-24 13:30:21'),(1534926301956,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[82003, 82002, 82025]',NULL,'2018-08-22 08:25:01'),(1538504264944,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-10-02 18:17:44'),(1538504500574,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-10-02 18:21:40'),(1538987952996,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-10-08 08:39:13'),(1544276209348,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[82002, 38710]',NULL,'2018-12-08 13:36:49'),(1545895694424,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-12-27 07:28:14'),(1547177436600,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2019-01-11 03:30:36'),(1548068043688,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2019-01-21 10:54:03'),(1553527700480,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2019-03-25 15:28:20'),(1559129626356,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4','[1507220582167]',NULL,'2019-05-29 11:33:46'),(1560409157504,0,'上邪','ds_1','最好的时光',NULL,NULL,'2019-06-13 06:59:17'),(1561539257158,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2019-06-26 08:54:17'),(1571629309520,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2019-10-21 03:41:49'),(1594366766076,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2020-07-10 07:39:26'),(1607327721514,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2020-12-07 07:55:21'),(1612026209696,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-01-30 17:03:29'),(1617779786088,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-04-07 07:16:26'),(1617791617244,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-04-07 10:33:37'),(1622460076442,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-05-31 11:21:16'),(1627379132238,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-07-27 09:45:32'),(1627751909080,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-07-31 17:18:29'),(1629242760752,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-08-17 23:26:00'),(1629344450286,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-08-19 03:40:50'),(1631711813832,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-09-15 13:16:53'),(1633578722680,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-07 03:52:02'),(1633877831592,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-10 14:57:11'),(1634709530342,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-20 05:58:50'),(1634985722864,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-23 10:42:02'),(1635169494440,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-25 13:44:54'),(1635328180560,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-27 09:49:40'),(1635415421614,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-28 10:03:41'),(1635726344906,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-01 00:25:44'),(1635814886542,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-02 01:01:26'),(1635821266476,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-02 02:47:46'),(1635844920478,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-02 09:22:00'),(1636094219508,0,'abigeater','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-05 06:36:59'),(1636427131222,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-09 03:05:31'),(1636504967120,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-10 00:42:47'),(1636598520774,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-11 02:42:00'),(1636958896972,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-15 06:48:16'),(1636961689146,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-15 07:34:49'),(1637565991578,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-22 07:26:31'),(1637582389884,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-22 11:59:49'),(1637895069532,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-26 02:51:09'),(1638243844692,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-30 03:44:04'),(1638243934092,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-30 03:45:34'),(1638253820088,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-30 06:30:20'),(1638273057658,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-30 11:50:57'),(1640226429804,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-12-23 02:27:09'),(1640533384052,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-12-26 15:43:04'),(1644567479886,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-02-11 08:17:59'),(1645077808646,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-02-17 06:03:28'),(1645679844970,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-02-24 05:17:24'),(1645944029434,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-02-27 06:40:29'),(1647363472772,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-03-15 16:57:52'),(1649386775460,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-08 02:59:35'),(1649754648722,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-12 09:10:48'),(1649917864874,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-14 06:31:04'),(1650203096188,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-17 13:44:56'),(1650729052818,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-23 15:50:52'),(1650729145974,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-23 15:52:25'),(1650729291868,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-23 15:54:51'),(1650731958142,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-23 16:39:18'),(1651195944934,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-29 01:32:24'),(1651334486204,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-30 16:01:26'),(1652881250088,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-05-18 13:40:50'),(1653460727512,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-05-25 06:38:47'),(1653461884440,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-05-25 06:58:04'),(1655432667654,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-06-17 02:24:27'),(1656173251610,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-06-25 16:07:31'),(1657507082526,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-07-11 02:38:02'),(1657522377266,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-07-11 06:52:57'),(1657606209138,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-07-12 06:10:09'),(1658467307200,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-07-22 05:21:47'),(1659074261658,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-07-29 05:57:41'),(1660615147446,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-16 01:59:07'),(1661305083066,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-24 01:38:03'),(1661305219024,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-24 01:40:19'),(1661436525944,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-25 14:08:45'),(1661476520718,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-26 01:15:20'),(1665395701628,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-10 09:55:01'),(1666059921074,1,'Test 10:25:21','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:23'),(1666059921618,0,'Test 10:25:21','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:23'),(1666059922074,0,'Test 10:25:22','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:24'),(1666059922460,1,'Test 10:25:22','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:24'),(1666059923538,0,'Test 10:25:23','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:25'),(1666059923862,0,'Test 10:25:23','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:26'),(1666059924284,1,'Test 10:25:24','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:26'),(1666059924454,1,'Test 10:25:24','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:26'),(1666059925688,0,'Test 10:25:25','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:27'),(1666059926012,1,'Test 10:25:26','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:28'),(1666059929268,0,'Test 10:25:29','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:31'),(1666059929610,0,'Test 10:25:29','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:31'),(1666059929948,1,'Test 10:25:29','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:32'),(1666059930268,1,'Test 10:25:30','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:32'),(1666059931172,1,'Test 10:25:31','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:33'),(1666059931362,0,'Test 10:25:31','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:33'),(1666059931550,1,'Test 10:25:31','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:33'),(1666059931924,1,'Test 10:25:31','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:34'),(1666059932248,1,'Test 10:25:32','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:34'),(1666059932420,0,'Test 10:25:32','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:34'),(1666059932760,1,'Test 10:25:32','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:35'),(1666059932928,1,'Test 10:25:32','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:35'),(1666059933116,0,'Test 10:25:33','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:35'),(1666059933372,0,'Test 10:25:33','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:35'),(1666059953766,0,'Test 10:25:53','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:56'),(1666059953768,0,'Test 10:25:53','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:26:05'),(1666059962950,0,'Test 10:26:02','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:26:09'),(1666059963708,0,'Test 10:26:03','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:26:09'),(1666059964132,0,'Test 10:26:04','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:26:10'),(1669610812150,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-11-28 04:46:52'),(1669951597862,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-12-02 03:26:37'),(1670227168420,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-12-05 07:59:28'),(1675740140746,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-07 03:22:20'),(1675756457176,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-07 07:54:17'),(1675868849770,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-08 15:07:29'),(1675929039872,0,'Test 15:50:39','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 07:50:40'),(1675929049276,1,'Test 15:50:49','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 07:50:49'),(1675935815638,0,'Test 17:43:35','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:36'),(1675935815640,1,'Test 17:43:35','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:39'),(1675935815642,0,'Test 17:43:35','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:45'),(1675935815644,0,'Test 17:43:35','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:36'),(1675935815646,0,'Test 17:43:35','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:37'),(1675935815648,1,'Test 17:43:35','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:40'),(1675935815650,0,'Test 17:43:35','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:43'),(1675935815652,0,'Test 17:43:35','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:46'),(1675992032374,0,'Test 09:20:32','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 01:28:02'),(1675992523980,1,'Test 09:28:43','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 01:28:44'),(1675992593836,0,'Test 09:29:53','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 01:29:53'),(1675997511142,1,'Test 上午10:51:51','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 02:51:51'),(1676007825978,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 05:43:45'),(1676014739290,1,'Test 15:38:59','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:38:59'),(1676015169248,0,'Test 15:46:09','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:09'),(1676015170088,1,'Test 15:46:10','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:10'),(1676015170960,0,'Test 15:46:10','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:11'),(1676017066922,0,'Test 16:17:46','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 08:17:47'),(1676017066924,1,'Test 16:17:46','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 08:17:51'),(1677045638554,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-22 06:00:38'),(1677591021774,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-28 13:30:21'),(1678461884498,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-03-10 15:24:44'),(1678608359200,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-03-12 08:05:59'),(1679627373716,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-03-24 03:09:33'),(1679909408426,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-03-27 09:30:08'),(1681213491468,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-04-11 11:44:51'),(1682317248892,0,'APIJSONUser','ds_1','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-04-24 06:20:48'),(1682590913766,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-04-27 10:21:53'),(1683470019016,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-05-07 14:33:39'),(1683809223922,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-05-11 12:47:03'),(1685343501184,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-05-29 06:58:21'),(1688086385732,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-06-30 00:53:05'),(1688454525530,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-07-04 07:08:45'),(1704188118090,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-01-02 09:35:18'),(1704793795904,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-01-09 09:49:55'),(1704867024900,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-05-08 06:40:52'),(1704867024902,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-05-24 02:27:28'),(1704867024912,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-06-06 03:03:52'),(1704867024914,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-06-13 02:33:57'),(1704867024920,0,'APIJSONUser','ds_1','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-06-14 19:57:30'); +/*!40000 ALTER TABLE `apijson_user` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-02-03 23:27:31 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_0.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_0.sql new file mode 100644 index 0000000..e118c3e --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_0.sql @@ -0,0 +1,59 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: localhost Database: ds_2 +-- ------------------------------------------------------ +-- Server version 8.0.32 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `Comment_0` +-- + +DROP TABLE IF EXISTS `Comment_0`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Comment_0` ( + `id` bigint NOT NULL COMMENT '主键', + `toId` bigint NOT NULL DEFAULT '0' COMMENT '被回复的id', + `userId` bigint NOT NULL COMMENT '评论人 User 的 id', + `momentId` bigint NOT NULL COMMENT '动态id', + `date` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期', + `content` varchar(1000) NOT NULL COMMENT '内容', + PRIMARY KEY (`id`), + KEY `index_date` (`date`), + KEY `index_userId` (`userId`), + KEY `index_moment` (`momentId`), + KEY `index_toId` (`toId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='评论'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `Comment_0` +-- + +LOCK TABLES `Comment_0` WRITE; +/*!40000 ALTER TABLE `Comment_0` DISABLE KEYS */; +INSERT INTO `Comment_0` VALUES (22,221,82001,470,'2017-02-01 11:20:50','ds_2.Comment_0: 修改'),(54,0,82004,170,'2017-02-01 11:20:50','ds_2.Comment_0: This is a Content...-54'),(110,0,93793,371,'2017-02-01 11:23:24','ds_2.Comment_0: This is a Content...-110'),(114,0,82001,371,'2017-03-02 05:56:06','ds_2.Comment_0: test multi put'),(158,0,93793,301,'2018-07-12 17:28:23','ds_2.Comment_0: This is a Content...-157'),(162,0,93793,12,'2017-03-06 05:03:45','ds_2.Comment_0: This is a Content...-162'),(178,0,38710,511,'2017-03-25 12:30:55','ds_2.Comment_0: wbw'),(182,110,82001,371,'2017-03-26 06:12:52','ds_2.Comment_0: hahaha'),(190,0,82001,58,'2017-03-26 07:22:13','ds_2.Comment_0: dbdj'),(206,54,82001,170,'2017-03-29 03:04:23','ds_2.Comment_0: ejej'),(1490780759866,99,82001,170,'2017-03-29 09:45:59','ds_2.Comment_0: 99'),(1490781857242,190,38710,58,'2017-03-29 10:04:17','ds_2.Comment_0: nice'),(1490794953438,1490794937137,82001,12,'2017-03-29 13:42:33','ds_2.Comment_0: All right ok ok ll'),(1490796241178,0,38710,58,'2017-03-29 14:04:01','ds_2.Comment_0: Anything else?'),(1490798710678,110,38710,371,'2017-03-29 14:45:10','ds_2.Comment_0: 110'),(1490854894566,175,82001,12,'2017-03-30 06:21:34','ds_2.Comment_0: it does be a good lang'),(1490863507114,4,82003,470,'2017-03-30 08:45:07','ds_2.Comment_0: yes'),(1490863661426,1490780759866,70793,170,'2017-03-30 08:47:41','ds_2.Comment_0: 66'),(1490864016738,0,82006,511,'2017-03-30 08:53:36','ds_2.Comment_0: I want to have a try!'),(1490864400210,1490864276824,82001,12,'2017-03-30 09:00:00','ds_2.Comment_0: Amazing, isnt it?'),(1490874908570,1490864023700,82055,543,'2017-03-30 11:55:08','ds_2.Comment_0: yeah'),(1490874930994,1490777905437,82055,543,'2017-03-30 11:55:30','ds_2.Comment_0: yy'),(1490875033494,0,82055,301,'2017-03-30 11:57:13','ds_2.Comment_0: More Comments'),(1490973736662,1490973715568,70793,170,'2017-03-31 15:22:16','ds_2.Comment_0: Hello, I am a fresh man'),(1491130701902,0,38710,511,'2017-04-02 10:58:21','ds_2.Comment_0: Thanks for your supports (-^?^-)'),(1491209763162,0,82001,1491200468898,'2017-04-03 08:56:03','ds_2.Comment_0: How do you do'),(1493094307810,0,82001,551,'2017-04-25 04:25:04','ds_2.Comment_0: 删除或修改数据请先创建,不要动原来的,谢谢'),(1493094307910,0,82001,551,'2017-04-25 04:26:04','ds_2.Comment_0: 用POST新增数据'),(1502632433970,0,82002,1493835799335,'2017-08-13 13:53:53','ds_2.Comment_0: just have fun!'),(1508053783278,0,82001,1508053762227,'2017-10-15 07:49:43','ds_2.Comment_0: 可以的'),(1508227498578,1491798370749,82001,551,'2017-10-17 08:04:58','ds_2.Comment_0: g'),(1508462026394,1490850844016,82001,12,'2017-10-20 01:13:46','ds_2.Comment_0: 欧'),(1509346549158,0,82001,170,'2017-10-30 06:55:49','ds_2.Comment_0: 呵呵'),(1510795816462,162,82001,12,'2017-11-16 01:30:16','ds_2.Comment_0: 赞'),(1510813284894,0,82001,12,'2017-11-16 06:21:24','ds_2.Comment_0: asdasdasdas'),(1511374274194,0,82001,170,'2017-11-22 18:11:14','ds_2.Comment_0: 哦哦哦'),(1511407695342,0,1511407581570,371,'2017-11-23 03:28:15','ds_2.Comment_0: 好的'),(1511878031610,1511878024415,1511761906715,12,'2017-11-28 14:07:11','ds_2.Comment_0: 不鸟你'),(1512039030970,1512035117021,82001,32,'2017-11-30 10:50:30','ds_2.Comment_0: 一般九宫格图片都是压缩图,分辨率在300*300左右,加载很快,点击放大后才是原图,1080P左右'),(1514858640958,0,38710,1514858533480,'2018-01-02 02:04:00','ds_2.Comment_0: 斯塔克工业'),(1515057861094,0,82001,58,'2018-01-04 09:24:21','ds_2.Comment_0: 蓉蓉'),(1515057864174,1515057857464,82001,58,'2018-01-04 09:24:24','ds_2.Comment_0: 哦轻松'),(1515057869554,0,82001,58,'2018-01-04 09:24:29','ds_2.Comment_0: ,王者荣耀'),(1516190557098,0,82001,1513094436910,'2018-01-17 12:02:37','ds_2.Comment_0: 哦婆婆'),(1516686985310,0,82001,1516086423441,'2018-01-23 05:56:25','ds_2.Comment_0: hologram'),(1516687072270,1516629533520,82001,1508072633830,'2018-01-23 05:57:52','ds_2.Comment_0: 咯我就'),(1516783920998,0,82001,1513094436910,'2018-01-24 08:52:00','ds_2.Comment_0: 这个是实时的吗'),(1516843720270,1516780129884,82001,1516086423441,'2018-01-25 01:28:40','ds_2.Comment_0: ghj'),(1516862537978,1515057869554,70793,58,'2018-01-25 06:42:17','ds_2.Comment_0: 绝地逃亡吃鸡'),(1516951734010,1514506206319,82001,1513094436910,'2018-01-26 07:28:54','ds_2.Comment_0: 火锅'),(1517234768450,1517229342303,93793,1516086423441,'2018-01-29 14:06:08','ds_2.Comment_0: 9号'),(1519719341810,0,82001,1516086423441,'2018-02-27 08:15:41','ds_2.Comment_0: 我也想抢一张'),(1519979533242,0,82001,1508072633830,'2018-03-02 08:32:13','ds_2.Comment_0: hj'),(1520330788006,0,1520242280259,1514017444961,'2018-03-06 10:06:28','ds_2.Comment_0: 八组'),(1522074360206,1519979533242,82001,1508072633830,'2018-03-26 14:26:00','ds_2.Comment_0: tttt'),(1524032299622,0,82001,1516086423441,'2018-04-18 06:18:19','ds_2.Comment_0: 别给我得怂'),(1524032305810,1524032299622,82001,1516086423441,'2018-04-18 06:18:25','ds_2.Comment_0: 你好'),(1524190412418,1524190367904,38710,1524178455305,'2018-04-20 02:13:32','ds_2.Comment_0: 我的资料>编辑>改下备注'),(1524235902970,1524214012015,82003,1524178455305,'2018-04-20 14:51:42','ds_2.Comment_0: 在我的资料界面编辑备注'),(1524297798490,0,82001,1513094436910,'2018-04-21 08:03:18','ds_2.Comment_0: gg'),(1524461430874,1519979533242,82001,1508072633830,'2018-04-23 05:30:30','ds_2.Comment_0: 哦哦哦'),(1524461436914,0,82001,1508072633830,'2018-04-23 05:30:36','ds_2.Comment_0: 莫'),(1524461441914,0,82001,1508072633830,'2018-04-23 05:30:41','ds_2.Comment_0: 默默'),(1524488068926,1524178500568,82001,1524178455305,'2018-04-23 12:54:28','ds_2.Comment_0: 哦哦哦'),(1524843908458,1524799118232,82001,1512314438990,'2018-04-27 15:45:08','ds_2.Comment_0: 在HttpRequest.addMoment中加的,因为APIJSON的Server Demo没做图片存储,所以目前只能自己传图片的url,可以百度图片上找哈'),(1525658333654,0,82001,1513094436910,'2018-05-07 01:58:53','ds_2.Comment_0: q'),(1527821876802,1527821844576,1527495857924,1527821296110,'2018-06-01 02:57:56','ds_2.Comment_0: 当然好用啊'),(1527837965006,0,82002,1527830474378,'2018-06-01 07:26:05','ds_2.Comment_0: 像平板电脑哈哈'),(1528250648974,0,82001,1523936332614,'2018-06-06 02:04:08','ds_2.Comment_0: hshdv'),(1528516951218,0,82001,1528462217322,'2018-06-09 04:02:31','ds_2.Comment_0: 这里能约到小姐姐算我输୧(๑•̀⌄•́๑)૭'),(1528554476310,0,82001,1516086423441,'2018-06-09 14:27:56','ds_2.Comment_0: thS'),(1528679814166,0,1528339692804,1528676875139,'2018-06-11 01:16:54','ds_2.Comment_0: 12'),(1528972547638,0,82001,1528462217322,'2018-06-14 10:35:47','ds_2.Comment_0: 古古怪怪'),(1531887938362,1531063660028,82001,1531062713966,'2018-07-18 04:25:38','ds_2.Comment_0: 是呀'),(1531983163150,0,1531969715979,1531969818357,'2018-07-19 06:52:43','ds_2.Comment_0: http://q18idc.com'),(1533120405110,1516780129884,82001,1516086423441,'2018-08-01 10:46:45','ds_2.Comment_0: eeeeee'),(1533120420498,1528105592852,82001,1516086423441,'2018-08-01 10:47:00','ds_2.Comment_0: eeeeeee'),(1533195207026,0,82001,1531062713966,'2018-08-02 07:33:27','ds_2.Comment_0: JJ'),(1533631893738,0,82001,1531969818357,'2018-08-07 08:51:33','ds_2.Comment_0: 哈哈哈哈哈哈'),(1534926149638,1517375165233,82001,1508053762227,'2018-08-22 08:22:29','ds_2.Comment_0: 把标准版申报表上班设备'),(1534992151350,0,82001,1516086423441,'2018-08-23 02:42:31','ds_2.Comment_0: 你咋不'),(1535785537390,1535279823332,82003,1520242333325,'2018-09-01 07:05:37','ds_2.Comment_0: 不好哦'),(1535785585222,1534926143012,82003,1508053762227,'2018-09-01 07:06:25','ds_2.Comment_0: 啥?'),(1537410620002,0,82001,1536805585275,'2018-09-20 02:30:20','ds_2.Comment_0: 不一样'),(1537710348414,0,82001,1516086423441,'2018-09-23 13:45:48','ds_2.Comment_0: hhj'),(1537857324518,0,82001,1536805585275,'2018-09-25 06:35:24','ds_2.Comment_0: 嗯呢'),(1544503960414,1537410620002,1544503822963,1536805585275,'2018-12-11 04:52:40','ds_2.Comment_0: 664984'),(1545527898986,1545527888416,82001,1553096819293,'2018-12-23 01:18:18','ds_2.Comment_0: world'),(1551430474490,1551430453424,82001,1553096819293,'2019-03-01 08:54:34','ds_2.Comment_0: 444'),(1551430579358,1516691119239,82001,1516086423441,'2019-03-01 08:56:19','ds_2.Comment_0: 555555'),(1555557860778,1512035117021,82001,32,'2019-04-18 03:24:20','ds_2.Comment_0: 11564546'),(1557754720666,0,82001,1557754680146,'2019-05-13 13:38:40','ds_2.Comment_0: 卧槽(*`へ´*)'),(1557754909538,1557754765785,82012,1557754680146,'2019-05-13 13:41:49','ds_2.Comment_0: https://baijiahao.baidu.com/s?id=1633129683262867786&wfr=spider&for=pc&isFailFlag=1'),(1558150056102,0,82001,1557754680146,'2019-05-18 03:27:36','ds_2.Comment_0: 哈哈哈'),(1562736873122,1534926143012,82001,1508053762227,'2019-07-10 05:34:33','ds_2.Comment_0: 早睡早起'),(1564493476094,1564493464049,82001,1557754680146,'2019-07-30 13:31:16','ds_2.Comment_0: 你好'),(1566263781606,1490864016738,82001,511,'2019-08-20 01:16:21','ds_2.Comment_0: 11'),(1566270967414,0,82001,1558798664043,'2019-08-20 03:16:07','ds_2.Comment_0: 什么'),(1566270991974,0,82001,1558798664043,'2019-08-20 03:16:31','ds_2.Comment_0: 好的'),(1566271039886,1557838424004,82001,1557754680146,'2019-08-20 03:17:19','ds_2.Comment_0: 一部'),(1566271045802,1557838424004,82001,1557754680146,'2019-08-20 03:17:25','ds_2.Comment_0: 一部'),(1568013785742,1558440302601,82001,1557415707105,'2019-09-09 07:23:05','ds_2.Comment_0: sss'),(1571143189570,1566271052875,82001,1557754680146,'2019-10-15 12:39:49','ds_2.Comment_0: 龙'),(1571143196630,1571143189570,82001,1557754680146,'2019-10-15 12:39:56','ds_2.Comment_0: 哦哦哦'),(1573024400998,1545527888416,82001,1553096819293,'2019-11-06 07:13:21','ds_2.Comment_0: 回来了'),(1581314845034,0,82001,12,'2020-02-01 16:00:00','ds_2.Comment_0: 测试新增评论'),(1584336841458,1583897660640,82001,1583574596245,'2020-03-16 05:34:01','ds_2.Comment_0: 好吧'),(1589165545506,0,82001,1583574596245,'2020-05-11 02:52:25','ds_2.Comment_0: 地方唱歌'),(1589255344034,1511407702981,82001,371,'2020-05-12 03:49:04','ds_2.Comment_0: 就刚才v'),(1591754308326,0,82001,1514858533480,'2020-06-10 01:58:28','ds_2.Comment_0: 我下午'),(1592109058370,1576678047584,82001,1557415707105,'2020-06-14 04:30:58','ds_2.Comment_0: 呃呃呃'),(1600010149486,0,82001,1577855941093,'2020-09-13 15:15:49','ds_2.Comment_0: 新年快乐'),(1605590447930,1516686985310,82001,1516086423441,'2020-11-17 05:20:47','ds_2.Comment_0: 哈哈哈哈哈哈'),(1606441650158,0,82001,1606312076474,'2020-11-27 01:47:30','ds_2.Comment_0: 4644646'),(1607078438974,0,82001,543,'2020-12-04 10:40:38','ds_2.Comment_0: 666'),(1609924232430,0,82001,1608215822376,'2021-01-06 09:10:32','ds_2.Comment_0: hahha'),(1611824248994,0,82001,1558798664043,'2021-01-28 08:57:28','ds_2.Comment_0: 找下我'),(1611984282510,0,82001,1611503147421,'2021-01-30 05:24:42','ds_2.Comment_0: 极速版'),(1617350123514,0,82001,12,'2021-04-02 07:55:23','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617700520082,0,82001,1617562878095,'2021-04-06 09:15:20','ds_2.Comment_0: 哦哦哦'),(1617763484998,0,82003,12,'2021-04-07 02:44:45','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617763503314,0,82003,12,'2021-04-07 02:45:03','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1624189750538,0,82001,1594127400223,'2021-06-20 11:49:10','ds_2.Comment_0: ?'),(1624505997446,0,82001,1617562878095,'2021-06-24 03:39:57','ds_2.Comment_0: 杉树'),(1625193975266,0,82001,1624700434072,'2021-07-02 02:46:15','ds_2.Comment_0: 啥意思?'),(1626055595138,1534926143012,82001,1508053762227,'2021-07-12 02:06:35','ds_2.Comment_0: 哈哈'),(1631761391158,0,82001,1508072633830,'2021-09-16 03:03:11','ds_2.Comment_0: 00'),(1631761391706,0,82001,1508072633830,'2021-09-16 03:03:11','ds_2.Comment_0: 11'),(1631761395754,0,82001,1524178455305,'2021-09-16 03:03:15','ds_2.Comment_0: 111'),(1631761398022,0,82001,551,'2021-09-16 03:03:18','ds_2.Comment_0: 3条重复的'),(1631761398170,0,82001,1583574596245,'2021-09-16 03:03:18','ds_2.Comment_0: 4444444444444'),(1631761409914,0,82001,511,'2021-09-16 03:03:29','ds_2.Comment_0: 123121545645'),(1631761413110,0,82001,1556387217941,'2021-09-16 03:03:33','ds_2.Comment_0: 666'),(1631761414094,0,82001,551,'2021-09-16 03:03:34','ds_2.Comment_0: 4644646'),(1631761414274,0,82001,371,'2021-09-16 03:03:34','ds_2.Comment_0: 666'),(1631761414650,0,82001,12,'2021-09-16 03:03:34','ds_2.Comment_0: 111'),(1631761416082,0,82001,1512314438990,'2021-09-16 03:03:36','ds_2.Comment_0: 22222222222222222'),(1631761416578,0,82001,1516086423441,'2021-09-16 03:03:36','ds_2.Comment_0: 654342365656'),(1631761417254,0,82001,1577855941093,'2021-09-16 03:03:37','ds_2.Comment_0: 123121545645'),(1631761429282,0,82001,1541557989440,'2021-09-16 03:03:49','ds_2.Comment_0: 1'),(1631761429738,0,82001,1513094436910,'2021-09-16 03:03:49','ds_2.Comment_0: 1111'),(1631761431546,0,82001,58,'2021-09-16 03:03:51','ds_2.Comment_0: 111'),(1631761432774,0,82001,551,'2021-09-16 03:03:52','ds_2.Comment_0: 111'),(1631761438726,0,82001,1512314438990,'2021-09-16 03:03:58','ds_2.Comment_0: -162'),(1631761439878,0,82001,301,'2021-09-16 03:03:59','ds_2.Comment_0: 11111111'),(1631761441294,0,82001,301,'2021-09-16 03:04:01','ds_2.Comment_0: 111'),(1631761442674,0,82001,58,'2021-09-16 03:04:02','ds_2.Comment_0: 111'),(1631761443394,0,82001,1594385349411,'2021-09-16 03:04:03','ds_2.Comment_0: 1545456'),(1631761445242,0,82001,511,'2021-09-16 03:04:05','ds_2.Comment_0: 110'),(1631761446282,0,82001,511,'2021-09-16 03:04:06','ds_2.Comment_0: $$'),(1631761448702,0,82001,371,'2021-09-16 03:04:08','ds_2.Comment_0: 111'),(1631761454386,0,82001,301,'2021-09-16 03:04:14','ds_2.Comment_0: $$'),(1631761455242,0,82001,170,'2021-09-16 03:04:15','ds_2.Comment_0: 00'),(1631761455446,0,82001,1611503147421,'2021-09-16 03:04:15','ds_2.Comment_0: 1'),(1631761455766,0,82001,12,'2021-09-16 03:04:15','ds_2.Comment_0: 110'),(1631761456926,0,82001,1508072633830,'2021-09-16 03:04:16','ds_2.Comment_0: 11111111'),(1631761457406,0,82001,1528676875139,'2021-09-16 03:04:17','ds_2.Comment_0: ,王者荣耀'),(1631761457918,0,82001,1627367646018,'2021-09-16 03:04:17','ds_2.Comment_0: 00'),(1631761459034,0,82001,1508072633830,'2021-09-16 03:04:19','ds_2.Comment_0: 111'),(1631761459826,0,82001,1528462217322,'2021-09-16 03:04:19','ds_2.Comment_0: (fdsd)'),(1631761460510,0,82001,371,'2021-09-16 03:04:20','ds_2.Comment_0: 00'),(1631761578502,0,82001,12,'2021-09-16 03:06:18','ds_2.Comment_0: 铁人'),(1631761598482,0,82001,12,'2021-09-16 03:06:38','ds_2.Comment_0: W'),(1631761602570,0,82001,12,'2021-09-16 03:06:42','ds_2.Comment_0: 555555'),(1631761605962,0,82001,12,'2021-09-16 03:06:45','ds_2.Comment_0: hologram'),(1633794175654,0,82001,1632294230574,'2021-10-09 15:42:55','ds_2.Comment_0: 来了来了'),(1633794180858,0,82001,1632294230574,'2021-10-09 15:43:00','ds_2.Comment_0: 略略略'),(1633861634914,0,82001,1632294230574,'2021-10-10 10:27:14','ds_2.Comment_0: SSR'),(1635404369114,0,82002,12,'2021-10-28 06:59:29','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1639449627546,0,82001,1638327674898,'2021-12-14 02:40:27','ds_2.Comment_0: 诗歌鉴赏高价收购'),(1639449637290,0,82001,1638327674898,'2021-12-14 02:40:37','ds_2.Comment_0: 大概就是感觉师傅师傅'),(1639455571334,1639386671675,82001,1638327674898,'2021-12-14 04:19:31','ds_2.Comment_0: 给vvv'),(1640785095358,2,82001,12,'2021-12-29 13:38:15','ds_2.Comment_0: test'),(1648689282014,0,82001,1648604448403,'2022-03-31 01:14:42','ds_2.Comment_0: 7414'),(1649500711162,0,82001,1648604448403,'2022-04-09 10:38:31','ds_2.Comment_0: 电竞少女'),(1650022315682,0,82001,1649086185746,'2022-04-15 11:31:55','ds_2.Comment_0: 哈哈哈'),(1650353671162,0,82002,12,'2022-04-19 07:34:31','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1651115672370,0,82001,1646030604412,'2022-04-28 03:14:32','ds_2.Comment_0: 哥好好回家'),(1651115702850,1651115672370,82001,1646030604412,'2022-04-28 03:15:02','ds_2.Comment_0: 多尴尬哈哈哈哈哈'),(1651717781318,0,82001,12,'2022-05-05 02:29:41','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1651745263734,0,82001,12,'2022-05-05 10:07:43','ds_2.Comment_0: A machine base 0 & 1'),(1651745427922,0,82001,12,'2022-05-05 10:10:27','ds_2.Comment_0: A machine base 0 & 1'),(1652796392746,0,82001,1651846337935,'2022-05-17 14:06:32','ds_2.Comment_0: dd'),(1659980908050,0,82001,1649086185746,'2022-08-08 17:48:28','ds_2.Comment_0: 后'),(1660209535062,0,82001,12,'2022-08-11 09:18:55','ds_2.Comment_0: APIJSON123123!'),(1661620771690,0,82001,301,'2022-08-27 17:19:31','ds_2.Comment_0: 鸡鸡鸡鸡'),(1663572237766,0,82001,12,'2022-09-19 07:23:57','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1666604100490,0,82003,12,'2022-10-24 09:35:00','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1667542950230,0,82001,12,'2022-11-04 06:22:30','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1670591905258,1670420459420,82001,1665293930441,'2022-12-09 13:18:25','ds_2.Comment_0: qqq'),(1670591910246,0,82001,1665293930441,'2022-12-09 13:18:30','ds_2.Comment_0: qqq'),(1670917782466,0,82001,12,'2022-12-13 07:49:42','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1671322196362,0,82001,1670981978461,'2022-12-18 00:09:56','ds_2.Comment_0: 哈哈哈哈个'),(1672729125594,0,82001,12,'2023-01-03 06:58:45','ds_2.Comment_0: 66666 !'),(1675840929526,0,82001,1675742375160,'2023-02-08 07:22:09','ds_2.Comment_0: they'),(1675840939782,0,82001,1675742375160,'2023-02-08 07:22:19','ds_2.Comment_0: they'),(1675840959282,0,82001,1675742375160,'2023-02-08 07:22:39','ds_2.Comment_0: 对方纷纷'),(1676271673426,0,82001,1675910359578,'2023-02-13 07:01:13','ds_2.Comment_0: 55555'),(1676271718906,0,82001,1675742375160,'2023-02-13 07:01:58','ds_2.Comment_0: 3333'),(1678959106674,0,82003,12,'2023-03-16 09:31:46','ds_2.Comment_0: APIJSON'),(1678959151894,0,82003,12,'2023-03-16 09:32:31','ds_2.Comment_0: APIJSON'),(1681710767334,0,82002,1678877778484,'2023-04-17 05:52:47','ds_2.Comment_0: 252'),(1681999170630,0,82001,470,'2023-04-20 13:59:30','ds_2.Comment_0: ffff'),(1681999220354,0,82001,470,'2023-04-20 14:00:20','ds_2.Comment_0: ffff'),(1682000819794,0,82001,470,'2023-04-20 14:26:59','ds_2.Comment_0: xdddddd'),(1682314174378,0,82001,1682269375445,'2023-04-24 05:29:34','ds_2.Comment_0: 股民'),(1682783899598,0,82001,1679313363196,'2023-04-29 15:58:19','ds_2.Comment_0: 哈喽'),(1683353535310,0,82001,12,'2023-05-06 06:12:15','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354028826,0,82001,142,'2023-05-06 06:20:28','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683355771386,0,82001,143,'2023-05-06 06:49:31','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1684465899062,0,82001,12,'2023-05-19 03:11:39','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1684489610762,0,82001,1682096402171,'2023-05-19 09:46:50','ds_2.Comment_0: GGG'),(1686303787138,0,82001,1645416338268,'2023-06-09 09:43:07','ds_2.Comment_0: 哦咯模棱两可'),(1686303807242,0,82001,1645416338268,'2023-06-09 09:43:27','ds_2.Comment_0: 哦咯模棱两可'),(1686328097906,0,82001,1645416338268,'2023-06-09 16:28:17','ds_2.Comment_0: 牛逼'),(1686328118014,0,82001,1645416338268,'2023-06-09 16:28:38','ds_2.Comment_0: 牛逼'),(1686897864630,0,82001,1684981561371,'2023-06-16 06:44:24','ds_2.Comment_0: mood'),(1686897884766,0,82001,1684981561371,'2023-06-16 06:44:44','ds_2.Comment_0: mood'),(1686897924994,0,82001,1684981561371,'2023-06-16 06:45:25','ds_2.Comment_0: mood'),(1686898120502,0,82001,1684981561371,'2023-06-16 06:48:40','ds_2.Comment_0: mood'),(1687590211238,0,82001,123333,'2023-06-24 07:03:31','ds_2.Comment_0: dkf;dfd;akfd;dadj;\''),(1689822569818,0,82001,12,'2023-07-20 03:09:29','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1689822595230,0,82001,12,'2023-07-20 03:09:55','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1693680555338,0,82006,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd-7760609746862695'),(1693680555358,0,82006,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd3879470925263683'),(1693680555362,0,82010,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd2343873016360063'),(1693680555366,0,82005,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd-1666369813764240'),(1695805814258,0,82001,12,'2023-09-27 09:10:14','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1695805825890,0,82001,12,'2023-09-27 09:10:25','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1697115587910,0,82001,1,'2023-10-12 12:59:47','ds_2.Comment_0: 1'),(1698723401506,0,82002,12,'2023-10-31 03:36:41','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1700403475754,0,82001,1700372077715,'2023-11-19 14:17:55','ds_2.Comment_0: 测试新增动态'),(1700489417302,0,82002,1700488719094,'2023-11-20 14:10:17','ds_2.Comment_0: 哈哈'),(1701153019998,0,82001,12,'2023-11-28 06:30:20','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701222052938,0,82001,12,'2023-11-29 01:40:52','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701222576018,0,82001,12,'2023-11-29 01:49:36','ds_2.Comment_0: 这是新建内容。'),(1701676156942,0,82002,12,'2023-12-04 07:49:16','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701845609830,0,82001,12,'2023-12-06 06:53:29','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701848980462,0,82001,12,'2023-12-06 07:49:40','ds_2.Comment_0: 这是新建!'),(1702401213366,0,82001,1700488719094,'2023-12-12 17:13:33','ds_2.Comment_0: vivid'),(1702401213374,0,82003,12,'2023-12-13 10:02:05','ds_2.Comment_0: Ab_Cd5033618171570795'),(1702401213378,0,82003,401,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd-3846398120850732'),(1702401213382,0,82002,12,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd7736427789199583'),(1702401213386,0,82006,12,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd4296953153310075'),(1702401213394,0,82006,401,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd8265765743697971'),(1702401213402,0,82001,12,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd6865036217185303'),(1702401213414,0,82006,12,'2023-12-13 10:02:07','ds_2.Comment_0: Ab_Cd-2580147070595628'),(1702401213434,0,82007,12,'2023-12-13 10:02:07','ds_2.Comment_0: Ab_Cd7783945763291991'),(1702401213438,0,82010,12,'2023-12-13 10:02:07','ds_2.Comment_0: Ab_Cd-8860729646372811'),(1702401213446,0,82009,401,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd-6769406496116663'),(1702401213454,0,82004,12,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd2068374097643959'),(1702401213458,0,82008,12,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd8388816955600171'),(1702401213462,0,82003,401,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd-478588537110904'),(1702401213466,0,82007,401,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd3852915623174643'),(1702401213470,0,82002,12,'2023-12-13 10:02:39','ds_2.Comment_0: Ab_Cd-1275163445102252'),(1702401213482,0,82006,12,'2023-12-13 10:02:39','ds_2.Comment_0: Ab_Cd8050322363235779'),(1702401213498,0,82006,401,'2023-12-13 10:02:40','ds_2.Comment_0: Ab_Cd4118056555122167'),(1702401213514,0,82005,401,'2023-12-13 10:02:40','ds_2.Comment_0: Ab_Cd4591331730684723'),(1702401213530,0,82008,401,'2023-12-13 10:02:40','ds_2.Comment_0: Ab_Cd-600763026019652'),(1702401213534,0,82004,12,'2023-12-13 10:02:41','ds_2.Comment_0: Ab_Cd1356568518605267'),(1702401213546,0,82008,12,'2023-12-13 10:02:41','ds_2.Comment_0: Ab_Cd-1625988333712444'),(1704439975418,1703572770503,82001,1703425198937,'2024-01-05 07:32:55','ds_2.Comment_0: 抹去'),(1705992223166,0,82001,12,'2024-01-23 06:43:43','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1708508333650,0,82001,1684981356791,'2024-02-21 09:38:53','ds_2.Comment_0: 想你想你想看看咱俩走'),(1708929935730,0,82001,1693680292080,'2024-02-26 06:45:35','ds_2.Comment_0: art'),(1709022540698,0,82003,15,'2024-02-27 08:29:00','ds_2.Comment_0: 测试新增评论'),(1709024647986,0,82003,15,'2024-02-27 09:04:08','ds_2.Comment_0: 测试新增评论'),(1709623912338,0,82001,1709285309898,'2024-03-05 07:31:52','ds_2.Comment_0: 哎'),(1709792472054,0,82003,15,'2024-03-07 06:21:12','ds_2.Comment_0: 测试新增评论'),(1709798958718,0,88888,15,'2024-03-07 08:09:18','ds_2.Comment_0: 测试新增评论'),(1709810752538,0,82001,15,'2024-03-07 11:25:52','ds_2.Comment_0: 测试新增评论'),(1709975068990,1583848843283,82003,1583574596245,'2024-03-09 09:04:29','ds_2.Comment_0: hhh'),(1709975280398,1626428214932,82003,1619511861462,'2024-03-09 09:08:00','ds_2.Comment_0: ok'),(1710337723054,0,82001,1710233170301,'2024-03-13 13:48:43','ds_2.Comment_0: wee'),(1711452033966,0,82001,15,'2024-03-26 11:20:34','ds_2.Comment_0: 测试新增评论'),(1713949105238,0,82003,12,'2024-04-24 08:58:25','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1717561764730,0,82001,1717561747710,'2024-06-05 04:29:24','ds_2.Comment_0: comment1001'),(1717862858522,0,82001,15,'2024-06-08 16:07:38','ds_2.Comment_0: 测试新增评论'),(1717862858578,0,82001,15,'2024-06-08 16:07:38','ds_2.Comment_0: 测试新增评论'),(1717862891022,0,38710,15,'2024-06-08 16:08:11','ds_2.Comment_0: 测试新增评论'); +/*!40000 ALTER TABLE `Comment_0` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-02-03 23:27:31 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_1.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_1.sql new file mode 100644 index 0000000..e30c5b1 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_1.sql @@ -0,0 +1,59 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: localhost Database: ds_2 +-- ------------------------------------------------------ +-- Server version 8.0.32 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `Comment_1` +-- + +DROP TABLE IF EXISTS `Comment_1`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Comment_1` ( + `id` bigint NOT NULL COMMENT '主键', + `toId` bigint NOT NULL DEFAULT '0' COMMENT '被回复的id', + `userId` bigint NOT NULL COMMENT '评论人 User 的 id', + `momentId` bigint NOT NULL COMMENT '动态id', + `date` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期', + `content` varchar(1000) NOT NULL COMMENT '内容', + PRIMARY KEY (`id`), + KEY `index_date` (`date`), + KEY `index_userId` (`userId`), + KEY `index_moment` (`momentId`), + KEY `index_toId` (`toId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='评论'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `Comment_1` +-- + +LOCK TABLES `Comment_1` WRITE; +/*!40000 ALTER TABLE `Comment_1` DISABLE KEYS */; +INSERT INTO `Comment_1` VALUES (47,4,70793,470,'2017-02-01 11:20:50','ds_2.Comment_1: This is a Content...-47'),(51,45,82003,301,'2017-02-01 11:20:50','ds_2.Comment_1: This is a Content...-51'),(99,44,70793,170,'2017-02-01 11:20:50','ds_2.Comment_1: This is a Content...-99'),(115,0,38710,371,'2017-03-02 05:56:06','ds_2.Comment_1: This is a Content...-115'),(163,0,82001,235,'2017-03-02 05:56:06','ds_2.Comment_1: This is a Content...-163'),(167,0,82001,58,'2017-03-25 11:48:41','ds_2.Comment_1: Nice!'),(175,0,38710,12,'2017-03-25 12:26:53','ds_2.Comment_1: Java is the best program language!'),(1490778122719,175,82001,12,'2017-03-29 09:02:02','ds_2.Comment_1: Yeah! I think so!'),(1490778494751,1490778122719,82001,12,'2017-03-29 09:08:14','ds_2.Comment_1: reply Android82001'),(1490781865407,1490781857242,38710,58,'2017-03-29 10:04:25','ds_2.Comment_1: wow'),(1490781899147,197,38710,12,'2017-03-29 10:04:59','ds_2.Comment_1: kaka'),(1490796629591,175,38710,12,'2017-03-29 14:10:29','ds_2.Comment_1: well'),(1490863443219,1490850844016,82002,12,'2017-03-30 08:44:03','ds_2.Comment_1: me too!'),(1490863711703,0,70793,511,'2017-03-30 08:48:31','ds_2.Comment_1: I hope I can join'),(1490863717947,178,70793,511,'2017-03-30 08:48:37','ds_2.Comment_1: what?'),(1490863915675,0,82006,235,'2017-03-30 08:51:55','ds_2.Comment_1: Good boy'),(1490863978239,1490796241178,82006,58,'2017-03-30 08:52:58','ds_2.Comment_1: there still remains a question…'),(1490874968779,0,82055,12,'2017-03-30 11:56:08','ds_2.Comment_1: I love it'),(1490879678127,0,82001,543,'2017-03-30 13:14:38','ds_2.Comment_1: Baby you are a firework!'),(1490973890875,1490864039264,93793,551,'2017-03-31 15:24:50','ds_2.Comment_1: While I donot think so…'),(1491119615611,1490864023700,82001,543,'2017-04-02 07:53:35','ds_2.Comment_1: $$'),(1491312438951,1490863651493,82001,595,'2017-04-04 13:27:18','ds_2.Comment_1: WaKaKa!'),(1491740899179,0,82001,470,'2017-04-09 12:28:19','ds_2.Comment_1: www'),(1491798499667,115,82002,371,'2017-04-10 04:28:19','ds_2.Comment_1: I do not understand…'),(1492932228287,1491209763162,38710,1491200468898,'2017-04-23 07:23:48','ds_2.Comment_1: fine,thanks'),(1509346556395,0,82001,170,'2017-10-30 06:55:56','ds_2.Comment_1: 测试'),(1511374269759,99,82001,170,'2017-11-22 18:11:09','ds_2.Comment_1: 记录里'),(1511878024415,0,1511761906715,12,'2017-11-28 14:07:04','ds_2.Comment_1: 你今年'),(1512035094555,0,82001,12,'2017-11-30 09:44:54','ds_2.Comment_1: 呵呵呵'),(1512531859019,0,1512531601485,1512314438990,'2017-12-06 03:44:19','ds_2.Comment_1: 666'),(1513656045399,0,82001,1508072633830,'2017-12-19 04:00:45','ds_2.Comment_1: 444444'),(1514425796195,0,82001,1513094436910,'2017-12-28 01:49:56','ds_2.Comment_1: 一起'),(1514506206319,1514478784653,38710,1513094436910,'2017-12-29 00:10:06','ds_2.Comment_1: 碰到哪些了呢?欢迎指出,尽快解决^_^'),(1514858707767,0,70793,1514858533480,'2018-01-02 02:05:07','ds_2.Comment_1: 壕友乎?'),(1515313792063,162,82001,12,'2018-01-07 08:29:52','ds_2.Comment_1: you'),(1515313823155,164,82001,12,'2018-01-07 08:30:23','ds_2.Comment_1: you'),(1516687437251,1516686985310,82001,1516086423441,'2018-01-23 06:03:57','ds_2.Comment_1: 你家里好哦'),(1516691119239,1516686985310,38710,1516086423441,'2018-01-23 07:05:19','ds_2.Comment_1: 我喜欢Hololens嘿嘿'),(1516931850067,0,82001,1516086423441,'2018-01-26 01:57:30','ds_2.Comment_1: 1111111111111'),(1516951826863,0,82001,170,'2018-01-26 07:30:26','ds_2.Comment_1: 黑珍珠'),(1517193278459,0,82001,1508072633830,'2018-01-29 02:34:38','ds_2.Comment_1: 112'),(1517229342303,0,82001,1516086423441,'2018-01-29 12:35:42','ds_2.Comment_1: 几号抢的'),(1519813825959,0,82001,1516086423441,'2018-02-28 10:30:25','ds_2.Comment_1: 距P民'),(1520231250819,0,82001,12,'2018-03-05 06:27:30','ds_2.Comment_1: 浑身难受呢'),(1520264640815,0,70793,1520242333325,'2018-03-05 15:44:00','ds_2.Comment_1: 兰博基尼'),(1520699466219,1520578883309,82001,12,'2018-03-10 16:31:06','ds_2.Comment_1: 壕'),(1524032180807,1519719341810,82001,1516086423441,'2018-04-18 06:16:20','ds_2.Comment_1: 你好啊'),(1524032255755,1519974842508,82001,1516086423441,'2018-04-18 06:17:35','ds_2.Comment_1: 单身到底吗?'),(1524178495587,0,1524042900591,1524178455305,'2018-04-19 22:54:55','ds_2.Comment_1: 嘻嘻'),(1524190941111,1524032244441,82003,1516086423441,'2018-04-20 02:22:21','ds_2.Comment_1: 老六'),(1524214012015,1524190367904,1524042900591,1524178455305,'2018-04-20 08:46:52','ds_2.Comment_1: 怎么换url'),(1524798402799,0,1523626157302,1524178455305,'2018-04-27 03:06:42','ds_2.Comment_1: 能不能把本地的图片传到服务器,这样大家都能看到了,用url换头像不太习惯'),(1524844222775,1524798402799,82001,1524178455305,'2018-04-27 15:50:22','ds_2.Comment_1: 目前也可以百度一张图,把对应的url传上去,大家就都能看到了哈哈'),(1528333174811,0,82001,1514017444961,'2018-06-07 00:59:34','ds_2.Comment_1: xj'),(1528463152459,1528463135762,1528339692804,1528462217322,'2018-06-08 13:05:52','ds_2.Comment_1: 我想去'),(1528463165903,0,1528339692804,1528462217322,'2018-06-08 13:06:05','ds_2.Comment_1: 我想去'),(1528698907535,0,82001,1516086423441,'2018-06-11 06:35:07','ds_2.Comment_1: yhbv'),(1528703971675,1528681265496,82001,1528462217322,'2018-06-11 07:59:31','ds_2.Comment_1: 一起陪小姐姐出游*。٩(ˊωˋ*)و✧'),(1530528524447,0,38710,1528269988360,'2018-07-02 10:48:44','ds_2.Comment_1: 所以HttpRequest里写死了两张图片url,你可以改下'),(1531412264667,0,82003,1528356378455,'2018-07-12 16:17:44','ds_2.Comment_1: 去哪呢?'),(1531894411487,0,82001,1520242333325,'2018-07-18 06:13:31','ds_2.Comment_1: sssx'),(1533008631299,1532057419100,82001,1531969818357,'2018-07-31 03:43:51','ds_2.Comment_1: 加上'),(1533188056603,1531887938362,82001,1531062713966,'2018-08-02 05:34:16','ds_2.Comment_1: 顺带'),(1533202917743,1533186909764,82001,1531969818357,'2018-08-02 09:41:57','ds_2.Comment_1: 00'),(1534128014211,0,82001,1520242333325,'2018-08-13 02:40:14','ds_2.Comment_1: zxxx'),(1535279827983,0,82001,1520242333325,'2018-08-26 10:37:07','ds_2.Comment_1: 斤斤计较'),(1535600430479,0,82001,1520242333325,'2018-08-30 03:40:30','ds_2.Comment_1: 法拉利'),(1535963525135,1535963519864,82001,1535781636403,'2018-09-03 08:32:05','ds_2.Comment_1: gyuji'),(1537373307627,0,82001,1516086423441,'2018-09-19 16:08:27','ds_2.Comment_1: 。。。'),(1537857334299,1537857324518,82001,1536805585275,'2018-09-25 06:35:34','ds_2.Comment_1: 嗯嗯'),(1539868250267,1531063660028,82001,1531062713966,'2018-10-18 13:10:50','ds_2.Comment_1: 555555555555555555'),(1539868269471,1539868250267,82001,1531062713966,'2018-10-18 13:11:09','ds_2.Comment_1: 4444444444444'),(1543193682067,0,1528339692804,1528269822710,'2018-11-26 00:54:42','ds_2.Comment_1: ss'),(1545927001999,1545895875719,82001,1553096819293,'2018-12-27 16:10:02','ds_2.Comment_1: 哦哦哦www'),(1551409858047,0,82001,301,'2019-03-01 03:10:58','ds_2.Comment_1: 您'),(1552297994119,0,82001,1512314438990,'2019-03-11 09:53:14','ds_2.Comment_1: 小米'),(1553053346095,0,82001,1553096819293,'2019-03-20 03:42:26','ds_2.Comment_1: 启'),(1555557868075,0,82001,32,'2019-04-18 03:24:28','ds_2.Comment_1: 121212312456'),(1558440349435,0,82001,1557754680146,'2019-05-21 12:05:49','ds_2.Comment_1: 解决'),(1566270981387,1566270974217,82001,1558798664043,'2019-08-20 03:16:21','ds_2.Comment_1: 什么鬼'),(1566271052875,0,82001,1557754680146,'2019-08-20 03:17:32','ds_2.Comment_1: YY'),(1569202210099,0,82001,1513094436910,'2019-09-23 01:30:10','ds_2.Comment_1: 6765765756'),(1569202223099,0,82001,1513094436910,'2019-09-23 01:30:23','ds_2.Comment_1: 3423423423'),(1569202232091,1569202210099,82001,1513094436910,'2019-09-23 01:30:32','ds_2.Comment_1: 哈哈'),(1570609939135,0,82001,704,'2019-10-09 08:32:19','ds_2.Comment_1: 哈哈哈'),(1571143167015,0,82001,1557754680146,'2019-10-15 12:39:27','ds_2.Comment_1: 回老家了'),(1581892352819,0,82001,1508053762227,'2020-02-16 22:32:32','ds_2.Comment_1: 哈哈'),(1583848843283,0,82001,1583574596245,'2020-03-10 14:00:43','ds_2.Comment_1: 哼哼唧唧'),(1584336845779,1584336841458,82001,1583574596245,'2020-03-16 05:34:05','ds_2.Comment_1: 宝宝'),(1589255368635,1491119695580,82001,371,'2020-05-12 03:49:28','ds_2.Comment_1: 家常菜比较'),(1589255382551,116,82001,371,'2020-05-12 03:49:42','ds_2.Comment_1: u好v发'),(1594290846627,1589255358661,82001,371,'2020-07-09 10:34:06','ds_2.Comment_1: 自己可以恢复2自己吗?'),(1594779313019,0,82001,1594385350586,'2020-07-15 02:15:13','ds_2.Comment_1: 空间'),(1599034919083,0,82001,1594385349411,'2020-09-02 08:21:59','ds_2.Comment_1: 13264646'),(1600155068139,0,82001,1594127400223,'2020-09-15 07:31:08','ds_2.Comment_1: 38:—3—'),(1600155073891,1600155068139,82001,1594127400223,'2020-09-15 07:31:13','ds_2.Comment_1: 蜀地'),(1600184363431,1594462397453,82001,1594385349411,'2020-09-15 15:39:23','ds_2.Comment_1: 就是就是你说呢上班'),(1611547274671,0,82001,1611503147421,'2021-01-25 04:01:14','ds_2.Comment_1: 哈哈啊'),(1617265294447,0,82001,1611503147421,'2021-04-01 08:21:34','ds_2.Comment_1: 的'),(1617457502251,0,82001,1611503147421,'2021-04-03 13:45:02','ds_2.Comment_1: 我很开心'),(1621932358167,1617457502251,82001,1611503147421,'2021-05-25 08:45:58','ds_2.Comment_1: 我好奇'),(1623143559223,0,82001,12,'2021-06-08 09:12:39','ds_2.Comment_1: test'),(1628094888155,0,82001,1624700434072,'2021-08-04 16:34:48','ds_2.Comment_1: 。。。'),(1628166384971,0,82001,1583574596245,'2021-08-05 12:26:24','ds_2.Comment_1: 老师的'),(1628778280811,0,82001,1627367646018,'2021-08-12 14:24:40','ds_2.Comment_1: ?'),(1630891112935,0,82001,1630746489563,'2021-09-06 01:18:32','ds_2.Comment_1: (fdsd)'),(1630891147547,0,82001,1630746489563,'2021-09-06 01:19:07','ds_2.Comment_1: 3355'),(1630899176191,0,82001,1630893108502,'2021-09-06 03:32:56','ds_2.Comment_1: 5555'),(1631761398611,0,82001,1531969818357,'2021-09-16 03:03:18','ds_2.Comment_1: 654342365656'),(1631761409539,0,82001,371,'2021-09-16 03:03:29','ds_2.Comment_1: 111'),(1631761410755,0,82001,1508053762227,'2021-09-16 03:03:30','ds_2.Comment_1: $$'),(1631761412727,0,82001,1516086423441,'2021-09-16 03:03:32','ds_2.Comment_1: 3333'),(1631761412927,0,82001,58,'2021-09-16 03:03:32','ds_2.Comment_1: 555555'),(1631761413307,0,82001,1508072633830,'2021-09-16 03:03:33','ds_2.Comment_1: ,王者荣耀'),(1631761414467,0,82001,1516086423441,'2021-09-16 03:03:34','ds_2.Comment_1: -162'),(1631761415511,0,82001,1557754680146,'2021-09-16 03:03:35','ds_2.Comment_1: 00'),(1631761415879,0,82001,1508072633830,'2021-09-16 03:03:35','ds_2.Comment_1: 123121545645'),(1631761428791,0,82001,371,'2021-09-16 03:03:48','ds_2.Comment_1: $$'),(1631761430823,0,82001,1527821296110,'2021-09-16 03:03:50','ds_2.Comment_1: 444444'),(1631761433815,0,82001,1528356421201,'2021-09-16 03:03:53','ds_2.Comment_1: 111'),(1631761442871,0,82001,58,'2021-09-16 03:04:02','ds_2.Comment_1: 11111111'),(1631761443039,0,82001,1557754680146,'2021-09-16 03:04:03','ds_2.Comment_1: 123'),(1631761443879,0,82001,1508072633830,'2021-09-16 03:04:03','ds_2.Comment_1: 110'),(1631761444199,0,82001,235,'2021-09-16 03:04:04','ds_2.Comment_1: 11111111'),(1631761444879,0,82001,1527830474378,'2021-09-16 03:04:04','ds_2.Comment_1: -162'),(1631761446691,0,82001,1516086423441,'2021-09-16 03:04:06','ds_2.Comment_1: 1'),(1631761456415,0,82001,1516086423441,'2021-09-16 03:04:16','ds_2.Comment_1: 111'),(1631761456615,0,82001,235,'2021-09-16 03:04:16','ds_2.Comment_1: 1111'),(1631761457271,0,82001,170,'2021-09-16 03:04:17','ds_2.Comment_1: $$'),(1631761457583,0,82001,1557754680146,'2021-09-16 03:04:17','ds_2.Comment_1: -162'),(1631761457755,0,82001,170,'2021-09-16 03:04:17','ds_2.Comment_1: 00'),(1631761458047,0,82001,58,'2021-09-16 03:04:18','ds_2.Comment_1: 1'),(1631761459175,0,82001,1520242333325,'2021-09-16 03:04:19','ds_2.Comment_1: 111'),(1631761460839,0,82001,1531969818357,'2021-09-16 03:04:20','ds_2.Comment_1: 1'),(1631761585035,0,82001,12,'2021-09-16 03:06:25','ds_2.Comment_1: 112'),(1631761594059,0,82001,12,'2021-09-16 03:06:34','ds_2.Comment_1: 因为没做前端上传和后端保存图片的功能,APIJSONApp主要是用来展示APIJSON的自动化接口的'),(1637565584211,0,82001,1637405012523,'2021-11-22 07:19:44','ds_2.Comment_1: 你好,有联系方式吗'),(1637566406511,1637565584211,82003,1637405012523,'2021-11-22 07:33:26','ds_2.Comment_1: 有什么事吗?'),(1638386804783,0,82001,1638327674898,'2021-12-01 19:26:44','ds_2.Comment_1: 是这样,赞!'),(1638631324735,0,82001,1637985952844,'2021-12-04 15:22:04','ds_2.Comment_1: 带点'),(1639386671675,0,82001,1638327674898,'2021-12-13 09:11:11','ds_2.Comment_1: hhh'),(1639556962499,1638631324735,82001,1637985952844,'2021-12-15 08:29:22','ds_2.Comment_1: 就是竞技等级'),(1639556974079,1638631324735,82001,1637985952844,'2021-12-15 08:29:34','ds_2.Comment_1: 本恩'),(1639737103991,0,82001,1638327674898,'2021-12-17 10:31:43','ds_2.Comment_1: 把'),(1640325878347,0,82003,12,'2021-12-24 06:04:38','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1645678663535,1645678658757,82001,1645416338268,'2022-02-24 04:57:43','ds_2.Comment_1: 太肝'),(1647416576411,0,82001,1646030924765,'2022-03-16 07:42:56','ds_2.Comment_1: 61'),(1648716219295,0,82001,1648604448242,'2022-03-31 08:43:39','ds_2.Comment_1: 12312'),(1649548802611,0,82001,1649086182892,'2022-04-10 00:00:02','ds_2.Comment_1: Find me'),(1650022326907,0,82001,1649086185746,'2022-04-15 11:32:06','ds_2.Comment_1: 你ing明明哦'),(1650786605459,1650022311005,82001,1649086185746,'2022-04-24 07:50:05','ds_2.Comment_1: 你好'),(1651717769047,0,82001,12,'2022-05-05 02:29:29','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1651745295227,0,82001,12,'2022-05-05 10:08:15','ds_2.Comment_1: A machine base 0 & 1'),(1653122462507,0,82001,12,'2022-05-21 08:41:02','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1659086363211,0,82001,12,'2022-07-29 09:19:23','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1660209520647,0,82001,12,'2022-08-11 09:18:40','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1661830724947,0,82001,12,'2022-08-30 03:38:44','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1663572556775,0,82001,12,'2022-09-19 07:29:16','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1665865931679,0,82001,1665293930441,'2022-10-15 20:32:11','ds_2.Comment_1: 测试你亩'),(1669345764759,0,82001,1665293930441,'2022-11-25 03:09:24','ds_2.Comment_1: 起咯啦咯啦'),(1671322206423,0,82001,1670981978461,'2022-12-18 00:10:06','ds_2.Comment_1: 哈哈哈哈个'),(1671437025975,0,82001,1649672357944,'2022-12-19 08:03:45','ds_2.Comment_1: sss'),(1672729132415,0,82001,12,'2023-01-03 06:58:52','ds_2.Comment_1: Adam'),(1673266959019,0,82001,1634090516839,'2023-01-09 12:22:39','ds_2.Comment_1: 好的'),(1676271683595,0,82001,1675910359578,'2023-02-13 07:01:23','ds_2.Comment_1: 3333'),(1677154663707,0,82001,1677144307563,'2023-02-23 12:17:43','ds_2.Comment_1: go on'),(1678971043311,0,82001,1678877778484,'2023-03-16 12:50:43','ds_2.Comment_1: good'),(1679450026467,0,82001,1679313363196,'2023-03-22 01:53:46','ds_2.Comment_1: ggggg'),(1679645523543,0,82001,1675742375160,'2023-03-24 08:12:03','ds_2.Comment_1: zzzzz'),(1680076982343,1678971043311,82001,1678877778484,'2023-03-29 08:03:02','ds_2.Comment_1: 666'),(1680742650703,0,82001,1680494769487,'2023-04-06 00:57:30','ds_2.Comment_1: 噢哈哈哈'),(1681710728099,0,82002,1679908549702,'2023-04-17 05:52:08','ds_2.Comment_1: 111'),(1681999172055,0,82001,470,'2023-04-20 13:59:32','ds_2.Comment_1: ffff'),(1681999221287,0,82001,470,'2023-04-20 14:00:21','ds_2.Comment_1: ffff'),(1681999222839,0,82001,470,'2023-04-20 14:00:22','ds_2.Comment_1: ffff'),(1682103798215,0,82002,1682103762126,'2023-04-21 19:03:18','ds_2.Comment_1: 555'),(1682173109591,0,82001,1681833052745,'2023-04-22 14:18:29','ds_2.Comment_1: 5555'),(1682299587015,0,82003,1681404270495,'2023-04-24 01:26:27','ds_2.Comment_1: snjddj'),(1682299634087,0,82003,1681404270495,'2023-04-24 01:27:14','ds_2.Comment_1: ddf'),(1682621619807,0,82001,12,'2023-04-27 18:53:40','ds_2.Comment_1: Ab_Cd6844800776712211'),(1683353527227,0,82001,12,'2023-05-06 06:12:07','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683353527379,0,82001,12,'2023-05-06 06:12:07','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683354040647,0,82001,142,'2023-05-06 06:20:40','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683354458987,0,82001,12,'2023-05-06 06:27:39','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683355771275,0,82001,142,'2023-05-06 06:49:31','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683355771387,0,82001,144,'2023-05-06 06:49:31','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1684140541183,0,82001,12,'2023-05-15 08:49:01','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1684489620899,0,82001,1682096402171,'2023-05-19 09:47:00','ds_2.Comment_1: GGG'),(1684489630879,0,82001,1682096402171,'2023-05-19 09:47:10','ds_2.Comment_1: GGG'),(1685617645727,0,82001,1665293930441,'2023-06-01 11:07:25','ds_2.Comment_1: 5464646'),(1685617665899,0,82001,1665293930441,'2023-06-01 11:07:45','ds_2.Comment_1: 5464646'),(1686196023911,0,82001,1684981418161,'2023-06-08 03:47:03','ds_2.Comment_1: 1册'),(1686328067739,0,82001,1645416338268,'2023-06-09 16:27:47','ds_2.Comment_1: 牛逼'),(1686710660079,0,82001,1684981561371,'2023-06-14 02:44:20','ds_2.Comment_1: ?'),(1687589809215,0,82001,12,'2023-06-24 06:56:49','ds_2.Comment_1: dkf;dfd;akfd;dadj;\''),(1687589911427,0,82001,123333,'2023-06-24 06:58:31','ds_2.Comment_1: dkf;dfd;akfd;dadj;\''),(1689569618555,0,82001,1688307338283,'2023-07-17 04:53:38','ds_2.Comment_1: hi'),(1692079106475,0,82001,1685592384514,'2023-08-15 05:58:26','ds_2.Comment_1: 1231231'),(1693680555335,0,82003,401,'2023-09-04 06:11:58','ds_2.Comment_1: Ab_Cd-4875974116009220'),(1693680555339,0,82008,401,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd7317747304255183'),(1693680555343,0,82003,12,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd-1962765097189040'),(1693680555347,0,82005,401,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd-7529469690326007'),(1693680555355,0,82003,12,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd825032408273019'),(1693680555367,0,82004,12,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd-2237601713645828'),(1700489345231,0,82002,1700488719094,'2023-11-20 14:09:05','ds_2.Comment_1: 哈哈'),(1700618204303,1700488850297,82001,1700488719094,'2023-11-22 01:56:44','ds_2.Comment_1: 666'),(1701240406371,0,82001,12,'2023-11-28 16:00:00','ds_2.Comment_1: [{\"name\":\"张三\",\"age\":\"13\"},{\"name\":\"李四\",\"age\":\"23\"},{\"name\":\"张三2\",\"age\":\"13\"},{\"name\":\"李四2\",\"age\":\"23\"}]'),(1701676180551,0,82002,666666,'2023-12-04 07:49:40','ds_2.Comment_1: 这是新建 !'),(1701676386379,0,82002,12,'2023-12-04 07:53:06','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1701677668887,0,82002,12,'2023-12-04 08:14:28','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1701677684803,0,82002,12,'2023-12-04 08:14:44','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1702285429163,0,82002,12,'2023-12-11 09:03:49','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1702401213379,0,82005,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-1088802732388048'),(1702401213383,0,82001,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-7610537093435167'),(1702401213387,0,82008,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-1549832248430260'),(1702401213391,0,82005,401,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-8713427624662519'),(1702401213395,0,82007,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-6809374747662939'),(1702401213407,0,82006,401,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-3313726169660404'),(1702401213419,0,82004,12,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd3382966224119863'),(1702401213423,0,82006,401,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd-1524768988183308'),(1702401213427,0,82007,401,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd-8674022040984503'),(1702401213443,0,82005,401,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd-8512377331398695'),(1702401213447,0,82008,12,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd3560649233939767'),(1702401213451,0,82003,12,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd-7857754798412359'),(1702401213455,0,82005,401,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd-5948269128555860'),(1702401213463,0,82004,401,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd-4086867961455256'),(1702401213487,0,82008,401,'2023-12-13 10:02:39','ds_2.Comment_1: Ab_Cd5141040501975699'),(1702401213499,0,82008,12,'2023-12-13 10:02:40','ds_2.Comment_1: Ab_Cd-7980762700240671'),(1702401213515,0,82007,401,'2023-12-13 10:02:40','ds_2.Comment_1: Ab_Cd-6169518377919916'),(1702401213543,0,82004,12,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd-359139371884560'),(1702401213547,0,82006,12,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd650651525531059'),(1702401213559,0,82008,12,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd-2125869028805520'),(1702401213563,0,82004,401,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd4101953712751635'),(1703058102851,0,82001,12,'2023-12-20 07:41:42','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1703572770503,0,82001,1703425198937,'2023-12-26 06:39:30','ds_2.Comment_1: 哈哈'),(1708314755219,0,82001,1684979928085,'2024-02-19 03:52:35','ds_2.Comment_1: ok'),(1708314757871,0,82001,1684979928085,'2024-02-19 03:52:37','ds_2.Comment_1: ok'),(1708671588899,0,82001,15,'2024-02-23 06:59:48','ds_2.Comment_1: 测试新增评论'),(1708929997751,1708929935730,82001,1693680292080,'2024-02-26 06:46:37','ds_2.Comment_1: 1111'),(1709021350459,0,82001,15,'2024-02-27 08:09:10','ds_2.Comment_1: 测试新增评论'),(1709022113503,0,82001,15,'2024-02-27 08:21:53','ds_2.Comment_1: 测试新增评论'),(1709022902511,0,82002,15,'2024-02-27 08:35:02','ds_2.Comment_1: 测试新增评论'),(1709182229075,0,82003,15,'2024-02-29 04:50:29','ds_2.Comment_1: 测试新增评论'),(1709188214951,0,88888,15,'2024-02-29 06:30:15','ds_2.Comment_1: 测试新增评论'),(1709275476459,0,82002,15,'2024-03-01 06:44:36','ds_2.Comment_1: 测试新增评论'),(1709784080431,0,82001,15,'2024-03-07 04:01:20','ds_2.Comment_1: 测试新增评论'),(1709812360647,0,82003,15,'2024-03-07 11:52:40','ds_2.Comment_1: 测试新增评论'),(1711435056751,0,82003,15,'2024-03-26 06:37:36','ds_2.Comment_1: 测试新增评论'),(1713152309159,0,82001,1690970599784,'2024-04-15 03:38:29','ds_2.Comment_1: 额'),(1713949089303,0,82003,15,'2024-04-24 08:58:09','ds_2.Comment_1: APIJSON is a JSON transmision protocol.'),(1713949178363,0,82003,12,'2024-04-24 08:59:38','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1713955538827,0,82003,15,'2024-04-24 10:45:38','ds_2.Comment_1: APIJSON is a JSON transmision protocol.'),(1714118290011,0,82001,1711013832774,'2024-04-26 07:58:10','ds_2.Comment_1: 高'),(1717468801251,0,82001,15,'2024-06-04 02:40:01','ds_2.Comment_1: 测试新增评论'),(1717862885019,0,82001,15,'2024-06-08 16:08:05','ds_2.Comment_1: 测试新增评论'),(1717862890963,0,38710,15,'2024-06-08 16:08:10','ds_2.Comment_1: 测试新增评论'); +/*!40000 ALTER TABLE `Comment_1` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-02-03 23:27:31 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_apijson_user.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_apijson_user.sql new file mode 100644 index 0000000..f45ede3 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_apijson_user.sql @@ -0,0 +1,59 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: localhost Database: ds_2 +-- ------------------------------------------------------ +-- Server version 8.0.32 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `apijson_user` +-- + +DROP TABLE IF EXISTS `apijson_user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `apijson_user` ( + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '唯一标识', + `sex` tinyint NOT NULL DEFAULT '0' COMMENT '性别:\n0-男\n1-女', + `name` varchar(20) NOT NULL COMMENT '名称', + `tag` varchar(45) DEFAULT NULL COMMENT '标签', + `head` varchar(300) DEFAULT 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png' COMMENT '头像url', + `contactIdList` json DEFAULT NULL COMMENT '联系人id列表', + `pictureList` json DEFAULT NULL COMMENT '照片列表', + `date` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期', + PRIMARY KEY (`id`), + KEY `index_date` (`date`), + FULLTEXT KEY `name_tag_index` (`name`,`tag`) /*!50100 WITH PARSER `ngram` */ +) ENGINE=InnoDB AUTO_INCREMENT=1704867024922 DEFAULT CHARSET=utf8mb3 COMMENT='用户公开信息表。\n对安全要求高,不想泄漏真实名称。对外名称为 User'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `apijson_user` +-- + +LOCK TABLES `apijson_user` WRITE; +/*!40000 ALTER TABLE `apijson_user` DISABLE KEYS */; +INSERT INTO `apijson_user` VALUES (70793,0,'Strong','ds_2','https://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000','[38710, 82002]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/788c0a7e11a\", \"https://camo.githubusercontent.com/f513f67\"]','2017-02-01 11:21:50'),(82001,1,'Test User','ds_2','https://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000','[82034, 82005, 82030, 82046, 1493748615711, 38710, 82054, 82002]','[\"https://common.cnblogs.com/images/icon_weibo_24.png\"]','2017-02-01 11:21:50'),(82003,0,'Wechat','ds_2','https://common.cnblogs.com/images/wechat.png','[93793]','[]','2017-02-01 11:21:50'),(82005,1,'Jan','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[82001, 38710, 1532439021068]','[]','2017-02-01 11:21:50'),(82009,0,'God','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[1493480142628]','[]','2017-02-01 11:21:50'),(82021,1,'Tommy','ds_2','https://static.oschina.net/uploads/user/19/39085_50.jpg','[]','[]','2017-02-01 11:21:50'),(82023,0,'No1','ds_2','https://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000','[]','[]','2017-02-01 11:21:50'),(82025,1,'Tommy','ds_2','https://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000','[]','[]','2017-02-01 11:21:50'),(82027,0,'Yong','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-02-01 11:21:50'),(82029,0,'GASG','ds_2','https://common.cnblogs.com/images/wechat.png','[]','[]','2017-02-01 11:21:50'),(82031,0,'Lemon','ds_2','https://static.oschina.net/uploads/user/48/96331_50.jpg','[]','[]','2017-02-01 11:21:50'),(82033,1,'GAS','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-02-01 11:21:50'),(82035,1,'Tab','ds_2','https://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000','[]','[]','2017-02-01 11:21:50'),(82037,0,'Test','ds_2','https://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000','[]','[]','2017-02-01 11:21:50'),(82039,1,'Everyday','ds_2','https://common.cnblogs.com/images/icon_weibo_24.png','[]','[]','2017-02-19 13:57:56'),(82041,0,'Holo','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[38710, 82001]','[]','2017-03-04 09:59:34'),(82043,0,'Holiday','ds_2','https://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000','[70793, 82006]','[]','2017-03-04 10:05:04'),(82045,0,'Green','ds_2','https://common.cnblogs.com/images/wechat.png','[82001, 82002, 82003, 1485246481130]','[]','2017-03-04 10:22:39'),(82047,0,'Tesla','ds_2','https://common.cnblogs.com/images/wechat.png','[]','[]','2017-03-04 16:02:05'),(82049,0,'ITMan','ds_2','https://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000','[]','[]','2017-03-05 09:51:51'),(82051,0,'Girl','ds_2','https://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000','[]','[]','2017-03-05 09:53:37'),(82053,0,'Alice','ds_2','https://common.cnblogs.com/images/wechat.png','[]','[]','2017-03-05 15:25:42'),(82055,1,'Solid','ds_2','https://static.oschina.net/uploads/user/19/39085_50.jpg','[38710, 82002]','[]','2017-03-11 15:04:00'),(82057,0,'NullPointerExeption','ds_2','https://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000','[]','[]','2017-03-12 06:01:23'),(82059,1,'He&She','ds_2','https://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000','[]','[]','2017-03-19 14:49:15'),(93793,0,'Mike','ds_2','https://static.oschina.net/uploads/user/48/96331_50.jpg','[]','[]','2017-02-01 11:21:50'),(99999,0,'贡献者','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-01-30 18:53:01'),(88888999,1,'Test 15:46:11','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:54:35'),(1490109742863,1,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-03-21 15:22:22'),(1490427139175,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[38710, 70793]','[]','2017-03-25 07:32:19'),(1490427577823,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-03-25 07:39:37'),(1493748594003,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-05-02 18:09:54'),(1493748615711,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-05-02 18:10:15'),(1493749090643,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-05-02 18:18:10'),(1493836043151,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-05-03 18:27:23'),(1493890214167,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-05-04 09:30:14'),(1493890303473,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-05-04 09:31:43'),(1499057230629,0,'一二三','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-07-03 04:47:10'),(1502639424119,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-08-13 15:50:24'),(1507220582167,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-10-05 16:23:02'),(1508072160401,0,'四五六','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-10-15 12:56:00'),(1508072202871,0,'七八九十','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-10-15 12:56:42'),(1511761906715,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-11-27 05:51:46'),(1511965911349,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]','[]','2017-11-29 14:31:51'),(1512531601485,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[82001]','[]','2017-12-06 03:40:01'),(1514623064133,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2017-12-30 08:37:44'),(1514625918255,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[82002, 93793]',NULL,'2017-12-30 09:25:18'),(1514858422969,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[93793, 82056]',NULL,'2018-01-02 02:00:22'),(1518218350585,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-02-09 23:19:10'),(1520242280259,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[82002]',NULL,'2018-03-05 09:31:20'),(1523935772553,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[1523626157302]',NULL,'2018-04-17 03:29:32'),(1524042900591,1,'哈哈哈','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[82002, 82003]',NULL,'2018-04-18 09:15:00'),(1524298730523,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[]',NULL,'2018-04-21 08:18:50'),(1525677515673,0,'APIJSONUser','ds_2','https://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000','[82003, 82002, 38710]',NULL,'2018-05-07 07:18:35'),(1527498229991,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[1499057230629]',NULL,'2018-05-28 09:03:50'),(1528250827953,1,'limengt','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[1528264711016]',NULL,'2018-06-06 02:07:07'),(1528254173621,1,'A','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[82001, 38710]',NULL,'2018-06-06 03:02:53'),(1528255497767,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[82002]',NULL,'2018-06-06 03:24:57'),(1528356470041,0,'aaaa','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[1528339692804]',NULL,'2018-06-07 07:27:50'),(1531969715979,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[82002, 82003, 82005]',NULL,'2018-07-19 03:08:35'),(1532188114543,0,'宁旭','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-07-21 15:48:34'),(1533835176109,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[1532188114543]',NULL,'2018-08-09 17:19:36'),(1541583762603,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-11-07 09:42:42'),(1544503822963,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[93793, 82003]',NULL,'2018-12-11 04:50:22'),(1545707526805,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2018-12-25 03:12:06'),(1553095415917,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4','[82001]',NULL,'2019-03-20 15:23:35'),(1563605318975,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2019-07-20 06:48:38'),(1570529238569,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2019-10-08 10:07:18'),(1592544225995,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2020-06-19 05:23:45'),(1606355327749,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2020-11-26 01:48:47'),(1618542651755,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-04-16 03:10:51'),(1620959466969,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-05-14 02:31:06'),(1625139659901,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-07-01 11:40:59'),(1626942274763,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-07-22 08:24:34'),(1627003736851,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-07-23 01:28:56'),(1627460157815,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-07-28 08:15:57'),(1629182147093,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-08-17 06:35:47'),(1631617361403,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-09-14 11:02:41'),(1635298996791,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-27 01:43:16'),(1635487317001,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-29 06:01:57'),(1635490283143,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-10-29 06:51:23'),(1635731167481,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-01 01:46:07'),(1635755610457,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-01 08:33:30'),(1636336186325,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-08 01:49:46'),(1636340324511,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-08 02:58:44'),(1637139486293,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-17 08:58:06'),(1637199454849,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-18 01:37:34'),(1637824224903,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-25 07:10:24'),(1637894918405,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-11-26 02:48:38'),(1638863790945,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-12-07 07:56:30'),(1639015667147,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-12-09 02:07:47'),(1639987570483,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-12-20 08:06:10'),(1640224388749,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2021-12-23 01:53:08'),(1642574030663,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-01-19 06:33:50'),(1644219958691,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-02-07 07:45:58'),(1645540288925,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-02-22 14:31:28'),(1646272674945,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-03-03 01:57:54'),(1648020752521,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-03-23 07:32:32'),(1648973644623,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-03 08:14:04'),(1649303175037,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-07 03:46:15'),(1650124472611,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-16 15:54:32'),(1651113083185,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-04-28 02:31:23'),(1651665004571,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-05-04 11:50:04'),(1651744153461,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-05-05 09:49:13'),(1652776005887,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-05-17 08:26:45'),(1652777353299,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-05-17 08:49:13'),(1655037951689,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-06-12 12:45:51'),(1655310011415,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-06-15 16:20:11'),(1655364019471,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-06-16 07:20:19'),(1655448439355,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-06-17 06:47:19'),(1655780508531,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-06-21 03:01:48'),(1655780508533,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-06-22 08:04:55'),(1656230790121,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-06-26 08:06:30'),(1657100711107,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-07-06 09:45:11'),(1658115131441,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-07-18 03:32:11'),(1658716761381,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-07-25 02:39:21'),(1659491893037,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-03 01:58:13'),(1659593571973,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-04 06:12:51'),(1660553429453,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-15 08:50:29'),(1660645570787,0,'test00001','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-16 10:26:10'),(1660735624607,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-17 11:27:04'),(1661925532557,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-08-31 05:58:52'),(1662112443331,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-09-02 09:54:03'),(1663579240791,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-09-19 09:20:40'),(1664178104245,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-09-26 07:41:44'),(1665460245211,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-11 03:50:45'),(1666059874163,0,'Test User 2022/10/18','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:24:36'),(1666059915185,1,'Test 10:25:15','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:17'),(1666059922815,0,'Test 10:25:22','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:25'),(1666059923169,1,'Test 10:25:23','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:25'),(1666059925147,1,'Test 10:25:25','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:27'),(1666059925333,0,'Test 10:25:25','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:27'),(1666059925519,0,'Test 10:25:25','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:27'),(1666059925845,0,'Test 10:25:25','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:28'),(1666059926301,0,'Test 10:25:26','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:28'),(1666059926721,0,'Test 10:25:26','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:28'),(1666059928159,1,'Test 10:25:28','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:30'),(1666059928347,1,'Test 10:25:28','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:30'),(1666059928503,1,'Test 10:25:28','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:30'),(1666059928675,0,'Test 10:25:28','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:30'),(1666059928929,0,'Test 10:25:28','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:31'),(1666059931719,1,'Test 10:25:31','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:33'),(1666059932079,1,'Test 10:25:32','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:34'),(1666059932589,0,'Test 10:25:32','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:34'),(1666059953765,1,'Test 10:25:53','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:25:56'),(1666059953767,1,'Test 10:25:53','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:26:01'),(1666059963977,1,'Test 10:26:03','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:26:10'),(1666059964281,0,'Test 10:26:04','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:26:10'),(1666060121719,1,'Test 10:28:41','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-10-18 02:28:43'),(1667352384911,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-11-02 01:26:24'),(1667532582633,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-11-04 03:29:42'),(1668213634785,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-11-12 00:40:34'),(1668672863487,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-11-17 08:14:23'),(1668928185061,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-11-20 07:09:45'),(1669403605789,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-11-25 19:13:25'),(1669873584975,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2022-12-01 05:46:24'),(1675929028431,1,'Test 15:50:28','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 07:50:28'),(1675929041983,1,'Test 15:50:41','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 07:50:42'),(1675929049275,0,'Test 15:50:49','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 07:50:49'),(1675929049277,0,'Test 15:50:49','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 07:50:52'),(1675935815629,1,'Test 17:43:35','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:36'),(1675935815639,0,'Test 17:43:35','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:36'),(1675935815641,0,'Test 17:43:35','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:40'),(1675935815643,1,'Test 17:43:35','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:36'),(1675935815645,0,'Test 17:43:35','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:36'),(1675935815647,0,'Test 17:43:35','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:39'),(1675935815649,1,'Test 17:43:35','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:42'),(1675935815651,1,'Test 17:43:35','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-09 09:43:44'),(1675992490551,0,'Test 09:28:10','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 01:28:10'),(1675992593837,0,'Test 09:29:53','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 01:29:53'),(1675997510811,0,'Test 上午10:51:50','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 02:51:51'),(1675997511143,1,'Test 上午10:51:51','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 02:51:51'),(1676014551385,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:35:51'),(1676014647775,1,'Test 15:37:27','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:37:28'),(1676015168485,0,'Test 15:46:08','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:08'),(1676015169717,0,'Test 15:46:09','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:09'),(1676015170355,1,'Test 15:46:10','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:10'),(1676015170553,0,'Test 15:46:10','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:10'),(1676015170751,0,'Test 15:46:10','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:10'),(1676015171175,0,'Test 15:46:11','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:11'),(1676015171423,1,'Test 15:46:11','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 07:46:11'),(1676017060343,1,'Test 16:17:40','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 08:17:40'),(1676017066923,1,'Test 16:17:46','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-10 08:17:47'),(1676865010641,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-20 03:50:10'),(1677037155759,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-22 03:39:15'),(1677037331169,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-22 03:42:11'),(1677053872029,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-02-22 08:17:52'),(1678669886501,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-03-13 01:11:26'),(1678786607537,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-03-14 09:36:47'),(1678954988417,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-03-16 08:23:08'),(1679623505741,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-03-24 02:05:05'),(1680155181179,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-03-30 05:46:21'),(1680785327061,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-04-06 12:48:47'),(1681442132897,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-04-14 03:15:32'),(1681451084123,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-04-14 05:44:44'),(1681887264131,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-04-19 06:54:24'),(1681959822467,0,'APIJSONUser','ds_2','https://avatars.githubusercontent.com/u/41146037?v=4',NULL,NULL,'2023-04-20 03:03:42'),(1683166965651,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-05-04 02:22:45'),(1683178142473,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-05-04 05:29:02'),(1688710551421,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-07-07 06:15:51'),(1693360438687,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-08-30 01:53:58'),(1693396359887,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-08-30 11:52:39'),(1693582590403,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-09-01 15:36:30'),(1693994848347,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-09-06 10:07:28'),(1694219931923,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-09-09 00:38:51'),(1700011653955,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-11-15 01:27:33'),(1702441075095,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-12-13 04:17:55'),(1702814072065,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2023-12-17 11:54:32'),(1704176866501,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-01-02 06:27:46'),(1704867024899,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-01-10 06:10:24'),(1704867024903,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-05-29 01:59:23'),(1704867024907,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-05-29 09:06:57'),(1704867024909,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-05-30 15:28:27'),(1704867024911,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-06-05 06:39:12'),(1704867024917,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-06-13 02:35:47'),(1704867024919,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-06-13 02:36:59'),(1704867024921,0,'APIJSONUser','ds_2','https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png',NULL,NULL,'2024-06-15 02:31:05'); +/*!40000 ALTER TABLE `apijson_user` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-02-03 23:27:32 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/pom.xml b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/pom.xml index 60cd696..6461132 100755 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/pom.xml @@ -5,7 +5,7 @@ apijson.demo apijson-demo - 7.0.3 + 7.1.5 APIJSONDemo-SharingSphere Demo project for testing APIJSON server based on SpringBoot @@ -13,7 +13,10 @@ UTF-8 UTF-8 - 1.8 + 17 + UTF-8 + 17 + 17 @@ -21,12 +24,18 @@ com.github.Tencent APIJSON - 7.0.3 + 7.1.0 com.github.APIJSON apijson-framework - 7.0.3 + 7.1.5 + + + + jakarta.servlet + jakarta.servlet-api + 6.0.0 @@ -43,18 +52,68 @@ 3.1.0 - - org.apache.shardingsphere - shardingsphere-jdbc-core - 5.2.1 - + + org.apache.shardingsphere + shardingsphere-jdbc-core + 5.4.1 + + + org.yaml + snakeyaml + 1.33 + + + + + + + + + + + + + + + + + + + + + + + + org.springframework.boot spring-boot-starter-web - 2.5.13 + 2.7.0 + + + + + + + + + + + + + + + + + + + + + + @@ -64,7 +123,7 @@ org.springframework.boot spring-boot-maven-plugin - 2.5.13 + 3.2.5 @@ -78,8 +137,8 @@ maven-compiler-plugin 3.8.1 - 1.8 - 1.8 + 17 + 17 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoApplication.java index cc2cf85..5a9f309 100755 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoApplication.java @@ -27,8 +27,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; +import apijson.framework.javax.APIJSONApplication; +import apijson.framework.javax.APIJSONCreator; import apijson.orm.SQLConfig; import apijson.orm.SQLExecutor; @@ -68,7 +68,7 @@ public void customize(ConfigurableServletWebServerFactory server) { // 支持 APIAuto 中 JavaScript 代码跨域请求 @Bean - public WebMvcConfigurer corsConfigurer() { + public WebMvcConfigurer corsConfig() { return new WebMvcConfigurer() { @Override public void addCorsMappings(CorsRegistry registry) { @@ -85,12 +85,12 @@ public void addCorsMappings(CorsRegistry registry) { // 使用本项目的自定义处理类 APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } }; diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoController.java index c91c58f..aa5287d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoController.java @@ -29,7 +29,7 @@ import apijson.RequestMethod; import apijson.StringUtil; -import apijson.framework.APIJSONController; +import apijson.framework.javax.APIJSONController; import apijson.orm.Parser; diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoDataSourceConfig.java b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoDataSourceConfig.java index a0223ee..84a310e 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoDataSourceConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoDataSourceConfig.java @@ -1,51 +1,51 @@ -/*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License.*/ - -package apijson.demo; - -import com.zaxxer.hikari.HikariDataSource; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -import javax.sql.DataSource; - - -/**数据源配置,对应 application.yml 的数据库连接池 datasource 配置。 - * 也可以直接 new 再 set 属性,具体见 HikariCP 的文档 - * https://github.com/brettwooldridge/HikariCP#rocket-initialization - * @author Lemon - */ -@Configuration -public class DemoDataSourceConfig { - - @Bean - @ConfigurationProperties(prefix = "spring.datasource.hikari") - public DataSource dataSource() { - return new HikariDataSource(); - } - - @Bean - @ConfigurationProperties(prefix = "spring.datasource.ds-0") - public DataSource dataSourceDS0() { - return new HikariDataSource(); - } - - @Bean - @ConfigurationProperties(prefix = "spring.datasource.ds-1") - public DataSource dataSourceDS1() { - return new HikariDataSource(); - } - -} \ No newline at end of file +///*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) +// +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License.*/ +// +//package apijson.demo; +// +//import com.zaxxer.hikari.HikariDataSource; +//import org.springframework.boot.context.properties.ConfigurationProperties; +//import org.springframework.context.annotation.Bean; +//import org.springframework.context.annotation.Configuration; +// +//import javax.sql.DataSource; +// +// +///**数据源配置,对应 application.yml 的数据库连接池 datasource 配置。 +// * 也可以直接 new 再 set 属性,具体见 HikariCP 的文档 +// * https://github.com/brettwooldridge/HikariCP#rocket-initialization +// * @author Lemon +// */ +//@Configuration +//public class DemoDataSourceConfig { +// +// @Bean +// @ConfigurationProperties(prefix = "spring.datasource.hikari") +// public DataSource dataSource() { +// return new HikariDataSource(); +// } +// +// @Bean +// @ConfigurationProperties(prefix = "spring.datasource.ds-0") +// public DataSource dataSourceDS0() { +// return new HikariDataSource(); +// } +// +// @Bean +// @ConfigurationProperties(prefix = "spring.datasource.ds-1") +// public DataSource dataSourceDS1() { +// return new HikariDataSource(); +// } +// +//} \ No newline at end of file diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoSQLConfig.java index e131d0b..b2f4656 100755 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoSQLConfig.java @@ -16,7 +16,7 @@ import com.alibaba.fastjson.annotation.JSONField; -import apijson.framework.APIJSONSQLConfig; +import apijson.framework.javax.APIJSONSQLConfig; /**SQL 配置 @@ -50,7 +50,10 @@ public String getDBVersion() { @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 @Override public String getDBUri() { - return "jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; // TODO 改成你自己的,TiDB 可以当成 MySQL 使用,默认端口为 4000 + if (isConfigTable()) { + return "jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; // TODO 改成你自己的,TiDB 可以当成 MySQL 使用,默认端口为 4000 + } + return "jdbc:shardingsphere:classpath:config.yaml"; // TODO 改成你自己的,TiDB 可以当成 MySQL 使用,默认端口为 4000 } @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 @@ -65,4 +68,8 @@ public String getDBPassword() { return "apijson"; // TODO 改成你自己的,TiDB 可以当成 MySQL 使用, 默认密码为空字符串 "" } + @Override + public String getSQLSchema() { + return isConfigTable() ? super.getSQLSchema() : null; + } } diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoSQLExecutor.java index 9b29424..d4de852 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -15,11 +15,13 @@ package apijson.demo; import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.Statement; import java.util.Map; import javax.sql.DataSource; -import apijson.framework.APIJSONSQLExecutor; +import apijson.framework.javax.APIJSONSQLExecutor; import apijson.orm.SQLConfig; @@ -32,21 +34,30 @@ public class DemoSQLExecutor extends APIJSONSQLExecutor { // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, dbPassword @Override - public Connection getConnection(SQLConfig config) throws Exception { + public Connection getConnection(SQLConfig config) throws Exception { // Log.d(TAG, "getConnection config.getDatasource() = " + config.getDatasource()); - String key = config.getDatasource() + "-" + config.getDatabase(); - Connection c = connectionMap.get(key); - if (c == null || c.isClosed()) { - Map dsMap = DemoApplication.getApplicationContext().getBeansOfType(DataSource.class); - DataSource ds = dsMap == null ? null : dsMap.get("dataSourceDS0"); - // 另一种方式是 DemoDataSourceConfig 初始化获取到 Datasource 后给静态变量 DATA_SOURCE 赋值: ds = DemoDataSourceConfig.DATA_SOURCE.getConnection(); - connectionMap.put(key, ds == null ? null : ds.getConnection()); - } + //String key = config.getDatasource() + "-" + config.getDatabase(); + //Connection c = connectionMap.get(key); + //if (c == null || c.isClosed()) { + // Map dsMap = DemoApplication.getApplicationContext().getBeansOfType(DataSource.class); + // DataSource ds = dsMap == null ? null : dsMap.get("dataSourceDS0"); + // // 另一种方式是 DemoDataSourceConfig 初始化获取到 Datasource 后给静态变量 DATA_SOURCE 赋值: ds = DemoDataSourceConfig.DATA_SOURCE.getConnection(); + // connectionMap.put(key, ds == null ? null : ds.getConnection()); + //} // 必须最后执行 super 方法,因为里面还有事务相关处理。 // 如果这里是 return c,则会导致 增删改 多个对象时只有第一个会 commit,即只有第一个对象成功插入数据库表 return super.getConnection(config); } + @Override + public ResultSet executeQuery(SQLConfig config, String sql) throws Exception { + return super.executeQuery(config, sql); + } + + @Override + public ResultSet executeQuery(Statement statement, String sql) throws Exception { + return super.executeQuery(statement, sql); + } } diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-auto-tables.properties b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-auto-tables.properties deleted file mode 100644 index aee5f0b..0000000 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-auto-tables.properties +++ /dev/null @@ -1,55 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -spring.shardingsphere.datasource.names=ds-0,ds-1 - -spring.shardingsphere.datasource.ds-0.jdbc-url=jdbc:mysql://localhost:3306/demo_ds_0?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8 -spring.shardingsphere.datasource.ds-0.type=com.zaxxer.hikari.HikariDataSource -spring.shardingsphere.datasource.ds-0.driver-class-name=com.mysql.jdbc.Driver -spring.shardingsphere.datasource.ds-0.username=root -spring.shardingsphere.datasource.ds-0.password=apijson - -spring.shardingsphere.datasource.ds-1.jdbc-url=jdbc:mysql://localhost:3306/demo_ds_1?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8 -spring.shardingsphere.datasource.ds-1.type=com.zaxxer.hikari.HikariDataSource -spring.shardingsphere.datasource.ds-1.driver-class-name=com.mysql.jdbc.Driver -spring.shardingsphere.datasource.ds-1.username=root -spring.shardingsphere.datasource.ds-1.password=apijson - -spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-column=id -spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-algorithm-name=database-inline -spring.shardingsphere.rules.sharding.binding-tables[0]=Moment,Comment - -spring.shardingsphere.rules.sharding.autotables.Moment.actual-datasources=ds-${0..1} - -spring.shardingsphere.rules.sharding.auto-tables.Moment.sharding-strategy.standard.sharding-column=id -spring.shardingsphere.rules.sharding.auto-tables.Moment.sharding-strategy.standard.sharding-algorithm-name=auto-mod - -spring.shardingsphere.rules.sharding.auto-tables.Moment.key-generate-strategy.column=userId -spring.shardingsphere.rules.sharding.auto-tables.Moment.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.auto-tables.Comment.actual-datasources=ds-${0..1} - -spring.shardingsphere.rules.sharding.auto-tables.Comment.sharding-strategy.standard.sharding-column=id -spring.shardingsphere.rules.sharding.auto-tables.Comment.sharding-strategy.standard.sharding-algorithm-name=auto-mod - -spring.shardingsphere.rules.sharding.auto-tables.Comment.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.auto-tables.Comment.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.sharding-algorithms.auto-mod.type=mod -spring.shardingsphere.rules.sharding.sharding-algorithms.auto-mod.props.sharding-count=4 - -spring.shardingsphere.rules.sharding.key-generators.snowflake.type=SNOWFLAKE diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-databases-tables.properties b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-databases-tables.properties deleted file mode 100644 index 5222ccb..0000000 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-databases-tables.properties +++ /dev/null @@ -1,70 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -spring.shardingsphere.datasource.names=ds-0,ds-1 - -spring.shardingsphere.datasource.ds-0.jdbc-url=jdbc:mysql://localhost:3306/sys?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8 -spring.shardingsphere.datasource.ds-0.type=com.zaxxer.hikari.HikariDataSource -spring.shardingsphere.datasource.ds-0.driver-class-name=com.mysql.jdbc.Driver -spring.shardingsphere.datasource.ds-0.username=root -spring.shardingsphere.datasource.ds-0.password=apijson -spring.shardingsphere.datasource.ds-0.max-active=16 - -spring.shardingsphere.datasource.ds-1.jdbc-url=jdbc:mysql://localhost:3306/sys?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8 -spring.shardingsphere.datasource.ds-1.type=com.zaxxer.hikari.HikariDataSource -spring.shardingsphere.datasource.ds-1.driver-class-name=com.mysql.jdbc.Driver -spring.shardingsphere.datasource.ds-1.username=root -spring.shardingsphere.datasource.ds-1.password=apijson -spring.shardingsphere.datasource.ds-1.max-active=16 - -spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-column=id -spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-algorithm-name=database-inline -spring.shardingsphere.rules.sharding.binding-tables[0]=Moment,Comment -spring.shardingsphere.rules.sharding.broadcast-tables=apijson_user - -spring.shardingsphere.rules.sharding.tables.Moment.actual-data-nodes=ds-$->{0..1}.Moment_$->{0..1} -spring.shardingsphere.rules.sharding.tables.Moment.table-strategy.standard.sharding-column=order_id -spring.shardingsphere.rules.sharding.tables.Moment.table-strategy.standard.sharding-algorithm-name=Moment-inline - -spring.shardingsphere.rules.sharding.tables.Moment.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.tables.Moment.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.tables.Comment.actual-data-nodes=ds-$->{0..1}.Comment_$->{0..1} -spring.shardingsphere.rules.sharding.tables.Comment.table-strategy.standard.sharding-column=order_id -spring.shardingsphere.rules.sharding.tables.Comment.table-strategy.standard.sharding-algorithm-name=Comment-inline - -spring.shardingsphere.rules.sharding.tables.Comment.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.tables.Comment.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.tables.apijson_user.actual-data-nodes=ds-$->{0..1}.apijson_user_$->{0..1} -spring.shardingsphere.rules.sharding.tables.apijson_user.table-strategy.standard.sharding-algorithm-name=apijson-user-inline - -spring.shardingsphere.rules.sharding.tables.apijson_user.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.tables.apijson_user.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.default-sharding-column=userId - -spring.shardingsphere.rules.sharding.sharding-algorithms.database-inline.type=INLINE -spring.shardingsphere.rules.sharding.sharding-algorithms.database-inline.props.algorithm-expression=ds-$->{id % 2} -spring.shardingsphere.rules.sharding.sharding-algorithms.Moment-inline.type=INLINE -spring.shardingsphere.rules.sharding.sharding-algorithms.Moment-inline.props.algorithm-expression=Moment_$->{id % 2} -spring.shardingsphere.rules.sharding.sharding-algorithms.Comment-inline.type=INLINE -spring.shardingsphere.rules.sharding.sharding-algorithms.Comment-inline.props.algorithm-expression=Comment_$->{id % 2} -spring.shardingsphere.rules.sharding.sharding-algorithms.apijson-user-inline.type=INLINE -spring.shardingsphere.rules.sharding.sharding-algorithms.apijson-user-inline.props.algorithm-expression=apijson_user_$->{id % 2} - -spring.shardingsphere.rules.sharding.key-generators.snowflake.type=SNOWFLAKE diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-databases.properties b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-databases.properties deleted file mode 100644 index 93b5a7c..0000000 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-databases.properties +++ /dev/null @@ -1,55 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -spring.shardingsphere.datasource.names=ds-0,ds-1 - -spring.shardingsphere.datasource.ds-0.jdbc-url=jdbc:mysql://localhost:3306/sys?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8 -spring.shardingsphere.datasource.ds-0.type=com.zaxxer.hikari.HikariDataSource -spring.shardingsphere.datasource.ds-0.driver-class-name=com.mysql.jdbc.Driver -spring.shardingsphere.datasource.ds-0.username=root -spring.shardingsphere.datasource.ds-0.password=apijson - -spring.shardingsphere.datasource.ds-1.jdbc-url=jdbc:mysql://localhost:3306/sys?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8 -spring.shardingsphere.datasource.ds-1.type=com.zaxxer.hikari.HikariDataSource -spring.shardingsphere.datasource.ds-1.driver-class-name=com.mysql.jdbc.Driver -spring.shardingsphere.datasource.ds-1.username=root -spring.shardingsphere.datasource.ds-1.password=apijson - -spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-column=id -spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-algorithm-name=database-inline -spring.shardingsphere.rules.sharding.binding-tables[0]=Moment,Comment -spring.shardingsphere.rules.sharding.broadcast-tables=apijson_user - -spring.shardingsphere.rules.sharding.tables.Moment.actual-data-nodes=ds-$->{0..1}.Moment - -spring.shardingsphere.rules.sharding.tables.Moment.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.tables.Moment.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.tables.Comment.actual-data-nodes=ds-$->{0..1}.Comment - -spring.shardingsphere.rules.sharding.tables.Comment.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.tables.Comment.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.tables.apijson_user.actual-data-nodes=ds-$->{0..1}.apijson_user - -spring.shardingsphere.rules.sharding.tables.apijson_user.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.tables.apijson_user.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.sharding-algorithms.database-inline.type=INLINE -spring.shardingsphere.rules.sharding.sharding-algorithms.database-inline.props.algorithm-expression=ds-$->{userId % 2} - -spring.shardingsphere.rules.sharding.key-generators.snowflake.type=SNOWFLAKE diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-tables.properties b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-tables.properties deleted file mode 100644 index 8a5771a..0000000 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application-sharding-tables.properties +++ /dev/null @@ -1,59 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -spring.shardingsphere.datasource.names=ds - -spring.shardingsphere.datasource.ds.type=com.zaxxer.hikari.HikariDataSource -spring.shardingsphere.datasource.ds.driver-class-name=com.mysql.jdbc.Driver -spring.shardingsphere.datasource.ds.jdbc-url=jdbc:mysql://localhost:3306/sys?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8 -spring.shardingsphere.datasource.ds.username=root -spring.shardingsphere.datasource.ds.password=apijson -spring.shardingsphere.datasource.ds.max-active=16 - -spring.shardingsphere.rules.sharding.tables.Moment.actual-data-nodes=ds.Moment_$->{0..1} -spring.shardingsphere.rules.sharding.tables.Moment.table-strategy.standard.sharding-column=id -spring.shardingsphere.rules.sharding.tables.Moment.table-strategy.standard.sharding-algorithm-name=Moment-inline - -spring.shardingsphere.rules.sharding.tables.Moment.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.tables.Moment.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.tables.Comment.actual-data-nodes=ds.Comment_$->{0..1} -spring.shardingsphere.rules.sharding.tables.Comment.table-strategy.standard.sharding-column=id -spring.shardingsphere.rules.sharding.tables.Comment.table-strategy.standard.sharding-algorithm-name=t-comment-inline - -spring.shardingsphere.rules.sharding.tables.Comment.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.tables.Comment.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.tables.apijson_user.actual-data-nodes=ds.apijson_user_$->{0..1} -spring.shardingsphere.rules.sharding.tables.apijson_user.table-strategy.standard.sharding-algorithm-name=apijson-user-inline - -spring.shardingsphere.rules.sharding.default-sharding-column=userId - -spring.shardingsphere.rules.sharding.tables.apijson_user.key-generate-strategy.column=id -spring.shardingsphere.rules.sharding.tables.apijson_user.key-generate-strategy.key-generator-name=snowflake - -spring.shardingsphere.rules.sharding.binding-tables[0]=Moment,Comment -spring.shardingsphere.rules.sharding.broadcast-tables=apijson_user - -spring.shardingsphere.rules.sharding.sharding-algorithms.Moment-inline.type=INLINE -spring.shardingsphere.rules.sharding.sharding-algorithms.Moment-inline.props.algorithm-expression=Moment_$->{id % 2} -spring.shardingsphere.rules.sharding.sharding-algorithms.Comment-inline.type=INLINE -spring.shardingsphere.rules.sharding.sharding-algorithms.Comment-inline.props.algorithm-expression=Comment_$->{id % 2} -spring.shardingsphere.rules.sharding.sharding-algorithms.apijson-user-inline.type=INLINE -spring.shardingsphere.rules.sharding.sharding-algorithms.apijson-user-inline.props.algorithm-expression=apijson_user_$->{id % 2} - -spring.shardingsphere.rules.sharding.key-generators.snowflake.type=SNOWFLAKE diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application.properties b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application.properties index ae92513..e69de29 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application.properties +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application.properties @@ -1,21 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -spring.profiles.active=sharding-databases -#spring.profiles.active=sharding-tables -#spring.profiles.active=sharding-databases-tables -#spring.profiles.active=sharding-auto-tables diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application.yml b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application.yml deleted file mode 100644 index 607d677..0000000 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/application.yml +++ /dev/null @@ -1,43 +0,0 @@ -spring: - datasource: - type: com.zaxxer.hikari.HikariDataSource - driver-class-name: com.mysql.cj.jdbc.Driver -# url: jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8 -# username: root -# password: apijson - hikari: - jdbc-url: jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8 - username: root - password: apijson - minimum-idle: 5 - idle-timeout: 600000 - maximum-pool-size: 10 - auto-commit: true - pool-name: MyHikariCP - max-lifetime: 1800000 - connection-timeout: 30000 - connection-test-query: SELECT 1 - ds-0: - jdbc-url: jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8 - username: root - password: apijson - minimum-idle: 5 - idle-timeout: 600000 - maximum-pool-size: 10 - auto-commit: true - pool-name: MyHikariCP - max-lifetime: 1800000 - connection-timeout: 30000 - connection-test-query: SELECT 1 - ds-1: - jdbc-url: jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8 - username: root - password: apijson - minimum-idle: 5 - idle-timeout: 600000 - maximum-pool-size: 10 - auto-commit: true - pool-name: MyHikariCP - max-lifetime: 1800000 - connection-timeout: 30000 - connection-test-query: SELECT 1 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/config.yaml b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/config.yaml new file mode 100644 index 0000000..6698c9d --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/config.yaml @@ -0,0 +1,22 @@ +rules: + - !SHARDING + tables: # Sharding table configuration + apijson_user: + actualDataNodes: ds-$->{0..1}.apijson_user # 分库 shading databases/schemas + Moment: # Logic table name + actualDataNodes: ds-0.Moment_$->{0..1} # 分表 shading tables + Comment: # Logic table name + actualDataNodes: ds-$->{0..1}.Comment_$->{0..1} # 分库*分表 shading both databases/schemas and tables +dataSources: + ds-0: + dataSourceClassName: com.zaxxer.hikari.HikariDataSource + driverClassName: com.mysql.jdbc.Driver + jdbcUrl: jdbc:mysql://localhost:3306/ds_1?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8 + username: root + password: apijson + ds-1: + dataSourceClassName: com.zaxxer.hikari.HikariDataSource + driverClassName: com.mysql.jdbc.Driver + jdbcUrl: jdbc:mysql://localhost:3306/ds_2?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8 + username: root + password: apijson \ No newline at end of file diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/logback.xml b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/logback.xml deleted file mode 100644 index cbd50ff..0000000 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/logback.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - ${log.context.name} - - - - ${log.pattern} - - - - - - - - - From 7dcd8719194c9e935ac69b2bd5a99386973a58be Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Feb 2025 23:55:18 +0800 Subject: [PATCH 29/80] =?UTF-8?q?Java=EF=BC=9A=E5=AE=8C=E5=96=84=20Shardin?= =?UTF-8?q?gSphere=20Demo=20=E5=88=86=E5=BA=93=E5=88=86=E8=A1=A8=E7=9A=84?= =?UTF-8?q?=20=E5=AD=97=E6=AE=B5=E5=8F=8A=E8=A7=84=E5=88=99=E8=A1=A8?= =?UTF-8?q?=E8=BE=BE=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MySQL/ds_1_single/ds_1_Comment_0.sql | 4 +- .../MySQL/ds_1_single/ds_1_Comment_1.sql | 4 +- .../MySQL/ds_1_single/ds_1_Moment_0.sql | 6 +- .../MySQL/ds_1_single/ds_1_Moment_1.sql | 6 +- .../MySQL/ds_1_single/ds_1_apijson_user.sql | 2 +- .../MySQL/ds_2_single/ds_2_Comment_0.sql | 4 +- .../MySQL/ds_2_single/ds_2_Comment_1.sql | 4 +- .../MySQL/ds_2_single/ds_2_apijson_user.sql | 2 +- .../src/main/resources/config.yaml | 55 +++++++++++++++---- 9 files changed, 61 insertions(+), 26 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_0.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_0.sql index 7c4d554..4e006b1 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_0.sql +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_0.sql @@ -43,7 +43,7 @@ CREATE TABLE `Comment_0` ( LOCK TABLES `Comment_0` WRITE; /*!40000 ALTER TABLE `Comment_0` DISABLE KEYS */; -INSERT INTO `Comment_0` VALUES (8,0,38710,470,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-4'),(16,0,82003,170,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-44'),(68,0,82005,371,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-68'),(76,45,93793,301,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-76'),(116,0,70793,371,'2017-03-02 05:56:06','ds_1.Comment_0: This is a Content...-116'),(120,0,93793,301,'2017-03-02 05:56:06','ds_1.Comment_0: This is a Content...-110'),(124,0,82001,301,'2017-03-02 05:56:06','ds_1.Comment_0: test multi put'),(160,0,82001,235,'2017-03-02 05:56:06','ds_1.Comment_0: This is a Content...-160'),(164,0,93793,12,'2017-03-06 05:03:45','ds_1.Comment_0: This is a Content...-164'),(168,1490442545077,82001,235,'2017-03-25 11:49:14','ds_1.Comment_0: ???'),(172,162,82001,12,'2017-03-25 12:22:58','ds_1.Comment_0: OK'),(188,97,82001,58,'2017-03-26 07:21:32','ds_1.Comment_0: 1646'),(300,97,82001,58,'2017-03-29 03:06:07','ds_1.Comment_0: hj'),(1490776966828,173,82001,58,'2017-03-29 08:42:46','ds_1.Comment_0: me too'),(1490781009548,51,82001,301,'2017-03-29 09:50:09','ds_1.Comment_0: 3'),(1490781817044,209,38710,58,'2017-03-29 10:03:37','ds_1.Comment_0: 82001'),(1490794610632,172,82001,12,'2017-03-29 13:36:50','ds_1.Comment_0: All right'),(1490800971064,175,38710,12,'2017-03-29 15:22:51','ds_1.Comment_0: I do'),(1490848396072,175,82001,12,'2017-03-30 04:33:16','ds_1.Comment_0: Lemon'),(1490848581424,166,82001,12,'2017-03-30 04:36:21','ds_1.Comment_0: 82001ejej'),(1490850764448,162,82001,12,'2017-03-30 05:12:44','ds_1.Comment_0: -162'),(1490850844016,0,82001,12,'2017-03-30 05:14:04','ds_1.Comment_0: I like it'),(1490850876656,1490800971064,82001,12,'2017-03-30 05:14:36','ds_1.Comment_0: I do so'),(1490863563124,0,82003,704,'2017-03-30 08:46:03','ds_1.Comment_0: I want one'),(1490863783276,1490863711703,93793,511,'2017-03-30 08:49:43','ds_1.Comment_0: haha welcome'),(1490863903900,0,82006,470,'2017-03-30 08:51:43','ds_1.Comment_0: SOGA'),(1490863938712,0,82006,12,'2017-03-30 08:52:18','ds_1.Comment_0: Handsome!'),(1490864023700,0,82006,543,'2017-03-30 08:53:43','ds_1.Comment_0: oops'),(1490864039264,0,82006,551,'2017-03-30 08:53:59','ds_1.Comment_0: Wonderful!'),(1490864152008,0,82006,58,'2017-03-30 08:55:52','ds_1.Comment_0: U R ugly( ´?` )'),(1490864254400,1490863915675,82044,235,'2017-03-30 08:57:34','ds_1.Comment_0: And I have no idea'),(1490864276824,0,82044,12,'2017-03-30 08:57:56','ds_1.Comment_0: Oh my God!'),(1490864292184,1490864152008,82044,58,'2017-03-30 08:58:12','ds_1.Comment_0: haha!'),(1490864379424,1490863938712,82001,12,'2017-03-30 08:59:39','ds_1.Comment_0: Thank you~'),(1490875046704,120,82055,301,'2017-03-30 11:57:26','ds_1.Comment_0: 110'),(1491014830404,1490864016738,82001,511,'2017-04-01 02:47:10','ds_1.Comment_0: Have a nice day!'),(1491119695580,0,82001,371,'2017-04-02 07:54:55','ds_1.Comment_0: leave a word'),(1493186363132,1490850764448,82001,12,'2017-04-26 05:59:23','ds_1.Comment_0: sndnd'),(1508492585904,1508462026394,82001,12,'2017-10-20 09:43:05','ds_1.Comment_0: my god'),(1510813295700,162,82001,12,'2017-11-16 06:21:35','ds_1.Comment_0: adsdasdasdasd'),(1512533520832,1512531859019,38710,1512314438990,'2017-12-06 04:12:00','ds_1.Comment_0: 嘿嘿'),(1514617131036,0,82005,1513094436910,'2017-12-30 06:58:51','ds_1.Comment_0: 口子'),(1514960713300,0,82001,1513094436910,'2018-01-03 06:25:13','ds_1.Comment_0: 1'),(1515057852156,0,82001,58,'2018-01-04 09:24:12','ds_1.Comment_0: 你说'),(1515057857464,0,82001,58,'2018-01-04 09:24:17','ds_1.Comment_0: 你说'),(1516629533520,0,82001,1508072633830,'2018-01-22 13:58:53','ds_1.Comment_0: 小臭臭'),(1516780129884,0,82001,1516086423441,'2018-01-24 07:48:49','ds_1.Comment_0: aaa'),(1516785657724,0,82001,1516086423441,'2018-01-24 09:20:57','ds_1.Comment_0: hj'),(1516951754620,0,82001,1513094436910,'2018-01-26 07:29:14','ds_1.Comment_0: 凤飞飞刚刚好'),(1517193267472,1513656045399,82001,1508072633830,'2018-01-29 02:34:27','ds_1.Comment_0: 1'),(1517730034960,0,82001,170,'2018-02-04 07:40:34','ds_1.Comment_0: 陌陌陌陌'),(1519974842508,0,82001,1516086423441,'2018-03-02 07:14:02','ds_1.Comment_0: 1111'),(1519974868848,1516691119239,82001,1516086423441,'2018-03-02 07:14:28','ds_1.Comment_0: 1111'),(1522074343188,1513656045399,82001,1508072633830,'2018-03-26 14:25:43','ds_1.Comment_0: rrrrr'),(1522657767636,120,82001,301,'2018-04-02 08:29:27','ds_1.Comment_0: 云画'),(1522741138316,1517193278459,82001,1508072633830,'2018-04-03 07:38:58','ds_1.Comment_0: 哦哦哦'),(1522986959852,1508072695833,82001,1508072633830,'2018-04-06 03:55:59','ds_1.Comment_0: !????'),(1523936378484,0,1523935772553,1523936332614,'2018-04-17 03:39:38','ds_1.Comment_0: 不错不错哦'),(1524178500568,1524178495587,1524042900591,1524178455305,'2018-04-19 22:55:00','ds_1.Comment_0: 哈哈哈'),(1524190367904,0,38710,1524178455305,'2018-04-20 02:12:47','ds_1.Comment_0: 你头像用的是本地的路径,只有你能看到,别人看不到哦,可以换一个url'),(1524191012552,0,82003,1524178455305,'2018-04-20 02:23:32','ds_1.Comment_0: 早上好小姐姐'),(1524582671132,1524461441914,82003,1508072633830,'2018-04-24 15:11:11','ds_1.Comment_0: 陌陌'),(1524799118232,0,1523626157302,1512314438990,'2018-04-27 03:18:38','ds_1.Comment_0: 这些图片是怎么发上去的呢?我发动态只有默认的两张图'),(1527821844576,0,1527821445610,1527821296110,'2018-06-01 02:57:24','ds_1.Comment_0: 好不好用啊'),(1527837906576,0,38710,1527830331780,'2018-06-01 07:25:06','ds_1.Comment_0: 哇,好漂亮'),(1527862540820,0,1527495857924,1527830331780,'2018-06-01 14:15:40','ds_1.Comment_0: 谢谢你'),(1527862609352,1527837965006,1527495857924,1527830474378,'2018-06-01 14:16:49','ds_1.Comment_0: ㄟ(≧◇≦)ㄏ'),(1528105592852,0,82001,1516086423441,'2018-06-04 09:46:32','ds_1.Comment_0: aaaaa'),(1528289446172,0,82001,1528269988360,'2018-06-06 12:50:46','ds_1.Comment_0: 因为没做前端上传和后端保存图片的功能,APIJSONApp主要是用来展示APIJSON的自动化接口的'),(1528289580140,0,38710,1528274037224,'2018-06-06 12:53:00','ds_1.Comment_0: 这两张图片的url错了哦,都是网页url,所以小图加载不出来,只能点击后用WebView查看'),(1528333168328,0,82001,1514017444961,'2018-06-07 00:59:28','ds_1.Comment_0: zj'),(1528676480604,0,1528339692804,1528356421201,'2018-06-11 00:21:20','ds_1.Comment_0: nihshs'),(1528681265496,1528516951218,1528339692804,1528462217322,'2018-06-11 01:41:05','ds_1.Comment_0: 你输了有什么惩罚吗?'),(1528972555336,0,82001,1528462217322,'2018-06-14 10:35:55','ds_1.Comment_0: 合计怕v就怕vi'),(1531063660028,0,82003,1531062713966,'2018-07-08 15:27:40','ds_1.Comment_0: 这是哪里啊?我也想去'),(1532057419100,0,38710,1531969818357,'2018-07-20 03:30:19','ds_1.Comment_0: 可以加上标题哦'),(1533186909764,0,82001,1531969818357,'2018-08-02 05:15:09','ds_1.Comment_0: hello'),(1533809879340,1533186909764,82001,1531969818357,'2018-08-09 10:17:59','ds_1.Comment_0: 434'),(1533889646344,0,82001,1508072491570,'2018-08-10 08:27:26','ds_1.Comment_0: 11111111'),(1533902815448,0,82001,1531969818357,'2018-08-10 12:06:55','ds_1.Comment_0: 很不要吃'),(1534684209052,110,82001,371,'2018-08-19 13:10:09','ds_1.Comment_0: 44444444444444444444444444'),(1534926143012,0,82001,1508053762227,'2018-08-22 08:22:23','ds_1.Comment_0: 治标不治本在不在不在不'),(1535279823332,0,82001,1520242333325,'2018-08-26 10:37:03','ds_1.Comment_0: 斤斤计较'),(1535598334136,1534992151350,82003,1516086423441,'2018-08-30 03:05:34','ds_1.Comment_0: 啥?'),(1535600352436,0,82001,1520242333325,'2018-08-30 03:39:12','ds_1.Comment_0: 6666666'),(1535963519864,0,82001,1535781636403,'2018-09-03 08:31:59','ds_1.Comment_0: gghhh'),(1536378833060,0,82001,1508072633830,'2018-09-08 03:53:53','ds_1.Comment_0: 真的嘛'),(1536469270492,0,82001,1528356496939,'2018-09-09 05:01:10','ds_1.Comment_0: 这是啥表情?Σ(ŎдŎ|||)ノノ'),(1537710359760,0,82001,1516086423441,'2018-09-23 13:45:59','ds_1.Comment_0: 锵锵锵'),(1539868258868,1533188056603,82001,1531062713966,'2018-10-18 13:10:58','ds_1.Comment_0: 555555555'),(1545527888416,0,82001,1553096819293,'2018-12-23 01:18:08','ds_1.Comment_0: hello'),(1545527923036,1545527888416,82001,1553096819293,'2018-12-23 01:18:43','ds_1.Comment_0: 还差还差还差'),(1551080228544,0,82001,1553096819293,'2019-02-25 07:37:08','ds_1.Comment_0: 几何画板'),(1551080263524,0,82001,1516086423441,'2019-02-25 07:37:43','ds_1.Comment_0: 你就看看'),(1551430453424,0,82001,1553096819293,'2019-03-01 08:54:13','ds_1.Comment_0: 啊啊'),(1551430485828,0,82001,1553096819293,'2019-03-01 08:54:45','ds_1.Comment_0: 品牌'),(1552298015880,1524799118232,82001,1512314438990,'2019-03-11 09:53:35','ds_1.Comment_0: 评论真的假的'),(1553065269448,0,82001,1553096819293,'2019-03-20 07:01:09','ds_1.Comment_0: 3333'),(1553837842352,0,82001,1541557989440,'2019-03-29 05:37:22','ds_1.Comment_0: 小赤佬'),(1554286215772,0,82001,301,'2019-04-03 10:10:15','ds_1.Comment_0: hjkj'),(1554373265740,0,82001,543,'2019-04-04 10:21:05','ds_1.Comment_0: 那你'),(1555557851140,1512035117021,82001,32,'2019-04-18 03:24:11','ds_1.Comment_0: 1545456'),(1555557877452,1555557868075,82001,32,'2019-04-18 03:24:37','ds_1.Comment_0: 123121545645'),(1557024488300,1556953340357,82001,1556387217941,'2019-05-05 02:48:08','ds_1.Comment_0: 222'),(1557367770352,0,82001,1508072633830,'2019-05-09 02:09:30','ds_1.Comment_0: 哈哈'),(1557838424004,0,1508072105320,1557754680146,'2019-05-14 12:53:44','ds_1.Comment_0: 666'),(1558440335644,0,82001,1557754680146,'2019-05-21 12:05:35','ds_1.Comment_0: 就是就是觉得奖学金'),(1563641514400,0,82001,1563605336326,'2019-07-20 16:51:54','ds_1.Comment_0: 年轻人不要想不开'),(1567393121856,1557754765785,82001,1557754680146,'2019-09-02 02:58:41','ds_1.Comment_0: 1'),(1571186443512,0,82001,1568087960412,'2019-10-16 00:40:43','ds_1.Comment_0: 3条重复的'),(1573260321560,1551080228544,82001,1553096819293,'2019-11-09 00:45:21','ds_1.Comment_0: 不错'),(1575335926376,0,82001,1557415707105,'2019-12-03 01:18:46','ds_1.Comment_0: 哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈'),(1576678047584,0,82001,1557415707105,'2019-12-18 14:07:27','ds_1.Comment_0: 12'),(1576678207904,0,82001,1572177746393,'2019-12-18 14:10:07','ds_1.Comment_0: W'),(1583897660640,0,82001,1583574596245,'2020-03-11 03:34:20','ds_1.Comment_0: 打击打击'),(1589255390204,1589255382551,82001,371,'2020-05-12 03:49:50','ds_1.Comment_0: u好赶紧'),(1591754318836,1591754308326,82001,1514858533480,'2020-06-10 01:58:38','ds_1.Comment_0: 我现在'),(1592109072272,1576678047584,82001,1557415707105,'2020-06-14 04:31:12','ds_1.Comment_0: 呃呃呃呃呃呃'),(1592119582864,1516686985310,82001,1516086423441,'2020-06-14 07:26:22','ds_1.Comment_0: HCG和'),(1594290780472,1589255368635,82001,371,'2020-07-09 10:33:00','ds_1.Comment_0: 哈哈哈'),(1594290803016,1511407702981,82001,371,'2020-07-09 10:33:23','ds_1.Comment_0: 丰富'),(1594352418324,1594352357029,82001,1594127400223,'2020-07-10 03:40:18','ds_1.Comment_0: 试试就试试'),(1594462409216,0,82001,1594127400223,'2020-07-11 10:13:29','ds_1.Comment_0: 可以'),(1596209179840,0,82001,1583574596245,'2020-07-31 15:26:19','ds_1.Comment_0: ndj'),(1611824253904,0,82001,1558798664043,'2021-01-28 08:57:33','ds_1.Comment_0: 弄'),(1612419525572,0,82001,1606312076474,'2021-02-04 06:18:45','ds_1.Comment_0: 你好'),(1613809673288,0,82001,12,'2021-02-20 08:27:53','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617350098600,0,82001,12,'2021-04-02 07:54:58','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617457449128,0,82001,371,'2021-04-03 13:44:09','ds_1.Comment_0: 中'),(1617685756488,0,82001,1617562878095,'2021-04-06 05:09:16','ds_1.Comment_0: 阿萨德'),(1624697876724,0,82001,1594385350586,'2021-06-26 08:57:56','ds_1.Comment_0: 就啊快快乐乐'),(1625645166228,0,82001,1568087960391,'2021-07-07 08:06:06','ds_1.Comment_0: 123'),(1626428214932,0,82001,1619511861462,'2021-07-16 09:36:55','ds_1.Comment_0: 经济结构'),(1628313873444,0,82001,1624700434072,'2021-08-07 05:24:33','ds_1.Comment_0: 好!!!!'),(1631761292056,0,82001,1491200468898,'2021-09-16 03:01:32','ds_1.Comment_0: 啥意思?'),(1631761346084,0,82001,301,'2021-09-16 03:02:26','ds_1.Comment_0: 品牌'),(1631761396620,0,82001,1594385349411,'2021-09-16 03:03:16','ds_1.Comment_0: 12'),(1631761397840,0,82001,1520242333325,'2021-09-16 03:03:17','ds_1.Comment_0: 3333'),(1631761399032,0,82001,1553096819293,'2021-09-16 03:03:19','ds_1.Comment_0: 6666666'),(1631761399208,0,82001,1516086423441,'2021-09-16 03:03:19','ds_1.Comment_0: 82001ejej'),(1631761408808,0,82001,58,'2021-09-16 03:03:28','ds_1.Comment_0: $$'),(1631761410368,0,82001,58,'2021-09-16 03:03:30','ds_1.Comment_0: 555555555555555555'),(1631761412016,0,82001,58,'2021-09-16 03:03:32','ds_1.Comment_0: 6765765756'),(1631761412184,0,82001,12,'2021-09-16 03:03:32','ds_1.Comment_0: (fdsd)'),(1631761413492,0,82001,1528462217322,'2021-09-16 03:03:33','ds_1.Comment_0: 111'),(1631761415712,0,82001,58,'2021-09-16 03:03:35','ds_1.Comment_0: 111'),(1631761416936,0,82001,1531969818357,'2021-09-16 03:03:36','ds_1.Comment_0: 00'),(1631761418524,0,82001,371,'2021-09-16 03:03:38','ds_1.Comment_0: 123121545645'),(1631761418696,0,82001,1563605336326,'2021-09-16 03:03:38','ds_1.Comment_0: 1646'),(1631761419264,0,82001,1594385349411,'2021-09-16 03:03:39','ds_1.Comment_0: 555555'),(1631761430528,0,82001,1553096819293,'2021-09-16 03:03:50','ds_1.Comment_0: 3'),(1631761433108,0,82001,1524178455305,'2021-09-16 03:03:53','ds_1.Comment_0: 123121545645'),(1631761433268,0,82001,371,'2021-09-16 03:03:53','ds_1.Comment_0: 3'),(1631761433984,0,82001,12,'2021-09-16 03:03:53','ds_1.Comment_0: 123121545645'),(1631761440748,0,82001,1516086423441,'2021-09-16 03:04:00','ds_1.Comment_0: $$'),(1631761441136,0,82001,1516086423441,'2021-09-16 03:04:01','ds_1.Comment_0: 11'),(1631761441648,0,82001,1527830474378,'2021-09-16 03:04:01','ds_1.Comment_0: 123'),(1631761441988,0,82001,1508072633830,'2021-09-16 03:04:01','ds_1.Comment_0: 157'),(1631761442124,0,82001,511,'2021-09-16 03:04:02','ds_1.Comment_0: (fdsd)'),(1631761442488,0,82001,1516086423441,'2021-09-16 03:04:02','ds_1.Comment_0: 11'),(1631761443216,0,82001,371,'2021-09-16 03:04:03','ds_1.Comment_0: 123121545645'),(1631761443728,0,82001,1512314438990,'2021-09-16 03:04:03','ds_1.Comment_0: 1'),(1631761444028,0,82001,1516086423441,'2021-09-16 03:04:04','ds_1.Comment_0: 111'),(1631761444552,0,82001,1513094436910,'2021-09-16 03:04:04','ds_1.Comment_0: 123121545645'),(1631761445424,0,82001,1553096819293,'2021-09-16 03:04:05','ds_1.Comment_0: 111'),(1631761447040,0,82001,1541557989440,'2021-09-16 03:04:07','ds_1.Comment_0: 111'),(1631761447240,0,82001,58,'2021-09-16 03:04:07','ds_1.Comment_0: 1111'),(1631761447416,0,82001,1516086423441,'2021-09-16 03:04:07','ds_1.Comment_0: 12'),(1631761447752,0,82001,1520242333325,'2021-09-16 03:04:07','ds_1.Comment_0: 123'),(1631761448328,0,82001,301,'2021-09-16 03:04:08','ds_1.Comment_0: 1'),(1631761449000,0,82001,1536805585275,'2021-09-16 03:04:09','ds_1.Comment_0: 1111'),(1631761449200,0,82001,1527821296110,'2021-09-16 03:04:09','ds_1.Comment_0: 112'),(1631761455032,0,82001,12,'2021-09-16 03:04:15','ds_1.Comment_0: 00'),(1631761456092,0,82001,470,'2021-09-16 03:04:16','ds_1.Comment_0: 111'),(1631761457120,0,82001,12,'2021-09-16 03:04:17','ds_1.Comment_0: $$'),(1631761458380,0,82001,1493835799335,'2021-09-16 03:04:18','ds_1.Comment_0: 11'),(1631761458548,0,82001,1531062713966,'2021-09-16 03:04:18','ds_1.Comment_0: 110'),(1631761458696,0,82001,1516086423441,'2021-09-16 03:04:18','ds_1.Comment_0: 111'),(1631761459508,0,82001,1508053762227,'2021-09-16 03:04:19','ds_1.Comment_0: $$'),(1631761460348,0,82001,511,'2021-09-16 03:04:20','ds_1.Comment_0: 00'),(1631761632132,0,82001,12,'2021-09-16 03:07:12','ds_1.Comment_0: hhhj'),(1631761632236,0,82001,12,'2021-09-16 03:07:12','ds_1.Comment_0: thank you'),(1635402883632,0,82002,12,'2021-10-28 06:34:43','ds_1.Comment_0: APIJSON,let !'),(1638631329728,0,82001,1637985952844,'2021-12-04 15:22:09','ds_1.Comment_0: 额'),(1639449621808,0,82001,1638327674898,'2021-12-14 02:40:21','ds_1.Comment_0: 都给你跟大哥'),(1639449624732,0,82001,1638327674898,'2021-12-14 02:40:24','ds_1.Comment_0: 四个就是个'),(1640103342448,0,82001,12,'2021-12-21 16:15:42','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1640103353312,0,82001,12,'2021-12-21 16:15:53','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1645678670104,1645678666889,82001,1645416338268,'2022-02-24 04:57:50','ds_1.Comment_0: 一样'),(1645896988764,0,82001,1638327674898,'2022-02-26 17:36:28','ds_1.Comment_0: qq'),(1649327537444,0,82001,1649086185746,'2022-04-07 10:32:17','ds_1.Comment_0: 123'),(1649433736040,1649327537444,82001,1649086185746,'2022-04-08 16:02:16','ds_1.Comment_0: 过去吧'),(1650022306840,0,82001,1649086185746,'2022-04-15 11:31:46','ds_1.Comment_0: 建模'),(1650022321636,0,82001,1649086185746,'2022-04-15 11:32:01','ds_1.Comment_0: 明敏'),(1650023785000,1649548802611,82001,1649086182892,'2022-04-15 11:56:25','ds_1.Comment_0: 哈哈哈'),(1650353617956,0,82002,12,'2022-04-19 07:33:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1653122465708,0,82001,12,'2022-05-21 08:41:05','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1653122466756,0,82001,12,'2022-05-21 08:41:06','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1660209509324,0,82001,12,'2022-08-11 09:18:29','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1661830719104,0,82001,12,'2022-08-30 03:38:39','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1663572550152,0,82001,12,'2022-09-19 07:29:10','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1663572550228,0,82001,12,'2022-09-19 07:29:10','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1663572557752,0,82001,12,'2022-09-19 07:29:17','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1667542793524,0,82001,12,'2022-11-04 06:19:53','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1669276194512,0,82001,1649086182892,'2022-11-24 07:49:54','ds_1.Comment_0: 111'),(1670420459420,0,82001,1665293930441,'2022-12-07 13:40:59','ds_1.Comment_0: 哈哈哈哈'),(1671437036020,0,82001,1649672357944,'2022-12-19 08:03:56','ds_1.Comment_0: sss'),(1671437046068,0,82001,1649672357944,'2022-12-19 08:04:06','ds_1.Comment_0: sss'),(1675762587396,1630891147547,82001,1630746489563,'2023-02-07 09:36:27','ds_1.Comment_0: 222'),(1675840978164,0,82001,1674308870813,'2023-02-08 07:22:58','ds_1.Comment_0: 不怀好意'),(1676271666564,0,82001,1675910359578,'2023-02-13 07:01:06','ds_1.Comment_0: 33333'),(1679450011332,0,82001,1679313363196,'2023-03-22 01:53:31','ds_1.Comment_0: aassdddd'),(1679645509096,1675840929526,82001,1675742375160,'2023-03-24 08:11:49','ds_1.Comment_0: ghh'),(1679645540712,0,82001,1675742375160,'2023-03-24 08:12:20','ds_1.Comment_0: xccccxx'),(1680742770380,0,82001,1649086185746,'2023-04-06 00:59:30','ds_1.Comment_0: 6'),(1680742794912,0,82001,1670981978461,'2023-04-06 00:59:54','ds_1.Comment_0: 6'),(1681721463936,0,82002,1617562878095,'2023-04-17 08:51:03','ds_1.Comment_0: 22'),(1681882805412,0,82001,12,'2023-04-19 05:40:05','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1681882815816,0,82001,12,'2023-04-19 05:40:15','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1681999094052,0,82001,470,'2023-04-20 13:58:14','ds_1.Comment_0: ffff'),(1681999141244,0,82001,470,'2023-04-20 13:59:01','ds_1.Comment_0: ffff'),(1681999171716,0,82001,470,'2023-04-20 13:59:31','ds_1.Comment_0: ffff'),(1681999221100,0,82001,470,'2023-04-20 14:00:21','ds_1.Comment_0: ffff'),(1681999221488,0,82001,470,'2023-04-20 14:00:21','ds_1.Comment_0: ffff'),(1682000817856,0,82001,470,'2023-04-20 14:26:57','ds_1.Comment_0: xdddddd'),(1682103783776,0,82002,1682103762126,'2023-04-21 19:03:04','ds_1.Comment_0: 5555'),(1682103837432,0,82001,1682096402171,'2023-04-21 19:03:57','ds_1.Comment_0: 555'),(1682621619808,0,82001,235,'2023-04-27 18:53:40','ds_1.Comment_0: Ab_Cd4426623868886511'),(1683353876304,0,82001,142,'2023-05-06 06:17:56','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354453356,0,82001,12,'2023-05-06 06:27:33','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354577460,0,82001,142,'2023-05-06 06:29:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354577540,0,82001,143,'2023-05-06 06:29:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1686196003780,0,82001,1684981418161,'2023-06-08 03:46:43','ds_1.Comment_0: 1册'),(1686196013836,0,82001,1684981418161,'2023-06-08 03:46:53','ds_1.Comment_0: 1册'),(1686196362356,0,82001,1682103762126,'2023-06-08 03:52:42','ds_1.Comment_0: 5666'),(1686196372436,0,82001,1682103762126,'2023-06-08 03:52:52','ds_1.Comment_0: 5666'),(1686196382524,0,82001,1682103762126,'2023-06-08 03:53:02','ds_1.Comment_0: 5666'),(1686303817280,0,82001,1645416338268,'2023-06-09 09:43:37','ds_1.Comment_0: 哦咯模棱两可'),(1686328077792,0,82001,1645416338268,'2023-06-09 16:27:57','ds_1.Comment_0: 牛逼'),(1686328087852,0,82001,1645416338268,'2023-06-09 16:28:07','ds_1.Comment_0: 牛逼'),(1686328107960,0,82001,1645416338268,'2023-06-09 16:28:27','ds_1.Comment_0: 牛逼'),(1686328138132,0,82001,1645416338268,'2023-06-09 16:28:58','ds_1.Comment_0: 牛逼'),(1686897914980,0,82001,1684981561371,'2023-06-16 06:45:15','ds_1.Comment_0: mood'),(1687589876712,0,82001,12,'2023-06-24 06:57:56','ds_1.Comment_0: dkf;dfd;akfd;dadj;\''),(1689569588432,0,82001,1688307338283,'2023-07-17 04:53:08','ds_1.Comment_0: hi'),(1689569598488,0,82001,1688307338283,'2023-07-17 04:53:18','ds_1.Comment_0: hi'),(1689569608508,0,82001,1688307338283,'2023-07-17 04:53:28','ds_1.Comment_0: hi'),(1689569628628,0,82001,1688307338283,'2023-07-17 04:53:48','ds_1.Comment_0: hi'),(1689569638652,0,82001,1688307338283,'2023-07-17 04:53:58','ds_1.Comment_0: hi'),(1692583202328,0,82001,1692260707538,'2023-08-21 02:00:02','ds_1.Comment_0: 哦'),(1693680555320,0,82001,12,'2023-09-02 18:49:15','ds_1.Comment_0: Ab_Cd6844800776712211'),(1693680555324,0,82001,12,'2023-09-04 06:11:58','ds_1.Comment_0: Ab_Cd-844510703468296'),(1693680555328,0,82004,12,'2023-09-04 06:11:58','ds_1.Comment_0: Ab_Cd-2856071793404688'),(1693680555340,0,82007,12,'2023-09-04 06:11:59','ds_1.Comment_0: Ab_Cd1176977250559359'),(1693680555344,0,82002,12,'2023-09-04 06:11:59','ds_1.Comment_0: Ab_Cd-6771634456018543'),(1693680555372,0,82010,12,'2023-09-04 06:11:59','ds_1.Comment_0: Ab_Cd2261114733788087'),(1697115573792,0,82001,1,'2023-10-12 12:59:33','ds_1.Comment_0: 1'),(1697115635288,0,82001,1,'2023-10-12 13:00:35','ds_1.Comment_0: 1'),(1698723267316,0,82002,12,'2023-10-31 03:34:27','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701053335092,0,82001,12,'2023-11-27 02:48:55','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701054529204,0,82001,12,'2023-11-27 03:08:49','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701155522140,0,82001,12,'2023-11-28 07:12:02','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701222080568,0,82001,12,'2023-11-29 01:41:20','ds_1.Comment_0: 这是新建内容。'),(1701222619948,0,82001,12,'2023-11-29 01:50:19','ds_1.Comment_0: 这是修改内容。这是第二次修改内容!!!'),(1701660697608,0,82001,12,'2023-12-04 03:31:37','ds_1.Comment_0: hello'),(1701661955488,0,82001,12,'2023-12-04 03:52:35','ds_1.Comment_0: 测试'),(1701675730504,0,82002,12,'2023-12-04 07:42:10','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701676218464,0,82002,666666,'2023-12-04 07:50:18','ds_1.Comment_0: 这是新建 !'),(1701676481104,0,82002,666666,'2023-12-04 07:54:41','ds_1.Comment_0: 这是新建666666 !'),(1701676481124,0,82002,88888888,'2023-12-04 07:54:41','ds_1.Comment_0: 这是新建88888888 !'),(1701677667312,0,82002,12,'2023-12-04 08:14:27','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1702401213384,0,82009,401,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd8472212734801559'),(1702401213392,0,82004,401,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd8952784214322235'),(1702401213396,0,82008,12,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd-932793048539156'),(1702401213404,0,82007,12,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd2813830567792671'),(1702401213408,0,82010,401,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd-8872216150197055'),(1702401213416,0,82008,12,'2023-12-13 10:02:07','ds_1.Comment_0: Ab_Cd4002198057064007'),(1702401213432,0,82003,401,'2023-12-13 10:02:07','ds_1.Comment_0: Ab_Cd8403206842567007'),(1702401213444,0,82006,12,'2023-12-13 10:02:07','ds_1.Comment_0: Ab_Cd-484858090257340'),(1702401213448,0,82010,12,'2023-12-13 10:02:08','ds_1.Comment_0: Ab_Cd5900887805284295'),(1702401213452,0,82007,401,'2023-12-13 10:02:08','ds_1.Comment_0: Ab_Cd3639994649234319'),(1702401213464,0,82008,12,'2023-12-13 10:02:08','ds_1.Comment_0: Ab_Cd6460773887962923'),(1702401213472,0,82005,12,'2023-12-13 10:02:39','ds_1.Comment_0: Ab_Cd8307714633821023'),(1702401213484,0,82002,12,'2023-12-13 10:02:39','ds_1.Comment_0: Ab_Cd-6411974162780868'),(1702401213496,0,82010,401,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd155628970462443'),(1702401213504,0,82005,401,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd5433003463187443'),(1702401213516,0,82006,12,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd7041822330120711'),(1702401213524,0,82010,401,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd-6271936389850452'),(1702401213536,0,82006,12,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-5998477146992516'),(1702401213540,0,82010,12,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-7350608159302187'),(1702401213548,0,82010,401,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-7893702573699523'),(1702401213552,0,82002,12,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-3816420196613040'),(1702401213556,0,82005,401,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-2832029110325044'),(1702401213560,0,82002,401,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd3362825843579787'),(1702731872076,0,820012,153,'2023-12-18 09:17:26','ds_1.Comment_0: test1'),(1704439987844,1700489417302,82001,1700488719094,'2024-01-05 07:33:07','ds_1.Comment_0: 嗯'),(1706848337524,0,82001,1684980965206,'2024-02-02 04:32:17','ds_1.Comment_0: 12'),(1708314761672,0,82001,1684979928085,'2024-02-19 03:52:41','ds_1.Comment_0: ok'),(1708314764376,0,82001,1684979928085,'2024-02-19 03:52:44','ds_1.Comment_0: ok'),(1708565420024,0,82001,1693680292080,'2024-02-22 01:30:20','ds_1.Comment_0: 111'),(1709026358748,0,88888,15,'2024-02-27 09:32:38','ds_1.Comment_0: 测试新增评论'),(1709174743328,0,82001,15,'2024-02-29 02:45:43','ds_1.Comment_0: 测试新增评论'),(1709631441780,0,82002,15,'2024-03-05 09:37:21','ds_1.Comment_0: 测试新增评论'),(1709634537372,0,88888,15,'2024-03-05 10:28:57','ds_1.Comment_0: 测试新增评论'),(1709810588660,0,82001,15,'2024-03-07 11:23:08','ds_1.Comment_0: 测试新增评论'),(1709975265936,1633794180858,82003,1632294230574,'2024-03-09 09:07:45','ds_1.Comment_0: 123'),(1709975301096,0,82003,1594385350586,'2024-03-09 09:08:21','ds_1.Comment_0: hok'),(1710337736388,0,82001,1710233170301,'2024-03-13 13:48:56','ds_1.Comment_0: wee'),(1711439077460,0,88888,15,'2024-03-26 07:44:37','ds_1.Comment_0: 测试新增评论'),(1713152305880,1712644302113,82001,1690970599784,'2024-04-15 03:38:25','ds_1.Comment_0: 65'),(1713407030604,0,82001,1711013832774,'2024-04-18 02:23:50','ds_1.Comment_0: bb'),(1713949089248,0,82003,12,'2024-04-24 08:58:09','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1713949152716,0,82003,12,'2024-04-24 08:59:12','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1713949179176,0,82003,12,'2024-04-24 08:59:39','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1713949237832,0,82003,12,'2024-04-24 09:00:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1714048097100,0,82003,15,'2024-04-25 12:28:17','ds_1.Comment_0: 测试新增评论'),(1717561711548,0,82001,1705675845917,'2024-06-05 04:28:31','ds_1.Comment_0: 测试评论'),(1717588299400,0,82001,1716707004081,'2024-06-05 11:51:39','ds_1.Comment_0: 123456'),(1717862884920,0,82001,1717757679298,'2024-06-08 16:08:04','ds_1.Comment_0: 测试新增评论'),(1717862884960,0,82001,15,'2024-06-08 16:08:04','ds_1.Comment_0: 测试新增评论'),(1717862890920,0,38710,1717757679298,'2024-06-08 16:08:10','ds_1.Comment_0: 测试新增评论'),(1717939348020,0,82001,1717757679298,'2024-06-09 13:22:28','ds_1.Comment_0: 考虑考虑'); +INSERT INTO `Comment_0` VALUES (8,0,38710,470,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-4'),(16,0,82003,170,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-44'),(68,0,82005,371,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-68'),(76,45,93793,301,'2017-02-01 11:20:50','ds_1.Comment_0: This is a Content...-76'),(116,0,70793,371,'2017-03-02 05:56:06','ds_1.Comment_0: This is a Content...-116'),(120,0,93793,301,'2017-03-02 05:56:06','ds_1.Comment_0: This is a Content...-110'),(124,0,82001,301,'2017-03-02 05:56:06','ds_1.Comment_0: test multi put'),(160,0,82001,235,'2017-03-02 05:56:06','ds_1.Comment_0: This is a Content...-160'),(164,0,93793,12,'2017-03-06 05:03:45','ds_1.Comment_0: This is a Content...-164'),(168,1490442545077,82001,235,'2017-03-25 11:49:14','ds_1.Comment_0: ???'),(172,162,82001,12,'2017-03-25 12:22:58','ds_1.Comment_0: OK'),(188,97,82001,58,'2017-03-26 07:21:32','ds_1.Comment_0: 1646'),(300,97,82001,58,'2017-03-29 03:06:07','ds_1.Comment_0: hj'),(1490776966828,173,82001,58,'2017-03-29 08:42:46','ds_1.Comment_0: me too'),(1490781009548,51,82001,301,'2017-03-29 09:50:09','ds_1.Comment_0: 3'),(1490781817044,209,38710,58,'2017-03-29 10:03:37','ds_1.Comment_0: 82001'),(1490794610632,172,82001,12,'2017-03-29 13:36:50','ds_1.Comment_0: All right'),(1490800971064,175,38710,12,'2017-03-29 15:22:51','ds_1.Comment_0: I do'),(1490848396072,175,82001,12,'2017-03-30 04:33:16','ds_1.Comment_0: Lemon'),(1490848581424,166,82001,12,'2017-03-30 04:36:21','ds_1.Comment_0: 82001ejej'),(1490850764448,162,82001,12,'2017-03-30 05:12:44','ds_1.Comment_0: -162'),(1490850844016,0,82001,12,'2017-03-30 05:14:04','ds_1.Comment_0: I like it'),(1490850876656,1490800971064,82001,12,'2017-03-30 05:14:36','ds_1.Comment_0: I do so'),(1490863563124,0,82003,704,'2017-03-30 08:46:03','ds_1.Comment_0: I want one'),(1490863783276,1490863711703,93793,511,'2017-03-30 08:49:43','ds_1.Comment_0: haha welcome'),(1490863903900,0,82006,470,'2017-03-30 08:51:43','ds_1.Comment_0: SOGA'),(1490863938712,0,82006,12,'2017-03-30 08:52:18','ds_1.Comment_0: Handsome!'),(1490864023700,0,82006,543,'2017-03-30 08:53:43','ds_1.Comment_0: oops'),(1490864039264,0,82006,551,'2017-03-30 08:53:59','ds_1.Comment_0: Wonderful!'),(1490864152008,0,82006,58,'2017-03-30 08:55:52','ds_1.Comment_0: U R ugly( ´?` )'),(1490864254400,1490863915675,82044,235,'2017-03-30 08:57:34','ds_1.Comment_0: And I have no idea'),(1490864276824,0,82044,12,'2017-03-30 08:57:56','ds_1.Comment_0: Oh my God!'),(1490864292184,1490864152008,82044,58,'2017-03-30 08:58:12','ds_1.Comment_0: haha!'),(1490864379424,1490863938712,82001,12,'2017-03-30 08:59:39','ds_1.Comment_0: Thank you~'),(1490875046704,120,82055,301,'2017-03-30 11:57:26','ds_1.Comment_0: 110'),(1491014830404,1490864016738,82001,511,'2017-04-01 02:47:10','ds_1.Comment_0: Have a nice day!'),(1491119695580,0,82001,371,'2017-04-02 07:54:55','ds_1.Comment_0: leave a word'),(1493186363132,1490850764448,82001,12,'2017-04-26 05:59:23','ds_1.Comment_0: sndnd'),(1508492585904,1508462026394,82001,12,'2017-10-20 09:43:05','ds_1.Comment_0: my god'),(1510813295700,162,82001,12,'2017-11-16 06:21:35','ds_1.Comment_0: adsdasdasdasd'),(1512533520832,1512531859019,38710,1512314438990,'2017-12-06 04:12:00','ds_1.Comment_0: 嘿嘿'),(1514617131036,0,82005,1513094436910,'2017-12-30 06:58:51','ds_1.Comment_0: 口子'),(1514960713300,0,82001,1513094436910,'2018-01-03 06:25:13','ds_1.Comment_0: 1'),(1515057852156,0,82001,58,'2018-01-04 09:24:12','ds_1.Comment_0: 你说'),(1515057857464,0,82001,58,'2018-01-04 09:24:17','ds_1.Comment_0: 你说'),(1516629533520,0,82001,1508072633830,'2018-01-22 13:58:53','ds_1.Comment_0: 小臭臭'),(1516780129884,0,82001,1516086423441,'2018-01-24 07:48:49','ds_1.Comment_0: aaa'),(1516785657724,0,82001,1516086423441,'2018-01-24 09:20:57','ds_1.Comment_0: hj'),(1516951754620,0,82001,1513094436910,'2018-01-26 07:29:14','ds_1.Comment_0: 凤飞飞刚刚好'),(1517193267472,1513656045399,82001,1508072633830,'2018-01-29 02:34:27','ds_1.Comment_0: 1'),(1517730034960,0,82001,170,'2018-02-04 07:40:34','ds_1.Comment_0: 陌陌陌陌'),(1519974842508,0,82001,1516086423441,'2018-03-02 07:14:02','ds_1.Comment_0: 1111'),(1519974868848,1516691119239,82001,1516086423441,'2018-03-02 07:14:28','ds_1.Comment_0: 1111'),(1522074343188,1513656045399,82001,1508072633830,'2018-03-26 14:25:43','ds_1.Comment_0: rrrrr'),(1522657767636,120,82001,301,'2018-04-02 08:29:27','ds_1.Comment_0: 云画'),(1522741138316,1517193278459,82001,1508072633830,'2018-04-03 07:38:58','ds_1.Comment_0: 哦哦哦'),(1522986959852,1508072695833,82001,1508072633830,'2018-04-06 03:55:59','ds_1.Comment_0: !????'),(1523936378484,0,1523935772553,1523936332614,'2018-04-17 03:39:38','ds_1.Comment_0: 不错不错哦'),(1524178500568,1524178495587,1524042900591,1524178455305,'2018-04-19 22:55:00','ds_1.Comment_0: 哈哈哈'),(1524190367904,0,38710,1524178455305,'2018-04-20 02:12:47','ds_1.Comment_0: 你头像用的是本地的路径,只有你能看到,别人看不到哦,可以换一个url'),(1524191012552,0,82003,1524178455305,'2018-04-20 02:23:32','ds_1.Comment_0: 早上好小姐姐'),(1524582671132,1524461441914,82003,1508072633830,'2018-04-24 15:11:11','ds_1.Comment_0: 陌陌'),(1524799118232,0,1523626157302,1512314438990,'2018-04-27 03:18:38','ds_1.Comment_0: 这些图片是怎么发上去的呢?我发动态只有默认的两张图'),(1527821844576,0,1527821445610,1527821296110,'2018-06-01 02:57:24','ds_1.Comment_0: 好不好用啊'),(1527837906576,0,38710,1527830331780,'2018-06-01 07:25:06','ds_1.Comment_0: 哇,好漂亮'),(1527862540820,0,1527495857924,1527830331780,'2018-06-01 14:15:40','ds_1.Comment_0: 谢谢你'),(1527862609352,1527837965006,1527495857924,1527830474378,'2018-06-01 14:16:49','ds_1.Comment_0: ㄟ(≧◇≦)ㄏ'),(1528105592852,0,82001,1516086423441,'2018-06-04 09:46:32','ds_1.Comment_0: aaaaa'),(1528289446172,0,82001,1528269988360,'2018-06-06 12:50:46','ds_1.Comment_0: 因为没做前端上传和后端保存图片的功能,APIJSONApp主要是用来展示APIJSON的自动化接口的'),(1528289580140,0,38710,1528274037224,'2018-06-06 12:53:00','ds_1.Comment_0: 这两张图片的url错了哦,都是网页url,所以小图加载不出来,只能点击后用WebView查看'),(1528333168328,0,82001,1514017444961,'2018-06-07 00:59:28','ds_1.Comment_0: zj'),(1528676480604,0,1528339692804,1528356421201,'2018-06-11 00:21:20','ds_1.Comment_0: nihshs'),(1528681265496,1528516951218,1528339692804,1528462217322,'2018-06-11 01:41:05','ds_1.Comment_0: 你输了有什么惩罚吗?'),(1528972555336,0,82001,1528462217322,'2018-06-14 10:35:55','ds_1.Comment_0: 合计怕v就怕vi'),(1531063660028,0,82003,1531062713966,'2018-07-08 15:27:40','ds_1.Comment_0: 这是哪里啊?我也想去'),(1532057419100,0,38710,1531969818357,'2018-07-20 03:30:19','ds_1.Comment_0: 可以加上标题哦'),(1533186909764,0,82001,1531969818357,'2018-08-02 05:15:09','ds_1.Comment_0: hello'),(1533809879340,1533186909764,82001,1531969818357,'2018-08-09 10:17:59','ds_1.Comment_0: 434'),(1533889646344,0,82001,1508072491570,'2018-08-10 08:27:26','ds_1.Comment_0: 11111111'),(1533902815448,0,82001,1531969818357,'2018-08-10 12:06:55','ds_1.Comment_0: 很不要吃'),(1534684209052,110,82001,371,'2018-08-19 13:10:09','ds_1.Comment_0: 44444444444444444444444444'),(1534926143012,0,82001,1508053762227,'2018-08-22 08:22:23','ds_1.Comment_0: 治标不治本在不在不在不'),(1535279823332,0,82001,1520242333325,'2018-08-26 10:37:03','ds_1.Comment_0: 斤斤计较'),(1535598334136,1534992151350,82003,1516086423441,'2018-08-30 03:05:34','ds_1.Comment_0: 啥?'),(1535600352436,0,82001,1520242333325,'2018-08-30 03:39:12','ds_1.Comment_0: 6666666'),(1535963519864,0,82001,1535781636403,'2018-09-03 08:31:59','ds_1.Comment_0: gghhh'),(1536378833060,0,82001,1508072633830,'2018-09-08 03:53:53','ds_1.Comment_0: 真的嘛'),(1536469270492,0,82001,1528356496939,'2018-09-09 05:01:10','ds_1.Comment_0: 这是啥表情?Σ(ŎдŎ|||)ノノ'),(1537710359760,0,82001,1516086423441,'2018-09-23 13:45:59','ds_1.Comment_0: 锵锵锵'),(1539868258868,1533188056603,82001,1531062713966,'2018-10-18 13:10:58','ds_1.Comment_0: 555555555'),(1545527888416,0,82001,1553096819293,'2018-12-23 01:18:08','ds_1.Comment_0: hello'),(1545527923036,1545527888416,82001,1553096819293,'2018-12-23 01:18:43','ds_1.Comment_0: 还差还差还差'),(1551080228544,0,82001,1553096819293,'2019-02-25 07:37:08','ds_1.Comment_0: 几何画板'),(1551080263524,0,82001,1516086423441,'2019-02-25 07:37:43','ds_1.Comment_0: 你就看看'),(1551430453424,0,82001,1553096819293,'2019-03-01 08:54:13','ds_1.Comment_0: 啊啊'),(1551430485828,0,82001,1553096819293,'2019-03-01 08:54:45','ds_1.Comment_0: 品牌'),(1552298015880,1524799118232,82001,1512314438990,'2019-03-11 09:53:35','ds_1.Comment_0: 评论真的假的'),(1553065269448,0,82001,1553096819293,'2019-03-20 07:01:09','ds_1.Comment_0: 3333'),(1553837842352,0,82001,1541557989440,'2019-03-29 05:37:22','ds_1.Comment_0: 小赤佬'),(1554286215772,0,82001,301,'2019-04-03 10:10:15','ds_1.Comment_0: hjkj'),(1554373265740,0,82001,543,'2019-04-04 10:21:05','ds_1.Comment_0: 那你'),(1555557851140,1512035117021,82001,32,'2019-04-18 03:24:11','ds_1.Comment_0: 1545456'),(1555557877452,1555557868075,82001,32,'2019-04-18 03:24:37','ds_1.Comment_0: 123121545645'),(1557024488300,1556953340357,82001,1556387217941,'2019-05-05 02:48:08','ds_1.Comment_0: 222'),(1557367770352,0,82001,1508072633830,'2019-05-09 02:09:30','ds_1.Comment_0: 哈哈'),(1557838424004,0,1508072105320,1557754680146,'2019-05-14 12:53:44','ds_1.Comment_0: 666'),(1558440335644,0,82001,1557754680146,'2019-05-21 12:05:35','ds_1.Comment_0: 就是就是觉得奖学金'),(1563641514400,0,82001,1563605336326,'2019-07-20 16:51:54','ds_1.Comment_0: 年轻人不要想不开'),(1567393121856,1557754765785,82001,1557754680146,'2019-09-02 02:58:41','ds_1.Comment_0: 1'),(1571186443512,0,82001,1568087960412,'2019-10-16 00:40:43','ds_1.Comment_0: 3条重复的'),(1573260321560,1551080228544,82001,1553096819293,'2019-11-09 00:45:21','ds_1.Comment_0: 不错'),(1575335926376,0,82001,1557415707105,'2019-12-03 01:18:46','ds_1.Comment_0: 哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈'),(1576678047584,0,82001,1557415707105,'2019-12-18 14:07:27','ds_1.Comment_0: 12'),(1576678207904,0,82001,1572177746393,'2019-12-18 14:10:07','ds_1.Comment_0: W'),(1583897660640,0,82001,1583574596245,'2020-03-11 03:34:20','ds_1.Comment_0: 打击打击'),(1589255390204,1589255382551,82001,371,'2020-05-12 03:49:50','ds_1.Comment_0: u好赶紧'),(1591754318836,1591754308326,82001,1514858533480,'2020-06-10 01:58:38','ds_1.Comment_0: 我现在'),(1592109072272,1576678047584,82001,1557415707105,'2020-06-14 04:31:12','ds_1.Comment_0: 呃呃呃呃呃呃'),(1592119582864,1516686985310,82001,1516086423441,'2020-06-14 07:26:22','ds_1.Comment_0: HCG和'),(1594290780472,1589255368635,82001,371,'2020-07-09 10:33:00','ds_1.Comment_0: 哈哈哈'),(1594290803016,1511407702981,82001,371,'2020-07-09 10:33:23','ds_1.Comment_0: 丰富'),(1594352418324,1594352357029,82001,1594127400223,'2020-07-10 03:40:18','ds_1.Comment_0: 试试就试试'),(1594462409216,0,82001,1594127400223,'2020-07-11 10:13:29','ds_1.Comment_0: 可以'),(1596209179840,0,82001,1583574596245,'2020-07-31 15:26:19','ds_1.Comment_0: ndj'),(1611824253904,0,82001,1558798664043,'2021-01-28 08:57:33','ds_1.Comment_0: 弄'),(1612419525572,0,82001,1606312076474,'2021-02-04 06:18:45','ds_1.Comment_0: 你好'),(1613809673288,0,82001,12,'2021-02-20 08:27:53','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617350098600,0,82001,12,'2021-04-02 07:54:58','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617457449128,0,82001,371,'2021-04-03 13:44:09','ds_1.Comment_0: 中'),(1617685756488,0,82001,1617562878095,'2021-04-06 05:09:16','ds_1.Comment_0: 阿萨德'),(1624697876724,0,82001,1594385350586,'2021-06-26 08:57:56','ds_1.Comment_0: 就啊快快乐乐'),(1625645166228,0,82001,1568087960391,'2021-07-07 08:06:06','ds_1.Comment_0: 123'),(1626428214932,0,82001,1619511861462,'2021-07-16 09:36:55','ds_1.Comment_0: 经济结构'),(1628313873444,0,82001,1624700434072,'2021-08-07 05:24:33','ds_1.Comment_0: 好!!!!'),(1631761292056,0,82001,1491200468898,'2021-09-16 03:01:32','ds_1.Comment_0: 啥意思?'),(1631761346084,0,82001,301,'2021-09-16 03:02:26','ds_1.Comment_0: 品牌'),(1631761396620,0,82001,1594385349411,'2021-09-16 03:03:16','ds_1.Comment_0: 12'),(1631761397840,0,82001,1520242333325,'2021-09-16 03:03:17','ds_1.Comment_0: 3333'),(1631761399032,0,82001,1553096819293,'2021-09-16 03:03:19','ds_1.Comment_0: 6666666'),(1631761399208,0,82001,1516086423441,'2021-09-16 03:03:19','ds_1.Comment_0: 82001ejej'),(1631761408808,0,82001,58,'2021-09-16 03:03:28','ds_1.Comment_0: $$'),(1631761410368,0,82001,58,'2021-09-16 03:03:30','ds_1.Comment_0: 555555555555555555'),(1631761412016,0,82001,58,'2021-09-16 03:03:32','ds_1.Comment_0: 6765765756'),(1631761412184,0,82001,12,'2021-09-16 03:03:32','ds_1.Comment_0: (fdsd)'),(1631761413492,0,82001,1528462217322,'2021-09-16 03:03:33','ds_1.Comment_0: 111'),(1631761415712,0,82001,58,'2021-09-16 03:03:35','ds_1.Comment_0: 111'),(1631761416936,0,82001,1531969818357,'2021-09-16 03:03:36','ds_1.Comment_0: 00'),(1631761418524,0,82001,371,'2021-09-16 03:03:38','ds_1.Comment_0: 123121545645'),(1631761418696,0,82001,1563605336326,'2021-09-16 03:03:38','ds_1.Comment_0: 1646'),(1631761419264,0,82001,1594385349411,'2021-09-16 03:03:39','ds_1.Comment_0: 555555'),(1631761430528,0,82001,1553096819293,'2021-09-16 03:03:50','ds_1.Comment_0: 3'),(1631761433108,0,82001,1524178455305,'2021-09-16 03:03:53','ds_1.Comment_0: 123121545645'),(1631761433268,0,82001,371,'2021-09-16 03:03:53','ds_1.Comment_0: 3'),(1631761433984,0,82001,12,'2021-09-16 03:03:53','ds_1.Comment_0: 123121545645'),(1631761440748,0,82001,1516086423441,'2021-09-16 03:04:00','ds_1.Comment_0: $$'),(1631761441136,0,82001,1516086423441,'2021-09-16 03:04:01','ds_1.Comment_0: 11'),(1631761441648,0,82001,1527830474378,'2021-09-16 03:04:01','ds_1.Comment_0: 123'),(1631761441988,0,82001,1508072633830,'2021-09-16 03:04:01','ds_1.Comment_0: 157'),(1631761442124,0,82001,511,'2021-09-16 03:04:02','ds_1.Comment_0: (fdsd)'),(1631761442488,0,82001,1516086423441,'2021-09-16 03:04:02','ds_1.Comment_0: 11'),(1631761443216,0,82001,371,'2021-09-16 03:04:03','ds_1.Comment_0: 123121545645'),(1631761443728,0,82001,1512314438990,'2021-09-16 03:04:03','ds_1.Comment_0: 1'),(1631761444028,0,82001,1516086423441,'2021-09-16 03:04:04','ds_1.Comment_0: 111'),(1631761444552,0,82001,1513094436910,'2021-09-16 03:04:04','ds_1.Comment_0: 123121545645'),(1631761445424,0,82001,1553096819293,'2021-09-16 03:04:05','ds_1.Comment_0: 111'),(1631761447040,0,82001,1541557989440,'2021-09-16 03:04:07','ds_1.Comment_0: 111'),(1631761447240,0,82001,58,'2021-09-16 03:04:07','ds_1.Comment_0: 1111'),(1631761447416,0,82001,1516086423441,'2021-09-16 03:04:07','ds_1.Comment_0: 12'),(1631761447752,0,82001,1520242333325,'2021-09-16 03:04:07','ds_1.Comment_0: 123'),(1631761448328,0,82001,301,'2021-09-16 03:04:08','ds_1.Comment_0: 1'),(1631761449000,0,82001,1536805585275,'2021-09-16 03:04:09','ds_1.Comment_0: 1111'),(1631761449200,0,82001,1527821296110,'2021-09-16 03:04:09','ds_1.Comment_0: 112'),(1631761455032,0,82001,12,'2021-09-16 03:04:15','ds_1.Comment_0: 00'),(1631761456092,0,82001,470,'2021-09-16 03:04:16','ds_1.Comment_0: 111'),(1631761457120,0,82001,12,'2021-09-16 03:04:17','ds_1.Comment_0: $$'),(1631761458380,0,82001,1493835799335,'2021-09-16 03:04:18','ds_1.Comment_0: 11'),(1631761458548,0,82001,1531062713966,'2021-09-16 03:04:18','ds_1.Comment_0: 110'),(1631761458696,0,82001,1516086423441,'2021-09-16 03:04:18','ds_1.Comment_0: 111'),(1631761459508,0,82001,1508053762227,'2021-09-16 03:04:19','ds_1.Comment_0: $$'),(1631761460348,0,82001,511,'2021-09-16 03:04:20','ds_1.Comment_0: 00'),(1631761632132,0,82001,12,'2021-09-16 03:07:12','ds_1.Comment_0: hhhj'),(1631761632236,0,82001,12,'2021-09-16 03:07:12','ds_1.Comment_0: thank you'),(1635402883632,0,82002,12,'2021-10-28 06:34:43','ds_1.Comment_0: APIJSON,let !'),(1638631329728,0,82001,1637985952844,'2021-12-04 15:22:09','ds_1.Comment_0: 额'),(1639449621808,0,82001,1638327674898,'2021-12-14 02:40:21','ds_1.Comment_0: 都给你跟大哥'),(1639449624732,0,82001,1638327674898,'2021-12-14 02:40:24','ds_1.Comment_0: 四个就是个'),(1640103342448,0,82001,12,'2021-12-21 16:15:42','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1640103353312,0,82001,12,'2021-12-21 16:15:53','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1645678670104,1645678666889,82001,1645416338268,'2022-02-24 04:57:50','ds_1.Comment_0: 一样'),(1645896988764,0,82001,1638327674898,'2022-02-26 17:36:28','ds_1.Comment_0: qq'),(1649327537444,0,82001,1649086185746,'2022-04-07 10:32:17','ds_1.Comment_0: 123'),(1649433736040,1649327537444,82001,1649086185746,'2022-04-08 16:02:16','ds_1.Comment_0: 过去吧'),(1650022306840,0,82001,1649086185746,'2022-04-15 11:31:46','ds_1.Comment_0: 建模'),(1650022321636,0,82001,1649086185746,'2022-04-15 11:32:01','ds_1.Comment_0: 明敏'),(1650023785000,1649548802611,82001,1649086182892,'2022-04-15 11:56:25','ds_1.Comment_0: 哈哈哈'),(1650353617956,0,82002,12,'2022-04-19 07:33:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1653122465708,0,82001,12,'2022-05-21 08:41:05','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1653122466756,0,82001,12,'2022-05-21 08:41:06','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1660209509324,0,82001,12,'2022-08-11 09:18:29','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1661830719104,0,82001,12,'2022-08-30 03:38:39','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1663572550152,0,82001,12,'2022-09-19 07:29:10','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1663572550228,0,82001,12,'2022-09-19 07:29:10','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1663572557752,0,82001,12,'2022-09-19 07:29:17','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1667542793524,0,82001,12,'2022-11-04 06:19:53','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1669276194512,0,82001,1649086182892,'2022-11-24 07:49:54','ds_1.Comment_0: 111'),(1670420459420,0,82001,1665293930441,'2022-12-07 13:40:59','ds_1.Comment_0: 哈哈哈哈'),(1671437036020,0,82001,1649672357944,'2022-12-19 08:03:56','ds_1.Comment_0: sss'),(1671437046068,0,82001,1649672357944,'2022-12-19 08:04:06','ds_1.Comment_0: sss'),(1675762587396,1630891147547,82001,1630746489563,'2023-02-07 09:36:27','ds_1.Comment_0: 222'),(1675840978164,0,82001,1674308870813,'2023-02-08 07:22:58','ds_1.Comment_0: 不怀好意'),(1676271666564,0,82001,1675910359578,'2023-02-13 07:01:06','ds_1.Comment_0: 33333'),(1679450011332,0,82001,1679313363196,'2023-03-22 01:53:31','ds_1.Comment_0: aassdddd'),(1679645509096,1675840929526,82001,1675742375160,'2023-03-24 08:11:49','ds_1.Comment_0: ghh'),(1679645540712,0,82001,1675742375160,'2023-03-24 08:12:20','ds_1.Comment_0: xccccxx'),(1680742770380,0,82001,1649086185746,'2023-04-06 00:59:30','ds_1.Comment_0: 6'),(1680742794912,0,82001,1670981978461,'2023-04-06 00:59:54','ds_1.Comment_0: 6'),(1681721463936,0,82002,1617562878095,'2023-04-17 08:51:03','ds_1.Comment_0: 22'),(1681882805412,0,82001,12,'2023-04-19 05:40:05','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1681882815816,0,82001,12,'2023-04-19 05:40:15','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1681999094052,0,82001,470,'2023-04-20 13:58:14','ds_1.Comment_0: ffff'),(1681999141244,0,82001,470,'2023-04-20 13:59:01','ds_1.Comment_0: ffff'),(1681999171716,0,82001,470,'2023-04-20 13:59:31','ds_1.Comment_0: ffff'),(1681999221100,0,82001,470,'2023-04-20 14:00:21','ds_1.Comment_0: ffff'),(1681999221488,0,82001,470,'2023-04-20 14:00:21','ds_1.Comment_0: ffff'),(1682000817856,0,82001,470,'2023-04-20 14:26:57','ds_1.Comment_0: xdddddd'),(1682103783776,0,82002,1682103762126,'2023-04-21 19:03:04','ds_1.Comment_0: 5555'),(1682103837432,0,82001,1682096402171,'2023-04-21 19:03:57','ds_1.Comment_0: 555'),(1682621619808,0,82001,235,'2023-04-27 18:53:40','ds_1.Comment_0: Ab_Cd4426623868886511'),(1683353876304,0,82001,142,'2023-05-06 06:17:56','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354453356,0,82001,12,'2023-05-06 06:27:33','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354577460,0,82001,142,'2023-05-06 06:29:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354577540,0,82001,143,'2023-05-06 06:29:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1686196003780,0,82001,1684981418161,'2023-06-08 03:46:43','ds_1.Comment_0: 1册'),(1686196013836,0,82001,1684981418161,'2023-06-08 03:46:53','ds_1.Comment_0: 1册'),(1686196362356,0,82001,1682103762126,'2023-06-08 03:52:42','ds_1.Comment_0: 5666'),(1686196372436,0,82001,1682103762126,'2023-06-08 03:52:52','ds_1.Comment_0: 5666'),(1686196382524,0,82001,1682103762126,'2023-06-08 03:53:02','ds_1.Comment_0: 5666'),(1686303817280,0,82001,1645416338268,'2023-06-09 09:43:37','ds_1.Comment_0: 哦咯模棱两可'),(1686328077792,0,82001,1645416338268,'2023-06-09 16:27:57','ds_1.Comment_0: 牛逼'),(1686328087852,0,82001,1645416338268,'2023-06-09 16:28:07','ds_1.Comment_0: 牛逼'),(1686328107960,0,82001,1645416338268,'2023-06-09 16:28:27','ds_1.Comment_0: 牛逼'),(1686328138132,0,82001,1645416338268,'2023-06-09 16:28:58','ds_1.Comment_0: 牛逼'),(1686897914980,0,82001,1684981561371,'2023-06-16 06:45:15','ds_1.Comment_0: mood'),(1687589876712,0,82001,12,'2023-06-24 06:57:56','ds_1.Comment_0: dkf;dfd;akfd;dadj;\''),(1689569588432,0,82001,1688307338283,'2023-07-17 04:53:08','ds_1.Comment_0: hi'),(1689569598488,0,82001,1688307338283,'2023-07-17 04:53:18','ds_1.Comment_0: hi'),(1689569608508,0,82001,1688307338283,'2023-07-17 04:53:28','ds_1.Comment_0: hi'),(1689569628628,0,82001,1688307338283,'2023-07-17 04:53:48','ds_1.Comment_0: hi'),(1689569638652,0,82001,1688307338283,'2023-07-17 04:53:58','ds_1.Comment_0: hi'),(1692583202328,0,82001,1692260707538,'2023-08-21 02:00:02','ds_1.Comment_0: 哦'),(1693680555320,0,82001,12,'2023-09-02 18:49:15','ds_1.Comment_0: Ab_Cd6844800776712211'),(1693680555324,0,82001,12,'2023-09-04 06:11:58','ds_1.Comment_0: Ab_Cd-844510703468296'),(1693680555328,0,82004,12,'2023-09-04 06:11:58','ds_1.Comment_0: Ab_Cd-2856071793404688'),(1693680555340,0,82007,12,'2023-09-04 06:11:59','ds_1.Comment_0: Ab_Cd1176977250559359'),(1693680555344,0,82002,12,'2023-09-04 06:11:59','ds_1.Comment_0: Ab_Cd-6771634456018543'),(1693680555372,0,82010,12,'2023-09-04 06:11:59','ds_1.Comment_0: Ab_Cd2261114733788087'),(1697115573792,0,82001,1,'2023-10-12 12:59:33','ds_1.Comment_0: 1'),(1697115635288,0,82001,1,'2023-10-12 13:00:35','ds_1.Comment_0: 1'),(1698723267316,0,82002,12,'2023-10-31 03:34:27','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701053335092,0,82001,12,'2023-11-27 02:48:55','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701054529204,0,82001,12,'2023-11-27 03:08:49','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701155522140,0,82001,12,'2023-11-28 07:12:02','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701222080568,0,82001,12,'2023-11-29 01:41:20','ds_1.Comment_0: 这是新建内容。'),(1701222619948,0,82001,12,'2023-11-29 01:50:19','ds_1.Comment_0: 这是修改内容。这是第二次修改内容!!!'),(1701660697608,0,82001,12,'2023-12-04 03:31:37','ds_1.Comment_0: hello'),(1701661955488,0,82001,12,'2023-12-04 03:52:35','ds_1.Comment_0: 测试'),(1701675730504,0,82002,12,'2023-12-04 07:42:10','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701676218464,0,82002,666666,'2023-12-04 07:50:18','ds_1.Comment_0: 这是新建 !'),(1701676481104,0,82002,666666,'2023-12-04 07:54:41','ds_1.Comment_0: 这是新建666666 !'),(1701676481124,0,82002,88888888,'2023-12-04 07:54:41','ds_1.Comment_0: 这是新建88888888 !'),(1701677667312,0,82002,12,'2023-12-04 08:14:27','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1702401213384,0,82009,401,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd8472212734801559'),(1702401213392,0,82004,401,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd8952784214322235'),(1702401213396,0,82008,12,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd-932793048539156'),(1702401213404,0,82007,12,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd2813830567792671'),(1702401213408,0,82010,401,'2023-12-13 10:02:06','ds_1.Comment_0: Ab_Cd-8872216150197055'),(1702401213416,0,82008,12,'2023-12-13 10:02:07','ds_1.Comment_0: Ab_Cd4002198057064007'),(1702401213432,0,82003,401,'2023-12-13 10:02:07','ds_1.Comment_0: Ab_Cd8403206842567007'),(1702401213444,0,82006,12,'2023-12-13 10:02:07','ds_1.Comment_0: Ab_Cd-484858090257340'),(1702401213448,0,82010,12,'2023-12-13 10:02:08','ds_1.Comment_0: Ab_Cd5900887805284295'),(1702401213452,0,82007,401,'2023-12-13 10:02:08','ds_1.Comment_0: Ab_Cd3639994649234319'),(1702401213464,0,82008,12,'2023-12-13 10:02:08','ds_1.Comment_0: Ab_Cd6460773887962923'),(1702401213472,0,82005,12,'2023-12-13 10:02:39','ds_1.Comment_0: Ab_Cd8307714633821023'),(1702401213484,0,82002,12,'2023-12-13 10:02:39','ds_1.Comment_0: Ab_Cd-6411974162780868'),(1702401213496,0,82010,401,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd155628970462443'),(1702401213504,0,82005,401,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd5433003463187443'),(1702401213516,0,82006,12,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd7041822330120711'),(1702401213524,0,82010,401,'2023-12-13 10:02:40','ds_1.Comment_0: Ab_Cd-6271936389850452'),(1702401213536,0,82006,12,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-5998477146992516'),(1702401213540,0,82010,12,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-7350608159302187'),(1702401213548,0,82010,401,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-7893702573699523'),(1702401213552,0,82002,12,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-3816420196613040'),(1702401213556,0,82005,401,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd-2832029110325044'),(1702401213560,0,82002,401,'2023-12-13 10:02:41','ds_1.Comment_0: Ab_Cd3362825843579787'),(1702731872076,0,820012,153,'2023-12-18 09:17:26','ds_1.Comment_0: test1'),(1704439987844,1700489417302,82001,1700488719094,'2024-01-05 07:33:07','ds_1.Comment_0: 嗯'),(1706848337524,0,82001,1684980965206,'2024-02-02 04:32:17','ds_1.Comment_0: 12'),(1708314761672,0,82001,1684979928085,'2024-02-19 03:52:41','ds_1.Comment_0: ok'),(1708314764376,0,82001,1684979928085,'2024-02-19 03:52:44','ds_1.Comment_0: ok'),(1708565420024,0,82001,1693680292080,'2024-02-22 01:30:20','ds_1.Comment_0: 111'),(1709026358748,0,88888,15,'2024-02-27 09:32:38','ds_1.Comment_0: 测试新增评论'),(1709174743328,0,82001,15,'2024-02-29 02:45:43','ds_1.Comment_0: 测试新增评论'),(1709631441780,0,82002,15,'2024-03-05 09:37:21','ds_1.Comment_0: 测试新增评论'),(1709634537372,0,88888,15,'2024-03-05 10:28:57','ds_1.Comment_0: 测试新增评论'),(1709810588660,0,82001,15,'2024-03-07 11:23:08','ds_1.Comment_0: 测试新增评论'),(1709975265936,1633794180858,82003,1632294230574,'2024-03-09 09:07:45','ds_1.Comment_0: 123'),(1709975301096,0,82003,1594385350586,'2024-03-09 09:08:21','ds_1.Comment_0: hok'),(1710337736388,0,82001,1710233170301,'2024-03-13 13:48:56','ds_1.Comment_0: wee'),(1711439077460,0,88888,15,'2024-03-26 07:44:37','ds_1.Comment_0: 测试新增评论'),(1713152305880,1712644302113,82001,1690970599784,'2024-04-15 03:38:25','ds_1.Comment_0: 65'),(1713407030604,0,82001,1711013832774,'2024-04-18 02:23:50','ds_1.Comment_0: bb'),(1713949089248,0,82003,12,'2024-04-24 08:58:09','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1713949152716,0,82003,12,'2024-04-24 08:59:12','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1713949179176,0,82003,12,'2024-04-24 08:59:39','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1713949237832,0,82003,12,'2024-04-24 09:00:37','ds_1.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1714048097100,0,82003,15,'2024-04-25 12:28:17','ds_1.Comment_0: 测试新增评论'),(1717561711548,0,82001,1705675845917,'2024-06-05 04:28:31','ds_1.Comment_0: 测试评论'),(1717588299400,0,82001,1716707004081,'2024-06-05 11:51:39','ds_1.Comment_0: 123456'),(1717862884920,0,82001,1717757679298,'2024-06-08 16:08:04','ds_1.Comment_0: 测试新增评论'),(1717862884960,0,82001,15,'2024-06-08 16:08:04','ds_1.Comment_0: 测试新增评论'),(1717862890920,0,38710,1717757679298,'2024-06-08 16:08:10','ds_1.Comment_0: 测试新增评论'),(1717939348020,0,82001,1717757679298,'2024-06-09 13:22:28','ds_1.Comment_0: 考虑考虑'),(1738597731515,0,82002,12,'2025-02-03 15:48:51','test post comment 2'); /*!40000 ALTER TABLE `Comment_0` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; @@ -56,4 +56,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-02-03 23:27:31 +-- Dump completed on 2025-02-03 23:54:01 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_1.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_1.sql index 9c43a92..bcbc72d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_1.sql +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Comment_1.sql @@ -43,7 +43,7 @@ CREATE TABLE `Comment_1` ( LOCK TABLES `Comment_1` WRITE; /*!40000 ALTER TABLE `Comment_1` DISABLE KEYS */; -INSERT INTO `Comment_1` VALUES (13,0,82005,58,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-13'),(45,0,93793,301,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-45'),(77,13,93793,58,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-77'),(97,13,82006,58,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-97'),(157,0,93793,371,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-157'),(173,0,38710,58,'2017-03-25 12:25:13','ds_1.Comment_1: Good'),(209,13,82001,58,'2017-03-29 03:05:59','ds_1.Comment_1: hehj'),(301,194,82001,235,'2017-03-29 03:06:24','ds_1.Comment_1: jj'),(4001,0,82001,58,'2017-03-29 08:39:52','ds_1.Comment_1: I would like to say …'),(1490776944301,0,82001,58,'2017-03-29 08:42:24','ds_1.Comment_1: hello'),(1490777905437,0,82001,543,'2017-03-29 08:58:25','ds_1.Comment_1: rr'),(1490778681337,166,82001,12,'2017-03-29 09:11:21','ds_1.Comment_1: gg'),(1490781032005,45,82001,301,'2017-03-29 09:50:32','ds_1.Comment_1: 93793'),(1490781850893,1490776966828,38710,58,'2017-03-29 10:04:10','ds_1.Comment_1: haha!'),(1490794439561,1490778681337,82001,12,'2017-03-29 13:33:59','ds_1.Comment_1: gg?'),(1490794937137,1490794919957,82001,12,'2017-03-29 13:42:17','ds_1.Comment_1: All right ok ok'),(1490863651493,0,70793,595,'2017-03-30 08:47:31','ds_1.Comment_1: wow'),(1490863676989,0,70793,12,'2017-03-30 08:47:56','ds_1.Comment_1: Shy'),(1490875040761,158,82055,301,'2017-03-30 11:57:20','ds_1.Comment_1: 157'),(1491119670185,68,82001,371,'2017-04-02 07:54:30','ds_1.Comment_1: Leave a word'),(1491277552385,0,82001,58,'2017-04-04 03:45:52','ds_1.Comment_1: Seven'),(1491709064513,0,82001,551,'2017-04-09 03:37:44','ds_1.Comment_1: soga'),(1491798370749,0,82002,551,'2017-04-10 04:26:10','ds_1.Comment_1: Nice!'),(1491830543193,0,82001,170,'2017-04-10 13:22:23','ds_1.Comment_1: What is the hell?'),(1508072695833,0,82003,1508072633830,'2017-10-15 13:04:55','ds_1.Comment_1: 心疼地抱住自己(๑´ㅂ`๑)'),(1509003045509,0,82001,1508072633830,'2017-10-26 07:30:45','ds_1.Comment_1: hhh'),(1511407702981,157,1511407581570,371,'2017-11-23 03:28:22','ds_1.Comment_1: 你好'),(1512035117021,0,82001,32,'2017-11-30 09:45:17','ds_1.Comment_1: 图片看不了啊'),(1514473034425,1514425796195,93793,1513094436910,'2017-12-28 14:57:14','ds_1.Comment_1: 干啥?'),(1514478784653,0,82001,1513094436910,'2017-12-28 16:33:04','ds_1.Comment_1: bug很多'),(1514858592813,0,82001,1514858533480,'2018-01-02 02:03:12','ds_1.Comment_1: 铁人'),(1514960744185,1512531859019,82001,1512314438990,'2018-01-03 06:25:44','ds_1.Comment_1: 哇'),(1516805226757,1516785657724,38710,1516086423441,'2018-01-24 14:47:06','ds_1.Comment_1: 滑稽?'),(1516805340593,1516783920998,38710,1513094436910,'2018-01-24 14:49:00','ds_1.Comment_1: 看怎么定义 实时 。这个是仿微信朋友圈列表和QQ空间说说详情,在线同步的,但没做推送,所以不是QQ微信聊天那种即时通讯。'),(1517303775429,1490863903900,82001,470,'2018-01-30 09:16:15','ds_1.Comment_1: ???'),(1517375165233,0,82001,1508053762227,'2018-01-31 05:06:05','ds_1.Comment_1: 666'),(1518365470893,44,82001,170,'2018-02-11 16:11:10','ds_1.Comment_1: 野蜂飞舞'),(1518614899681,0,82001,301,'2018-02-14 13:28:19','ds_1.Comment_1: https://goo.gl/search/JJB+Sports\nJJB Sports,'),(1519793574249,1519719341810,93793,1516086423441,'2018-02-28 04:52:54','ds_1.Comment_1: 哈哈,春运都过了啊'),(1520578883309,0,82001,12,'2018-03-09 07:01:23','ds_1.Comment_1: 我用流量'),(1524032244441,1519974842508,82001,1516086423441,'2018-04-18 06:17:24','ds_1.Comment_1: 干嘛,单身吗?'),(1524190981549,1522657767636,82003,301,'2018-04-20 02:23:01','ds_1.Comment_1: 这个6'),(1524582716289,1524461441914,70793,1508072633830,'2018-04-24 15:11:56','ds_1.Comment_1: 脉脉'),(1524844181029,1524798402799,82001,1524178455305,'2018-04-27 15:49:41','ds_1.Comment_1: 确实有这样的问题,但这个Demo仅供展示APIJSON的接口数据增删改查的能力,又拍云,七牛等平台又需要对接及付费,所以Demo暂时不提供哈,需要的话可以自己搞。建议先把图片上传到又拍云等平台,拿回url再传到自己的服务器^_^'),(1528270188205,0,1528250827953,1527830474378,'2018-06-06 07:29:48','ds_1.Comment_1: 这个图片是怎么发出来的啊,我发动态就只是那两张默认图片'),(1528278187969,0,82001,470,'2018-06-06 09:43:07','ds_1.Comment_1: 啊啊啊啊'),(1528327885509,1528289580140,1528250827953,1528274037224,'2018-06-06 23:31:25','ds_1.Comment_1: 噢噢,没想到你能这么快回复,谢谢'),(1528393204569,1528270188205,38710,1527830474378,'2018-06-07 17:40:04','ds_1.Comment_1: 把接口里的pictureList的值改下,里面包含图片url'),(1528677257985,0,1528339692804,1528676875139,'2018-06-11 00:34:17','ds_1.Comment_1: aaa'),(1528799506317,1516805340593,82001,1513094436910,'2018-06-12 10:31:46','ds_1.Comment_1: 摩恩'),(1529730035521,0,82001,1527830331780,'2018-06-23 05:00:35','ds_1.Comment_1: 还有别的吗?'),(1531412238453,0,82001,1528356378455,'2018-07-12 16:17:18','ds_1.Comment_1: 去啊'),(1533187733941,0,82001,1508072633830,'2018-08-02 05:28:53','ds_1.Comment_1: 好好'),(1533202426013,1533186909764,82003,1531969818357,'2018-08-02 09:33:46','ds_1.Comment_1: world'),(1533629063261,0,82001,1531969818357,'2018-08-07 08:04:23','ds_1.Comment_1: 大鸡鸡'),(1533902902749,0,82001,1531969818357,'2018-08-10 12:08:22','ds_1.Comment_1: 性能还可以'),(1534053913157,1524190941111,1508072160401,1516086423441,'2018-08-12 06:05:13','ds_1.Comment_1: 怎么约?'),(1534412022857,0,82001,1531969818357,'2018-08-16 09:33:42','ds_1.Comment_1: dgf'),(1534684074665,1531983163150,82001,1531969818357,'2018-08-19 13:07:54','ds_1.Comment_1: ggggg'),(1536337000073,1516686985310,82001,1516086423441,'2018-09-07 16:16:40','ds_1.Comment_1: heh'),(1536805661269,0,70793,1536805585275,'2018-09-13 02:27:41','ds_1.Comment_1: 6s再战一年'),(1539868275645,1531887938362,82001,1531062713966,'2018-10-18 13:11:15','ds_1.Comment_1: 22222222222222222'),(1541496033857,0,82001,301,'2018-11-06 09:20:33','ds_1.Comment_1: 能解决'),(1546050386785,0,82001,1516086423441,'2018-12-29 02:26:26','ds_1.Comment_1: 不鸟你'),(1551430465241,1551430453424,82001,1553096819293,'2019-03-01 08:54:25','ds_1.Comment_1: 123'),(1551430485689,1551430453424,82001,1553096819293,'2019-03-01 08:54:45','ds_1.Comment_1: 品牌'),(1551683545557,1490863711703,82001,511,'2019-03-04 07:12:25','ds_1.Comment_1: 科技'),(1553053362233,1551430485689,82001,1553096819293,'2019-03-20 03:42:42','ds_1.Comment_1: 集合vyih'),(1554373282941,0,82001,543,'2019-04-04 10:21:22','ds_1.Comment_1: 。'),(1556953335513,0,82001,1556387217941,'2019-05-04 07:02:15','ds_1.Comment_1: 嘻嘻嘻'),(1556953340357,1556953335513,82001,1556387217941,'2019-05-04 07:02:20','ds_1.Comment_1: 额额额'),(1557754765785,0,70793,1557754680146,'2019-05-13 13:39:25','ds_1.Comment_1: 链接发下'),(1558440302601,0,82001,1557415707105,'2019-05-21 12:05:02','ds_1.Comment_1: 咔咔咔'),(1558440307225,0,82001,1557415707105,'2019-05-21 12:05:07','ds_1.Comment_1: i我看'),(1558440357141,1558440335644,82001,1557754680146,'2019-05-21 12:05:57','ds_1.Comment_1: 惊声尖叫额'),(1563688523833,0,82001,1563605336326,'2019-07-21 05:55:23','ds_1.Comment_1: 嗯嗯'),(1564493464049,0,82001,1557754680146,'2019-07-30 13:31:04','ds_1.Comment_1: 真牛逼'),(1566270974217,0,82001,1558798664043,'2019-08-20 03:16:14','ds_1.Comment_1: what'),(1570262731881,0,82001,1512314438990,'2019-10-05 08:05:31','ds_1.Comment_1: Ghhh'),(1570609944245,0,82001,704,'2019-10-09 08:32:24','ds_1.Comment_1: 呃呃呃'),(1571273540137,0,82001,543,'2019-10-17 00:52:20','ds_1.Comment_1: 太快了'),(1575518027953,0,82001,1572177746393,'2019-12-05 03:53:47','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1576678033649,1558440307225,82001,1557415707105,'2019-12-18 14:07:13','ds_1.Comment_1: 124'),(1589255358661,1491119695580,82001,371,'2020-05-12 03:49:18','ds_1.Comment_1: 好吃'),(1592119592201,0,82001,1516086423441,'2020-06-14 07:26:32','ds_1.Comment_1: 据记'),(1592119607109,1516687437251,82001,1516086423441,'2020-06-14 07:26:47','ds_1.Comment_1: 工厂'),(1594290735773,0,82001,371,'2020-07-09 10:32:15','ds_1.Comment_1: 哈哈'),(1594352357029,0,82001,1594127400223,'2020-07-10 03:39:17','ds_1.Comment_1: 换一个模拟器试试'),(1594462397453,0,82001,1594385349411,'2020-07-11 10:13:17','ds_1.Comment_1: uuu'),(1599054157165,1596209179840,82001,1583574596245,'2020-09-02 13:42:37','ds_1.Comment_1: 既解决'),(1605590426089,1592119592201,82001,1516086423441,'2020-11-17 05:20:26','ds_1.Comment_1: 讨论嘟嘟嘟特特特'),(1609774951037,0,82001,1493835799335,'2021-01-04 15:42:31','ds_1.Comment_1: Ffjfjkf'),(1611892629701,1611547274671,82001,1611503147421,'2021-01-29 03:57:09','ds_1.Comment_1: Test'),(1617550618501,0,82001,1611503147421,'2021-04-04 15:36:58','ds_1.Comment_1: 哈哈哈'),(1624275284477,0,82001,1572177746393,'2021-06-21 11:34:44','ds_1.Comment_1: 111'),(1624697881241,0,82001,1594385350586,'2021-06-26 08:58:01','ds_1.Comment_1: 华山卡'),(1625214509673,0,82001,12,'2021-07-02 08:28:29','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1626417070325,0,82001,1508053762227,'2021-07-16 06:31:10','ds_1.Comment_1: Vnn'),(1629102895605,0,82001,12,'2021-08-16 08:34:55','ds_1.Comment_1: test'),(1629102906693,0,82001,12,'2021-08-16 08:35:06','ds_1.Comment_1: test'),(1631761271589,0,82001,1553096819293,'2021-09-16 03:01:11','ds_1.Comment_1: 555555'),(1631761290317,0,82001,1535781636403,'2021-09-16 03:01:30','ds_1.Comment_1: 哈哈'),(1631761345493,0,82001,1512314438990,'2021-09-16 03:02:25','ds_1.Comment_1: hhhhh'),(1631761390009,0,82001,551,'2021-09-16 03:03:10','ds_1.Comment_1: $$'),(1631761397009,0,82001,12,'2021-09-16 03:03:17','ds_1.Comment_1: 123'),(1631761397393,0,82001,1558798664043,'2021-09-16 03:03:17','ds_1.Comment_1: 124'),(1631761397649,0,82001,371,'2021-09-16 03:03:17','ds_1.Comment_1: 1646'),(1631761398865,0,82001,1528462217322,'2021-09-16 03:03:18','ds_1.Comment_1: 666'),(1631761410153,0,82001,301,'2021-09-16 03:03:30','ds_1.Comment_1: 3423423423'),(1631761410569,0,82001,1611503147421,'2021-09-16 03:03:30','ds_1.Comment_1: 82001ejej'),(1631761411209,0,82001,1531062713966,'2021-09-16 03:03:31','ds_1.Comment_1: 123121545645'),(1631761411849,0,82001,12,'2021-09-16 03:03:31','ds_1.Comment_1: 555555'),(1631761412361,0,82001,301,'2021-09-16 03:03:32','ds_1.Comment_1: 111'),(1631761413857,0,82001,1531969818357,'2021-09-16 03:03:33','ds_1.Comment_1: 3333'),(1631761414841,0,82001,1513094436910,'2021-09-16 03:03:34','ds_1.Comment_1: 123121545645'),(1631761416361,0,82001,1531969818357,'2021-09-16 03:03:36','ds_1.Comment_1: 444444'),(1631761417441,0,82001,1513094436910,'2021-09-16 03:03:37','ds_1.Comment_1: 222'),(1631761417781,0,82001,1513094436910,'2021-09-16 03:03:37','ds_1.Comment_1: 434'),(1631761417945,0,82001,1617562878095,'2021-09-16 03:03:37','ds_1.Comment_1: 555555555'),(1631761418125,0,82001,58,'2021-09-16 03:03:38','ds_1.Comment_1: 1'),(1631761418945,0,82001,32,'2021-09-16 03:03:38','ds_1.Comment_1: 3条重复的'),(1631761433633,0,82001,12,'2021-09-16 03:03:53','ds_1.Comment_1: 1'),(1631761439061,0,82001,1516086423441,'2021-09-16 03:03:59','ds_1.Comment_1: 1'),(1631761439473,0,82001,12,'2021-09-16 03:03:59','ds_1.Comment_1: 111'),(1631761440161,0,82001,1594127400223,'2021-09-16 03:04:00','ds_1.Comment_1: 123'),(1631761440541,0,82001,12,'2021-09-16 03:04:00','ds_1.Comment_1: 1646'),(1631761441817,0,82001,1557415707105,'2021-09-16 03:04:01','ds_1.Comment_1: 123121545645'),(1631761442305,0,82001,1513094436910,'2021-09-16 03:04:02','ds_1.Comment_1: 00'),(1631761444713,0,82001,1524178455305,'2021-09-16 03:04:04','ds_1.Comment_1: $$'),(1631761445929,0,82001,1516086423441,'2021-09-16 03:04:05','ds_1.Comment_1: 123121545645'),(1631761446849,0,82001,511,'2021-09-16 03:04:06','ds_1.Comment_1: 110'),(1631761447937,0,82001,58,'2021-09-16 03:04:07','ds_1.Comment_1: (fdsd)'),(1631761454057,0,82001,1512314438990,'2021-09-16 03:04:14','ds_1.Comment_1: $$'),(1631761454625,0,82001,543,'2021-09-16 03:04:14','ds_1.Comment_1: (fdsd)'),(1631761454817,0,82001,1557754680146,'2021-09-16 03:04:14','ds_1.Comment_1: -162'),(1631761455589,0,82001,1531969818357,'2021-09-16 03:04:15','ds_1.Comment_1: 1'),(1631761455929,0,82001,1516086423441,'2021-09-16 03:04:15','ds_1.Comment_1: 111'),(1631761456265,0,82001,1513094436910,'2021-09-16 03:04:16','ds_1.Comment_1: 111'),(1631761458221,0,82001,371,'2021-09-16 03:04:18','ds_1.Comment_1: 1'),(1631761459665,0,82001,371,'2021-09-16 03:04:19','ds_1.Comment_1: $$'),(1631761459965,0,82001,1512314438990,'2021-09-16 03:04:19','ds_1.Comment_1: ,王者荣耀'),(1631761460153,0,82001,543,'2021-09-16 03:04:20','ds_1.Comment_1: -162'),(1637305836417,0,82001,1594127400223,'2021-11-19 07:10:36','ds_1.Comment_1: (fdsd)'),(1639101116341,0,82001,1638327674898,'2021-12-10 01:51:56','ds_1.Comment_1: 546411'),(1639386666589,0,82001,1638327674898,'2021-12-13 09:11:06','ds_1.Comment_1: 搞不好'),(1639386674965,1639386671675,82001,1638327674898,'2021-12-13 09:11:14','ds_1.Comment_1: 抱抱你'),(1639449630593,0,82001,1638327674898,'2021-12-14 02:40:30','ds_1.Comment_1: 大概就是感觉分手就分手'),(1639449633733,0,82001,1638327674898,'2021-12-14 02:40:33','ds_1.Comment_1: 财政局干啥干啥就是贵公司'),(1639455622365,1639449637290,82001,1638327674898,'2021-12-14 04:20:22','ds_1.Comment_1: 和不不不不'),(1645290759533,0,82001,1638327674898,'2022-02-19 17:12:39','ds_1.Comment_1: g'),(1645497835569,0,82001,1645416338268,'2022-02-22 02:43:55','ds_1.Comment_1: 456'),(1645678658757,0,82001,1645416338268,'2022-02-24 04:57:38','ds_1.Comment_1: 厉害了'),(1645678666889,1645678658757,82001,1645416338268,'2022-02-24 04:57:46','ds_1.Comment_1: 刚刚'),(1646123831361,0,82001,1645416338268,'2022-03-01 08:37:11','ds_1.Comment_1: 啃你'),(1648697303481,0,82001,12,'2022-03-31 03:28:23','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1648697310625,0,82001,12,'2022-03-31 03:28:30','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1648716225389,1648716219295,82001,1648604448242,'2022-03-31 08:43:45','ds_1.Comment_1: 1212'),(1650022311005,0,82001,1649086185746,'2022-04-15 11:31:51','ds_1.Comment_1: 寂寞'),(1650022318825,0,82001,1649086185746,'2022-04-15 11:31:58','ds_1.Comment_1: 明年'),(1650786597757,0,82001,1649086185746,'2022-04-24 07:49:57','ds_1.Comment_1: 你好'),(1651717773049,0,82001,12,'2022-05-05 02:29:33','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1657618548589,0,82001,12,'2022-07-12 09:35:48','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1659423914365,1638631329728,82001,1637985952844,'2022-08-02 07:05:14','ds_1.Comment_1: wdd'),(1660616987885,0,82001,12,'2022-08-16 02:29:47','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1666604060829,0,82003,12,'2022-10-24 09:34:20','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1667605291185,1652796392746,82001,1651846337935,'2022-11-04 23:41:31','ds_1.Comment_1: 1'),(1671437056133,0,82001,1649672357944,'2022-12-19 08:04:16','ds_1.Comment_1: sssccccccc'),(1671437066189,0,82001,1649672357944,'2022-12-19 08:04:26','ds_1.Comment_1: sssccccccc'),(1675395998069,0,82001,1674308870813,'2023-02-03 03:46:38','ds_1.Comment_1: tff'),(1675676416033,1639556974079,82001,1637985952844,'2023-02-06 09:40:16','ds_1.Comment_1: 1234'),(1675762580073,1630891147547,82001,1630746489563,'2023-02-07 09:36:20','ds_1.Comment_1: 222'),(1676271716321,0,82001,1675742375160,'2023-02-13 07:01:56','ds_1.Comment_1: 333'),(1678959296341,0,82003,12,'2023-03-16 09:34:56','ds_1.Comment_1: APIJSON'),(1680320444497,0,82001,1677223327076,'2023-04-01 03:40:44','ds_1.Comment_1: 灌灌灌灌'),(1681710737853,0,82002,1679908549702,'2023-04-17 05:52:17','ds_1.Comment_1: gjbgh'),(1681999075961,0,82001,470,'2023-04-20 13:57:55','ds_1.Comment_1: ffff'),(1681999171521,0,82001,470,'2023-04-20 13:59:31','ds_1.Comment_1: ffff'),(1682000985545,0,82001,470,'2023-04-20 14:29:45','ds_1.Comment_1: xdddddd'),(1683353882473,0,82001,142,'2023-05-06 06:18:02','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683353886837,0,82001,142,'2023-05-06 06:18:06','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683354577541,0,82001,144,'2023-05-06 06:29:37','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683355604325,0,82001,12,'2023-05-06 06:46:44','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1684140534961,0,82001,12,'2023-05-15 08:48:55','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1685617635685,0,82001,1665293930441,'2023-06-01 11:07:15','ds_1.Comment_1: 5464646'),(1685617655797,0,82001,1665293930441,'2023-06-01 11:07:35','ds_1.Comment_1: 5464646'),(1686196352285,0,82001,1682103762126,'2023-06-08 03:52:32','ds_1.Comment_1: 5666'),(1686303797185,0,82001,1645416338268,'2023-06-09 09:43:17','ds_1.Comment_1: 哦咯模棱两可'),(1686328128073,0,82001,1645416338268,'2023-06-09 16:28:48','ds_1.Comment_1: 牛逼'),(1686710639953,0,82001,1684981561371,'2023-06-14 02:43:59','ds_1.Comment_1: ?'),(1686710650057,0,82001,1684981561371,'2023-06-14 02:44:10','ds_1.Comment_1: ?'),(1686897854569,0,82001,1684981561371,'2023-06-16 06:44:14','ds_1.Comment_1: mood'),(1686897874733,0,82001,1684981561371,'2023-06-16 06:44:34','ds_1.Comment_1: mood'),(1686897894829,0,82001,1684981561371,'2023-06-16 06:44:54','ds_1.Comment_1: mood'),(1686897904885,0,82001,1684981561371,'2023-06-16 06:45:04','ds_1.Comment_1: mood'),(1693680555321,0,82001,235,'2023-09-02 18:49:15','ds_1.Comment_1: Ab_Cd4426623868886511'),(1693680555325,0,82002,401,'2023-09-04 06:11:58','ds_1.Comment_1: Ab_Cd-2186617588410572'),(1693680555337,0,82004,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd6203800719877287'),(1693680555341,0,82009,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd-7313973027522679'),(1693680555345,0,82001,401,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd7237422506126807'),(1693680555353,0,82001,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd6294670593907367'),(1693680555357,0,82005,401,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd6999788992225395'),(1693680555361,0,82009,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd-386791421830424'),(1693680555369,0,82007,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd-4315325886904'),(1695808012765,0,82001,12,'2023-09-27 09:46:52','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1697115622725,0,82001,1,'2023-10-12 13:00:22','ds_1.Comment_1: 1'),(1698723301949,0,82002,12,'2023-10-31 03:35:02','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1700488670273,0,82002,1700372077715,'2023-11-20 13:57:50','ds_1.Comment_1: test'),(1700488850297,0,82002,1700488719094,'2023-11-20 14:00:50','ds_1.Comment_1: test'),(1701153067449,0,82001,12,'2023-11-28 06:31:07','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1701661625917,0,82001,12,'2023-12-04 03:47:05','ds_1.Comment_1: 测试1111'),(1701676438353,0,82002,666666,'2023-12-04 07:53:58','ds_1.Comment_1: 这是新建 !'),(1701676438401,0,82002,88888888,'2023-12-04 07:53:58','ds_1.Comment_1: 这是新建 !'),(1701677681717,0,82002,12,'2023-12-04 08:14:41','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1702401213373,0,82007,401,'2023-12-13 10:02:05','ds_1.Comment_1: Ab_Cd-4225572075990508'),(1702401213381,0,82004,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd6373722079198439'),(1702401213389,0,82010,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd2988679823594555'),(1702401213397,0,82009,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd-3632240841909172'),(1702401213401,0,82002,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd-2170731090025816'),(1702401213405,0,82009,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd269140865411543'),(1702401213409,0,82001,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd4852681634615031'),(1702401213417,0,82009,401,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-350368370475472'),(1702401213421,0,82005,12,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd3119145138660639'),(1702401213425,0,82008,401,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-1827902215893684'),(1702401213429,0,82002,401,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-6315333086151784'),(1702401213437,0,82009,12,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-7802139111814783'),(1702401213445,0,82007,401,'2023-12-13 10:02:08','ds_1.Comment_1: Ab_Cd-5115620335352312'),(1702401213461,0,82005,12,'2023-12-13 10:02:08','ds_1.Comment_1: Ab_Cd2243993689411583'),(1702401213473,0,82006,401,'2023-12-13 10:02:39','ds_1.Comment_1: Ab_Cd-4734672872211368'),(1702401213481,0,82005,401,'2023-12-13 10:02:39','ds_1.Comment_1: Ab_Cd2098233721074687'),(1702401213489,0,82009,401,'2023-12-13 10:02:39','ds_1.Comment_1: Ab_Cd1198887753628367'),(1702401213497,0,82005,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd8789538862152891'),(1702401213501,0,82004,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd-702044903466940'),(1702401213521,0,82005,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd7241299919300251'),(1702401213525,0,82007,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd-1953719130947616'),(1702401213533,0,82003,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd4838654061396323'),(1702401213537,0,82008,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd5161976574809799'),(1702401213541,0,82002,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd-598365248638636'),(1702401213549,0,82009,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd2272851398768027'),(1702401213561,0,82001,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd95863935516583'),(1702401213569,0,82010,401,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd-4317357036955636'),(1704439979409,0,82001,1703425198937,'2024-01-05 07:32:59','ds_1.Comment_1: 牛逼'),(1705974277629,1680742650703,82001,1680494769487,'2024-01-23 01:44:37','ds_1.Comment_1: ggv'),(1708565424757,0,82001,1693680292080,'2024-02-22 01:30:24','ds_1.Comment_1: 222'),(1708916797305,0,82002,15,'2024-02-26 03:06:37','ds_1.Comment_1: 测试新增评论'),(1708929594961,0,82001,1693680292080,'2024-02-26 06:39:54','ds_1.Comment_1: 1111'),(1709020162497,0,82001,1690970599784,'2024-02-27 07:49:22','ds_1.Comment_1: cmmc'),(1709022349529,0,82002,15,'2024-02-27 08:25:49','ds_1.Comment_1: 测试新增评论'),(1709022696285,0,88888,15,'2024-02-27 08:31:36','ds_1.Comment_1: 测试新增评论'),(1709178281285,0,82002,15,'2024-02-29 03:44:41','ds_1.Comment_1: 测试新增评论'),(1709273218365,0,82001,15,'2024-03-01 06:06:58','ds_1.Comment_1: 测试新增评论'),(1709277353041,0,82003,15,'2024-03-01 07:15:53','ds_1.Comment_1: 测试新增评论'),(1709278973645,0,88888,15,'2024-03-01 07:42:53','ds_1.Comment_1: 测试新增评论'),(1709285310765,0,82001,15,'2024-03-01 09:28:30','ds_1.Comment_1: 测试新增评论'),(1709629786697,0,82001,15,'2024-03-05 09:09:46','ds_1.Comment_1: 测试新增评论'),(1709632979285,0,82003,15,'2024-03-05 10:02:59','ds_1.Comment_1: 测试新增评论'),(1709785630273,0,82002,15,'2024-03-07 04:27:10','ds_1.Comment_1: 测试新增评论'),(1709813932965,0,88888,15,'2024-03-07 12:18:53','ds_1.Comment_1: 测试新增评论'),(1709975144529,1584336841458,82003,1583574596245,'2024-03-09 09:05:44','ds_1.Comment_1: hhh'),(1709975284389,1626428214932,82003,1619511861462,'2024-03-09 09:08:04','ds_1.Comment_1: ok'),(1710338148649,0,82001,1685592384514,'2024-03-13 13:55:48','ds_1.Comment_1: hello'),(1710488594505,1710337723054,82001,1710233170301,'2024-03-15 07:43:14','ds_1.Comment_1: 你个'),(1711433950209,0,82001,15,'2024-03-26 06:19:10','ds_1.Comment_1: 测试新增评论'),(1711961505969,0,82001,1710746917236,'2024-04-01 08:51:45','ds_1.Comment_1: 宝宝'),(1712644302113,1709020162497,82001,1690970599784,'2024-04-09 06:31:42','ds_1.Comment_1: 现在想想'),(1713955538785,0,82003,12,'2024-04-24 10:45:38','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1714048094805,0,82003,15,'2024-04-25 12:28:14','ds_1.Comment_1: 测试新增评论'),(1714048096613,0,82003,15,'2024-04-25 12:28:16','ds_1.Comment_1: 测试新增评论'),(1714048097493,0,82003,15,'2024-04-25 12:28:17','ds_1.Comment_1: 测试新增评论'),(1717862858501,0,82001,1717757679298,'2024-06-08 16:07:38','ds_1.Comment_1: 测试新增评论'); +INSERT INTO `Comment_1` VALUES (13,0,82005,58,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-13'),(45,0,93793,301,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-45'),(77,13,93793,58,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-77'),(97,13,82006,58,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-97'),(157,0,93793,371,'2017-02-01 11:20:50','ds_1.Comment_1: This is a Content...-157'),(173,0,38710,58,'2017-03-25 12:25:13','ds_1.Comment_1: Good'),(209,13,82001,58,'2017-03-29 03:05:59','ds_1.Comment_1: hehj'),(301,194,82001,235,'2017-03-29 03:06:24','ds_1.Comment_1: jj'),(4001,0,82001,58,'2017-03-29 08:39:52','ds_1.Comment_1: I would like to say …'),(1490776944301,0,82001,58,'2017-03-29 08:42:24','ds_1.Comment_1: hello'),(1490777905437,0,82001,543,'2017-03-29 08:58:25','ds_1.Comment_1: rr'),(1490778681337,166,82001,12,'2017-03-29 09:11:21','ds_1.Comment_1: gg'),(1490781032005,45,82001,301,'2017-03-29 09:50:32','ds_1.Comment_1: 93793'),(1490781850893,1490776966828,38710,58,'2017-03-29 10:04:10','ds_1.Comment_1: haha!'),(1490794439561,1490778681337,82001,12,'2017-03-29 13:33:59','ds_1.Comment_1: gg?'),(1490794937137,1490794919957,82001,12,'2017-03-29 13:42:17','ds_1.Comment_1: All right ok ok'),(1490863651493,0,70793,595,'2017-03-30 08:47:31','ds_1.Comment_1: wow'),(1490863676989,0,70793,12,'2017-03-30 08:47:56','ds_1.Comment_1: Shy'),(1490875040761,158,82055,301,'2017-03-30 11:57:20','ds_1.Comment_1: 157'),(1491119670185,68,82001,371,'2017-04-02 07:54:30','ds_1.Comment_1: Leave a word'),(1491277552385,0,82001,58,'2017-04-04 03:45:52','ds_1.Comment_1: Seven'),(1491709064513,0,82001,551,'2017-04-09 03:37:44','ds_1.Comment_1: soga'),(1491798370749,0,82002,551,'2017-04-10 04:26:10','ds_1.Comment_1: Nice!'),(1491830543193,0,82001,170,'2017-04-10 13:22:23','ds_1.Comment_1: What is the hell?'),(1508072695833,0,82003,1508072633830,'2017-10-15 13:04:55','ds_1.Comment_1: 心疼地抱住自己(๑´ㅂ`๑)'),(1509003045509,0,82001,1508072633830,'2017-10-26 07:30:45','ds_1.Comment_1: hhh'),(1511407702981,157,1511407581570,371,'2017-11-23 03:28:22','ds_1.Comment_1: 你好'),(1512035117021,0,82001,32,'2017-11-30 09:45:17','ds_1.Comment_1: 图片看不了啊'),(1514473034425,1514425796195,93793,1513094436910,'2017-12-28 14:57:14','ds_1.Comment_1: 干啥?'),(1514478784653,0,82001,1513094436910,'2017-12-28 16:33:04','ds_1.Comment_1: bug很多'),(1514858592813,0,82001,1514858533480,'2018-01-02 02:03:12','ds_1.Comment_1: 铁人'),(1514960744185,1512531859019,82001,1512314438990,'2018-01-03 06:25:44','ds_1.Comment_1: 哇'),(1516805226757,1516785657724,38710,1516086423441,'2018-01-24 14:47:06','ds_1.Comment_1: 滑稽?'),(1516805340593,1516783920998,38710,1513094436910,'2018-01-24 14:49:00','ds_1.Comment_1: 看怎么定义 实时 。这个是仿微信朋友圈列表和QQ空间说说详情,在线同步的,但没做推送,所以不是QQ微信聊天那种即时通讯。'),(1517303775429,1490863903900,82001,470,'2018-01-30 09:16:15','ds_1.Comment_1: ???'),(1517375165233,0,82001,1508053762227,'2018-01-31 05:06:05','ds_1.Comment_1: 666'),(1518365470893,44,82001,170,'2018-02-11 16:11:10','ds_1.Comment_1: 野蜂飞舞'),(1518614899681,0,82001,301,'2018-02-14 13:28:19','ds_1.Comment_1: https://goo.gl/search/JJB+Sports\nJJB Sports,'),(1519793574249,1519719341810,93793,1516086423441,'2018-02-28 04:52:54','ds_1.Comment_1: 哈哈,春运都过了啊'),(1520578883309,0,82001,12,'2018-03-09 07:01:23','ds_1.Comment_1: 我用流量'),(1524032244441,1519974842508,82001,1516086423441,'2018-04-18 06:17:24','ds_1.Comment_1: 干嘛,单身吗?'),(1524190981549,1522657767636,82003,301,'2018-04-20 02:23:01','ds_1.Comment_1: 这个6'),(1524582716289,1524461441914,70793,1508072633830,'2018-04-24 15:11:56','ds_1.Comment_1: 脉脉'),(1524844181029,1524798402799,82001,1524178455305,'2018-04-27 15:49:41','ds_1.Comment_1: 确实有这样的问题,但这个Demo仅供展示APIJSON的接口数据增删改查的能力,又拍云,七牛等平台又需要对接及付费,所以Demo暂时不提供哈,需要的话可以自己搞。建议先把图片上传到又拍云等平台,拿回url再传到自己的服务器^_^'),(1528270188205,0,1528250827953,1527830474378,'2018-06-06 07:29:48','ds_1.Comment_1: 这个图片是怎么发出来的啊,我发动态就只是那两张默认图片'),(1528278187969,0,82001,470,'2018-06-06 09:43:07','ds_1.Comment_1: 啊啊啊啊'),(1528327885509,1528289580140,1528250827953,1528274037224,'2018-06-06 23:31:25','ds_1.Comment_1: 噢噢,没想到你能这么快回复,谢谢'),(1528393204569,1528270188205,38710,1527830474378,'2018-06-07 17:40:04','ds_1.Comment_1: 把接口里的pictureList的值改下,里面包含图片url'),(1528677257985,0,1528339692804,1528676875139,'2018-06-11 00:34:17','ds_1.Comment_1: aaa'),(1528799506317,1516805340593,82001,1513094436910,'2018-06-12 10:31:46','ds_1.Comment_1: 摩恩'),(1529730035521,0,82001,1527830331780,'2018-06-23 05:00:35','ds_1.Comment_1: 还有别的吗?'),(1531412238453,0,82001,1528356378455,'2018-07-12 16:17:18','ds_1.Comment_1: 去啊'),(1533187733941,0,82001,1508072633830,'2018-08-02 05:28:53','ds_1.Comment_1: 好好'),(1533202426013,1533186909764,82003,1531969818357,'2018-08-02 09:33:46','ds_1.Comment_1: world'),(1533629063261,0,82001,1531969818357,'2018-08-07 08:04:23','ds_1.Comment_1: 大鸡鸡'),(1533902902749,0,82001,1531969818357,'2018-08-10 12:08:22','ds_1.Comment_1: 性能还可以'),(1534053913157,1524190941111,1508072160401,1516086423441,'2018-08-12 06:05:13','ds_1.Comment_1: 怎么约?'),(1534412022857,0,82001,1531969818357,'2018-08-16 09:33:42','ds_1.Comment_1: dgf'),(1534684074665,1531983163150,82001,1531969818357,'2018-08-19 13:07:54','ds_1.Comment_1: ggggg'),(1536337000073,1516686985310,82001,1516086423441,'2018-09-07 16:16:40','ds_1.Comment_1: heh'),(1536805661269,0,70793,1536805585275,'2018-09-13 02:27:41','ds_1.Comment_1: 6s再战一年'),(1539868275645,1531887938362,82001,1531062713966,'2018-10-18 13:11:15','ds_1.Comment_1: 22222222222222222'),(1541496033857,0,82001,301,'2018-11-06 09:20:33','ds_1.Comment_1: 能解决'),(1546050386785,0,82001,1516086423441,'2018-12-29 02:26:26','ds_1.Comment_1: 不鸟你'),(1551430465241,1551430453424,82001,1553096819293,'2019-03-01 08:54:25','ds_1.Comment_1: 123'),(1551430485689,1551430453424,82001,1553096819293,'2019-03-01 08:54:45','ds_1.Comment_1: 品牌'),(1551683545557,1490863711703,82001,511,'2019-03-04 07:12:25','ds_1.Comment_1: 科技'),(1553053362233,1551430485689,82001,1553096819293,'2019-03-20 03:42:42','ds_1.Comment_1: 集合vyih'),(1554373282941,0,82001,543,'2019-04-04 10:21:22','ds_1.Comment_1: 。'),(1556953335513,0,82001,1556387217941,'2019-05-04 07:02:15','ds_1.Comment_1: 嘻嘻嘻'),(1556953340357,1556953335513,82001,1556387217941,'2019-05-04 07:02:20','ds_1.Comment_1: 额额额'),(1557754765785,0,70793,1557754680146,'2019-05-13 13:39:25','ds_1.Comment_1: 链接发下'),(1558440302601,0,82001,1557415707105,'2019-05-21 12:05:02','ds_1.Comment_1: 咔咔咔'),(1558440307225,0,82001,1557415707105,'2019-05-21 12:05:07','ds_1.Comment_1: i我看'),(1558440357141,1558440335644,82001,1557754680146,'2019-05-21 12:05:57','ds_1.Comment_1: 惊声尖叫额'),(1563688523833,0,82001,1563605336326,'2019-07-21 05:55:23','ds_1.Comment_1: 嗯嗯'),(1564493464049,0,82001,1557754680146,'2019-07-30 13:31:04','ds_1.Comment_1: 真牛逼'),(1566270974217,0,82001,1558798664043,'2019-08-20 03:16:14','ds_1.Comment_1: what'),(1570262731881,0,82001,1512314438990,'2019-10-05 08:05:31','ds_1.Comment_1: Ghhh'),(1570609944245,0,82001,704,'2019-10-09 08:32:24','ds_1.Comment_1: 呃呃呃'),(1571273540137,0,82001,543,'2019-10-17 00:52:20','ds_1.Comment_1: 太快了'),(1575518027953,0,82001,1572177746393,'2019-12-05 03:53:47','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1576678033649,1558440307225,82001,1557415707105,'2019-12-18 14:07:13','ds_1.Comment_1: 124'),(1589255358661,1491119695580,82001,371,'2020-05-12 03:49:18','ds_1.Comment_1: 好吃'),(1592119592201,0,82001,1516086423441,'2020-06-14 07:26:32','ds_1.Comment_1: 据记'),(1592119607109,1516687437251,82001,1516086423441,'2020-06-14 07:26:47','ds_1.Comment_1: 工厂'),(1594290735773,0,82001,371,'2020-07-09 10:32:15','ds_1.Comment_1: 哈哈'),(1594352357029,0,82001,1594127400223,'2020-07-10 03:39:17','ds_1.Comment_1: 换一个模拟器试试'),(1594462397453,0,82001,1594385349411,'2020-07-11 10:13:17','ds_1.Comment_1: uuu'),(1599054157165,1596209179840,82001,1583574596245,'2020-09-02 13:42:37','ds_1.Comment_1: 既解决'),(1605590426089,1592119592201,82001,1516086423441,'2020-11-17 05:20:26','ds_1.Comment_1: 讨论嘟嘟嘟特特特'),(1609774951037,0,82001,1493835799335,'2021-01-04 15:42:31','ds_1.Comment_1: Ffjfjkf'),(1611892629701,1611547274671,82001,1611503147421,'2021-01-29 03:57:09','ds_1.Comment_1: Test'),(1617550618501,0,82001,1611503147421,'2021-04-04 15:36:58','ds_1.Comment_1: 哈哈哈'),(1624275284477,0,82001,1572177746393,'2021-06-21 11:34:44','ds_1.Comment_1: 111'),(1624697881241,0,82001,1594385350586,'2021-06-26 08:58:01','ds_1.Comment_1: 华山卡'),(1625214509673,0,82001,12,'2021-07-02 08:28:29','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1626417070325,0,82001,1508053762227,'2021-07-16 06:31:10','ds_1.Comment_1: Vnn'),(1629102895605,0,82001,12,'2021-08-16 08:34:55','ds_1.Comment_1: test'),(1629102906693,0,82001,12,'2021-08-16 08:35:06','ds_1.Comment_1: test'),(1631761271589,0,82001,1553096819293,'2021-09-16 03:01:11','ds_1.Comment_1: 555555'),(1631761290317,0,82001,1535781636403,'2021-09-16 03:01:30','ds_1.Comment_1: 哈哈'),(1631761345493,0,82001,1512314438990,'2021-09-16 03:02:25','ds_1.Comment_1: hhhhh'),(1631761390009,0,82001,551,'2021-09-16 03:03:10','ds_1.Comment_1: $$'),(1631761397009,0,82001,12,'2021-09-16 03:03:17','ds_1.Comment_1: 123'),(1631761397393,0,82001,1558798664043,'2021-09-16 03:03:17','ds_1.Comment_1: 124'),(1631761397649,0,82001,371,'2021-09-16 03:03:17','ds_1.Comment_1: 1646'),(1631761398865,0,82001,1528462217322,'2021-09-16 03:03:18','ds_1.Comment_1: 666'),(1631761410153,0,82001,301,'2021-09-16 03:03:30','ds_1.Comment_1: 3423423423'),(1631761410569,0,82001,1611503147421,'2021-09-16 03:03:30','ds_1.Comment_1: 82001ejej'),(1631761411209,0,82001,1531062713966,'2021-09-16 03:03:31','ds_1.Comment_1: 123121545645'),(1631761411849,0,82001,12,'2021-09-16 03:03:31','ds_1.Comment_1: 555555'),(1631761412361,0,82001,301,'2021-09-16 03:03:32','ds_1.Comment_1: 111'),(1631761413857,0,82001,1531969818357,'2021-09-16 03:03:33','ds_1.Comment_1: 3333'),(1631761414841,0,82001,1513094436910,'2021-09-16 03:03:34','ds_1.Comment_1: 123121545645'),(1631761416361,0,82001,1531969818357,'2021-09-16 03:03:36','ds_1.Comment_1: 444444'),(1631761417441,0,82001,1513094436910,'2021-09-16 03:03:37','ds_1.Comment_1: 222'),(1631761417781,0,82001,1513094436910,'2021-09-16 03:03:37','ds_1.Comment_1: 434'),(1631761417945,0,82001,1617562878095,'2021-09-16 03:03:37','ds_1.Comment_1: 555555555'),(1631761418125,0,82001,58,'2021-09-16 03:03:38','ds_1.Comment_1: 1'),(1631761418945,0,82001,32,'2021-09-16 03:03:38','ds_1.Comment_1: 3条重复的'),(1631761433633,0,82001,12,'2021-09-16 03:03:53','ds_1.Comment_1: 1'),(1631761439061,0,82001,1516086423441,'2021-09-16 03:03:59','ds_1.Comment_1: 1'),(1631761439473,0,82001,12,'2021-09-16 03:03:59','ds_1.Comment_1: 111'),(1631761440161,0,82001,1594127400223,'2021-09-16 03:04:00','ds_1.Comment_1: 123'),(1631761440541,0,82001,12,'2021-09-16 03:04:00','ds_1.Comment_1: 1646'),(1631761441817,0,82001,1557415707105,'2021-09-16 03:04:01','ds_1.Comment_1: 123121545645'),(1631761442305,0,82001,1513094436910,'2021-09-16 03:04:02','ds_1.Comment_1: 00'),(1631761444713,0,82001,1524178455305,'2021-09-16 03:04:04','ds_1.Comment_1: $$'),(1631761445929,0,82001,1516086423441,'2021-09-16 03:04:05','ds_1.Comment_1: 123121545645'),(1631761446849,0,82001,511,'2021-09-16 03:04:06','ds_1.Comment_1: 110'),(1631761447937,0,82001,58,'2021-09-16 03:04:07','ds_1.Comment_1: (fdsd)'),(1631761454057,0,82001,1512314438990,'2021-09-16 03:04:14','ds_1.Comment_1: $$'),(1631761454625,0,82001,543,'2021-09-16 03:04:14','ds_1.Comment_1: (fdsd)'),(1631761454817,0,82001,1557754680146,'2021-09-16 03:04:14','ds_1.Comment_1: -162'),(1631761455589,0,82001,1531969818357,'2021-09-16 03:04:15','ds_1.Comment_1: 1'),(1631761455929,0,82001,1516086423441,'2021-09-16 03:04:15','ds_1.Comment_1: 111'),(1631761456265,0,82001,1513094436910,'2021-09-16 03:04:16','ds_1.Comment_1: 111'),(1631761458221,0,82001,371,'2021-09-16 03:04:18','ds_1.Comment_1: 1'),(1631761459665,0,82001,371,'2021-09-16 03:04:19','ds_1.Comment_1: $$'),(1631761459965,0,82001,1512314438990,'2021-09-16 03:04:19','ds_1.Comment_1: ,王者荣耀'),(1631761460153,0,82001,543,'2021-09-16 03:04:20','ds_1.Comment_1: -162'),(1637305836417,0,82001,1594127400223,'2021-11-19 07:10:36','ds_1.Comment_1: (fdsd)'),(1639101116341,0,82001,1638327674898,'2021-12-10 01:51:56','ds_1.Comment_1: 546411'),(1639386666589,0,82001,1638327674898,'2021-12-13 09:11:06','ds_1.Comment_1: 搞不好'),(1639386674965,1639386671675,82001,1638327674898,'2021-12-13 09:11:14','ds_1.Comment_1: 抱抱你'),(1639449630593,0,82001,1638327674898,'2021-12-14 02:40:30','ds_1.Comment_1: 大概就是感觉分手就分手'),(1639449633733,0,82001,1638327674898,'2021-12-14 02:40:33','ds_1.Comment_1: 财政局干啥干啥就是贵公司'),(1639455622365,1639449637290,82001,1638327674898,'2021-12-14 04:20:22','ds_1.Comment_1: 和不不不不'),(1645290759533,0,82001,1638327674898,'2022-02-19 17:12:39','ds_1.Comment_1: g'),(1645497835569,0,82001,1645416338268,'2022-02-22 02:43:55','ds_1.Comment_1: 456'),(1645678658757,0,82001,1645416338268,'2022-02-24 04:57:38','ds_1.Comment_1: 厉害了'),(1645678666889,1645678658757,82001,1645416338268,'2022-02-24 04:57:46','ds_1.Comment_1: 刚刚'),(1646123831361,0,82001,1645416338268,'2022-03-01 08:37:11','ds_1.Comment_1: 啃你'),(1648697303481,0,82001,12,'2022-03-31 03:28:23','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1648697310625,0,82001,12,'2022-03-31 03:28:30','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1648716225389,1648716219295,82001,1648604448242,'2022-03-31 08:43:45','ds_1.Comment_1: 1212'),(1650022311005,0,82001,1649086185746,'2022-04-15 11:31:51','ds_1.Comment_1: 寂寞'),(1650022318825,0,82001,1649086185746,'2022-04-15 11:31:58','ds_1.Comment_1: 明年'),(1650786597757,0,82001,1649086185746,'2022-04-24 07:49:57','ds_1.Comment_1: 你好'),(1651717773049,0,82001,12,'2022-05-05 02:29:33','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1657618548589,0,82001,12,'2022-07-12 09:35:48','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1659423914365,1638631329728,82001,1637985952844,'2022-08-02 07:05:14','ds_1.Comment_1: wdd'),(1660616987885,0,82001,12,'2022-08-16 02:29:47','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1666604060829,0,82003,12,'2022-10-24 09:34:20','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1667605291185,1652796392746,82001,1651846337935,'2022-11-04 23:41:31','ds_1.Comment_1: 1'),(1671437056133,0,82001,1649672357944,'2022-12-19 08:04:16','ds_1.Comment_1: sssccccccc'),(1671437066189,0,82001,1649672357944,'2022-12-19 08:04:26','ds_1.Comment_1: sssccccccc'),(1675395998069,0,82001,1674308870813,'2023-02-03 03:46:38','ds_1.Comment_1: tff'),(1675676416033,1639556974079,82001,1637985952844,'2023-02-06 09:40:16','ds_1.Comment_1: 1234'),(1675762580073,1630891147547,82001,1630746489563,'2023-02-07 09:36:20','ds_1.Comment_1: 222'),(1676271716321,0,82001,1675742375160,'2023-02-13 07:01:56','ds_1.Comment_1: 333'),(1678959296341,0,82003,12,'2023-03-16 09:34:56','ds_1.Comment_1: APIJSON'),(1680320444497,0,82001,1677223327076,'2023-04-01 03:40:44','ds_1.Comment_1: 灌灌灌灌'),(1681710737853,0,82002,1679908549702,'2023-04-17 05:52:17','ds_1.Comment_1: gjbgh'),(1681999075961,0,82001,470,'2023-04-20 13:57:55','ds_1.Comment_1: ffff'),(1681999171521,0,82001,470,'2023-04-20 13:59:31','ds_1.Comment_1: ffff'),(1682000985545,0,82001,470,'2023-04-20 14:29:45','ds_1.Comment_1: xdddddd'),(1683353882473,0,82001,142,'2023-05-06 06:18:02','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683353886837,0,82001,142,'2023-05-06 06:18:06','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683354577541,0,82001,144,'2023-05-06 06:29:37','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683355604325,0,82001,12,'2023-05-06 06:46:44','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1684140534961,0,82001,12,'2023-05-15 08:48:55','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1685617635685,0,82001,1665293930441,'2023-06-01 11:07:15','ds_1.Comment_1: 5464646'),(1685617655797,0,82001,1665293930441,'2023-06-01 11:07:35','ds_1.Comment_1: 5464646'),(1686196352285,0,82001,1682103762126,'2023-06-08 03:52:32','ds_1.Comment_1: 5666'),(1686303797185,0,82001,1645416338268,'2023-06-09 09:43:17','ds_1.Comment_1: 哦咯模棱两可'),(1686328128073,0,82001,1645416338268,'2023-06-09 16:28:48','ds_1.Comment_1: 牛逼'),(1686710639953,0,82001,1684981561371,'2023-06-14 02:43:59','ds_1.Comment_1: ?'),(1686710650057,0,82001,1684981561371,'2023-06-14 02:44:10','ds_1.Comment_1: ?'),(1686897854569,0,82001,1684981561371,'2023-06-16 06:44:14','ds_1.Comment_1: mood'),(1686897874733,0,82001,1684981561371,'2023-06-16 06:44:34','ds_1.Comment_1: mood'),(1686897894829,0,82001,1684981561371,'2023-06-16 06:44:54','ds_1.Comment_1: mood'),(1686897904885,0,82001,1684981561371,'2023-06-16 06:45:04','ds_1.Comment_1: mood'),(1693680555321,0,82001,235,'2023-09-02 18:49:15','ds_1.Comment_1: Ab_Cd4426623868886511'),(1693680555325,0,82002,401,'2023-09-04 06:11:58','ds_1.Comment_1: Ab_Cd-2186617588410572'),(1693680555337,0,82004,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd6203800719877287'),(1693680555341,0,82009,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd-7313973027522679'),(1693680555345,0,82001,401,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd7237422506126807'),(1693680555353,0,82001,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd6294670593907367'),(1693680555357,0,82005,401,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd6999788992225395'),(1693680555361,0,82009,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd-386791421830424'),(1693680555369,0,82007,12,'2023-09-04 06:11:59','ds_1.Comment_1: Ab_Cd-4315325886904'),(1695808012765,0,82001,12,'2023-09-27 09:46:52','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1697115622725,0,82001,1,'2023-10-12 13:00:22','ds_1.Comment_1: 1'),(1698723301949,0,82002,12,'2023-10-31 03:35:02','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1700488670273,0,82002,1700372077715,'2023-11-20 13:57:50','ds_1.Comment_1: test'),(1700488850297,0,82002,1700488719094,'2023-11-20 14:00:50','ds_1.Comment_1: test'),(1701153067449,0,82001,12,'2023-11-28 06:31:07','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1701661625917,0,82001,12,'2023-12-04 03:47:05','ds_1.Comment_1: 测试1111'),(1701676438353,0,82002,666666,'2023-12-04 07:53:58','ds_1.Comment_1: 这是新建 !'),(1701676438401,0,82002,88888888,'2023-12-04 07:53:58','ds_1.Comment_1: 这是新建 !'),(1701677681717,0,82002,12,'2023-12-04 08:14:41','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1702401213373,0,82007,401,'2023-12-13 10:02:05','ds_1.Comment_1: Ab_Cd-4225572075990508'),(1702401213381,0,82004,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd6373722079198439'),(1702401213389,0,82010,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd2988679823594555'),(1702401213397,0,82009,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd-3632240841909172'),(1702401213401,0,82002,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd-2170731090025816'),(1702401213405,0,82009,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd269140865411543'),(1702401213409,0,82001,12,'2023-12-13 10:02:06','ds_1.Comment_1: Ab_Cd4852681634615031'),(1702401213417,0,82009,401,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-350368370475472'),(1702401213421,0,82005,12,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd3119145138660639'),(1702401213425,0,82008,401,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-1827902215893684'),(1702401213429,0,82002,401,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-6315333086151784'),(1702401213437,0,82009,12,'2023-12-13 10:02:07','ds_1.Comment_1: Ab_Cd-7802139111814783'),(1702401213445,0,82007,401,'2023-12-13 10:02:08','ds_1.Comment_1: Ab_Cd-5115620335352312'),(1702401213461,0,82005,12,'2023-12-13 10:02:08','ds_1.Comment_1: Ab_Cd2243993689411583'),(1702401213473,0,82006,401,'2023-12-13 10:02:39','ds_1.Comment_1: Ab_Cd-4734672872211368'),(1702401213481,0,82005,401,'2023-12-13 10:02:39','ds_1.Comment_1: Ab_Cd2098233721074687'),(1702401213489,0,82009,401,'2023-12-13 10:02:39','ds_1.Comment_1: Ab_Cd1198887753628367'),(1702401213497,0,82005,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd8789538862152891'),(1702401213501,0,82004,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd-702044903466940'),(1702401213521,0,82005,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd7241299919300251'),(1702401213525,0,82007,12,'2023-12-13 10:02:40','ds_1.Comment_1: Ab_Cd-1953719130947616'),(1702401213533,0,82003,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd4838654061396323'),(1702401213537,0,82008,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd5161976574809799'),(1702401213541,0,82002,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd-598365248638636'),(1702401213549,0,82009,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd2272851398768027'),(1702401213561,0,82001,12,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd95863935516583'),(1702401213569,0,82010,401,'2023-12-13 10:02:41','ds_1.Comment_1: Ab_Cd-4317357036955636'),(1704439979409,0,82001,1703425198937,'2024-01-05 07:32:59','ds_1.Comment_1: 牛逼'),(1705974277629,1680742650703,82001,1680494769487,'2024-01-23 01:44:37','ds_1.Comment_1: ggv'),(1708565424757,0,82001,1693680292080,'2024-02-22 01:30:24','ds_1.Comment_1: 222'),(1708916797305,0,82002,15,'2024-02-26 03:06:37','ds_1.Comment_1: 测试新增评论'),(1708929594961,0,82001,1693680292080,'2024-02-26 06:39:54','ds_1.Comment_1: 1111'),(1709020162497,0,82001,1690970599784,'2024-02-27 07:49:22','ds_1.Comment_1: cmmc'),(1709022349529,0,82002,15,'2024-02-27 08:25:49','ds_1.Comment_1: 测试新增评论'),(1709022696285,0,88888,15,'2024-02-27 08:31:36','ds_1.Comment_1: 测试新增评论'),(1709178281285,0,82002,15,'2024-02-29 03:44:41','ds_1.Comment_1: 测试新增评论'),(1709273218365,0,82001,15,'2024-03-01 06:06:58','ds_1.Comment_1: 测试新增评论'),(1709277353041,0,82003,15,'2024-03-01 07:15:53','ds_1.Comment_1: 测试新增评论'),(1709278973645,0,88888,15,'2024-03-01 07:42:53','ds_1.Comment_1: 测试新增评论'),(1709285310765,0,82001,15,'2024-03-01 09:28:30','ds_1.Comment_1: 测试新增评论'),(1709629786697,0,82001,15,'2024-03-05 09:09:46','ds_1.Comment_1: 测试新增评论'),(1709632979285,0,82003,15,'2024-03-05 10:02:59','ds_1.Comment_1: 测试新增评论'),(1709785630273,0,82002,15,'2024-03-07 04:27:10','ds_1.Comment_1: 测试新增评论'),(1709813932965,0,88888,15,'2024-03-07 12:18:53','ds_1.Comment_1: 测试新增评论'),(1709975144529,1584336841458,82003,1583574596245,'2024-03-09 09:05:44','ds_1.Comment_1: hhh'),(1709975284389,1626428214932,82003,1619511861462,'2024-03-09 09:08:04','ds_1.Comment_1: ok'),(1710338148649,0,82001,1685592384514,'2024-03-13 13:55:48','ds_1.Comment_1: hello'),(1710488594505,1710337723054,82001,1710233170301,'2024-03-15 07:43:14','ds_1.Comment_1: 你个'),(1711433950209,0,82001,15,'2024-03-26 06:19:10','ds_1.Comment_1: 测试新增评论'),(1711961505969,0,82001,1710746917236,'2024-04-01 08:51:45','ds_1.Comment_1: 宝宝'),(1712644302113,1709020162497,82001,1690970599784,'2024-04-09 06:31:42','ds_1.Comment_1: 现在想想'),(1713955538785,0,82003,12,'2024-04-24 10:45:38','ds_1.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1714048094805,0,82003,15,'2024-04-25 12:28:14','ds_1.Comment_1: 测试新增评论'),(1714048096613,0,82003,15,'2024-04-25 12:28:16','ds_1.Comment_1: 测试新增评论'),(1714048097493,0,82003,15,'2024-04-25 12:28:17','ds_1.Comment_1: 测试新增评论'),(1717862858501,0,82001,1717757679298,'2024-06-08 16:07:38','ds_1.Comment_1: 测试新增评论'),(1738597750659,0,82002,15,'2025-02-03 15:49:10','test post comment 3'); /*!40000 ALTER TABLE `Comment_1` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; @@ -56,4 +56,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-02-03 23:27:30 +-- Dump completed on 2025-02-03 23:54:00 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_0.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_0.sql index 936529e..af66175 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_0.sql +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_0.sql @@ -32,7 +32,7 @@ CREATE TABLE `Moment_0` ( PRIMARY KEY (`id`), KEY `userId` (`userId`,`date`), KEY `index_date` (`date`) -) ENGINE=InnoDB AUTO_INCREMENT=1717862890827 DEFAULT CHARSET=utf8mb3 COMMENT='动态'; +) ENGINE=InnoDB AUTO_INCREMENT=1738597944346 DEFAULT CHARSET=utf8mb3 COMMENT='动态'; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -41,7 +41,7 @@ CREATE TABLE `Moment_0` ( LOCK TABLES `Moment_0` WRITE; /*!40000 ALTER TABLE `Moment_0` DISABLE KEYS */; -INSERT INTO `Moment_0` VALUES (12,70793,'2017-02-08 08:06:11','Moment_0: APIJSON,let interfaces and documents go to hell !','[70793, 93793, 82044, 82040, 82055, 90814, 38710, 82002, 82006, 1508072105320, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/788c0a7e11a4f5aadef3c886f028c79b4808613a/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343932353935372d313732303737333630382e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\"]'),(32,82002,'2017-02-08 08:06:11','Moment_0: tst','[38710, 82001, 82005]','[\"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg\"]'),(58,90814,'2017-02-01 11:14:31','Moment_0: This is a Content...-435','[38710, 82003, 82005, 93793, 82006, 82044, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\"]'),(170,70793,'2017-02-01 11:14:31','Moment_0: This is a Content...-73','[82044, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg\"]'),(470,38710,'2017-02-01 11:14:31','Moment_0: This is a Content...-470','[]','[\"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\"]'),(704,38710,'2017-03-12 09:39:44','Moment_0: APIJSON is a JSON Transmission Structure Protocol…','[82003, 82002, 82001]','[\"https://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000\", \"https://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000\"]'),(1491200468898,38710,'2017-04-03 06:21:08','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000\", \"https://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000\"]'),(1508072491570,82002,'2017-10-15 13:01:31','Moment_0: 有点冷~','[82001, 82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1508072633830,93793,'2017-10-15 13:03:53','Moment_0: 天凉了\n有男朋友的抱男盆友\n有女朋友的抱女朋友\n而我就比较牛逼了\n我不冷。','[82005, 82002, 70793, 38710, 82045, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1512314438990,38710,'2017-12-03 15:20:38','Moment_0: APIJSON iOS-Swift版发布,自动生成请求代码,欢迎使用^_^ \n https://github.com/TommyLemon/APIJSON','[82002, 70793, 1512531601485, 82001]','[\"https://images2018.cnblogs.com/blog/660067/201712/660067-20171203231829476-1202860128.jpg\"]'),(1513094436910,38710,'2017-12-12 16:00:36','Moment_0: APIJSON-Python已发布,欢迎体验^_^\nhttps://github.com/TommyLemon/APIJSON','[82005, 82001]','[\"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_get.jpg\", \"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_code.jpg\", \"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_doc.jpg\"]'),(1514858533480,82056,'2018-01-02 02:02:13','Moment_0: I am the Iron Man','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1523935589834,1523626157302,'2018-04-17 03:26:29','Moment_0: by第一条动态','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1523936332614,1523626157302,'2018-04-17 03:38:52','Moment_0: by第二条','[82001, 1523935772553]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524298780222,1524298730523,'2018-04-21 08:19:40','Moment_0: e说点什么吧~','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524826652626,1524298730523,'2018-04-27 10:57:32','Moment_0: 说点什么吧~哈哈哈','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1527498273102,1527498229991,'2018-05-28 09:04:33','Moment_0: 说点什么吧~yui','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1527821296110,1527495857924,'2018-06-01 02:48:16','Moment_0: 这是我的商品1号','[1527821445610, 82003, 82001]','[\"http://pic31.nipic.com/20130710/13151003_093759013311_2.jpg\", \"https://cbu01.alicdn.com/img/ibank/2013/514/580/740085415_2101098104.310x310.jpg\"]'),(1527830331780,1527495857924,'2018-06-01 05:18:51','Moment_0: 各种购物袋','[38710, 82002, 1527495857924, 82003]','[\"https://cbu01.alicdn.com/img/ibank/2018/292/335/8058533292_57202994.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2018/089/747/8586747980_1843977904.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2016/025/123/3012321520_471514049.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2017/729/995/4800599927_69233977.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2016/377/263/3755362773_609022431.310x310.jpg\"]'),(1527830474378,1527495857924,'2018-06-01 05:21:14','Moment_0: 电视机','[1527495857924, 82001]','[\"https://cbu01.alicdn.com/img/ibank/2017/231/077/4524770132_781046171.310x310.jpg\"]'),(1528251335464,1528250827953,'2018-06-06 02:15:35','Moment_0: meiyou','[1528250827953]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528260617722,1528255497767,'2018-06-06 04:50:17','Moment_0: 。。。。','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528269822710,1528264711016,'2018-06-06 07:23:42','Moment_0: hhhhhhh','[1528250827953, 82001, 82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528269988360,1528250827953,'2018-06-06 07:26:28','Moment_0: 为什么发动态默认会有这两张图片啊?不可以选择自己的图片','[1528250827953]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528274037224,1528250827953,'2018-06-06 08:33:57','Moment_0: 说点什么吧~hgdsryh','[]','[\"https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=0&spn=0&di=163958046450&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=1403824732%2C1921310327&os=1571651475%2C3950546936&simid=3426978648%2C550887139&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fooo_z%26e3Botg9aaa_z%26e3Bv54AzdH3Fowssrwrj6_kt2_88an88_8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=\", \"https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=12&spn=0&di=105575240210&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=832573604%2C2847830718&os=1862795828%2C1682403963&simid=4268934412%2C608274877&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fkkf_z%26e3Bfzi54j_z%26e3Bv54AzdH3Fna-ccbaa-1jpwts-d90cd8ll-a-8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=\"]'),(1528462217322,1528339692804,'2018-06-08 12:50:17','Moment_0: 有没有小姐姐准备端午出游的?\n地点:北戴河','[]','[\"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg\", \"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg\"]'),(1531062713966,82002,'2018-07-08 15:11:53','Moment_0: 云南好美啊( ◞˟૩˟)◞','[82001, 82005, 38710, 70793, 93793, 82003, 1531969715979]','[\"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg\", \"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg\"]'),(1533908589726,1533835176109,'2018-08-10 13:43:09','Moment_0: 我的','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1541557989440,38710,'2018-11-07 02:33:09','Moment_0: 自动化接口和文档 APIJSON 3.0.0 发布\nhttps://www.oschina.net/news/101548/apijson-3-0-released','[82001]','[\"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Auto_get.jpg\"]'),(1557754680146,82012,'2019-05-13 13:38:00','Moment_0: 马云:工作上要有996的精神,生活上要669,也就是6天6次关键要“久”。大家怎么看?','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1559129731896,1559129626356,'2019-05-29 11:35:31','Moment_0: xfshter','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1563605336326,1563605318975,'2019-07-20 06:48:56','Moment_0: 说点什么吧~死','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1568087960412,70793,'2019-09-10 03:59:20','Moment_0: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1594385350586,82003,'2020-07-10 12:49:10','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1606312076474,82002,'2020-11-25 13:47:56',NULL,'[82001]','[]'),(1608215822376,82003,'2020-12-17 14:37:02','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1619511861462,82003,'2021-04-27 08:24:21','Moment_0: 对象关系映射- 维基百科,自由的百科全书','[82003, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1624700434072,82002,'2021-06-26 09:40:34','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1627367646018,70793,'2021-07-27 06:34:06','Moment_0: 什么玩意啊!数据呢!','[]','[]'),(1630892587084,82001,'2021-09-06 01:43:07','Moment_0: \"你OK里咯ing3123123\"gjh','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630893108502,82001,'2021-09-06 01:51:48','Moment_0: \"\"55982\"\"','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630894539008,82001,'2021-09-06 02:15:39','Moment_0: \"说点什么吧~12\"','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630980585686,82001,'2021-09-07 02:09:45','Moment_0: 说点什么吧~;;;;','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1632294230574,82003,'2021-09-22 07:03:50','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001, 82003]','[]'),(1637590638534,82004,'2021-11-22 14:17:18','Moment_0: APIJSON,let interfaces and documents go to hell !','[82002]','[]'),(1637985952844,82001,'2021-11-27 04:05:52','Moment_0: 111','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1638327674898,82002,'2021-12-01 03:01:14','Moment_0: 海洋动物数量减少,如果非吃不可,不点杀也是在保护它们','[82001]','[]'),(1645416338268,82005,'2022-02-21 04:05:38','Moment_0: 说点什么吧~嘤嘤嘤','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1646030604412,38710,'2022-02-28 06:43:24','Moment_0: 今天天气不错,到处都是提拉米苏雪','[38710]','[]'),(1647781303020,82003,'2022-03-20 13:01:43','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1648604448242,82002,'2022-03-30 01:40:48','Moment_0: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1649086182892,82002,'2022-04-04 15:29:42','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1649086185746,82003,'2022-04-04 15:29:45','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1649672357944,82001,'2022-04-11 10:19:17','Moment_0: 今天天气真好','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1661002561890,1660645570787,'2022-08-20 13:36:01','Moment_0: 老铁双击888!','[]','[]'),(1670981809240,82001,'2022-12-14 01:36:49','Moment_0: 今天是2022年12月14日,zyy在这里测试!','[]','[]'),(1675742375160,82001,'2023-02-07 03:59:35','Moment_0: 测试看看','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1675910359578,82001,'2023-02-09 02:39:19','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677051490546,82001,'2023-02-22 07:38:10','Moment_0: 说点什么吧~哈哈V大夫才发货呢','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677051517418,82001,'2023-02-22 07:38:37','Moment_0: 说点什么吧~444个重复过程','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677223327076,82001,'2023-02-24 07:22:07','Moment_0: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1678877778484,82001,'2023-03-15 10:56:18','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679078499770,82001,'2023-03-17 18:41:39','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679313363196,82001,'2023-03-20 11:56:03','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679908549702,82002,'2023-03-27 09:15:49','Moment_0: APIJSON,let interfaces and documents go to hell !','[82002]','[]'),(1682103762126,82002,'2023-04-21 19:02:42','Moment_0: 55555','[82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682137190808,38710,'2023-04-22 04:19:50','Moment_0: 555','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682406888196,82001,'2023-04-25 07:14:48','Moment_0: gjhtest10087','[]','[]'),(1682783909204,82001,'2023-04-29 15:58:29','Moment_0: 说点什么吧~哈喽','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1684979928084,82001,'2023-05-25 01:58:48','Moment_0: test01','[82001]','[]'),(1684980965206,82001,'2023-05-25 02:16:05','Moment_0: Test of 0206','[]','[]'),(1684981222020,82001,'2023-05-25 02:20:22','Moment_0: test ctmd','[]','[]'),(1684981540478,82001,'2023-05-25 02:25:40','Moment_0: Test of 6838','[82001]','[]'),(1685592384514,82001,'2023-06-01 04:06:24','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1690970599784,82001,'2023-08-02 10:03:19','Moment_0: 说点什么吧~粑粑麻麻','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1692260707538,82002,'2023-08-17 08:25:07','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1693680292080,82001,'2023-09-02 18:44:53','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1700488719094,82002,'2023-11-20 13:58:39','Moment_0: 测试发动态','[82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1704175454868,82002,'2024-01-14 04:04:49','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1704175454870,82002,'2024-01-15 03:53:22','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1704175454874,1490109742863,'2024-01-15 04:22:47','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675844446,88888,'2024-01-19 14:50:44','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705675845904,82001,'2024-01-21 09:38:56','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705675845914,82002,'2024-01-22 04:13:41','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1714964371588,82001,'2024-05-06 02:59:31','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1715133130408,82001,'2024-05-08 01:52:10','Moment_0: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133150286,82001,'2024-05-08 01:52:30','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133174704,82001,'2024-05-08 01:52:54','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715221781960,82002,'2024-05-09 02:29:41','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1715222278578,82002,'2024-05-26 04:19:55','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1716706970370,38710,'2024-05-26 07:02:50','Moment_0: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1716707116336,82001,'2024-05-26 07:05:16','Moment_0: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717124655020,82002,'2024-05-31 03:04:15','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717468801248,82001,'2024-06-04 02:40:01','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717561747710,82001,'2024-06-05 04:29:07','Moment_0: 说点什么吧~1001','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717757679298,82001,'2024-06-07 10:54:39','Moment_0: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717862890826,38710,'2024-06-08 16:08:10','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'); +INSERT INTO `Moment_0` VALUES (12,70793,'2017-02-08 08:06:11','Moment_0: APIJSON,let interfaces and documents go to hell !','[70793, 93793, 82044, 82040, 82055, 90814, 38710, 82002, 82006, 1508072105320, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/788c0a7e11a4f5aadef3c886f028c79b4808613a/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343932353935372d313732303737333630382e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\"]'),(32,82002,'2017-02-08 08:06:11','Moment_0: tst','[38710, 82001, 82005]','[\"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg\"]'),(58,90814,'2017-02-01 11:14:31','Moment_0: This is a Content...-435','[38710, 82003, 82005, 93793, 82006, 82044, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\"]'),(170,70793,'2017-02-01 11:14:31','Moment_0: This is a Content...-73','[82044, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg\"]'),(470,38710,'2017-02-01 11:14:31','Moment_0: This is a Content...-470','[]','[\"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\"]'),(704,38710,'2017-03-12 09:39:44','Moment_0: APIJSON is a JSON Transmission Structure Protocol…','[82003, 82002, 82001]','[\"https://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000\", \"https://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000\"]'),(1491200468898,38710,'2017-04-03 06:21:08','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000\", \"https://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000\"]'),(1508072491570,82002,'2017-10-15 13:01:31','Moment_0: 有点冷~','[82001, 82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1508072633830,93793,'2017-10-15 13:03:53','Moment_0: 天凉了\n有男朋友的抱男盆友\n有女朋友的抱女朋友\n而我就比较牛逼了\n我不冷。','[82005, 82002, 70793, 38710, 82045, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1512314438990,38710,'2017-12-03 15:20:38','Moment_0: APIJSON iOS-Swift版发布,自动生成请求代码,欢迎使用^_^ \n https://github.com/TommyLemon/APIJSON','[82002, 70793, 1512531601485, 82001]','[\"https://images2018.cnblogs.com/blog/660067/201712/660067-20171203231829476-1202860128.jpg\"]'),(1513094436910,38710,'2017-12-12 16:00:36','Moment_0: APIJSON-Python已发布,欢迎体验^_^\nhttps://github.com/TommyLemon/APIJSON','[82005, 82001]','[\"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_get.jpg\", \"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_code.jpg\", \"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_doc.jpg\"]'),(1514858533480,82056,'2018-01-02 02:02:13','Moment_0: I am the Iron Man','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1523935589834,1523626157302,'2018-04-17 03:26:29','Moment_0: by第一条动态','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1523936332614,1523626157302,'2018-04-17 03:38:52','Moment_0: by第二条','[82001, 1523935772553]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524298780222,1524298730523,'2018-04-21 08:19:40','Moment_0: e说点什么吧~','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524826652626,1524298730523,'2018-04-27 10:57:32','Moment_0: 说点什么吧~哈哈哈','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1527498273102,1527498229991,'2018-05-28 09:04:33','Moment_0: 说点什么吧~yui','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1527821296110,1527495857924,'2018-06-01 02:48:16','Moment_0: 这是我的商品1号','[1527821445610, 82003, 82001]','[\"http://pic31.nipic.com/20130710/13151003_093759013311_2.jpg\", \"https://cbu01.alicdn.com/img/ibank/2013/514/580/740085415_2101098104.310x310.jpg\"]'),(1527830331780,1527495857924,'2018-06-01 05:18:51','Moment_0: 各种购物袋','[38710, 82002, 1527495857924, 82003]','[\"https://cbu01.alicdn.com/img/ibank/2018/292/335/8058533292_57202994.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2018/089/747/8586747980_1843977904.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2016/025/123/3012321520_471514049.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2017/729/995/4800599927_69233977.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2016/377/263/3755362773_609022431.310x310.jpg\"]'),(1527830474378,1527495857924,'2018-06-01 05:21:14','Moment_0: 电视机','[1527495857924, 82001]','[\"https://cbu01.alicdn.com/img/ibank/2017/231/077/4524770132_781046171.310x310.jpg\"]'),(1528251335464,1528250827953,'2018-06-06 02:15:35','Moment_0: meiyou','[1528250827953]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528260617722,1528255497767,'2018-06-06 04:50:17','Moment_0: 。。。。','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528269822710,1528264711016,'2018-06-06 07:23:42','Moment_0: hhhhhhh','[1528250827953, 82001, 82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528269988360,1528250827953,'2018-06-06 07:26:28','Moment_0: 为什么发动态默认会有这两张图片啊?不可以选择自己的图片','[1528250827953]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528274037224,1528250827953,'2018-06-06 08:33:57','Moment_0: 说点什么吧~hgdsryh','[]','[\"https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=0&spn=0&di=163958046450&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=1403824732%2C1921310327&os=1571651475%2C3950546936&simid=3426978648%2C550887139&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fooo_z%26e3Botg9aaa_z%26e3Bv54AzdH3Fowssrwrj6_kt2_88an88_8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=\", \"https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=12&spn=0&di=105575240210&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=832573604%2C2847830718&os=1862795828%2C1682403963&simid=4268934412%2C608274877&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fkkf_z%26e3Bfzi54j_z%26e3Bv54AzdH3Fna-ccbaa-1jpwts-d90cd8ll-a-8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=\"]'),(1528462217322,1528339692804,'2018-06-08 12:50:17','Moment_0: 有没有小姐姐准备端午出游的?\n地点:北戴河','[]','[\"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg\", \"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg\"]'),(1531062713966,82002,'2018-07-08 15:11:53','Moment_0: 云南好美啊( ◞˟૩˟)◞','[82001, 82005, 38710, 70793, 93793, 82003, 1531969715979]','[\"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg\", \"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg\"]'),(1533908589726,1533835176109,'2018-08-10 13:43:09','Moment_0: 我的','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1541557989440,38710,'2018-11-07 02:33:09','Moment_0: 自动化接口和文档 APIJSON 3.0.0 发布\nhttps://www.oschina.net/news/101548/apijson-3-0-released','[82001]','[\"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Auto_get.jpg\"]'),(1557754680146,82012,'2019-05-13 13:38:00','Moment_0: 马云:工作上要有996的精神,生活上要669,也就是6天6次关键要“久”。大家怎么看?','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1559129731896,1559129626356,'2019-05-29 11:35:31','Moment_0: xfshter','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1563605336326,1563605318975,'2019-07-20 06:48:56','Moment_0: 说点什么吧~死','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1568087960412,70793,'2019-09-10 03:59:20','Moment_0: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1594385350586,82003,'2020-07-10 12:49:10','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1606312076474,82002,'2020-11-25 13:47:56',NULL,'[82001]','[]'),(1608215822376,82003,'2020-12-17 14:37:02','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1619511861462,82003,'2021-04-27 08:24:21','Moment_0: 对象关系映射- 维基百科,自由的百科全书','[82003, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1624700434072,82002,'2021-06-26 09:40:34','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1627367646018,70793,'2021-07-27 06:34:06','Moment_0: 什么玩意啊!数据呢!','[]','[]'),(1630892587084,82001,'2021-09-06 01:43:07','Moment_0: \"你OK里咯ing3123123\"gjh','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630893108502,82001,'2021-09-06 01:51:48','Moment_0: \"\"55982\"\"','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630894539008,82001,'2021-09-06 02:15:39','Moment_0: \"说点什么吧~12\"','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630980585686,82001,'2021-09-07 02:09:45','Moment_0: 说点什么吧~;;;;','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1632294230574,82003,'2021-09-22 07:03:50','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001, 82003]','[]'),(1637590638534,82004,'2021-11-22 14:17:18','Moment_0: APIJSON,let interfaces and documents go to hell !','[82002]','[]'),(1637985952844,82001,'2021-11-27 04:05:52','Moment_0: 111','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1638327674898,82002,'2021-12-01 03:01:14','Moment_0: 海洋动物数量减少,如果非吃不可,不点杀也是在保护它们','[82001]','[]'),(1645416338268,82005,'2022-02-21 04:05:38','Moment_0: 说点什么吧~嘤嘤嘤','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1646030604412,38710,'2022-02-28 06:43:24','Moment_0: 今天天气不错,到处都是提拉米苏雪','[38710]','[]'),(1647781303020,82003,'2022-03-20 13:01:43','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1648604448242,82002,'2022-03-30 01:40:48','Moment_0: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1649086182892,82002,'2022-04-04 15:29:42','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1649086185746,82003,'2022-04-04 15:29:45','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1649672357944,82001,'2022-04-11 10:19:17','Moment_0: 今天天气真好','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1661002561890,1660645570787,'2022-08-20 13:36:01','Moment_0: 老铁双击888!','[]','[]'),(1670981809240,82001,'2022-12-14 01:36:49','Moment_0: 今天是2022年12月14日,zyy在这里测试!','[]','[]'),(1675742375160,82001,'2023-02-07 03:59:35','Moment_0: 测试看看','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1675910359578,82001,'2023-02-09 02:39:19','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677051490546,82001,'2023-02-22 07:38:10','Moment_0: 说点什么吧~哈哈V大夫才发货呢','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677051517418,82001,'2023-02-22 07:38:37','Moment_0: 说点什么吧~444个重复过程','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677223327076,82001,'2023-02-24 07:22:07','Moment_0: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1678877778484,82001,'2023-03-15 10:56:18','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679078499770,82001,'2023-03-17 18:41:39','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679313363196,82001,'2023-03-20 11:56:03','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679908549702,82002,'2023-03-27 09:15:49','Moment_0: APIJSON,let interfaces and documents go to hell !','[82002]','[]'),(1682103762126,82002,'2023-04-21 19:02:42','Moment_0: 55555','[82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682137190808,38710,'2023-04-22 04:19:50','Moment_0: 555','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682406888196,82001,'2023-04-25 07:14:48','Moment_0: gjhtest10087','[]','[]'),(1682783909204,82001,'2023-04-29 15:58:29','Moment_0: 说点什么吧~哈喽','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1684979928084,82001,'2023-05-25 01:58:48','Moment_0: test01','[82001]','[]'),(1684980965206,82001,'2023-05-25 02:16:05','Moment_0: Test of 0206','[]','[]'),(1684981222020,82001,'2023-05-25 02:20:22','Moment_0: test ctmd','[]','[]'),(1684981540478,82001,'2023-05-25 02:25:40','Moment_0: Test of 6838','[82001]','[]'),(1685592384514,82001,'2023-06-01 04:06:24','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1690970599784,82001,'2023-08-02 10:03:19','Moment_0: 说点什么吧~粑粑麻麻','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1692260707538,82002,'2023-08-17 08:25:07','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1693680292080,82001,'2023-09-02 18:44:53','Moment_0: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1700488719094,82002,'2023-11-20 13:58:39','Moment_0: 测试发动态','[82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1704175454868,82002,'2024-01-14 04:04:49','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1704175454870,82002,'2024-01-15 03:53:22','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1704175454874,1490109742863,'2024-01-15 04:22:47','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675844446,88888,'2024-01-19 14:50:44','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705675845904,82001,'2024-01-21 09:38:56','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705675845914,82002,'2024-01-22 04:13:41','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1714964371588,82001,'2024-05-06 02:59:31','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1715133130408,82001,'2024-05-08 01:52:10','Moment_0: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133150286,82001,'2024-05-08 01:52:30','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133174704,82001,'2024-05-08 01:52:54','Moment_0: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715221781960,82002,'2024-05-09 02:29:41','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1715222278578,82002,'2024-05-26 04:19:55','Moment_0: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1716706970370,38710,'2024-05-26 07:02:50','Moment_0: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1716707116336,82001,'2024-05-26 07:05:16','Moment_0: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717124655020,82002,'2024-05-31 03:04:15','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717468801248,82001,'2024-06-04 02:40:01','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717561747710,82001,'2024-06-05 04:29:07','Moment_0: 说点什么吧~1001','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717757679298,82001,'2024-06-07 10:54:39','Moment_0: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717862890826,38710,'2024-06-08 16:08:10','Moment_0: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1738597920051,82002,'2025-02-03 15:52:00','test post Moment 2','[82002]','[]'),(1738597944345,82004,'2025-02-03 15:52:24','test post Moment 4','[82001]','[]'); /*!40000 ALTER TABLE `Moment_0` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; @@ -54,4 +54,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-02-03 23:27:31 +-- Dump completed on 2025-02-03 23:54:00 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_1.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_1.sql index 0b6142b..07616ed 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_1.sql +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_Moment_1.sql @@ -32,7 +32,7 @@ CREATE TABLE `Moment_1` ( PRIMARY KEY (`id`), KEY `userId` (`userId`,`date`), KEY `index_date` (`date`) -) ENGINE=InnoDB AUTO_INCREMENT=1717862890827 DEFAULT CHARSET=utf8mb3 COMMENT='动态'; +) ENGINE=InnoDB AUTO_INCREMENT=1738597937577 DEFAULT CHARSET=utf8mb3 COMMENT='动态'; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -41,7 +41,7 @@ CREATE TABLE `Moment_1` ( LOCK TABLES `Moment_1` WRITE; /*!40000 ALTER TABLE `Moment_1` DISABLE KEYS */; -INSERT INTO `Moment_1` VALUES (15,82001,'2017-02-08 00:06:11','Moment_1: \"12312gjhtest15','[82002, 70793, 38710, 93793, 82005, 82009, 82007, 82014, 82021, 82026, 82006, 82011, 82016, 82020, 82024, 82004, 82012, 82015, 82019, 82025, 82003, 82008, 82013, 82018, 82023, 82010, 82022, 82017]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(235,38710,'2017-02-08 08:06:11','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[\"http://abc.cn/1.png\"]'),(301,93793,'2017-02-01 11:14:31','Moment_1: This is a Content...-301','[38710, 93793, 82003, 82005, 82040, 82055, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(371,82002,'2017-02-01 11:14:31','Moment_1: This is a Content...-371','[90814, 93793, 82003, 82005, 82006, 82040, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(511,38710,'2017-02-08 08:06:11','Moment_1: APIJSON,let interfaces and documents go to hell !','[70793, 93793, 82001]','[\"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\"]'),(543,93793,'2017-02-08 08:06:11',NULL,'[82001]','[\"https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(551,70793,'2017-02-08 08:06:11','Moment_1: 海洋动物数量减少,如果非吃不可,不点杀也是在保护它们','[82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\"]'),(595,38710,'2017-03-05 05:29:19',NULL,'[70793, 82002, 82001]','[\"https://common.cnblogs.com/images/icon_weibo_24.png\", \"https://static.oschina.net/uploads/user/19/39085_50.jpg\"]'),(1493835799335,38710,'2017-05-03 18:23:19','Moment_1: APIJSON is a JSON Transmission Structure Protocol…','[82002, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1508053762227,82003,'2017-10-15 07:49:22','Moment_1: 我也试试','[1515565976140, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1514017444961,82002,'2017-12-23 08:24:04','Moment_1: 123479589679','[82002, 1520242280259, 82001, 70793, 1524042900591, 1528264711016]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1516086423441,93793,'2018-01-16 07:07:03','Moment_1: 抢到票了,开心ପ( ˘ᵕ˘ ) ੭ ☆','[93793, 38710, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1520242333325,1520242280259,'2018-03-05 09:32:13','Moment_1: 法拉利','[1520242280259, 70793, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524178455305,1524042900591,'2018-04-19 22:54:15','Moment_1: 早上好啊','[1524042900591, 38710, 82003, 82001, 1523626157302]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528356378455,1528264711016,'2018-06-07 07:26:18','Moment_1: 去旅游嘛~','[82001]','[]'),(1528356421201,1528264711016,'2018-06-07 07:27:01','Moment_1: (ง •̀_•́)ง','[]','[]'),(1528356496939,1528356470041,'2018-06-07 07:28:16','Moment_1: (๑•ั็ω•็ั๑)','[]','[]'),(1528676875139,1528339692804,'2018-06-11 00:27:55','Moment_1: 123456','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1531969818357,1531969715979,'2018-07-19 03:10:18','Moment_1: http://q18idc.com','[1531969715979, 82001, 38710, 1534926301956]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1535781636403,1532188114543,'2018-09-01 06:00:36','Moment_1: 这是一个测试','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1536064087117,1532188114543,'2018-09-04 12:28:07','Moment_1: 说点什么吧~奥哈达','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1536805585275,82003,'2018-09-13 02:26:25','Moment_1: iPhone Xs发布了,大家怎么看?','[82002, 82005, 70793, 82003, 82001]','[\"https://pic1.zhimg.com/80/v2-e129b40810070443add1c28e6185c894_hd.jpg\"]'),(1544276216289,1544276209348,'2018-12-08 13:36:56','Moment_1: 说点什么吧~ey','[1544276209348]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1545187924367,1544503822963,'2018-12-19 02:52:04','Moment_1: 说哼哼唧唧点什么吧~','[1544503822963, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1553096819293,1553095415917,'2019-03-20 15:46:59','Moment_1: 说点什么吧~睡觉觉很喜欢','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1556387217941,82002,'2019-04-27 17:46:57','Moment_1: 说点什么吧~啦啦啦','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1557415707105,82003,'2019-05-09 15:28:27','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1558798664043,82003,'2019-05-25 15:37:44','Moment_1: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1568086574157,70793,'2019-09-10 03:36:14','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1568087960391,70793,'2019-09-10 03:59:20','Moment_1: 今天天气不错,到处都是提拉米苏雪','[82001]','[]'),(1572177746393,82002,'2019-10-27 12:02:26','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1577855941093,38710,'2020-01-01 05:19:01','Moment_1: 大家新年快乐鸭~','[82001, 38710]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1583574596245,82003,'2020-03-07 09:49:56','Moment_1: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1594127400223,82002,'2020-07-07 13:10:00','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001, 82002]','[]'),(1594385349411,82002,'2020-07-10 12:49:09','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1611503147421,82002,'2021-01-24 15:45:47','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1617562878095,82002,'2021-04-04 19:01:18','Moment_1: test','[82002, 82001]','[\"http://abc.com/2.png\"]'),(1627367513331,70793,'2021-07-27 06:31:53','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1630746489563,82001,'2021-09-04 09:08:09','Moment_1: \"312312312\"gjhtest04','[82001]','[]'),(1631257842981,82001,'2021-09-10 07:10:42','Moment_1: dasdas','[82001]','[]'),(1634090516839,82001,'2021-10-13 02:01:56','Moment_1: huojianfeng','[82001]','[]'),(1637405012523,82003,'2021-11-20 10:43:32','Moment_1: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1637590638567,82004,'2021-11-22 14:17:18','Moment_1: 测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1646030924765,38710,'2022-02-28 06:48:44','Moment_1: 测试专用测试专用测试专用测试专用','[38710]','[]'),(1646031858837,38710,'2022-02-28 07:04:18','Moment_1: 387103871038710387103871038710387103871038710','[38710]','[]'),(1646657313491,82002,'2022-03-07 12:48:33','Moment_1: 今天天气不错,^^^!!!','[]','[]'),(1648517248247,82003,'2022-03-29 01:27:28','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1648604448403,82002,'2022-03-30 01:40:48','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1651846337935,82002,'2022-05-06 14:12:17','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1665293930441,82002,'2022-10-09 05:38:50','Moment_1: 我就试试','[]','[]'),(1670420616061,82001,'2022-12-07 13:43:36','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1670981978461,82002,'2022-12-14 01:39:38','Moment_1: 今天是2022年12月14日,测试82002!','[]','[]'),(1673797744161,82001,'2023-01-15 15:49:04','Moment_1: 对方官方的说法','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1674308870813,82001,'2023-01-21 13:47:50','Moment_1: 说点什么吧~看看就','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677144307563,82001,'2023-02-23 09:25:07','Moment_1: APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677684807693,82001,'2023-03-01 15:33:27','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1680494769487,82001,'2023-04-03 04:06:09','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1681403443101,82001,'2023-04-13 16:30:43','Moment_1: 测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1681403571733,82002,'2023-04-13 16:32:51','Moment_1: 测试新增动态','[82002]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1681404270495,82003,'2023-04-13 16:44:30','Moment_1: 测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1682096402171,82001,'2023-04-21 17:00:02','Moment_1: Test of 0622','[82001]','[]'),(1682171738141,38710,'2023-04-22 13:55:38','Moment_1: 哈哈哈哈','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682269375445,82001,'2023-04-23 17:02:55','Moment_1: ','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682314259661,82001,'2023-04-24 05:30:59','Moment_1: 说点什么吧~哈哈哈','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682320252383,38710,'2023-04-24 07:10:52','Moment_1: 123123123','[]','[]'),(1682320399121,38710,'2023-04-24 07:13:19','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1682501802339,82001,'2023-04-26 09:36:42','Moment_1: 说点什么吧~发朋友圈','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1683911924815,82001,'2023-05-12 17:18:44','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1684980752101,82001,'2023-05-25 02:12:32','Moment_1: ctmd','[82001]','[]'),(1684981220795,82001,'2023-05-25 02:20:20','Moment_1: test ctmd','[82001]','[]'),(1684981356791,82001,'2023-05-25 02:22:36','Moment_1: 123','[]','[]'),(1685592394221,82001,'2023-06-01 04:06:34','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1686563612923,82001,'2023-06-12 09:53:33','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1690970609817,82001,'2023-08-02 10:03:29','Moment_1: 说点什么吧~粑粑麻麻','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1700372077715,82002,'2023-11-19 05:34:37','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1703425198937,88888,'2023-12-24 13:39:59','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454867,82002,'2024-01-14 04:04:48','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454869,82002,'2024-01-15 03:53:21','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454873,1490109742863,'2024-01-15 04:22:45','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705663946041,82001,'2024-01-19 11:32:26','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705663946759,82001,'2024-01-19 11:32:26','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845903,88888,'2024-01-19 14:50:45','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845905,82001,'2024-01-21 09:39:09','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845917,82001,'2024-05-04 16:20:24','Moment_1: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1715133152873,82001,'2024-05-08 01:52:32','Moment_1: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133172877,82001,'2024-05-08 01:52:52','Moment_1: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715222278579,82002,'2024-05-26 04:19:56','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1716707004081,38710,'2024-05-26 07:03:24','Moment_1: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717468800883,82001,'2024-06-04 02:40:00','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1717757674241,82001,'2024-06-07 10:54:34','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717862884827,82001,'2024-06-08 16:08:04','Moment_1: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'); +INSERT INTO `Moment_1` VALUES (15,82001,'2017-02-08 00:06:11','Moment_1: \"12312gjhtest15','[82002, 70793, 38710, 93793, 82005, 82009, 82007, 82014, 82021, 82026, 82006, 82011, 82016, 82020, 82024, 82004, 82012, 82015, 82019, 82025, 82003, 82008, 82013, 82018, 82023, 82010, 82022, 82017]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(235,38710,'2017-02-08 08:06:11','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[\"http://abc.cn/1.png\"]'),(301,93793,'2017-02-01 11:14:31','Moment_1: This is a Content...-301','[38710, 93793, 82003, 82005, 82040, 82055, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(371,82002,'2017-02-01 11:14:31','Moment_1: This is a Content...-371','[90814, 93793, 82003, 82005, 82006, 82040, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(511,38710,'2017-02-08 08:06:11','Moment_1: APIJSON,let interfaces and documents go to hell !','[70793, 93793, 82001]','[\"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\"]'),(543,93793,'2017-02-08 08:06:11',NULL,'[82001]','[\"https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(551,70793,'2017-02-08 08:06:11','Moment_1: 海洋动物数量减少,如果非吃不可,不点杀也是在保护它们','[82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\"]'),(595,38710,'2017-03-05 05:29:19',NULL,'[70793, 82002, 82001]','[\"https://common.cnblogs.com/images/icon_weibo_24.png\", \"https://static.oschina.net/uploads/user/19/39085_50.jpg\"]'),(1493835799335,38710,'2017-05-03 18:23:19','Moment_1: APIJSON is a JSON Transmission Structure Protocol…','[82002, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1508053762227,82003,'2017-10-15 07:49:22','Moment_1: 我也试试','[1515565976140, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1514017444961,82002,'2017-12-23 08:24:04','Moment_1: 123479589679','[82002, 1520242280259, 82001, 70793, 1524042900591, 1528264711016]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1516086423441,93793,'2018-01-16 07:07:03','Moment_1: 抢到票了,开心ପ( ˘ᵕ˘ ) ੭ ☆','[93793, 38710, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1520242333325,1520242280259,'2018-03-05 09:32:13','Moment_1: 法拉利','[1520242280259, 70793, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524178455305,1524042900591,'2018-04-19 22:54:15','Moment_1: 早上好啊','[1524042900591, 38710, 82003, 82001, 1523626157302]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528356378455,1528264711016,'2018-06-07 07:26:18','Moment_1: 去旅游嘛~','[82001]','[]'),(1528356421201,1528264711016,'2018-06-07 07:27:01','Moment_1: (ง •̀_•́)ง','[]','[]'),(1528356496939,1528356470041,'2018-06-07 07:28:16','Moment_1: (๑•ั็ω•็ั๑)','[]','[]'),(1528676875139,1528339692804,'2018-06-11 00:27:55','Moment_1: 123456','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1531969818357,1531969715979,'2018-07-19 03:10:18','Moment_1: http://q18idc.com','[1531969715979, 82001, 38710, 1534926301956]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1535781636403,1532188114543,'2018-09-01 06:00:36','Moment_1: 这是一个测试','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1536064087117,1532188114543,'2018-09-04 12:28:07','Moment_1: 说点什么吧~奥哈达','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1536805585275,82003,'2018-09-13 02:26:25','Moment_1: iPhone Xs发布了,大家怎么看?','[82002, 82005, 70793, 82003, 82001]','[\"https://pic1.zhimg.com/80/v2-e129b40810070443add1c28e6185c894_hd.jpg\"]'),(1544276216289,1544276209348,'2018-12-08 13:36:56','Moment_1: 说点什么吧~ey','[1544276209348]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1545187924367,1544503822963,'2018-12-19 02:52:04','Moment_1: 说哼哼唧唧点什么吧~','[1544503822963, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1553096819293,1553095415917,'2019-03-20 15:46:59','Moment_1: 说点什么吧~睡觉觉很喜欢','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1556387217941,82002,'2019-04-27 17:46:57','Moment_1: 说点什么吧~啦啦啦','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1557415707105,82003,'2019-05-09 15:28:27','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1558798664043,82003,'2019-05-25 15:37:44','Moment_1: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1568086574157,70793,'2019-09-10 03:36:14','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1568087960391,70793,'2019-09-10 03:59:20','Moment_1: 今天天气不错,到处都是提拉米苏雪','[82001]','[]'),(1572177746393,82002,'2019-10-27 12:02:26','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1577855941093,38710,'2020-01-01 05:19:01','Moment_1: 大家新年快乐鸭~','[82001, 38710]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1583574596245,82003,'2020-03-07 09:49:56','Moment_1: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1594127400223,82002,'2020-07-07 13:10:00','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001, 82002]','[]'),(1594385349411,82002,'2020-07-10 12:49:09','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1611503147421,82002,'2021-01-24 15:45:47','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1617562878095,82002,'2021-04-04 19:01:18','Moment_1: test','[82002, 82001]','[\"http://abc.com/2.png\"]'),(1627367513331,70793,'2021-07-27 06:31:53','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1630746489563,82001,'2021-09-04 09:08:09','Moment_1: \"312312312\"gjhtest04','[82001]','[]'),(1631257842981,82001,'2021-09-10 07:10:42','Moment_1: dasdas','[82001]','[]'),(1634090516839,82001,'2021-10-13 02:01:56','Moment_1: huojianfeng','[82001]','[]'),(1637405012523,82003,'2021-11-20 10:43:32','Moment_1: 测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1637590638567,82004,'2021-11-22 14:17:18','Moment_1: 测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1646030924765,38710,'2022-02-28 06:48:44','Moment_1: 测试专用测试专用测试专用测试专用','[38710]','[]'),(1646031858837,38710,'2022-02-28 07:04:18','Moment_1: 387103871038710387103871038710387103871038710','[38710]','[]'),(1646657313491,82002,'2022-03-07 12:48:33','Moment_1: 今天天气不错,^^^!!!','[]','[]'),(1648517248247,82003,'2022-03-29 01:27:28','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1648604448403,82002,'2022-03-30 01:40:48','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1651846337935,82002,'2022-05-06 14:12:17','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1665293930441,82002,'2022-10-09 05:38:50','Moment_1: 我就试试','[]','[]'),(1670420616061,82001,'2022-12-07 13:43:36','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1670981978461,82002,'2022-12-14 01:39:38','Moment_1: 今天是2022年12月14日,测试82002!','[]','[]'),(1673797744161,82001,'2023-01-15 15:49:04','Moment_1: 对方官方的说法','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1674308870813,82001,'2023-01-21 13:47:50','Moment_1: 说点什么吧~看看就','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677144307563,82001,'2023-02-23 09:25:07','Moment_1: APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677684807693,82001,'2023-03-01 15:33:27','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1680494769487,82001,'2023-04-03 04:06:09','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1681403443101,82001,'2023-04-13 16:30:43','Moment_1: 测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1681403571733,82002,'2023-04-13 16:32:51','Moment_1: 测试新增动态','[82002]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1681404270495,82003,'2023-04-13 16:44:30','Moment_1: 测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1682096402171,82001,'2023-04-21 17:00:02','Moment_1: Test of 0622','[82001]','[]'),(1682171738141,38710,'2023-04-22 13:55:38','Moment_1: 哈哈哈哈','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682269375445,82001,'2023-04-23 17:02:55','Moment_1: ','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682314259661,82001,'2023-04-24 05:30:59','Moment_1: 说点什么吧~哈哈哈','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682320252383,38710,'2023-04-24 07:10:52','Moment_1: 123123123','[]','[]'),(1682320399121,38710,'2023-04-24 07:13:19','Moment_1: 今天天气不错,到处都是提拉米苏雪','[]','[]'),(1682501802339,82001,'2023-04-26 09:36:42','Moment_1: 说点什么吧~发朋友圈','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1683911924815,82001,'2023-05-12 17:18:44','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1684980752101,82001,'2023-05-25 02:12:32','Moment_1: ctmd','[82001]','[]'),(1684981220795,82001,'2023-05-25 02:20:20','Moment_1: test ctmd','[82001]','[]'),(1684981356791,82001,'2023-05-25 02:22:36','Moment_1: 123','[]','[]'),(1685592394221,82001,'2023-06-01 04:06:34','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1686563612923,82001,'2023-06-12 09:53:33','Moment_1: APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1690970609817,82001,'2023-08-02 10:03:29','Moment_1: 说点什么吧~粑粑麻麻','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1700372077715,82002,'2023-11-19 05:34:37','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1703425198937,88888,'2023-12-24 13:39:59','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454867,82002,'2024-01-14 04:04:48','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454869,82002,'2024-01-15 03:53:21','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454873,1490109742863,'2024-01-15 04:22:45','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705663946041,82001,'2024-01-19 11:32:26','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705663946759,82001,'2024-01-19 11:32:26','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845903,88888,'2024-01-19 14:50:45','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845905,82001,'2024-01-21 09:39:09','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845917,82001,'2024-05-04 16:20:24','Moment_1: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1715133152873,82001,'2024-05-08 01:52:32','Moment_1: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133172877,82001,'2024-05-08 01:52:52','Moment_1: APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715222278579,82002,'2024-05-26 04:19:56','Moment_1: 测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1716707004081,38710,'2024-05-26 07:03:24','Moment_1: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717468800883,82001,'2024-06-04 02:40:00','Moment_1: APIJSON,let interfaces and documents go to hell !','[]','[]'),(1717757674241,82001,'2024-06-07 10:54:34','Moment_1: APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717862884827,82001,'2024-06-08 16:08:04','Moment_1: 测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1738597910484,82001,'2025-02-03 15:51:50','test post Moment 1','[]','[]'),(1738597937576,82003,'2025-02-03 15:52:17','test post Moment 3','[82003]','[]'); /*!40000 ALTER TABLE `Moment_1` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; @@ -54,4 +54,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-02-03 23:27:31 +-- Dump completed on 2025-02-03 23:54:01 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_apijson_user.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_apijson_user.sql index 516a8d8..2ae67e6 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_apijson_user.sql +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_1_single/ds_1_apijson_user.sql @@ -56,4 +56,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-02-03 23:27:31 +-- Dump completed on 2025-02-03 23:54:01 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_0.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_0.sql index e118c3e..3e1c2e1 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_0.sql +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_0.sql @@ -43,7 +43,7 @@ CREATE TABLE `Comment_0` ( LOCK TABLES `Comment_0` WRITE; /*!40000 ALTER TABLE `Comment_0` DISABLE KEYS */; -INSERT INTO `Comment_0` VALUES (22,221,82001,470,'2017-02-01 11:20:50','ds_2.Comment_0: 修改'),(54,0,82004,170,'2017-02-01 11:20:50','ds_2.Comment_0: This is a Content...-54'),(110,0,93793,371,'2017-02-01 11:23:24','ds_2.Comment_0: This is a Content...-110'),(114,0,82001,371,'2017-03-02 05:56:06','ds_2.Comment_0: test multi put'),(158,0,93793,301,'2018-07-12 17:28:23','ds_2.Comment_0: This is a Content...-157'),(162,0,93793,12,'2017-03-06 05:03:45','ds_2.Comment_0: This is a Content...-162'),(178,0,38710,511,'2017-03-25 12:30:55','ds_2.Comment_0: wbw'),(182,110,82001,371,'2017-03-26 06:12:52','ds_2.Comment_0: hahaha'),(190,0,82001,58,'2017-03-26 07:22:13','ds_2.Comment_0: dbdj'),(206,54,82001,170,'2017-03-29 03:04:23','ds_2.Comment_0: ejej'),(1490780759866,99,82001,170,'2017-03-29 09:45:59','ds_2.Comment_0: 99'),(1490781857242,190,38710,58,'2017-03-29 10:04:17','ds_2.Comment_0: nice'),(1490794953438,1490794937137,82001,12,'2017-03-29 13:42:33','ds_2.Comment_0: All right ok ok ll'),(1490796241178,0,38710,58,'2017-03-29 14:04:01','ds_2.Comment_0: Anything else?'),(1490798710678,110,38710,371,'2017-03-29 14:45:10','ds_2.Comment_0: 110'),(1490854894566,175,82001,12,'2017-03-30 06:21:34','ds_2.Comment_0: it does be a good lang'),(1490863507114,4,82003,470,'2017-03-30 08:45:07','ds_2.Comment_0: yes'),(1490863661426,1490780759866,70793,170,'2017-03-30 08:47:41','ds_2.Comment_0: 66'),(1490864016738,0,82006,511,'2017-03-30 08:53:36','ds_2.Comment_0: I want to have a try!'),(1490864400210,1490864276824,82001,12,'2017-03-30 09:00:00','ds_2.Comment_0: Amazing, isnt it?'),(1490874908570,1490864023700,82055,543,'2017-03-30 11:55:08','ds_2.Comment_0: yeah'),(1490874930994,1490777905437,82055,543,'2017-03-30 11:55:30','ds_2.Comment_0: yy'),(1490875033494,0,82055,301,'2017-03-30 11:57:13','ds_2.Comment_0: More Comments'),(1490973736662,1490973715568,70793,170,'2017-03-31 15:22:16','ds_2.Comment_0: Hello, I am a fresh man'),(1491130701902,0,38710,511,'2017-04-02 10:58:21','ds_2.Comment_0: Thanks for your supports (-^?^-)'),(1491209763162,0,82001,1491200468898,'2017-04-03 08:56:03','ds_2.Comment_0: How do you do'),(1493094307810,0,82001,551,'2017-04-25 04:25:04','ds_2.Comment_0: 删除或修改数据请先创建,不要动原来的,谢谢'),(1493094307910,0,82001,551,'2017-04-25 04:26:04','ds_2.Comment_0: 用POST新增数据'),(1502632433970,0,82002,1493835799335,'2017-08-13 13:53:53','ds_2.Comment_0: just have fun!'),(1508053783278,0,82001,1508053762227,'2017-10-15 07:49:43','ds_2.Comment_0: 可以的'),(1508227498578,1491798370749,82001,551,'2017-10-17 08:04:58','ds_2.Comment_0: g'),(1508462026394,1490850844016,82001,12,'2017-10-20 01:13:46','ds_2.Comment_0: 欧'),(1509346549158,0,82001,170,'2017-10-30 06:55:49','ds_2.Comment_0: 呵呵'),(1510795816462,162,82001,12,'2017-11-16 01:30:16','ds_2.Comment_0: 赞'),(1510813284894,0,82001,12,'2017-11-16 06:21:24','ds_2.Comment_0: asdasdasdas'),(1511374274194,0,82001,170,'2017-11-22 18:11:14','ds_2.Comment_0: 哦哦哦'),(1511407695342,0,1511407581570,371,'2017-11-23 03:28:15','ds_2.Comment_0: 好的'),(1511878031610,1511878024415,1511761906715,12,'2017-11-28 14:07:11','ds_2.Comment_0: 不鸟你'),(1512039030970,1512035117021,82001,32,'2017-11-30 10:50:30','ds_2.Comment_0: 一般九宫格图片都是压缩图,分辨率在300*300左右,加载很快,点击放大后才是原图,1080P左右'),(1514858640958,0,38710,1514858533480,'2018-01-02 02:04:00','ds_2.Comment_0: 斯塔克工业'),(1515057861094,0,82001,58,'2018-01-04 09:24:21','ds_2.Comment_0: 蓉蓉'),(1515057864174,1515057857464,82001,58,'2018-01-04 09:24:24','ds_2.Comment_0: 哦轻松'),(1515057869554,0,82001,58,'2018-01-04 09:24:29','ds_2.Comment_0: ,王者荣耀'),(1516190557098,0,82001,1513094436910,'2018-01-17 12:02:37','ds_2.Comment_0: 哦婆婆'),(1516686985310,0,82001,1516086423441,'2018-01-23 05:56:25','ds_2.Comment_0: hologram'),(1516687072270,1516629533520,82001,1508072633830,'2018-01-23 05:57:52','ds_2.Comment_0: 咯我就'),(1516783920998,0,82001,1513094436910,'2018-01-24 08:52:00','ds_2.Comment_0: 这个是实时的吗'),(1516843720270,1516780129884,82001,1516086423441,'2018-01-25 01:28:40','ds_2.Comment_0: ghj'),(1516862537978,1515057869554,70793,58,'2018-01-25 06:42:17','ds_2.Comment_0: 绝地逃亡吃鸡'),(1516951734010,1514506206319,82001,1513094436910,'2018-01-26 07:28:54','ds_2.Comment_0: 火锅'),(1517234768450,1517229342303,93793,1516086423441,'2018-01-29 14:06:08','ds_2.Comment_0: 9号'),(1519719341810,0,82001,1516086423441,'2018-02-27 08:15:41','ds_2.Comment_0: 我也想抢一张'),(1519979533242,0,82001,1508072633830,'2018-03-02 08:32:13','ds_2.Comment_0: hj'),(1520330788006,0,1520242280259,1514017444961,'2018-03-06 10:06:28','ds_2.Comment_0: 八组'),(1522074360206,1519979533242,82001,1508072633830,'2018-03-26 14:26:00','ds_2.Comment_0: tttt'),(1524032299622,0,82001,1516086423441,'2018-04-18 06:18:19','ds_2.Comment_0: 别给我得怂'),(1524032305810,1524032299622,82001,1516086423441,'2018-04-18 06:18:25','ds_2.Comment_0: 你好'),(1524190412418,1524190367904,38710,1524178455305,'2018-04-20 02:13:32','ds_2.Comment_0: 我的资料>编辑>改下备注'),(1524235902970,1524214012015,82003,1524178455305,'2018-04-20 14:51:42','ds_2.Comment_0: 在我的资料界面编辑备注'),(1524297798490,0,82001,1513094436910,'2018-04-21 08:03:18','ds_2.Comment_0: gg'),(1524461430874,1519979533242,82001,1508072633830,'2018-04-23 05:30:30','ds_2.Comment_0: 哦哦哦'),(1524461436914,0,82001,1508072633830,'2018-04-23 05:30:36','ds_2.Comment_0: 莫'),(1524461441914,0,82001,1508072633830,'2018-04-23 05:30:41','ds_2.Comment_0: 默默'),(1524488068926,1524178500568,82001,1524178455305,'2018-04-23 12:54:28','ds_2.Comment_0: 哦哦哦'),(1524843908458,1524799118232,82001,1512314438990,'2018-04-27 15:45:08','ds_2.Comment_0: 在HttpRequest.addMoment中加的,因为APIJSON的Server Demo没做图片存储,所以目前只能自己传图片的url,可以百度图片上找哈'),(1525658333654,0,82001,1513094436910,'2018-05-07 01:58:53','ds_2.Comment_0: q'),(1527821876802,1527821844576,1527495857924,1527821296110,'2018-06-01 02:57:56','ds_2.Comment_0: 当然好用啊'),(1527837965006,0,82002,1527830474378,'2018-06-01 07:26:05','ds_2.Comment_0: 像平板电脑哈哈'),(1528250648974,0,82001,1523936332614,'2018-06-06 02:04:08','ds_2.Comment_0: hshdv'),(1528516951218,0,82001,1528462217322,'2018-06-09 04:02:31','ds_2.Comment_0: 这里能约到小姐姐算我输୧(๑•̀⌄•́๑)૭'),(1528554476310,0,82001,1516086423441,'2018-06-09 14:27:56','ds_2.Comment_0: thS'),(1528679814166,0,1528339692804,1528676875139,'2018-06-11 01:16:54','ds_2.Comment_0: 12'),(1528972547638,0,82001,1528462217322,'2018-06-14 10:35:47','ds_2.Comment_0: 古古怪怪'),(1531887938362,1531063660028,82001,1531062713966,'2018-07-18 04:25:38','ds_2.Comment_0: 是呀'),(1531983163150,0,1531969715979,1531969818357,'2018-07-19 06:52:43','ds_2.Comment_0: http://q18idc.com'),(1533120405110,1516780129884,82001,1516086423441,'2018-08-01 10:46:45','ds_2.Comment_0: eeeeee'),(1533120420498,1528105592852,82001,1516086423441,'2018-08-01 10:47:00','ds_2.Comment_0: eeeeeee'),(1533195207026,0,82001,1531062713966,'2018-08-02 07:33:27','ds_2.Comment_0: JJ'),(1533631893738,0,82001,1531969818357,'2018-08-07 08:51:33','ds_2.Comment_0: 哈哈哈哈哈哈'),(1534926149638,1517375165233,82001,1508053762227,'2018-08-22 08:22:29','ds_2.Comment_0: 把标准版申报表上班设备'),(1534992151350,0,82001,1516086423441,'2018-08-23 02:42:31','ds_2.Comment_0: 你咋不'),(1535785537390,1535279823332,82003,1520242333325,'2018-09-01 07:05:37','ds_2.Comment_0: 不好哦'),(1535785585222,1534926143012,82003,1508053762227,'2018-09-01 07:06:25','ds_2.Comment_0: 啥?'),(1537410620002,0,82001,1536805585275,'2018-09-20 02:30:20','ds_2.Comment_0: 不一样'),(1537710348414,0,82001,1516086423441,'2018-09-23 13:45:48','ds_2.Comment_0: hhj'),(1537857324518,0,82001,1536805585275,'2018-09-25 06:35:24','ds_2.Comment_0: 嗯呢'),(1544503960414,1537410620002,1544503822963,1536805585275,'2018-12-11 04:52:40','ds_2.Comment_0: 664984'),(1545527898986,1545527888416,82001,1553096819293,'2018-12-23 01:18:18','ds_2.Comment_0: world'),(1551430474490,1551430453424,82001,1553096819293,'2019-03-01 08:54:34','ds_2.Comment_0: 444'),(1551430579358,1516691119239,82001,1516086423441,'2019-03-01 08:56:19','ds_2.Comment_0: 555555'),(1555557860778,1512035117021,82001,32,'2019-04-18 03:24:20','ds_2.Comment_0: 11564546'),(1557754720666,0,82001,1557754680146,'2019-05-13 13:38:40','ds_2.Comment_0: 卧槽(*`へ´*)'),(1557754909538,1557754765785,82012,1557754680146,'2019-05-13 13:41:49','ds_2.Comment_0: https://baijiahao.baidu.com/s?id=1633129683262867786&wfr=spider&for=pc&isFailFlag=1'),(1558150056102,0,82001,1557754680146,'2019-05-18 03:27:36','ds_2.Comment_0: 哈哈哈'),(1562736873122,1534926143012,82001,1508053762227,'2019-07-10 05:34:33','ds_2.Comment_0: 早睡早起'),(1564493476094,1564493464049,82001,1557754680146,'2019-07-30 13:31:16','ds_2.Comment_0: 你好'),(1566263781606,1490864016738,82001,511,'2019-08-20 01:16:21','ds_2.Comment_0: 11'),(1566270967414,0,82001,1558798664043,'2019-08-20 03:16:07','ds_2.Comment_0: 什么'),(1566270991974,0,82001,1558798664043,'2019-08-20 03:16:31','ds_2.Comment_0: 好的'),(1566271039886,1557838424004,82001,1557754680146,'2019-08-20 03:17:19','ds_2.Comment_0: 一部'),(1566271045802,1557838424004,82001,1557754680146,'2019-08-20 03:17:25','ds_2.Comment_0: 一部'),(1568013785742,1558440302601,82001,1557415707105,'2019-09-09 07:23:05','ds_2.Comment_0: sss'),(1571143189570,1566271052875,82001,1557754680146,'2019-10-15 12:39:49','ds_2.Comment_0: 龙'),(1571143196630,1571143189570,82001,1557754680146,'2019-10-15 12:39:56','ds_2.Comment_0: 哦哦哦'),(1573024400998,1545527888416,82001,1553096819293,'2019-11-06 07:13:21','ds_2.Comment_0: 回来了'),(1581314845034,0,82001,12,'2020-02-01 16:00:00','ds_2.Comment_0: 测试新增评论'),(1584336841458,1583897660640,82001,1583574596245,'2020-03-16 05:34:01','ds_2.Comment_0: 好吧'),(1589165545506,0,82001,1583574596245,'2020-05-11 02:52:25','ds_2.Comment_0: 地方唱歌'),(1589255344034,1511407702981,82001,371,'2020-05-12 03:49:04','ds_2.Comment_0: 就刚才v'),(1591754308326,0,82001,1514858533480,'2020-06-10 01:58:28','ds_2.Comment_0: 我下午'),(1592109058370,1576678047584,82001,1557415707105,'2020-06-14 04:30:58','ds_2.Comment_0: 呃呃呃'),(1600010149486,0,82001,1577855941093,'2020-09-13 15:15:49','ds_2.Comment_0: 新年快乐'),(1605590447930,1516686985310,82001,1516086423441,'2020-11-17 05:20:47','ds_2.Comment_0: 哈哈哈哈哈哈'),(1606441650158,0,82001,1606312076474,'2020-11-27 01:47:30','ds_2.Comment_0: 4644646'),(1607078438974,0,82001,543,'2020-12-04 10:40:38','ds_2.Comment_0: 666'),(1609924232430,0,82001,1608215822376,'2021-01-06 09:10:32','ds_2.Comment_0: hahha'),(1611824248994,0,82001,1558798664043,'2021-01-28 08:57:28','ds_2.Comment_0: 找下我'),(1611984282510,0,82001,1611503147421,'2021-01-30 05:24:42','ds_2.Comment_0: 极速版'),(1617350123514,0,82001,12,'2021-04-02 07:55:23','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617700520082,0,82001,1617562878095,'2021-04-06 09:15:20','ds_2.Comment_0: 哦哦哦'),(1617763484998,0,82003,12,'2021-04-07 02:44:45','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617763503314,0,82003,12,'2021-04-07 02:45:03','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1624189750538,0,82001,1594127400223,'2021-06-20 11:49:10','ds_2.Comment_0: ?'),(1624505997446,0,82001,1617562878095,'2021-06-24 03:39:57','ds_2.Comment_0: 杉树'),(1625193975266,0,82001,1624700434072,'2021-07-02 02:46:15','ds_2.Comment_0: 啥意思?'),(1626055595138,1534926143012,82001,1508053762227,'2021-07-12 02:06:35','ds_2.Comment_0: 哈哈'),(1631761391158,0,82001,1508072633830,'2021-09-16 03:03:11','ds_2.Comment_0: 00'),(1631761391706,0,82001,1508072633830,'2021-09-16 03:03:11','ds_2.Comment_0: 11'),(1631761395754,0,82001,1524178455305,'2021-09-16 03:03:15','ds_2.Comment_0: 111'),(1631761398022,0,82001,551,'2021-09-16 03:03:18','ds_2.Comment_0: 3条重复的'),(1631761398170,0,82001,1583574596245,'2021-09-16 03:03:18','ds_2.Comment_0: 4444444444444'),(1631761409914,0,82001,511,'2021-09-16 03:03:29','ds_2.Comment_0: 123121545645'),(1631761413110,0,82001,1556387217941,'2021-09-16 03:03:33','ds_2.Comment_0: 666'),(1631761414094,0,82001,551,'2021-09-16 03:03:34','ds_2.Comment_0: 4644646'),(1631761414274,0,82001,371,'2021-09-16 03:03:34','ds_2.Comment_0: 666'),(1631761414650,0,82001,12,'2021-09-16 03:03:34','ds_2.Comment_0: 111'),(1631761416082,0,82001,1512314438990,'2021-09-16 03:03:36','ds_2.Comment_0: 22222222222222222'),(1631761416578,0,82001,1516086423441,'2021-09-16 03:03:36','ds_2.Comment_0: 654342365656'),(1631761417254,0,82001,1577855941093,'2021-09-16 03:03:37','ds_2.Comment_0: 123121545645'),(1631761429282,0,82001,1541557989440,'2021-09-16 03:03:49','ds_2.Comment_0: 1'),(1631761429738,0,82001,1513094436910,'2021-09-16 03:03:49','ds_2.Comment_0: 1111'),(1631761431546,0,82001,58,'2021-09-16 03:03:51','ds_2.Comment_0: 111'),(1631761432774,0,82001,551,'2021-09-16 03:03:52','ds_2.Comment_0: 111'),(1631761438726,0,82001,1512314438990,'2021-09-16 03:03:58','ds_2.Comment_0: -162'),(1631761439878,0,82001,301,'2021-09-16 03:03:59','ds_2.Comment_0: 11111111'),(1631761441294,0,82001,301,'2021-09-16 03:04:01','ds_2.Comment_0: 111'),(1631761442674,0,82001,58,'2021-09-16 03:04:02','ds_2.Comment_0: 111'),(1631761443394,0,82001,1594385349411,'2021-09-16 03:04:03','ds_2.Comment_0: 1545456'),(1631761445242,0,82001,511,'2021-09-16 03:04:05','ds_2.Comment_0: 110'),(1631761446282,0,82001,511,'2021-09-16 03:04:06','ds_2.Comment_0: $$'),(1631761448702,0,82001,371,'2021-09-16 03:04:08','ds_2.Comment_0: 111'),(1631761454386,0,82001,301,'2021-09-16 03:04:14','ds_2.Comment_0: $$'),(1631761455242,0,82001,170,'2021-09-16 03:04:15','ds_2.Comment_0: 00'),(1631761455446,0,82001,1611503147421,'2021-09-16 03:04:15','ds_2.Comment_0: 1'),(1631761455766,0,82001,12,'2021-09-16 03:04:15','ds_2.Comment_0: 110'),(1631761456926,0,82001,1508072633830,'2021-09-16 03:04:16','ds_2.Comment_0: 11111111'),(1631761457406,0,82001,1528676875139,'2021-09-16 03:04:17','ds_2.Comment_0: ,王者荣耀'),(1631761457918,0,82001,1627367646018,'2021-09-16 03:04:17','ds_2.Comment_0: 00'),(1631761459034,0,82001,1508072633830,'2021-09-16 03:04:19','ds_2.Comment_0: 111'),(1631761459826,0,82001,1528462217322,'2021-09-16 03:04:19','ds_2.Comment_0: (fdsd)'),(1631761460510,0,82001,371,'2021-09-16 03:04:20','ds_2.Comment_0: 00'),(1631761578502,0,82001,12,'2021-09-16 03:06:18','ds_2.Comment_0: 铁人'),(1631761598482,0,82001,12,'2021-09-16 03:06:38','ds_2.Comment_0: W'),(1631761602570,0,82001,12,'2021-09-16 03:06:42','ds_2.Comment_0: 555555'),(1631761605962,0,82001,12,'2021-09-16 03:06:45','ds_2.Comment_0: hologram'),(1633794175654,0,82001,1632294230574,'2021-10-09 15:42:55','ds_2.Comment_0: 来了来了'),(1633794180858,0,82001,1632294230574,'2021-10-09 15:43:00','ds_2.Comment_0: 略略略'),(1633861634914,0,82001,1632294230574,'2021-10-10 10:27:14','ds_2.Comment_0: SSR'),(1635404369114,0,82002,12,'2021-10-28 06:59:29','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1639449627546,0,82001,1638327674898,'2021-12-14 02:40:27','ds_2.Comment_0: 诗歌鉴赏高价收购'),(1639449637290,0,82001,1638327674898,'2021-12-14 02:40:37','ds_2.Comment_0: 大概就是感觉师傅师傅'),(1639455571334,1639386671675,82001,1638327674898,'2021-12-14 04:19:31','ds_2.Comment_0: 给vvv'),(1640785095358,2,82001,12,'2021-12-29 13:38:15','ds_2.Comment_0: test'),(1648689282014,0,82001,1648604448403,'2022-03-31 01:14:42','ds_2.Comment_0: 7414'),(1649500711162,0,82001,1648604448403,'2022-04-09 10:38:31','ds_2.Comment_0: 电竞少女'),(1650022315682,0,82001,1649086185746,'2022-04-15 11:31:55','ds_2.Comment_0: 哈哈哈'),(1650353671162,0,82002,12,'2022-04-19 07:34:31','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1651115672370,0,82001,1646030604412,'2022-04-28 03:14:32','ds_2.Comment_0: 哥好好回家'),(1651115702850,1651115672370,82001,1646030604412,'2022-04-28 03:15:02','ds_2.Comment_0: 多尴尬哈哈哈哈哈'),(1651717781318,0,82001,12,'2022-05-05 02:29:41','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1651745263734,0,82001,12,'2022-05-05 10:07:43','ds_2.Comment_0: A machine base 0 & 1'),(1651745427922,0,82001,12,'2022-05-05 10:10:27','ds_2.Comment_0: A machine base 0 & 1'),(1652796392746,0,82001,1651846337935,'2022-05-17 14:06:32','ds_2.Comment_0: dd'),(1659980908050,0,82001,1649086185746,'2022-08-08 17:48:28','ds_2.Comment_0: 后'),(1660209535062,0,82001,12,'2022-08-11 09:18:55','ds_2.Comment_0: APIJSON123123!'),(1661620771690,0,82001,301,'2022-08-27 17:19:31','ds_2.Comment_0: 鸡鸡鸡鸡'),(1663572237766,0,82001,12,'2022-09-19 07:23:57','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1666604100490,0,82003,12,'2022-10-24 09:35:00','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1667542950230,0,82001,12,'2022-11-04 06:22:30','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1670591905258,1670420459420,82001,1665293930441,'2022-12-09 13:18:25','ds_2.Comment_0: qqq'),(1670591910246,0,82001,1665293930441,'2022-12-09 13:18:30','ds_2.Comment_0: qqq'),(1670917782466,0,82001,12,'2022-12-13 07:49:42','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1671322196362,0,82001,1670981978461,'2022-12-18 00:09:56','ds_2.Comment_0: 哈哈哈哈个'),(1672729125594,0,82001,12,'2023-01-03 06:58:45','ds_2.Comment_0: 66666 !'),(1675840929526,0,82001,1675742375160,'2023-02-08 07:22:09','ds_2.Comment_0: they'),(1675840939782,0,82001,1675742375160,'2023-02-08 07:22:19','ds_2.Comment_0: they'),(1675840959282,0,82001,1675742375160,'2023-02-08 07:22:39','ds_2.Comment_0: 对方纷纷'),(1676271673426,0,82001,1675910359578,'2023-02-13 07:01:13','ds_2.Comment_0: 55555'),(1676271718906,0,82001,1675742375160,'2023-02-13 07:01:58','ds_2.Comment_0: 3333'),(1678959106674,0,82003,12,'2023-03-16 09:31:46','ds_2.Comment_0: APIJSON'),(1678959151894,0,82003,12,'2023-03-16 09:32:31','ds_2.Comment_0: APIJSON'),(1681710767334,0,82002,1678877778484,'2023-04-17 05:52:47','ds_2.Comment_0: 252'),(1681999170630,0,82001,470,'2023-04-20 13:59:30','ds_2.Comment_0: ffff'),(1681999220354,0,82001,470,'2023-04-20 14:00:20','ds_2.Comment_0: ffff'),(1682000819794,0,82001,470,'2023-04-20 14:26:59','ds_2.Comment_0: xdddddd'),(1682314174378,0,82001,1682269375445,'2023-04-24 05:29:34','ds_2.Comment_0: 股民'),(1682783899598,0,82001,1679313363196,'2023-04-29 15:58:19','ds_2.Comment_0: 哈喽'),(1683353535310,0,82001,12,'2023-05-06 06:12:15','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354028826,0,82001,142,'2023-05-06 06:20:28','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683355771386,0,82001,143,'2023-05-06 06:49:31','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1684465899062,0,82001,12,'2023-05-19 03:11:39','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1684489610762,0,82001,1682096402171,'2023-05-19 09:46:50','ds_2.Comment_0: GGG'),(1686303787138,0,82001,1645416338268,'2023-06-09 09:43:07','ds_2.Comment_0: 哦咯模棱两可'),(1686303807242,0,82001,1645416338268,'2023-06-09 09:43:27','ds_2.Comment_0: 哦咯模棱两可'),(1686328097906,0,82001,1645416338268,'2023-06-09 16:28:17','ds_2.Comment_0: 牛逼'),(1686328118014,0,82001,1645416338268,'2023-06-09 16:28:38','ds_2.Comment_0: 牛逼'),(1686897864630,0,82001,1684981561371,'2023-06-16 06:44:24','ds_2.Comment_0: mood'),(1686897884766,0,82001,1684981561371,'2023-06-16 06:44:44','ds_2.Comment_0: mood'),(1686897924994,0,82001,1684981561371,'2023-06-16 06:45:25','ds_2.Comment_0: mood'),(1686898120502,0,82001,1684981561371,'2023-06-16 06:48:40','ds_2.Comment_0: mood'),(1687590211238,0,82001,123333,'2023-06-24 07:03:31','ds_2.Comment_0: dkf;dfd;akfd;dadj;\''),(1689822569818,0,82001,12,'2023-07-20 03:09:29','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1689822595230,0,82001,12,'2023-07-20 03:09:55','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1693680555338,0,82006,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd-7760609746862695'),(1693680555358,0,82006,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd3879470925263683'),(1693680555362,0,82010,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd2343873016360063'),(1693680555366,0,82005,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd-1666369813764240'),(1695805814258,0,82001,12,'2023-09-27 09:10:14','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1695805825890,0,82001,12,'2023-09-27 09:10:25','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1697115587910,0,82001,1,'2023-10-12 12:59:47','ds_2.Comment_0: 1'),(1698723401506,0,82002,12,'2023-10-31 03:36:41','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1700403475754,0,82001,1700372077715,'2023-11-19 14:17:55','ds_2.Comment_0: 测试新增动态'),(1700489417302,0,82002,1700488719094,'2023-11-20 14:10:17','ds_2.Comment_0: 哈哈'),(1701153019998,0,82001,12,'2023-11-28 06:30:20','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701222052938,0,82001,12,'2023-11-29 01:40:52','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701222576018,0,82001,12,'2023-11-29 01:49:36','ds_2.Comment_0: 这是新建内容。'),(1701676156942,0,82002,12,'2023-12-04 07:49:16','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701845609830,0,82001,12,'2023-12-06 06:53:29','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701848980462,0,82001,12,'2023-12-06 07:49:40','ds_2.Comment_0: 这是新建!'),(1702401213366,0,82001,1700488719094,'2023-12-12 17:13:33','ds_2.Comment_0: vivid'),(1702401213374,0,82003,12,'2023-12-13 10:02:05','ds_2.Comment_0: Ab_Cd5033618171570795'),(1702401213378,0,82003,401,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd-3846398120850732'),(1702401213382,0,82002,12,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd7736427789199583'),(1702401213386,0,82006,12,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd4296953153310075'),(1702401213394,0,82006,401,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd8265765743697971'),(1702401213402,0,82001,12,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd6865036217185303'),(1702401213414,0,82006,12,'2023-12-13 10:02:07','ds_2.Comment_0: Ab_Cd-2580147070595628'),(1702401213434,0,82007,12,'2023-12-13 10:02:07','ds_2.Comment_0: Ab_Cd7783945763291991'),(1702401213438,0,82010,12,'2023-12-13 10:02:07','ds_2.Comment_0: Ab_Cd-8860729646372811'),(1702401213446,0,82009,401,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd-6769406496116663'),(1702401213454,0,82004,12,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd2068374097643959'),(1702401213458,0,82008,12,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd8388816955600171'),(1702401213462,0,82003,401,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd-478588537110904'),(1702401213466,0,82007,401,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd3852915623174643'),(1702401213470,0,82002,12,'2023-12-13 10:02:39','ds_2.Comment_0: Ab_Cd-1275163445102252'),(1702401213482,0,82006,12,'2023-12-13 10:02:39','ds_2.Comment_0: Ab_Cd8050322363235779'),(1702401213498,0,82006,401,'2023-12-13 10:02:40','ds_2.Comment_0: Ab_Cd4118056555122167'),(1702401213514,0,82005,401,'2023-12-13 10:02:40','ds_2.Comment_0: Ab_Cd4591331730684723'),(1702401213530,0,82008,401,'2023-12-13 10:02:40','ds_2.Comment_0: Ab_Cd-600763026019652'),(1702401213534,0,82004,12,'2023-12-13 10:02:41','ds_2.Comment_0: Ab_Cd1356568518605267'),(1702401213546,0,82008,12,'2023-12-13 10:02:41','ds_2.Comment_0: Ab_Cd-1625988333712444'),(1704439975418,1703572770503,82001,1703425198937,'2024-01-05 07:32:55','ds_2.Comment_0: 抹去'),(1705992223166,0,82001,12,'2024-01-23 06:43:43','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1708508333650,0,82001,1684981356791,'2024-02-21 09:38:53','ds_2.Comment_0: 想你想你想看看咱俩走'),(1708929935730,0,82001,1693680292080,'2024-02-26 06:45:35','ds_2.Comment_0: art'),(1709022540698,0,82003,15,'2024-02-27 08:29:00','ds_2.Comment_0: 测试新增评论'),(1709024647986,0,82003,15,'2024-02-27 09:04:08','ds_2.Comment_0: 测试新增评论'),(1709623912338,0,82001,1709285309898,'2024-03-05 07:31:52','ds_2.Comment_0: 哎'),(1709792472054,0,82003,15,'2024-03-07 06:21:12','ds_2.Comment_0: 测试新增评论'),(1709798958718,0,88888,15,'2024-03-07 08:09:18','ds_2.Comment_0: 测试新增评论'),(1709810752538,0,82001,15,'2024-03-07 11:25:52','ds_2.Comment_0: 测试新增评论'),(1709975068990,1583848843283,82003,1583574596245,'2024-03-09 09:04:29','ds_2.Comment_0: hhh'),(1709975280398,1626428214932,82003,1619511861462,'2024-03-09 09:08:00','ds_2.Comment_0: ok'),(1710337723054,0,82001,1710233170301,'2024-03-13 13:48:43','ds_2.Comment_0: wee'),(1711452033966,0,82001,15,'2024-03-26 11:20:34','ds_2.Comment_0: 测试新增评论'),(1713949105238,0,82003,12,'2024-04-24 08:58:25','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1717561764730,0,82001,1717561747710,'2024-06-05 04:29:24','ds_2.Comment_0: comment1001'),(1717862858522,0,82001,15,'2024-06-08 16:07:38','ds_2.Comment_0: 测试新增评论'),(1717862858578,0,82001,15,'2024-06-08 16:07:38','ds_2.Comment_0: 测试新增评论'),(1717862891022,0,38710,15,'2024-06-08 16:08:11','ds_2.Comment_0: 测试新增评论'); +INSERT INTO `Comment_0` VALUES (22,221,82001,470,'2017-02-01 11:20:50','ds_2.Comment_0: 修改'),(54,0,82004,170,'2017-02-01 11:20:50','ds_2.Comment_0: This is a Content...-54'),(110,0,93793,371,'2017-02-01 11:23:24','ds_2.Comment_0: This is a Content...-110'),(114,0,82001,371,'2017-03-02 05:56:06','ds_2.Comment_0: test multi put'),(158,0,93793,301,'2018-07-12 17:28:23','ds_2.Comment_0: This is a Content...-157'),(162,0,93793,12,'2017-03-06 05:03:45','ds_2.Comment_0: This is a Content...-162'),(178,0,38710,511,'2017-03-25 12:30:55','ds_2.Comment_0: wbw'),(182,110,82001,371,'2017-03-26 06:12:52','ds_2.Comment_0: hahaha'),(190,0,82001,58,'2017-03-26 07:22:13','ds_2.Comment_0: dbdj'),(206,54,82001,170,'2017-03-29 03:04:23','ds_2.Comment_0: ejej'),(1490780759866,99,82001,170,'2017-03-29 09:45:59','ds_2.Comment_0: 99'),(1490781857242,190,38710,58,'2017-03-29 10:04:17','ds_2.Comment_0: nice'),(1490794953438,1490794937137,82001,12,'2017-03-29 13:42:33','ds_2.Comment_0: All right ok ok ll'),(1490796241178,0,38710,58,'2017-03-29 14:04:01','ds_2.Comment_0: Anything else?'),(1490798710678,110,38710,371,'2017-03-29 14:45:10','ds_2.Comment_0: 110'),(1490854894566,175,82001,12,'2017-03-30 06:21:34','ds_2.Comment_0: it does be a good lang'),(1490863507114,4,82003,470,'2017-03-30 08:45:07','ds_2.Comment_0: yes'),(1490863661426,1490780759866,70793,170,'2017-03-30 08:47:41','ds_2.Comment_0: 66'),(1490864016738,0,82006,511,'2017-03-30 08:53:36','ds_2.Comment_0: I want to have a try!'),(1490864400210,1490864276824,82001,12,'2017-03-30 09:00:00','ds_2.Comment_0: Amazing, isnt it?'),(1490874908570,1490864023700,82055,543,'2017-03-30 11:55:08','ds_2.Comment_0: yeah'),(1490874930994,1490777905437,82055,543,'2017-03-30 11:55:30','ds_2.Comment_0: yy'),(1490875033494,0,82055,301,'2017-03-30 11:57:13','ds_2.Comment_0: More Comments'),(1490973736662,1490973715568,70793,170,'2017-03-31 15:22:16','ds_2.Comment_0: Hello, I am a fresh man'),(1491130701902,0,38710,511,'2017-04-02 10:58:21','ds_2.Comment_0: Thanks for your supports (-^?^-)'),(1491209763162,0,82001,1491200468898,'2017-04-03 08:56:03','ds_2.Comment_0: How do you do'),(1493094307810,0,82001,551,'2017-04-25 04:25:04','ds_2.Comment_0: 删除或修改数据请先创建,不要动原来的,谢谢'),(1493094307910,0,82001,551,'2017-04-25 04:26:04','ds_2.Comment_0: 用POST新增数据'),(1502632433970,0,82002,1493835799335,'2017-08-13 13:53:53','ds_2.Comment_0: just have fun!'),(1508053783278,0,82001,1508053762227,'2017-10-15 07:49:43','ds_2.Comment_0: 可以的'),(1508227498578,1491798370749,82001,551,'2017-10-17 08:04:58','ds_2.Comment_0: g'),(1508462026394,1490850844016,82001,12,'2017-10-20 01:13:46','ds_2.Comment_0: 欧'),(1509346549158,0,82001,170,'2017-10-30 06:55:49','ds_2.Comment_0: 呵呵'),(1510795816462,162,82001,12,'2017-11-16 01:30:16','ds_2.Comment_0: 赞'),(1510813284894,0,82001,12,'2017-11-16 06:21:24','ds_2.Comment_0: asdasdasdas'),(1511374274194,0,82001,170,'2017-11-22 18:11:14','ds_2.Comment_0: 哦哦哦'),(1511407695342,0,1511407581570,371,'2017-11-23 03:28:15','ds_2.Comment_0: 好的'),(1511878031610,1511878024415,1511761906715,12,'2017-11-28 14:07:11','ds_2.Comment_0: 不鸟你'),(1512039030970,1512035117021,82001,32,'2017-11-30 10:50:30','ds_2.Comment_0: 一般九宫格图片都是压缩图,分辨率在300*300左右,加载很快,点击放大后才是原图,1080P左右'),(1514858640958,0,38710,1514858533480,'2018-01-02 02:04:00','ds_2.Comment_0: 斯塔克工业'),(1515057861094,0,82001,58,'2018-01-04 09:24:21','ds_2.Comment_0: 蓉蓉'),(1515057864174,1515057857464,82001,58,'2018-01-04 09:24:24','ds_2.Comment_0: 哦轻松'),(1515057869554,0,82001,58,'2018-01-04 09:24:29','ds_2.Comment_0: ,王者荣耀'),(1516190557098,0,82001,1513094436910,'2018-01-17 12:02:37','ds_2.Comment_0: 哦婆婆'),(1516686985310,0,82001,1516086423441,'2018-01-23 05:56:25','ds_2.Comment_0: hologram'),(1516687072270,1516629533520,82001,1508072633830,'2018-01-23 05:57:52','ds_2.Comment_0: 咯我就'),(1516783920998,0,82001,1513094436910,'2018-01-24 08:52:00','ds_2.Comment_0: 这个是实时的吗'),(1516843720270,1516780129884,82001,1516086423441,'2018-01-25 01:28:40','ds_2.Comment_0: ghj'),(1516862537978,1515057869554,70793,58,'2018-01-25 06:42:17','ds_2.Comment_0: 绝地逃亡吃鸡'),(1516951734010,1514506206319,82001,1513094436910,'2018-01-26 07:28:54','ds_2.Comment_0: 火锅'),(1517234768450,1517229342303,93793,1516086423441,'2018-01-29 14:06:08','ds_2.Comment_0: 9号'),(1519719341810,0,82001,1516086423441,'2018-02-27 08:15:41','ds_2.Comment_0: 我也想抢一张'),(1519979533242,0,82001,1508072633830,'2018-03-02 08:32:13','ds_2.Comment_0: hj'),(1520330788006,0,1520242280259,1514017444961,'2018-03-06 10:06:28','ds_2.Comment_0: 八组'),(1522074360206,1519979533242,82001,1508072633830,'2018-03-26 14:26:00','ds_2.Comment_0: tttt'),(1524032299622,0,82001,1516086423441,'2018-04-18 06:18:19','ds_2.Comment_0: 别给我得怂'),(1524032305810,1524032299622,82001,1516086423441,'2018-04-18 06:18:25','ds_2.Comment_0: 你好'),(1524190412418,1524190367904,38710,1524178455305,'2018-04-20 02:13:32','ds_2.Comment_0: 我的资料>编辑>改下备注'),(1524235902970,1524214012015,82003,1524178455305,'2018-04-20 14:51:42','ds_2.Comment_0: 在我的资料界面编辑备注'),(1524297798490,0,82001,1513094436910,'2018-04-21 08:03:18','ds_2.Comment_0: gg'),(1524461430874,1519979533242,82001,1508072633830,'2018-04-23 05:30:30','ds_2.Comment_0: 哦哦哦'),(1524461436914,0,82001,1508072633830,'2018-04-23 05:30:36','ds_2.Comment_0: 莫'),(1524461441914,0,82001,1508072633830,'2018-04-23 05:30:41','ds_2.Comment_0: 默默'),(1524488068926,1524178500568,82001,1524178455305,'2018-04-23 12:54:28','ds_2.Comment_0: 哦哦哦'),(1524843908458,1524799118232,82001,1512314438990,'2018-04-27 15:45:08','ds_2.Comment_0: 在HttpRequest.addMoment中加的,因为APIJSON的Server Demo没做图片存储,所以目前只能自己传图片的url,可以百度图片上找哈'),(1525658333654,0,82001,1513094436910,'2018-05-07 01:58:53','ds_2.Comment_0: q'),(1527821876802,1527821844576,1527495857924,1527821296110,'2018-06-01 02:57:56','ds_2.Comment_0: 当然好用啊'),(1527837965006,0,82002,1527830474378,'2018-06-01 07:26:05','ds_2.Comment_0: 像平板电脑哈哈'),(1528250648974,0,82001,1523936332614,'2018-06-06 02:04:08','ds_2.Comment_0: hshdv'),(1528516951218,0,82001,1528462217322,'2018-06-09 04:02:31','ds_2.Comment_0: 这里能约到小姐姐算我输୧(๑•̀⌄•́๑)૭'),(1528554476310,0,82001,1516086423441,'2018-06-09 14:27:56','ds_2.Comment_0: thS'),(1528679814166,0,1528339692804,1528676875139,'2018-06-11 01:16:54','ds_2.Comment_0: 12'),(1528972547638,0,82001,1528462217322,'2018-06-14 10:35:47','ds_2.Comment_0: 古古怪怪'),(1531887938362,1531063660028,82001,1531062713966,'2018-07-18 04:25:38','ds_2.Comment_0: 是呀'),(1531983163150,0,1531969715979,1531969818357,'2018-07-19 06:52:43','ds_2.Comment_0: http://q18idc.com'),(1533120405110,1516780129884,82001,1516086423441,'2018-08-01 10:46:45','ds_2.Comment_0: eeeeee'),(1533120420498,1528105592852,82001,1516086423441,'2018-08-01 10:47:00','ds_2.Comment_0: eeeeeee'),(1533195207026,0,82001,1531062713966,'2018-08-02 07:33:27','ds_2.Comment_0: JJ'),(1533631893738,0,82001,1531969818357,'2018-08-07 08:51:33','ds_2.Comment_0: 哈哈哈哈哈哈'),(1534926149638,1517375165233,82001,1508053762227,'2018-08-22 08:22:29','ds_2.Comment_0: 把标准版申报表上班设备'),(1534992151350,0,82001,1516086423441,'2018-08-23 02:42:31','ds_2.Comment_0: 你咋不'),(1535785537390,1535279823332,82003,1520242333325,'2018-09-01 07:05:37','ds_2.Comment_0: 不好哦'),(1535785585222,1534926143012,82003,1508053762227,'2018-09-01 07:06:25','ds_2.Comment_0: 啥?'),(1537410620002,0,82001,1536805585275,'2018-09-20 02:30:20','ds_2.Comment_0: 不一样'),(1537710348414,0,82001,1516086423441,'2018-09-23 13:45:48','ds_2.Comment_0: hhj'),(1537857324518,0,82001,1536805585275,'2018-09-25 06:35:24','ds_2.Comment_0: 嗯呢'),(1544503960414,1537410620002,1544503822963,1536805585275,'2018-12-11 04:52:40','ds_2.Comment_0: 664984'),(1545527898986,1545527888416,82001,1553096819293,'2018-12-23 01:18:18','ds_2.Comment_0: world'),(1551430474490,1551430453424,82001,1553096819293,'2019-03-01 08:54:34','ds_2.Comment_0: 444'),(1551430579358,1516691119239,82001,1516086423441,'2019-03-01 08:56:19','ds_2.Comment_0: 555555'),(1555557860778,1512035117021,82001,32,'2019-04-18 03:24:20','ds_2.Comment_0: 11564546'),(1557754720666,0,82001,1557754680146,'2019-05-13 13:38:40','ds_2.Comment_0: 卧槽(*`へ´*)'),(1557754909538,1557754765785,82012,1557754680146,'2019-05-13 13:41:49','ds_2.Comment_0: https://baijiahao.baidu.com/s?id=1633129683262867786&wfr=spider&for=pc&isFailFlag=1'),(1558150056102,0,82001,1557754680146,'2019-05-18 03:27:36','ds_2.Comment_0: 哈哈哈'),(1562736873122,1534926143012,82001,1508053762227,'2019-07-10 05:34:33','ds_2.Comment_0: 早睡早起'),(1564493476094,1564493464049,82001,1557754680146,'2019-07-30 13:31:16','ds_2.Comment_0: 你好'),(1566263781606,1490864016738,82001,511,'2019-08-20 01:16:21','ds_2.Comment_0: 11'),(1566270967414,0,82001,1558798664043,'2019-08-20 03:16:07','ds_2.Comment_0: 什么'),(1566270991974,0,82001,1558798664043,'2019-08-20 03:16:31','ds_2.Comment_0: 好的'),(1566271039886,1557838424004,82001,1557754680146,'2019-08-20 03:17:19','ds_2.Comment_0: 一部'),(1566271045802,1557838424004,82001,1557754680146,'2019-08-20 03:17:25','ds_2.Comment_0: 一部'),(1568013785742,1558440302601,82001,1557415707105,'2019-09-09 07:23:05','ds_2.Comment_0: sss'),(1571143189570,1566271052875,82001,1557754680146,'2019-10-15 12:39:49','ds_2.Comment_0: 龙'),(1571143196630,1571143189570,82001,1557754680146,'2019-10-15 12:39:56','ds_2.Comment_0: 哦哦哦'),(1573024400998,1545527888416,82001,1553096819293,'2019-11-06 07:13:21','ds_2.Comment_0: 回来了'),(1581314845034,0,82001,12,'2020-02-01 16:00:00','ds_2.Comment_0: 测试新增评论'),(1584336841458,1583897660640,82001,1583574596245,'2020-03-16 05:34:01','ds_2.Comment_0: 好吧'),(1589165545506,0,82001,1583574596245,'2020-05-11 02:52:25','ds_2.Comment_0: 地方唱歌'),(1589255344034,1511407702981,82001,371,'2020-05-12 03:49:04','ds_2.Comment_0: 就刚才v'),(1591754308326,0,82001,1514858533480,'2020-06-10 01:58:28','ds_2.Comment_0: 我下午'),(1592109058370,1576678047584,82001,1557415707105,'2020-06-14 04:30:58','ds_2.Comment_0: 呃呃呃'),(1600010149486,0,82001,1577855941093,'2020-09-13 15:15:49','ds_2.Comment_0: 新年快乐'),(1605590447930,1516686985310,82001,1516086423441,'2020-11-17 05:20:47','ds_2.Comment_0: 哈哈哈哈哈哈'),(1606441650158,0,82001,1606312076474,'2020-11-27 01:47:30','ds_2.Comment_0: 4644646'),(1607078438974,0,82001,543,'2020-12-04 10:40:38','ds_2.Comment_0: 666'),(1609924232430,0,82001,1608215822376,'2021-01-06 09:10:32','ds_2.Comment_0: hahha'),(1611824248994,0,82001,1558798664043,'2021-01-28 08:57:28','ds_2.Comment_0: 找下我'),(1611984282510,0,82001,1611503147421,'2021-01-30 05:24:42','ds_2.Comment_0: 极速版'),(1617350123514,0,82001,12,'2021-04-02 07:55:23','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617700520082,0,82001,1617562878095,'2021-04-06 09:15:20','ds_2.Comment_0: 哦哦哦'),(1617763484998,0,82003,12,'2021-04-07 02:44:45','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1617763503314,0,82003,12,'2021-04-07 02:45:03','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1624189750538,0,82001,1594127400223,'2021-06-20 11:49:10','ds_2.Comment_0: ?'),(1624505997446,0,82001,1617562878095,'2021-06-24 03:39:57','ds_2.Comment_0: 杉树'),(1625193975266,0,82001,1624700434072,'2021-07-02 02:46:15','ds_2.Comment_0: 啥意思?'),(1626055595138,1534926143012,82001,1508053762227,'2021-07-12 02:06:35','ds_2.Comment_0: 哈哈'),(1631761391158,0,82001,1508072633830,'2021-09-16 03:03:11','ds_2.Comment_0: 00'),(1631761391706,0,82001,1508072633830,'2021-09-16 03:03:11','ds_2.Comment_0: 11'),(1631761395754,0,82001,1524178455305,'2021-09-16 03:03:15','ds_2.Comment_0: 111'),(1631761398022,0,82001,551,'2021-09-16 03:03:18','ds_2.Comment_0: 3条重复的'),(1631761398170,0,82001,1583574596245,'2021-09-16 03:03:18','ds_2.Comment_0: 4444444444444'),(1631761409914,0,82001,511,'2021-09-16 03:03:29','ds_2.Comment_0: 123121545645'),(1631761413110,0,82001,1556387217941,'2021-09-16 03:03:33','ds_2.Comment_0: 666'),(1631761414094,0,82001,551,'2021-09-16 03:03:34','ds_2.Comment_0: 4644646'),(1631761414274,0,82001,371,'2021-09-16 03:03:34','ds_2.Comment_0: 666'),(1631761414650,0,82001,12,'2021-09-16 03:03:34','ds_2.Comment_0: 111'),(1631761416082,0,82001,1512314438990,'2021-09-16 03:03:36','ds_2.Comment_0: 22222222222222222'),(1631761416578,0,82001,1516086423441,'2021-09-16 03:03:36','ds_2.Comment_0: 654342365656'),(1631761417254,0,82001,1577855941093,'2021-09-16 03:03:37','ds_2.Comment_0: 123121545645'),(1631761429282,0,82001,1541557989440,'2021-09-16 03:03:49','ds_2.Comment_0: 1'),(1631761429738,0,82001,1513094436910,'2021-09-16 03:03:49','ds_2.Comment_0: 1111'),(1631761431546,0,82001,58,'2021-09-16 03:03:51','ds_2.Comment_0: 111'),(1631761432774,0,82001,551,'2021-09-16 03:03:52','ds_2.Comment_0: 111'),(1631761438726,0,82001,1512314438990,'2021-09-16 03:03:58','ds_2.Comment_0: -162'),(1631761439878,0,82001,301,'2021-09-16 03:03:59','ds_2.Comment_0: 11111111'),(1631761441294,0,82001,301,'2021-09-16 03:04:01','ds_2.Comment_0: 111'),(1631761442674,0,82001,58,'2021-09-16 03:04:02','ds_2.Comment_0: 111'),(1631761443394,0,82001,1594385349411,'2021-09-16 03:04:03','ds_2.Comment_0: 1545456'),(1631761445242,0,82001,511,'2021-09-16 03:04:05','ds_2.Comment_0: 110'),(1631761446282,0,82001,511,'2021-09-16 03:04:06','ds_2.Comment_0: $$'),(1631761448702,0,82001,371,'2021-09-16 03:04:08','ds_2.Comment_0: 111'),(1631761454386,0,82001,301,'2021-09-16 03:04:14','ds_2.Comment_0: $$'),(1631761455242,0,82001,170,'2021-09-16 03:04:15','ds_2.Comment_0: 00'),(1631761455446,0,82001,1611503147421,'2021-09-16 03:04:15','ds_2.Comment_0: 1'),(1631761455766,0,82001,12,'2021-09-16 03:04:15','ds_2.Comment_0: 110'),(1631761456926,0,82001,1508072633830,'2021-09-16 03:04:16','ds_2.Comment_0: 11111111'),(1631761457406,0,82001,1528676875139,'2021-09-16 03:04:17','ds_2.Comment_0: ,王者荣耀'),(1631761457918,0,82001,1627367646018,'2021-09-16 03:04:17','ds_2.Comment_0: 00'),(1631761459034,0,82001,1508072633830,'2021-09-16 03:04:19','ds_2.Comment_0: 111'),(1631761459826,0,82001,1528462217322,'2021-09-16 03:04:19','ds_2.Comment_0: (fdsd)'),(1631761460510,0,82001,371,'2021-09-16 03:04:20','ds_2.Comment_0: 00'),(1631761578502,0,82001,12,'2021-09-16 03:06:18','ds_2.Comment_0: 铁人'),(1631761598482,0,82001,12,'2021-09-16 03:06:38','ds_2.Comment_0: W'),(1631761602570,0,82001,12,'2021-09-16 03:06:42','ds_2.Comment_0: 555555'),(1631761605962,0,82001,12,'2021-09-16 03:06:45','ds_2.Comment_0: hologram'),(1633794175654,0,82001,1632294230574,'2021-10-09 15:42:55','ds_2.Comment_0: 来了来了'),(1633794180858,0,82001,1632294230574,'2021-10-09 15:43:00','ds_2.Comment_0: 略略略'),(1633861634914,0,82001,1632294230574,'2021-10-10 10:27:14','ds_2.Comment_0: SSR'),(1635404369114,0,82002,12,'2021-10-28 06:59:29','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1639449627546,0,82001,1638327674898,'2021-12-14 02:40:27','ds_2.Comment_0: 诗歌鉴赏高价收购'),(1639449637290,0,82001,1638327674898,'2021-12-14 02:40:37','ds_2.Comment_0: 大概就是感觉师傅师傅'),(1639455571334,1639386671675,82001,1638327674898,'2021-12-14 04:19:31','ds_2.Comment_0: 给vvv'),(1640785095358,2,82001,12,'2021-12-29 13:38:15','ds_2.Comment_0: test'),(1648689282014,0,82001,1648604448403,'2022-03-31 01:14:42','ds_2.Comment_0: 7414'),(1649500711162,0,82001,1648604448403,'2022-04-09 10:38:31','ds_2.Comment_0: 电竞少女'),(1650022315682,0,82001,1649086185746,'2022-04-15 11:31:55','ds_2.Comment_0: 哈哈哈'),(1650353671162,0,82002,12,'2022-04-19 07:34:31','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1651115672370,0,82001,1646030604412,'2022-04-28 03:14:32','ds_2.Comment_0: 哥好好回家'),(1651115702850,1651115672370,82001,1646030604412,'2022-04-28 03:15:02','ds_2.Comment_0: 多尴尬哈哈哈哈哈'),(1651717781318,0,82001,12,'2022-05-05 02:29:41','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1651745263734,0,82001,12,'2022-05-05 10:07:43','ds_2.Comment_0: A machine base 0 & 1'),(1651745427922,0,82001,12,'2022-05-05 10:10:27','ds_2.Comment_0: A machine base 0 & 1'),(1652796392746,0,82001,1651846337935,'2022-05-17 14:06:32','ds_2.Comment_0: dd'),(1659980908050,0,82001,1649086185746,'2022-08-08 17:48:28','ds_2.Comment_0: 后'),(1660209535062,0,82001,12,'2022-08-11 09:18:55','ds_2.Comment_0: APIJSON123123!'),(1661620771690,0,82001,301,'2022-08-27 17:19:31','ds_2.Comment_0: 鸡鸡鸡鸡'),(1663572237766,0,82001,12,'2022-09-19 07:23:57','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1666604100490,0,82003,12,'2022-10-24 09:35:00','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1667542950230,0,82001,12,'2022-11-04 06:22:30','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1670591905258,1670420459420,82001,1665293930441,'2022-12-09 13:18:25','ds_2.Comment_0: qqq'),(1670591910246,0,82001,1665293930441,'2022-12-09 13:18:30','ds_2.Comment_0: qqq'),(1670917782466,0,82001,12,'2022-12-13 07:49:42','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1671322196362,0,82001,1670981978461,'2022-12-18 00:09:56','ds_2.Comment_0: 哈哈哈哈个'),(1672729125594,0,82001,12,'2023-01-03 06:58:45','ds_2.Comment_0: 66666 !'),(1675840929526,0,82001,1675742375160,'2023-02-08 07:22:09','ds_2.Comment_0: they'),(1675840939782,0,82001,1675742375160,'2023-02-08 07:22:19','ds_2.Comment_0: they'),(1675840959282,0,82001,1675742375160,'2023-02-08 07:22:39','ds_2.Comment_0: 对方纷纷'),(1676271673426,0,82001,1675910359578,'2023-02-13 07:01:13','ds_2.Comment_0: 55555'),(1676271718906,0,82001,1675742375160,'2023-02-13 07:01:58','ds_2.Comment_0: 3333'),(1678959106674,0,82003,12,'2023-03-16 09:31:46','ds_2.Comment_0: APIJSON'),(1678959151894,0,82003,12,'2023-03-16 09:32:31','ds_2.Comment_0: APIJSON'),(1681710767334,0,82002,1678877778484,'2023-04-17 05:52:47','ds_2.Comment_0: 252'),(1681999170630,0,82001,470,'2023-04-20 13:59:30','ds_2.Comment_0: ffff'),(1681999220354,0,82001,470,'2023-04-20 14:00:20','ds_2.Comment_0: ffff'),(1682000819794,0,82001,470,'2023-04-20 14:26:59','ds_2.Comment_0: xdddddd'),(1682314174378,0,82001,1682269375445,'2023-04-24 05:29:34','ds_2.Comment_0: 股民'),(1682783899598,0,82001,1679313363196,'2023-04-29 15:58:19','ds_2.Comment_0: 哈喽'),(1683353535310,0,82001,12,'2023-05-06 06:12:15','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683354028826,0,82001,142,'2023-05-06 06:20:28','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1683355771386,0,82001,143,'2023-05-06 06:49:31','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1684465899062,0,82001,12,'2023-05-19 03:11:39','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1684489610762,0,82001,1682096402171,'2023-05-19 09:46:50','ds_2.Comment_0: GGG'),(1686303787138,0,82001,1645416338268,'2023-06-09 09:43:07','ds_2.Comment_0: 哦咯模棱两可'),(1686303807242,0,82001,1645416338268,'2023-06-09 09:43:27','ds_2.Comment_0: 哦咯模棱两可'),(1686328097906,0,82001,1645416338268,'2023-06-09 16:28:17','ds_2.Comment_0: 牛逼'),(1686328118014,0,82001,1645416338268,'2023-06-09 16:28:38','ds_2.Comment_0: 牛逼'),(1686897864630,0,82001,1684981561371,'2023-06-16 06:44:24','ds_2.Comment_0: mood'),(1686897884766,0,82001,1684981561371,'2023-06-16 06:44:44','ds_2.Comment_0: mood'),(1686897924994,0,82001,1684981561371,'2023-06-16 06:45:25','ds_2.Comment_0: mood'),(1686898120502,0,82001,1684981561371,'2023-06-16 06:48:40','ds_2.Comment_0: mood'),(1687590211238,0,82001,123333,'2023-06-24 07:03:31','ds_2.Comment_0: dkf;dfd;akfd;dadj;\''),(1689822569818,0,82001,12,'2023-07-20 03:09:29','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1689822595230,0,82001,12,'2023-07-20 03:09:55','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1693680555338,0,82006,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd-7760609746862695'),(1693680555358,0,82006,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd3879470925263683'),(1693680555362,0,82010,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd2343873016360063'),(1693680555366,0,82005,12,'2023-09-04 06:11:59','ds_2.Comment_0: Ab_Cd-1666369813764240'),(1695805814258,0,82001,12,'2023-09-27 09:10:14','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1695805825890,0,82001,12,'2023-09-27 09:10:25','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1697115587910,0,82001,1,'2023-10-12 12:59:47','ds_2.Comment_0: 1'),(1698723401506,0,82002,12,'2023-10-31 03:36:41','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1700403475754,0,82001,1700372077715,'2023-11-19 14:17:55','ds_2.Comment_0: 测试新增动态'),(1700489417302,0,82002,1700488719094,'2023-11-20 14:10:17','ds_2.Comment_0: 哈哈'),(1701153019998,0,82001,12,'2023-11-28 06:30:20','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701222052938,0,82001,12,'2023-11-29 01:40:52','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701222576018,0,82001,12,'2023-11-29 01:49:36','ds_2.Comment_0: 这是新建内容。'),(1701676156942,0,82002,12,'2023-12-04 07:49:16','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701845609830,0,82001,12,'2023-12-06 06:53:29','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1701848980462,0,82001,12,'2023-12-06 07:49:40','ds_2.Comment_0: 这是新建!'),(1702401213366,0,82001,1700488719094,'2023-12-12 17:13:33','ds_2.Comment_0: vivid'),(1702401213374,0,82003,12,'2023-12-13 10:02:05','ds_2.Comment_0: Ab_Cd5033618171570795'),(1702401213378,0,82003,401,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd-3846398120850732'),(1702401213382,0,82002,12,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd7736427789199583'),(1702401213386,0,82006,12,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd4296953153310075'),(1702401213394,0,82006,401,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd8265765743697971'),(1702401213402,0,82001,12,'2023-12-13 10:02:06','ds_2.Comment_0: Ab_Cd6865036217185303'),(1702401213414,0,82006,12,'2023-12-13 10:02:07','ds_2.Comment_0: Ab_Cd-2580147070595628'),(1702401213434,0,82007,12,'2023-12-13 10:02:07','ds_2.Comment_0: Ab_Cd7783945763291991'),(1702401213438,0,82010,12,'2023-12-13 10:02:07','ds_2.Comment_0: Ab_Cd-8860729646372811'),(1702401213446,0,82009,401,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd-6769406496116663'),(1702401213454,0,82004,12,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd2068374097643959'),(1702401213458,0,82008,12,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd8388816955600171'),(1702401213462,0,82003,401,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd-478588537110904'),(1702401213466,0,82007,401,'2023-12-13 10:02:08','ds_2.Comment_0: Ab_Cd3852915623174643'),(1702401213470,0,82002,12,'2023-12-13 10:02:39','ds_2.Comment_0: Ab_Cd-1275163445102252'),(1702401213482,0,82006,12,'2023-12-13 10:02:39','ds_2.Comment_0: Ab_Cd8050322363235779'),(1702401213498,0,82006,401,'2023-12-13 10:02:40','ds_2.Comment_0: Ab_Cd4118056555122167'),(1702401213514,0,82005,401,'2023-12-13 10:02:40','ds_2.Comment_0: Ab_Cd4591331730684723'),(1702401213530,0,82008,401,'2023-12-13 10:02:40','ds_2.Comment_0: Ab_Cd-600763026019652'),(1702401213534,0,82004,12,'2023-12-13 10:02:41','ds_2.Comment_0: Ab_Cd1356568518605267'),(1702401213546,0,82008,12,'2023-12-13 10:02:41','ds_2.Comment_0: Ab_Cd-1625988333712444'),(1704439975418,1703572770503,82001,1703425198937,'2024-01-05 07:32:55','ds_2.Comment_0: 抹去'),(1705992223166,0,82001,12,'2024-01-23 06:43:43','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1708508333650,0,82001,1684981356791,'2024-02-21 09:38:53','ds_2.Comment_0: 想你想你想看看咱俩走'),(1708929935730,0,82001,1693680292080,'2024-02-26 06:45:35','ds_2.Comment_0: art'),(1709022540698,0,82003,15,'2024-02-27 08:29:00','ds_2.Comment_0: 测试新增评论'),(1709024647986,0,82003,15,'2024-02-27 09:04:08','ds_2.Comment_0: 测试新增评论'),(1709623912338,0,82001,1709285309898,'2024-03-05 07:31:52','ds_2.Comment_0: 哎'),(1709792472054,0,82003,15,'2024-03-07 06:21:12','ds_2.Comment_0: 测试新增评论'),(1709798958718,0,88888,15,'2024-03-07 08:09:18','ds_2.Comment_0: 测试新增评论'),(1709810752538,0,82001,15,'2024-03-07 11:25:52','ds_2.Comment_0: 测试新增评论'),(1709975068990,1583848843283,82003,1583574596245,'2024-03-09 09:04:29','ds_2.Comment_0: hhh'),(1709975280398,1626428214932,82003,1619511861462,'2024-03-09 09:08:00','ds_2.Comment_0: ok'),(1710337723054,0,82001,1710233170301,'2024-03-13 13:48:43','ds_2.Comment_0: wee'),(1711452033966,0,82001,15,'2024-03-26 11:20:34','ds_2.Comment_0: 测试新增评论'),(1713949105238,0,82003,12,'2024-04-24 08:58:25','ds_2.Comment_0: APIJSON,let interfaces and documents go to hell !'),(1717561764730,0,82001,1717561747710,'2024-06-05 04:29:24','ds_2.Comment_0: comment1001'),(1717862858522,0,82001,15,'2024-06-08 16:07:38','ds_2.Comment_0: 测试新增评论'),(1717862858578,0,82001,15,'2024-06-08 16:07:38','ds_2.Comment_0: 测试新增评论'),(1717862891022,0,38710,15,'2024-06-08 16:08:11','ds_2.Comment_0: 测试新增评论'),(1738597656730,0,82001,12,'2025-02-03 15:47:38','test post comment 1'); /*!40000 ALTER TABLE `Comment_0` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; @@ -56,4 +56,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-02-03 23:27:31 +-- Dump completed on 2025-02-03 23:54:01 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_1.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_1.sql index e30c5b1..17826cf 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_1.sql +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_Comment_1.sql @@ -43,7 +43,7 @@ CREATE TABLE `Comment_1` ( LOCK TABLES `Comment_1` WRITE; /*!40000 ALTER TABLE `Comment_1` DISABLE KEYS */; -INSERT INTO `Comment_1` VALUES (47,4,70793,470,'2017-02-01 11:20:50','ds_2.Comment_1: This is a Content...-47'),(51,45,82003,301,'2017-02-01 11:20:50','ds_2.Comment_1: This is a Content...-51'),(99,44,70793,170,'2017-02-01 11:20:50','ds_2.Comment_1: This is a Content...-99'),(115,0,38710,371,'2017-03-02 05:56:06','ds_2.Comment_1: This is a Content...-115'),(163,0,82001,235,'2017-03-02 05:56:06','ds_2.Comment_1: This is a Content...-163'),(167,0,82001,58,'2017-03-25 11:48:41','ds_2.Comment_1: Nice!'),(175,0,38710,12,'2017-03-25 12:26:53','ds_2.Comment_1: Java is the best program language!'),(1490778122719,175,82001,12,'2017-03-29 09:02:02','ds_2.Comment_1: Yeah! I think so!'),(1490778494751,1490778122719,82001,12,'2017-03-29 09:08:14','ds_2.Comment_1: reply Android82001'),(1490781865407,1490781857242,38710,58,'2017-03-29 10:04:25','ds_2.Comment_1: wow'),(1490781899147,197,38710,12,'2017-03-29 10:04:59','ds_2.Comment_1: kaka'),(1490796629591,175,38710,12,'2017-03-29 14:10:29','ds_2.Comment_1: well'),(1490863443219,1490850844016,82002,12,'2017-03-30 08:44:03','ds_2.Comment_1: me too!'),(1490863711703,0,70793,511,'2017-03-30 08:48:31','ds_2.Comment_1: I hope I can join'),(1490863717947,178,70793,511,'2017-03-30 08:48:37','ds_2.Comment_1: what?'),(1490863915675,0,82006,235,'2017-03-30 08:51:55','ds_2.Comment_1: Good boy'),(1490863978239,1490796241178,82006,58,'2017-03-30 08:52:58','ds_2.Comment_1: there still remains a question…'),(1490874968779,0,82055,12,'2017-03-30 11:56:08','ds_2.Comment_1: I love it'),(1490879678127,0,82001,543,'2017-03-30 13:14:38','ds_2.Comment_1: Baby you are a firework!'),(1490973890875,1490864039264,93793,551,'2017-03-31 15:24:50','ds_2.Comment_1: While I donot think so…'),(1491119615611,1490864023700,82001,543,'2017-04-02 07:53:35','ds_2.Comment_1: $$'),(1491312438951,1490863651493,82001,595,'2017-04-04 13:27:18','ds_2.Comment_1: WaKaKa!'),(1491740899179,0,82001,470,'2017-04-09 12:28:19','ds_2.Comment_1: www'),(1491798499667,115,82002,371,'2017-04-10 04:28:19','ds_2.Comment_1: I do not understand…'),(1492932228287,1491209763162,38710,1491200468898,'2017-04-23 07:23:48','ds_2.Comment_1: fine,thanks'),(1509346556395,0,82001,170,'2017-10-30 06:55:56','ds_2.Comment_1: 测试'),(1511374269759,99,82001,170,'2017-11-22 18:11:09','ds_2.Comment_1: 记录里'),(1511878024415,0,1511761906715,12,'2017-11-28 14:07:04','ds_2.Comment_1: 你今年'),(1512035094555,0,82001,12,'2017-11-30 09:44:54','ds_2.Comment_1: 呵呵呵'),(1512531859019,0,1512531601485,1512314438990,'2017-12-06 03:44:19','ds_2.Comment_1: 666'),(1513656045399,0,82001,1508072633830,'2017-12-19 04:00:45','ds_2.Comment_1: 444444'),(1514425796195,0,82001,1513094436910,'2017-12-28 01:49:56','ds_2.Comment_1: 一起'),(1514506206319,1514478784653,38710,1513094436910,'2017-12-29 00:10:06','ds_2.Comment_1: 碰到哪些了呢?欢迎指出,尽快解决^_^'),(1514858707767,0,70793,1514858533480,'2018-01-02 02:05:07','ds_2.Comment_1: 壕友乎?'),(1515313792063,162,82001,12,'2018-01-07 08:29:52','ds_2.Comment_1: you'),(1515313823155,164,82001,12,'2018-01-07 08:30:23','ds_2.Comment_1: you'),(1516687437251,1516686985310,82001,1516086423441,'2018-01-23 06:03:57','ds_2.Comment_1: 你家里好哦'),(1516691119239,1516686985310,38710,1516086423441,'2018-01-23 07:05:19','ds_2.Comment_1: 我喜欢Hololens嘿嘿'),(1516931850067,0,82001,1516086423441,'2018-01-26 01:57:30','ds_2.Comment_1: 1111111111111'),(1516951826863,0,82001,170,'2018-01-26 07:30:26','ds_2.Comment_1: 黑珍珠'),(1517193278459,0,82001,1508072633830,'2018-01-29 02:34:38','ds_2.Comment_1: 112'),(1517229342303,0,82001,1516086423441,'2018-01-29 12:35:42','ds_2.Comment_1: 几号抢的'),(1519813825959,0,82001,1516086423441,'2018-02-28 10:30:25','ds_2.Comment_1: 距P民'),(1520231250819,0,82001,12,'2018-03-05 06:27:30','ds_2.Comment_1: 浑身难受呢'),(1520264640815,0,70793,1520242333325,'2018-03-05 15:44:00','ds_2.Comment_1: 兰博基尼'),(1520699466219,1520578883309,82001,12,'2018-03-10 16:31:06','ds_2.Comment_1: 壕'),(1524032180807,1519719341810,82001,1516086423441,'2018-04-18 06:16:20','ds_2.Comment_1: 你好啊'),(1524032255755,1519974842508,82001,1516086423441,'2018-04-18 06:17:35','ds_2.Comment_1: 单身到底吗?'),(1524178495587,0,1524042900591,1524178455305,'2018-04-19 22:54:55','ds_2.Comment_1: 嘻嘻'),(1524190941111,1524032244441,82003,1516086423441,'2018-04-20 02:22:21','ds_2.Comment_1: 老六'),(1524214012015,1524190367904,1524042900591,1524178455305,'2018-04-20 08:46:52','ds_2.Comment_1: 怎么换url'),(1524798402799,0,1523626157302,1524178455305,'2018-04-27 03:06:42','ds_2.Comment_1: 能不能把本地的图片传到服务器,这样大家都能看到了,用url换头像不太习惯'),(1524844222775,1524798402799,82001,1524178455305,'2018-04-27 15:50:22','ds_2.Comment_1: 目前也可以百度一张图,把对应的url传上去,大家就都能看到了哈哈'),(1528333174811,0,82001,1514017444961,'2018-06-07 00:59:34','ds_2.Comment_1: xj'),(1528463152459,1528463135762,1528339692804,1528462217322,'2018-06-08 13:05:52','ds_2.Comment_1: 我想去'),(1528463165903,0,1528339692804,1528462217322,'2018-06-08 13:06:05','ds_2.Comment_1: 我想去'),(1528698907535,0,82001,1516086423441,'2018-06-11 06:35:07','ds_2.Comment_1: yhbv'),(1528703971675,1528681265496,82001,1528462217322,'2018-06-11 07:59:31','ds_2.Comment_1: 一起陪小姐姐出游*。٩(ˊωˋ*)و✧'),(1530528524447,0,38710,1528269988360,'2018-07-02 10:48:44','ds_2.Comment_1: 所以HttpRequest里写死了两张图片url,你可以改下'),(1531412264667,0,82003,1528356378455,'2018-07-12 16:17:44','ds_2.Comment_1: 去哪呢?'),(1531894411487,0,82001,1520242333325,'2018-07-18 06:13:31','ds_2.Comment_1: sssx'),(1533008631299,1532057419100,82001,1531969818357,'2018-07-31 03:43:51','ds_2.Comment_1: 加上'),(1533188056603,1531887938362,82001,1531062713966,'2018-08-02 05:34:16','ds_2.Comment_1: 顺带'),(1533202917743,1533186909764,82001,1531969818357,'2018-08-02 09:41:57','ds_2.Comment_1: 00'),(1534128014211,0,82001,1520242333325,'2018-08-13 02:40:14','ds_2.Comment_1: zxxx'),(1535279827983,0,82001,1520242333325,'2018-08-26 10:37:07','ds_2.Comment_1: 斤斤计较'),(1535600430479,0,82001,1520242333325,'2018-08-30 03:40:30','ds_2.Comment_1: 法拉利'),(1535963525135,1535963519864,82001,1535781636403,'2018-09-03 08:32:05','ds_2.Comment_1: gyuji'),(1537373307627,0,82001,1516086423441,'2018-09-19 16:08:27','ds_2.Comment_1: 。。。'),(1537857334299,1537857324518,82001,1536805585275,'2018-09-25 06:35:34','ds_2.Comment_1: 嗯嗯'),(1539868250267,1531063660028,82001,1531062713966,'2018-10-18 13:10:50','ds_2.Comment_1: 555555555555555555'),(1539868269471,1539868250267,82001,1531062713966,'2018-10-18 13:11:09','ds_2.Comment_1: 4444444444444'),(1543193682067,0,1528339692804,1528269822710,'2018-11-26 00:54:42','ds_2.Comment_1: ss'),(1545927001999,1545895875719,82001,1553096819293,'2018-12-27 16:10:02','ds_2.Comment_1: 哦哦哦www'),(1551409858047,0,82001,301,'2019-03-01 03:10:58','ds_2.Comment_1: 您'),(1552297994119,0,82001,1512314438990,'2019-03-11 09:53:14','ds_2.Comment_1: 小米'),(1553053346095,0,82001,1553096819293,'2019-03-20 03:42:26','ds_2.Comment_1: 启'),(1555557868075,0,82001,32,'2019-04-18 03:24:28','ds_2.Comment_1: 121212312456'),(1558440349435,0,82001,1557754680146,'2019-05-21 12:05:49','ds_2.Comment_1: 解决'),(1566270981387,1566270974217,82001,1558798664043,'2019-08-20 03:16:21','ds_2.Comment_1: 什么鬼'),(1566271052875,0,82001,1557754680146,'2019-08-20 03:17:32','ds_2.Comment_1: YY'),(1569202210099,0,82001,1513094436910,'2019-09-23 01:30:10','ds_2.Comment_1: 6765765756'),(1569202223099,0,82001,1513094436910,'2019-09-23 01:30:23','ds_2.Comment_1: 3423423423'),(1569202232091,1569202210099,82001,1513094436910,'2019-09-23 01:30:32','ds_2.Comment_1: 哈哈'),(1570609939135,0,82001,704,'2019-10-09 08:32:19','ds_2.Comment_1: 哈哈哈'),(1571143167015,0,82001,1557754680146,'2019-10-15 12:39:27','ds_2.Comment_1: 回老家了'),(1581892352819,0,82001,1508053762227,'2020-02-16 22:32:32','ds_2.Comment_1: 哈哈'),(1583848843283,0,82001,1583574596245,'2020-03-10 14:00:43','ds_2.Comment_1: 哼哼唧唧'),(1584336845779,1584336841458,82001,1583574596245,'2020-03-16 05:34:05','ds_2.Comment_1: 宝宝'),(1589255368635,1491119695580,82001,371,'2020-05-12 03:49:28','ds_2.Comment_1: 家常菜比较'),(1589255382551,116,82001,371,'2020-05-12 03:49:42','ds_2.Comment_1: u好v发'),(1594290846627,1589255358661,82001,371,'2020-07-09 10:34:06','ds_2.Comment_1: 自己可以恢复2自己吗?'),(1594779313019,0,82001,1594385350586,'2020-07-15 02:15:13','ds_2.Comment_1: 空间'),(1599034919083,0,82001,1594385349411,'2020-09-02 08:21:59','ds_2.Comment_1: 13264646'),(1600155068139,0,82001,1594127400223,'2020-09-15 07:31:08','ds_2.Comment_1: 38:—3—'),(1600155073891,1600155068139,82001,1594127400223,'2020-09-15 07:31:13','ds_2.Comment_1: 蜀地'),(1600184363431,1594462397453,82001,1594385349411,'2020-09-15 15:39:23','ds_2.Comment_1: 就是就是你说呢上班'),(1611547274671,0,82001,1611503147421,'2021-01-25 04:01:14','ds_2.Comment_1: 哈哈啊'),(1617265294447,0,82001,1611503147421,'2021-04-01 08:21:34','ds_2.Comment_1: 的'),(1617457502251,0,82001,1611503147421,'2021-04-03 13:45:02','ds_2.Comment_1: 我很开心'),(1621932358167,1617457502251,82001,1611503147421,'2021-05-25 08:45:58','ds_2.Comment_1: 我好奇'),(1623143559223,0,82001,12,'2021-06-08 09:12:39','ds_2.Comment_1: test'),(1628094888155,0,82001,1624700434072,'2021-08-04 16:34:48','ds_2.Comment_1: 。。。'),(1628166384971,0,82001,1583574596245,'2021-08-05 12:26:24','ds_2.Comment_1: 老师的'),(1628778280811,0,82001,1627367646018,'2021-08-12 14:24:40','ds_2.Comment_1: ?'),(1630891112935,0,82001,1630746489563,'2021-09-06 01:18:32','ds_2.Comment_1: (fdsd)'),(1630891147547,0,82001,1630746489563,'2021-09-06 01:19:07','ds_2.Comment_1: 3355'),(1630899176191,0,82001,1630893108502,'2021-09-06 03:32:56','ds_2.Comment_1: 5555'),(1631761398611,0,82001,1531969818357,'2021-09-16 03:03:18','ds_2.Comment_1: 654342365656'),(1631761409539,0,82001,371,'2021-09-16 03:03:29','ds_2.Comment_1: 111'),(1631761410755,0,82001,1508053762227,'2021-09-16 03:03:30','ds_2.Comment_1: $$'),(1631761412727,0,82001,1516086423441,'2021-09-16 03:03:32','ds_2.Comment_1: 3333'),(1631761412927,0,82001,58,'2021-09-16 03:03:32','ds_2.Comment_1: 555555'),(1631761413307,0,82001,1508072633830,'2021-09-16 03:03:33','ds_2.Comment_1: ,王者荣耀'),(1631761414467,0,82001,1516086423441,'2021-09-16 03:03:34','ds_2.Comment_1: -162'),(1631761415511,0,82001,1557754680146,'2021-09-16 03:03:35','ds_2.Comment_1: 00'),(1631761415879,0,82001,1508072633830,'2021-09-16 03:03:35','ds_2.Comment_1: 123121545645'),(1631761428791,0,82001,371,'2021-09-16 03:03:48','ds_2.Comment_1: $$'),(1631761430823,0,82001,1527821296110,'2021-09-16 03:03:50','ds_2.Comment_1: 444444'),(1631761433815,0,82001,1528356421201,'2021-09-16 03:03:53','ds_2.Comment_1: 111'),(1631761442871,0,82001,58,'2021-09-16 03:04:02','ds_2.Comment_1: 11111111'),(1631761443039,0,82001,1557754680146,'2021-09-16 03:04:03','ds_2.Comment_1: 123'),(1631761443879,0,82001,1508072633830,'2021-09-16 03:04:03','ds_2.Comment_1: 110'),(1631761444199,0,82001,235,'2021-09-16 03:04:04','ds_2.Comment_1: 11111111'),(1631761444879,0,82001,1527830474378,'2021-09-16 03:04:04','ds_2.Comment_1: -162'),(1631761446691,0,82001,1516086423441,'2021-09-16 03:04:06','ds_2.Comment_1: 1'),(1631761456415,0,82001,1516086423441,'2021-09-16 03:04:16','ds_2.Comment_1: 111'),(1631761456615,0,82001,235,'2021-09-16 03:04:16','ds_2.Comment_1: 1111'),(1631761457271,0,82001,170,'2021-09-16 03:04:17','ds_2.Comment_1: $$'),(1631761457583,0,82001,1557754680146,'2021-09-16 03:04:17','ds_2.Comment_1: -162'),(1631761457755,0,82001,170,'2021-09-16 03:04:17','ds_2.Comment_1: 00'),(1631761458047,0,82001,58,'2021-09-16 03:04:18','ds_2.Comment_1: 1'),(1631761459175,0,82001,1520242333325,'2021-09-16 03:04:19','ds_2.Comment_1: 111'),(1631761460839,0,82001,1531969818357,'2021-09-16 03:04:20','ds_2.Comment_1: 1'),(1631761585035,0,82001,12,'2021-09-16 03:06:25','ds_2.Comment_1: 112'),(1631761594059,0,82001,12,'2021-09-16 03:06:34','ds_2.Comment_1: 因为没做前端上传和后端保存图片的功能,APIJSONApp主要是用来展示APIJSON的自动化接口的'),(1637565584211,0,82001,1637405012523,'2021-11-22 07:19:44','ds_2.Comment_1: 你好,有联系方式吗'),(1637566406511,1637565584211,82003,1637405012523,'2021-11-22 07:33:26','ds_2.Comment_1: 有什么事吗?'),(1638386804783,0,82001,1638327674898,'2021-12-01 19:26:44','ds_2.Comment_1: 是这样,赞!'),(1638631324735,0,82001,1637985952844,'2021-12-04 15:22:04','ds_2.Comment_1: 带点'),(1639386671675,0,82001,1638327674898,'2021-12-13 09:11:11','ds_2.Comment_1: hhh'),(1639556962499,1638631324735,82001,1637985952844,'2021-12-15 08:29:22','ds_2.Comment_1: 就是竞技等级'),(1639556974079,1638631324735,82001,1637985952844,'2021-12-15 08:29:34','ds_2.Comment_1: 本恩'),(1639737103991,0,82001,1638327674898,'2021-12-17 10:31:43','ds_2.Comment_1: 把'),(1640325878347,0,82003,12,'2021-12-24 06:04:38','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1645678663535,1645678658757,82001,1645416338268,'2022-02-24 04:57:43','ds_2.Comment_1: 太肝'),(1647416576411,0,82001,1646030924765,'2022-03-16 07:42:56','ds_2.Comment_1: 61'),(1648716219295,0,82001,1648604448242,'2022-03-31 08:43:39','ds_2.Comment_1: 12312'),(1649548802611,0,82001,1649086182892,'2022-04-10 00:00:02','ds_2.Comment_1: Find me'),(1650022326907,0,82001,1649086185746,'2022-04-15 11:32:06','ds_2.Comment_1: 你ing明明哦'),(1650786605459,1650022311005,82001,1649086185746,'2022-04-24 07:50:05','ds_2.Comment_1: 你好'),(1651717769047,0,82001,12,'2022-05-05 02:29:29','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1651745295227,0,82001,12,'2022-05-05 10:08:15','ds_2.Comment_1: A machine base 0 & 1'),(1653122462507,0,82001,12,'2022-05-21 08:41:02','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1659086363211,0,82001,12,'2022-07-29 09:19:23','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1660209520647,0,82001,12,'2022-08-11 09:18:40','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1661830724947,0,82001,12,'2022-08-30 03:38:44','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1663572556775,0,82001,12,'2022-09-19 07:29:16','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1665865931679,0,82001,1665293930441,'2022-10-15 20:32:11','ds_2.Comment_1: 测试你亩'),(1669345764759,0,82001,1665293930441,'2022-11-25 03:09:24','ds_2.Comment_1: 起咯啦咯啦'),(1671322206423,0,82001,1670981978461,'2022-12-18 00:10:06','ds_2.Comment_1: 哈哈哈哈个'),(1671437025975,0,82001,1649672357944,'2022-12-19 08:03:45','ds_2.Comment_1: sss'),(1672729132415,0,82001,12,'2023-01-03 06:58:52','ds_2.Comment_1: Adam'),(1673266959019,0,82001,1634090516839,'2023-01-09 12:22:39','ds_2.Comment_1: 好的'),(1676271683595,0,82001,1675910359578,'2023-02-13 07:01:23','ds_2.Comment_1: 3333'),(1677154663707,0,82001,1677144307563,'2023-02-23 12:17:43','ds_2.Comment_1: go on'),(1678971043311,0,82001,1678877778484,'2023-03-16 12:50:43','ds_2.Comment_1: good'),(1679450026467,0,82001,1679313363196,'2023-03-22 01:53:46','ds_2.Comment_1: ggggg'),(1679645523543,0,82001,1675742375160,'2023-03-24 08:12:03','ds_2.Comment_1: zzzzz'),(1680076982343,1678971043311,82001,1678877778484,'2023-03-29 08:03:02','ds_2.Comment_1: 666'),(1680742650703,0,82001,1680494769487,'2023-04-06 00:57:30','ds_2.Comment_1: 噢哈哈哈'),(1681710728099,0,82002,1679908549702,'2023-04-17 05:52:08','ds_2.Comment_1: 111'),(1681999172055,0,82001,470,'2023-04-20 13:59:32','ds_2.Comment_1: ffff'),(1681999221287,0,82001,470,'2023-04-20 14:00:21','ds_2.Comment_1: ffff'),(1681999222839,0,82001,470,'2023-04-20 14:00:22','ds_2.Comment_1: ffff'),(1682103798215,0,82002,1682103762126,'2023-04-21 19:03:18','ds_2.Comment_1: 555'),(1682173109591,0,82001,1681833052745,'2023-04-22 14:18:29','ds_2.Comment_1: 5555'),(1682299587015,0,82003,1681404270495,'2023-04-24 01:26:27','ds_2.Comment_1: snjddj'),(1682299634087,0,82003,1681404270495,'2023-04-24 01:27:14','ds_2.Comment_1: ddf'),(1682621619807,0,82001,12,'2023-04-27 18:53:40','ds_2.Comment_1: Ab_Cd6844800776712211'),(1683353527227,0,82001,12,'2023-05-06 06:12:07','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683353527379,0,82001,12,'2023-05-06 06:12:07','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683354040647,0,82001,142,'2023-05-06 06:20:40','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683354458987,0,82001,12,'2023-05-06 06:27:39','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683355771275,0,82001,142,'2023-05-06 06:49:31','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683355771387,0,82001,144,'2023-05-06 06:49:31','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1684140541183,0,82001,12,'2023-05-15 08:49:01','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1684489620899,0,82001,1682096402171,'2023-05-19 09:47:00','ds_2.Comment_1: GGG'),(1684489630879,0,82001,1682096402171,'2023-05-19 09:47:10','ds_2.Comment_1: GGG'),(1685617645727,0,82001,1665293930441,'2023-06-01 11:07:25','ds_2.Comment_1: 5464646'),(1685617665899,0,82001,1665293930441,'2023-06-01 11:07:45','ds_2.Comment_1: 5464646'),(1686196023911,0,82001,1684981418161,'2023-06-08 03:47:03','ds_2.Comment_1: 1册'),(1686328067739,0,82001,1645416338268,'2023-06-09 16:27:47','ds_2.Comment_1: 牛逼'),(1686710660079,0,82001,1684981561371,'2023-06-14 02:44:20','ds_2.Comment_1: ?'),(1687589809215,0,82001,12,'2023-06-24 06:56:49','ds_2.Comment_1: dkf;dfd;akfd;dadj;\''),(1687589911427,0,82001,123333,'2023-06-24 06:58:31','ds_2.Comment_1: dkf;dfd;akfd;dadj;\''),(1689569618555,0,82001,1688307338283,'2023-07-17 04:53:38','ds_2.Comment_1: hi'),(1692079106475,0,82001,1685592384514,'2023-08-15 05:58:26','ds_2.Comment_1: 1231231'),(1693680555335,0,82003,401,'2023-09-04 06:11:58','ds_2.Comment_1: Ab_Cd-4875974116009220'),(1693680555339,0,82008,401,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd7317747304255183'),(1693680555343,0,82003,12,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd-1962765097189040'),(1693680555347,0,82005,401,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd-7529469690326007'),(1693680555355,0,82003,12,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd825032408273019'),(1693680555367,0,82004,12,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd-2237601713645828'),(1700489345231,0,82002,1700488719094,'2023-11-20 14:09:05','ds_2.Comment_1: 哈哈'),(1700618204303,1700488850297,82001,1700488719094,'2023-11-22 01:56:44','ds_2.Comment_1: 666'),(1701240406371,0,82001,12,'2023-11-28 16:00:00','ds_2.Comment_1: [{\"name\":\"张三\",\"age\":\"13\"},{\"name\":\"李四\",\"age\":\"23\"},{\"name\":\"张三2\",\"age\":\"13\"},{\"name\":\"李四2\",\"age\":\"23\"}]'),(1701676180551,0,82002,666666,'2023-12-04 07:49:40','ds_2.Comment_1: 这是新建 !'),(1701676386379,0,82002,12,'2023-12-04 07:53:06','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1701677668887,0,82002,12,'2023-12-04 08:14:28','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1701677684803,0,82002,12,'2023-12-04 08:14:44','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1702285429163,0,82002,12,'2023-12-11 09:03:49','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1702401213379,0,82005,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-1088802732388048'),(1702401213383,0,82001,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-7610537093435167'),(1702401213387,0,82008,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-1549832248430260'),(1702401213391,0,82005,401,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-8713427624662519'),(1702401213395,0,82007,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-6809374747662939'),(1702401213407,0,82006,401,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-3313726169660404'),(1702401213419,0,82004,12,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd3382966224119863'),(1702401213423,0,82006,401,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd-1524768988183308'),(1702401213427,0,82007,401,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd-8674022040984503'),(1702401213443,0,82005,401,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd-8512377331398695'),(1702401213447,0,82008,12,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd3560649233939767'),(1702401213451,0,82003,12,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd-7857754798412359'),(1702401213455,0,82005,401,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd-5948269128555860'),(1702401213463,0,82004,401,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd-4086867961455256'),(1702401213487,0,82008,401,'2023-12-13 10:02:39','ds_2.Comment_1: Ab_Cd5141040501975699'),(1702401213499,0,82008,12,'2023-12-13 10:02:40','ds_2.Comment_1: Ab_Cd-7980762700240671'),(1702401213515,0,82007,401,'2023-12-13 10:02:40','ds_2.Comment_1: Ab_Cd-6169518377919916'),(1702401213543,0,82004,12,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd-359139371884560'),(1702401213547,0,82006,12,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd650651525531059'),(1702401213559,0,82008,12,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd-2125869028805520'),(1702401213563,0,82004,401,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd4101953712751635'),(1703058102851,0,82001,12,'2023-12-20 07:41:42','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1703572770503,0,82001,1703425198937,'2023-12-26 06:39:30','ds_2.Comment_1: 哈哈'),(1708314755219,0,82001,1684979928085,'2024-02-19 03:52:35','ds_2.Comment_1: ok'),(1708314757871,0,82001,1684979928085,'2024-02-19 03:52:37','ds_2.Comment_1: ok'),(1708671588899,0,82001,15,'2024-02-23 06:59:48','ds_2.Comment_1: 测试新增评论'),(1708929997751,1708929935730,82001,1693680292080,'2024-02-26 06:46:37','ds_2.Comment_1: 1111'),(1709021350459,0,82001,15,'2024-02-27 08:09:10','ds_2.Comment_1: 测试新增评论'),(1709022113503,0,82001,15,'2024-02-27 08:21:53','ds_2.Comment_1: 测试新增评论'),(1709022902511,0,82002,15,'2024-02-27 08:35:02','ds_2.Comment_1: 测试新增评论'),(1709182229075,0,82003,15,'2024-02-29 04:50:29','ds_2.Comment_1: 测试新增评论'),(1709188214951,0,88888,15,'2024-02-29 06:30:15','ds_2.Comment_1: 测试新增评论'),(1709275476459,0,82002,15,'2024-03-01 06:44:36','ds_2.Comment_1: 测试新增评论'),(1709784080431,0,82001,15,'2024-03-07 04:01:20','ds_2.Comment_1: 测试新增评论'),(1709812360647,0,82003,15,'2024-03-07 11:52:40','ds_2.Comment_1: 测试新增评论'),(1711435056751,0,82003,15,'2024-03-26 06:37:36','ds_2.Comment_1: 测试新增评论'),(1713152309159,0,82001,1690970599784,'2024-04-15 03:38:29','ds_2.Comment_1: 额'),(1713949089303,0,82003,15,'2024-04-24 08:58:09','ds_2.Comment_1: APIJSON is a JSON transmision protocol.'),(1713949178363,0,82003,12,'2024-04-24 08:59:38','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1713955538827,0,82003,15,'2024-04-24 10:45:38','ds_2.Comment_1: APIJSON is a JSON transmision protocol.'),(1714118290011,0,82001,1711013832774,'2024-04-26 07:58:10','ds_2.Comment_1: 高'),(1717468801251,0,82001,15,'2024-06-04 02:40:01','ds_2.Comment_1: 测试新增评论'),(1717862885019,0,82001,15,'2024-06-08 16:08:05','ds_2.Comment_1: 测试新增评论'),(1717862890963,0,38710,15,'2024-06-08 16:08:10','ds_2.Comment_1: 测试新增评论'); +INSERT INTO `Comment_1` VALUES (47,4,70793,470,'2017-02-01 11:20:50','ds_2.Comment_1: This is a Content...-47'),(51,45,82003,301,'2017-02-01 11:20:50','ds_2.Comment_1: This is a Content...-51'),(99,44,70793,170,'2017-02-01 11:20:50','ds_2.Comment_1: This is a Content...-99'),(115,0,38710,371,'2017-03-02 05:56:06','ds_2.Comment_1: This is a Content...-115'),(163,0,82001,235,'2017-03-02 05:56:06','ds_2.Comment_1: This is a Content...-163'),(167,0,82001,58,'2017-03-25 11:48:41','ds_2.Comment_1: Nice!'),(175,0,38710,12,'2017-03-25 12:26:53','ds_2.Comment_1: Java is the best program language!'),(1490778122719,175,82001,12,'2017-03-29 09:02:02','ds_2.Comment_1: Yeah! I think so!'),(1490778494751,1490778122719,82001,12,'2017-03-29 09:08:14','ds_2.Comment_1: reply Android82001'),(1490781865407,1490781857242,38710,58,'2017-03-29 10:04:25','ds_2.Comment_1: wow'),(1490781899147,197,38710,12,'2017-03-29 10:04:59','ds_2.Comment_1: kaka'),(1490796629591,175,38710,12,'2017-03-29 14:10:29','ds_2.Comment_1: well'),(1490863443219,1490850844016,82002,12,'2017-03-30 08:44:03','ds_2.Comment_1: me too!'),(1490863711703,0,70793,511,'2017-03-30 08:48:31','ds_2.Comment_1: I hope I can join'),(1490863717947,178,70793,511,'2017-03-30 08:48:37','ds_2.Comment_1: what?'),(1490863915675,0,82006,235,'2017-03-30 08:51:55','ds_2.Comment_1: Good boy'),(1490863978239,1490796241178,82006,58,'2017-03-30 08:52:58','ds_2.Comment_1: there still remains a question…'),(1490874968779,0,82055,12,'2017-03-30 11:56:08','ds_2.Comment_1: I love it'),(1490879678127,0,82001,543,'2017-03-30 13:14:38','ds_2.Comment_1: Baby you are a firework!'),(1490973890875,1490864039264,93793,551,'2017-03-31 15:24:50','ds_2.Comment_1: While I donot think so…'),(1491119615611,1490864023700,82001,543,'2017-04-02 07:53:35','ds_2.Comment_1: $$'),(1491312438951,1490863651493,82001,595,'2017-04-04 13:27:18','ds_2.Comment_1: WaKaKa!'),(1491740899179,0,82001,470,'2017-04-09 12:28:19','ds_2.Comment_1: www'),(1491798499667,115,82002,371,'2017-04-10 04:28:19','ds_2.Comment_1: I do not understand…'),(1492932228287,1491209763162,38710,1491200468898,'2017-04-23 07:23:48','ds_2.Comment_1: fine,thanks'),(1509346556395,0,82001,170,'2017-10-30 06:55:56','ds_2.Comment_1: 测试'),(1511374269759,99,82001,170,'2017-11-22 18:11:09','ds_2.Comment_1: 记录里'),(1511878024415,0,1511761906715,12,'2017-11-28 14:07:04','ds_2.Comment_1: 你今年'),(1512035094555,0,82001,12,'2017-11-30 09:44:54','ds_2.Comment_1: 呵呵呵'),(1512531859019,0,1512531601485,1512314438990,'2017-12-06 03:44:19','ds_2.Comment_1: 666'),(1513656045399,0,82001,1508072633830,'2017-12-19 04:00:45','ds_2.Comment_1: 444444'),(1514425796195,0,82001,1513094436910,'2017-12-28 01:49:56','ds_2.Comment_1: 一起'),(1514506206319,1514478784653,38710,1513094436910,'2017-12-29 00:10:06','ds_2.Comment_1: 碰到哪些了呢?欢迎指出,尽快解决^_^'),(1514858707767,0,70793,1514858533480,'2018-01-02 02:05:07','ds_2.Comment_1: 壕友乎?'),(1515313792063,162,82001,12,'2018-01-07 08:29:52','ds_2.Comment_1: you'),(1515313823155,164,82001,12,'2018-01-07 08:30:23','ds_2.Comment_1: you'),(1516687437251,1516686985310,82001,1516086423441,'2018-01-23 06:03:57','ds_2.Comment_1: 你家里好哦'),(1516691119239,1516686985310,38710,1516086423441,'2018-01-23 07:05:19','ds_2.Comment_1: 我喜欢Hololens嘿嘿'),(1516931850067,0,82001,1516086423441,'2018-01-26 01:57:30','ds_2.Comment_1: 1111111111111'),(1516951826863,0,82001,170,'2018-01-26 07:30:26','ds_2.Comment_1: 黑珍珠'),(1517193278459,0,82001,1508072633830,'2018-01-29 02:34:38','ds_2.Comment_1: 112'),(1517229342303,0,82001,1516086423441,'2018-01-29 12:35:42','ds_2.Comment_1: 几号抢的'),(1519813825959,0,82001,1516086423441,'2018-02-28 10:30:25','ds_2.Comment_1: 距P民'),(1520231250819,0,82001,12,'2018-03-05 06:27:30','ds_2.Comment_1: 浑身难受呢'),(1520264640815,0,70793,1520242333325,'2018-03-05 15:44:00','ds_2.Comment_1: 兰博基尼'),(1520699466219,1520578883309,82001,12,'2018-03-10 16:31:06','ds_2.Comment_1: 壕'),(1524032180807,1519719341810,82001,1516086423441,'2018-04-18 06:16:20','ds_2.Comment_1: 你好啊'),(1524032255755,1519974842508,82001,1516086423441,'2018-04-18 06:17:35','ds_2.Comment_1: 单身到底吗?'),(1524178495587,0,1524042900591,1524178455305,'2018-04-19 22:54:55','ds_2.Comment_1: 嘻嘻'),(1524190941111,1524032244441,82003,1516086423441,'2018-04-20 02:22:21','ds_2.Comment_1: 老六'),(1524214012015,1524190367904,1524042900591,1524178455305,'2018-04-20 08:46:52','ds_2.Comment_1: 怎么换url'),(1524798402799,0,1523626157302,1524178455305,'2018-04-27 03:06:42','ds_2.Comment_1: 能不能把本地的图片传到服务器,这样大家都能看到了,用url换头像不太习惯'),(1524844222775,1524798402799,82001,1524178455305,'2018-04-27 15:50:22','ds_2.Comment_1: 目前也可以百度一张图,把对应的url传上去,大家就都能看到了哈哈'),(1528333174811,0,82001,1514017444961,'2018-06-07 00:59:34','ds_2.Comment_1: xj'),(1528463152459,1528463135762,1528339692804,1528462217322,'2018-06-08 13:05:52','ds_2.Comment_1: 我想去'),(1528463165903,0,1528339692804,1528462217322,'2018-06-08 13:06:05','ds_2.Comment_1: 我想去'),(1528698907535,0,82001,1516086423441,'2018-06-11 06:35:07','ds_2.Comment_1: yhbv'),(1528703971675,1528681265496,82001,1528462217322,'2018-06-11 07:59:31','ds_2.Comment_1: 一起陪小姐姐出游*。٩(ˊωˋ*)و✧'),(1530528524447,0,38710,1528269988360,'2018-07-02 10:48:44','ds_2.Comment_1: 所以HttpRequest里写死了两张图片url,你可以改下'),(1531412264667,0,82003,1528356378455,'2018-07-12 16:17:44','ds_2.Comment_1: 去哪呢?'),(1531894411487,0,82001,1520242333325,'2018-07-18 06:13:31','ds_2.Comment_1: sssx'),(1533008631299,1532057419100,82001,1531969818357,'2018-07-31 03:43:51','ds_2.Comment_1: 加上'),(1533188056603,1531887938362,82001,1531062713966,'2018-08-02 05:34:16','ds_2.Comment_1: 顺带'),(1533202917743,1533186909764,82001,1531969818357,'2018-08-02 09:41:57','ds_2.Comment_1: 00'),(1534128014211,0,82001,1520242333325,'2018-08-13 02:40:14','ds_2.Comment_1: zxxx'),(1535279827983,0,82001,1520242333325,'2018-08-26 10:37:07','ds_2.Comment_1: 斤斤计较'),(1535600430479,0,82001,1520242333325,'2018-08-30 03:40:30','ds_2.Comment_1: 法拉利'),(1535963525135,1535963519864,82001,1535781636403,'2018-09-03 08:32:05','ds_2.Comment_1: gyuji'),(1537373307627,0,82001,1516086423441,'2018-09-19 16:08:27','ds_2.Comment_1: 。。。'),(1537857334299,1537857324518,82001,1536805585275,'2018-09-25 06:35:34','ds_2.Comment_1: 嗯嗯'),(1539868250267,1531063660028,82001,1531062713966,'2018-10-18 13:10:50','ds_2.Comment_1: 555555555555555555'),(1539868269471,1539868250267,82001,1531062713966,'2018-10-18 13:11:09','ds_2.Comment_1: 4444444444444'),(1543193682067,0,1528339692804,1528269822710,'2018-11-26 00:54:42','ds_2.Comment_1: ss'),(1545927001999,1545895875719,82001,1553096819293,'2018-12-27 16:10:02','ds_2.Comment_1: 哦哦哦www'),(1551409858047,0,82001,301,'2019-03-01 03:10:58','ds_2.Comment_1: 您'),(1552297994119,0,82001,1512314438990,'2019-03-11 09:53:14','ds_2.Comment_1: 小米'),(1553053346095,0,82001,1553096819293,'2019-03-20 03:42:26','ds_2.Comment_1: 启'),(1555557868075,0,82001,32,'2019-04-18 03:24:28','ds_2.Comment_1: 121212312456'),(1558440349435,0,82001,1557754680146,'2019-05-21 12:05:49','ds_2.Comment_1: 解决'),(1566270981387,1566270974217,82001,1558798664043,'2019-08-20 03:16:21','ds_2.Comment_1: 什么鬼'),(1566271052875,0,82001,1557754680146,'2019-08-20 03:17:32','ds_2.Comment_1: YY'),(1569202210099,0,82001,1513094436910,'2019-09-23 01:30:10','ds_2.Comment_1: 6765765756'),(1569202223099,0,82001,1513094436910,'2019-09-23 01:30:23','ds_2.Comment_1: 3423423423'),(1569202232091,1569202210099,82001,1513094436910,'2019-09-23 01:30:32','ds_2.Comment_1: 哈哈'),(1570609939135,0,82001,704,'2019-10-09 08:32:19','ds_2.Comment_1: 哈哈哈'),(1571143167015,0,82001,1557754680146,'2019-10-15 12:39:27','ds_2.Comment_1: 回老家了'),(1581892352819,0,82001,1508053762227,'2020-02-16 22:32:32','ds_2.Comment_1: 哈哈'),(1583848843283,0,82001,1583574596245,'2020-03-10 14:00:43','ds_2.Comment_1: 哼哼唧唧'),(1584336845779,1584336841458,82001,1583574596245,'2020-03-16 05:34:05','ds_2.Comment_1: 宝宝'),(1589255368635,1491119695580,82001,371,'2020-05-12 03:49:28','ds_2.Comment_1: 家常菜比较'),(1589255382551,116,82001,371,'2020-05-12 03:49:42','ds_2.Comment_1: u好v发'),(1594290846627,1589255358661,82001,371,'2020-07-09 10:34:06','ds_2.Comment_1: 自己可以恢复2自己吗?'),(1594779313019,0,82001,1594385350586,'2020-07-15 02:15:13','ds_2.Comment_1: 空间'),(1599034919083,0,82001,1594385349411,'2020-09-02 08:21:59','ds_2.Comment_1: 13264646'),(1600155068139,0,82001,1594127400223,'2020-09-15 07:31:08','ds_2.Comment_1: 38:—3—'),(1600155073891,1600155068139,82001,1594127400223,'2020-09-15 07:31:13','ds_2.Comment_1: 蜀地'),(1600184363431,1594462397453,82001,1594385349411,'2020-09-15 15:39:23','ds_2.Comment_1: 就是就是你说呢上班'),(1611547274671,0,82001,1611503147421,'2021-01-25 04:01:14','ds_2.Comment_1: 哈哈啊'),(1617265294447,0,82001,1611503147421,'2021-04-01 08:21:34','ds_2.Comment_1: 的'),(1617457502251,0,82001,1611503147421,'2021-04-03 13:45:02','ds_2.Comment_1: 我很开心'),(1621932358167,1617457502251,82001,1611503147421,'2021-05-25 08:45:58','ds_2.Comment_1: 我好奇'),(1623143559223,0,82001,12,'2021-06-08 09:12:39','ds_2.Comment_1: test'),(1628094888155,0,82001,1624700434072,'2021-08-04 16:34:48','ds_2.Comment_1: 。。。'),(1628166384971,0,82001,1583574596245,'2021-08-05 12:26:24','ds_2.Comment_1: 老师的'),(1628778280811,0,82001,1627367646018,'2021-08-12 14:24:40','ds_2.Comment_1: ?'),(1630891112935,0,82001,1630746489563,'2021-09-06 01:18:32','ds_2.Comment_1: (fdsd)'),(1630891147547,0,82001,1630746489563,'2021-09-06 01:19:07','ds_2.Comment_1: 3355'),(1630899176191,0,82001,1630893108502,'2021-09-06 03:32:56','ds_2.Comment_1: 5555'),(1631761398611,0,82001,1531969818357,'2021-09-16 03:03:18','ds_2.Comment_1: 654342365656'),(1631761409539,0,82001,371,'2021-09-16 03:03:29','ds_2.Comment_1: 111'),(1631761410755,0,82001,1508053762227,'2021-09-16 03:03:30','ds_2.Comment_1: $$'),(1631761412727,0,82001,1516086423441,'2021-09-16 03:03:32','ds_2.Comment_1: 3333'),(1631761412927,0,82001,58,'2021-09-16 03:03:32','ds_2.Comment_1: 555555'),(1631761413307,0,82001,1508072633830,'2021-09-16 03:03:33','ds_2.Comment_1: ,王者荣耀'),(1631761414467,0,82001,1516086423441,'2021-09-16 03:03:34','ds_2.Comment_1: -162'),(1631761415511,0,82001,1557754680146,'2021-09-16 03:03:35','ds_2.Comment_1: 00'),(1631761415879,0,82001,1508072633830,'2021-09-16 03:03:35','ds_2.Comment_1: 123121545645'),(1631761428791,0,82001,371,'2021-09-16 03:03:48','ds_2.Comment_1: $$'),(1631761430823,0,82001,1527821296110,'2021-09-16 03:03:50','ds_2.Comment_1: 444444'),(1631761433815,0,82001,1528356421201,'2021-09-16 03:03:53','ds_2.Comment_1: 111'),(1631761442871,0,82001,58,'2021-09-16 03:04:02','ds_2.Comment_1: 11111111'),(1631761443039,0,82001,1557754680146,'2021-09-16 03:04:03','ds_2.Comment_1: 123'),(1631761443879,0,82001,1508072633830,'2021-09-16 03:04:03','ds_2.Comment_1: 110'),(1631761444199,0,82001,235,'2021-09-16 03:04:04','ds_2.Comment_1: 11111111'),(1631761444879,0,82001,1527830474378,'2021-09-16 03:04:04','ds_2.Comment_1: -162'),(1631761446691,0,82001,1516086423441,'2021-09-16 03:04:06','ds_2.Comment_1: 1'),(1631761456415,0,82001,1516086423441,'2021-09-16 03:04:16','ds_2.Comment_1: 111'),(1631761456615,0,82001,235,'2021-09-16 03:04:16','ds_2.Comment_1: 1111'),(1631761457271,0,82001,170,'2021-09-16 03:04:17','ds_2.Comment_1: $$'),(1631761457583,0,82001,1557754680146,'2021-09-16 03:04:17','ds_2.Comment_1: -162'),(1631761457755,0,82001,170,'2021-09-16 03:04:17','ds_2.Comment_1: 00'),(1631761458047,0,82001,58,'2021-09-16 03:04:18','ds_2.Comment_1: 1'),(1631761459175,0,82001,1520242333325,'2021-09-16 03:04:19','ds_2.Comment_1: 111'),(1631761460839,0,82001,1531969818357,'2021-09-16 03:04:20','ds_2.Comment_1: 1'),(1631761585035,0,82001,12,'2021-09-16 03:06:25','ds_2.Comment_1: 112'),(1631761594059,0,82001,12,'2021-09-16 03:06:34','ds_2.Comment_1: 因为没做前端上传和后端保存图片的功能,APIJSONApp主要是用来展示APIJSON的自动化接口的'),(1637565584211,0,82001,1637405012523,'2021-11-22 07:19:44','ds_2.Comment_1: 你好,有联系方式吗'),(1637566406511,1637565584211,82003,1637405012523,'2021-11-22 07:33:26','ds_2.Comment_1: 有什么事吗?'),(1638386804783,0,82001,1638327674898,'2021-12-01 19:26:44','ds_2.Comment_1: 是这样,赞!'),(1638631324735,0,82001,1637985952844,'2021-12-04 15:22:04','ds_2.Comment_1: 带点'),(1639386671675,0,82001,1638327674898,'2021-12-13 09:11:11','ds_2.Comment_1: hhh'),(1639556962499,1638631324735,82001,1637985952844,'2021-12-15 08:29:22','ds_2.Comment_1: 就是竞技等级'),(1639556974079,1638631324735,82001,1637985952844,'2021-12-15 08:29:34','ds_2.Comment_1: 本恩'),(1639737103991,0,82001,1638327674898,'2021-12-17 10:31:43','ds_2.Comment_1: 把'),(1640325878347,0,82003,12,'2021-12-24 06:04:38','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1645678663535,1645678658757,82001,1645416338268,'2022-02-24 04:57:43','ds_2.Comment_1: 太肝'),(1647416576411,0,82001,1646030924765,'2022-03-16 07:42:56','ds_2.Comment_1: 61'),(1648716219295,0,82001,1648604448242,'2022-03-31 08:43:39','ds_2.Comment_1: 12312'),(1649548802611,0,82001,1649086182892,'2022-04-10 00:00:02','ds_2.Comment_1: Find me'),(1650022326907,0,82001,1649086185746,'2022-04-15 11:32:06','ds_2.Comment_1: 你ing明明哦'),(1650786605459,1650022311005,82001,1649086185746,'2022-04-24 07:50:05','ds_2.Comment_1: 你好'),(1651717769047,0,82001,12,'2022-05-05 02:29:29','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1651745295227,0,82001,12,'2022-05-05 10:08:15','ds_2.Comment_1: A machine base 0 & 1'),(1653122462507,0,82001,12,'2022-05-21 08:41:02','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1659086363211,0,82001,12,'2022-07-29 09:19:23','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1660209520647,0,82001,12,'2022-08-11 09:18:40','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1661830724947,0,82001,12,'2022-08-30 03:38:44','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1663572556775,0,82001,12,'2022-09-19 07:29:16','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1665865931679,0,82001,1665293930441,'2022-10-15 20:32:11','ds_2.Comment_1: 测试你亩'),(1669345764759,0,82001,1665293930441,'2022-11-25 03:09:24','ds_2.Comment_1: 起咯啦咯啦'),(1671322206423,0,82001,1670981978461,'2022-12-18 00:10:06','ds_2.Comment_1: 哈哈哈哈个'),(1671437025975,0,82001,1649672357944,'2022-12-19 08:03:45','ds_2.Comment_1: sss'),(1672729132415,0,82001,12,'2023-01-03 06:58:52','ds_2.Comment_1: Adam'),(1673266959019,0,82001,1634090516839,'2023-01-09 12:22:39','ds_2.Comment_1: 好的'),(1676271683595,0,82001,1675910359578,'2023-02-13 07:01:23','ds_2.Comment_1: 3333'),(1677154663707,0,82001,1677144307563,'2023-02-23 12:17:43','ds_2.Comment_1: go on'),(1678971043311,0,82001,1678877778484,'2023-03-16 12:50:43','ds_2.Comment_1: good'),(1679450026467,0,82001,1679313363196,'2023-03-22 01:53:46','ds_2.Comment_1: ggggg'),(1679645523543,0,82001,1675742375160,'2023-03-24 08:12:03','ds_2.Comment_1: zzzzz'),(1680076982343,1678971043311,82001,1678877778484,'2023-03-29 08:03:02','ds_2.Comment_1: 666'),(1680742650703,0,82001,1680494769487,'2023-04-06 00:57:30','ds_2.Comment_1: 噢哈哈哈'),(1681710728099,0,82002,1679908549702,'2023-04-17 05:52:08','ds_2.Comment_1: 111'),(1681999172055,0,82001,470,'2023-04-20 13:59:32','ds_2.Comment_1: ffff'),(1681999221287,0,82001,470,'2023-04-20 14:00:21','ds_2.Comment_1: ffff'),(1681999222839,0,82001,470,'2023-04-20 14:00:22','ds_2.Comment_1: ffff'),(1682103798215,0,82002,1682103762126,'2023-04-21 19:03:18','ds_2.Comment_1: 555'),(1682173109591,0,82001,1681833052745,'2023-04-22 14:18:29','ds_2.Comment_1: 5555'),(1682299587015,0,82003,1681404270495,'2023-04-24 01:26:27','ds_2.Comment_1: snjddj'),(1682299634087,0,82003,1681404270495,'2023-04-24 01:27:14','ds_2.Comment_1: ddf'),(1682621619807,0,82001,12,'2023-04-27 18:53:40','ds_2.Comment_1: Ab_Cd6844800776712211'),(1683353527227,0,82001,12,'2023-05-06 06:12:07','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683353527379,0,82001,12,'2023-05-06 06:12:07','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683354040647,0,82001,142,'2023-05-06 06:20:40','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683354458987,0,82001,12,'2023-05-06 06:27:39','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683355771275,0,82001,142,'2023-05-06 06:49:31','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1683355771387,0,82001,144,'2023-05-06 06:49:31','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1684140541183,0,82001,12,'2023-05-15 08:49:01','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1684489620899,0,82001,1682096402171,'2023-05-19 09:47:00','ds_2.Comment_1: GGG'),(1684489630879,0,82001,1682096402171,'2023-05-19 09:47:10','ds_2.Comment_1: GGG'),(1685617645727,0,82001,1665293930441,'2023-06-01 11:07:25','ds_2.Comment_1: 5464646'),(1685617665899,0,82001,1665293930441,'2023-06-01 11:07:45','ds_2.Comment_1: 5464646'),(1686196023911,0,82001,1684981418161,'2023-06-08 03:47:03','ds_2.Comment_1: 1册'),(1686328067739,0,82001,1645416338268,'2023-06-09 16:27:47','ds_2.Comment_1: 牛逼'),(1686710660079,0,82001,1684981561371,'2023-06-14 02:44:20','ds_2.Comment_1: ?'),(1687589809215,0,82001,12,'2023-06-24 06:56:49','ds_2.Comment_1: dkf;dfd;akfd;dadj;\''),(1687589911427,0,82001,123333,'2023-06-24 06:58:31','ds_2.Comment_1: dkf;dfd;akfd;dadj;\''),(1689569618555,0,82001,1688307338283,'2023-07-17 04:53:38','ds_2.Comment_1: hi'),(1692079106475,0,82001,1685592384514,'2023-08-15 05:58:26','ds_2.Comment_1: 1231231'),(1693680555335,0,82003,401,'2023-09-04 06:11:58','ds_2.Comment_1: Ab_Cd-4875974116009220'),(1693680555339,0,82008,401,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd7317747304255183'),(1693680555343,0,82003,12,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd-1962765097189040'),(1693680555347,0,82005,401,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd-7529469690326007'),(1693680555355,0,82003,12,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd825032408273019'),(1693680555367,0,82004,12,'2023-09-04 06:11:59','ds_2.Comment_1: Ab_Cd-2237601713645828'),(1700489345231,0,82002,1700488719094,'2023-11-20 14:09:05','ds_2.Comment_1: 哈哈'),(1700618204303,1700488850297,82001,1700488719094,'2023-11-22 01:56:44','ds_2.Comment_1: 666'),(1701240406371,0,82001,12,'2023-11-28 16:00:00','ds_2.Comment_1: [{\"name\":\"张三\",\"age\":\"13\"},{\"name\":\"李四\",\"age\":\"23\"},{\"name\":\"张三2\",\"age\":\"13\"},{\"name\":\"李四2\",\"age\":\"23\"}]'),(1701676180551,0,82002,666666,'2023-12-04 07:49:40','ds_2.Comment_1: 这是新建 !'),(1701676386379,0,82002,12,'2023-12-04 07:53:06','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1701677668887,0,82002,12,'2023-12-04 08:14:28','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1701677684803,0,82002,12,'2023-12-04 08:14:44','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1702285429163,0,82002,12,'2023-12-11 09:03:49','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1702401213379,0,82005,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-1088802732388048'),(1702401213383,0,82001,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-7610537093435167'),(1702401213387,0,82008,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-1549832248430260'),(1702401213391,0,82005,401,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-8713427624662519'),(1702401213395,0,82007,12,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-6809374747662939'),(1702401213407,0,82006,401,'2023-12-13 10:02:06','ds_2.Comment_1: Ab_Cd-3313726169660404'),(1702401213419,0,82004,12,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd3382966224119863'),(1702401213423,0,82006,401,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd-1524768988183308'),(1702401213427,0,82007,401,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd-8674022040984503'),(1702401213443,0,82005,401,'2023-12-13 10:02:07','ds_2.Comment_1: Ab_Cd-8512377331398695'),(1702401213447,0,82008,12,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd3560649233939767'),(1702401213451,0,82003,12,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd-7857754798412359'),(1702401213455,0,82005,401,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd-5948269128555860'),(1702401213463,0,82004,401,'2023-12-13 10:02:08','ds_2.Comment_1: Ab_Cd-4086867961455256'),(1702401213487,0,82008,401,'2023-12-13 10:02:39','ds_2.Comment_1: Ab_Cd5141040501975699'),(1702401213499,0,82008,12,'2023-12-13 10:02:40','ds_2.Comment_1: Ab_Cd-7980762700240671'),(1702401213515,0,82007,401,'2023-12-13 10:02:40','ds_2.Comment_1: Ab_Cd-6169518377919916'),(1702401213543,0,82004,12,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd-359139371884560'),(1702401213547,0,82006,12,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd650651525531059'),(1702401213559,0,82008,12,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd-2125869028805520'),(1702401213563,0,82004,401,'2023-12-13 10:02:41','ds_2.Comment_1: Ab_Cd4101953712751635'),(1703058102851,0,82001,12,'2023-12-20 07:41:42','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1703572770503,0,82001,1703425198937,'2023-12-26 06:39:30','ds_2.Comment_1: 哈哈'),(1708314755219,0,82001,1684979928085,'2024-02-19 03:52:35','ds_2.Comment_1: ok'),(1708314757871,0,82001,1684979928085,'2024-02-19 03:52:37','ds_2.Comment_1: ok'),(1708671588899,0,82001,15,'2024-02-23 06:59:48','ds_2.Comment_1: 测试新增评论'),(1708929997751,1708929935730,82001,1693680292080,'2024-02-26 06:46:37','ds_2.Comment_1: 1111'),(1709021350459,0,82001,15,'2024-02-27 08:09:10','ds_2.Comment_1: 测试新增评论'),(1709022113503,0,82001,15,'2024-02-27 08:21:53','ds_2.Comment_1: 测试新增评论'),(1709022902511,0,82002,15,'2024-02-27 08:35:02','ds_2.Comment_1: 测试新增评论'),(1709182229075,0,82003,15,'2024-02-29 04:50:29','ds_2.Comment_1: 测试新增评论'),(1709188214951,0,88888,15,'2024-02-29 06:30:15','ds_2.Comment_1: 测试新增评论'),(1709275476459,0,82002,15,'2024-03-01 06:44:36','ds_2.Comment_1: 测试新增评论'),(1709784080431,0,82001,15,'2024-03-07 04:01:20','ds_2.Comment_1: 测试新增评论'),(1709812360647,0,82003,15,'2024-03-07 11:52:40','ds_2.Comment_1: 测试新增评论'),(1711435056751,0,82003,15,'2024-03-26 06:37:36','ds_2.Comment_1: 测试新增评论'),(1713152309159,0,82001,1690970599784,'2024-04-15 03:38:29','ds_2.Comment_1: 额'),(1713949089303,0,82003,15,'2024-04-24 08:58:09','ds_2.Comment_1: APIJSON is a JSON transmision protocol.'),(1713949178363,0,82003,12,'2024-04-24 08:59:38','ds_2.Comment_1: APIJSON,let interfaces and documents go to hell !'),(1713955538827,0,82003,15,'2024-04-24 10:45:38','ds_2.Comment_1: APIJSON is a JSON transmision protocol.'),(1714118290011,0,82001,1711013832774,'2024-04-26 07:58:10','ds_2.Comment_1: 高'),(1717468801251,0,82001,15,'2024-06-04 02:40:01','ds_2.Comment_1: 测试新增评论'),(1717862885019,0,82001,15,'2024-06-08 16:08:05','ds_2.Comment_1: 测试新增评论'),(1717862890963,0,38710,15,'2024-06-08 16:08:10','ds_2.Comment_1: 测试新增评论'),(1738597766896,0,82003,15,'2025-02-03 15:49:26','test post comment 4'); /*!40000 ALTER TABLE `Comment_1` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; @@ -56,4 +56,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-02-03 23:27:31 +-- Dump completed on 2025-02-03 23:54:01 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_apijson_user.sql b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_apijson_user.sql index f45ede3..384338f 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_apijson_user.sql +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/MySQL/ds_2_single/ds_2_apijson_user.sql @@ -56,4 +56,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-02-03 23:27:32 +-- Dump completed on 2025-02-03 23:54:02 diff --git a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/config.yaml b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/config.yaml index 6698c9d..9add59b 100644 --- a/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/config.yaml +++ b/APIJSON-Java-Server/APIJSONDemo-ShardingSphere/src/main/resources/config.yaml @@ -1,12 +1,3 @@ -rules: - - !SHARDING - tables: # Sharding table configuration - apijson_user: - actualDataNodes: ds-$->{0..1}.apijson_user # 分库 shading databases/schemas - Moment: # Logic table name - actualDataNodes: ds-0.Moment_$->{0..1} # 分表 shading tables - Comment: # Logic table name - actualDataNodes: ds-$->{0..1}.Comment_$->{0..1} # 分库*分表 shading both databases/schemas and tables dataSources: ds-0: dataSourceClassName: com.zaxxer.hikari.HikariDataSource @@ -19,4 +10,48 @@ dataSources: driverClassName: com.mysql.jdbc.Driver jdbcUrl: jdbc:mysql://localhost:3306/ds_2?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8 username: root - password: apijson \ No newline at end of file + password: apijson + +rules: + - !SHARDING + tables: # Sharding table configuration + apijson_user: + actualDataNodes: ds-$->{0..1}.apijson_user # 分库 shading databases/schemas + databaseStrategy: + standard: + shardingColumn: id + shardingAlgorithmName: user-sharding-ds + Moment: # Logic table name + actualDataNodes: ds-0.Moment_$->{0..1} # 分表 shading tables + tableStrategy: + standard: + shardingColumn: userId + shardingAlgorithmName: moment-sharding-table + Comment: # Logic table name + actualDataNodes: ds-$->{0..1}.Comment_$->{0..1} # 分库*分表 shading both databases/schemas and tables + databaseStrategy: + standard: + shardingColumn: userId + shardingAlgorithmName: comment-sharding-ds + tableStrategy: + standard: + shardingColumn: momentId + shardingAlgorithmName: comment-sharding-table + + shardingAlgorithms: + user-sharding-ds: + type: INLINE + props: + algorithm-expression: ds-${id % 2} + moment-sharding-table: + type: INLINE + props: + algorithm-expression: Moment_${userId % 2} + comment-sharding-ds: + type: INLINE + props: + algorithm-expression: ds-${userId % 2} + comment-sharding-table: + type: INLINE + props: + algorithm-expression: Comment_${momentId % 2} From 8cfe104691bcec9575cb0d77bb908b6be715e6a2 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Tue, 4 Feb 2025 10:44:09 +0800 Subject: [PATCH 30/80] =?UTF-8?q?APIAuto:=20=E4=BF=9D=E5=AD=98=E5=92=8C?= =?UTF-8?q?=E6=81=A2=E5=A4=8D=E5=B7=B2=E9=80=89=E9=A1=B9=E7=9B=AE=E5=8F=8A?= =?UTF-8?q?=20URL=20Host?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/static/api/js/main.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js index e4a55d5..3d8dfaa 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js @@ -2699,6 +2699,8 @@ https://github.com/Tencent/APIJSON/issues vUrl.value = item.host + bu this.showUrl(false, bu) + + this.saveCache('', 'projectHost', this.projectHost) }, listProjectHost: function() { @@ -7505,6 +7507,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea if (type == 'project') { if (isEnter || item.host == (this.projectHost || {}).host) { this.projectHost = {project: item.project} + this.saveCache('', 'projectHost', this.projectHost) } return } @@ -12795,6 +12798,11 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea '\n} catch (e) {\n' + e.message) } try { //这里是初始化,不能出错 + var projectHost = this.getCache('', 'projectHost') + if (projectHost != null) { + this.projectHost = projectHost + } + var projectHosts = this.getCache('', 'projectHosts') if (projectHosts != null && projectHosts.length >= 1) { this.projectHosts = projectHosts From 7a7eca6418bd8eafd0912b43385c3095c2e5d171 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Tue, 4 Feb 2025 17:06:37 +0800 Subject: [PATCH 31/80] =?UTF-8?q?APIAuto:=20=E6=89=93=E5=BC=80=E7=BD=91?= =?UTF-8?q?=E9=A1=B5=E7=9B=B4=E6=8E=A5=E5=8A=A0=E8=BD=BD=E8=84=9A=E6=9C=AC?= =?UTF-8?q?=EF=BC=8C=E4=B8=8D=E5=86=8D=E9=9C=80=E8=A6=81=E6=89=8B=E5=8A=A8?= =?UTF-8?q?=E6=89=93=E5=BC=80=E8=AE=BE=E7=BD=AE=E6=89=8D=E5=8A=A0=E8=BD=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/static/api/js/main.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js index 3d8dfaa..c8ca572 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js @@ -12898,10 +12898,10 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea //无效,只能在index里设置 vUrl.value = this.getCache('', 'URL_BASE') this.listHistory() - if (this.isScriptShow) { +// if (this.isScriptShow) { this.changeScriptType() this.listScript() - } +// } var isLoggedIn = this.User != null && this.User.id != null && this.User.id > 0 if (isLoggedIn) { From 8536d8ae1483e9c348fb7d316beb7dccebccd220 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 9 Feb 2025 15:13:23 +0800 Subject: [PATCH 32/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E4=BB=A3=E7=90=86=E8=BD=AC=E5=8F=91=20HTTP=20PATCH=20?= =?UTF-8?q?=E8=AF=B7=E6=B1=82=EF=BC=9BAPIAuto=EF=BC=9A=E5=88=86=E7=BB=84?= =?UTF-8?q?=E6=95=B0=E9=87=8F=E6=82=AC=E6=B5=AE=E6=98=BE=E7=A4=BA=E5=AE=8C?= =?UTF-8?q?=E6=95=B4=20=E5=90=8D=E7=A7=B0=20URL=EF=BC=9B=E8=A7=A3=E5=86=B3?= =?UTF-8?q?=E4=B8=8D=E6=98=BE=E7=A4=BA=20HTTP=20Error=EF=BC=8C=E8=A7=A3?= =?UTF-8?q?=E5=86=B3=E5=9C=BA=E6=99=AF=E4=B8=B2=E8=81=94=E7=94=A8=E4=BE=8B?= =?UTF-8?q?=E6=9C=89=E6=97=B6=E9=94=99=E7=94=A8=E5=8F=82=E6=95=B0=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONBoot-MultiDataSource/pom.xml | 7 +++++++ .../main/java/apijson/boot/DemoController.java | 17 ++++++++++------- .../src/main/resources/static/api/index.html | 8 ++++---- .../src/main/resources/static/api/js/main.js | 17 ++++++++++++----- 4 files changed, 33 insertions(+), 16 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml index 148bbe2..ea2e03d 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml @@ -286,6 +286,13 @@ + + + + + + + diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java index bf3f44f..764f707 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java @@ -25,14 +25,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.*; +import org.springframework.http.client.HttpComponentsClientHttpRequestFactory; import org.springframework.stereotype.Service; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import org.springframework.web.client.HttpClientErrorException; import org.springframework.web.client.RestClientResponseException; import org.springframework.web.client.RestTemplate; @@ -1869,6 +1864,14 @@ protected String sendRequest(HttpSession session, HttpMethod method, String url, String rspBody = null; try { RestTemplate client = new RestTemplate(); + try { // 支持 PATCH 方法,需要 Maven 依赖 org.apache.httpcomponents.client5:httpclient5 + HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); + client.setRequestFactory(requestFactory); + } + catch (Throwable e) { + e.printStackTrace(); + } + HttpEntity requestEntity = new HttpEntity<>(method == HttpMethod.GET ? null : body, headers); ResponseEntity entity = client.exchange(url, method, requestEntity, String.class); diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/index.html b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/index.html index 17d4e56..2d8c495 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/index.html +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/index.html @@ -203,7 +203,7 @@
  • - +
    • - {{ isCaseGroupEditable ? '' : item.Chain.groupName }}{{' (' + (item.Chain.count - 1) + ') '}} + {{ isCaseGroupEditable ? '' : item.Chain.groupName }}{{' (' + (item.Chain.count - 1) + ') '}} @@ -256,7 +256,7 @@
      - +
      • diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js index c8ca572..ba4c064 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/main.js @@ -2700,6 +2700,7 @@ https://github.com/Tencent/APIJSON/issues vUrl.value = item.host + bu this.showUrl(false, bu) + this.saveCache('', 'URL_BASE', baseUrl) this.saveCache('', 'projectHost', this.projectHost) }, @@ -3136,7 +3137,6 @@ https://github.com/Tencent/APIJSON/issues commentObj = JSONResponse.updateStandard({}, mapReq2); } - var callback = function (randomName, constConfig, constJson) { // 用现成的测试过的更好,Response 与 Request 严格对应 // var mapReq = {}; @@ -3169,6 +3169,7 @@ https://github.com/Tencent/APIJSON/issues // commentObj = JSONResponse.updateStandard({}, mapReq2); // } + const userId = App.User.id; const methods = App.methods; const method = App.isShowMethod() ? App.method : null; const extName = App.exTxt.name; @@ -3178,6 +3179,7 @@ https://github.com/Tencent/APIJSON/issues const req = isExportRandom && btnIndex <= 0 ? { format: false, 'Random': { + userId: userId, toId: 0, chainGroupId: cgId, chainId: cId, @@ -3187,6 +3189,8 @@ https://github.com/Tencent/APIJSON/issues config: config }, 'TestRecord': { + 'userId': userId, + 'documentId': documentId, 'host': StringUtil.isEmpty(baseUrl, true) ? null : baseUrl, 'chainGroupId': cgId, 'chainId': cId, @@ -3198,6 +3202,7 @@ https://github.com/Tencent/APIJSON/issues format: false, 'Document': isEditResponse ? null : { 'id': did == null ? undefined : did, + 'userId': userId, 'project': StringUtil.isEmpty(project, true) ? null : project, // 'testAccountId': currentAccountId, // 'chainGroupId': cgId, @@ -3213,6 +3218,7 @@ https://github.com/Tencent/APIJSON/issues 'detail': App.getExtraComment() || ((App.currentRemoteItem || {}).Document || {}).detail, }, 'TestRecord': isEditResponse != true && did != null ? null : { + 'userId': userId, // 'chainGroupId': cgId, 'documentId': isEditResponse ? did : undefined, 'randomId': 0, @@ -7184,12 +7190,12 @@ https://github.com/Tencent/APIJSON/issues if (res == null) { res = {} } else { - var time = res.config == null || res.config.metadata == null ? 0 : (res.config.metadata.startTime || 0) - if (time < this.lastReqTime) { + var time = res.config == null || res.config.metadata == null ? null : res.config.metadata.startTime; + if (time != null && time > 0 && time < this.lastReqTime) { return } - this.lastReqTime = time + this.lastReqTime = time == null || time <= 0 ? 0 : time; } if (DEBUG) { @@ -7514,8 +7520,9 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea var project = (this.projectHost || {}).project - if (isFilter && type == 'caseGroup') { + if (isFilter && (type == 'caseGroup' || type == 'chainGroup')) { this.isCaseGroupEditable = true +// this.isChainGroupEditable = true } var obj = event.srcElement ? event.srcElement : event.target; From b4c9b71d4f046fe270609a64178caed220531e2a Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 9 Feb 2025 17:01:26 +0800 Subject: [PATCH 33/80] =?UTF-8?q?Java=EF=BC=9A=E6=96=B0=E5=A2=9E=20MultiDa?= =?UTF-8?q?taSource=20=E6=96=B0=E5=A2=9E=E5=8D=8E=E4=B8=BA=20openGauss-?= =?UTF-8?q?=E9=AB=98=E6=96=AF=E6=95=B0=E6=8D=AE=E5=BA=93=E5=BC=80=E6=BA=90?= =?UTF-8?q?=E7=89=88=EF=BC=8C=E9=AB=98=E5=8F=AF=E7=94=A8=E3=80=81=E9=AB=98?= =?UTF-8?q?=E6=80=A7=E8=83=BD=E3=80=81=E9=AB=98=E5=AE=89=E5=85=A8=E3=80=81?= =?UTF-8?q?=E9=AB=98=E5=BC=B9=E6=80=A7=E3=80=81=E9=AB=98=E6=99=BA=E8=83=BD?= =?UTF-8?q?=E3=80=81=E6=98=93=E9=83=A8=E7=BD=B2=E3=80=81=E6=98=93=E8=BF=81?= =?UTF-8?q?=E7=A7=BB=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 需要依赖 APIJSON 7.5.0 或自己补充 DATABASE_OPENGAUSS 和 isOpenGauss 等代码 --- .../APIJSONBoot-MultiDataSource/pom.xml | 12 ++++++++++++ .../main/java/apijson/boot/DemoApplication.java | 9 +++++++++ .../main/java/apijson/demo/DemoSQLConfig.java | 16 +++++++++++++++- 3 files changed, 36 insertions(+), 1 deletion(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml index ea2e03d..70d1a73 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml @@ -219,6 +219,18 @@ mongodb-jdbc 2.0.3 + + + + + + + + + + + + diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java index 910e62f..53d9515 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java @@ -223,6 +223,15 @@ public void addCorsMappings(CorsRegistry registry) { // Log.e(TAG, "加载 TDengine 驱动失败,请检查 pom.xml 中 com.taosdata.jdbc 版本是否存在以及可用 !!!"); // } + // try { //加载驱动程序 + // Log.d(TAG, "尝试加载 openGauss 驱动 <<<<<<<<<<<<<<<<<<<<< "); + // Class.forName("org.opengauss.Driver"); + // Log.d(TAG, "成功加载 openGauss 驱动!>>>>>>>>>>>>>>>>>>>>> "); + // } catch (ClassNotFoundException e) { + // e.printStackTrace(); + // Log.e(TAG, "加载 openGauss 驱动失败,请检查 pom.xml 中 org.opengauss 版本是否存在以及可用 !!!"); + // } + // APIJSON 配置 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Map COMPILE_MAP = AbstractVerifier.COMPILE_MAP; diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index 82918ad..28434f8 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -190,6 +190,9 @@ public String getDBVersion() { // if (isSurrealDB()) { // return "2.0.0"; //TODO 改成你自己的 // } + // if (isOpenGauss()) { + // return "5.0.0"; //TODO 改成你自己的 + // } return null; } @@ -257,6 +260,9 @@ public String getDBUri() { // // return "surrealkv://localhost:8000"; //TODO 改成你自己的 // return "ws://localhost:8000"; //TODO 改成你自己的 // } + // if (isOpenGauss()) { + // return "jdbc:opengauss://127.0.0.1:5432/postgres?currentSchema=" + DEFAULT_SCHEMA; //TODO 改成你自己的 + // } return null; } @@ -318,6 +324,10 @@ public String getDBAccount() { // if (isSurrealDB()) { // return "root"; //TODO 改成你自己的 // } + // if (isOpenGauss()) { + // return "postgres"; //TODO 改成你自己的 + // // 不允许用初始账号,需要 CREATE USER 创建新账号并 GRANT 授权 return "opengauss"; //TODO 改成你自己的 + // } return null; } @@ -379,6 +389,9 @@ public String getDBPassword() { // if (isSurrealDB()) { // return "root"; //TODO 改成你自己的 // } + // if (isOpenGauss()) { + // return "openGauss@123"; //TODO 改成你自己的 + // } return null; } @@ -501,7 +514,8 @@ protected int getMaxCombineCount() { // // @Override // public String getSQLSchema() { - // return SurrealDBUtil.getSQLSchema(super.getSQLSchema(), isSurrealDB()); + // return isOpenGauss() ? "public" : super.getSQLSchema(); + // // return SurrealDBUtil.getSQLSchema(super.getSQLSchema(), isSurrealDB()); //// return InfluxDBUtil.getSQLSchema(super.getSQLSchema(), isIoTDB()); //// return IoTDBUtil.getSQLSchema(super.getSQLSchema().replaceAll("-", "."), isIoTDB()); // } From a7bfd022e9f46e176770997b1e37cd76609c8d62 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 16 Feb 2025 23:06:45 +0800 Subject: [PATCH 34/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource=20=E5=92=8C?= =?UTF-8?q?=20Javax=20=E7=89=88=20Demo=20=E9=83=BD=E5=8D=87=E7=BA=A7=20API?= =?UTF-8?q?JSON=207.5.5,=20apijson-framework=20=E5=8F=8A=E8=87=AA=E8=BA=AB?= =?UTF-8?q?=207.1.7,=20apijson-column=202.1.5,=20apijson-router=202.1.7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../APIJSONBoot-MultiDataSource/pom.xml | 11 ++++++----- APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml | 15 ++++----------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml index 70d1a73..dc42bea 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml @@ -5,7 +5,7 @@ apijson.boot apijson-boot-multi-datasource - 7.1.0 + 7.1.7 jar APIJSONBoot-MultiDataSource @@ -59,22 +59,22 @@ com.github.Tencent APIJSON - 7.1.0 + 7.5.5 com.github.APIJSON apijson-framework - 7.1.0 + 7.1.7 com.github.APIJSON apijson-column - 2.1.0 + 2.1.5 com.github.APIJSON apijson-router - 2.1.0 + 2.1.7 @@ -298,6 +298,7 @@ + diff --git a/APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml index 2c9ae24..aac5881 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-Javax/pom.xml @@ -5,7 +5,7 @@ apijson.demo apijson-demo-javax - 7.1.5 + 7.1.7 APIJSONDemo Demo project for Testing APIJSON Server based on SpringBoot, compat JDK 1.8~16 and SpringBoot 1.4~2.7 @@ -21,26 +21,19 @@ com.github.Tencent APIJSON - 7.1.0 + 7.5.5 com.github.APIJSON apijson-framework - 7.1.5 + 7.1.7 com.github.APIJSON apijson-router - 2.1.5 - - - - - jakarta.servlet - jakarta.servlet-api - 6.0.0 + 2.1.7 From 99718e0d8e4230b139330c960d80743c5ba61b08 Mon Sep 17 00:00:00 2001 From: longjieyi Date: Mon, 17 Feb 2025 21:06:10 +0800 Subject: [PATCH 35/80] =?UTF-8?q?fix=EF=BC=9AgetConnection=20=E6=96=B9?= =?UTF-8?q?=E6=B3=95=E5=86=85=E7=9A=84key=E7=9A=84=E6=9E=84=E5=BB=BA?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/apijson/demo/DemoSQLExecutor.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoSQLExecutor.java index 6119a68..7208ab0 100644 --- a/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -49,13 +49,13 @@ public class DemoSQLExecutor extends APIJSONSQLExecutor { @Override public Connection getConnection(SQLConfig config) throws Exception { Log.d(TAG, "getConnection config.getDatasource() = " + config.getDatasource()); - - Connection c = connectionMap.get(config.getDatabase()); + String connectionKey = config.getDatasource() + "-" + config.getDatabase(); + Connection c = connectionMap.get(connectionKey); if (c == null || c.isClosed()) { try { DataSource ds = DemoApplication.getApplicationContext().getBean(DataSource.class); // 另一种方式是 DruidConfig 初始化获取到 Datasource 后给静态变量 DATA_SOURCE 赋值: ds = DruidConfig.DATA_SOURCE.getConnection(); - connectionMap.put(config.getDatabase(), ds == null ? null : ds.getConnection()); + connectionMap.put(connectionKey, ds == null ? null : ds.getConnection()); } catch (Exception e) { Log.e(TAG, "getConnection try { " + "DataSource ds = DemoApplication.getApplicationContext().getBean(DataSource.class); .." From b5b1466de24993d38f1b8220678ca0edea033f0d Mon Sep 17 00:00:00 2001 From: longjieyi Date: Tue, 18 Feb 2025 10:33:15 +0800 Subject: [PATCH 36/80] =?UTF-8?q?fix=EF=BC=9AgetConnection=20=E6=96=B9?= =?UTF-8?q?=E6=B3=95=E5=86=85=E7=9A=84key=E7=9A=84=E6=9E=84=E5=BB=BA?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/apijson/demo/DemoSQLExecutor.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLExecutor.java index 0983685..1d48c5f 100644 --- a/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONBoot-BigData/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -49,13 +49,13 @@ public class DemoSQLExecutor extends APIJSONSQLExecutor { @Override public Connection getConnection(SQLConfig config) throws Exception { Log.d(TAG, "getConnection config.getDatasource() = " + config.getDatasource()); - - Connection c = connectionMap.get(config.getDatabase()); + String connectionKey = config.getDatasource() + "-" + config.getDatabase(); + Connection c = connectionMap.get(connectionKey); if (c == null || c.isClosed()) { try { DataSource ds = DemoApplication.getApplicationContext().getBean(DataSource.class); // 另一种方式是 DruidConfig 初始化获取到 Datasource 后给静态变量 DATA_SOURCE 赋值: ds = DruidConfig.DATA_SOURCE.getConnection(); - connectionMap.put(config.getDatabase(), ds == null ? null : ds.getConnection()); + connectionMap.put(connectionKey, ds == null ? null : ds.getConnection()); } catch (Exception e) { Log.e(TAG, "getConnection try { " + "DataSource ds = DemoApplication.getApplicationContext().getBean(DataSource.class); .." From cb66a114129c0d82fabbd7c6528c161fb2d81f82 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sat, 1 Mar 2025 17:46:47 +0800 Subject: [PATCH 37/80] =?UTF-8?q?ManticoreSearch:=20=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Manticore/single/sys_Comment.sql | 200 ++++++++++++++++++++++++++ Manticore/single/sys_Moment.sql | 54 +++++++ Manticore/single/sys_apijson_user.sql | 60 ++++++++ 3 files changed, 314 insertions(+) create mode 100644 Manticore/single/sys_Comment.sql create mode 100644 Manticore/single/sys_Moment.sql create mode 100644 Manticore/single/sys_apijson_user.sql diff --git a/Manticore/single/sys_Comment.sql b/Manticore/single/sys_Comment.sql new file mode 100644 index 0000000..715d903 --- /dev/null +++ b/Manticore/single/sys_Comment.sql @@ -0,0 +1,200 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: 47.122.25.116 Database: sys +-- ------------------------------------------------------ +-- Server version 5.7.43-log + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `comment` +-- + +DROP TABLE IF EXISTS `comment`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `comment` ( + `id` bigint, + `toId` bigint, + `userId` bigint, + `momentId` bigint, + `date` timestamp, + `content` text +); +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `comment` +-- + +LOCK TABLES `comment` WRITE; +/*!40000 ALTER TABLE `comment` DISABLE KEYS */; +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (4,0,38710,470,'2017-02-01 11:20:50','This is a Content...-4'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (13,0,82005,58,'2017-02-01 11:20:50','This is a Content...-13'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (22,221,82001,470,'2017-02-01 11:20:50','修改'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (44,0,82003,170,'2017-02-01 11:20:50','This is a Content...-44'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (45,0,93793,301,'2017-02-01 11:20:50','This is a Content...-45'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (47,4,70793,470,'2017-02-01 11:20:50','This is a Content...-47'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (51,45,82003,301,'2017-02-01 11:20:50','This is a Content...-51'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (54,0,82004,170,'2017-02-01 11:20:50','This is a Content...-54'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (68,0,82005,371,'2017-02-01 11:20:50','This is a Content...-68'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (76,45,93793,301,'2017-02-01 11:20:50','This is a Content...-76'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (77,13,93793,58,'2017-02-01 11:20:50','This is a Content...-77'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (97,13,82006,58,'2017-02-01 11:20:50','This is a Content...-97'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (99,44,70793,170,'2017-02-01 11:20:50','This is a Content...-99'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (110,0,93793,371,'2017-02-01 11:23:24','This is a Content...-110'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (114,0,82001,371,'2017-03-02 05:56:06','test multi put'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (115,0,38710,371,'2017-03-02 05:56:06','This is a Content...-115'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (116,0,70793,371,'2017-03-02 05:56:06','This is a Content...-116'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (120,0,93793,301,'2017-03-02 05:56:06','This is a Content...-110'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (124,0,82001,301,'2017-03-02 05:56:06','test multi put'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (157,0,93793,371,'2017-02-01 11:20:50','This is a Content...-157'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (158,0,93793,301,'2018-07-12 17:28:23','This is a Content...-157'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (160,0,82001,235,'2017-03-02 05:56:06','This is a Content...-160'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (162,0,93793,12,'2017-03-06 05:03:45','This is a Content...-162'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (163,0,82001,235,'2017-03-02 05:56:06','This is a Content...-163'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (164,0,93793,12,'2017-03-06 05:03:45','This is a Content...-164'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (167,0,82001,58,'2017-03-25 11:48:41','Nice!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (168,1490442545077,82001,235,'2017-03-25 11:49:14','???'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (172,162,82001,12,'2017-03-25 12:22:58','OK'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (173,0,38710,58,'2017-03-25 12:25:13','Good'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (175,0,38710,12,'2017-03-25 12:26:53','Java is the best program language!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (178,0,38710,511,'2017-03-25 12:30:55','wbw'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (182,110,82001,371,'2017-03-26 06:12:52','hahaha'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (188,97,82001,58,'2017-03-26 07:21:32','1646'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (190,0,82001,58,'2017-03-26 07:22:13','dbdj'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (206,54,82001,170,'2017-03-29 03:04:23','ejej'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (209,13,82001,58,'2017-03-29 03:05:59','hehj'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (300,97,82001,58,'2017-03-29 03:06:07','hj'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (301,194,82001,235,'2017-03-29 03:06:24','jj'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (4001,0,82001,58,'2017-03-29 08:39:52','I would like to say …'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490776944301,0,82001,58,'2017-03-29 08:42:24','hello'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490776966828,173,82001,58,'2017-03-29 08:42:46','me too'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490777905437,0,82001,543,'2017-03-29 08:58:25','rr'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490778122719,175,82001,12,'2017-03-29 09:02:02','Yeah! I think so!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490778494751,1490778122719,82001,12,'2017-03-29 09:08:14','reply Android82001'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490778681337,166,82001,12,'2017-03-29 09:11:21','gg'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490780759866,99,82001,170,'2017-03-29 09:45:59','99'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490781009548,51,82001,301,'2017-03-29 09:50:09','3'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490781032005,45,82001,301,'2017-03-29 09:50:32','93793'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490781817044,209,38710,58,'2017-03-29 10:03:37','82001'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490781850893,1490776966828,38710,58,'2017-03-29 10:04:10','haha!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490781857242,190,38710,58,'2017-03-29 10:04:17','nice'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490781865407,1490781857242,38710,58,'2017-03-29 10:04:25','wow'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490781899147,197,38710,12,'2017-03-29 10:04:59','kaka'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490794439561,1490778681337,82001,12,'2017-03-29 13:33:59','gg?'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490794610632,172,82001,12,'2017-03-29 13:36:50','All right'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490794937137,1490794919957,82001,12,'2017-03-29 13:42:17','All right ok ok'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490794953438,1490794937137,82001,12,'2017-03-29 13:42:33','All right ok ok ll'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490796241178,0,38710,58,'2017-03-29 14:04:01','Anything else?'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490796629591,175,38710,12,'2017-03-29 14:10:29','well'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490798710678,110,38710,371,'2017-03-29 14:45:10','110'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490800971064,175,38710,12,'2017-03-29 15:22:51','I do'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490848396072,175,82001,12,'2017-03-30 04:33:16','Lemon'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490848581424,166,82001,12,'2017-03-30 04:36:21','82001ejej'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490850764448,162,82001,12,'2017-03-30 05:12:44','-162'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490850844016,0,82001,12,'2017-03-30 05:14:04','I like it'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490850876656,1490800971064,82001,12,'2017-03-30 05:14:36','I do so'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490854894566,175,82001,12,'2017-03-30 06:21:34','it does be a good lang'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863443219,1490850844016,82002,12,'2017-03-30 08:44:03','me too!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863507114,4,82003,470,'2017-03-30 08:45:07','yes'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863563124,0,82003,704,'2017-03-30 08:46:03','I want one'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863651493,0,70793,595,'2017-03-30 08:47:31','wow'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863661426,1490780759866,70793,170,'2017-03-30 08:47:41','66'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863676989,0,70793,12,'2017-03-30 08:47:56','Shy'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863711703,0,70793,511,'2017-03-30 08:48:31','I hope I can join'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863717947,178,70793,511,'2017-03-30 08:48:37','what?'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863783276,1490863711703,93793,511,'2017-03-30 08:49:43','haha welcome'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863903900,0,82006,470,'2017-03-30 08:51:43','SOGA'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863915675,0,82006,235,'2017-03-30 08:51:55','Good boy'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863938712,0,82006,12,'2017-03-30 08:52:18','Handsome!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490863978239,1490796241178,82006,58,'2017-03-30 08:52:58','there still remains a question…'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490864016738,0,82006,511,'2017-03-30 08:53:36','I want to have a try!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490864023700,0,82006,543,'2017-03-30 08:53:43','oops'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490864039264,0,82006,551,'2017-03-30 08:53:59','Wonderful!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490864152008,0,82006,58,'2017-03-30 08:55:52','U R ugly( ´?` )'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490864254400,1490863915675,82044,235,'2017-03-30 08:57:34','And I have no idea'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490864276824,0,82044,12,'2017-03-30 08:57:56','Oh my God!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490864292184,1490864152008,82044,58,'2017-03-30 08:58:12','haha!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490864379424,1490863938712,82001,12,'2017-03-30 08:59:39','Thank you~'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490864400210,1490864276824,82001,12,'2017-03-30 09:00:00','Amazing, isnt it?'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490874908570,1490864023700,82055,543,'2017-03-30 11:55:08','yeah'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490874930994,1490777905437,82055,543,'2017-03-30 11:55:30','yy'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490874968779,0,82055,12,'2017-03-30 11:56:08','I love it'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490875033494,0,82055,301,'2017-03-30 11:57:13','More Comments'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490875040761,158,82055,301,'2017-03-30 11:57:20','157'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490875046704,120,82055,301,'2017-03-30 11:57:26','110'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490879678127,0,82001,543,'2017-03-30 13:14:38','Baby you are a firework!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490973736662,1490973715568,70793,170,'2017-03-31 15:22:16','Hello, I am a fresh man'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1490973890875,1490864039264,93793,551,'2017-03-31 15:24:50','While I donot think so…'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491014830404,1490864016738,82001,511,'2017-04-01 02:47:10','Have a nice day!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491119615611,1490864023700,82001,543,'2017-04-02 07:53:35','$$'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491119670185,68,82001,371,'2017-04-02 07:54:30','Leave a word'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491119695580,0,82001,371,'2017-04-02 07:54:55','leave a word'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491130701902,0,38710,511,'2017-04-02 10:58:21','Thanks for your supports (-^?^-)'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491209763162,0,82001,1491200468898,'2017-04-03 08:56:03','How do you do'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491277552385,0,82001,58,'2017-04-04 03:45:52','Seven'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491312438951,1490863651493,82001,595,'2017-04-04 13:27:18','WaKaKa!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491709064513,0,82001,551,'2017-04-09 03:37:44','soga'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491740899179,0,82001,470,'2017-04-09 12:28:19','www'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491798370749,0,82002,551,'2017-04-10 04:26:10','Nice!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491798499667,115,82002,371,'2017-04-10 04:28:19','I do not understand…'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1491830543193,0,82001,170,'2017-04-10 13:22:23','What is the hell?'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1492932228287,1491209763162,38710,1491200468898,'2017-04-23 07:23:48','fine,thanks'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES 1493094307810,0,82001,551,'2017-04-25 04:25:04','删除或修改数据请先创建,不要动原来的,谢谢'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1493094307910,0,82001,551,'2017-04-25 04:26:04','用POST新增数据'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1493186363132,1490850764448,82001,12,'2017-04-26 05:59:23','sndnd'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1502632433970,0,82002,1493835799335,'2017-08-13 13:53:53','just have fun!'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1508053783278,0,82001,1508053762227,'2017-10-15 07:49:43','可以的'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1508072695833,0,82003,1508072633830,'2017-10-15 13:04:55','心疼地抱住自己(๑´ㅂ`๑)'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1508227498578,1491798370749,82001,551,'2017-10-17 08:04:58','g'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1508462026394,1490850844016,82001,12,'2017-10-20 01:13:46','欧'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1508492585904,1508462026394,82001,12,'2017-10-20 09:43:05','my god'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1509003045509,0,82001,1508072633830,'2017-10-26 07:30:45','hhh'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1509346549158,0,82001,170,'2017-10-30 06:55:49','呵呵'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1509346556395,0,82001,170,'2017-10-30 06:55:56','测试'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1510795816462,162,82001,12,'2017-11-16 01:30:16','赞'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1510813284894,0,82001,12,'2017-11-16 06:21:24','asdasdasdas'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1510813295700,162,82001,12,'2017-11-16 06:21:35','adsdasdasdasd'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1511374269759,99,82001,170,'2017-11-22 18:11:09','记录里'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1511374274194,0,82001,170,'2017-11-22 18:11:14','哦哦哦'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1511407695342,0,1511407581570,371,'2017-11-23 03:28:15','好的'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1511407702981,157,1511407581570,371,'2017-11-23 03:28:22','你好'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1511878024415,0,1511761906715,12,'2017-11-28 14:07:04','你今年'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1511878031610,1511878024415,1511761906715,12,'2017-11-28 14:07:11','不鸟你'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1512035094555,0,82001,12,'2017-11-30 09:44:54','呵呵呵'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1512035117021,0,82001,32,'2017-11-30 09:45:17','图片看不了啊'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1512039030970,1512035117021,82001,32,'2017-11-30 10:50:30','一般九宫格图片都是压缩图,分辨率在300*300左右,加载很快,点击放大后才是原图,1080P左右'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1512531859019,0,1512531601485,1512314438990,'2017-12-06 03:44:19','666'),(1512533520832,1512531859019,38710,1512314438990,'2017-12-06 04:12:00','嘿嘿'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1513656045399,0,82001,1508072633830,'2017-12-19 04:00:45','444444'),(1514425796195,0,82001,1513094436910,'2017-12-28 01:49:56','一起'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1514473034425,1514425796195,93793,1513094436910,'2017-12-28 14:57:14','干啥?'),(1514478784653,0,82001,1513094436910,'2017-12-28 16:33:04','bug很多'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1514506206319,1514478784653,38710,1513094436910,'2017-12-29 00:10:06','碰到哪些了呢?欢迎指出,尽快解决^_^'),(1514617131036,0,82005,1513094436910,'2017-12-30 06:58:51','口子'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1514858592813,0,82001,1514858533480,'2018-01-02 02:03:12','铁人'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1514858640958,0,38710,1514858533480,'2018-01-02 02:04:00','斯塔克工业'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1514858707767,0,70793,1514858533480,'2018-01-02 02:05:07','壕友乎?'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1514960713300,0,82001,1513094436910,'2018-01-03 06:25:13','1'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1514960744185,1512531859019,82001,1512314438990,'2018-01-03 06:25:44','哇'); +INSERT INTO `comment`(`id`, `toId`, `userId`, `momentId`, `date`, `content`) VALUES (1515057852156,0,82001,58,'2018-01-04 09:24:12','你说'); + +/*!40000 ALTER TABLE `comment` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2024-06-16 0:39:18 diff --git a/Manticore/single/sys_Moment.sql b/Manticore/single/sys_Moment.sql new file mode 100644 index 0000000..19c18f9 --- /dev/null +++ b/Manticore/single/sys_Moment.sql @@ -0,0 +1,54 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: 47.122.25.116 Database: sys +-- ------------------------------------------------------ +-- Server version 5.7.43-log + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `moment` +-- + +DROP TABLE IF EXISTS `moment`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `moment` ( + `id` bigint, + `userId` bigint, + `date` timestamp, + `content` text, + `praiseUserIdList` json, + `pictureList` json +); +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `moment` +-- + +LOCK TABLES `moment` WRITE; +/*!40000 ALTER TABLE `moment` DISABLE KEYS */; +INSERT INTO `moment`(`id`, `userId`, `date`, `content`, `praiseUserIdList`, `pictureList`) VALUES (12,70793,'2017-02-08 08:06:11','APIJSON,let interfaces and documents go to hell !','[70793, 93793, 82044, 82040, 82055, 90814, 38710, 82002, 82006, 1508072105320, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/788c0a7e11a4f5aadef3c886f028c79b4808613a/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343932353935372d313732303737333630382e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\"]'),(15,82001,'2017-02-08 00:06:11','\"12312gjhtest15','[82002, 70793, 38710, 93793, 82005, 82009, 82007, 82014, 82021, 82026, 82006, 82011, 82016, 82020, 82024, 82004, 82012, 82015, 82019, 82025, 82003, 82008, 82013, 82018, 82023, 82010, 82022, 82017]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(32,82002,'2017-02-08 08:06:11','tst','[38710, 82001, 82005]','[\"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg\"]'),(58,90814,'2017-02-01 11:14:31','This is a Content...-435','[38710, 82003, 82005, 93793, 82006, 82044, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\"]'),(170,70793,'2017-02-01 11:14:31','This is a Content...-73','[82044, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg\"]'),(235,38710,'2017-02-08 08:06:11','APIJSON,let interfaces and documents go to hell !','[82001]','[\"http://abc.cn/1.png\"]'),(301,93793,'2017-02-01 11:14:31','This is a Content...-301','[38710, 93793, 82003, 82005, 82040, 82055, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(371,82002,'2017-02-01 11:14:31','This is a Content...-371','[90814, 93793, 82003, 82005, 82006, 82040, 82002, 82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(470,38710,'2017-02-01 11:14:31','This is a Content...-470','[]','[\"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\"]'),(511,38710,'2017-02-08 08:06:11','APIJSON,let interfaces and documents go to hell !','[70793, 93793, 82001]','[\"https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\"]'),(543,93793,'2017-02-08 08:06:11','[]','[82001]','[\"https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067\", \"https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\"]'),(551,70793,'2017-02-08 08:06:11','海洋动物数量减少,如果非吃不可,不点杀也是在保护它们','[82001]','[\"https://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png\"]'),(595,38710,'2017-03-05 05:29:19','[]','[70793, 82002, 82001]','[\"https://common.cnblogs.com/images/icon_weibo_24.png\", \"https://static.oschina.net/uploads/user/19/39085_50.jpg\"]'),(704,38710,'2017-03-12 09:39:44','APIJSON is a JSON Transmission Structure Protocol…','[82003, 82002, 82001]','[\"https://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000\", \"https://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000\"]'),(1491200468898,38710,'2017-04-03 06:21:08','APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000\", \"https://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000\"]'),(1493835799335,38710,'2017-05-03 18:23:19','APIJSON is a JSON Transmission Structure Protocol…','[82002, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1508053762227,82003,'2017-10-15 07:49:22','我也试试','[1515565976140, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1508072491570,82002,'2017-10-15 13:01:31','有点冷~','[82001, 82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1508072633830,93793,'2017-10-15 13:03:53','天凉了\n有男朋友的抱男盆友\n有女朋友的抱女朋友\n而我就比较牛逼了\n我不冷。','[82005, 82002, 70793, 38710, 82045, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1512314438990,38710,'2017-12-03 15:20:38','APIJSON iOS-Swift版发布,自动生成请求代码,欢迎使用^_^ \n https://github.com/TommyLemon/APIJSON','[82002, 70793, 1512531601485, 82001]','[\"https://images2018.cnblogs.com/blog/660067/201712/660067-20171203231829476-1202860128.jpg\"]'),(1513094436910,38710,'2017-12-12 16:00:36','APIJSON-Python已发布,欢迎体验^_^\nhttps://github.com/TommyLemon/APIJSON','[82005, 82001]','[\"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_get.jpg\", \"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_code.jpg\", \"https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_doc.jpg\"]'),(1514017444961,82002,'2017-12-23 08:24:04','123479589679','[82002, 1520242280259, 82001, 70793, 1524042900591, 1528264711016]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1514858533480,82056,'2018-01-02 02:02:13','I am the Iron Man','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1516086423441,93793,'2018-01-16 07:07:03','抢到票了,开心ପ( ˘ᵕ˘ ) ੭ ☆','[93793, 38710, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1520242333325,1520242280259,'2018-03-05 09:32:13','法拉利','[1520242280259, 70793, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1523935589834,1523626157302,'2018-04-17 03:26:29','by第一条动态','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1523936332614,1523626157302,'2018-04-17 03:38:52','by第二条','[82001, 1523935772553]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524178455305,1524042900591,'2018-04-19 22:54:15','早上好啊','[1524042900591, 38710, 82003, 82001, 1523626157302]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524298780222,1524298730523,'2018-04-21 08:19:40','e说点什么吧~','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1524826652626,1524298730523,'2018-04-27 10:57:32','说点什么吧~哈哈哈','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1527498273102,1527498229991,'2018-05-28 09:04:33','说点什么吧~yui','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1527821296110,1527495857924,'2018-06-01 02:48:16','这是我的商品1号','[1527821445610, 82003, 82001]','[\"http://pic31.nipic.com/20130710/13151003_093759013311_2.jpg\", \"https://cbu01.alicdn.com/img/ibank/2013/514/580/740085415_2101098104.310x310.jpg\"]'),(1527830331780,1527495857924,'2018-06-01 05:18:51','各种购物袋','[38710, 82002, 1527495857924, 82003]','[\"https://cbu01.alicdn.com/img/ibank/2018/292/335/8058533292_57202994.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2018/089/747/8586747980_1843977904.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2016/025/123/3012321520_471514049.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2017/729/995/4800599927_69233977.310x310.jpg\", \"https://cbu01.alicdn.com/img/ibank/2016/377/263/3755362773_609022431.310x310.jpg\"]'),(1527830474378,1527495857924,'2018-06-01 05:21:14','电视机','[1527495857924, 82001]','[\"https://cbu01.alicdn.com/img/ibank/2017/231/077/4524770132_781046171.310x310.jpg\"]'),(1528251335464,1528250827953,'2018-06-06 02:15:35','meiyou','[1528250827953]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528260617722,1528255497767,'2018-06-06 04:50:17','。。。。','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528269822710,1528264711016,'2018-06-06 07:23:42','hhhhhhh','[1528250827953, 82001, 82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528269988360,1528250827953,'2018-06-06 07:26:28','为什么发动态默认会有这两张图片啊?不可以选择自己的图片','[1528250827953]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1528274037224,1528250827953,'2018-06-06 08:33:57','说点什么吧~hgdsryh','[]','[\"https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=0&spn=0&di=163958046450&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=1403824732%2C1921310327&os=1571651475%2C3950546936&simid=3426978648%2C550887139&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fooo_z%26e3Botg9aaa_z%26e3Bv54AzdH3Fowssrwrj6_kt2_88an88_8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=\", \"https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=12&spn=0&di=105575240210&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=832573604%2C2847830718&os=1862795828%2C1682403963&simid=4268934412%2C608274877&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fkkf_z%26e3Bfzi54j_z%26e3Bv54AzdH3Fna-ccbaa-1jpwts-d90cd8ll-a-8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=\"]'),(1528356378455,1528264711016,'2018-06-07 07:26:18','去旅游嘛~','[82001]','[]'),(1528356421201,1528264711016,'2018-06-07 07:27:01','(ง •̀_•́)ง','[]','[]'),(1528356496939,1528356470041,'2018-06-07 07:28:16','(๑•ั็ω•็ั๑)','[]','[]'),(1528462217322,1528339692804,'2018-06-08 12:50:17','有没有小姐姐准备端午出游的?\n地点:北戴河','[]','[\"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg\", \"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg\"]'),(1528676875139,1528339692804,'2018-06-11 00:27:55','123456','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1531062713966,82002,'2018-07-08 15:11:53','云南好美啊( ◞˟૩˟)◞','[82001, 82005, 38710, 70793, 93793, 82003, 1531969715979]','[\"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg\", \"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg\"]'),(1531969818357,1531969715979,'2018-07-19 03:10:18','http://q18idc.com','[1531969715979, 82001, 38710, 1534926301956]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1533908589726,1533835176109,'2018-08-10 13:43:09','我的','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1535781636403,1532188114543,'2018-09-01 06:00:36','这是一个测试','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1536064087117,1532188114543,'2018-09-04 12:28:07','说点什么吧~奥哈达','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1536805585275,82003,'2018-09-13 02:26:25','iPhone Xs发布了,大家怎么看?','[82002, 82005, 70793, 82003, 82001]','[\"https://pic1.zhimg.com/80/v2-e129b40810070443add1c28e6185c894_hd.jpg\"]'),(1541557989440,38710,'2018-11-07 02:33:09','自动化接口和文档 APIJSON 3.0.0 发布\nhttps://www.oschina.net/news/101548/apijson-3-0-released','[82001]','[\"https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Auto_get.jpg\"]'),(1544276216289,1544276209348,'2018-12-08 13:36:56','说点什么吧~ey','[1544276209348]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1545187924367,1544503822963,'2018-12-19 02:52:04','说哼哼唧唧点什么吧~','[1544503822963, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1553096819293,1553095415917,'2019-03-20 15:46:59','说点什么吧~睡觉觉很喜欢','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1556387217941,82002,'2019-04-27 17:46:57','说点什么吧~啦啦啦','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1557415707105,82003,'2019-05-09 15:28:27','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1557754680146,82012,'2019-05-13 13:38:00','马云:工作上要有996的精神,生活上要669,也就是6天6次关键要“久”。大家怎么看?','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1558798664043,82003,'2019-05-25 15:37:44','测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1559129731896,1559129626356,'2019-05-29 11:35:31','xfshter','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1563605336326,1563605318975,'2019-07-20 06:48:56','说点什么吧~死','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1568086574157,70793,'2019-09-10 03:36:14','今天天气不错,到处都是提拉米苏雪','[]','[]'),(1568087960391,70793,'2019-09-10 03:59:20','今天天气不错,到处都是提拉米苏雪','[82001]','[]'),(1568087960412,70793,'2019-09-10 03:59:20','今天天气不错,到处都是提拉米苏雪','[]','[]'),(1572177746393,82002,'2019-10-27 12:02:26','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1577855941093,38710,'2020-01-01 05:19:01','大家新年快乐鸭~','[82001, 38710]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1583574596245,82003,'2020-03-07 09:49:56','测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1594127400223,82002,'2020-07-07 13:10:00','APIJSON,let interfaces and documents go to hell !','[82001, 82002]','[]'),(1594385349411,82002,'2020-07-10 12:49:09','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1594385350586,82003,'2020-07-10 12:49:10','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1606312076474,82002,'2020-11-25 13:47:56','[]','[82001]','[]'),(1608215822376,82003,'2020-12-17 14:37:02','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1611503147421,82002,'2021-01-24 15:45:47','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1617562878095,82002,'2021-04-04 19:01:18','test','[82002, 82001]','[\"http://abc.com/2.png\"]'),(1619511861462,82003,'2021-04-27 08:24:21','对象关系映射- 维基百科,自由的百科全书','[82003, 82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1624700434072,82002,'2021-06-26 09:40:34','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1627367513331,70793,'2021-07-27 06:31:53','今天天气不错,到处都是提拉米苏雪','[]','[]'),(1627367646018,70793,'2021-07-27 06:34:06','什么玩意啊!数据呢!','[]','[]'),(1630746489563,82001,'2021-09-04 09:08:09','\"312312312\"gjhtest04','[82001]','[]'),(1630892587084,82001,'2021-09-06 01:43:07','\"你OK里咯ing3123123\"gjh','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630893108502,82001,'2021-09-06 01:51:48','\"\"55982\"\"','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630894539008,82001,'2021-09-06 02:15:39','\"说点什么吧~12\"','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1630980585686,82001,'2021-09-07 02:09:45','说点什么吧~;;;;','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1631257842981,82001,'2021-09-10 07:10:42','dasdas','[82001]','[]'),(1632294230574,82003,'2021-09-22 07:03:50','APIJSON,let interfaces and documents go to hell !','[82001, 82003]','[]'),(1634090516839,82001,'2021-10-13 02:01:56','huojianfeng','[82001]','[]'),(1637405012523,82003,'2021-11-20 10:43:32','测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1637590638534,82004,'2021-11-22 14:17:18','APIJSON,let interfaces and documents go to hell !','[82002]','[]'),(1637590638567,82004,'2021-11-22 14:17:18','测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1637985952844,82001,'2021-11-27 04:05:52','111','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1638327674898,82002,'2021-12-01 03:01:14','海洋动物数量减少,如果非吃不可,不点杀也是在保护它们','[82001]','[]'),(1645416338268,82005,'2022-02-21 04:05:38','说点什么吧~嘤嘤嘤','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1646030604412,38710,'2022-02-28 06:43:24','今天天气不错,到处都是提拉米苏雪','[38710]','[]'),(1646030924765,38710,'2022-02-28 06:48:44','测试专用测试专用测试专用测试专用','[38710]','[]'),(1646031858837,38710,'2022-02-28 07:04:18','387103871038710387103871038710387103871038710','[38710]','[]'),(1646657313491,82002,'2022-03-07 12:48:33','今天天气不错,^^^!!!','[]','[]'),(1647781303020,82003,'2022-03-20 13:01:43','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1648517248247,82003,'2022-03-29 01:27:28','今天天气不错,到处都是提拉米苏雪','[]','[]'),(1648604448242,82002,'2022-03-30 01:40:48','今天天气不错,到处都是提拉米苏雪','[]','[]'),(1648604448403,82002,'2022-03-30 01:40:48','今天天气不错,到处都是提拉米苏雪','[]','[]'),(1649086182892,82002,'2022-04-04 15:29:42','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1649086185746,82003,'2022-04-04 15:29:45','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1649672357944,82001,'2022-04-11 10:19:17','今天天气真好','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1651846337935,82002,'2022-05-06 14:12:17','今天天气不错,到处都是提拉米苏雪','[]','[]'),(1661002561890,1660645570787,'2022-08-20 13:36:01','老铁双击888!','[]','[]'),(1665293930441,82002,'2022-10-09 05:38:50','我就试试','[]','[]'),(1670420616061,82001,'2022-12-07 13:43:36','APIJSON, let interfaces go to hell!','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1670981809240,82001,'2022-12-14 01:36:49','今天是2022年12月14日,zyy在这里测试!','[]','[]'),(1670981978461,82002,'2022-12-14 01:39:38','今天是2022年12月14日,测试82002!','[]','[]'),(1673797744161,82001,'2023-01-15 15:49:04','对方官方的说法','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1674308870813,82001,'2023-01-21 13:47:50','说点什么吧~看看就','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1675742375160,82001,'2023-02-07 03:59:35','测试看看','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1675910359578,82001,'2023-02-09 02:39:19','APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677051490546,82001,'2023-02-22 07:38:10','说点什么吧~哈哈V大夫才发货呢','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677051517418,82001,'2023-02-22 07:38:37','说点什么吧~444个重复过程','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677144307563,82001,'2023-02-23 09:25:07','APIJSON, let interfaces go to hell!','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1677223327076,82001,'2023-02-24 07:22:07','测试新增动态','[82001]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1677684807693,82001,'2023-03-01 15:33:27','APIJSON, let interfaces go to hell!','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1678877778484,82001,'2023-03-15 10:56:18','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679078499770,82001,'2023-03-17 18:41:39','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679313363196,82001,'2023-03-20 11:56:03','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1679908549702,82002,'2023-03-27 09:15:49','APIJSON,let interfaces and documents go to hell !','[82002]','[]'),(1680494769487,82001,'2023-04-03 04:06:09','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1681403443101,82001,'2023-04-13 16:30:43','测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1681403571733,82002,'2023-04-13 16:32:51','测试新增动态','[82002]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1681404270495,82003,'2023-04-13 16:44:30','测试新增动态','[]','[\"https://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1682096402171,82001,'2023-04-21 17:00:02','Test of 0622','[82001]','[]'),(1682103762126,82002,'2023-04-21 19:02:42','55555','[82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682137190808,38710,'2023-04-22 04:19:50','555','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682171738141,38710,'2023-04-22 13:55:38','哈哈哈哈','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682269375445,82001,'2023-04-23 17:02:55','','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682314259661,82001,'2023-04-24 05:30:59','说点什么吧~哈哈哈','[]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682320252383,38710,'2023-04-24 07:10:52','123123123','[]','[]'),(1682320399121,38710,'2023-04-24 07:13:19','今天天气不错,到处都是提拉米苏雪','[]','[]'),(1682406888196,82001,'2023-04-25 07:14:48','gjhtest10087','[]','[]'),(1682501802339,82001,'2023-04-26 09:36:42','说点什么吧~发朋友圈','[82001]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1682783909204,82001,'2023-04-29 15:58:29','说点什么吧~哈喽','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1683911924815,82001,'2023-05-12 17:18:44','APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1684979928084,82001,'2023-05-25 01:58:48','test01','[82001]','[]'),(1684980752101,82001,'2023-05-25 02:12:32','ctmd','[82001]','[]'),(1684980965206,82001,'2023-05-25 02:16:05','Test of 0206','[]','[]'),(1684981220795,82001,'2023-05-25 02:20:20','test ctmd','[82001]','[]'),(1684981222020,82001,'2023-05-25 02:20:22','test ctmd','[]','[]'),(1684981356791,82001,'2023-05-25 02:22:36','123','[]','[]'),(1684981540478,82001,'2023-05-25 02:25:40','Test of 6838','[82001]','[]'),(1685592384514,82001,'2023-06-01 04:06:24','APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1685592394221,82001,'2023-06-01 04:06:34','APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1686563612923,82001,'2023-06-12 09:53:33','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1690970599784,82001,'2023-08-02 10:03:19','说点什么吧~粑粑麻麻','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1690970609817,82001,'2023-08-02 10:03:29','说点什么吧~粑粑麻麻','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1692260707538,82002,'2023-08-17 08:25:07','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1693680292080,82001,'2023-09-02 18:44:53','APIJSON,let interfaces and documents go to hell !','[82001]','[]'),(1700372077715,82002,'2023-11-19 05:34:37','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1700488719094,82002,'2023-11-20 13:58:39','测试发动态','[82002]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1703425198937,88888,'2023-12-24 13:39:59','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454867,82002,'2024-01-14 04:04:48','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454868,82002,'2024-01-14 04:04:49','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1704175454869,82002,'2024-01-15 03:53:21','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454870,82002,'2024-01-15 03:53:22','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1704175454873,1490109742863,'2024-01-15 04:22:45','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1704175454874,1490109742863,'2024-01-15 04:22:47','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705663946041,82001,'2024-01-19 11:32:26','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705663946759,82001,'2024-01-19 11:32:26','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675844446,88888,'2024-01-19 14:50:44','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705675845903,88888,'2024-01-19 14:50:45','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845904,82001,'2024-01-21 09:38:56','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1705675845905,82001,'2024-01-21 09:39:09','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845914,82002,'2024-01-22 04:13:41','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1705675845917,82001,'2024-05-04 16:20:24','测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1714964371588,82001,'2024-05-06 02:59:31','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1715133130408,82001,'2024-05-08 01:52:10','APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133150286,82001,'2024-05-08 01:52:30','APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133152873,82001,'2024-05-08 01:52:32','APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133172877,82001,'2024-05-08 01:52:52','APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715133174704,82001,'2024-05-08 01:52:54','APIJSON, let interfaces go to hell!','[82001]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1715221781960,82002,'2024-05-09 02:29:41','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1715222278578,82002,'2024-05-26 04:19:55','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1715222278579,82002,'2024-05-26 04:19:56','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1716706970370,38710,'2024-05-26 07:02:50','测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1716707004081,38710,'2024-05-26 07:03:24','测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1716707116336,82001,'2024-05-26 07:05:16','测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717124655020,82002,'2024-05-31 03:04:15','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717468800883,82001,'2024-06-04 02:40:00','APIJSON,let interfaces and documents go to hell !','[]','[]'),(1717468801248,82001,'2024-06-04 02:40:01','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717561747710,82001,'2024-06-05 04:29:07','说点什么吧~1001','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717757674241,82001,'2024-06-07 10:54:34','APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717757679298,82001,'2024-06-07 10:54:39','APIJSON, let interfaces go to hell!','[]','[\"http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"http://common.cnblogs.com/images/icon_weibo_24.png\"]'),(1717862884827,82001,'2024-06-08 16:08:04','测试新增动态','[82001]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'),(1717862890826,38710,'2024-06-08 16:08:10','测试新增动态','[]','[\"http://static.oschina.net/uploads/user/48/96331_50.jpg\"]'); +/*!40000 ALTER TABLE `moment` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2024-06-16 0:37:27 diff --git a/Manticore/single/sys_apijson_user.sql b/Manticore/single/sys_apijson_user.sql new file mode 100644 index 0000000..c2e73c4 --- /dev/null +++ b/Manticore/single/sys_apijson_user.sql @@ -0,0 +1,60 @@ +-- MySQL dump 10.13 Distrib 8.0.31, for macos12 (x86_64) +-- +-- Host: 47.122.25.116 Database: sys +-- ------------------------------------------------------ +-- Server version 5.7.43-log + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `apijson_user` +-- + +DROP TABLE IF EXISTS `apijson_user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `apijson_user` ( + `id` bigint, + `sex` integer, + `name` text, + `tag` text, + `head` text, + `contactIdList` json, + `pictureList` json, + `date` timestamp +); +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `apijson_user` +-- + +LOCK TABLES `apijson_user` WRITE; +/*!40000 ALTER TABLE `apijson_user` DISABLE KEYS */; +INSERT INTO `apijson_user`(`id`, `sex`, `name`, `tag`, `head`, `contactIdList`, `pictureList`, `date`) VALUES (38710,0,'TommyLemon','Android&Java','https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000','[82003, 82005, 90814, 82004, 82009, 82002, 82044, 93793, 70793]','[\"https://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000\", \"https://common.cnblogs.com/images/icon_weibo_24.png\"]','2017-02-01 11:21:50'); +INSERT INTO `apijson_user`(`id`, `sex`, `name`, `tag`, `head`, `contactIdList`, `pictureList`, `date`) VALUES (70793,0,'Strong','djdj','https://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000','[38710, 82002]','[\"https://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg\", \"https://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg\", \"https://camo.githubusercontent.com/788c0a7e11a\", \"https://camo.githubusercontent.com/f513f67\"]','2017-02-01 11:21:50'); +INSERT INTO `apijson_user`(`id`, `sex`, `name`, `tag`, `head`, `contactIdList`, `pictureList`, `date`) VALUES (82001,1,'Test User','dev','https://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000','[82034, 82005, 82030, 82046, 1493748615711, 38710, 82054, 82002]','[\"https://common.cnblogs.com/images/icon_weibo_24.png\"]','2017-02-01 11:21:50'); +INSERT INTO `apijson_user`(`id`, `sex`, `name`, `tag`, `head`, `contactIdList`, `pictureList`, `date`) VALUES (82002,1,'Jan','iOS','https://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000','[82005, 38710]','[]','2017-02-01 11:21:50'),(82003,0,'Wechat','test','https://common.cnblogs.com/images/wechat.png','[93793]','[]','2017-02-01 11:21:50'); +INSERT INTO `apijson_user`(`id`, `sex`, `name`, `tag`, `head`, `contactIdList`, `pictureList`, `date`) VALUES (82004,0,'Tommy','fasef','https://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000','[]','[]','2017-02-01 11:21:50'),(82005,1,'Jan','AG','https://avatars.githubusercontent.com/u/41146037?v=4','[82001, 38710, 1532439021068]','[]','2017-02-01 11:21:50'); +/*!40000 ALTER TABLE `apijson_user` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2024-06-16 0:37:20 From fe33c46007f152b618365c7b38c54f3c1732eb9e Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sat, 1 Mar 2025 22:29:26 +0800 Subject: [PATCH 38/80] =?UTF-8?q?Java=EF=BC=9ADemo=20=E6=96=B0=E5=A2=9E=20?= =?UTF-8?q?CockroachDB-=E4=BA=91=E5=8E=9F=E7=94=9F=E5=88=86=E5=B8=83?= =?UTF-8?q?=E5=BC=8F=E9=AB=98=E5=8F=AF=E7=94=A8=E8=BD=BB=E6=9D=BE=E6=89=A9?= =?UTF-8?q?=E5=B1=95=E6=95=B0=E6=8D=AE=E5=BA=93=E7=9A=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/apijson/demo/DemoSQLConfig.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index 28434f8..1c2b5db 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -55,7 +55,8 @@ public DemoSQLConfig(RequestMethod method, String table) { static { DEFAULT_DATABASE = DATABASE_MYSQL; //TODO 默认数据库类型,改成你自己的。TiDB, MariaDB, OceanBase 这类兼容 MySQL 的可当做 MySQL 使用 - // DEFAULT_NAMESPACE = "root"; //TODO 默认数据库名/模式,改成你自己的,仅对 PostgreSQL: posgres, SurrealDB: root 等数据库有效 + // DEFAULT_NAMESPACE = "root"; //TODO 默认数据库名/模式,改成你自己的,仅对 SurrealDB: root 等数据库有效 + // DEFAULT_CATALOG = "postgres"; //TODO 默认数据库名/模式,改成你自己的,仅对 PostgreSQL: posgres 等数据库有效 DEFAULT_SCHEMA = "sys"; // "apijson"; //TODO 默认数据库名/模式,改成你自己的,默认情况是 MySQL: sys, PostgreSQL: sys, SQL Server: dbo, Oracle: // 表名和数据库不一致的,需要配置映射关系。只使用 APIJSONORM 时才需要; @@ -72,7 +73,7 @@ public DemoSQLConfig(RequestMethod method, String table) { SIMPLE_CALLBACK = new SimpleCallback() { @Override - public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, String schema, String datasource, String table) { + public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, String schema, String datasource, String table) { return new DemoSQLConfig(method, table); } @@ -215,9 +216,13 @@ public String getDBUri() { // 以下是 MySQL 5.7 及以下 return "jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; //TODO 改成你自己的,TiDB 可以当成 MySQL 使用,默认端口为 4000 } - if (isPostgreSQL()) { + if (isPostgreSQL()) { // PG JDBC 必须在 URI 传 catalog return "jdbc:postgresql://localhost:5432/postgres?stringtype=unspecified"; //TODO 改成你自己的 } + //if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog + // return "jdbc:postgresql://localhost:26257/movr?sslmode=require"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach && cockroach demo + // //return "jdbc:postgresql://localhost:26258/postgres?sslmode=disable"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach # && start 3 nodes and init cluster + //} if (isSQLServer()) { return "jdbc:jtds:sqlserver://localhost:1433/pubs;instance=SQLEXPRESS"; //TODO 改成你自己的 } @@ -285,6 +290,10 @@ public String getDBAccount() { if (isPostgreSQL()) { return "postgres"; //TODO 改成你自己的 } + //if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog + // return "demo"; //TODO 改成你自己的 + // //return "postgres"; //TODO 改成你自己的 + //} if (isSQLServer()) { return "sa"; //TODO 改成你自己的 } @@ -350,6 +359,10 @@ public String getDBPassword() { if (isPostgreSQL()) { return null; //TODO 改成你自己的 } + //if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog + // return "demo39865"; //TODO 改成你自己的 + // //return null; //TODO 改成你自己的 + //} if (isSQLServer()) { return "apijson@123"; //TODO 改成你自己的 } From 0590709afcbb465d2d8a6270cd3a2b05bba9ccea Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 2 Mar 2025 12:01:09 +0800 Subject: [PATCH 39/80] =?UTF-8?q?Java=EF=BC=9ADemo=20=E6=96=B0=E5=A2=9E=20?= =?UTF-8?q?ManticoreSearch-=E6=9B=BF=E4=BB=A3=20Elasticsearch=20=E7=9A=84?= =?UTF-8?q?=E8=BD=BB=E9=87=8F=E7=BA=A7=E6=90=9C=E7=B4=A2=E5=BC=95=E6=93=8E?= =?UTF-8?q?=EF=BC=8C=E5=85=BC=E5=AE=B9=20MySQL=20=E5=8D=8F=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/apijson/demo/DemoSQLConfig.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index 1c2b5db..06a31de 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -248,6 +248,9 @@ public String getDBUri() { if (isMilvus()) { return "http://localhost:19530"; //TODO 改成你自己的 } + //if (isManticore()) { + // return "jdbc:mysql://localhost:3306?characterEncoding=utf8&maxAllowedPacket=512000"; //TODO 改成你自己的 + //} // if (isIoTDB()) { // return "jdbc:iotdb://localhost:6667"; // ?charset=GB18030 加参数会报错 URI 格式错误 //TODO 改成你自己的 // } @@ -318,6 +321,9 @@ public String getDBAccount() { if (isMilvus()) { return "root"; } + //if (isManticore()) { + // return "root"; + //} // if (isIoTDB()) { // return "root"; // } @@ -387,6 +393,9 @@ public String getDBPassword() { if (isMilvus()) { return "apijson"; //TODO 改成你自己的 } + //if (isManticore()) { + // return null; + //} // if (isIoTDB()) { // return "root"; // } From 1a88a7acd469cfd2f3cc3397ea02a424ea993dd6 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 3 Mar 2025 00:34:39 +0800 Subject: [PATCH 40/80] =?UTF-8?q?Java:=20ManticoreSearch=20=E6=94=B9?= =?UTF-8?q?=E4=B8=BA=E5=85=8D=E8=B4=A6=E5=8F=B7=E9=85=8D=E7=BD=AE=EF=BC=9B?= =?UTF-8?q?Manticore=EF=BC=9A=E6=9B=B4=E6=96=B0=E8=A1=A8=EF=BC=8Cdatabase?= =?UTF-8?q?=20=E4=BB=8E=E5=8F=AF=E8=83=BD=E5=88=9B=E5=BB=BA=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E7=9A=84=20sys=20=E6=94=B9=E4=B8=BA=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E7=9A=84=20Manticore?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/apijson/demo/DemoSQLConfig.java | 7 ++++--- .../single/{sys_Comment.sql => Manticore_Comment.sql} | 0 Manticore/single/{sys_Moment.sql => Manticore_Moment.sql} | 0 .../{sys_apijson_user.sql => Manticore_apijson_user.sql} | 0 4 files changed, 4 insertions(+), 3 deletions(-) rename Manticore/single/{sys_Comment.sql => Manticore_Comment.sql} (100%) rename Manticore/single/{sys_Moment.sql => Manticore_Moment.sql} (100%) rename Manticore/single/{sys_apijson_user.sql => Manticore_apijson_user.sql} (100%) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index 06a31de..6183345 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -57,7 +57,7 @@ public DemoSQLConfig(RequestMethod method, String table) { DEFAULT_DATABASE = DATABASE_MYSQL; //TODO 默认数据库类型,改成你自己的。TiDB, MariaDB, OceanBase 这类兼容 MySQL 的可当做 MySQL 使用 // DEFAULT_NAMESPACE = "root"; //TODO 默认数据库名/模式,改成你自己的,仅对 SurrealDB: root 等数据库有效 // DEFAULT_CATALOG = "postgres"; //TODO 默认数据库名/模式,改成你自己的,仅对 PostgreSQL: posgres 等数据库有效 - DEFAULT_SCHEMA = "sys"; // "apijson"; //TODO 默认数据库名/模式,改成你自己的,默认情况是 MySQL: sys, PostgreSQL: sys, SQL Server: dbo, Oracle: + DEFAULT_SCHEMA = "sys"; // "apijson"; //TODO 默认数据库名/模式,改成你自己的,默认情况是 MySQL: sys, PostgreSQL: sys, SQL Server: dbo, Manticore: Manticore, Oracle: // 表名和数据库不一致的,需要配置映射关系。只使用 APIJSONORM 时才需要; // 这个 Demo 用了 apijson-framework 且调用了 APIJSONApplication.init 则不需要 @@ -249,7 +249,7 @@ public String getDBUri() { return "http://localhost:19530"; //TODO 改成你自己的 } //if (isManticore()) { - // return "jdbc:mysql://localhost:3306?characterEncoding=utf8&maxAllowedPacket=512000"; //TODO 改成你自己的 + // return "jdbc:mysql://localhost:9306?characterEncoding=utf8&maxAllowedPacket=512000"; //TODO 改成你自己的 //} // if (isIoTDB()) { // return "jdbc:iotdb://localhost:6667"; // ?charset=GB18030 加参数会报错 URI 格式错误 //TODO 改成你自己的 @@ -322,7 +322,7 @@ public String getDBAccount() { return "root"; } //if (isManticore()) { - // return "root"; + // return null; // "root"; //} // if (isIoTDB()) { // return "root"; @@ -546,6 +546,7 @@ protected int getMaxCombineCount() { public String getSQLTable() { String t = super.getSQLTable(); return isInfluxDB() ? t.toLowerCase() : t; + //return isInfluxDB() || isManticore() ? t.toLowerCase() : t; // return isInfluxDB() || isIoTDB() ? t.toLowerCase() : t; // return isInfluxDB() ? t.toLowerCase() : StringUtil.firstCase(JSONRequest.recoverUnderline(t, false), false); } diff --git a/Manticore/single/sys_Comment.sql b/Manticore/single/Manticore_Comment.sql similarity index 100% rename from Manticore/single/sys_Comment.sql rename to Manticore/single/Manticore_Comment.sql diff --git a/Manticore/single/sys_Moment.sql b/Manticore/single/Manticore_Moment.sql similarity index 100% rename from Manticore/single/sys_Moment.sql rename to Manticore/single/Manticore_Moment.sql diff --git a/Manticore/single/sys_apijson_user.sql b/Manticore/single/Manticore_apijson_user.sql similarity index 100% rename from Manticore/single/sys_apijson_user.sql rename to Manticore/single/Manticore_apijson_user.sql From eaabc926860b2dc1a3fa1223746af116a90fc614 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 9 Mar 2025 22:21:02 +0800 Subject: [PATCH 41/80] =?UTF-8?q?Java:=20MultiDataSource=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=20TimescaleDB-=E9=AB=98=E6=80=A7=E8=83=BD=E5=AE=9E?= =?UTF-8?q?=E6=97=B6=E5=88=86=E6=9E=90=E6=97=B6=E5=BA=8F=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=20=E7=9A=84=E9=85=8D=E7=BD=AE=E7=A4=BA=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/apijson/demo/DemoSQLConfig.java | 77 +++++++++++-------- 1 file changed, 43 insertions(+), 34 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index 6183345..d3e7fee 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -164,9 +164,9 @@ public String getDBVersion() { if (isDb2()) { return "11.5"; //TODO 改成你自己的 } - // if (isSQLite()) { - // return "3.39.3"; //TODO 改成你自己的 - // } + // if (isSQLite()) { + // return "3.39.3"; //TODO 改成你自己的 + // } if (isDameng()) { return "8.1.2.141"; //TODO 改成你自己的 } @@ -212,17 +212,17 @@ public String getDBUri() { if (isMySQL()) { // 这个是 MySQL 8.0 及以上,要加 userSSL=false -// return "jdbc:mysql://47.122.25.116:3306?userSSL=false&serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; + // return "jdbc:mysql://47.122.25.116:3306?userSSL=false&serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; // 以下是 MySQL 5.7 及以下 return "jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; //TODO 改成你自己的,TiDB 可以当成 MySQL 使用,默认端口为 4000 } if (isPostgreSQL()) { // PG JDBC 必须在 URI 传 catalog return "jdbc:postgresql://localhost:5432/postgres?stringtype=unspecified"; //TODO 改成你自己的 } - //if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog - // return "jdbc:postgresql://localhost:26257/movr?sslmode=require"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach && cockroach demo - // //return "jdbc:postgresql://localhost:26258/postgres?sslmode=disable"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach # && start 3 nodes and init cluster - //} + // if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog + // return "jdbc:postgresql://localhost:26257/movr?sslmode=require"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach && cockroach demo + // // return "jdbc:postgresql://localhost:26258/postgres?sslmode=disable"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach # && start 3 nodes and init cluster + // } if (isSQLServer()) { return "jdbc:jtds:sqlserver://localhost:1433/pubs;instance=SQLEXPRESS"; //TODO 改成你自己的 } @@ -232,9 +232,9 @@ public String getDBUri() { if (isDb2()) { return "jdbc:db2://localhost:50000/BLUDB"; //TODO 改成你自己的 } - //if (isSQLite()) { - // return "jdbc:sqlite:sample.db"; //TODO 改成你自己的 - //} + // if (isSQLite()) { + // return "jdbc:sqlite:sample.db"; //TODO 改成你自己的 + // } if (isDameng()) { return "jdbc:dm://localhost:5236"; //TODO 改成你自己的 } @@ -242,15 +242,18 @@ public String getDBUri() { // return "jdbc:TAOS://localhost:6030"; //TODO 改成你自己的 return "jdbc:TAOS-RS://localhost:6041"; //TODO 改成你自己的 } + // if (isTimescaleDB()) { // PG JDBC 必须在 URI 传 catalog + // return "jdbc:postgresql://localhost:5432/postgres?stringtype=unspecified"; //TODO 改成你自己的 + // } if (isInfluxDB()) { return "http://203.189.6.3:8086"; //TODO 改成你自己的 } if (isMilvus()) { return "http://localhost:19530"; //TODO 改成你自己的 } - //if (isManticore()) { - // return "jdbc:mysql://localhost:9306?characterEncoding=utf8&maxAllowedPacket=512000"; //TODO 改成你自己的 - //} + // if (isManticore()) { + // return "jdbc:mysql://localhost:9306?characterEncoding=utf8&maxAllowedPacket=512000"; //TODO 改成你自己的 + // } // if (isIoTDB()) { // return "jdbc:iotdb://localhost:6667"; // ?charset=GB18030 加参数会报错 URI 格式错误 //TODO 改成你自己的 // } @@ -293,10 +296,10 @@ public String getDBAccount() { if (isPostgreSQL()) { return "postgres"; //TODO 改成你自己的 } - //if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog - // return "demo"; //TODO 改成你自己的 - // //return "postgres"; //TODO 改成你自己的 - //} + // if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog + // return "demo"; //TODO 改成你自己的 + // //return "postgres"; //TODO 改成你自己的 + // } if (isSQLServer()) { return "sa"; //TODO 改成你自己的 } @@ -306,24 +309,27 @@ public String getDBAccount() { if (isDb2()) { return "db2admin"; //TODO 改成你自己的 } - //if (isSQLite()) { - // return "root"; //TODO 改成你自己的 - //} + // if (isSQLite()) { + // return "root"; //TODO 改成你自己的 + // } if (isDameng()) { return "SYSDBA"; } if (isTDengine()) { return "root"; //TODO 改成你自己的 } + // if (isTimescaleDB()) { + // return "postgres"; //TODO 改成你自己的 + // } if (isInfluxDB()) { return "iotos"; } if (isMilvus()) { return "root"; } - //if (isManticore()) { - // return null; // "root"; - //} + // if (isManticore()) { + // return null; // "root"; + // } // if (isIoTDB()) { // return "root"; // } @@ -365,10 +371,10 @@ public String getDBPassword() { if (isPostgreSQL()) { return null; //TODO 改成你自己的 } - //if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog - // return "demo39865"; //TODO 改成你自己的 - // //return null; //TODO 改成你自己的 - //} + // if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog + // return "demo39865"; //TODO 改成你自己的 + // // return null; //TODO 改成你自己的 + // } if (isSQLServer()) { return "apijson@123"; //TODO 改成你自己的 } @@ -378,24 +384,27 @@ public String getDBPassword() { if (isDb2()) { return "123"; //TODO 改成你自己的 } - // if (isSQLite()) { - // return "apijson"; //TODO 改成你自己的 - // } + // if (isSQLite()) { + // return "apijson"; //TODO 改成你自己的 + // } if (isDameng()) { return "SYSDBA"; } if (isTDengine()) { return "taosdata"; //TODO 改成你自己的 } + // if (isTimescaleDB()) { + // return "password"; //TODO 改成你自己的 + // } if (isInfluxDB()) { return "apijson@123"; //TODO 改成你自己的 } if (isMilvus()) { return "apijson"; //TODO 改成你自己的 } - //if (isManticore()) { - // return null; - //} + // if (isManticore()) { + // return null; + // } // if (isIoTDB()) { // return "root"; // } From e1f09e36ecb552782b1bef39d2767e27e645d87c Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Sun, 16 Mar 2025 01:54:48 +0800 Subject: [PATCH 42/80] =?UTF-8?q?Java:=20MultiDataSource=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=20QuestDB-=E9=AB=98=E6=80=A7=E8=83=BD=E5=AE=9E?= =?UTF-8?q?=E6=97=B6=E5=88=86=E6=9E=90=E6=97=B6=E5=BA=8F=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=20=E7=9A=84=E9=85=8D=E7=BD=AE=E7=A4=BA=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/apijson/demo/DemoSQLConfig.java | 9 + QuestDB/single/qdb_public_Comment.sql | 545 ++++++++++++++++++ QuestDB/single/qdb_public_Moment.sql | 224 +++++++ QuestDB/single/qdb_public_apijson_user.sql | 154 +++++ 4 files changed, 932 insertions(+) create mode 100644 QuestDB/single/qdb_public_Comment.sql create mode 100644 QuestDB/single/qdb_public_Moment.sql create mode 100644 QuestDB/single/qdb_public_apijson_user.sql diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index d3e7fee..ca7d71c 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -245,6 +245,9 @@ public String getDBUri() { // if (isTimescaleDB()) { // PG JDBC 必须在 URI 传 catalog // return "jdbc:postgresql://localhost:5432/postgres?stringtype=unspecified"; //TODO 改成你自己的 // } + // if (isQuestDB()) { // PG JDBC 必须在 URI 传 catalog + // return "jdbc:postgresql://localhost:8812/qdb"; //TODO 改成你自己的 + // } if (isInfluxDB()) { return "http://203.189.6.3:8086"; //TODO 改成你自己的 } @@ -321,6 +324,9 @@ public String getDBAccount() { // if (isTimescaleDB()) { // return "postgres"; //TODO 改成你自己的 // } + // if (isQuestDB()) { + // return "admin"; //TODO 改成你自己的 + // } if (isInfluxDB()) { return "iotos"; } @@ -396,6 +402,9 @@ public String getDBPassword() { // if (isTimescaleDB()) { // return "password"; //TODO 改成你自己的 // } + // if (isQuestDB()) { + // return "quest"; //TODO 改成你自己的 + // } if (isInfluxDB()) { return "apijson@123"; //TODO 改成你自己的 } diff --git a/QuestDB/single/qdb_public_Comment.sql b/QuestDB/single/qdb_public_Comment.sql new file mode 100644 index 0000000..68407bf --- /dev/null +++ b/QuestDB/single/qdb_public_Comment.sql @@ -0,0 +1,545 @@ +create table "Comment" +( + date timestamp(, + id bigint not null, + "toId" bigint not null, + "userId" bigint not null, + "momentId" bigint not null, + content varchar not null +); + + +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (4, 0, 38710, 470, '2017-02-01 11:20:50.000000', 'This is a Content...-4'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (13, 0, 82005, 58, '2017-02-01 11:20:50.000000', 'This is a Content...-13'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (22, 221, 82001, 470, '2017-02-01 11:20:50.000000', '测试修改评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (44, 0, 82003, 170, '2017-02-01 11:20:50.000000', 'This is a Content...-44'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (45, 0, 93793, 301, '2017-02-01 11:20:50.000000', 'This is a Content...-45'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (47, 4, 70793, 470, '2017-02-01 11:20:50.000000', 'This is a Content...-47'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (51, 45, 82003, 301, '2017-02-01 11:20:50.000000', 'This is a Content...-51'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (54, 0, 82004, 170, '2017-02-01 11:20:50.000000', 'This is a Content...-54'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (68, 0, 82005, 371, '2017-02-01 11:20:50.000000', 'This is a Content...-68'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (76, 45, 93793, 301, '2017-02-01 11:20:50.000000', 'This is a Content...-76'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (77, 13, 93793, 58, '2017-02-01 11:20:50.000000', 'This is a Content...-77'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (97, 13, 82006, 58, '2017-02-01 11:20:50.000000', 'This is a Content...-97'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (99, 44, 70793, 170, '2017-02-01 11:20:50.000000', 'This is a Content...-99'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (110, 0, 93793, 371, '2017-02-01 11:23:24.000000', 'This is a Content...-110'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (114, 0, 82001, 371, '2017-03-02 05:56:06.000000', 'This is a Content...-114'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (115, 0, 38710, 371, '2017-03-02 05:56:06.000000', 'This is a Content...-115'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (116, 0, 70793, 371, '2017-03-02 05:56:06.000000', 'This is a Content...-116'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (120, 0, 93793, 301, '2017-03-02 05:56:06.000000', 'This is a Content...-110'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (124, 0, 82001, 301, '2017-03-02 05:56:06.000000', 'This is a Content...-114'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (157, 0, 93793, 371, '2017-02-01 11:20:50.000000', 'This is a Content...-157'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (158, 0, 93793, 301, '2018-07-12 17:28:23.000000', 'This is a Content...-157'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (160, 0, 82001, 235, '2017-03-02 05:56:06.000000', 'This is a Content...-160'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (162, 0, 93793, 12, '2017-03-06 05:03:45.000000', 'This is a Content...-162'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (163, 0, 82001, 235, '2017-03-02 05:56:06.000000', 'This is a Content...-163'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (164, 0, 93793, 12, '2017-03-06 05:03:45.000000', 'This is a Content...-164'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (167, 0, 82001, 58, '2017-03-25 11:48:41.000000', 'Nice!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (168, 1490442545077, 82001, 235, '2017-03-25 11:49:14.000000', '???'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (172, 162, 82001, 12, '2017-03-25 12:22:58.000000', 'OK'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (173, 0, 38710, 58, '2017-03-25 12:25:13.000000', 'Good'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (175, 0, 38710, 12, '2017-03-25 12:26:53.000000', 'Java is the best program language!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (176, 166, 38710, 15, '2017-03-25 12:28:03.000000', 'thank you'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (178, 0, 38710, 511, '2017-03-25 12:30:55.000000', 'wbw'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (182, 110, 82001, 371, '2017-03-26 06:12:52.000000', 'hahaha'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (188, 97, 82001, 58, '2017-03-26 07:21:32.000000', '1646'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (190, 0, 82001, 58, '2017-03-26 07:22:13.000000', 'dbdj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (206, 54, 82001, 170, '2017-03-29 03:04:23.000000', 'ejej'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (209, 13, 82001, 58, '2017-03-29 03:05:59.000000', 'hehj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (300, 97, 82001, 58, '2017-03-29 03:06:07.000000', 'hj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (301, 194, 82001, 235, '2017-03-29 03:06:24.000000', 'jj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (4001, 0, 82001, 58, '2017-03-29 08:39:52.000000', 'I would like to say …'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490776944301, 0, 82001, 58, '2017-03-29 08:42:24.000000', 'hello'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490776966828, 173, 82001, 58, '2017-03-29 08:42:46.000000', 'me too'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490777905437, 0, 82001, 543, '2017-03-29 08:58:25.000000', 'rr'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490778122719, 175, 82001, 12, '2017-03-29 09:02:02.000000', 'Yeah! I think so!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490778494751, 1490778122719, 82001, 12, '2017-03-29 09:08:14.000000', 'reply Android82001'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490778681337, 166, 82001, 12, '2017-03-29 09:11:21.000000', 'gg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490780759866, 99, 82001, 170, '2017-03-29 09:45:59.000000', '99'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781009548, 51, 82001, 301, '2017-03-29 09:50:09.000000', '3'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781032005, 45, 82001, 301, '2017-03-29 09:50:32.000000', '93793'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781817044, 209, 38710, 58, '2017-03-29 10:03:37.000000', '82001'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781850893, 1490776966828, 38710, 58, '2017-03-29 10:04:10.000000', 'haha!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781857242, 190, 38710, 58, '2017-03-29 10:04:17.000000', 'nice'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781865407, 1490781857242, 38710, 58, '2017-03-29 10:04:25.000000', 'wow'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490781899147, 197, 38710, 12, '2017-03-29 10:04:59.000000', 'kaka'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490794439561, 1490778681337, 82001, 12, '2017-03-29 13:33:59.000000', 'gg?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490794610632, 172, 82001, 12, '2017-03-29 13:36:50.000000', 'All right'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490794937137, 1490794919957, 82001, 12, '2017-03-29 13:42:17.000000', 'All right ok ok'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490794953438, 1490794937137, 82001, 12, '2017-03-29 13:42:33.000000', 'All right ok ok ll'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490796241178, 0, 38710, 58, '2017-03-29 14:04:01.000000', 'Anything else?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490796629591, 175, 38710, 12, '2017-03-29 14:10:29.000000', 'well'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490798710678, 110, 38710, 371, '2017-03-29 14:45:10.000000', '110'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490800971064, 175, 38710, 12, '2017-03-29 15:22:51.000000', 'I do'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490848396072, 175, 82001, 12, '2017-03-30 04:33:16.000000', 'Lemon'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490848581424, 166, 82001, 12, '2017-03-30 04:36:21.000000', '82001ejej'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490850764448, 162, 82001, 12, '2017-03-30 05:12:44.000000', '-162'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490850844016, 0, 82001, 12, '2017-03-30 05:14:04.000000', 'I like it'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490850876656, 1490800971064, 82001, 12, '2017-03-30 05:14:36.000000', 'I do so'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490854894566, 175, 82001, 12, '2017-03-30 06:21:34.000000', 'it does be a good lang'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863443219, 1490850844016, 82002, 12, '2017-03-30 08:44:03.000000', 'me too!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863469638, 0, 82002, 15, '2017-03-30 08:44:29.000000', 'Just do it'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863507114, 4, 82003, 470, '2017-03-30 08:45:07.000000', 'yes'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863563124, 0, 82003, 704, '2017-03-30 08:46:03.000000', 'I want one'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863651493, 0, 70793, 595, '2017-03-30 08:47:31.000000', 'wow'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863661426, 1490780759866, 70793, 170, '2017-03-30 08:47:41.000000', '66'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863676989, 0, 70793, 12, '2017-03-30 08:47:56.000000', 'Shy'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863711703, 0, 70793, 511, '2017-03-30 08:48:31.000000', 'I hope I can join'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863717947, 178, 70793, 511, '2017-03-30 08:48:37.000000', 'what?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863783276, 1490863711703, 93793, 511, '2017-03-30 08:49:43.000000', 'haha welcome'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863903900, 0, 82006, 470, '2017-03-30 08:51:43.000000', 'SOGA'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863915675, 0, 82006, 235, '2017-03-30 08:51:55.000000', 'Good boy'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863938712, 0, 82006, 12, '2017-03-30 08:52:18.000000', 'Handsome!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490863978239, 1490796241178, 82006, 58, '2017-03-30 08:52:58.000000', 'there still remains a question…'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864016738, 0, 82006, 511, '2017-03-30 08:53:36.000000', 'I want to have a try!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864023700, 0, 82006, 543, '2017-03-30 08:53:43.000000', 'oops'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864039264, 0, 82006, 551, '2017-03-30 08:53:59.000000', 'Wonderful!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864152008, 0, 82006, 58, '2017-03-30 08:55:52.000000', 'U R ugly( ´?` )'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864254400, 1490863915675, 82044, 235, '2017-03-30 08:57:34.000000', 'And I have no idea'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864276824, 0, 82044, 12, '2017-03-30 08:57:56.000000', 'Oh my God!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864292184, 1490864152008, 82044, 58, '2017-03-30 08:58:12.000000', 'haha!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864379424, 1490863938712, 82001, 12, '2017-03-30 08:59:39.000000', 'Thank you~'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490864400210, 1490864276824, 82001, 12, '2017-03-30 09:00:00.000000', 'Amazing, isnt it?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490874908570, 1490864023700, 82055, 543, '2017-03-30 11:55:08.000000', 'yeah'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490874930994, 1490777905437, 82055, 543, '2017-03-30 11:55:30.000000', 'yy'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490874968779, 0, 82055, 12, '2017-03-30 11:56:08.000000', 'I love it'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490875033494, 0, 82055, 301, '2017-03-30 11:57:13.000000', 'More Comments'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490875040761, 158, 82055, 301, '2017-03-30 11:57:20.000000', '157'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490875046704, 120, 82055, 301, '2017-03-30 11:57:26.000000', '110'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490875660259, 1490863469638, 82055, 15, '2017-03-30 12:07:40.000000', 'I prove wht you said(??????)'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490879678127, 0, 82001, 543, '2017-03-30 13:14:38.000000', 'Baby you are a firework!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490973736662, 1490973715568, 70793, 170, '2017-03-31 15:22:16.000000', 'Hello, I am a fresh man'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1490973890875, 1490864039264, 93793, 551, '2017-03-31 15:24:50.000000', 'While I donot think so…'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491014830404, 1490864016738, 82001, 511, '2017-04-01 02:47:10.000000', 'Have a nice day!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491119615611, 1490864023700, 82001, 543, '2017-04-02 07:53:35.000000', '$$'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491119670185, 68, 82001, 371, '2017-04-02 07:54:30.000000', 'Leave a word'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491119695580, 0, 82001, 371, '2017-04-02 07:54:55.000000', 'leave a word'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491130701902, 0, 38710, 511, '2017-04-02 10:58:21.000000', 'Thanks for your supports (-^?^-)'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491209763162, 0, 82001, 1491200468898, '2017-04-03 08:56:03.000000', 'How do you do'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491277552385, 0, 82001, 58, '2017-04-04 03:45:52.000000', 'Seven'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491312438951, 1490863651493, 82001, 595, '2017-04-04 13:27:18.000000', 'WaKaKa!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491709064513, 0, 82001, 551, '2017-04-09 03:37:44.000000', 'soga'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491740899179, 0, 82001, 470, '2017-04-09 12:28:19.000000', 'www'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491798370749, 0, 82002, 551, '2017-04-10 04:26:10.000000', 'Nice!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491798499667, 115, 82002, 371, '2017-04-10 04:28:19.000000', 'I do not understand…'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1491830543193, 0, 82001, 170, '2017-04-10 13:22:23.000000', 'What is the hell?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1492932228287, 1491209763162, 38710, 1491200468898, '2017-04-23 07:23:48.000000', 'fine,thanks'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1493094307810, 0, 82001, 551, '2017-04-25 04:25:04.000000', '删除或修改数据请先创建,不要动原来的,谢谢'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1493094307910, 0, 82001, 551, '2017-04-25 04:26:04.000000', '用POST新增数据'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1493186363132, 1490850764448, 82001, 12, '2017-04-26 05:59:23.000000', 'sndnd'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1502632433970, 0, 82002, 1493835799335, '2017-08-13 13:53:53.000000', 'just have fun!'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508053783278, 0, 82001, 1508053762227, '2017-10-15 07:49:43.000000', '可以的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508072695833, 0, 82003, 1508072633830, '2017-10-15 13:04:55.000000', '心疼地抱住自己(๑´ㅂ`๑)'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508227456407, 0, 82001, 15, '2017-10-17 08:04:16.000000', 'hsh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508227498578, 1491798370749, 82001, 551, '2017-10-17 08:04:58.000000', 'g'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508462026394, 1490850844016, 82001, 12, '2017-10-20 01:13:46.000000', '欧'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1508492585904, 1508462026394, 82001, 12, '2017-10-20 09:43:05.000000', 'my god'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509003045509, 0, 82001, 1508072633830, '2017-10-26 07:30:45.000000', 'hhh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509346549158, 0, 82001, 170, '2017-10-30 06:55:49.000000', '呵呵'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509346556395, 0, 82001, 170, '2017-10-30 06:55:56.000000', '测试'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509346606036, 0, 82001, 15, '2017-10-30 06:56:46.000000', '测'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1509518079106, 0, 82001, 1508073178489, '2017-11-01 06:34:39.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1510795816462, 162, 82001, 12, '2017-11-16 01:30:16.000000', '赞'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1510795933629, 0, 82001, 1508073178489, '2017-11-16 01:32:13.000000', 'cc'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1510813284894, 0, 82001, 12, '2017-11-16 06:21:24.000000', 'asdasdasdas'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1510813295700, 162, 82001, 12, '2017-11-16 06:21:35.000000', 'adsdasdasdasd'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511374269759, 99, 82001, 170, '2017-11-22 18:11:09.000000', '记录里'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511374274194, 0, 82001, 170, '2017-11-22 18:11:14.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511407695342, 0, 1511407581570, 371, '2017-11-23 03:28:15.000000', '好的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511407702981, 157, 1511407581570, 371, '2017-11-23 03:28:22.000000', '你好'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511878024415, 0, 1511761906715, 12, '2017-11-28 14:07:04.000000', '你今年'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1511878031610, 1511878024415, 1511761906715, 12, '2017-11-28 14:07:11.000000', '不鸟你'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512035094555, 0, 82001, 12, '2017-11-30 09:44:54.000000', '呵呵呵'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512035117021, 0, 82001, 32, '2017-11-30 09:45:17.000000', '图片看不了啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512039030970, 1512035117021, 82001, 32, '2017-11-30 10:50:30.000000', '一般九宫格图片都是压缩图,分辨率在300*300左右,加载很快,点击放大后才是原图,1080P左右'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512531859019, 0, 1512531601485, 1512314438990, '2017-12-06 03:44:19.000000', '666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1512533520832, 1512531859019, 38710, 1512314438990, '2017-12-06 04:12:00.000000', '嘿嘿'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1513656045399, 0, 82001, 1508072633830, '2017-12-19 04:00:45.000000', '444444'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514425796195, 0, 82001, 1513094436910, '2017-12-28 01:49:56.000000', '一起'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514473034425, 1514425796195, 93793, 1513094436910, '2017-12-28 14:57:14.000000', '干啥?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514478784653, 0, 82001, 1513094436910, '2017-12-28 16:33:04.000000', 'bug很多'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514506206319, 1514478784653, 38710, 1513094436910, '2017-12-29 00:10:06.000000', '碰到哪些了呢?欢迎指出,尽快解决^_^'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514617131036, 0, 82005, 1513094436910, '2017-12-30 06:58:51.000000', '口子'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514858592813, 0, 82001, 1514858533480, '2018-01-02 02:03:12.000000', '铁人'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514858640958, 0, 38710, 1514858533480, '2018-01-02 02:04:00.000000', '斯塔克工业'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514858707767, 0, 70793, 1514858533480, '2018-01-02 02:05:07.000000', '壕友乎?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514960713300, 0, 82001, 1513094436910, '2018-01-03 06:25:13.000000', '1'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1514960744185, 1512531859019, 82001, 1512314438990, '2018-01-03 06:25:44.000000', '哇'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057852156, 0, 82001, 58, '2018-01-04 09:24:12.000000', '你说'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057857464, 0, 82001, 58, '2018-01-04 09:24:17.000000', '你说'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057861094, 0, 82001, 58, '2018-01-04 09:24:21.000000', '蓉蓉'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057864174, 1515057857464, 82001, 58, '2018-01-04 09:24:24.000000', '哦轻松'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515057869554, 0, 82001, 58, '2018-01-04 09:24:29.000000', ',王者荣耀'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515313792063, 162, 82001, 12, '2018-01-07 08:29:52.000000', 'you'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1515313823155, 164, 82001, 12, '2018-01-07 08:30:23.000000', 'you'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516190557098, 0, 82001, 1513094436910, '2018-01-17 12:02:37.000000', '哦婆婆'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516629533520, 0, 82001, 1508072633830, '2018-01-22 13:58:53.000000', '小臭臭'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516686985310, 0, 82001, 1516086423441, '2018-01-23 05:56:25.000000', 'hologram'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516687072270, 1516629533520, 82001, 1508072633830, '2018-01-23 05:57:52.000000', '咯我就'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516687437251, 1516686985310, 82001, 1516086423441, '2018-01-23 06:03:57.000000', '你家里好哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516691119239, 1516686985310, 38710, 1516086423441, '2018-01-23 07:05:19.000000', '我喜欢Hololens嘿嘿'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516780129884, 0, 82001, 1516086423441, '2018-01-24 07:48:49.000000', 'aaa'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516783920998, 0, 82001, 1513094436910, '2018-01-24 08:52:00.000000', '这个是实时的吗'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516785657724, 0, 82001, 1516086423441, '2018-01-24 09:20:57.000000', 'hj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516805226757, 1516785657724, 38710, 1516086423441, '2018-01-24 14:47:06.000000', '滑稽?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516805340593, 1516783920998, 38710, 1513094436910, '2018-01-24 14:49:00.000000', '看怎么定义 实时 。这个是仿微信朋友圈列表和QQ空间说说详情,在线同步的,但没做推送,所以不是QQ微信聊天那种即时通讯。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516843720270, 1516780129884, 82001, 1516086423441, '2018-01-25 01:28:40.000000', 'ghj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516862537978, 1515057869554, 70793, 58, '2018-01-25 06:42:17.000000', '绝地逃亡吃鸡'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516931850067, 0, 82001, 1516086423441, '2018-01-26 01:57:30.000000', '1111111111111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516951734010, 1514506206319, 82001, 1513094436910, '2018-01-26 07:28:54.000000', '火锅'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516951754620, 0, 82001, 1513094436910, '2018-01-26 07:29:14.000000', '凤飞飞刚刚好'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1516951826863, 0, 82001, 170, '2018-01-26 07:30:26.000000', '黑珍珠'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517193267472, 1513656045399, 82001, 1508072633830, '2018-01-29 02:34:27.000000', '1'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517193278459, 0, 82001, 1508072633830, '2018-01-29 02:34:38.000000', '112'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517229342303, 0, 82001, 1516086423441, '2018-01-29 12:35:42.000000', '几号抢的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517234768450, 1517229342303, 93793, 1516086423441, '2018-01-29 14:06:08.000000', '9号'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517303775429, 1490863903900, 82001, 470, '2018-01-30 09:16:15.000000', '???'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517375165233, 0, 82001, 1508053762227, '2018-01-31 05:06:05.000000', '666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1517730034960, 0, 82001, 170, '2018-02-04 07:40:34.000000', '陌陌陌陌'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1518365470893, 44, 82001, 170, '2018-02-11 16:11:10.000000', '野蜂飞舞'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1518614899681, 0, 82001, 301, '2018-02-14 13:28:19.000000', 'https://goo.gl/search/JJB+Sports +JJB Sports,'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519719341810, 0, 82001, 1516086423441, '2018-02-27 08:15:41.000000', '我也想抢一张'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519793574249, 1519719341810, 93793, 1516086423441, '2018-02-28 04:52:54.000000', '哈哈,春运都过了啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519813825959, 0, 82001, 1516086423441, '2018-02-28 10:30:25.000000', '距P民'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519974842508, 0, 82001, 1516086423441, '2018-03-02 07:14:02.000000', '1111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519974868848, 1516691119239, 82001, 1516086423441, '2018-03-02 07:14:28.000000', '1111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1519979533242, 0, 82001, 1508072633830, '2018-03-02 08:32:13.000000', 'hj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520231250819, 0, 82001, 12, '2018-03-05 06:27:30.000000', '浑身难受呢'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520264640815, 0, 70793, 1520242333325, '2018-03-05 15:44:00.000000', '兰博基尼'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520330788006, 0, 1520242280259, 1514017444961, '2018-03-06 10:06:28.000000', '八组'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520578883309, 0, 82001, 12, '2018-03-09 07:01:23.000000', '我用流量'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1520699466219, 1520578883309, 82001, 12, '2018-03-10 16:31:06.000000', '壕'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522074343188, 1513656045399, 82001, 1508072633830, '2018-03-26 14:25:43.000000', 'rrrrr'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522074360206, 1519979533242, 82001, 1508072633830, '2018-03-26 14:26:00.000000', 'tttt'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522657767636, 120, 82001, 301, '2018-04-02 08:29:27.000000', '云画'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522741138316, 1517193278459, 82001, 1508072633830, '2018-04-03 07:38:58.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1522986959852, 1508072695833, 82001, 1508072633830, '2018-04-06 03:55:59.000000', '!????'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1523936378484, 0, 1523935772553, 1523936332614, '2018-04-17 03:39:38.000000', '不错不错哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032180807, 1519719341810, 82001, 1516086423441, '2018-04-18 06:16:20.000000', '你好啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032244441, 1519974842508, 82001, 1516086423441, '2018-04-18 06:17:24.000000', '干嘛,单身吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032255755, 1519974842508, 82001, 1516086423441, '2018-04-18 06:17:35.000000', '单身到底吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032299622, 0, 82001, 1516086423441, '2018-04-18 06:18:19.000000', '别给我得怂'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524032305810, 1524032299622, 82001, 1516086423441, '2018-04-18 06:18:25.000000', '你好'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524178495587, 0, 1524042900591, 1524178455305, '2018-04-19 22:54:55.000000', '嘻嘻'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524178500568, 1524178495587, 1524042900591, 1524178455305, '2018-04-19 22:55:00.000000', '哈哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524190367904, 0, 38710, 1524178455305, '2018-04-20 02:12:47.000000', '你头像用的是本地的路径,只有你能看到,别人看不到哦,可以换一个url'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524190412418, 1524190367904, 38710, 1524178455305, '2018-04-20 02:13:32.000000', '我的资料>编辑>改下备注'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524190941111, 1524032244441, 82003, 1516086423441, '2018-04-20 02:22:21.000000', '单身约吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524190981549, 1522657767636, 82003, 301, '2018-04-20 02:23:01.000000', '这个6'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524191012552, 0, 82003, 1524178455305, '2018-04-20 02:23:32.000000', '早上好小姐姐'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524214012015, 1524190367904, 1524042900591, 1524178455305, '2018-04-20 08:46:52.000000', '怎么换url'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524235902970, 1524214012015, 82003, 1524178455305, '2018-04-20 14:51:42.000000', '在我的资料界面编辑备注'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524297798490, 0, 82001, 1513094436910, '2018-04-21 08:03:18.000000', 'gg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524461430874, 1519979533242, 82001, 1508072633830, '2018-04-23 05:30:30.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524461436914, 0, 82001, 1508072633830, '2018-04-23 05:30:36.000000', '莫'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524461441914, 0, 82001, 1508072633830, '2018-04-23 05:30:41.000000', '默默'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524488068926, 1524178500568, 82001, 1524178455305, '2018-04-23 12:54:28.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524582671132, 1524461441914, 82003, 1508072633830, '2018-04-24 15:11:11.000000', '陌陌'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524582716289, 1524461441914, 70793, 1508072633830, '2018-04-24 15:11:56.000000', '脉脉'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524798402799, 0, 1523626157302, 1524178455305, '2018-04-27 03:06:42.000000', '能不能把本地的图片传到服务器,这样大家都能看到了,用url换头像不太习惯'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524799118232, 0, 1523626157302, 1512314438990, '2018-04-27 03:18:38.000000', '这些图片是怎么发上去的呢?我发动态只有默认的两张图'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524843908458, 1524799118232, 82001, 1512314438990, '2018-04-27 15:45:08.000000', '在HttpRequest.addMoment中加的,因为APIJSON的Server Demo没做图片存储,所以目前只能自己传图片的url,可以百度图片上找哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524844181029, 1524798402799, 82001, 1524178455305, '2018-04-27 15:49:41.000000', '确实有这样的问题,但这个Demo仅供展示APIJSON的接口数据增删改查的能力,又拍云,七牛等平台又需要对接及付费,所以Demo暂时不提供哈,需要的话可以自己搞。建议先把图片上传到又拍云等平台,拿回url再传到自己的服务器^_^'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1524844222775, 1524798402799, 82001, 1524178455305, '2018-04-27 15:50:22.000000', '目前也可以百度一张图,把对应的url传上去,大家就都能看到了哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1525658333654, 0, 82001, 1513094436910, '2018-05-07 01:58:53.000000', 'q'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527821844576, 0, 1527821445610, 1527821296110, '2018-06-01 02:57:24.000000', '好不好用啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527821876802, 1527821844576, 1527495857924, 1527821296110, '2018-06-01 02:57:56.000000', '当然好用啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527837906576, 0, 38710, 1527830331780, '2018-06-01 07:25:06.000000', '哇,好漂亮'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527837965006, 0, 82002, 1527830474378, '2018-06-01 07:26:05.000000', '像平板电脑哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527862540820, 0, 1527495857924, 1527830331780, '2018-06-01 14:15:40.000000', '谢谢你'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1527862609352, 1527837965006, 1527495857924, 1527830474378, '2018-06-01 14:16:49.000000', 'ㄟ(≧◇≦)ㄏ'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528105592852, 0, 82001, 1516086423441, '2018-06-04 09:46:32.000000', 'aaaaa'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528250648974, 0, 82001, 1523936332614, '2018-06-06 02:04:08.000000', 'hshdv'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528270188205, 0, 1528250827953, 1527830474378, '2018-06-06 07:29:48.000000', '这个图片是怎么发出来的啊,我发动态就只是那两张默认图片'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528278187969, 0, 82001, 470, '2018-06-06 09:43:07.000000', '啊啊啊啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528289446172, 0, 82001, 1528269988360, '2018-06-06 12:50:46.000000', '因为没做前端上传和后端保存图片的功能,APIJSONApp主要是用来展示APIJSON的自动化接口的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528289580140, 0, 38710, 1528274037224, '2018-06-06 12:53:00.000000', '这两张图片的url错了哦,都是网页url,所以小图加载不出来,只能点击后用WebView查看'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528327885509, 1528289580140, 1528250827953, 1528274037224, '2018-06-06 23:31:25.000000', '噢噢,没想到你能这么快回复,谢谢'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528333168328, 0, 82001, 1514017444961, '2018-06-07 00:59:28.000000', 'zj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528333174811, 0, 82001, 1514017444961, '2018-06-07 00:59:34.000000', 'xj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528393204569, 1528270188205, 38710, 1527830474378, '2018-06-07 17:40:04.000000', '把接口里的pictureList的值改下,里面包含图片url'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528463152459, 1528463135762, 1528339692804, 1528462217322, '2018-06-08 13:05:52.000000', '我想去'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528463165903, 0, 1528339692804, 1528462217322, '2018-06-08 13:06:05.000000', '我想去'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528516951218, 0, 82001, 1528462217322, '2018-06-09 04:02:31.000000', '这里能约到小姐姐算我输୧(๑•̀⌄•́๑)૭'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528554476310, 0, 82001, 1516086423441, '2018-06-09 14:27:56.000000', 'thS'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528676480604, 0, 1528339692804, 1528356421201, '2018-06-11 00:21:20.000000', 'nihshs'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528677257985, 0, 1528339692804, 1528676875139, '2018-06-11 00:34:17.000000', 'aaa'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528679814166, 0, 1528339692804, 1528676875139, '2018-06-11 01:16:54.000000', '12'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528681265496, 1528516951218, 1528339692804, 1528462217322, '2018-06-11 01:41:05.000000', '你输了有什么惩罚吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528698907535, 0, 82001, 1516086423441, '2018-06-11 06:35:07.000000', 'yhbv'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528703971675, 1528681265496, 82001, 1528462217322, '2018-06-11 07:59:31.000000', '一起陪小姐姐出游*。٩(ˊωˋ*)و✧'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528799506317, 1516805340593, 82001, 1513094436910, '2018-06-12 10:31:46.000000', '摩恩'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528972547638, 0, 82001, 1528462217322, '2018-06-14 10:35:47.000000', '古古怪怪'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1528972555336, 0, 82001, 1528462217322, '2018-06-14 10:35:55.000000', '合计怕v就怕vi'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1529730035521, 0, 82001, 1527830331780, '2018-06-23 05:00:35.000000', '还有别的吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1530528524447, 0, 38710, 1528269988360, '2018-07-02 10:48:44.000000', '所以HttpRequest里写死了两张图片url,你可以改下'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531063660028, 0, 82003, 1531062713966, '2018-07-08 15:27:40.000000', '这是哪里啊?我也想去'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531412238453, 0, 82001, 1528356378455, '2018-07-12 16:17:18.000000', '去啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531412264667, 0, 82003, 1528356378455, '2018-07-12 16:17:44.000000', '去哪呢?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531887938362, 1531063660028, 82001, 1531062713966, '2018-07-18 04:25:38.000000', '是呀'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531894411487, 0, 82001, 1520242333325, '2018-07-18 06:13:31.000000', 'sssx'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1531983163150, 0, 1531969715979, 1531969818357, '2018-07-19 06:52:43.000000', 'http://q18idc.com'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1532057419100, 0, 38710, 1531969818357, '2018-07-20 03:30:19.000000', '可以加上标题哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533008631299, 1532057419100, 82001, 1531969818357, '2018-07-31 03:43:51.000000', '加上'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533120405110, 1516780129884, 82001, 1516086423441, '2018-08-01 10:46:45.000000', 'eeeeee'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533120420498, 1528105592852, 82001, 1516086423441, '2018-08-01 10:47:00.000000', 'eeeeeee'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533186909764, 0, 82001, 1531969818357, '2018-08-02 05:15:09.000000', 'hello'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533187733941, 0, 82001, 1508072633830, '2018-08-02 05:28:53.000000', '好好'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533188056603, 1531887938362, 82001, 1531062713966, '2018-08-02 05:34:16.000000', '顺带'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533195207026, 0, 82001, 1531062713966, '2018-08-02 07:33:27.000000', 'JJ'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533202426013, 1533186909764, 82003, 1531969818357, '2018-08-02 09:33:46.000000', 'world'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533202917743, 1533186909764, 82001, 1531969818357, '2018-08-02 09:41:57.000000', '00'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533629063261, 0, 82001, 1531969818357, '2018-08-07 08:04:23.000000', '大鸡鸡'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533631893738, 0, 82001, 1531969818357, '2018-08-07 08:51:33.000000', '哈哈哈哈哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533809879340, 1533186909764, 82001, 1531969818357, '2018-08-09 10:17:59.000000', '434'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533889646344, 0, 82001, 1508072491570, '2018-08-10 08:27:26.000000', '11111111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533902815448, 0, 82001, 1531969818357, '2018-08-10 12:06:55.000000', '很不要吃'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1533902902749, 0, 82001, 1531969818357, '2018-08-10 12:08:22.000000', '性能还可以'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534053913157, 1524190941111, 1508072160401, 1516086423441, '2018-08-12 06:05:13.000000', '怎么约?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534128014211, 0, 82001, 1520242333325, '2018-08-13 02:40:14.000000', 'zxxx'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534412022857, 0, 82001, 1531969818357, '2018-08-16 09:33:42.000000', 'dgf'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534684074665, 1531983163150, 82001, 1531969818357, '2018-08-19 13:07:54.000000', 'ggggg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534684209052, 110, 82001, 371, '2018-08-19 13:10:09.000000', '44444444444444444444444444'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534926143012, 0, 82001, 1508053762227, '2018-08-22 08:22:23.000000', '治标不治本在不在不在不'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534926149638, 1517375165233, 82001, 1508053762227, '2018-08-22 08:22:29.000000', '把标准版申报表上班设备'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1534992151350, 0, 82001, 1516086423441, '2018-08-23 02:42:31.000000', '你咋不'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535279823332, 0, 82001, 1520242333325, '2018-08-26 10:37:03.000000', '斤斤计较'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535279827983, 0, 82001, 1520242333325, '2018-08-26 10:37:07.000000', '斤斤计较'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535598334136, 1534992151350, 82003, 1516086423441, '2018-08-30 03:05:34.000000', '啥?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535600352436, 0, 82001, 1520242333325, '2018-08-30 03:39:12.000000', '6666666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535600430479, 0, 82001, 1520242333325, '2018-08-30 03:40:30.000000', '法拉利'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535785537390, 1535279823332, 82003, 1520242333325, '2018-09-01 07:05:37.000000', '不好哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535785585222, 1534926143012, 82003, 1508053762227, '2018-09-01 07:06:25.000000', '啥?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535963519864, 0, 82001, 1535781636403, '2018-09-03 08:31:59.000000', 'gghhh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1535963525135, 1535963519864, 82001, 1535781636403, '2018-09-03 08:32:05.000000', 'gyuji'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1536337000073, 1516686985310, 82001, 1516086423441, '2018-09-07 16:16:40.000000', 'heh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1536378833060, 0, 82001, 1508072633830, '2018-09-08 03:53:53.000000', '真的嘛'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1536469270492, 0, 82001, 1528356496939, '2018-09-09 05:01:10.000000', '这是啥表情?Σ(ŎдŎ|||)ノノ'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1536805661269, 0, 70793, 1536805585275, '2018-09-13 02:27:41.000000', '6s再战一年'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537373307627, 0, 82001, 1516086423441, '2018-09-19 16:08:27.000000', '。。。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537410620002, 0, 82001, 1536805585275, '2018-09-20 02:30:20.000000', '不一样'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537710348414, 0, 82001, 1516086423441, '2018-09-23 13:45:48.000000', 'hhj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537710359760, 0, 82001, 1516086423441, '2018-09-23 13:45:59.000000', '锵锵锵'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537857324518, 0, 82001, 1536805585275, '2018-09-25 06:35:24.000000', '嗯呢'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1537857334299, 1537857324518, 82001, 1536805585275, '2018-09-25 06:35:34.000000', '嗯嗯'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539252343243, 1539252313711, 82001, 15, '2018-10-11 10:05:43.000000', 'dxdf'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539252350604, 1539252337210, 82001, 15, '2018-10-11 10:05:50.000000', 'djdnjd'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539868250267, 1531063660028, 82001, 1531062713966, '2018-10-18 13:10:50.000000', '555555555555555555'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539868258868, 1533188056603, 82001, 1531062713966, '2018-10-18 13:10:58.000000', '555555555'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539868269471, 1539868250267, 82001, 1531062713966, '2018-10-18 13:11:09.000000', '4444444444444'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539868275645, 1531887938362, 82001, 1531062713966, '2018-10-18 13:11:15.000000', '22222222222222222'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1539960436993, 0, 82001, 1539868023868, '2018-10-19 14:47:16.000000', '111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1541496033857, 0, 82001, 301, '2018-11-06 09:20:33.000000', '能解决'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1541651688961, 1539960436993, 82001, 1539868023868, '2018-11-08 04:34:48.000000', '哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1541815269164, 0, 82001, 1541667945772, '2018-11-10 02:01:09.000000', '11'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1543193682067, 0, 1528339692804, 1528269822710, '2018-11-26 00:54:42.000000', 'ss'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1544496611006, 0, 82001, 15, '2018-12-11 02:50:11.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1544496618728, 0, 82001, 15, '2018-12-11 02:50:18.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1544496620126, 0, 82001, 15, '2018-12-11 02:50:20.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1544503960414, 1537410620002, 1544503822963, 1536805585275, '2018-12-11 04:52:40.000000', '664984'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545527888416, 0, 82001, 1553096819293, '2018-12-23 01:18:08.000000', 'hello'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545527898986, 1545527888416, 82001, 1553096819293, '2018-12-23 01:18:18.000000', 'world'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545527923036, 1545527888416, 82001, 1553096819293, '2018-12-23 01:18:43.000000', '还差还差还差'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545918307310, 0, 82001, 15, '2018-12-27 13:45:07.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545927001999, 1545895875719, 82001, 1553096819293, '2018-12-27 16:10:02.000000', '哦哦哦www'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1545961973331, 0, 82001, 15, '2018-12-28 01:52:53.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1546050359778, 0, 82001, 15, '2018-12-29 02:25:59.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1546050386785, 0, 82001, 1516086423441, '2018-12-29 02:26:26.000000', '不鸟你'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1546934145366, 0, 82001, 15, '2019-01-08 07:55:45.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1546935903414, 0, 82001, 15, '2019-01-08 08:25:03.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551061659233, 0, 82001, 15, '2019-02-25 02:27:39.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551080228544, 0, 82001, 1553096819293, '2019-02-25 07:37:08.000000', '几何画板'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551080263524, 0, 82001, 1516086423441, '2019-02-25 07:37:43.000000', '你就看看'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551146130246, 0, 82001, 15, '2019-02-26 01:55:30.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551325753556, 0, 82001, 15, '2019-02-28 03:49:13.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551409858047, 0, 82001, 301, '2019-03-01 03:10:58.000000', '您'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430453424, 0, 82001, 1553096819293, '2019-03-01 08:54:13.000000', '啊啊'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430465241, 1551430453424, 82001, 1553096819293, '2019-03-01 08:54:25.000000', '123'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430474490, 1551430453424, 82001, 1553096819293, '2019-03-01 08:54:34.000000', '444'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430485689, 1551430453424, 82001, 1553096819293, '2019-03-01 08:54:45.000000', '品牌'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430485828, 0, 82001, 1553096819293, '2019-03-01 08:54:45.000000', '品牌'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551430579358, 1516691119239, 82001, 1516086423441, '2019-03-01 08:56:19.000000', '555555'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551683545557, 1490863711703, 82001, 511, '2019-03-04 07:12:25.000000', '科技'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1551777156494, 0, 82001, 15, '2019-03-05 09:12:36.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552215780595, 0, 82001, 15, '2019-03-10 11:03:00.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552297994119, 0, 82001, 1512314438990, '2019-03-11 09:53:14.000000', '小米'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552298015880, 1524799118232, 82001, 1512314438990, '2019-03-11 09:53:35.000000', '评论真的假的'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552378943273, 0, 82001, 1551251234369, '2019-03-12 08:22:23.000000', '123'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552381508342, 0, 82001, 15, '2019-03-12 09:05:08.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552532948487, 0, 82001, 15, '2019-03-14 03:09:08.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1552980434725, 0, 82001, 15, '2019-03-19 07:27:14.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553053346095, 0, 82001, 1553096819293, '2019-03-20 03:42:26.000000', '启'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553053362233, 1551430485689, 82001, 1553096819293, '2019-03-20 03:42:42.000000', '集合vyih'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553065269448, 0, 82001, 1553096819293, '2019-03-20 07:01:09.000000', '3333'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553094325098, 0, 82001, 1550825876665, '2019-03-20 15:05:25.000000', '哦哦哦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553095251058, 0, 82001, 1552879777083, '2019-03-20 15:20:51.000000', '1111'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553233020780, 0, 82001, 15, '2019-03-22 05:37:00.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553433076832, 0, 82001, 1552879777083, '2019-03-24 13:11:16.000000', 'ggg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553676470274, 0, 82001, 1551184480247, '2019-03-27 08:47:50.000000', 'hhhhhh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553739854431, 0, 82001, 1539868023868, '2019-03-28 02:24:14.000000', '。。。。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553837780458, 0, 82001, 1548145750536, '2019-03-29 05:36:20.000000', '王八蛋'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1553837842352, 0, 82001, 1541557989440, '2019-03-29 05:37:22.000000', '小赤佬'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554051650026, 0, 82001, 15, '2019-03-31 17:00:50.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554263554592, 0, 82001, 15, '2019-04-03 03:52:34.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554263558562, 0, 82001, 15, '2019-04-03 03:52:38.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554286215772, 0, 82001, 301, '2019-04-03 10:10:15.000000', 'hjkj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554309729462, 0, 82001, 1554263554668, '2019-04-03 16:42:09.000000', '没有我'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554309735842, 1554309729462, 82001, 1554263554668, '2019-04-03 16:42:15.000000', '哦下午'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554372265517, 0, 82001, 1554263554668, '2019-04-04 10:04:25.000000', '测试'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554373265740, 0, 82001, 543, '2019-04-04 10:21:05.000000', '那你'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554373282941, 0, 82001, 543, '2019-04-04 10:21:22.000000', '。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554374987602, 1554372265517, 82001, 1554263554668, '2019-04-04 10:49:47.000000', '@jj'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554548838567, 0, 82001, 1554263558104, '2019-04-06 11:07:18.000000', 'Yyhgy'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554564631059, 0, 82001, 15, '2019-04-06 15:30:31.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554564640129, 0, 82001, 15, '2019-04-06 15:30:40.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554629321427, 0, 82001, 15, '2019-04-07 09:28:41.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554704296003, 0, 82001, 1554564640071, '2019-04-08 06:18:16.000000', '吃'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554707281257, 0, 82001, 1554688976001, '2019-04-08 07:08:01.000000', '要'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554777053552, 0, 82001, 15, '2019-04-09 02:30:53.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554864037995, 0, 82001, 15, '2019-04-10 02:40:37.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554965019923, 0, 82001, 15, '2019-04-11 06:43:39.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1554976816197, 0, 82001, 1554688976001, '2019-04-11 10:00:16.000000', '到现在'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555136064488, 0, 82001, 1555080161904, '2019-04-13 06:14:24.000000', '。。。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555136143476, 0, 82001, 1554564639808, '2019-04-13 06:15:43.000000', '。。。'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555140354828, 0, 82001, 15, '2019-04-13 07:25:54.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555414582495, 0, 82001, 15, '2019-04-16 11:36:22.000000', '新增一条评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555414840945, 0, 82001, 15, '2019-04-16 11:40:40.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555414849052, 0, 82001, 15, '2019-04-16 11:40:49.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555414888850, 0, 82001, 15, '2019-04-16 11:41:28.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555557851140, 1512035117021, 82001, 32, '2019-04-18 03:24:11.000000', '1545456'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555557860778, 1512035117021, 82001, 32, '2019-04-18 03:24:20.000000', '11564546'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555557868075, 0, 82001, 32, '2019-04-18 03:24:28.000000', '121212312456'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555557877452, 1555557868075, 82001, 32, '2019-04-18 03:24:37.000000', '123121545645'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1555572659357, 0, 82001, 15, '2019-04-18 07:30:59.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556073175252, 0, 82001, 1555842172364, '2019-04-24 02:32:55.000000', '卡罗拉'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556088728850, 0, 82001, 1555660645705, '2019-04-24 06:52:08.000000', '啦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556088739682, 0, 82001, 1555842172364, '2019-04-24 06:52:19.000000', '叫姐姐'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556088750041, 1556088739682, 82001, 1555842172364, '2019-04-24 06:52:30.000000', '哼╯^╰'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556109617193, 0, 82001, 15, '2019-04-24 12:40:17.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556179911249, 0, 82001, 1555146101956, '2019-04-25 08:11:51.000000', '莫有样在真'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556179917534, 1556179911249, 82001, 1555146101956, '2019-04-25 08:11:57.000000', '你以为走咯'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556179921272, 1556179911249, 82001, 1555146101956, '2019-04-25 08:12:01.000000', '匿名'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556187596511, 0, 82001, 15, '2019-04-25 10:19:56.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556192437849, 0, 82001, 1555826433407, '2019-04-25 11:40:37.000000', '哈哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556264166448, 0, 82001, 15, '2019-04-26 07:36:06.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556434477631, 0, 82001, 1556416532140, '2019-04-28 06:54:37.000000', '叶圣陶'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556438316917, 0, 82001, 15, '2019-04-28 07:58:36.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556447474223, 0, 82001, 15, '2019-04-28 10:31:14.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556447629955, 0, 82001, 1556447474076, '2019-04-28 10:33:49.000000', '啦啦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556447642188, 0, 82001, 1556447473966, '2019-04-28 10:34:02.000000', '啦啦'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556606726466, 0, 82001, 15, '2019-04-30 06:45:26.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556608158926, 0, 82001, 1556607959204, '2019-04-30 07:09:18.000000', '佛祖'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556852777588, 0, 82001, 15, '2019-05-03 03:06:17.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556953335513, 0, 82001, 1556387217941, '2019-05-04 07:02:15.000000', '嘻嘻嘻'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556953340357, 1556953335513, 82001, 1556387217941, '2019-05-04 07:02:20.000000', '额额额'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556987652879, 0, 82001, 15, '2019-05-04 16:34:12.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556987738892, 0, 82001, 15, '2019-05-04 16:35:38.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1556988311205, 0, 82001, 15, '2019-05-04 16:45:11.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557024488300, 1556953340357, 82001, 1556387217941, '2019-05-05 02:48:08.000000', '222'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557133819296, 0, 82001, 1555146150581, '2019-05-06 09:10:19.000000', '988'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557239093145, 0, 82001, 15, '2019-05-07 14:24:53.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557254398378, 0, 82002, 15, '2019-05-07 18:39:58.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557254443156, 0, 82001, 15, '2019-05-07 18:40:43.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557254466593, 0, 82001, 15, '2019-05-07 18:41:06.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557254474819, 0, 82001, 15, '2019-05-07 18:41:14.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557367770352, 0, 82001, 1508072633830, '2019-05-09 02:09:30.000000', '哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557396836045, 0, 82001, 15, '2019-05-09 10:13:56.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557415832512, 0, 82001, 15, '2019-05-09 15:30:32.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557707040335, 0, 82001, 1550825876665, '2019-05-13 00:24:00.000000', '帅吗?'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557754720666, 0, 82001, 1557754680146, '2019-05-13 13:38:40.000000', '卧槽(*`へ´*)'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557754765785, 0, 70793, 1557754680146, '2019-05-13 13:39:25.000000', '链接发下'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557754909538, 1557754765785, 82012, 1557754680146, '2019-05-13 13:41:49.000000', 'https://baijiahao.baidu.com/s?id=1633129683262867786&wfr=spider&for=pc&isFailFlag=1'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1557838424004, 0, 1508072105320, 1557754680146, '2019-05-14 12:53:44.000000', '666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558059734104, 0, 82001, 15, '2019-05-17 02:22:14.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558059843115, 0, 82001, 15, '2019-05-17 02:24:03.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558150056102, 0, 82001, 1557754680146, '2019-05-18 03:27:36.000000', '哈哈哈'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558251372701, 0, 82001, 15, '2019-05-19 07:36:12.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558275517613, 0, 82001, 15, '2019-05-19 14:18:37.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558275862700, 0, 82001, 15, '2019-05-19 14:24:22.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440302601, 0, 82001, 1557415707105, '2019-05-21 12:05:02.000000', '咔咔咔'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440307225, 0, 82001, 1557415707105, '2019-05-21 12:05:07.000000', 'i我看'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440318878, 0, 82001, 1555146144094, '2019-05-21 12:05:18.000000', '哦啊就是计算机'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440335644, 0, 82001, 1557754680146, '2019-05-21 12:05:35.000000', '就是就是觉得奖学金'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440349435, 0, 82001, 1557754680146, '2019-05-21 12:05:49.000000', '解决'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558440357141, 1558440335644, 82001, 1557754680146, '2019-05-21 12:05:57.000000', '惊声尖叫额'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1558444517410, 0, 82001, 15, '2019-05-21 13:15:17.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559479971167, 0, 82001, 15, '2019-06-02 12:52:51.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559512310810, 0, 82001, 1559479693309, '2019-06-02 21:51:50.000000', 'gggh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559512315277, 1559512310810, 82001, 1559479693309, '2019-06-02 21:51:55.000000', 'ghhh'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559531009662, 0, 82001, 15, '2019-06-03 03:03:29.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559532427131, 0, 82001, 15, '2019-06-03 03:27:07.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559533505750, 0, 82001, 15, '2019-06-03 03:45:05.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559533513284, 0, 82001, 15, '2019-06-03 03:45:13.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559553148600, 0, 82001, 1559479693309, '2019-06-03 09:12:28.000000', 'cbnxn'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559570720109, 0, 82001, 1555146144094, '2019-06-03 14:05:20.000000', '你妹'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559616306248, 0, 82001, 15, '2019-06-04 02:45:06.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559617707946, 0, 82001, 15, '2019-06-04 03:08:27.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559628052667, 0, 82001, 1559479693309, '2019-06-04 06:00:52.000000', '发放'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559729189116, 0, 82001, 1559479693309, '2019-06-05 10:06:29.000000', '你真的牛逼'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1559731136559, 0, 82001, 15, '2019-06-05 10:38:56.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560090719699, 0, 82001, 15, '2019-06-09 14:31:59.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560168492719, 0, 82001, 15, '2019-06-10 12:08:12.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560239593640, 0, 82001, 1559479693309, '2019-06-11 07:53:13.000000', '11'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560262370938, 0, 82001, 15, '2019-06-11 14:12:50.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560482772803, 0, 82001, 15, '2019-06-14 03:26:12.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560482961067, 0, 82001, 1555842172364, '2019-06-14 03:29:21.000000', '3'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560619772678, 0, 82001, 15, '2019-06-15 17:29:32.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1560736990682, 0, 82001, 15, '2019-06-17 02:03:10.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561018625380, 1559512310810, 82001, 1559479693309, '2019-06-20 08:17:05.000000', 'ggggg'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561364926819, 0, 82001, 15, '2019-06-24 08:28:46.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561533263049, 1559729189116, 82001, 1559479693309, '2019-06-26 07:14:23.000000', '6666'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561630666744, 0, 82001, 15, '2019-06-27 10:17:46.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561949926841, 0, 82001, 15, '2019-07-01 02:58:46.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1561975421299, 1555136064488, 82001, 1555080161904, '2019-07-01 10:03:41.000000', '是不是'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562134664290, 0, 82001, 15, '2019-07-03 06:17:44.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562226345097, 0, 82001, 15, '2019-07-04 07:45:45.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562248764054, 1559729189116, 82001, 1559479693309, '2019-07-04 13:59:24.000000', 'fdd'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562307396087, 0, 82001, 1559479693309, '2019-07-05 06:16:36.000000', '我顶我顶'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562392250526, 0, 82001, 1559479693309, '2019-07-06 05:50:50.000000', '发个方 +刚刚方法'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562392269174, 1559512310810, 82001, 1559479693309, '2019-07-06 05:51:09.000000', '古古怪怪'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562392274283, 1559553148600, 82001, 1559479693309, '2019-07-06 05:51:14.000000', '工业园'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562392278403, 1562307396087, 82001, 1559479693309, '2019-07-06 05:51:18.000000', '凤阳花鼓'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562495721307, 0, 82001, 15, '2019-07-07 10:35:21.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562662400473, 0, 82001, 15, '2019-07-09 08:53:20.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562684469790, 0, 82001, 1559125514307, '2019-07-09 15:01:09.000000', '发广告'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562684482831, 1562684469790, 82001, 1559125514307, '2019-07-09 15:01:22.000000', '厉害厉害'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562684488544, 0, 82001, 1559125514307, '2019-07-09 15:01:28.000000', '发过火'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562736873122, 1534926143012, 82001, 1508053762227, '2019-07-10 05:34:33.000000', '早睡早起'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562814013816, 0, 82001, 1562556720665, '2019-07-11 03:00:13.000000', 'xxxx'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1562814021942, 1562814013816, 82001, 1562556720665, '2019-07-11 03:00:21.000000', 'xxxx'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1563506794618, 0, 82001, 15, '2019-07-19 03:26:34.000000', '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1563641514400, 0, 82001, 1563605336326, '2019-07-20 16:51:54.000000', '年轻人不要想不开'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570199485130, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570357593954, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570357613617, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570524542455, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570611593196, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1570611884292, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127141506, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127146874, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127152654, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127171390, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127176972, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127182660, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127220673, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127225286, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127230152, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127564313, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127568513, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127573536, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127695250, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127699686, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127704277, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127720172, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127724383, 0, 82002, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601127728638, 0, 82003, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1601132118675, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1612038997561, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1612039188938, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666289476337, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666289803266, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666291059727, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666291199887, 0, 82001, 15, null, '测试新增评论'); +INSERT INTO "Comment" (id, "toId", "userId", "momentId", date, content) VALUES (1666291252192, 0, 82001, 15, null, '测试新增评论'); diff --git a/QuestDB/single/qdb_public_Moment.sql b/QuestDB/single/qdb_public_Moment.sql new file mode 100644 index 0000000..0770d34 --- /dev/null +++ b/QuestDB/single/qdb_public_Moment.sql @@ -0,0 +1,224 @@ +create table "Moment" +( + date timestamp, + id bigint not null, + "userId" bigint not null, + content varchar, + "praiseUserIdList" text not null, + "pictureList" text not null +); + + +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (12, 70793, '2017-02-08 08:06:11.000000', 'APIJSON,let interfaces and documents go to hell !', '[70793, 93793, 82044, 82040, 82055, 90814, 38710, 82002, 82006, 1508072105320, 82001]', '["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "https://camo.githubusercontent.com/788c0a7e11a4f5aadef3c886f028c79b4808613a/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343932353935372d313732303737333630382e6a7067", "http://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (32, 82002, '2017-02-08 08:06:11.000000', null, '[38710, 82002, 82001]', '["https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067", "https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067", "http://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (58, 90814, '2017-02-01 11:14:31.000000', 'This is a Content...-435', '[38710, 82003, 82005, 93793, 82006, 82044, 82001]', '["http://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (170, 70793, '2017-02-01 11:14:31.000000', 'This is a Content...-73', '[82044, 82002, 82001]', '["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (301, 93793, '2017-02-01 11:14:31.000000', 'This is a Content...-301', '[38710, 93793, 82003, 82005, 82040, 82055, 82002, 82001]', '["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (371, 82002, '2017-02-01 11:14:31.000000', 'This is a Content...-371', '[90814, 93793, 82003, 82005, 82006, 82040, 82002, 82001]', '["http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "http://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (470, 38710, '2017-02-01 11:14:31.000000', 'This is a Content...-470', '[82001]', '["http://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (511, 38710, '2017-02-08 08:06:11.000000', null, '[70793, 93793, 82001]', '["https://camo.githubusercontent.com/f513fa631bd780dc0ec3cf2663777e356dc3664f/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343733323232332d3337333933303233322e6a7067", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "http://static.oschina.net/uploads/img/201604/22172507_aMmH.jpg", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (543, 93793, '2017-02-08 08:06:11.000000', null, '[82001]', '["https://camo.githubusercontent.com/5f5c4e0c4dc539c34e8eae8ac0cbc6dccdfee5d3/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343533333831362d323032373434343231382e6a7067", "https://camo.githubusercontent.com/c98b1c86af136745cc4626c6ece830f76de9ee83/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3636303036372f3230313630342f3636303036372d32303136303431343232343930383036362d313837323233393236352e6a7067", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (551, 70793, '2017-02-08 08:06:11.000000', 'test', '[82001]', '["http://static.oschina.net/uploads/img/201604/22172507_Pz9Y.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (595, 38710, '2017-03-05 05:29:19.000000', null, '[70793, 82002, 82001]', '["http://common.cnblogs.com/images/icon_weibo_24.png", "http://static.oschina.net/uploads/user/19/39085_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (704, 38710, '2017-03-12 09:39:44.000000', 'APIJSON is a JSON Transmission Structure Protocol…', '[82003, 82002, 82001]', '["http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000", "http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1491200468898, 38710, '2017-04-03 06:21:08.000000', 'APIJSON, let interfaces go to hell!', '[82001]', '["http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000", "http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1493835799335, 38710, '2017-05-03 18:23:19.000000', 'APIJSON is a JSON Transmission Structure Protocol…', '[82002, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1508053762227, 82003, '2017-10-15 07:49:22.000000', '我也试试', '[1515565976140, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1508072491570, 82002, '2017-10-15 13:01:31.000000', '有点冷~', '[82001, 82002]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548145750829, 82003, '2019-01-22 08:29:10.000000', '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1549017200628, 82001, '2019-02-01 10:33:20.000000', '说点什么吧~快捷键', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1508072633830, 93793, '2017-10-15 13:03:53.000000', '天凉了 +有男朋友的抱男盆友 +有女朋友的抱女朋友 +而我就比较牛逼了 +我不冷。', '[82005, 82002, 70793, 38710, 82045, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1508073178489, 82045, '2017-10-15 13:12:58.000000', '发动态', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1512314438990, 38710, '2017-12-03 15:20:38.000000', 'APIJSON iOS-Swift版发布,自动生成请求代码,欢迎使用^_^ + https://github.com/TommyLemon/APIJSON', '[82001, 82002, 70793, 1512531601485]', '["https://images2018.cnblogs.com/blog/660067/201712/660067-20171203231829476-1202860128.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1513094436910, 38710, '2017-12-12 16:00:36.000000', 'APIJSON-Python已发布,欢迎体验^_^ +https://github.com/TommyLemon/APIJSON', '[82005, 82001]', '["https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_get.jpg", "https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_code.jpg", "https://raw.githubusercontent.com/TommyLemon/APIJSON/master/picture/APIJSON_Auto_doc.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1514017444961, 82002, '2017-12-23 08:24:04.000000', '123479589679', '[82002, 1520242280259, 82001, 70793, 1524042900591, 1528264711016]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1514858533480, 82056, '2018-01-02 02:02:13.000000', 'I am the Iron Man', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1516086423441, 93793, '2018-01-16 07:07:03.000000', '抢到票了,开心ପ( ˘ᵕ˘ ) ੭ ☆', '[93793, 38710, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1520242333325, 1520242280259, '2018-03-05 09:32:13.000000', '法拉利', '[1520242280259, 70793, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1523935589834, 1523626157302, '2018-04-17 03:26:29.000000', 'by第一条动态', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1523936332614, 1523626157302, '2018-04-17 03:38:52.000000', 'by第二条', '[82001, 1523935772553]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1524178455305, 1524042900591, '2018-04-19 22:54:15.000000', '早上好啊', '[1524042900591, 38710, 82003, 82001, 1523626157302]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1524298780222, 1524298730523, '2018-04-21 08:19:40.000000', 'e说点什么吧~', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1524826652626, 1524298730523, '2018-04-27 10:57:32.000000', '说点什么吧~哈哈哈', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1527498273102, 1527498229991, '2018-05-28 09:04:33.000000', '说点什么吧~yui', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1527821296110, 1527495857924, '2018-06-01 02:48:16.000000', '这是我的商品1号', '[1527821445610, 82003, 82001]', '["http://pic31.nipic.com/20130710/13151003_093759013311_2.jpg", "https://cbu01.alicdn.com/img/ibank/2013/514/580/740085415_2101098104.310x310.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1527830331780, 1527495857924, '2018-06-01 05:18:51.000000', '各种购物袋', '[38710, 82002, 1527495857924, 82003]', '["https://cbu01.alicdn.com/img/ibank/2018/292/335/8058533292_57202994.310x310.jpg", "https://cbu01.alicdn.com/img/ibank/2018/089/747/8586747980_1843977904.310x310.jpg", "https://cbu01.alicdn.com/img/ibank/2016/025/123/3012321520_471514049.310x310.jpg", "https://cbu01.alicdn.com/img/ibank/2017/729/995/4800599927_69233977.310x310.jpg", "https://cbu01.alicdn.com/img/ibank/2016/377/263/3755362773_609022431.310x310.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1527830474378, 1527495857924, '2018-06-01 05:21:14.000000', '电视机', '[1527495857924]', '["https://cbu01.alicdn.com/img/ibank/2017/231/077/4524770132_781046171.310x310.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528251335464, 1528250827953, '2018-06-06 02:15:35.000000', 'meiyou', '[1528250827953]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528260617722, 1528255497767, '2018-06-06 04:50:17.000000', '。。。。', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528269822710, 1528264711016, '2018-06-06 07:23:42.000000', 'hhhhhhh', '[1528250827953, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528269988360, 1528250827953, '2018-06-06 07:26:28.000000', '为什么发动态默认会有这两张图片啊?不可以选择自己的图片', '[1528250827953]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528274037224, 1528250827953, '2018-06-06 08:33:57.000000', '说点什么吧~hgdsryh', '[]', '["https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=0&spn=0&di=163958046450&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=1403824732%2C1921310327&os=1571651475%2C3950546936&simid=3426978648%2C550887139&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fooo_z%26e3Botg9aaa_z%26e3Bv54AzdH3Fowssrwrj6_kt2_88an88_8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist=", "https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=%E4%BA%91%E5%8D%97%E9%A3%8E%E6%99%AF%E5%9B%BE%E7%89%87&step_word=&hs=0&pn=12&spn=0&di=105575240210&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=2&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=-1&cs=832573604%2C2847830718&os=1862795828%2C1682403963&simid=4268934412%2C608274877&adpicid=0&lpn=0&ln=1985&fr=&fmq=1528273681226_R&fm=result&ic=0&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fkkf_z%26e3Bfzi54j_z%26e3Bv54AzdH3Fna-ccbaa-1jpwts-d90cd8ll-a-8_z%26e3Bip4s&gsm=0&rpstart=0&rpnum=0&islist=&querylist="]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528356378455, 1528264711016, '2018-06-07 07:26:18.000000', '去旅游嘛~', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528356421201, 1528264711016, '2018-06-07 07:27:01.000000', '(ง •̀_•́)ง', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528356496939, 1528356470041, '2018-06-07 07:28:16.000000', '(๑•ั็ω•็ั๑)', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528462217322, 1528339692804, '2018-06-08 12:50:17.000000', '有没有小姐姐准备端午出游的? +地点:北戴河', '[]', '["https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg", "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1528676875139, 1528339692804, '2018-06-11 00:27:55.000000', '123456', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1531062713966, 82002, '2018-07-08 15:11:53.000000', '云南好美啊( ◞˟૩˟)◞', '[82001, 82005, 38710, 70793, 93793, 82003, 1531969715979]', '["https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072366455&di=c0d4b15b2c4b70aad49e6ae747f60742&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F3%2F57a2a41f57d09.jpg", "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531072499167&di=5b5621d117edbc5d344a03ba0a6b580b&imgtype=0&src=http%3A%2F%2Fi0.szhomeimg.com%2FUploadFiles%2FBBS%2F2006%2F08%2F05%2F24752199_79122.91.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1531969818357, 1531969715979, '2018-07-19 03:10:18.000000', 'http://q18idc.com', '[1531969715979, 82001, 38710, 1534926301956]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1533908589726, 1533835176109, '2018-08-10 13:43:09.000000', '我的', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1535781636403, 1532188114543, '2018-09-01 06:00:36.000000', '这是一个测试', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1536064087117, 1532188114543, '2018-09-04 12:28:07.000000', '说点什么吧~奥哈达', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1536805585275, 82003, '2018-09-13 02:26:25.000000', 'iPhone Xs发布了,大家怎么看?', '[82002, 82005, 70793, 82003]', '["https://pic1.zhimg.com/80/v2-e129b40810070443add1c28e6185c894_hd.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1539868023868, 82001, '2018-10-18 13:07:03.000000', '说点什么吧~3', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1540459349460, 82001, '2018-10-25 09:22:29.000000', '说点什么吧~而你', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1540459361744, 82001, '2018-10-25 09:22:41.000000', '说点什么吧~哦哦', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1540634282433, 82001, '2018-10-27 09:58:02.000000', 'https://gss2.bdstatic.com/-fo3dSag_xI4khGkpoWK1HF6hhy/baike/c0%3Dbaike92%2C5%2C5%2C92%2C30/sign=c31ae7219525bc313f5009ca3fb6e6d4/42a98226cffc1e17646dbede4690f603728de90b.jpg', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1541557989440, 38710, '2018-11-07 02:33:09.000000', '自动化接口和文档 APIJSON 3.0.0 发布 +https://www.oschina.net/news/101548/apijson-3-0-released', '[82001]', '["https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Auto_get.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1541667920272, 82001, '2018-11-08 09:05:20.000000', '说点什么吧~???', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1541667945772, 82001, '2018-11-08 09:05:45.000000', '说点什么吧~都有', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1541684010904, 82001, '2018-11-08 13:33:30.000000', '说点什么吧~A man can be destroyed but not defeated', '[82002, 38710, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544265482923, 82001, '2018-12-08 10:38:02.000000', 'APIJSON is a JSON Transmission Structure Protocol…', '[82002, 82003, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544276121218, 82001, '2018-12-08 13:35:21.000000', '说点什么吧~ajhs', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544276216289, 1544276209348, '2018-12-08 13:36:56.000000', '说点什么吧~ey', '[1544276209348]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544497353863, 82001, '2018-12-11 03:02:33.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544497355630, 82001, '2018-12-11 03:02:35.000000', 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1544537838100, 82001, '2018-12-11 14:17:18.000000', '说点什么吧~logo灭了也可', '[]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545187924367, 1544503822963, '2018-12-19 02:52:04.000000', '说哼哼唧唧点什么吧~', '[1544503822963, 82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545490282104, 82001, '2018-12-22 14:51:22.000000', '说点什么吧~apijson', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545560428650, 82001, '2018-12-23 10:20:28.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545564986045, 82003, '2018-12-23 11:36:26.000000', '测试新增动态', '[82001]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545819572448, 82002, '2018-12-26 10:19:32.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545819572637, 82002, '2018-12-26 10:19:32.000000', '测试新增动态', '[82001]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1545819752556, 82001, '2018-12-26 10:22:32.000000', '说点什么吧~hello world', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1546934384440, 82001, '2019-01-08 07:59:44.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1547436860950, 82001, '2019-01-14 03:34:20.000000', '测试新增动态', '[82001]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1547479596460, 82001, '2019-01-14 15:26:36.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1547559758939, 82002, '2019-01-15 13:42:38.000000', 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548145750536, 82003, '2019-01-22 08:29:10.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548236953106, 82001, '2019-01-23 09:49:13.000000', '{@}', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548300581350, 82002, '2019-01-24 03:29:41.000000', 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548599361342, 82001, '2019-01-27 14:29:21.000000', '说点什么吧~好)不会徐下节课斜挎包', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548599375288, 82001, '2019-01-27 14:29:35.000000', '说点什么吧~告诉v是v就瞎几把想表达华西坝你撒几哈', '[82001]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548822634246, 82002, '2019-01-30 04:30:34.000000', 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1548822634518, 82002, '2019-01-30 04:30:34.000000', '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096399488, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1557721145964, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093312615, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093312921, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1558891221463, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1558891221788, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096269459, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094319618, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093326180, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560092284174, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560092284508, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094319934, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093326539, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094350737, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560092302827, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560092303319, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094351045, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094254821, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094329746, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093270103, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560093270358, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096270069, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094330083, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094255148, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096575905, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096208964, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094315580, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096419027, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094315886, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096209271, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094334838, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560094335132, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096419392, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096295559, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120326228, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096295867, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096576289, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560690276182, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560096399446, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120257647, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120257326, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1560690275764, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120218108, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120224955, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120326572, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120386111, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120385763, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120405667, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561120405325, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561630616406, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1561630616075, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1568458531964, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1568458532641, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1568461871469, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1568461872933, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570199366451, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570199483864, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601132117007, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570199485028, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127225291, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357591525, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357593773, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127152533, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357610747, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127169887, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357613596, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127573677, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570357703386, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127704144, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570524449714, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127171392, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570524540256, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127175330, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570524542006, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127228481, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570611580381, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127229998, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127176958, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1570611591924, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127693561, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127139970, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127181043, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127141514, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127724249, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127562784, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127146655, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127146920, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127150976, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127564192, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127182673, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127718645, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127219423, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127695115, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127220674, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601132118551, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127223899, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127698292, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127567029, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127568512, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127572138, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127720271, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127699686, 82002, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127727257, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127702649, 82003, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127722886, 82002, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1612038994612, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1601127728639, 82003, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1612038997550, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1612039185041, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1612039188935, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291251828, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666289475963, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666289476308, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666289803269, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291199308, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666289802937, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291059722, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291058890, 82001, null, 'APIJSON,let interfaces and documents go to hell !', '[]', '[]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291199776, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (15, 70793, '2017-02-08 08:06:11.000000', 'APIJSON is a JSON Transmission Structure Protocol…', '[82002, 70793, 38710, 93793]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (235, 38710, '2017-02-08 08:06:11.000000', 'APIJSON,let interfaces and documents go to hell !', '[82001]', '["http://static.oschina.net/uploads/img/201604/22172508_mpwj.jpg", "http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000"]'); +INSERT INTO "Moment" (id, "userId", date, content, "praiseUserIdList", "pictureList") VALUES (1666291252183, 82001, null, '测试新增动态', '[]', '["http://static.oschina.net/uploads/user/48/96331_50.jpg"]'); diff --git a/QuestDB/single/qdb_public_apijson_user.sql b/QuestDB/single/qdb_public_apijson_user.sql new file mode 100644 index 0000000..767b541 --- /dev/null +++ b/QuestDB/single/qdb_public_apijson_user.sql @@ -0,0 +1,154 @@ +create table apijson_user +( + date timestamp, + id bigint not null, + sex smallint not null, + name varchar, + tag varchar, + head varchar, + "contactIdList" text, + "pictureList" text +); + + +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (38710, 0, 'TommyLemon', 'Android&Java', 'http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000', '[82003, 82005, 90814, 82004, 82009, 82002, 82044, 93793, 70793]', '["http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000", "http://common.cnblogs.com/images/icon_weibo_24.png"]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1511407581570, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 82003, 82005, 82006, 82021, 82023, 82036, 82033]', '[]', '2017-11-23 03:26:21.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1532439021068, 0, 'huxiaofan', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[38710, 82002, 82003, 82006, 82021]', null, '2018-07-24 13:30:21.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82045, 0, 'Green', null, 'http://common.cnblogs.com/images/wechat.png', '[82001, 82002, 82003, 1485246481130]', '[]', '2017-03-04 10:22:39.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82005, 1, 'Jan', 'AG', 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001, 38710, 1532439021068]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82046, 0, 'Team', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[38710, 82002, 1485246481130]', '[]', '2017-03-04 15:11:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1534926301956, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82003, 82002, 82025]', null, '2018-08-22 08:25:01.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1525677515673, 0, 'APIJSONUser', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[82003, 82002, 38710]', null, '2018-05-07 07:18:35.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82002, 1, 'Happy~', 'iOS', 'http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000', '[82005, 82001, 38710]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82012, 0, 'Steve', 'FEWE', 'http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000', '[82004, 82002, 93793]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1531969715979, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 82003, 82005]', null, '2018-07-19 03:08:35.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82043, 0, 'Holiday', null, 'http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000', '[70793, 82006]', '[]', '2017-03-04 10:05:04.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528264711016, 0, '梦', null, 'http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000', '[82021, 1528250827953]', null, '2018-06-06 05:58:31.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1544276209348, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 38710]', null, '2018-12-08 13:36:49.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82003, 1, 'Wechat', null, 'http://common.cnblogs.com/images/wechat.png', '[82001, 93793]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82041, 0, 'Holo', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[38710, 82001]', '[]', '2017-03-04 09:59:34.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82058, 0, 'StupidBird', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001, 82002]', '[]', '2017-03-12 11:23:04.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82055, 1, 'Solid', null, 'http://static.oschina.net/uploads/user/19/39085_50.jpg', '[38710, 82002]', '[]', '2017-03-11 15:04:00.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (70793, 0, 'Strong', 'djdj', 'http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000', '[38710, 82002]', '["http://static.oschina.net/uploads/img/201604/22172508_eGDi.jpg", "http://static.oschina.net/uploads/img/201604/22172507_rrZ5.jpg", "https://camo.githubusercontent.com/788c0a7e11a", "https://camo.githubusercontent.com/f513f67"]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1544503822963, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[93793, 82003]', null, '2018-12-11 04:50:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1514625918255, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 93793]', null, '2017-12-30 09:25:18.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1527495857924, 0, 'account', null, 'https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2510057322,2452415311&fm=27&gp=0.jpg', '[1527821445610, 82012]', null, '2018-05-28 08:24:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528339692804, 1, '568599', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1528250827953, 1528264711016]', null, '2018-06-07 02:48:12.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1524042900591, 1, '哈哈哈', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002, 82003]', null, '2018-04-18 09:15:00.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1514858422969, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[93793, 82056]', null, '2018-01-02 02:00:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490973670928, 1, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[70793, 93793]', '[]', '2017-03-31 15:21:10.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490427139175, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[38710, 70793]', '[]', '2017-03-25 07:32:19.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1515565976140, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82003, 82021]', null, '2018-01-10 06:32:56.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1523626157302, 1, 'Charlie_brown', '', 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1523935772553, 93793]', null, '2018-04-13 13:29:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528254173621, 1, 'A', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001, 38710]', null, '2018-06-06 03:02:53.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1523935772553, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1523626157302]', null, '2018-04-17 03:29:32.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1512531601485, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001]', '[]', '2017-12-06 03:40:01.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1553095415917, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82001]', null, '2019-03-20 15:23:35.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528255497767, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002]', null, '2018-06-06 03:24:57.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1520242280259, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82002]', null, '2018-03-05 09:31:20.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528250827953, 1, 'limengt', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1528264711016]', null, '2018-06-06 02:07:07.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1527821445610, 0, 'accountt', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[1527495857924]', null, '2018-06-01 02:50:45.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82044, 1, 'Love', null, 'http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000', '[82006]', '[]', '2017-03-04 10:20:27.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1527498229991, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1499057230629]', null, '2018-05-28 09:03:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528356470041, 0, 'aaaa', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1528339692804]', null, '2018-06-07 07:27:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82040, 1, 'Dream', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[70793]', '[]', '2017-03-02 16:44:26.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490420651686, 1, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[70793]', '[]', '2017-03-25 05:44:11.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1559129626356, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1507220582167]', null, '2019-05-29 11:33:46.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1533835176109, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[1532188114543]', null, '2018-08-09 17:19:36.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490109742863, 1, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-03-21 15:22:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1500825221910, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-07-23 15:53:41.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493890214167, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-04 09:30:14.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1507220582167, 0, 'APIJSONUser', '通过APIJSONAuto的图像化界面注册,按Enter而不是Register', 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-05 16:23:02.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1497792972314, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-06-18 13:36:12.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1511761906715, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-11-27 05:51:46.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1524298730523, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', null, '2018-04-21 08:18:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493747512860, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 17:51:52.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493748615711, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 18:10:15.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493480142628, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-04-29 15:35:42.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1499057230629, 0, '一二三', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-07-03 04:47:10.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1512387063078, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-12-04 11:31:03.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1511965911349, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-11-29 14:31:51.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1508072071492, 0, '赵钱孙李', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-15 12:54:31.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493749090643, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 18:18:10.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493748594003, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 18:09:54.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82004, 0, 'Tommy', 'fasef', 'http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82006, 1, 'Meria', null, 'http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82009, 0, 'God', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (93793, 0, 'Mike', 'GES', 'http://static.oschina.net/uploads/user/48/96331_50.jpg', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (93794, 0, 'Lemon', null, 'http://static.oschina.net/uploads/user/48/97721_50.jpg?t=1451544779000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82020, 0, 'ORANGE', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82021, 1, 'Tommy', null, 'http://static.oschina.net/uploads/user/19/39085_50.jpg', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82022, 0, 'Internet', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82023, 0, 'No1', null, 'http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1508072105320, 1, '周吴郑王', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-15 12:55:05.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82024, 0, 'Lemon', null, 'http://static.oschina.net/uploads/user/427/855532_50.jpg?t=1435030876000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82025, 1, 'Tommy', null, 'http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82026, 0, 'iOS', null, 'http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82027, 0, 'Yong', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82028, 1, 'gaeg', null, 'http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82029, 0, 'GASG', null, 'http://common.cnblogs.com/images/wechat.png', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82030, 1, 'Fun', null, 'http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82031, 0, 'Lemon', null, 'http://static.oschina.net/uploads/user/48/96331_50.jpg', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82032, 0, 'Stack', 'fasdg', 'http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82033, 1, 'GAS', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82034, 1, 'Jump', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82035, 1, 'Tab', null, 'http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82036, 0, 'SAG', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1502639062900, 0, 'TESLA', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-08-13 15:44:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82037, 0, 'Test', null, 'http://static.oschina.net/uploads/user/1200/2400261_50.png?t=1439638750000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82038, 0, 'Battle', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1502639424119, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-08-13 15:50:24.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82039, 1, 'Everyday', null, 'http://common.cnblogs.com/images/icon_weibo_24.png', '[]', '[]', '2017-02-19 13:57:56.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1508072202871, 0, '七八九十', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-15 12:56:42.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82042, 1, 'Why', null, 'http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000', '[]', '[]', '2017-03-04 10:04:33.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82047, 0, 'Tesla', null, 'http://common.cnblogs.com/images/wechat.png', '[]', '[]', '2017-03-04 16:02:05.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82048, 0, 'Moto', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[]', '[]', '2017-03-04 16:04:02.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82049, 0, 'ITMan', null, 'http://static.oschina.net/uploads/user/629/1258821_50.jpg?t=1378063141000', '[]', '[]', '2017-03-05 09:51:51.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82050, 0, 'Parl', null, 'http://static.oschina.net/uploads/user/998/1997902_50.jpg?t=1407806577000', '[]', '[]', '2017-03-05 09:52:52.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82051, 0, 'Girl', null, 'http://static.oschina.net/uploads/user/1332/2664107_50.jpg?t=1457405500000', '[]', '[]', '2017-03-05 09:53:37.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82052, 0, 'Unbrella', null, 'http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000', '[]', '[]', '2017-03-05 09:57:54.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82053, 0, 'Alice', null, 'http://common.cnblogs.com/images/wechat.png', '[]', '[]', '2017-03-05 15:25:42.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82054, 0, 'Harvey', null, 'http://static.oschina.net/uploads/user/19/39085_50.jpg', '[]', '[]', '2017-03-06 12:29:03.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82056, 1, 'IronMan', null, 'http://static.oschina.net/uploads/user/48/96289_50.jpg?t=1452751699000', '[]', '[]', '2017-03-11 15:32:25.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490584952968, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-03-27 03:22:32.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82057, 0, 'NullPointerExeption', null, 'http://static.oschina.net/uploads/user/1385/2770216_50.jpg?t=1464405516000', '[]', '[]', '2017-03-12 06:01:23.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82059, 1, 'He&She', null, 'http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000', '[]', '[]', '2017-03-19 14:49:15.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82060, 1, 'Anyway~', null, 'http://static.oschina.net/uploads/user/1/3064_50.jpg?t=1449566001000', '[]', '[]', '2017-03-21 14:10:18.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493836043151, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-03 18:27:23.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1508072160401, 0, '四五六', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-10-15 12:56:00.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (90814, 0, '007', null, 'http://static.oschina.net/uploads/user/51/102723_50.jpg?t=1449212504000', '[]', '[]', '2017-02-01 11:21:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1510495628760, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-11-12 14:07:08.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490109845208, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-03-21 15:24:05.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1490427577823, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-03-25 07:39:37.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493747777770, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-02 17:56:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493890303473, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-04 09:31:43.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493890303474, 0, 'Test Post', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-06-12 15:50:44.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1493883110132, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-05-04 07:31:50.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1492936169722, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[]', '[]', '2017-04-23 08:29:29.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1553527700480, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-03-25 15:28:20.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1566065271307, 0, 'new APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-08-17 18:08:04.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1566065621308, 0, 'new APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-08-17 18:13:55.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1563605318975, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-07-20 06:48:38.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1514623064133, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2017-12-30 08:37:44.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1561539257158, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-06-26 08:54:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1514626163032, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2017-12-30 09:29:23.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1545895694424, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-12-27 07:28:14.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1566064943195, 0, 'new APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-08-17 18:02:36.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1538504500574, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-10-02 18:21:40.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1538987952996, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-10-08 08:39:13.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1532188114543, 0, '宁旭', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-07-21 15:48:34.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1528344980598, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-06-07 04:16:20.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1560409157504, 0, '上邪', null, '最好的时光', null, null, '2019-06-13 06:59:17.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1524878698882, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-04-28 01:24:58.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1566065319823, 0, 'new APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-08-17 18:08:53.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1545707526805, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-12-25 03:12:06.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1519778917280, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-02-28 00:48:37.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1548068043688, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-01-21 10:54:03.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1541583762603, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-11-07 09:42:42.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1521371722416, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-03-18 11:15:22.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1547177436600, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2019-01-11 03:30:36.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1521274648008, 0, 'Kiro', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-03-17 08:17:28.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1538504264944, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-10-02 18:17:44.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1521374327542, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-03-18 11:58:47.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (1518218350585, 0, 'APIJSONUser', null, 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', null, null, '2018-02-09 23:19:10.000000'); +INSERT INTO apijson_user (id, sex, name, tag, head, "contactIdList", "pictureList", date) VALUES (82001, 1, '测试账号', 'Dev', 'https://raw.githubusercontent.com/TommyLemon/StaticResources/master/APIJSON_Logo.png', '[82012, 82003, 93794, 82006, 38710, 82004, 93793]', '["http://common.cnblogs.com/images/icon_weibo_24.png"]', '2017-02-01 11:21:50.000000'); From fdcc49c2c9e8683ea80d4bb6b2c242e25265d032 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 7 Apr 2025 00:18:52 +0800 Subject: [PATCH 43/80] =?UTF-8?q?Java=EF=BC=9ASolon=20Demo=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20APIJSON=208=20=E5=92=8C=20MySQL-JDBC=209.2=EF=BC=8C?= =?UTF-8?q?=E7=A7=BB=E9=99=A4=20fastjson?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml | 8 +-- .../java/apijson/demo/DemoApplication.java | 56 ++++++++++++++++ .../java/apijson/demo/DemoFunctionParser.java | 5 +- .../java/apijson/demo/DemoObjectParser.java | 9 ++- .../main/java/apijson/demo/DemoParser.java | 22 +++--- .../main/java/apijson/demo/DemoSQLConfig.java | 67 +++++++++---------- .../java/apijson/demo/DemoSQLExecutor.java | 4 +- .../main/java/apijson/demo/DemoVerifier.java | 7 +- 8 files changed, 121 insertions(+), 57 deletions(-) diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml b/APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml index 2172ea6..3f38bf7 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/pom.xml @@ -28,14 +28,14 @@ com.github.Tencent APIJSON - 7.1.0 + 8.0.0.0.0 - mysql - mysql-connector-java - 8.0.29 + com.mysql + mysql-connector-j + 9.2.0 diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoApplication.java index b68d67b..0fb15eb 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoApplication.java @@ -15,10 +15,16 @@ package apijson.demo; import apijson.Log; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.parser.Feature; import org.noear.solon.Solon; import org.noear.solon.annotation.Configuration; import org.noear.solon.web.cors.CrossFilter; +import apijson.JSONParser; +import java.util.List; /** * Demo Solon Application 主应用程序启动类 @@ -38,6 +44,56 @@ public static void main(String[] args) throws Exception { }); Log.DEBUG = true; // TODO 上线前改为 false + + // 使用 fastjson + apijson.JSON.JSON_OBJECT_CLASS = JSONObject.class; + apijson.JSON.JSON_ARRAY_CLASS = JSONArray.class; + + final Feature[] DEFAULT_FASTJSON_FEATURES = {Feature.OrderedField, Feature.UseBigDecimal}; + apijson.JSON.DEFAULT_JSON_PARSER = new JSONParser() { + + @Override + public JSONObject createJSONObject() { + return new JSONObject(true); + } + + @Override + public JSONArray createJSONArray() { + return new JSONArray(); + } + + @Override + public String toJSONString(Object obj) { + return obj == null || obj instanceof String ? (String) obj : JSON.toJSONString(obj); + } + + @Override + public Object parseJSON(Object json) { + return JSON.parse(toJSONString(json), DEFAULT_FASTJSON_FEATURES); + } + + @Override + public JSONObject parseObject(Object json) { + return JSON.parseObject(toJSONString(json), DEFAULT_FASTJSON_FEATURES); + } + + @Override + public T parseObject(Object json, Class clazz) { + return JSON.parseObject(toJSONString(json), clazz, DEFAULT_FASTJSON_FEATURES); + } + + @Override + public JSONArray parseArray(Object json) { + return JSON.parseArray(toJSONString(json)); + } + + @Override + public List parseArray(Object json, Class clazz) { + return JSON.parseArray(toJSONString(json), clazz); + } + + }; + System.out.println("官方网站: http://apijson.cn"); System.out.println("设计规范: https://github.com/Tencent/APIJSON/blob/master/Document.md#3"); System.out.println("测试链接: http://apijson.cn/api?type=JSON&url=http://localhost:8080/get"); diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoFunctionParser.java index ef80008..26beace 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoFunctionParser.java @@ -15,6 +15,7 @@ package apijson.demo; import apijson.orm.AbstractFunctionParser; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import apijson.RequestMethod; @@ -24,16 +25,16 @@ * 具体见 https://github.com/Tencent/APIJSON/issues/101 * @author Lemon */ -public class DemoFunctionParser extends AbstractFunctionParser { +public class DemoFunctionParser extends AbstractFunctionParser { public static final String TAG = "DemoFunctionParser"; public DemoFunctionParser() { this(null, null, 0, null); } + public DemoFunctionParser(RequestMethod method, String tag, int version, JSONObject request) { super(method, tag, version, request); } - } \ No newline at end of file diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoObjectParser.java index 1f13216..e494a9d 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoObjectParser.java @@ -16,6 +16,7 @@ import apijson.orm.AbstractObjectParser; import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.JSONArray; import java.util.List; @@ -30,16 +31,18 @@ /**对象解析器,用来简化 Parser * @author Lemon */ -public class DemoObjectParser extends AbstractObjectParser { +public class DemoObjectParser extends AbstractObjectParser { - public DemoObjectParser(SessionState session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig + public DemoObjectParser(SessionState session, @NotNull JSONObject request, String parentPath + , SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { super(request, parentPath, arrayConfig, isSubquery, isTable, isArrayMainTable); } @Override - public SQLConfig newSQLConfig(RequestMethod method, String table, String alias, JSONObject request, List joinList, boolean isProcedure) throws Exception { + public SQLConfig newSQLConfig(RequestMethod method, String table, String alias + , JSONObject request, List> joinList, boolean isProcedure) throws Exception { return DemoSQLConfig.newSQLConfig(method, table, alias, request, joinList, isProcedure); } diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoParser.java index a49c2b9..11a1965 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoParser.java @@ -15,6 +15,7 @@ package apijson.demo; import apijson.orm.*; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import java.util.HashMap; @@ -28,7 +29,7 @@ * 具体见 https://github.com/Tencent/APIJSON/issues/38 * @author Lemon */ -public class DemoParser extends AbstractParser { +public class DemoParser extends AbstractParser { public static final Map KEY_MAP; static { @@ -69,7 +70,7 @@ public DemoParser(RequestMethod method, boolean needVerify) { private SessionState session; - public Parser setSession(SessionState session) { + public Parser setSession(SessionState session) { this.session = session; return this; } @@ -79,39 +80,40 @@ public SessionState getSession() { @Override - public Parser createParser() { + public Parser createParser() { return new DemoParser(); } @Override - public ObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig + public ObjectParser createObjectParser(JSONObject request, String parentPath + , SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { return new DemoObjectParser(getSession(), request, parentPath, arrayConfig , isSubquery, isTable, isArrayMainTable).setMethod(getMethod()).setParser(this); } @Override - public FunctionParser createFunctionParser() { + public FunctionParser createFunctionParser() { return new DemoFunctionParser(); } @Override - public SQLConfig createSQLConfig() { + public SQLConfig createSQLConfig() { return new DemoSQLConfig(); } @Override - public SQLExecutor createSQLExecutor() { + public SQLExecutor createSQLExecutor() { return new DemoSQLExecutor(); } @Override - public Verifier createVerifier() { + public Verifier createVerifier() { return new DemoVerifier(); } - private FunctionParser functionParser; - public FunctionParser getFunctionParser() { + private FunctionParser functionParser; + public FunctionParser getFunctionParser() { return functionParser; } public Object onFunctionParse(String key, String function, String parentPath, String currentName, JSONObject currentObject, boolean containRaw) throws Exception { diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLConfig.java index cf78ace..c68b36f 100755 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLConfig.java @@ -20,8 +20,9 @@ import apijson.RequestMethod; import apijson.orm.Join; -import apijson.orm.Join.On; import apijson.orm.SQLConfig; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; /**SQL配置 @@ -30,7 +31,7 @@ * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 * @author Lemon */ -public class DemoSQLConfig extends AbstractSQLConfig { +public class DemoSQLConfig extends AbstractSQLConfig { public DemoSQLConfig() { super(RequestMethod.GET); @@ -60,59 +61,55 @@ public DemoSQLConfig(RequestMethod method, String table) { @Override - public String getDBVersion() { + public String gainDBVersion() { return "8.0.11"; //TODO 改成你自己的 MySQL 或 PostgreSQL 数据库版本号 //MYSQL 8 和 7 使用的 JDBC 配置不一样 } @Override - public String getDBUri() { + public String gainDBUri() { // 这个是 MySQL 8.0 及以上,要加 userSSL=false return "jdbc:mysql://localhost:3306?userSSL=false&serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; // 以下是 MySQL 5.7 及以下 // return "jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; //TODO 改成你自己的,TiDB 可以当成 MySQL 使用,默认端口为 4000 } @Override - public String getDBAccount() { + public String gainDBAccount() { return "root"; //TODO 改成你自己的 } @Override - public String getDBPassword() { + public String gainDBPassword() { return "apijson"; //TODO 改成你自己的,TiDB 可以当成 MySQL 使用, 默认密码为空字符串 "" } - public static SQLConfig newSQLConfig(RequestMethod method, String table, String alias, com.alibaba.fastjson.JSONObject request, List joinList, boolean isProcedure) throws Exception { - return AbstractSQLConfig.newSQLConfig(method, table, alias, request, joinList, isProcedure, new SimpleCallback() { + public static SQLConfig newSQLConfig(RequestMethod method, String table, String alias, com.alibaba.fastjson.JSONObject request, List> joinList, boolean isProcedure) throws Exception { + return AbstractSQLConfig.newSQLConfig(method, table, alias, request, joinList, isProcedure, new SimpleCallback() { @Override - public SQLConfig getSQLConfig(RequestMethod method, String database, String schema, String datasource, String table) { + public SQLConfig getSQLConfig(RequestMethod method, String database, String schema, String datasource, String table) { return new DemoSQLConfig(method, table); } }); } - - - @Override - public boolean isFakeDelete() { - return false; - } - - @Override - public Map onFakeDelete(Map map) { - return super.onFakeDelete(map); - } - - @Override - protected void onGetCrossJoinString(Join j) throws UnsupportedOperationException { - // 开启 CROSS JOIN 笛卡尔积联表 super.onGetCrossJoinString(j); - } - @Override - protected void onJoinNotRelation(String sql, String quote, Join j, String jt, List onList, On on) { - // 开启 JOIN ON t1.c1 != t2.c2 等不等式关联 super.onJoinNotRelation(sql, quote, j, jt, onList, on); - } - @Override - protected void onJoinComplexRelation(String sql, String quote, Join j, String jt, List onList, On on) { - // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplextRelation(sql, quote, j, jt, onList, on); - } - - + // @Override + // public boolean isFakeDelete() { + // return false; + // } + // + // @Override + // public Map onFakeDelete(Map map) { + // return super.onFakeDelete(map); + // } + + // @Override + // protected void onGainCrossJoinString(Join j) throws UnsupportedOperationException { + // // 开启 CROSS JOIN 笛卡尔积联表 super.onGetCrossJoinString(j); + // } + // @Override + // protected void onJoinNotRelation(String sql, String quote, Join j, String jt, List onList, On on) { + // // 开启 JOIN ON t1.c1 != t2.c2 等不等式关联 super.onJoinNotRelation(sql, quote, j, jt, onList, on); + // } + // @Override + // protected void onJoinComplexRelation(String sql, String quote, Join j, String jt, List onList, On on) { + // // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplexRelation(sql, quote, j, jt, onList, on); + // } } diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLExecutor.java index f446110..197ed16 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -16,6 +16,8 @@ import apijson.Log; import apijson.orm.AbstractSQLExecutor; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; /** * SQL 执行器,支持连接池及多数据源 @@ -23,7 +25,7 @@ * * @author Lemon */ -public class DemoSQLExecutor extends AbstractSQLExecutor { +public class DemoSQLExecutor extends AbstractSQLExecutor { private static final String TAG = "DemoSQLExecutor"; static { diff --git a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoVerifier.java b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoVerifier.java index 9af6e37..0aa803b 100644 --- a/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoVerifier.java +++ b/APIJSON-Java-Server/APIJSONDemo-Solon/src/main/java/apijson/demo/DemoVerifier.java @@ -16,16 +16,19 @@ import apijson.orm.AbstractVerifier; import apijson.orm.Parser; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; /**安全校验器,校验请求参数、角色与权限等 * 具体见 https://github.com/Tencent/APIJSON/issues/12 * @author Lemon */ -public class DemoVerifier extends AbstractVerifier { +public class DemoVerifier extends AbstractVerifier { public static final String TAG = "DemoVerifier"; @Override - public Parser createParser() { + public Parser createParser() { return new DemoParser(); } + } From eb051b0df273f30479b10d1238d666e4ed2efadd Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 7 Apr 2025 00:27:13 +0800 Subject: [PATCH 44/80] =?UTF-8?q?Java=EF=BC=9AAPIJSONDemo=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20APIJSON=208=20=E5=92=8C=20MySQL-JDBC=209.2,=20Postg?= =?UTF-8?q?reSQL-JDBC=2042.7.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONDemo/pom.xml | 25 ++++-- .../java/apijson/demo/DemoApplication.java | 87 +++++++++++++++++-- .../java/apijson/demo/DemoController.java | 8 +- .../java/apijson/demo/DemoFunctionParser.java | 42 +++++++++ .../java/apijson/demo/DemoObjectParser.java | 46 ++++++++++ .../main/java/apijson/demo/DemoParser.java | 82 +++++++++++++++++ .../main/java/apijson/demo/DemoSQLConfig.java | 18 ++-- .../java/apijson/demo/DemoSQLExecutor.java | 31 +++++++ .../main/java/apijson/demo/DemoVerifier.java | 28 ++++++ 9 files changed, 344 insertions(+), 23 deletions(-) create mode 100644 APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoFunctionParser.java create mode 100644 APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoObjectParser.java create mode 100644 APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoParser.java create mode 100644 APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoSQLExecutor.java create mode 100644 APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoVerifier.java diff --git a/APIJSON-Java-Server/APIJSONDemo/pom.xml b/APIJSON-Java-Server/APIJSONDemo/pom.xml index 22d577c..083acd1 100755 --- a/APIJSON-Java-Server/APIJSONDemo/pom.xml +++ b/APIJSON-Java-Server/APIJSONDemo/pom.xml @@ -20,16 +20,23 @@ + + + com.alibaba + fastjson + 1.2.83 + + com.github.Tencent APIJSON - 7.1.0 + 8.0.0.0.0 com.github.APIJSON apijson-framework - 7.1.5 + 7.2.0.0 jakarta.servlet @@ -39,14 +46,14 @@ - mysql - mysql-connector-java - 8.0.29 + com.mysql + mysql-connector-j + 9.2.0 org.postgresql postgresql - 42.3.8 + 42.7.2 @@ -66,6 +73,12 @@ + + com.google.protobuf + protobuf-java + 3.25.1 + compile + diff --git a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoApplication.java b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoApplication.java index 995fc8e..b2ba00e 100755 --- a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoApplication.java +++ b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoApplication.java @@ -14,8 +14,13 @@ package apijson.demo; +import apijson.JSONParser; +import apijson.framework.*; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.parser.Feature; import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.web.server.WebServerFactoryCustomizer; @@ -26,9 +31,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import apijson.Log; -import apijson.framework.APIJSONApplication; -import apijson.framework.APIJSONCreator; -import apijson.orm.SQLConfig; + +import java.util.List; /** @@ -73,12 +77,83 @@ public void addCorsMappings(CorsRegistry registry) { } static { + // 使用 fastjson + apijson.JSON.JSON_OBJECT_CLASS = JSONObject.class; + apijson.JSON.JSON_ARRAY_CLASS = JSONArray.class; + + final Feature[] DEFAULT_FASTJSON_FEATURES = {Feature.OrderedField, Feature.UseBigDecimal}; + apijson.JSON.DEFAULT_JSON_PARSER = new JSONParser() { + + @Override + public JSONObject createJSONObject() { + return new JSONObject(true); + } + + @Override + public JSONArray createJSONArray() { + return new JSONArray(); + } + + @Override + public String toJSONString(Object obj) { + return obj == null || obj instanceof String ? (String) obj : JSON.toJSONString(obj); + } + + @Override + public Object parseJSON(Object json) { + return JSON.parse(toJSONString(json), DEFAULT_FASTJSON_FEATURES); + } + + @Override + public JSONObject parseObject(Object json) { + return JSON.parseObject(toJSONString(json), DEFAULT_FASTJSON_FEATURES); + } + + @Override + public T parseObject(Object json, Class clazz) { + return JSON.parseObject(toJSONString(json), clazz, DEFAULT_FASTJSON_FEATURES); + } + + @Override + public JSONArray parseArray(Object json) { + return JSON.parseArray(toJSONString(json)); + } + + @Override + public List parseArray(Object json, Class clazz) { + return JSON.parseArray(toJSONString(json), clazz); + } + + }; + // 使用本项目的自定义处理类 - APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { + APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { + + @Override + public DemoParser createParser() { + return new DemoParser(); + } + @Override - public SQLConfig createSQLConfig() { + public DemoFunctionParser createFunctionParser() { + return new DemoFunctionParser(); + } + + @Override + public DemoVerifier createVerifier() { + return new DemoVerifier(); + } + + @Override + public DemoSQLConfig createSQLConfig() { return new DemoSQLConfig(); } + + @Override + public DemoSQLExecutor createSQLExecutor() { + return new DemoSQLExecutor(); + } + }; // 把以下需要用到的数据库驱动取消注释即可,如果这里没有可以自己新增 diff --git a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoController.java b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoController.java index 61d30ef..03433af 100644 --- a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoController.java +++ b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoController.java @@ -17,6 +17,9 @@ import java.net.URLDecoder; import java.util.Map; +import apijson.framework.APIJSONParser; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import jakarta.servlet.http.HttpSession; import org.springframework.web.bind.annotation.GetMapping; @@ -30,7 +33,6 @@ import apijson.RequestMethod; import apijson.StringUtil; import apijson.framework.APIJSONController; -import apijson.orm.Parser; /**请求路由入口控制器,包括通用增删改查接口等,转交给 APIJSON 的 Parser 来处理 @@ -46,10 +48,10 @@ */ @RestController @RequestMapping("") -public class DemoController extends APIJSONController { +public class DemoController extends APIJSONController { @Override - public Parser newParser(HttpSession session, RequestMethod method) { + public APIJSONParser newParser(HttpSession session, RequestMethod method) { return super.newParser(session, method).setNeedVerify(false); // TODO 这里关闭校验,方便新手快速测试,实际线上项目建议开启 } diff --git a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoFunctionParser.java new file mode 100644 index 0000000..0ff6c72 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoFunctionParser.java @@ -0,0 +1,42 @@ +/*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License.*/ + +package apijson.demo; + +import apijson.RequestMethod; +import apijson.framework.APIJSONFunctionParser; +import apijson.orm.AbstractFunctionParser; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import jakarta.servlet.http.HttpSession; + + +/**可远程调用的函数类,用于自定义业务逻辑处理 + * 具体见 https://github.com/Tencent/APIJSON/issues/101 + * @author Lemon + */ +public class DemoFunctionParser extends APIJSONFunctionParser { + public static final String TAG = "DemoFunctionParser"; + + public DemoFunctionParser() { + this(null); + } + public DemoFunctionParser(HttpSession session) { + this(null, null, 0, null, session); + } + public DemoFunctionParser(RequestMethod method, String tag, int version, JSONObject curObj, HttpSession session) { + super(method, tag, version, curObj, session); + } + +} \ No newline at end of file diff --git a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoObjectParser.java new file mode 100644 index 0000000..7660016 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoObjectParser.java @@ -0,0 +1,46 @@ +/*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License.*/ + +package apijson.demo; + +import apijson.NotNull; +import apijson.RequestMethod; +import apijson.framework.APIJSONObjectParser; +import apijson.orm.Join; +import apijson.orm.SQLConfig; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import jakarta.servlet.http.HttpSession; + +import java.util.List; + + +/**对象解析器,用来简化 Parser + * @author Lemon + */ +public class DemoObjectParser extends APIJSONObjectParser { + + public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath + , SQLConfig arrayConfig, boolean isSubquery, boolean isTable + , boolean isArrayMainTable) throws Exception { + super(session, request, parentPath, arrayConfig, isSubquery, isTable, isArrayMainTable); + } + + @Override + public SQLConfig newSQLConfig(RequestMethod method, String table, String alias + , JSONObject request, List> joinList, boolean isProcedure) throws Exception { + return DemoSQLConfig.newSQLConfig(method, table, alias, request, joinList, isProcedure); + } + +} diff --git a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoParser.java new file mode 100644 index 0000000..dad072d --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoParser.java @@ -0,0 +1,82 @@ +/*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License.*/ + +package apijson.demo; + +import apijson.RequestMethod; +import apijson.framework.APIJSONObjectParser; +import apijson.framework.APIJSONParser; +import apijson.orm.*; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import jakarta.servlet.http.HttpSession; + +import java.util.HashMap; +import java.util.Map; + + +/**请求解析器 + * 具体见 https://github.com/Tencent/APIJSON/issues/38 + * @author Lemon + */ +public class DemoParser extends APIJSONParser { + + public static final Map KEY_MAP; + static { + KEY_MAP = new HashMap<>(); + } + + public DemoParser() { + super(); + } + public DemoParser(RequestMethod method) { + super(method); + } + public DemoParser(RequestMethod method, boolean needVerify) { + super(method, needVerify); + } + +// private int maxQueryCount = 200; +// // 可重写来设置最大查询数量 +// @Override +// public int getMaxQueryCount() { +// return maxQueryCount; +// } +// +// @Override +// public int getMaxUpdateCount() { +// return 200; +// } +// +// @Override +// public int getMaxObjectCount() { +// return getMaxUpdateCount(); +// } +// +// @Override +// public int getMaxSQLCount() { +// return getMaxUpdateCount(); +// } + + @Override + public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath + , SQLConfig arrayConfig + , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { + return new DemoObjectParser(getSession(), request, parentPath, arrayConfig + , isSubquery, isTable, isArrayMainTable).setMethod(getMethod()).setParser(this); + } + + // 实现应用层与数据库共用账号密码,可用于多租户、SQLAuto 等 >>>>>>>>>>>>>>> + +} diff --git a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoSQLConfig.java index 202ef9f..489b060 100755 --- a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoSQLConfig.java @@ -14,6 +14,8 @@ package apijson.demo; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.annotation.JSONField; import apijson.framework.APIJSONSQLConfig; @@ -25,7 +27,7 @@ * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 * @author Lemon */ -public class DemoSQLConfig extends APIJSONSQLConfig { +public class DemoSQLConfig extends APIJSONSQLConfig { static { DEFAULT_DATABASE = DATABASE_MYSQL; // TODO 默认数据库类型,改成你自己的 @@ -43,25 +45,25 @@ public class DemoSQLConfig extends APIJSONSQLConfig { } @Override - public String getDBVersion() { + public String gainDBVersion() { return "5.7.22"; // "8.0.11"; // TODO 改成你自己的 MySQL 或 PostgreSQL 数据库版本号 // MYSQL 8 和 7 使用的 JDBC 配置不一样 } - + @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 @Override - public String getDBUri() { + public String gainDBUri() { return "jdbc:mysql://localhost:3306?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; // TODO 改成你自己的,TiDB 可以当成 MySQL 使用,默认端口为 4000 } - + @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 @Override - public String getDBAccount() { + public String gainDBAccount() { return "root"; // TODO 改成你自己的 } - + @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息 @Override - public String getDBPassword() { + public String gainDBPassword() { return "apijson"; // TODO 改成你自己的,TiDB 可以当成 MySQL 使用, 默认密码为空字符串 "" } diff --git a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoSQLExecutor.java new file mode 100644 index 0000000..618cbd2 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -0,0 +1,31 @@ +/*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License.*/ + +package apijson.demo; + +import apijson.Log; +import apijson.framework.APIJSONSQLExecutor; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; + +/** + * SQL 执行器,支持连接池及多数据源 + * 具体见 https://github.com/Tencent/APIJSON/issues/151 + * + * @author Lemon + */ +public class DemoSQLExecutor extends APIJSONSQLExecutor { + private static final String TAG = "DemoSQLExecutor"; + +} diff --git a/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoVerifier.java b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoVerifier.java new file mode 100644 index 0000000..812b635 --- /dev/null +++ b/APIJSON-Java-Server/APIJSONDemo/src/main/java/apijson/demo/DemoVerifier.java @@ -0,0 +1,28 @@ +/*Copyright ©2016 TommyLemon(https://github.com/TommyLemon/APIJSON) + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License.*/ + +package apijson.demo; + +import apijson.framework.APIJSONVerifier; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; + +/**安全校验器,校验请求参数、角色与权限等 + * 具体见 https://github.com/Tencent/APIJSON/issues/12 + * @author Lemon + */ +public class DemoVerifier extends APIJSONVerifier { + public static final String TAG = "DemoVerifier"; + +} From e3898ae920dd54fe4294330d3ec74c8776d7d818 Mon Sep 17 00:00:00 2001 From: TommyLemon Date: Mon, 7 Apr 2025 00:33:50 +0800 Subject: [PATCH 45/80] =?UTF-8?q?Java=EF=BC=9AJFinal=20Demo=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=20APIJSON=208,=20apijson-framework=207.2=20=E5=92=8C?= =?UTF-8?q?=20MySQL-JDBC=209.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- APIJSON-Java-Server/APIJSONFinal/pom.xml | 12 +- .../java/apijson/demo/DemoFunctionParser.java | 81 ++--- .../main/java/apijson/demo/DemoParser.java | 19 +- .../main/java/apijson/demo/DemoSQLConfig.java | 36 +-- .../main/java/apijson/demo/DemoVerifier.java | 4 +- .../src/main/java/apijson/demo/JSON.java | 38 +++ .../main/java/apijson/demo/model/Privacy.java | 2 +- .../main/java/apijson/demo/model/User.java | 2 +- .../main/java/apijson/demo/model/Verify.java | 2 +- .../java/apijson/jfinal/DemoAppConfig.java | 73 ++++- .../java/apijson/jfinal/DemoController.java | 279 +++++++++--------- 11 files changed, 333 insertions(+), 215 deletions(-) create mode 100644 APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/JSON.java diff --git a/APIJSON-Java-Server/APIJSONFinal/pom.xml b/APIJSON-Java-Server/APIJSONFinal/pom.xml index 9055a63..77d7cac 100755 --- a/APIJSON-Java-Server/APIJSONFinal/pom.xml +++ b/APIJSON-Java-Server/APIJSONFinal/pom.xml @@ -36,25 +36,25 @@ com.github.Tencent APIJSON - 7.1.0 + 8.0.0.0.0 com.github.APIJSON apijson-framework - 7.1.5 + 7.2.0.0 - mysql - mysql-connector-java - 8.0.29 + com.mysql + mysql-connector-j + 9.2.0 org.postgresql postgresql - 42.3.4 + 42.7.2 diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoFunctionParser.java index 19edc36..7813645 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoFunctionParser.java @@ -21,24 +21,26 @@ import javax.servlet.http.HttpSession; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; - import apijson.JSONResponse; import apijson.NotNull; import apijson.RequestMethod; import apijson.StringUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; + import apijson.framework.javax.APIJSONFunctionParser; import apijson.orm.AbstractVerifier; -import apijson.orm.JSONRequest; import apijson.orm.Visitor; +import static apijson.JSONObject.KEY_COLUMN; +import static apijson.JSONRequest.KEY_COUNT; + /**可远程调用的函数类,用于自定义业务逻辑处理 * 具体见 https://github.com/Tencent/APIJSON/issues/101 * @author Lemon */ -public class DemoFunctionParser extends APIJSONFunctionParser { +public class DemoFunctionParser extends APIJSONFunctionParser { public static final String TAG = "DemoFunctionParser"; public DemoFunctionParser() { @@ -48,34 +50,34 @@ public DemoFunctionParser(RequestMethod method, String tag, int version, JSONObj super(method, tag, version, request, session); } - public Visitor getCurrentUser(@NotNull JSONObject current) { + public Visitor getCurrentUser(@NotNull JSONObject curObj) { return DemoVerifier.getVisitor(getSession()); } - public Long getCurrentUserId(@NotNull JSONObject current) { + public Long getCurrentUserId(@NotNull JSONObject curObj) { return DemoVerifier.getVisitorId(getSession()); } - public List getCurrentUserIdAsList(@NotNull JSONObject current) { + public List getCurrentUserIdAsList(@NotNull JSONObject curObj) { List list = new ArrayList<>(1); list.add(DemoVerifier.getVisitorId(getSession())); return list; } - public List getCurrentContactIdList(@NotNull JSONObject current) { - Visitor user = getCurrentUser(current); + public List getCurrentContactIdList(@NotNull JSONObject curObj) { + Visitor user = getCurrentUser(curObj); return user == null ? null : user.getContactIdList(); } /** - * @param current + * @param curObj * @param idList * @return * @throws Exception */ - public void verifyIdList(@NotNull JSONObject current, @NotNull String idList) throws Exception { - Object obj = current.get(idList); + public void verifyIdList(@NotNull JSONObject curObj, @NotNull String idList) throws Exception { + Object obj = curObj.get(idList); if (obj == null) { return; } @@ -98,13 +100,13 @@ public void verifyIdList(@NotNull JSONObject current, @NotNull String idList) th /** - * @param current + * @param curObj * @param urlList * @return * @throws Exception */ - public void verifyURLList(@NotNull JSONObject current, @NotNull String urlList) throws Exception { - Object obj = current.get(urlList); + public void verifyURLList(@NotNull JSONObject curObj, @NotNull String urlList) throws Exception { + Object obj = curObj.get(urlList); if (obj == null) { return; } @@ -127,21 +129,21 @@ public void verifyURLList(@NotNull JSONObject current, @NotNull String urlList) /** - * @param current + * @param curObj * @param momentId * @return * @throws Exception */ - public int deleteCommentOfMoment(@NotNull JSONObject current, @NotNull String momentId) throws Exception { - long mid = current.getLongValue(momentId); - if (mid <= 0 || current.getIntValue(JSONResponse.KEY_COUNT) <= 0) { + public int deleteCommentOfMoment(@NotNull JSONObject curObj, @NotNull String momentId) throws Exception { + long mid = curObj.getLongValue(momentId); + if (mid <= 0 || curObj.getIntValue(JSONResponse.KEY_COUNT) <= 0) { return 0; } - JSONRequest request = new JSONRequest(); + JSONObject request = JSON.createJSONObject(); //Comment<<<<<<<<<<<<<<<<<<<<<<<<<<<<< - JSONRequest comment = new JSONRequest(); + JSONObject comment = JSON.createJSONObject(); comment.put("momentId", mid); request.put("Comment", comment); @@ -155,22 +157,22 @@ public int deleteCommentOfMoment(@NotNull JSONObject current, @NotNull String mo /**删除评论的子评论 - * @param current + * @param curObj * @param toId * @return */ - public int deleteChildComment(@NotNull JSONObject current, @NotNull String toId) throws Exception { - long tid = current.getLongValue(toId); - if (tid <= 0 || current.getIntValue(JSONResponse.KEY_COUNT) <= 0) { + public int deleteChildComment(@NotNull JSONObject curObj, @NotNull String toId) throws Exception { + long tid = curObj.getLongValue(toId); + if (tid <= 0 || curObj.getIntValue(JSONResponse.KEY_COUNT) <= 0) { return 0; } //递归获取到全部子评论id - JSONRequest request = new JSONRequest(); + JSONObject request = JSON.createJSONObject(); //Comment<<<<<<<<<<<<<<<<<<<<<<<<<<<<< - JSONRequest comment = new JSONRequest(); + JSONObject comment = JSON.createJSONObject(); comment.put("id{}", getChildCommentIdList(tid)); request.put("Comment", comment); @@ -187,19 +189,20 @@ private JSONArray getChildCommentIdList(long tid) { JSONArray arr = new JSONArray(); - JSONRequest request = new JSONRequest(); + JSONObject request = JSON.createJSONObject(); //Comment-id[]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< - JSONRequest idItem = new JSONRequest(); + JSONObject idItem = JSON.createJSONObject(); //Comment<<<<<<<<<<<<<<<<<<<<<<<<<<<<< - JSONRequest comment = new JSONRequest(); + JSONObject comment = JSON.createJSONObject(); comment.put("toId", tid); - comment.setColumn("id"); + comment.put(KEY_COLUMN, "id"); idItem.put("Comment", comment); + idItem.put(KEY_COUNT, 0); //Comment>>>>>>>>>>>>>>>>>>>>>>>>>>>>> - request.putAll(idItem.toArray(0, 0, "Comment-id")); + request.put("Comment-id[]", idItem); //Comment-id[]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> JSONObject rp = new DemoParser().setNeedVerify(false).parseResponse(request); @@ -223,23 +226,23 @@ private JSONArray getChildCommentIdList(long tid) { /**TODO 仅用来测试 "key-()":"getIdList()" 和 "key()":"getIdList()" - * @param current + * @param curObj * @return JSONArray 只能用JSONArray,用long[]会在SQLConfig解析崩溃 * @throws Exception */ - public JSONArray getIdList(@NotNull JSONObject current) { + public JSONArray getIdList(@NotNull JSONObject curObj) { return new JSONArray(new ArrayList(Arrays.asList(12, 15, 301, 82001, 82002, 38710))); } /**TODO 仅用来测试 "key-()":"verifyAccess()" - * @param current + * @param curObj * @return * @throws Exception */ - public Object verifyAccess(@NotNull JSONObject current) throws Exception { - long userId = current.getLongValue(JSONRequest.KEY_USER_ID); - String role = current.getString(JSONRequest.KEY_ROLE); + public Object verifyAccess(@NotNull JSONObject curObj) throws Exception { + long userId = curObj.getLongValue(apijson.JSONObject.KEY_USER_ID); + String role = curObj.getString(apijson.JSONObject.KEY_ROLE); if (AbstractVerifier.OWNER.equals(role) && userId != (Long) DemoVerifier.getVisitorId(getSession())) { throw new IllegalAccessException("登录用户与角色OWNER不匹配!"); } diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoParser.java index 37f7611..88ae810 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoParser.java @@ -14,15 +14,20 @@ package apijson.demo; +import apijson.JSONResponse; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import apijson.RequestMethod; import apijson.framework.javax.APIJSONParser; +import static apijson.JSONResponse.*; + /**请求解析器 * 具体见 https://github.com/Tencent/APIJSON/issues/38 * @author Lemon */ -public class DemoParser extends APIJSONParser { +public class DemoParser extends APIJSONParser { public DemoParser() { super(); @@ -34,6 +39,18 @@ public DemoParser(RequestMethod method, boolean needVerify) { super(method, needVerify); } + public static JSONObject parseRequest(String request) { + try { + return JSON.parseObject(request); + } catch (Throwable e) { + JSONObject obj = JSON.createJSONObject(); + obj.put(KEY_OK, false); + obj.put(KEY_CODE, JSONResponse.CODE_ILLEGAL_ARGUMENT); + obj.put(KEY_MSG, "JSON 格式不合法!" + request); + return obj; + } + } + // 可重写来设置最大查询数量 // @Override // public int getMaxQueryCount() { diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoSQLConfig.java index 273f3c3..e4fca50 100755 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoSQLConfig.java @@ -19,17 +19,13 @@ import static apijson.framework.javax.APIJSONConstant.USER_; import static apijson.framework.javax.APIJSONConstant.USER_ID; -import java.text.SimpleDateFormat; -import java.util.Arrays; -import java.util.HashMap; import java.util.List; -import java.util.Map; -import apijson.Log; +import apijson.RequestMethod; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.annotation.JSONField; -import apijson.RequestMethod; -import apijson.StringUtil; import apijson.framework.javax.APIJSONSQLConfig; import apijson.orm.AbstractSQLConfig; import apijson.orm.Join; @@ -42,7 +38,7 @@ * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 * @author Lemon */ -public class DemoSQLConfig extends APIJSONSQLConfig { +public class DemoSQLConfig extends APIJSONSQLConfig { public DemoSQLConfig() { super(); @@ -66,10 +62,10 @@ public DemoSQLConfig(RequestMethod method, String table) { // TABLE_KEY_MAP.put(Privacy.class.getSimpleName(), "apijson_privacy"); // 主键名映射 - SIMPLE_CALLBACK = new SimpleCallback() { + SIMPLE_CALLBACK = new SimpleCallback() { @Override - public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, String schema, String datasource, String table) { + public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, String schema, String datasource, String table) { return new DemoSQLConfig(method, table); } @@ -117,7 +113,7 @@ public String getUserIdKey(String database, String schema, String datasource, St // 如果 DemoSQLExecutor.getConnection 能拿到连接池的有效 Connection,则这里不需要配置 dbVersion, dbUri, dbAccount, dbPassword @Override - public String getDBVersion() { + public String gainDBVersion() { if (isMySQL()) { return "5.7.22"; //"8.0.11"; //TODO 改成你自己的 MySQL 或 PostgreSQL 数据库版本号 //MYSQL 8 和 7 使用的 JDBC 配置不一样 } @@ -141,7 +137,7 @@ public String getDBVersion() { @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加 @Override - public String getDBUri() { + public String gainDBUri() { if (isMySQL()) { // 这个是 MySQL 8.0 及以上,要加 userSSL=false return "jdbc:mysql://localhost:3306?userSSL=false&serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8"; // 以下是 MySQL 5.7 及以下 @@ -168,7 +164,7 @@ public String getDBUri() { @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加 @Override - public String getDBAccount() { + public String gainDBAccount() { if (isMySQL()) { return "root"; //TODO 改成你自己的 } @@ -192,7 +188,7 @@ public String getDBAccount() { @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加 @Override - public String getDBPassword() { + public String gainDBPassword() { if (isMySQL()) { return "apijson"; //TODO 改成你自己的,TiDB 可以当成 MySQL 使用, 默认密码为空字符串 "" } @@ -287,16 +283,16 @@ public String getDBPassword() { @Override - protected void onGetCrossJoinString(Join j) throws UnsupportedOperationException { - // 开启 CROSS JOIN 笛卡尔积联表 super.onGetCrossJoinString(j); + protected void onGainCrossJoinString(Join join) throws UnsupportedOperationException { + // 开启 CROSS JOIN 笛卡尔积联表 super.onGetCrossJoinString(join); } @Override - protected void onJoinNotRelation(String sql, String quote, Join j, String jt, List onList, On on) { - // 开启 JOIN ON t1.c1 != t2.c2 等不等式关联 super.onJoinNotRelation(sql, quote, j, jt, onList, on); + protected void onJoinNotRelation(String sql, String quote, Join join, String jt, List onList, On on) { + // 开启 JOIN ON t1.c1 != t2.c2 等不等式关联 super.onJoinNotRelation(sql, quote, join, jt, onList, on); } @Override - protected void onJoinComplexRelation(String sql, String quote, Join j, String jt, List onList, On on) { - // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplextRelation(sql, quote, j, jt, onList, on); + protected void onJoinComplexRelation(String sql, String quote, Join join, String jt, List onList, On on) { + // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplexRelation(sql, quote, join, jt, onList, on); } } diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoVerifier.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoVerifier.java index 4875b62..b5fc72f 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoVerifier.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/DemoVerifier.java @@ -15,12 +15,14 @@ package apijson.demo; import apijson.framework.javax.APIJSONVerifier; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; /**安全校验器,校验请求参数、角色与权限等 * 具体见 https://github.com/Tencent/APIJSON/issues/12 * @author Lemon */ -public class DemoVerifier extends APIJSONVerifier { +public class DemoVerifier extends APIJSONVerifier { public static final String TAG = "DemoVerifier"; // 重写方法来自定义字段名等 diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/JSON.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/JSON.java new file mode 100644 index 0000000..2b0d51d --- /dev/null +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/JSON.java @@ -0,0 +1,38 @@ +package apijson.demo; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; + +import java.util.Map; + +public class JSON { + + public static String toJSONString(Object obj) { + return apijson.JSON.toJSONString(obj); + } + + public static JSONObject parseObject(Object obj) { + return apijson.JSON.parseObject(obj); + } + + public static JSONArray parseArray(Object obj) { + return apijson.JSON.parseArray(obj); + } + + public static JSONObject createJSONObject() { + return apijson.JSON.createJSONObject(); + } + + public static JSONObject createJSONObject(String key, Object value) { + return apijson.JSON.createJSONObject(key, value); + } + + public static JSONObject createJSONObject(Map map) { + return apijson.JSON.createJSONObject(map); + } + + public static JSONObject createJSONArray() { + return apijson.JSON.createJSONArray(); + } + +} diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Privacy.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Privacy.java index 930c4ed..20f389d 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Privacy.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Privacy.java @@ -35,7 +35,7 @@ GETS = {OWNER, ADMIN}, POST = {UNKNOWN, ADMIN}, DELETE = {ADMIN} - ) +) public class Privacy extends BaseModel { private static final long serialVersionUID = 1L; diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/User.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/User.java index a535d28..d81e630 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/User.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/User.java @@ -29,7 +29,7 @@ @MethodAccess( POST = {UNKNOWN, ADMIN}, DELETE = {ADMIN} - ) +) public class User extends BaseModel implements Visitor { private static final long serialVersionUID = 1L; diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Verify.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Verify.java index fa5fc13..65225d9 100644 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Verify.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/demo/model/Verify.java @@ -35,7 +35,7 @@ POST = {UNKNOWN, LOGIN, CONTACT, CIRCLE, OWNER, ADMIN}, PUT = {ADMIN}, DELETE = {ADMIN} - ) +) public class Verify extends BaseModel { private static final long serialVersionUID = 1L; diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoAppConfig.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoAppConfig.java index b580ebe..416aa71 100755 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoAppConfig.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoAppConfig.java @@ -14,6 +14,11 @@ package apijson.jfinal; +import apijson.JSONParser; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.parser.Feature; import com.jfinal.aop.Interceptor; import com.jfinal.aop.Invocation; import com.jfinal.config.Constants; @@ -26,6 +31,7 @@ import com.jfinal.server.undertow.UndertowServer; import com.jfinal.template.Engine; +import java.util.List; import java.util.Map; import java.util.regex.Pattern; @@ -41,10 +47,6 @@ import apijson.framework.javax.APIJSONApplication; import apijson.framework.javax.APIJSONCreator; import apijson.orm.AbstractVerifier; -import apijson.orm.FunctionParser; -import apijson.orm.Parser; -import apijson.orm.SQLConfig; -import apijson.orm.Verifier; /** @@ -61,9 +63,11 @@ public static void main(String[] args) throws Exception { UndertowServer.start(DemoAppConfig.class); // src/main/resources/undertow.txt 中配置 undertow.port 优先于 UndertowServer.start 传参 int port Log.DEBUG = true; // 上线生产环境前改为 false,可不输出 APIJSONORM 的日志 以及 SQLException 的原始(敏感)信息 - APIJSONApplication.init(); + APIJSONApplication.init(false); } + public static JSONParser DEFAULT_JSON_PARSER; + static { // 把以下需要用到的数据库驱动取消注释即可,如果这里没有可以自己新增 // try { //加载驱动程序 @@ -103,26 +107,75 @@ public static void main(String[] args) throws Exception { COMPILE_MAP.put("EMAIL", StringUtil.PATTERN_EMAIL); COMPILE_MAP.put("ID_CARD", StringUtil.PATTERN_ID_CARD); + // 使用 fastjson + apijson.JSON.JSON_OBJECT_CLASS = JSONObject.class; + apijson.JSON.JSON_ARRAY_CLASS = JSONArray.class; + + final Feature[] DEFAULT_FASTJSON_FEATURES = {Feature.OrderedField, Feature.UseBigDecimal}; + apijson.JSON.DEFAULT_JSON_PARSER = DEFAULT_JSON_PARSER = new JSONParser() { + + @Override + public JSONObject createJSONObject() { + return new JSONObject(true); + } + + @Override + public JSONArray createJSONArray() { + return new JSONArray(); + } + + @Override + public String toJSONString(Object obj) { + return obj == null || obj instanceof String ? (String) obj : JSON.toJSONString(obj); + } + + @Override + public Object parseJSON(Object json) { + return JSON.parse(toJSONString(json), DEFAULT_FASTJSON_FEATURES); + } + + @Override + public JSONObject parseObject(Object json) { + return JSON.parseObject(toJSONString(json), DEFAULT_FASTJSON_FEATURES); + } + + @Override + public T parseObject(Object json, Class clazz) { + return JSON.parseObject(toJSONString(json), clazz, DEFAULT_FASTJSON_FEATURES); + } + + @Override + public JSONArray parseArray(Object json) { + return JSON.parseArray(toJSONString(json)); + } + + @Override + public List parseArray(Object json, Class clazz) { + return JSON.parseArray(toJSONString(json), clazz); + } + + }; + // 使用本项目的自定义处理类 - APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { + APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() { @Override - public Parser createParser() { + public DemoParser createParser() { return new DemoParser(); } @Override - public FunctionParser createFunctionParser() { + public DemoFunctionParser createFunctionParser() { return new DemoFunctionParser(); } @Override - public Verifier createVerifier() { + public DemoVerifier createVerifier() { return new DemoVerifier(); } @Override - public SQLConfig createSQLConfig() { + public DemoSQLConfig createSQLConfig() { return new DemoSQLConfig(); } diff --git a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoController.java b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoController.java index fdefb58..5381b85 100755 --- a/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoController.java +++ b/APIJSON-Java-Server/APIJSONFinal/src/main/java/apijson/jfinal/DemoController.java @@ -43,7 +43,13 @@ import javax.servlet.http.HttpSession; +import apijson.JSONResponse; +import apijson.Log; +import apijson.RequestMethod; +import apijson.StringUtil; +import apijson.demo.JSON; import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.JSONArray; import com.jfinal.aop.Before; import com.jfinal.core.ActionKey; import com.jfinal.core.Controller; @@ -51,11 +57,6 @@ import com.jfinal.ext.interceptor.POST; import com.jfinal.kit.HttpKit; -import apijson.JSON; -import apijson.JSONResponse; -import apijson.Log; -import apijson.RequestMethod; -import apijson.StringUtil; import apijson.demo.DemoFunctionParser; import apijson.demo.DemoParser; import apijson.demo.DemoVerifier; @@ -63,11 +64,8 @@ import apijson.demo.model.User; import apijson.demo.model.Verify; import apijson.framework.javax.APIJSONController; -import apijson.framework.javax.APIJSONParser; import apijson.framework.javax.BaseModel; -import apijson.orm.AbstractParser; import apijson.orm.JSONRequest; -import apijson.orm.Parser; import apijson.orm.exception.ConditionErrorException; import apijson.orm.exception.ConflictException; import apijson.orm.exception.NotExistException; @@ -88,17 +86,11 @@ public class DemoController extends Controller { private static final String TAG = "DemoController"; - public Parser newParser(HttpSession session, RequestMethod method) { - @SuppressWarnings("unchecked") - Parser parser = (Parser) APIJSONController.APIJSON_CREATOR.createParser(); + public DemoParser newParser(HttpSession session, RequestMethod method) { + DemoParser parser = (DemoParser) APIJSONController.APIJSON_CREATOR.createParser(); parser.setMethod(method); - if (parser instanceof APIJSONParser) { - ((APIJSONParser) parser).setSession(session); - } - // 可以更方便地通过日志排查错误 - if (parser instanceof AbstractParser) { - ((AbstractParser) parser).setRequestURL(getRequest().getRequestURL().toString()); - } + parser.setSession(session); + parser.setRequestURL(getRequest().getRequestURL().toString()); return parser; } @@ -123,8 +115,9 @@ public void parseAndResponse(RequestMethod method) { return; } + DemoParser parser = newParser(null, null); // /get/User, /gets/Moment[], /put/Comment:[] 等简版接口,APIJSON 4.8.0+ 可用,对不兼容的低版本需要注释以下代码 - JSONObject req = AbstractParser.wrapRequest(method, tag, JSON.parseObject(getRawData()), false); + JSONObject req = parser.wrapRequest(method, tag, JSON.parseObject(getRawData()), false, DemoAppConfig.DEFAULT_JSON_PARSER); if (req == null) { req = new JSONObject(true); } @@ -250,7 +243,6 @@ public void delete() { /**重新加载配置 - * @param request * @return * @see *
        @@ -263,6 +255,8 @@ public void delete() {
         	 */
         	@Before(POST.class)
         	public void reload() {
        +		DemoParser parser = new DemoParser();
        +
         		String request = HttpKit.readData(getRequest());
         		JSONObject requestObject = null;
         		String type;
        @@ -270,24 +264,24 @@ public void reload() {
         		String phone;
         		String verify;
         		try {
        -			requestObject = DemoParser.parseRequest(request);
        +			requestObject = JSON.parseObject(request);
         			type = requestObject.getString(TYPE);
         			value = requestObject.getJSONObject(VALUE);
         			phone = requestObject.getString(PHONE);
         			verify = requestObject.getString(VERIFY);
         		} catch (Exception e) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, e));
        +			renderJson(parser.extendErrorResult(requestObject, e));
         			return;
         		}
         
        -		JSONResponse response = new JSONResponse(headVerify(Verify.TYPE_RELOAD, phone, verify));
        -		response = response.getJSONResponse(VERIFY_);
        +		JSONResponse response = new JSONResponse<>(headVerify(Verify.TYPE_RELOAD, phone, verify));
        +		response = response.getJSONResponse(VERIFY_, DemoAppConfig.DEFAULT_JSON_PARSER);
         		if (JSONResponse.isExist(response) == false) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, new ConditionErrorException("手机号或验证码错误")));
        +			renderJson(parser.extendErrorResult(requestObject, new ConditionErrorException("手机号或验证码错误")));
         			return;
         		}
         
        -		JSONObject result = DemoParser.newSuccessResult();
        +		JSONObject result = (JSONObject) parser.newSuccessResult();
         
         		boolean reloadAll = StringUtil.isEmpty(type, true) || "ALL".equals(type);
         
        @@ -296,7 +290,7 @@ public void reload() {
         				result.put(ACCESS_, DemoVerifier.initAccess(false, null, value));
         			} catch (ServerException e) {
         				e.printStackTrace();
        -				result.put(ACCESS_, DemoParser.newErrorResult(e));
        +				result.put(ACCESS_, parser.newErrorResult(e));
         			}
         		}
         
        @@ -305,7 +299,7 @@ public void reload() {
         				result.put(FUNCTION_, DemoFunctionParser.init(false, null, value));
         			} catch (ServerException e) {
         				e.printStackTrace();
        -				result.put(FUNCTION_, DemoParser.newErrorResult(e));
        +				result.put(FUNCTION_, parser.newErrorResult(e));
         			}
         		}
         
        @@ -314,7 +308,7 @@ public void reload() {
         				result.put(REQUEST_, DemoVerifier.initRequest(false, null, value));
         			} catch (ServerException e) {
         				e.printStackTrace();
        -				result.put(REQUEST_, DemoParser.newErrorResult(e));
        +				result.put(REQUEST_, parser.newErrorResult(e));
         			}
         		}
         
        @@ -322,7 +316,6 @@ public void reload() {
         	}
         
         	/**生成验证码,修改为post请求
        -	 * @param request
         	 * @see
         	 * 
         		{
        @@ -334,16 +327,18 @@ public void reload() {
         	@Before(POST.class)
         	@ActionKey("post/verify")
         	public void postVerify() {
        +		DemoParser parser = new DemoParser();
        +
         		String request = HttpKit.readData(getRequest());
         		JSONObject requestObject = null;
         		int type;
         		String phone;
         		try {
        -			requestObject = DemoParser.parseRequest(request);
        +			requestObject = JSON.parseObject(request);
         			type = requestObject.getIntValue(TYPE);
         			phone = requestObject.getString(PHONE);
         		} catch (Exception e) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, e));
        +			renderJson(parser.extendErrorResult(requestObject, e));
         			return;
         		}
         
        @@ -351,7 +346,7 @@ public void postVerify() {
         
         		JSONObject response = new DemoParser(POST, false).parseResponse(
         				newVerifyRequest(type, phone, "" + (new Random().nextInt(9999) + 1000))
        -				);
        +		);
         
         		JSONObject verify = null;
         		try {
        @@ -359,7 +354,7 @@ public void postVerify() {
         		} catch (Exception e) {}
         
         		if (verify == null || JSONResponse.isSuccess(verify.getIntValue(JSONResponse.KEY_CODE)) == false) {
        -			new DemoParser(DELETE, false).parseResponse(new JSONRequest(new Verify(type, phone)));
        +			new DemoParser(DELETE, false).parseResponse((JSONObject) apijson.JSON.parseObject(new Verify(type, phone)));
         			renderJson(response);
         			return;
         		}
        @@ -372,7 +367,6 @@ public void postVerify() {
         	}
         
         	/**获取验证码
        -	 * @param request
         	 * @see
         	 * 
         		{
        @@ -389,21 +383,23 @@ public void getVerify() {
         
         	@NotAction
         	public JSONObject getVerify(String request) {
        +		DemoParser parser = new DemoParser(GETS, false);
        +
         		JSONObject requestObject = null;
         		int type;
         		String phone;
         		try {
        -			requestObject = DemoParser.parseRequest(request);
        +			requestObject = JSON.parseObject(request);
         			type = requestObject.getIntValue(TYPE);
         			phone = requestObject.getString(PHONE);
         		} catch (Exception e) {
        -			return DemoParser.extendErrorResult(requestObject, e);
        +			return parser.extendErrorResult(requestObject, e);
         		}
        -		return new DemoParser(GETS, false).parseResponse(newVerifyRequest(type, phone, null));
        +
        +		return parser.parseResponse(newVerifyRequest(type, phone, null));
         	}
         
         	/**校验验证码
        -	 * @param request
         	 * @see
         	 * 
         		{
        @@ -416,20 +412,23 @@ public JSONObject getVerify(String request) {
         	@Before(POST.class)
         	@ActionKey("heads/verify")
         	public void headVerify() {
        +		DemoParser parser = new DemoParser();
        +
         		String request = HttpKit.readData(getRequest());
         		JSONObject requestObject = null;
         		int type;
         		String phone;
         		String verify;
         		try {
        -			requestObject = DemoParser.parseRequest(request);
        +			requestObject = JSON.parseObject(request);
         			type = requestObject.getIntValue(TYPE);
         			phone = requestObject.getString(PHONE);
         			verify = requestObject.getString(VERIFY);
         		} catch (Exception e) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, e));
        +			renderJson(parser.extendErrorResult(requestObject, e));
         			return;
         		}
        +
         		renderJson(headVerify(type, phone, verify));
         	}
         
        @@ -442,17 +441,19 @@ public void headVerify() {
         	 */
         	@NotAction
         	public JSONObject headVerify(int type, String phone, String code) {
        -		JSONResponse response = new JSONResponse(
        +		DemoParser parser = new DemoParser();
        +
        +		JSONResponse response = new JSONResponse<>(
         				new DemoParser(GETS, false).parseResponse(
        -						new JSONRequest(
        +						(JSONObject) apijson.JSON.parseObject(new JSONRequest(
         								new Verify(type, phone)
         								.setVerify(code)
         								).setTag(VERIFY_)
        -						)
        +						))
         				);
         		Verify verify = response.getObject(Verify.class);
         		if (verify == null) {
        -			return DemoParser.newErrorResult(StringUtil.isEmpty(code, true)
        +			return parser.newErrorResult(StringUtil.isEmpty(code, true)
         					? new NotExistException("验证码不存在!") : new ConditionErrorException("手机号或验证码错误!"));
         		}
         
        @@ -461,16 +462,20 @@ public JSONObject headVerify(int type, String phone, String code) {
         		long now = System.currentTimeMillis();
         		if (now > 60*1000 + time) {
         			new DemoParser(DELETE, false).parseResponse(
        -					new JSONRequest(new Verify(type, phone)).setTag(VERIFY_)
        -					);
        -			return DemoParser.newErrorResult(new TimeoutException("验证码已过期!"));
        +					(JSONObject) apijson.JSON.parseObject(
        +							new JSONRequest(new Verify(type, phone)).setTag(VERIFY_)
        +					)
        +			);
        +			return parser.newErrorResult(new TimeoutException("验证码已过期!"));
         		}
         
        -		return new JSONResponse(
        +		return new JSONResponse<>(
         				new DemoParser(HEADS, false).parseResponse(
        -						new JSONRequest(new Verify(type, phone).setVerify(code)).setFormat(true)
        +						(JSONObject) apijson.JSON.parseObject(
        +								new JSONRequest(new Verify(type, phone).setVerify(code)).setFormat(true)
         						)
        -				);
        +				)
        +		).toObject(JSONObject.class);
         	}
         
         
        @@ -481,8 +486,10 @@ public JSONObject headVerify(int type, String phone, String code) {
         	 * @return
         	 */
         	@NotAction
        -	private apijson.JSONRequest newVerifyRequest(int type, String phone, String verify) {
        -		return new JSONRequest(new Verify(type, phone).setVerify(verify)).setTag(VERIFY_).setFormat(true);
        +	private JSONObject newVerifyRequest(int type, String phone, String verify) {
        +		JSONObject obj = new JSONObject(true);
        +		obj.putAll(new JSONRequest(new Verify(type, phone).setVerify(verify)).setTag(VERIFY_).setFormat(true));
        +		return obj;
         	}
         
         
        @@ -493,7 +500,6 @@ private apijson.JSONRequest newVerifyRequest(int type, String phone, String veri
         	public static final int LOGIN_TYPE_PASSWORD = 0;//密码登录
         	public static final int LOGIN_TYPE_VERIFY = 1;//验证码登录
         	/**用户登录
        -	 * @param request 只用String,避免encode后未decode
         	 * @return
         	 * @see
         	 * 
        @@ -507,6 +513,8 @@ private apijson.JSONRequest newVerifyRequest(int type, String phone, String veri
         	 */
         	@Before(POST.class)
         	public void login() {
        +		DemoParser parser = new DemoParser();
        +
         		String request = HttpKit.readData(getRequest());
         		HttpSession session = getSession();
         
        @@ -519,7 +527,7 @@ public void login() {
         		boolean remember;
         		JSONObject defaults;
         		try {
        -			requestObject = DemoParser.parseRequest(request);
        +			requestObject = JSON.parseObject(request);
         
         			isPassword = requestObject.getIntValue(TYPE) == LOGIN_TYPE_PASSWORD;//登录方式
         			phone = requestObject.getString(PHONE);//手机
        @@ -548,35 +556,33 @@ public void login() {
         			requestObject.remove(REMEMBER);
         			requestObject.remove(DEFAULTS);
         		} catch (Exception e) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, e));
        +			renderJson(parser.extendErrorResult(requestObject, e));
         			return;
         		}
         
        -
        -
         		//手机号是否已注册
         		JSONObject phoneResponse = new DemoParser(HEADS, false).parseResponse(
        -				new JSONRequest(
        -						new Privacy().setPhone(phone)
        -						)
        -				);
        +				(JSONObject) apijson.JSON.parseObject(new Privacy().setPhone(phone))
        +		);
         		if (JSONResponse.isSuccess(phoneResponse) == false) {
        -			renderJson(DemoParser.newResult(phoneResponse.getIntValue(JSONResponse.KEY_CODE), phoneResponse.getString(JSONResponse.KEY_MSG)));
        +			renderJson(parser.newResult(phoneResponse.getIntValue(JSONResponse.KEY_CODE), phoneResponse.getString(JSONResponse.KEY_MSG)));
         			return;
         		}
        -		JSONResponse response = new JSONResponse(phoneResponse).getJSONResponse(PRIVACY_);
        +		JSONResponse response = new JSONResponse(phoneResponse).getJSONResponse(PRIVACY_);
         		if(JSONResponse.isExist(response) == false) {
        -			renderJson(DemoParser.newErrorResult(new NotExistException("手机号未注册")));
        +			renderJson(parser.newErrorResult(new NotExistException("手机号未注册")));
         			return;
         		}
         
         		//根据phone获取User
         		JSONObject privacyResponse = new DemoParser(GETS, false).parseResponse(
        -				new JSONRequest(
        -						new Privacy().setPhone(phone)
        +				(JSONObject) apijson.JSON.parseObject(
        +						new JSONRequest(
        +								new Privacy().setPhone(phone)
         						).setFormat(true)
        -				);
        -		response = new JSONResponse(privacyResponse);
        +				)
        +		);
        +		response = new JSONResponse<>(privacyResponse);
         
         		Privacy privacy = response == null ? null : response.getObject(Privacy.class);
         		long userId = privacy == null ? 0 : BaseModel.value(privacy.getId());
        @@ -587,13 +593,15 @@ public void login() {
         
         		//校验凭证 
         		if (isPassword) {//password密码登录
        -			response = new JSONResponse(
        +			response = new JSONResponse<>(
         					new DemoParser(HEADS, false).parseResponse(
        -							new JSONRequest(new Privacy(userId).setPassword(password))
        +							(JSONObject) apijson.JSON.parseObject(
        +									new Privacy(userId).setPassword(password)
         							)
        -					);
        +					)
        +			);
         		} else {//verify手机验证码登录
        -			response = new JSONResponse(headVerify(Verify.TYPE_LOGIN, phone, password));
        +			response = new JSONResponse<>(headVerify(Verify.TYPE_LOGIN, phone, password));
         		}
         		if (JSONResponse.isSuccess(response) == false) {
         			renderJson(response);
        @@ -601,23 +609,23 @@ public void login() {
         		}
         		response = response.getJSONResponse(isPassword ? PRIVACY_ : VERIFY_);
         		if (JSONResponse.isExist(response) == false) {
        -			renderJson(DemoParser.newErrorResult(new ConditionErrorException("账号或密码错误")));
        +			renderJson(parser.newErrorResult(new ConditionErrorException("账号或密码错误")));
         			return;
         		}
         
        -		response = new JSONResponse(
        +		response = new JSONResponse<>(
         				new DemoParser(GETS, false).parseResponse(
        -						new JSONRequest(  // 兼容 MySQL 5.6 及以下等不支持 json 类型的数据库
        +						JSON.parseObject(new JSONRequest(  // 兼容 MySQL 5.6 及以下等不支持 json 类型的数据库
         								USER_,  // User 里在 setContactIdList(List) 后加 setContactIdList(String) 没用
        -								new apijson.JSONObject(  // fastjson 查到一个就不继续了,所以只能加到前面或者只有这一个,但这样反过来不兼容 5.7+
        +								new JSONRequest(  // fastjson 查到一个就不继续了,所以只能加到前面或者只有这一个,但这样反过来不兼容 5.7+
         										new User(userId)  // 所以就用 @json 来强制转为 JSONArray,保证有效
         										).setJson("contactIdList,pictureList")
         								).setFormat(true)
        -						)
        +						))
         				);
        -		User user = response.getObject(User.class);
        +		User user = (User) response.getObject(User.class, DemoAppConfig.DEFAULT_JSON_PARSER);
         		if (user == null || BaseModel.value(user.getId()) != userId) {
        -			renderJson(DemoParser.newErrorResult(new NullPointerException("服务器内部错误")));
        +			renderJson(parser.newErrorResult(new NullPointerException("服务器内部错误")));
         			return;
         		}
         
        @@ -641,11 +649,12 @@ public void login() {
         	}
         
         	/**退出登录,清空session
        -	 * @param session
         	 * @return
         	 */
         	@Before(POST.class)
         	public void logout() {
        +		DemoParser parser = new DemoParser();
        +
         		HttpSession session = getSession();
         		long userId;
         		try {
        @@ -653,12 +662,12 @@ public void logout() {
         			Log.d(TAG, "logout  userId = " + userId + "; session.getId() = " + (session == null ? null : session.getId()));
         			session.invalidate();
         		} catch (Exception e) {
        -			renderJson(DemoParser.newErrorResult(e));
        +			renderJson(parser.newErrorResult(e));
         			return;
         		}
         
        -		JSONObject result = DemoParser.newSuccessResult();
        -		JSONObject user = DemoParser.newSuccessResult();
        +		JSONObject result = parser.newSuccessResult();
        +		JSONObject user = parser.newSuccessResult();
         		user.put(ID, userId);
         		user.put(COUNT, 1);
         		result.put(StringUtil.firstCase(USER_), user);
        @@ -669,7 +678,6 @@ public void logout() {
         
         	private static final String REGISTER = "register";
         	/**注册
        -	 * @param request 只用String,避免encode后未decode
         	 * @return
         	 * @see
         	 * 
        @@ -687,6 +695,8 @@ public void logout() {
         	 */
         	@Before(POST.class)
         	public void register() {
        +		DemoParser parser = new DemoParser();
        +
         		String request = HttpKit.readData(getRequest());
         		JSONObject requestObject = null;
         
        @@ -696,7 +706,7 @@ public void register() {
         		String verify;
         		String password;
         		try {
        -			requestObject = DemoParser.parseRequest(request);
        +			requestObject = JSON.parseObject(request);
         			privacyObj = requestObject.getJSONObject(PRIVACY_);
         
         			phone = StringUtil.getString(privacyObj.getString(PHONE));
        @@ -716,30 +726,28 @@ public void register() {
         				return;
         			}
         		} catch (Exception e) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, e));
        +			renderJson(parser.extendErrorResult(requestObject, e));
         			return;
         		}
         
         
        -		JSONResponse response = new JSONResponse(headVerify(Verify.TYPE_REGISTER, phone, verify));
        +		JSONResponse response = new JSONResponse<>(headVerify(Verify.TYPE_REGISTER, phone, verify));
         		if (JSONResponse.isSuccess(response) == false) {
         			renderJson(response);
         			return;
         		}
         		//手机号或验证码错误
         		if (JSONResponse.isExist(response.getJSONResponse(VERIFY_)) == false) {
        -			renderJson(DemoParser.extendErrorResult(response, new ConditionErrorException("手机号或验证码错误!")));
        +			renderJson(parser.extendErrorResult(response.toObject(JSONObject.class), new ConditionErrorException("手机号或验证码错误!")));
         			return;
         		}
         
        -
        -
         		//生成User和Privacy
        -		if (StringUtil.isEmpty(requestObject.getString(JSONRequest.KEY_TAG), true)) {
        -			requestObject.put(JSONRequest.KEY_TAG, REGISTER);
        +		if (StringUtil.isEmpty(requestObject.getString(apijson.JSONRequest.KEY_TAG), true)) {
        +			requestObject.put(apijson.JSONRequest.KEY_TAG, REGISTER);
         		}
        -		requestObject.put(JSONRequest.KEY_FORMAT, true);
        -		response = new JSONResponse( 
        +		requestObject.put(apijson.JSONRequest.KEY_FORMAT, true);
        +		response = new JSONResponse<>( 
         				new DemoParser(POST).setNeedVerifyLogin(false).parseResponse(requestObject)
         				);
         
        @@ -755,11 +763,11 @@ public void register() {
         
         		if (e != null) { //出现错误,回退
         			new DemoParser(DELETE, false).parseResponse(
        -					new JSONRequest(new User(userId))
        -					);
        +					JSON.parseObject(new User(userId))
        +			);
         			new DemoParser(DELETE, false).parseResponse(
        -					new JSONRequest(new Privacy(userId2))
        -					);
        +					JSON.parseObject(new Privacy(userId2))
        +			);
         		}
         
         		renderJson(response);
        @@ -783,13 +791,13 @@ public static JSONObject newIllegalArgumentResult(JSONObject requestObject, Stri
         	 */
         	@NotAction
         	public static JSONObject newIllegalArgumentResult(JSONObject requestObject, String key, String msg) {
        -		return DemoParser.extendErrorResult(requestObject
        +		DemoParser parser = new DemoParser();
        +		return parser.extendErrorResult(requestObject
         				, new IllegalArgumentException(key + ":value 中value不合法!" + StringUtil.getString(msg)));
         	}
         
         
         	/**设置密码
        -	 * @param request 只用String,避免encode后未decode
         	 * @return
         	 * @see
         	 * 
        @@ -814,6 +822,8 @@ public static JSONObject newIllegalArgumentResult(JSONObject requestObject, Stri
         	@Before(POST.class)
         	@ActionKey("put/password")
         	public void putPassword() {
        +		DemoParser parser = new DemoParser();
        +
         		String request = HttpKit.readData(getRequest());
         
         		JSONObject requestObject = null;
        @@ -854,18 +864,18 @@ public void putPassword() {
         				}
         			}
         		} catch (Exception e) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, e));
        +			renderJson(parser.extendErrorResult(requestObject, e));
         			return;
         		}
         
         
         		if (StringUtil.isPassword(oldPassword)) {
         			if (userId <= 0) { //手机号+验证码不需要userId
        -				renderJson(DemoParser.extendErrorResult(requestObject, new IllegalArgumentException(ID + ":value 中value不合法!")));
        +				renderJson(parser.extendErrorResult(requestObject, new IllegalArgumentException(ID + ":value 中value不合法!")));
         				return;
         			}
         			if (oldPassword.equals(password)) {
        -				renderJson(DemoParser.extendErrorResult(requestObject, new ConflictException("新旧密码不能一样!")));
        +				renderJson(parser.extendErrorResult(requestObject, new ConflictException("新旧密码不能一样!")));
         				return;
         			}
         
        @@ -876,33 +886,33 @@ public void putPassword() {
         			} else {
         				privacy.setPayPassword(oldPassword);
         			}
        -			JSONResponse response = new JSONResponse( 
        +			JSONResponse response = new JSONResponse<>( 
         					new DemoParser(HEAD, false).parseResponse(
        -							new JSONRequest(privacy).setFormat(true)
        -							)
        -					);
        +							JSON.parseObject(new JSONRequest(privacy).setFormat(true))
        +					)
        +			);
         			if (JSONResponse.isExist(response.getJSONResponse(PRIVACY_)) == false) {
        -				renderJson(DemoParser.extendErrorResult(requestObject, new ConditionErrorException("账号或原密码错误,请重新输入!")));
        +				renderJson(parser.extendErrorResult(requestObject, new ConditionErrorException("账号或原密码错误,请重新输入!")));
         				return;
         			}
         		}
         		else if (StringUtil.isPhone(phone) && StringUtil.isVerify(verify)) {
        -			JSONResponse response = new JSONResponse(headVerify(type, phone, verify));
        +			JSONResponse response = new JSONResponse<>(headVerify(type, phone, verify));
         			if (JSONResponse.isSuccess(response) == false) {
         				renderJson(response);
         				return;
         			}
         			if (JSONResponse.isExist(response.getJSONResponse(VERIFY_)) == false) {
        -				renderJson(DemoParser.extendErrorResult(response, new ConditionErrorException("手机号或验证码错误!")));
        +				renderJson(parser.extendErrorResult(response.toObject(JSONObject.class), new ConditionErrorException("手机号或验证码错误!")));
         				return;
         			}
        -			response = new JSONResponse(
        +			response = new JSONResponse<>(
         					new DemoParser(GET, false).parseResponse(
        -							new JSONRequest(
        +							JSON.parseObject(
         									new Privacy().setPhone(phone)
        -									)
         							)
        -					);
        +					)
        +			);
         			Privacy privacy = response.getObject(Privacy.class);
         			long id = privacy == null ? 0 : BaseModel.value(privacy.getId());
         			privacyObj.remove(PHONE);
        @@ -910,14 +920,14 @@ else if (StringUtil.isPhone(phone) && StringUtil.isVerify(verify)) {
         
         			requestObject.put(PRIVACY_, privacyObj);
         		} else {
        -			renderJson(DemoParser.extendErrorResult(requestObject, new IllegalArgumentException("请输入合法的 旧密码 或 手机号+验证码 !")));
        +			renderJson(parser.extendErrorResult(requestObject, new IllegalArgumentException("请输入合法的 旧密码 或 手机号+验证码 !")));
         			return;
         		}
         		//TODO 上线版加上   password = MD5Util.MD5(password);
         
         
        -		//		requestObject.put(JSONRequest.KEY_TAG, "Password");
        -		requestObject.put(JSONRequest.KEY_FORMAT, true);
        +		//		requestObject.put(apijson.JSONRequest.KEY_TAG, "Password");
        +		requestObject.put(apijson.JSONRequest.KEY_FORMAT, true);
         
         		//修改密码
         		renderJson(new DemoParser(PUT, false).parseResponse(requestObject));
        @@ -926,9 +936,6 @@ else if (StringUtil.isPhone(phone) && StringUtil.isVerify(verify)) {
         
         
         	/**充值/提现
        -	 * @param request 只用String,避免encode后未decode
        -	 * @param session
        -	 * @return
         	 * @see
         	 * 
         		{
        @@ -943,6 +950,8 @@ else if (StringUtil.isPhone(phone) && StringUtil.isVerify(verify)) {
         	@Before(POST.class)
         	@ActionKey("put/balance")
         	public void putBalance() {
        +		DemoParser parser = new DemoParser();
        +
         		String request = HttpKit.readData(getRequest());
         		HttpSession session = getSession();
         		JSONObject requestObject = null;
        @@ -969,21 +978,21 @@ public void putBalance() {
         				throw new IllegalArgumentException(PRIVACY_ + "." + _PAY_PASSWORD + ":value 中value不合法!");
         			}
         		} catch (Exception e) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, e));
        +			renderJson(parser.extendErrorResult(requestObject, e));
         			return;
         		}
         
         		//验证密码<<<<<<<<<<<<<<<<<<<<<<<
         
         		privacyObj.remove("balance+");
        -		JSONResponse response = new JSONResponse(
        +		JSONResponse response = new JSONResponse<>(
         				new DemoParser(HEADS, false).setSession(session).parseResponse(
        -						new JSONRequest(PRIVACY_, privacyObj)
        +						JSON.createJSONObject(PRIVACY_, privacyObj)
         						)
         				);
         		response = response.getJSONResponse(PRIVACY_);
         		if (JSONResponse.isExist(response) == false) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, new ConditionErrorException("支付密码错误!")));
        +			renderJson(parser.extendErrorResult(requestObject, new ConditionErrorException("支付密码错误!")));
         			return;
         		}
         
        @@ -993,33 +1002,33 @@ public void putBalance() {
         		//验证金额范围<<<<<<<<<<<<<<<<<<<<<<<
         
         		if (change == 0) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, new OutOfRangeException("balance+的值不能为0!")));
        +			renderJson(parser.extendErrorResult(requestObject, new OutOfRangeException("balance+的值不能为0!")));
         			return;
         		}
         		if (Math.abs(change) > 10000) {
        -			renderJson(DemoParser.extendErrorResult(requestObject, new OutOfRangeException("单次 充值/提现 的金额不能超过10000元!")));
        +			renderJson(parser.extendErrorResult(requestObject, new OutOfRangeException("单次 充值/提现 的金额不能超过10000元!")));
         			return;
         		}
         
         		//验证金额范围>>>>>>>>>>>>>>>>>>>>>>>>
         
         		if (change < 0) {//提现
        -			response = new JSONResponse(
        +			response = new JSONResponse<>(
         					new DemoParser(GETS, false).parseResponse(
        -							new JSONRequest(
        +							JSON.parseObject(
         									new Privacy(userId)
        -									)
         							)
        -					);
        +					)
        +			);
         			Privacy privacy = response == null ? null : response.getObject(Privacy.class);
         			long id = privacy == null ? 0 : BaseModel.value(privacy.getId());
         			if (id != userId) {
        -				renderJson(DemoParser.extendErrorResult(requestObject, new Exception("服务器内部错误!")));
        +				renderJson(parser.extendErrorResult(requestObject, new Exception("服务器内部错误!")));
         				return;
         			}
         
         			if (BaseModel.value(privacy.getBalance()) < -change) {
        -				renderJson(DemoParser.extendErrorResult(requestObject, new OutOfRangeException("余额不足!")));
        +				renderJson(parser.extendErrorResult(requestObject, new OutOfRangeException("余额不足!")));
         				return;
         			}
         		}
        @@ -1028,8 +1037,8 @@ public void putBalance() {
         		privacyObj.remove(_PAY_PASSWORD);
         		privacyObj.put("balance+", change);
         		requestObject.put(PRIVACY_, privacyObj);
        -		requestObject.put(JSONRequest.KEY_TAG, PRIVACY_);
        -		requestObject.put(JSONRequest.KEY_FORMAT, true);
        +		requestObject.put(apijson.JSONRequest.KEY_TAG, PRIVACY_);
        +		requestObject.put(apijson.JSONRequest.KEY_FORMAT, true);
         		//不免验证,里面会验证身份
         		renderJson(new DemoParser(PUT).setSession(session).parseResponse(requestObject));
         	}
        
        From 2713ed9df15a41cdcd40042380e09bb7f6bb639a Mon Sep 17 00:00:00 2001
        From: TommyLemon 
        Date: Sun, 13 Apr 2025 01:32:17 +0800
        Subject: [PATCH 46/80] =?UTF-8?q?Java=EF=BC=9AMultiDataSource=20=E5=8D=87?=
         =?UTF-8?q?=E7=BA=A7=20APIJSON=208,=20apijson-framework=207.2=20=E5=92=8C?=
         =?UTF-8?q?=20MySQL-JDBC=209.2=EF=BC=8C=E6=9B=B4=E6=96=B0=20APIAuto?=
        MIME-Version: 1.0
        Content-Type: text/plain; charset=UTF-8
        Content-Transfer-Encoding: 8bit
        
        ---
         .../APIJSONBoot-MultiDataSource/pom.xml       |  60 ++--
         .../java/apijson/boot/DemoApplication.java    | 250 +++++++++-------
         .../java/apijson/boot/DemoController.java     | 272 +++++++++---------
         .../java/apijson/boot/FileController.java     |   6 +-
         .../java/apijson/demo/DemoFunctionParser.java |  16 +-
         .../java/apijson/demo/DemoObjectParser.java   |   9 +-
         .../main/java/apijson/demo/DemoParser.java    |  72 +++--
         .../main/java/apijson/demo/DemoSQLConfig.java | 198 ++++++-------
         .../java/apijson/demo/DemoSQLExecutor.java    |  41 +--
         .../main/java/apijson/demo/DemoVerifier.java  |   6 +-
         .../resources/static/api/apijson/CodeUtil.js  |  26 +-
         .../static/api/apijson/JSONRequest.js         |   8 +-
         .../static/api/apijson/JSONResponse.js        |   6 +-
         .../src/main/resources/static/api/index.html  |   6 +-
         .../main/resources/static/api/js/jquery.js    |   4 +-
         .../static/api/js/localforage.min.js          |   2 +-
         .../src/main/resources/static/api/js/main.js  | 106 +++----
         .../main/resources/static/api/js/server.js    |   8 +-
         .../md/lib/codemirror/mode/rust/index.html    |   2 +-
         .../resources/static/api/md/lib/jquery.min.js |   2 +-
         .../src/main/resources/static/sql/README.md   |   2 +-
         .../resources/static/sql/apijson/CodeUtil.js  |  24 +-
         .../static/sql/apijson/JSONRequest.js         |   8 +-
         .../static/sql/apijson/JSONResponse.js        |   4 +-
         .../src/main/resources/static/sql/index.html  |   2 +-
         .../main/resources/static/sql/js/jquery.js    |   4 +-
         .../static/sql/js/localforage.min.js          |   2 +-
         .../src/main/resources/static/sql/js/main.js  | 108 +++----
         .../main/resources/static/sql/js/server.js    |   8 +-
         .../md/lib/codemirror/mode/rust/index.html    |   2 +-
         .../resources/static/sql/md/lib/jquery.min.js |   2 +-
         .../resources/static/ui/apijson/CodeUtil.js   |  22 +-
         .../static/ui/apijson/JSONRequest.js          |   8 +-
         .../static/ui/apijson/JSONResponse.js         |   2 +-
         .../src/main/resources/static/ui/index.html   |   2 +-
         .../src/main/resources/static/ui/js/jquery.js |   4 +-
         .../resources/static/ui/js/localforage.min.js |   2 +-
         .../src/main/resources/static/ui/js/main.js   |  60 ++--
         .../ui/md/lib/codemirror/mode/rust/index.html |   2 +-
         .../resources/static/ui/md/lib/jquery.min.js  |   2 +-
         .../resources/static/unit/apijson/CodeUtil.js |  26 +-
         .../static/unit/apijson/JSONRequest.js        |   8 +-
         .../static/unit/apijson/JSONResponse.js       |   8 +-
         .../src/main/resources/static/unit/index.html |   2 +-
         .../main/resources/static/unit/js/jquery.js   |   4 +-
         .../static/unit/js/localforage.min.js         |   2 +-
         .../src/main/resources/static/unit/js/main.js |  88 +++---
         .../main/resources/static/unit/js/server.js   |   8 +-
         .../md/lib/codemirror/mode/rust/index.html    |   2 +-
         .../static/unit/md/lib/jquery.min.js          |   2 +-
         50 files changed, 815 insertions(+), 705 deletions(-)
        
        diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml
        index dc42bea..3533dad 100755
        --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml
        +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml
        @@ -56,26 +56,44 @@
         
         
                 
        -        
        -            com.github.Tencent
        -            APIJSON
        -            7.5.5
        -        
        -        
        -            com.github.APIJSON
        -            apijson-framework
        -            7.1.7
        -        
        -        
        -            com.github.APIJSON
        -            apijson-column
        -            2.1.5
        -        
        -        
        -            com.github.APIJSON
        -            apijson-router
        -            2.1.7
        -        
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
         
         
         
        @@ -167,7 +185,7 @@
                 
                     com.mysql
                     mysql-connector-j
        -            8.4.0
        +            9.2.0
                 
                 
                     org.postgresql
        diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java
        index 53d9515..cb89f31 100755
        --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java
        +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java
        @@ -14,9 +14,12 @@
         
         package apijson.boot;
         
        +import apijson.JSONParser;
         import apijson.framework.APIJSONSQLConfig;
         import com.alibaba.fastjson.JSON;
        +import com.alibaba.fastjson.JSONArray;
         import com.alibaba.fastjson.JSONObject;
        +import com.alibaba.fastjson.parser.Feature;
         import com.alibaba.fastjson.serializer.PropertyFilter;
         
         import org.springframework.boot.SpringApplication;
        @@ -54,11 +57,11 @@
         import apijson.orm.SQLExecutor;
         import apijson.orm.Verifier;
         import apijson.router.APIJSONRouterApplication;
        -import unitauto.MethodUtil;
        -import unitauto.MethodUtil.Argument;
        -import unitauto.MethodUtil.InstanceGetter;
        -import unitauto.MethodUtil.JSONCallback;
        -import unitauto.jar.UnitAutoApp;
        +//import unitauto.MethodUtil;
        +//import unitauto.MethodUtil.Argument;
        +//import unitauto.MethodUtil.InstanceGetter;
        +//import unitauto.MethodUtil.JSONCallback;
        +//import unitauto.jar.UnitAutoApp;
         
         
         /**
        @@ -91,12 +94,13 @@ public static void main(String[] args) throws Exception {
         
                 // FIXME 不要开放给项目组后端之外的任何人使用 UnitAuto(强制登录鉴权)!!!如果不需要单元测试则移除相关代码或 unitauto.Log.DEBUG = false;
                 // 上线生产环境前改为 false,可不输出 APIJSONORM 的日志 以及 SQLException 的原始(敏感)信息
        -        unitauto.Log.DEBUG = Log.DEBUG = true; // 是否开启调试模式(打印详细日志、返回详细调试信息等)
        +        //unitauto.Log.DEBUG = true;
        +        Log.DEBUG = true; // 是否开启调试模式(打印详细日志、返回详细调试信息等)
                 APIJSONParser.IS_PRINT_BIG_LOG = true; // 是否打印大日志
         //        APIJSONParser.IS_START_FROM_1 = true; // 分页页码是否从 1 开始,true - 从 1 开始;false - 从 0 开始
         //        APIJSONSQLConfig.ENABLE_COLUMN_CONFIG = true; // apijson-framework 已集成字段插件 apijson-column,支持 !key 反选字段 和 字段名映射
        -        APIJSONApplication.init();
        -        APIJSONRouterApplication.init();
        +        APIJSONApplication.init(false);
        +        APIJSONRouterApplication.init(false);
                 System.out.println("\n\n<<<<<<<<< 本 Demo 在 resources/static 内置了 APIAuto,Chrome/Firefox 打开 http://localhost:8080 即可调试(端口号根据项目配置而定) ^_^ >>>>>>>>>\n");
             }
         
        @@ -122,6 +126,7 @@ public void addCorsMappings(CorsRegistry registry) {
                 };
             }
         
        +    private static final JSONParser DEFAULT_JSON_PARSER;
             static {
                 // 把以下需要用到的数据库驱动取消注释即可,如果这里没有可以自己新增
                 //		try { //加载驱动程序
        @@ -239,132 +244,181 @@ public void addCorsMappings(CorsRegistry registry) {
                 COMPILE_MAP.put("EMAIL", StringUtil.PATTERN_EMAIL);
                 COMPILE_MAP.put("ID_CARD", StringUtil.PATTERN_ID_CARD);
         
        -        // 使用本项目的自定义处理类
        -        APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() {
        +        // 使用 fastjson
        +        apijson.JSON.JSON_OBJECT_CLASS = JSONObject.class;
        +        apijson.JSON.JSON_ARRAY_CLASS = JSONArray.class;
        +
        +        final Feature[] DEFAULT_FASTJSON_FEATURES = {Feature.OrderedField, Feature.UseBigDecimal};
        +        apijson.JSON.DEFAULT_JSON_PARSER = DEFAULT_JSON_PARSER = new JSONParser() {
         
                     @Override
        -            public Parser createParser() {
        -                return new DemoParser();
        +            public JSONObject createJSONObject() {
        +                return new JSONObject(true);
                     }
         
                     @Override
        -            public FunctionParser createFunctionParser() {
        -                return new DemoFunctionParser();
        +            public JSONArray createJSONArray() {
        +                return new JSONArray();
                     }
         
                     @Override
        -            public Verifier createVerifier() {
        -                return new DemoVerifier();
        +            public String toJSONString(Object obj, boolean format) {
        +                return obj == null || obj instanceof String ? (String) obj : JSON.toJSONString(obj);
                     }
         
                     @Override
        -            public SQLConfig createSQLConfig() {
        -                return new DemoSQLConfig();
        +            public Object parseJSON(Object json) {
        +                return JSON.parse(toJSONString(json), DEFAULT_FASTJSON_FEATURES);
                     }
         
                     @Override
        -            public SQLExecutor createSQLExecutor() {
        -                return new DemoSQLExecutor();
        +            public JSONObject parseObject(Object json) {
        +                return JSON.parseObject(toJSONString(json), DEFAULT_FASTJSON_FEATURES);
                     }
         
        -        };
        +            @Override
        +            public  T parseObject(Object json, Class clazz) {
        +                return JSON.parseObject(toJSONString(json), clazz, DEFAULT_FASTJSON_FEATURES);
        +            }
         
        -        // APIJSON 配置 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        +            @Override
        +            public JSONArray parseArray(Object json) {
        +                return JSON.parseArray(toJSONString(json));
        +            }
         
        +            @Override
        +            public  List parseArray(Object json, Class clazz) {
        +                return JSON.parseArray(toJSONString(json), clazz);
        +            }
         
        -        // UnitAuto 单元测试配置  https://github.com/TommyLemon/UnitAuto  <<<<<<<<<<<<<<<<<<<<<<<<<<<
        -        // FIXME 不要开放给项目组后端之外的任何人使用 UnitAuto(强制登录鉴权)!!!如果不需要单元测试则移除相关代码或 unitauto.Log.DEBUG = false;
        -        UnitAutoApp.init();
        +        };
         
        -        // 适配 Spring 注入的类及 Context 等环境相关的类
        -        final InstanceGetter ig = MethodUtil.INSTANCE_GETTER;
        -        MethodUtil.INSTANCE_GETTER = new InstanceGetter() {
        +        // 使用本项目的自定义处理类
        +        APIJSONApplication.DEFAULT_APIJSON_CREATOR = new APIJSONCreator() {
         
                     @Override
        -            public Object getInstance(@NotNull Class clazz, List classArgs, Boolean reuse) throws Exception {
        -                if (APPLICATION_CONTEXT != null && ApplicationContext.class.isAssignableFrom(clazz) && clazz.isAssignableFrom(APPLICATION_CONTEXT.getClass())) {
        -                    return APPLICATION_CONTEXT;
        -                }
        -
        -                if (reuse != null && reuse && (classArgs == null || classArgs.isEmpty())) {
        -                    return APPLICATION_CONTEXT.getBean(clazz);
        -                }
        -
        -                return ig.getInstance(clazz, classArgs, reuse);
        +            public DemoParser createParser() {
        +                return new DemoParser();
                     }
        -        };
         
        -        // 排除转换 JSON 异常的类,一般是 Context 等环境相关的类
        -        final JSONCallback jc = MethodUtil.JSON_CALLBACK;
        -        MethodUtil.JSON_CALLBACK = new JSONCallback() {
        +            @Override
        +            public DemoFunctionParser createFunctionParser() {
        +                return new DemoFunctionParser();
        +            }
         
                     @Override
        -            public JSONObject newSuccessResult() {
        -                return jc.newSuccessResult();
        +            public DemoVerifier createVerifier() {
        +                return new DemoVerifier();
                     }
         
                     @Override
        -            public JSONObject newErrorResult(Throwable e) {
        -                return jc.newErrorResult(e);
        +            public DemoSQLConfig createSQLConfig() {
        +                return new DemoSQLConfig();
                     }
         
                     @Override
        -            public JSONObject parseJSON(String type, Object value) {
        -                if (value == null || unitauto.JSON.isBooleanOrNumberOrString(value) || value instanceof JSON || value instanceof Enum) {
        -                    return jc.parseJSON(type, value);
        -                }
        -
        -                if (value instanceof ApplicationContext
        -                        || value instanceof Context
        -                        || value instanceof org.apache.catalina.Context
        -                    // SpringBoot 2.6.7 已移除  || value instanceof ch.qos.logback.core.Context
        -                ) {
        -                    value = value.toString();
        -                } else {
        -                    try {
        -                        value = JSON.parse(JSON.toJSONString(value, new PropertyFilter() {
        -                            @Override
        -                            public boolean apply(Object object, String name, Object value) {
        -                                if (value == null) {
        -                                    return true;
        -                                }
        -
        -                                if (value instanceof ApplicationContext
        -                                        || value instanceof Context
        -                                        || value instanceof org.apache.catalina.Context
        -                                    // SpringBoot 2.6.7 已移除  || value instanceof ch.qos.logback.core.Context
        -                                ) {
        -                                    return false;
        -                                }
        -
        -                                // 防止通过 UnitAuto 远程执行 getDBPassword 等方法来查到敏感信息,但如果直接调用 public String getDBUri 这里没法拦截,仍然会返回敏感信息
        -                                //	if (object instanceof SQLConfig) {
        -                                //		// 这个类部分方法不序列化返回
        -                                //		if ("dBUri".equalsIgnoreCase(name) || "dBPassword".equalsIgnoreCase(name) || "dBAccount".equalsIgnoreCase(name)) {
        -                                //			return false;
        -                                //		}
        -                                //		return false;  // 这个类所有方法都不序列化返回
        -                                //	}
        -
        -                                // 所有类中的方法只要包含关键词就不序列化返回
        -                                String n = StringUtil.toLowerCase(name);
        -                                if (n.contains("database") || n.contains("schema") || n.contains("dburi") || n.contains("password") || n.contains("account")) {
        -                                    return false;
        -                                }
        -
        -                                return Modifier.isPublic(value.getClass().getModifiers());
        -                            }
        -                        }));
        -                    } catch (Exception e) {
        -                        Log.e(TAG, "toJSONString  catch \n" + e.getMessage());
        -                    }
        -                }
        -
        -                return jc.parseJSON(type, value);
        +            public DemoSQLExecutor createSQLExecutor() {
        +                return new DemoSQLExecutor();
                     }
         
                 };
         
        +        // APIJSON 配置 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        +
        +
        +        // UnitAuto 单元测试配置  https://github.com/TommyLemon/UnitAuto  <<<<<<<<<<<<<<<<<<<<<<<<<<<
        +        // FIXME 不要开放给项目组后端之外的任何人使用 UnitAuto(强制登录鉴权)!!!如果不需要单元测试则移除相关代码或 unitauto.Log.DEBUG = false;
        +        //UnitAutoApp.init();
        +
        +        // 适配 Spring 注入的类及 Context 等环境相关的类
        +        //final InstanceGetter ig = MethodUtil.INSTANCE_GETTER;
        +        //MethodUtil.INSTANCE_GETTER = new InstanceGetter() {
        +        //
        +        //    @Override
        +        //    public Object getInstance(@NotNull Class clazz, List classArgs, Boolean reuse) throws Exception {
        +        //        if (APPLICATION_CONTEXT != null && ApplicationContext.class.isAssignableFrom(clazz) && clazz.isAssignableFrom(APPLICATION_CONTEXT.getClass())) {
        +        //            return APPLICATION_CONTEXT;
        +        //        }
        +        //
        +        //        if (reuse != null && reuse && (classArgs == null || classArgs.isEmpty())) {
        +        //            return APPLICATION_CONTEXT.getBean(clazz);
        +        //        }
        +        //
        +        //        return ig.getInstance(clazz, classArgs, reuse);
        +        //    }
        +        //};
        +        //
        +        //// 排除转换 JSON 异常的类,一般是 Context 等环境相关的类
        +        //final JSONCallback jc = MethodUtil.JSON_CALLBACK;
        +        //MethodUtil.JSON_CALLBACK = new JSONCallback() {
        +        //
        +        //    @Override
        +        //    public JSONObject newSuccessResult() {
        +        //        return jc.newSuccessResult();
        +        //    }
        +        //
        +        //    @Override
        +        //    public JSONObject newErrorResult(Throwable e) {
        +        //        return jc.newErrorResult(e);
        +        //    }
        +        //
        +        //    @Override
        +        //    public JSONObject parseJSON(String type, Object value) {
        +        //        if (value == null || unitauto.JSON.isBooleanOrNumberOrString(value) || value instanceof JSON || value instanceof Enum) {
        +        //            return jc.parseJSON(type, value);
        +        //        }
        +        //
        +        //        if (value instanceof ApplicationContext
        +        //                || value instanceof Context
        +        //                || value instanceof org.apache.catalina.Context
        +        //            // SpringBoot 2.6.7 已移除  || value instanceof ch.qos.logback.core.Context
        +        //        ) {
        +        //            value = value.toString();
        +        //        } else {
        +        //            try {
        +        //                value = parseJSON(JSON.toJSONString(value, new PropertyFilter() {
        +        //                    @Override
        +        //                    public boolean apply(Object object, String name, Object value) {
        +        //                        if (value == null) {
        +        //                            return true;
        +        //                        }
        +        //
        +        //                        if (value instanceof ApplicationContext
        +        //                                || value instanceof Context
        +        //                                || value instanceof org.apache.catalina.Context
        +        //                            // SpringBoot 2.6.7 已移除  || value instanceof ch.qos.logback.core.Context
        +        //                        ) {
        +        //                            return false;
        +        //                        }
        +        //
        +        //                        // 防止通过 UnitAuto 远程执行 getDBPassword 等方法来查到敏感信息,但如果直接调用 public String getDBUri 这里没法拦截,仍然会返回敏感信息
        +        //                        //	if (object instanceof SQLConfig) {
        +        //                        //		// 这个类部分方法不序列化返回
        +        //                        //		if ("dBUri".equalsIgnoreCase(name) || "dBPassword".equalsIgnoreCase(name) || "dBAccount".equalsIgnoreCase(name)) {
        +        //                        //			return false;
        +        //                        //		}
        +        //                        //		return false;  // 这个类所有方法都不序列化返回
        +        //                        //	}
        +        //
        +        //                        // 所有类中的方法只要包含关键词就不序列化返回
        +        //                        String n = StringUtil.toLowerCase(name);
        +        //                        if (n.contains("database") || n.contains("schema") || n.contains("dburi") || n.contains("password") || n.contains("account")) {
        +        //                            return false;
        +        //                        }
        +        //
        +        //                        return Modifier.isPublic(value.getClass().getModifiers());
        +        //                    }
        +        //                }));
        +        //            } catch (Exception e) {
        +        //                Log.e(TAG, "toJSONString  catch \n" + e.getMessage());
        +        //            }
        +        //        }
        +        //
        +        //        return jc.parseJSON(type, value);
        +        //    }
        +        //
        +        //};
        +
                 // UnitAuto 单元测试配置  https://github.com/TommyLemon/UnitAuto  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
         
             }
        diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java
        index 764f707..c84429a 100644
        --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java
        +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java
        @@ -14,13 +14,10 @@
         
         package apijson.boot;
         
        -import apijson.orm.AbstractParser;
        -import apijson.orm.Parser;
        +import apijson.framework.APIJSONParser;
         import apijson.orm.exception.*;
         import com.alibaba.fastjson.JSONArray;
         import com.alibaba.fastjson.JSONObject;
        -import com.alibaba.fastjson.serializer.SerializerFeature;
        -import com.alibaba.fastjson.serializer.ValueFilter;
         import com.fasterxml.jackson.databind.util.LRUMap;
         
         import org.springframework.beans.factory.annotation.Autowired;
        @@ -28,11 +25,9 @@
         import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
         import org.springframework.stereotype.Service;
         import org.springframework.web.bind.annotation.*;
        -import org.springframework.web.client.HttpClientErrorException;
         import org.springframework.web.client.RestClientResponseException;
         import org.springframework.web.client.RestTemplate;
         
        -import java.io.IOException;
         import java.lang.reflect.Array;
         import java.net.URLDecoder;
         import java.net.URLEncoder;
        @@ -64,11 +59,11 @@
         import apijson.demo.model.Verify;
         import apijson.framework.BaseModel;
         import apijson.orm.JSONRequest;
        -import apijson.orm.model.TestRecord;
         import apijson.router.APIJSONRouterController;
        -import org.springframework.web.servlet.ModelAndView;
         import unitauto.MethodUtil;
         
        +import static apijson.JSON.getString;
        +import static apijson.JSON.parseJSON;
         import static apijson.RequestMethod.DELETE;
         import static apijson.RequestMethod.GET;
         import static apijson.RequestMethod.GETS;
        @@ -82,14 +77,13 @@
         import static apijson.framework.APIJSONConstant.FUNCTION_;
         import static apijson.framework.APIJSONConstant.ID;
         import static apijson.framework.APIJSONConstant.REQUEST_;
        -import static apijson.framework.APIJSONConstant.TEST_RECORD_;
         import static apijson.framework.APIJSONConstant.USER_ID;
         import static apijson.framework.APIJSONConstant.VERSION;
         import static org.springframework.http.HttpHeaders.COOKIE;
         import static org.springframework.http.HttpHeaders.SET_COOKIE;
         
         
        -/**请求路由入口控制器,包括通用增删改查接口等,转交给 APIJSON 的 Parser 来处理
        +/**请求路由入口控制器,包括通用增删改查接口等,转交给 APIJSON 的 Parser 来处理
          * 具体见 SpringBoot 文档
          * https://www.springcloud.cc/spring-boot.html#boot-features-spring-mvc
          * 以及 APIJSON 通用文档 3.设计规范 3.1 操作方法
        @@ -103,7 +97,7 @@
         @Service
         @RestController
         @RequestMapping("")
        -public class DemoController extends APIJSONRouterController {  // APIJSONController {
        +public class DemoController extends APIJSONRouterController {  // APIJSONController {
             private static final String TAG = "DemoController";
         
             public String getRequestBaseURL() {
        @@ -137,7 +131,7 @@ public String getRequestURL() {
             }
         
               @Override
        -      public Parser newParser(HttpSession session, RequestMethod method) {
        +      public APIJSONParser newParser(HttpSession session, RequestMethod method) {
                   return super.newParser(session, method).setNeedVerify(false);
               }
         
        @@ -385,7 +379,7 @@ public String openGet(@PathVariable("request") String request, HttpSession sessi
                 try {
                     request = URLDecoder.decode(request, StringUtil.UTF_8);
                 } catch (Exception e) {
        -            // Parser 会报错
        +            // Parser 会报错
                 }
         
                 if (! Log.DEBUG) { // 一般情况这样简单使用
        @@ -397,7 +391,7 @@ public String openGet(@PathVariable("request") String request, HttpSession sessi
                 try {
                     String url = getRequestURL();
         
        -            String query = StringUtil.getTrimedString(httpServletRequest.getQueryString());
        +            String query = StringUtil.trim(httpServletRequest.getQueryString());
                     if (StringUtil.isNotEmpty(query)) {
                         try {
                             query = "?" + URLEncoder.encode(query, StringUtil.UTF_8);
        @@ -543,16 +537,16 @@ public JSONObject reload(@RequestBody String request) {
                     phone = requestObject.getString(PHONE);
                     verify = requestObject.getString(VERIFY);
                 } catch (Exception e) {
        -            return DemoParser.extendErrorResult(requestObject, e);
        +            return new DemoParser().extendErrorResult(requestObject, e);
                 }
         
                 JSONResponse response = new JSONResponse(headVerify(Verify.TYPE_RELOAD, phone, verify));
                 response = response.getJSONResponse(VERIFY_);
                 if (JSONResponse.isExist(response) == false) {
        -            return DemoParser.extendErrorResult(requestObject, new ConditionErrorException("手机号或验证码错误"));
        +            return new DemoParser().extendErrorResult(requestObject, new ConditionErrorException("手机号或验证码错误"));
                 }
         
        -        JSONObject result = DemoParser.newSuccessResult();
        +        JSONObject result = new DemoParser().newSuccessResult();
         
                 boolean reloadAll = StringUtil.isEmpty(type, true) || "ALL".equals(type);
         
        @@ -561,7 +555,7 @@ public JSONObject reload(@RequestBody String request) {
                         result.put(ACCESS_, DemoVerifier.initAccess(false, null, value));
                     } catch (ServerException e) {
                         e.printStackTrace();
        -                result.put(ACCESS_, DemoParser.newErrorResult(e));
        +                result.put(ACCESS_, new DemoParser().newErrorResult(e));
                     }
                 }
         
        @@ -570,7 +564,7 @@ public JSONObject reload(@RequestBody String request) {
                         result.put(FUNCTION_, DemoFunctionParser.init(false, null, value));
                     } catch (ServerException e) {
                         e.printStackTrace();
        -                result.put(FUNCTION_, DemoParser.newErrorResult(e));
        +                result.put(FUNCTION_, new DemoParser().newErrorResult(e));
                     }
                 }
         
        @@ -579,7 +573,7 @@ public JSONObject reload(@RequestBody String request) {
                         result.put(REQUEST_, DemoVerifier.initRequest(false, null, value));
                     } catch (ServerException e) {
                         e.printStackTrace();
        -                result.put(REQUEST_, DemoParser.newErrorResult(e));
        +                result.put(REQUEST_, new DemoParser().newErrorResult(e));
                     }
                 }
         
        @@ -606,7 +600,7 @@ public JSONObject postVerify(@RequestBody String request) {
                     type = requestObject.getIntValue(TYPE);
                     phone = requestObject.getString(PHONE);
                 } catch (Exception e) {
        -            return DemoParser.extendErrorResult(requestObject, e);
        +            return new DemoParser().extendErrorResult(requestObject, e);
                 }
         
                 new DemoParser(DELETE, false).parse(newVerifyRequest(type, phone, null));
        @@ -617,7 +611,7 @@ public JSONObject postVerify(@RequestBody String request) {
         
         
                 if (JSONResponse.isSuccess(response) == false) {
        -            new DemoParser(DELETE, false).parseResponse(new JSONRequest(new Verify(type, phone)));
        +            new DemoParser(DELETE, false).parseResponse((JSONObject) JSON.parseObject(new Verify(type, phone)));
                     return response;
                 }
         
        @@ -648,7 +642,7 @@ public JSONObject getVerify(@RequestBody String request) {
                     type = requestObject.getIntValue(TYPE);
                     phone = requestObject.getString(PHONE);
                 } catch (Exception e) {
        -            return DemoParser.extendErrorResult(requestObject, e);
        +            return new DemoParser().extendErrorResult(requestObject, e);
                 }
                 return new DemoParser(GETS, false).parseResponse(newVerifyRequest(type, phone, null));
             }
        @@ -676,7 +670,7 @@ public JSONObject headVerify(@RequestBody String request) {
                     phone = requestObject.getString(PHONE);
                     verify = requestObject.getString(VERIFY);
                 } catch (Exception e) {
        -            return DemoParser.extendErrorResult(requestObject, e);
        +            return new DemoParser().extendErrorResult(requestObject, e);
                 }
                 return headVerify(type, phone, verify);
             }
        @@ -689,17 +683,17 @@ public JSONObject headVerify(@RequestBody String request) {
              * @return
              */
             public JSONObject headVerify(int type, String phone, String code) {
        -        JSONResponse response = new JSONResponse(
        +        JSONResponse response = new JSONResponse<>(
                         new DemoParser(GETS, false).parseResponse(
        -                        new JSONRequest(
        +                        (JSONObject) JSON.createJSONObject(new JSONRequest(
                                         new Verify(type, phone)
                                                 .setVerify(code)
        -                        ).setTag(VERIFY_)
        +                        ).setTag(VERIFY_))
                         )
                 );
                 Verify verify = response.getObject(Verify.class);
                 if (verify == null) {
        -            return DemoParser.newErrorResult(StringUtil.isEmpty(code, true)
        +            return new DemoParser().newErrorResult(StringUtil.isEmpty(code, true)
                             ? new NotExistException("验证码不存在!") : new ConditionErrorException("手机号或验证码错误!"));
                 }
         
        @@ -708,16 +702,22 @@ public JSONObject headVerify(int type, String phone, String code) {
                 long now = System.currentTimeMillis();
                 if (now > 60*1000 + time) {
                     new DemoParser(DELETE, false).parseResponse(
        -                    new JSONRequest(new Verify(type, phone)).setTag(VERIFY_)
        +                    (JSONObject) JSON.createJSONObject(
        +                            new JSONRequest(
        +                                new JSONRequest(new Verify(type, phone)).setTag(VERIFY_)
        +                            )
        +                    )
                     );
        -            return DemoParser.newErrorResult(new TimeoutException("验证码已过期!"));
        +            return new DemoParser().newErrorResult(new TimeoutException("验证码已过期!"));
                 }
         
        -        return new JSONResponse(
        +        return new JSONResponse(
                         new DemoParser(HEADS, false).parseResponse(
        -                        new JSONRequest(new Verify(type, phone).setVerify(code)).setFormat(true)
        +                        (JSONObject) JSON.createJSONObject(new JSONRequest(
        +                            new JSONRequest(new Verify(type, phone).setVerify(code)).setFormat(true)
        +                        )
                         )
        -        );
        +        )).toObject(JSONObject.class);
             }
         
         
        @@ -727,8 +727,12 @@ public JSONObject headVerify(int type, String phone, String code) {
              * @param verify
              * @return
              */
        -    private apijson.JSONRequest newVerifyRequest(int type, String phone, String verify) {
        -        return new JSONRequest(new Verify(type, phone).setVerify(verify)).setTag(VERIFY_).setFormat(true);
        +    private JSONObject newVerifyRequest(int type, String phone, String verify) {
        +        return JSON.createJSONObject(
        +                new JSONRequest(
        +                        new Verify(type, phone).setVerify(verify)
        +                ).setTag(VERIFY_).setFormat(true)
        +        );
             }
         
         
        @@ -752,7 +756,7 @@ private apijson.JSONRequest newVerifyRequest(int type, String phone, String veri
             }
              * 
        */ - @PostMapping(LOGIN) //TODO 改 SQLConfig 里的 dbAccount, dbPassword,直接用数据库鉴权 + @PostMapping(LOGIN) //TODO 改 SQLConfig 里的 dbAccount, dbPassword,直接用数据库鉴权 public JSONObject login(@RequestBody String request, HttpSession session) { JSONObject requestObject = null; boolean isPassword; @@ -794,31 +798,33 @@ public JSONObject login(@RequestBody String request, HttpSession session) { requestObject.remove(REMEMBER); requestObject.remove(DEFAULTS); } catch (Exception e) { - return DemoParser.extendErrorResult(requestObject, e); + return new DemoParser().extendErrorResult(requestObject, e); } //手机号是否已注册 JSONObject phoneResponse = new DemoParser(HEADS, false).parseResponse( - new JSONRequest( - new Privacy().setPhone(phone) + (JSONObject) JSON.createJSONObject( + new JSONRequest(new Privacy().setPhone(phone)) ) ); if (JSONResponse.isSuccess(phoneResponse) == false) { - return DemoParser.newResult(phoneResponse.getIntValue(JSONResponse.KEY_CODE), phoneResponse.getString(JSONResponse.KEY_MSG)); + return new DemoParser().newResult(phoneResponse.getIntValue(JSONResponse.KEY_CODE), getString(phoneResponse, JSONResponse.KEY_MSG)); } - JSONResponse response = new JSONResponse(phoneResponse).getJSONResponse(PRIVACY_); + JSONResponse response = new JSONResponse(phoneResponse).getJSONResponse(PRIVACY_); if(JSONResponse.isExist(response) == false) { - return DemoParser.newErrorResult(new NotExistException("手机号未注册")); + return new DemoParser().newErrorResult(new NotExistException("手机号未注册")); } //根据phone获取User JSONObject privacyResponse = new DemoParser(GETS, false).parseResponse( - new JSONRequest( - new Privacy().setPhone(phone) - ).setFormat(true) + (JSONObject) JSON.createJSONObject( + new JSONRequest( + new Privacy().setPhone(phone) + ).setFormat(true) + ) ); - response = new JSONResponse(privacyResponse); + response = new JSONResponse<>(privacyResponse); Privacy privacy = response == null ? null : response.getObject(Privacy.class); long userId = privacy == null ? 0 : BaseModel.value(privacy.getId()); @@ -828,35 +834,39 @@ public JSONObject login(@RequestBody String request, HttpSession session) { //校验凭证 if (isPassword) { //password 密码登录 - response = new JSONResponse( + response = new JSONResponse<>( new DemoParser(HEADS, false).parseResponse( - new JSONRequest(new Privacy(userId).setPassword(password)) + (JSONObject) JSON.createJSONObject( + new JSONRequest(new Privacy(userId).setPassword(password)) + ) ) ); } else {//verify手机验证码登录 - response = new JSONResponse(headVerify(Verify.TYPE_LOGIN, phone, password)); + response = new JSONResponse<>(headVerify(Verify.TYPE_LOGIN, phone, password)); } if (JSONResponse.isSuccess(response) == false) { - return response; + return response.toObject(JSONObject.class); } response = response.getJSONResponse(isPassword ? PRIVACY_ : VERIFY_); if (JSONResponse.isExist(response) == false) { - return DemoParser.newErrorResult(new ConditionErrorException("账号或密码错误")); + return new DemoParser().newErrorResult(new ConditionErrorException("账号或密码错误")); } - response = new JSONResponse( + response = new JSONResponse<>( new DemoParser(GETS, false).parseResponse( - new JSONRequest( // 兼容 MySQL 5.6 及以下等不支持 json 类型的数据库 - USER_, // User 里在 setContactIdList(List) 后加 setContactIdList(String) 没用 - new apijson.JSONObject( // fastjson 查到一个就不继续了,所以只能加到前面或者只有这一个,但这样反过来不兼容 5.7+ - new User(userId) // 所以就用 @json 来强制转为 JSONArray,保证有效 - ).setJson("contactIdList,pictureList") - ).setFormat(true) + (JSONObject) JSON.createJSONObject( + new JSONRequest( // 兼容 MySQL 5.6 及以下等不支持 json 类型的数据库 + USER_, // User 里在 setContactIdList(List) 后加 setContactIdList(String) 没用 + new apijson.JSONObject( // fastjson 查到一个就不继续了,所以只能加到前面或者只有这一个,但这样反过来不兼容 5.7+ + new User(userId) // 所以就用 @json 来强制转为 JSONArray,保证有效 + ).setJson("contactIdList,pictureList") + ).setFormat(true) + ) ) ); User user = response.getObject(User.class); if (user == null || BaseModel.value(user.getId()) != userId) { - return DemoParser.newErrorResult(new NullPointerException("服务器内部错误")); + return new DemoParser().newErrorResult(new NullPointerException("服务器内部错误")); } //登录状态保存至session @@ -871,7 +881,7 @@ public JSONObject login(@RequestBody String request, HttpSession session) { response.put(REMEMBER, remember); response.put(DEFAULTS, defaults); - return response; + return JSON.createJSONObject(response); } /**退出登录,清空session @@ -889,11 +899,11 @@ public JSONObject logout(HttpSession session) { Log.d(TAG, "logout userId = " + userId + "; session.getId() = " + (session == null ? null : session.getId())); super.logout(session); } catch (Exception e) { - return DemoParser.newErrorResult(e); + return new DemoParser().newErrorResult(e); } - JSONObject result = DemoParser.newSuccessResult(); - JSONObject user = DemoParser.newSuccessResult(); + JSONObject result = new DemoParser().newSuccessResult(); + JSONObject user = new DemoParser().newSuccessResult(); user.put(ID, userId); user.put(COUNT, 1); result.put(StringUtil.firstCase(USER_), user); @@ -933,7 +943,7 @@ public JSONObject register(@RequestBody String request) { requestObject = DemoParser.parseRequest(request); privacyObj = requestObject.getJSONObject(PRIVACY_); - phone = StringUtil.getString(privacyObj.getString(PHONE)); + phone = StringUtil.get(privacyObj.getString(PHONE)); verify = requestObject.getString(VERIFY); password = privacyObj.getString(_PASSWORD); @@ -947,17 +957,17 @@ public JSONObject register(@RequestBody String request) { return newIllegalArgumentResult(requestObject, VERIFY); } } catch (Exception e) { - return DemoParser.extendErrorResult(requestObject, e); + return new DemoParser().extendErrorResult(requestObject, e); } - JSONResponse response = new JSONResponse(headVerify(Verify.TYPE_REGISTER, phone, verify)); + JSONResponse response = new JSONResponse<>(headVerify(Verify.TYPE_REGISTER, phone, verify)); if (JSONResponse.isSuccess(response) == false) { - return response; + return JSON.createJSONObject(response); } //手机号或验证码错误 if (JSONResponse.isExist(response.getJSONResponse(VERIFY_)) == false) { - return DemoParser.extendErrorResult(response, new ConditionErrorException("手机号或验证码错误!")); + return new DemoParser().extendErrorResult(JSON.createJSONObject(response), new ConditionErrorException("手机号或验证码错误!")); } @@ -983,14 +993,14 @@ public JSONObject register(@RequestBody String request) { if (e != null) { //出现错误,回退 new DemoParser(DELETE, false).parseResponse( - new JSONRequest(new User(userId)) + (JSONObject) apijson.JSON.parseObject(new User(userId)) ); new DemoParser(DELETE, false).parseResponse( - new JSONRequest(new Privacy(userId2)) + (JSONObject) apijson.JSON.parseObject(new Privacy(userId2)) ); } - return response; + return JSON.createJSONObject(response); } @@ -1009,8 +1019,8 @@ public static JSONObject newIllegalArgumentResult(JSONObject requestObject, Stri * @return */ public static JSONObject newIllegalArgumentResult(JSONObject requestObject, String key, String msg) { - return DemoParser.extendErrorResult(requestObject - , new IllegalArgumentException(key + ":value 中value不合法!" + StringUtil.getString(msg))); + return new DemoParser().extendErrorResult(requestObject + , new IllegalArgumentException(key + ":value 中value不合法!" + StringUtil.get(msg))); } @@ -1051,8 +1061,8 @@ public JSONObject putPassword(@RequestBody String request){ String password; try { requestObject = DemoParser.parseRequest(request); - oldPassword = StringUtil.getString(requestObject.getString(OLD_PASSWORD)); - verify = StringUtil.getString(requestObject.getString(VERIFY)); + oldPassword = StringUtil.get(requestObject.getString(OLD_PASSWORD)); + verify = StringUtil.get(requestObject.getString(VERIFY)); requestObject.remove(OLD_PASSWORD); requestObject.remove(VERIFY); @@ -1077,16 +1087,16 @@ public JSONObject putPassword(@RequestBody String request){ } } } catch (Exception e) { - return DemoParser.extendErrorResult(requestObject, e); + return new DemoParser().extendErrorResult(requestObject, e); } if (StringUtil.isPassword(oldPassword)) { if (userId <= 0) { //手机号+验证码不需要userId - return DemoParser.extendErrorResult(requestObject, new IllegalArgumentException(ID + ":value 中value不合法!")); + return new DemoParser().extendErrorResult(requestObject, new IllegalArgumentException(ID + ":value 中value不合法!")); } if (oldPassword.equals(password)) { - return DemoParser.extendErrorResult(requestObject, new ConflictException("新旧密码不能一样!")); + return new DemoParser().extendErrorResult(requestObject, new ConflictException("新旧密码不能一样!")); } //验证旧密码 @@ -1098,24 +1108,24 @@ public JSONObject putPassword(@RequestBody String request){ } JSONResponse response = new JSONResponse( new DemoParser(HEAD, false).parseResponse( - new JSONRequest(privacy).setFormat(true) + (JSONObject) JSON.createJSONObject(new JSONRequest(privacy).setFormat(true)) ) ); if (JSONResponse.isExist(response.getJSONResponse(PRIVACY_)) == false) { - return DemoParser.extendErrorResult(requestObject, new ConditionErrorException("账号或原密码错误,请重新输入!")); + return new DemoParser().extendErrorResult(requestObject, new ConditionErrorException("账号或原密码错误,请重新输入!")); } } else if (StringUtil.isPhone(phone) && StringUtil.isVerify(verify)) { - JSONResponse response = new JSONResponse(headVerify(type, phone, verify)); + JSONResponse response = new JSONResponse(headVerify(type, phone, verify)); if (JSONResponse.isSuccess(response) == false) { - return response; + return JSON.createJSONObject(response); } if (JSONResponse.isExist(response.getJSONResponse(VERIFY_)) == false) { - return DemoParser.extendErrorResult(response, new ConditionErrorException("手机号或验证码错误!")); + return new DemoParser().extendErrorResult(JSON.createJSONObject(response), new ConditionErrorException("手机号或验证码错误!")); } - response = new JSONResponse( + response = new JSONResponse<>( new DemoParser(GET, false).parseResponse( - new JSONRequest( + (JSONObject) JSON.parseObject( new Privacy().setPhone(phone) ) ) @@ -1127,7 +1137,7 @@ else if (StringUtil.isPhone(phone) && StringUtil.isVerify(verify)) { requestObject.put(PRIVACY_, privacyObj); } else { - return DemoParser.extendErrorResult(requestObject, new IllegalArgumentException("请输入合法的 旧密码 或 手机号+验证码 !")); + return new DemoParser().extendErrorResult(requestObject, new IllegalArgumentException("请输入合法的 旧密码 或 手机号+验证码 !")); } //TODO 上线版加上 password = MD5Util.MD5(password); @@ -1181,20 +1191,20 @@ public JSONObject putBalance(@RequestBody String request, HttpSession session) { throw new IllegalArgumentException(PRIVACY_ + "." + _PAY_PASSWORD + ":value 中value不合法!"); } } catch (Exception e) { - return DemoParser.extendErrorResult(requestObject, e); + return new DemoParser().extendErrorResult(requestObject, e); } //验证密码<<<<<<<<<<<<<<<<<<<<<<< privacyObj.remove("balance+"); - JSONResponse response = new JSONResponse( + JSONResponse response = new JSONResponse<>( new DemoParser(HEADS, false).setSession(session).parseResponse( - new JSONRequest(PRIVACY_, privacyObj) + (JSONObject) JSON.createJSONObject(PRIVACY_, privacyObj) ) ); response = response.getJSONResponse(PRIVACY_); if (JSONResponse.isExist(response) == false) { - return DemoParser.extendErrorResult(requestObject, new ConditionErrorException("支付密码错误!")); + return new DemoParser().extendErrorResult(requestObject, new ConditionErrorException("支付密码错误!")); } //验证密码>>>>>>>>>>>>>>>>>>>>>>>> @@ -1203,30 +1213,30 @@ public JSONObject putBalance(@RequestBody String request, HttpSession session) { //验证金额范围<<<<<<<<<<<<<<<<<<<<<<< if (change == 0) { - return DemoParser.extendErrorResult(requestObject, new OutOfRangeException("balance+的值不能为0!")); + return new DemoParser().extendErrorResult(requestObject, new OutOfRangeException("balance+的值不能为0!")); } if (Math.abs(change) > 10000) { - return DemoParser.extendErrorResult(requestObject, new OutOfRangeException("单次 充值/提现 的金额不能超过10000元!")); + return new DemoParser().extendErrorResult(requestObject, new OutOfRangeException("单次 充值/提现 的金额不能超过10000元!")); } //验证金额范围>>>>>>>>>>>>>>>>>>>>>>>> if (change < 0) {//提现 - response = new JSONResponse( + response = new JSONResponse<>( new DemoParser(GETS, false).parseResponse( - new JSONRequest( + (JSONObject) JSON.parseObject( new Privacy(userId) ) ) ); - Privacy privacy = response == null ? null : response.getObject(Privacy.class); + Privacy privacy = response.getObject(Privacy.class); long id = privacy == null ? 0 : BaseModel.value(privacy.getId()); if (id != userId) { - return DemoParser.extendErrorResult(requestObject, new Exception("服务器内部错误!")); + return new DemoParser().extendErrorResult(requestObject, new Exception("服务器内部错误!")); } if (BaseModel.value(privacy.getBalance()) < -change) { - return DemoParser.extendErrorResult(requestObject, new OutOfRangeException("余额不足!")); + return new DemoParser().extendErrorResult(requestObject, new OutOfRangeException("余额不足!")); } } @@ -1304,7 +1314,7 @@ public String delegate( HttpMethod method, HttpSession session ) { if (Log.DEBUG == false) { - return DemoParser.newErrorResult(new IllegalAccessException("非 DEBUG 模式下不允许使用服务器代理!")).toJSONString(); + return new DemoParser().newErrorResult(new IllegalAccessException("非 DEBUG 模式下不允许使用服务器代理!")).toJSONString(); } int recordType = record != null ? record : (REQUEST_RECORD_TYPE != null ? REQUEST_RECORD_TYPE : 0); @@ -1424,10 +1434,10 @@ else if (body != null && "DATA".equals(type)) { // if (StringUtil.isNotEmpty(bod hm.put(name, h); try { - com.alibaba.fastjson.JSON.parse(h); + JSON.parseJSON(h); } catch (Throwable e) { Log.e(TAG, "delegate try {\n" + - " JSON.parse(h);\n" + + " parseJSON(h);\n" + " } catch (Throwable e) = " + e.getMessage()); hs += "\n" + name + ": " + "\"" + h.replaceAll("\"", "\\\"") + "\""; continue; @@ -1466,11 +1476,11 @@ else if (names != null) { hm.put(name, h); try { - com.alibaba.fastjson.JSON.parse(h); + parseJSON(h); } catch (Throwable e) { Log.e(TAG, "delegate try {\n" + - " JSON.parse(h);\n" + + " parseJSON(h);\n" + " } catch (Throwable e) = " + e.getMessage()); hs += "\n" + name + ": " + "\"" + h.replaceAll("\"", "\\\"") + "\""; continue; @@ -1537,7 +1547,7 @@ else if (names != null) { for (Entry e : set) { if (e != null) { String[] vals = e.getValue(); - url += ((first ? "" : "&") + e.getKey() + "=" + ( vals == null || vals.length <= 0 ? "" : StringUtil.getString(vals[0]) )); + url += ((first ? "" : "&") + e.getKey() + "=" + ( vals == null || vals.length <= 0 ? "" : StringUtil.get(vals[0]) )); first = false; } } @@ -1572,7 +1582,7 @@ else if (names != null) { : (MediaType.MULTIPART_FORM_DATA.equals(contentType) ? "DATA" : "JSON"))) // FIXME 考虑 XML, PNG 等格式? ) : "JSON"; - String sql = isSQL ? StringUtil.getTrimedString(req.getString("sql")) : null; + String sql = isSQL ? StringUtil.trim(req.getString("sql")) : null; String newSql = ""; // String[] lines = sql.split(" \\? "); // StringUtil.split(sql, " \\? ", false); // int len = lines == null ? 0 : lines.length; @@ -1637,7 +1647,7 @@ else if (names != null) { sql = newSql.trim(); } - JSONRequest existReq = new JSONRequest(); + JSONObject existReq = new JSONObject(true); if (isUnit) { if (req != null) { // Method <<<<<<<<<<<<<<<<<<<<<<<<<<<<< @@ -1656,7 +1666,7 @@ else if (names != null) { mthd.put(MethodUtil.KEY_METHOD, req.getString(MethodUtil.KEY_METHOD)); mthd.put(MethodUtil.KEY_METHOD_ARGS, req.getString(MethodUtil.KEY_METHOD_ARGS)); // mthd.put("header", StringUtil.isEmpty(hs, true) ? null : hs.trim()); - existReq.put("Method", mthd); + existReq.put("Method", JSON.createJSONObject(mthd)); // Method >>>>>>>>>>>>>>>>>>>>>>>>>>>>> } } @@ -1673,12 +1683,12 @@ else if (names != null) { if (isSQL) { document.put("sqlauto", sql); } - existReq.put("Document", document); + existReq.put("Document", JSON.createJSONObject(document)); // Document >>>>>>>>>>>>>>>>>>>>>>>>>>>>> } JSONObject existRsp = newParser(session, GET).parseResponse(existReq); - JSONResponse existRsp2 = new JSONResponse(existRsp).getJSONResponse("Document"); + JSONResponse existRsp2 = new JSONResponse(existRsp).getJSONResponse("Document"); long documentId = existRsp2 == null ? 0 : existRsp2.getId(); JSONRequest request = new JSONRequest(); @@ -1703,7 +1713,7 @@ else if (names != null) { mthd.put(MethodUtil.KEY_METHOD_ARGS, req.getString(MethodUtil.KEY_METHOD_ARGS)); mthd.put("genericMethodArgs", req.getString(MethodUtil.KEY_METHOD_ARGS)); mthd.put("request", body); - request.put("Method", mthd); + request.put("Method", JSON.createJSONObject(mthd)); // Method >>>>>>>>>>>>>>>>>>>>>>>>>>>>> } else if (recordType > 0) { @@ -1730,7 +1740,7 @@ else if (recordType > 0) { document.put("sqlauto", sql); } // document.put("detail", ""); - request.put("Document", document); + request.put("Document", JSON.createJSONObject(document)); // Document >>>>>>>>>>>>>>>>>>>>>>>>>>>>> } else { @@ -1752,7 +1762,7 @@ else if (recordType > 0) { random.put("from", 2); // 0-测试工具,1-CI/CD,2-流量录制 random.put("name", "[Record] " + new java.util.Date().toLocaleString()); - request.put("Random", random); + request.put("Random", JSON.createJSONObject(random)); request.setTag("Random"); } else { // testRecord.setColumn("id,response,header"); @@ -1765,11 +1775,11 @@ else if (recordType > 0) { } else { try { - Object reqObj = JSON.parse(reqStr); + Object reqObj = parseJSON(reqStr); isDefault = Objects.equals(reqObj, req); } catch (Throwable e) { - Log.w(TAG, "delegate try { Object reqObj = JSON.parse(reqStr); ..." + + Log.w(TAG, "delegate try { Object reqObj = parseJSON(reqStr); ..." + " } catch (Throwable e) = " + e.getMessage()); } } @@ -1780,7 +1790,7 @@ else if (recordType > 0) { else { long randomId = 0; try { - apijson.JSONRequest randomReq = new apijson.JSONRequest(); + JSONObject randomReq = new JSONObject(true); randomReq.put("Random", random); JSONObject rsp = newParser(session, GET).parseResponse(randomReq); @@ -1810,14 +1820,16 @@ else if (recordType > 0) { testRecord.put("response", rspBody); // 用 JSONRequest.put 会转为 JSONObject } // TestRecord >>>>>>>>>>>>>>>>>>>>>>>>>>>>> - request.put("TestRecord", testRecord); - JSONObject rsp = newParser(session, recordType < 0 ? GET : POST).parseResponse(request); + request.put("TestRecord", JSON.createJSONObject(testRecord)); + JSONObject rsp = newParser(session, recordType < 0 ? GET : POST).parseResponse( + (JSONObject) JSON.createJSONObject(request) + ); if (recordType < 0) { JSONObject rsp2 = rsp == null ? null : rsp.getJSONObject("TestRecord"); String response = rsp2 == null ? null : rsp2.getString("response"); if (StringUtil.isNotEmpty(response, true)) { String header = rsp2.getString("header"); - String[] lines = StringUtil.split(StringUtil.getTrimedString(header), "\n"); + String[] lines = StringUtil.split(StringUtil.trim(header), "\n"); if (lines != null) { for (String line : lines) { @@ -2000,7 +2012,7 @@ private String parseRandomConfig(String path, Object obj) { public String execute(@RequestBody String request, HttpSession session) { try { if (Log.DEBUG == false) { - return DemoParser.newErrorResult(new IllegalAccessException("非 DEBUG 模式下不允许调用 /sql/execute !")).toJSONString(); + return new DemoParser().newErrorResult(new IllegalAccessException("非 DEBUG 模式下不允许调用 /sql/execute !")).toJSONString(); } // DemoVerifier.verifyLogin(session); @@ -2160,7 +2172,7 @@ public String execute(@RequestBody String request, HttpSession session) { // } } - JSONObject result = DemoParser.newSuccessResult(); + JSONObject result = new DemoParser().newSuccessResult(); result.put("sql", sql); result.put("args", arg); if (isWrite) { @@ -2178,7 +2190,7 @@ public String execute(@RequestBody String request, HttpSession session) { return result.toJSONString(); } catch (Exception e) { - JSONObject result = DemoParser.newErrorResult(e); + JSONObject result = new DemoParser().newErrorResult(e); result.put("throw", e.getClass().getName()); result.put("trace:stack", e.getStackTrace()); @@ -2189,7 +2201,7 @@ public String execute(@RequestBody String request, HttpSession session) { return result.toJSONString(); } } catch (Exception e) { - JSONObject result = DemoParser.newErrorResult(e); + JSONObject result = new DemoParser().newErrorResult(e); result.put("throw", e.getClass().getName()); result.put("trace:stack", e.getStackTrace()); return result.toJSONString(); @@ -2664,15 +2676,15 @@ public String ui() { // 为 UnitAuto 提供的单元测试接口 https://github.com/TommyLemon/UnitAuto <<<<<<<<<<<<<<<<<<<<<<<<<<< - @PostMapping("method/list") - public JSONObject listMethod(@RequestBody String request) { - return super.listMethod(request); - } - - @PostMapping("method/invoke") - public void invokeMethod(@RequestBody String request, HttpServletRequest servletRequest) { - super.invokeMethod(request, servletRequest); - } + //@PostMapping("method/list") + //public JSONObject listMethod(@RequestBody String request) { + // return super.listMethod(request); + //} + // + //@PostMapping("method/invoke") + //public void invokeMethod(@RequestBody String request, HttpServletRequest servletRequest) { + // super.invokeMethod(request, servletRequest); + //} // 为 UnitAuto 提供的单元测试接口 https://github.com/TommyLemon/UnitAuto >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/FileController.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/FileController.java index 7687633..6635bb5 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/FileController.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/FileController.java @@ -78,7 +78,7 @@ public void initFileRepository(){ public JSONObject files() { JSONObject res = new JSONObject(); res.put("data", fileRepository); - return DemoParser.extendSuccessResult(res); + return new DemoParser().extendSuccessResult(res); } @PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) @@ -96,11 +96,11 @@ public JSONObject upload(@RequestParam("file") MultipartFile file) { JSONObject res = new JSONObject(); res.put("path", file.getOriginalFilename()); res.put("size", file.getBytes().length); - return DemoParser.extendSuccessResult(res); + return new DemoParser().extendSuccessResult(res); } catch (Exception e) { e.printStackTrace(); - return DemoParser.newErrorResult(e); + return new DemoParser().newErrorResult(e); } } diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoFunctionParser.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoFunctionParser.java index 0f58395..91aebb0 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoFunctionParser.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoFunctionParser.java @@ -37,7 +37,7 @@ * 具体见 https://github.com/Tencent/APIJSON/issues/101 * @author Lemon */ -public class DemoFunctionParser extends APIJSONFunctionParser { +public class DemoFunctionParser extends APIJSONFunctionParser { public static final String TAG = "DemoFunctionParser"; static { @@ -148,10 +148,10 @@ public int deleteCommentOfMoment(@NotNull JSONObject curObj, @NotNull String mom return 0; } - JSONRequest request = new JSONRequest(); + JSONObject request = new JSONObject(true); //Comment<<<<<<<<<<<<<<<<<<<<<<<<<<<<< - JSONRequest comment = new JSONRequest(); + JSONObject comment = new JSONObject(true); comment.put("momentId", mid); request.put("Comment", comment); @@ -177,10 +177,10 @@ public int deleteChildComment(@NotNull JSONObject curObj, @NotNull String toId) //递归获取到全部子评论id - JSONRequest request = new JSONRequest(); + JSONObject request = new JSONObject(true); //Comment<<<<<<<<<<<<<<<<<<<<<<<<<<<<< - JSONRequest comment = new JSONRequest(); + JSONObject comment = new JSONObject(); comment.put("id{}", getChildCommentIdList(tid)); request.put("Comment", comment); @@ -196,7 +196,7 @@ public int deleteChildComment(@NotNull JSONObject curObj, @NotNull String toId) private JSONArray getChildCommentIdList(long tid) { JSONArray arr = new JSONArray(); - JSONRequest request = new JSONRequest(); + JSONObject request = apijson.JSON.createJSONObject(); //Comment-id[]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< JSONRequest idItem = new JSONRequest(); @@ -205,10 +205,10 @@ private JSONArray getChildCommentIdList(long tid) { JSONRequest comment = new JSONRequest(); comment.put("toId", tid); comment.setColumn("id"); - idItem.put("Comment", comment); + idItem.put("Comment", apijson.JSON.createJSONObject(comment)); //Comment>>>>>>>>>>>>>>>>>>>>>>>>>>>>> - request.putAll(idItem.toArray(0, 0, "Comment-id")); + request.putAll(apijson.JSON.createJSONObject(idItem.toArray(0, 0, "Comment-id"))); //Comment-id[]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> JSONObject rp = new DemoParser().setNeedVerify(false).parseResponse(request); diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoObjectParser.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoObjectParser.java index b4ef70f..bb79833 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoObjectParser.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoObjectParser.java @@ -14,6 +14,7 @@ package apijson.demo; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import java.util.List; @@ -30,15 +31,17 @@ /**对象解析器,用来简化 Parser * @author Lemon */ -public class DemoObjectParser extends APIJSONObjectParser { +public class DemoObjectParser extends APIJSONObjectParser { - public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath, SQLConfig arrayConfig + public DemoObjectParser(HttpSession session, @NotNull JSONObject request, String parentPath + , SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { super(session, request, parentPath, arrayConfig, isSubquery, isTable, isArrayMainTable); } @Override - public SQLConfig newSQLConfig(RequestMethod method, String table, String alias, JSONObject request, List joinList, boolean isProcedure) throws Exception { + public SQLConfig newSQLConfig(RequestMethod method, String table, String alias + , JSONObject request, List> joinList, boolean isProcedure) throws Exception { return DemoSQLConfig.newSQLConfig(method, table, alias, request, joinList, isProcedure); } diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoParser.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoParser.java index c0a3e34..4a9fd8a 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoParser.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoParser.java @@ -14,6 +14,9 @@ package apijson.demo; +import apijson.JSONResponse; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import java.util.HashMap; @@ -36,7 +39,7 @@ * 具体见 https://github.com/Tencent/APIJSON/issues/38 * @author Lemon */ -public class DemoParser extends APIJSONParser { +public class DemoParser extends APIJSONParser { public static final Map KEY_MAP; static { @@ -53,34 +56,47 @@ public DemoParser(RequestMethod method, boolean needVerify) { super(method, needVerify); } -// // 可重写来设置分页页码是否从 1 开始,true - 从 1 开始;false - 从 0 开始 + public static JSONObject parseRequest(String request) { + try { + return JSON.parseObject(request); + } catch (Exception e) { + return new DemoParser().newResult(JSONResponse.CODE_ILLEGAL_ARGUMENT, "JSON 格式不合法!" + request); + } + } + + @Override + public DemoParser setNeedVerify(boolean needVerify) { + super.setNeedVerify(needVerify); + return this; + } + + // // 可重写来设置分页页码是否从 1 开始,true - 从 1 开始;false - 从 0 开始 // @Override // public boolean isStartFrom1() { // return true; // } private int maxQueryCount = 2000; -// // 可重写来设置最大查询数量 -// @Override -// public int getMaxQueryCount() { -// return maxQueryCount; -// } -// -// @Override -// public int getMaxUpdateCount() { -// return 2000; -// } -// -// @Override -// public int getMaxObjectCount() { -// return getMaxUpdateCount(); -// } -// -// @Override -// public int getMaxSQLCount() { -// return getMaxUpdateCount(); -// } + // 可重写来设置最大查询数量 + @Override + public int getMaxQueryCount() { + return maxQueryCount; + } + + @Override + public int getMaxUpdateCount() { + return 2000; + } + @Override + public int getMaxObjectCount() { + return getMaxUpdateCount(); + } + + @Override + public int getMaxSQLCount() { + return getMaxUpdateCount(); + } @Override public JSONObject parseResponse(JSONObject request) { @@ -96,8 +112,10 @@ public JSONObject parseResponse(JSONObject request) { return super.parseResponse(request); } + @Override - public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath, SQLConfig arrayConfig + public APIJSONObjectParser createObjectParser(JSONObject request, String parentPath + , SQLConfig arrayConfig , boolean isSubquery, boolean isTable, boolean isArrayMainTable) throws Exception { return new DemoObjectParser(getSession(), request, parentPath, arrayConfig , isSubquery, isTable, isArrayMainTable).setMethod(getMethod()).setParser(this); @@ -108,7 +126,7 @@ public APIJSONObjectParser createObjectParser(JSONObject request, String p private String dbAccount; private String dbPassword; @Override - public APIJSONParser setSession(HttpSession session) { + public APIJSONParser setSession(HttpSession session) { Boolean asDBAccount = (Boolean) session.getAttribute(DemoController.AS_DB_ACCOUNT); this.asDBAccount = asDBAccount != null && asDBAccount; if (this.asDBAccount) { @@ -123,13 +141,13 @@ public APIJSONParser setSession(HttpSession session) { } @Override - public JSONObject executeSQL(SQLConfig config, boolean isSubquery) throws Exception { + public JSONObject executeSQL(SQLConfig config, boolean isSubquery) throws Exception { if (asDBAccount && config instanceof DemoSQLConfig) { DemoSQLConfig cfg = (DemoSQLConfig) config; - if (StringUtil.isEmpty(cfg.getDBAccount())) { + if (StringUtil.isEmpty(cfg.gainDBAccount())) { cfg.setDBAccount(dbAccount); } - if (StringUtil.isEmpty(cfg.getDBPassword())) { + if (StringUtil.isEmpty(cfg.gainDBPassword())) { cfg.setDBPassword(dbPassword); } } diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java index ca7d71c..ca733d1 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java @@ -22,16 +22,19 @@ import java.text.SimpleDateFormat; import java.util.*; -import apijson.*; //import apijson.influxdb.InfluxDBUtil; //import apijson.iotdb.IoTDBUtil; +import apijson.RequestMethod; +import apijson.StringUtil; import apijson.orm.AbstractParser; import apijson.orm.AbstractSQLConfig; import apijson.orm.Parser; //import apijson.surrealdb.SurrealDBUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.annotation.JSONField; -import apijson.column.ColumnUtil; +import apijson.framework.ColumnUtil; import apijson.framework.APIJSONSQLConfig; import apijson.orm.Join; import apijson.orm.Join.On; @@ -44,7 +47,7 @@ * https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md#c-1-1%E4%BF%AE%E6%94%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E9%93%BE%E6%8E%A5 * @author Lemon */ -public class DemoSQLConfig extends APIJSONSQLConfig { +public class DemoSQLConfig extends APIJSONSQLConfig { public DemoSQLConfig() { super(); @@ -70,10 +73,10 @@ public DemoSQLConfig(RequestMethod method, String table) { // TABLE_KEY_MAP.put(Privacy.class.getSimpleName(), "apijson_privacy"); // 主键名映射 - SIMPLE_CALLBACK = new SimpleCallback() { + SIMPLE_CALLBACK = new SimpleCallback() { @Override - public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, String schema, String datasource, String table) { + public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, String schema, String datasource, String table) { return new DemoSQLConfig(method, table); } @@ -147,7 +150,7 @@ public String getUserIdKey(String database, String schema, String datasource, St // 如果 DemoSQLExecutor.getConnection 能拿到连接池的有效 Connection,则这里不需要配置 dbVersion, dbUri, dbAccount, dbPassword @Override - public String getDBVersion() { + public String gainDBVersion() { if (isMySQL()) { // return "5.7.22"; // return "8.0.11"; //TODO 改成你自己的 MySQL 或 PostgreSQL 数据库版本号 //MYSQL 8 和 7 使用的 JDBC 配置不一样 @@ -203,9 +206,8 @@ public DemoSQLConfig setDBUri(String dbUri) { this.dbUri = dbUri; return this; } - @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加 @Override - public String getDBUri() { + public String gainDBUri() { if (StringUtil.isNotEmpty(dbUri)) { return dbUri; } @@ -219,10 +221,10 @@ public String getDBUri() { if (isPostgreSQL()) { // PG JDBC 必须在 URI 传 catalog return "jdbc:postgresql://localhost:5432/postgres?stringtype=unspecified"; //TODO 改成你自己的 } - // if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog - // return "jdbc:postgresql://localhost:26257/movr?sslmode=require"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach && cockroach demo - // // return "jdbc:postgresql://localhost:26258/postgres?sslmode=disable"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach # && start 3 nodes and init cluster - // } + //if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog + // return "jdbc:postgresql://localhost:26257/movr?sslmode=require"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach && cockroach demo + // // return "jdbc:postgresql://localhost:26258/postgres?sslmode=disable"; //TODO 改成你自己的 brew install cockroachdb/tap/cockroach # && start 3 nodes and init cluster + //} if (isSQLServer()) { return "jdbc:jtds:sqlserver://localhost:1433/pubs;instance=SQLEXPRESS"; //TODO 改成你自己的 } @@ -242,41 +244,41 @@ public String getDBUri() { // return "jdbc:TAOS://localhost:6030"; //TODO 改成你自己的 return "jdbc:TAOS-RS://localhost:6041"; //TODO 改成你自己的 } - // if (isTimescaleDB()) { // PG JDBC 必须在 URI 传 catalog - // return "jdbc:postgresql://localhost:5432/postgres?stringtype=unspecified"; //TODO 改成你自己的 - // } - // if (isQuestDB()) { // PG JDBC 必须在 URI 传 catalog - // return "jdbc:postgresql://localhost:8812/qdb"; //TODO 改成你自己的 - // } + if (isTimescaleDB()) { // PG JDBC 必须在 URI 传 catalog + return "jdbc:postgresql://localhost:5432/postgres?stringtype=unspecified"; //TODO 改成你自己的 + } + if (isQuestDB()) { // PG JDBC 必须在 URI 传 catalog + return "jdbc:postgresql://localhost:8812/qdb"; //TODO 改成你自己的 + } if (isInfluxDB()) { return "http://203.189.6.3:8086"; //TODO 改成你自己的 } if (isMilvus()) { return "http://localhost:19530"; //TODO 改成你自己的 } - // if (isManticore()) { - // return "jdbc:mysql://localhost:9306?characterEncoding=utf8&maxAllowedPacket=512000"; //TODO 改成你自己的 - // } - // if (isIoTDB()) { - // return "jdbc:iotdb://localhost:6667"; // ?charset=GB18030 加参数会报错 URI 格式错误 //TODO 改成你自己的 - // } + //if (isManticore()) { + // return "jdbc:mysql://localhost:9306?characterEncoding=utf8&maxAllowedPacket=512000"; //TODO 改成你自己的 + //} + //if (isIoTDB()) { + // return "jdbc:iotdb://localhost:6667"; // ?charset=GB18030 加参数会报错 URI 格式错误 //TODO 改成你自己的 + //} if (isMongoDB()) { return "jdbc:mongodb://atlas-sql-6593c65c296c5865121e6ebe-xxskv.a.query.mongodb.net/myVirtualDatabase?ssl=true&authSource=admin"; //TODO 改成你自己的 } if (isCassandra()) { return "http://localhost:7001"; //TODO 改成你自己的 } - // if (isDuckDB()) { - // return "jdbc:duckdb:/Users/tommylemon/my_database.duckdb"; //TODO 改成你自己的 - // } - // if (isSurrealDB()) { - // // return "memory"; //TODO 改成你自己的 - // // return "surrealkv://localhost:8000"; //TODO 改成你自己的 - // return "ws://localhost:8000"; //TODO 改成你自己的 - // } - // if (isOpenGauss()) { - // return "jdbc:opengauss://127.0.0.1:5432/postgres?currentSchema=" + DEFAULT_SCHEMA; //TODO 改成你自己的 - // } + //if (isDuckDB()) { + // return "jdbc:duckdb:/Users/tommylemon/my_database.duckdb"; //TODO 改成你自己的 + //} + //if (isSurrealDB()) { + // // return "memory"; //TODO 改成你自己的 + // // return "surrealkv://localhost:8000"; //TODO 改成你自己的 + // return "ws://localhost:8000"; //TODO 改成你自己的 + //} + //if (isOpenGauss()) { + // return "jdbc:opengauss://127.0.0.1:5432/postgres?currentSchema=" + DEFAULT_SCHEMA; //TODO 改成你自己的 + //} return null; } @@ -286,9 +288,8 @@ public DemoSQLConfig setDBAccount(String dbAccount) { this.dbAccount = dbAccount; return this; } - @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加 @Override - public String getDBAccount() { + public String gainDBAccount() { if (StringUtil.isNotEmpty(dbAccount)) { return dbAccount; } @@ -299,10 +300,10 @@ public String getDBAccount() { if (isPostgreSQL()) { return "postgres"; //TODO 改成你自己的 } - // if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog - // return "demo"; //TODO 改成你自己的 - // //return "postgres"; //TODO 改成你自己的 - // } + //if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog + // return "demo"; //TODO 改成你自己的 + // //return "postgres"; //TODO 改成你自己的 + //} if (isSQLServer()) { return "sa"; //TODO 改成你自己的 } @@ -321,40 +322,40 @@ public String getDBAccount() { if (isTDengine()) { return "root"; //TODO 改成你自己的 } - // if (isTimescaleDB()) { - // return "postgres"; //TODO 改成你自己的 - // } - // if (isQuestDB()) { - // return "admin"; //TODO 改成你自己的 - // } + //if (isTimescaleDB()) { + // return "postgres"; //TODO 改成你自己的 + //} + if (isQuestDB()) { + return "admin"; //TODO 改成你自己的 + } if (isInfluxDB()) { return "iotos"; } if (isMilvus()) { return "root"; } - // if (isManticore()) { - // return null; // "root"; - // } - // if (isIoTDB()) { - // return "root"; - // } + //if (isManticore()) { + // return null; // "root"; + //} + //if (isIoTDB()) { + // return "root"; + //} if (isMongoDB()) { return "root"; //TODO 改成你自己的 } if (isCassandra()) { return "root"; //TODO 改成你自己的 } - // if (isDuckDB()) { - // return "root"; //TODO 改成你自己的 - // } - // if (isSurrealDB()) { - // return "root"; //TODO 改成你自己的 - // } - // if (isOpenGauss()) { - // return "postgres"; //TODO 改成你自己的 - // // 不允许用初始账号,需要 CREATE USER 创建新账号并 GRANT 授权 return "opengauss"; //TODO 改成你自己的 - // } + //if (isDuckDB()) { + // return "root"; //TODO 改成你自己的 + //} + //if (isSurrealDB()) { + // return "root"; //TODO 改成你自己的 + //} + //if (isOpenGauss()) { + // return "postgres"; //TODO 改成你自己的 + // // 不允许用初始账号,需要 CREATE USER 创建新账号并 GRANT 授权 return "opengauss"; //TODO 改成你自己的 + //} return null; } @@ -364,9 +365,8 @@ public DemoSQLConfig setDBPassword(String dbPassword) { this.dbPassword = dbPassword; return this; } - @JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加 @Override - public String getDBPassword() { + public String gainDBPassword() { if (StringUtil.isNotEmpty(dbPassword)) { return dbPassword; } @@ -377,10 +377,10 @@ public String getDBPassword() { if (isPostgreSQL()) { return null; //TODO 改成你自己的 } - // if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog - // return "demo39865"; //TODO 改成你自己的 - // // return null; //TODO 改成你自己的 - // } + //if (isCockroachDB()) { // PG JDBC 必须在 URI 传 catalog + // return "demo39865"; //TODO 改成你自己的 + // // return null; //TODO 改成你自己的 + //} if (isSQLServer()) { return "apijson@123"; //TODO 改成你自己的 } @@ -399,53 +399,53 @@ public String getDBPassword() { if (isTDengine()) { return "taosdata"; //TODO 改成你自己的 } - // if (isTimescaleDB()) { - // return "password"; //TODO 改成你自己的 - // } - // if (isQuestDB()) { - // return "quest"; //TODO 改成你自己的 - // } + if (isTimescaleDB()) { + return "password"; //TODO 改成你自己的 + } + if (isQuestDB()) { + return "quest"; //TODO 改成你自己的 + } if (isInfluxDB()) { return "apijson@123"; //TODO 改成你自己的 } if (isMilvus()) { return "apijson"; //TODO 改成你自己的 } - // if (isManticore()) { - // return null; - // } - // if (isIoTDB()) { - // return "root"; - // } + //if (isManticore()) { + // return null; + //} + //if (isIoTDB()) { + // return "root"; + //} if (isMongoDB()) { return "apijson"; //TODO 改成你自己的 } if (isCassandra()) { return "apijson"; //TODO 改成你自己的 } - // if (isDuckDB()) { - // return ""; //TODO 改成你自己的 - // } - // if (isSurrealDB()) { - // return "root"; //TODO 改成你自己的 - // } - // if (isOpenGauss()) { - // return "openGauss@123"; //TODO 改成你自己的 - // } + //if (isDuckDB()) { + // return ""; //TODO 改成你自己的 + //} + //if (isSurrealDB()) { + // return "root"; //TODO 改成你自己的 + //} + //if (isOpenGauss()) { + // return "openGauss@123"; //TODO 改成你自己的 + //} return null; } private String sql; - public String getSQL() throws Exception { - return getSQL(isPrepared()); + public String gainSQL() throws Exception { + return gainSQL(isPrepared()); } @Override - public String getSQL(boolean prepared) throws Exception { + public String gainSQL(boolean prepared) throws Exception { if (StringUtil.isNotEmpty(sql)) { return sql; } - return super.getSQL(prepared); + return super.gainSQL(prepared); } public void setSql(String sql) { @@ -517,15 +517,15 @@ public void setSql(String sql) { @Override - protected void onGetCrossJoinString(Join join) throws UnsupportedOperationException { + protected void onGainCrossJoinString(Join join) throws UnsupportedOperationException { // 开启 CROSS JOIN 笛卡尔积联表 super.onGetCrossJoinString(join); } @Override - protected void onJoinNotRelation(String sql, String quote, Join join, String table, List onList, On on) { + protected void onJoinNotRelation(String sql, String quote, Join join, String table, List onList, On on) { // 开启 JOIN ON t1.c1 != t2.c2 等不等式关联 super.onJoinNotRelation(sql, quote, join, table, onList, on); } @Override - protected void onJoinComplexRelation(String sql, String quote, Join join, String table, List onList, On on) { + protected void onJoinComplexRelation(String sql, String quote, Join join, String table, List onList, On on) { // 开启 JOIN ON t1.c1 LIKE concat('%', t2.c2, '%') 等复杂关联 super.onJoinComplexRelation(sql, quote, join, table, onList, on); } @@ -561,8 +561,8 @@ protected int getMaxCombineCount() { // } @Override - public String getSQLTable() { - String t = super.getSQLTable(); + public String gainSQLTable() { + String t = super.gainSQLTable(); return isInfluxDB() ? t.toLowerCase() : t; //return isInfluxDB() || isManticore() ? t.toLowerCase() : t; // return isInfluxDB() || isIoTDB() ? t.toLowerCase() : t; diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java index afd939f..36ae487 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLExecutor.java @@ -26,6 +26,7 @@ //import apijson.surrealdb.SurrealDBUtil; import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.JSONArray; //import org.duckdb.JsonNode; import org.springframework.data.redis.connection.RedisStandaloneConfiguration; import org.springframework.data.redis.connection.jedis.JedisConnectionFactory; @@ -55,7 +56,7 @@ * * @author Lemon */ -public class DemoSQLExecutor extends APIJSONSQLExecutor { +public class DemoSQLExecutor extends APIJSONSQLExecutor { public static final String TAG = "DemoSQLExecutor"; // Redis 缓存 <<<<<<<<<<<<<<<<<<<<<<< @@ -76,7 +77,7 @@ public class DemoSQLExecutor extends APIJSONSQLExecutor { // 可重写以下方法,支持 Redis 等单机全局缓存或分布式缓存 @Override - public List getCache(String sql, SQLConfig config) { + public List getCache(String sql, SQLConfig config) { List list = super.getCache(sql, config); if (list == null) { try { @@ -89,7 +90,7 @@ public List getCache(String sql, SQLConfig config) { } @Override - public synchronized void putCache(String sql, List list, SQLConfig config) { + public synchronized void putCache(String sql, List list, SQLConfig config) { super.putCache(sql, list, config); String table = config != null && config.isMain() ? config.getTable() : null; @@ -107,7 +108,7 @@ public synchronized void putCache(String sql, List list, SQLConfig config) { + public synchronized void removeCache(String sql, SQLConfig config) { super.removeCache(sql, config); try { if (config.getMethod() == RequestMethod.DELETE) { // 避免缓存击穿 @@ -123,9 +124,9 @@ public synchronized void removeCache(String sql, SQLConfig config) { // Redis 缓存 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> - // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, dbPassword + // 适配连接池,如果这里能拿到连接池的有效 Connection,则 SQLConfig 不需要配置 dbVersion, dbUri, dbAccount, dbPassword @Override - public Connection getConnection(SQLConfig config) throws Exception { + public Connection getConnection(SQLConfig config) throws Exception { String datasource = config.getDatasource(); Log.d(TAG, "getConnection config.getDatasource() = " + datasource); @@ -173,7 +174,7 @@ public Connection getConnection(SQLConfig config) throws Exception { } @Override - public JSONObject execute(@NotNull SQLConfig config, boolean unknownType) throws Exception { + public JSONObject execute(@NotNull SQLConfig config, boolean unknownType) throws Exception { boolean isMilvus = config.isMilvus(); // DATABASE_MILVUS.equals(config.getDatabase()); // APIJSON 6.4.0+ 可用 config.isMilvus(); boolean isCassandra = config.isCassandra(); // DemoSQLConfig.DATABASE_CASSANDRA.equals(config.getDatabase()); boolean isInfluxDB = config.isInfluxDB(); // DemoSQLConfig.DATABASE_INFLUXDB.equals(config.getDatabase()); @@ -182,7 +183,7 @@ public JSONObject execute(@NotNull SQLConfig config, boolean unknownType) if (isMilvus || isCassandra || isInfluxDB) { // || isIoTDB || isSurrealDB) { // TODO 把 execute 内与缓存无关只与数据库读写逻辑相关的代码抽取到 executeSQL 函数 - String sql = config.getSQL(false); // config.isPrepared()); + String sql = config.gainSQL(false); // config.isPrepared()); if (sql != null && config.getMethod() == null) { String trimmedSQL = sql.trim(); String sqlPrefix = trimmedSQL.length() < 7 ? "" : trimmedSQL.substring(0, 7).toUpperCase(); @@ -273,14 +274,14 @@ public void close() { // 不需要隐藏字段这个功能时,取消注释来提升性能 // @Override - // protected boolean isHideColumn(SQLConfig config, java.sql.ResultSet rs, ResultSetMetaData rsmd, int tablePosition, + // protected boolean isHideColumn(SQLConfig config, java.sql.ResultSet rs, ResultSetMetaData rsmd, int tablePosition, // JSONObject table, int columnIndex, Map childMap) throws SQLException { // return false; // } // 取消注释可将前端传参驼峰命名转为蛇形命名 aBCdEfg => upper ? A_B_CD_EFG : a_b_cd_efg // @Override - // protected String getKey(SQLConfig config, java.sql.ResultSet rs, ResultSetMetaData rsmd, int tablePosition, JSONObject table, int columnIndex, Map childMap) throws Exception { + // protected String getKey(SQLConfig config, java.sql.ResultSet rs, ResultSetMetaData rsmd, int tablePosition, JSONObject table, int columnIndex, Map childMap) throws Exception { // String key = super.getKey(config, rs, rsmd, tablePosition, table, columnIndex, childMap); // String tbl = StringUtil.firstCase(JSONResponse.formatUnderline(rsmd.getTableName(columnIndex), true), true); // if (DemoVerifier.SYSTEM_ACCESS_MAP.containsKey(tbl)) { @@ -290,13 +291,15 @@ public void close() { // } -// @Override -// protected Object getValue(SQLConfig config, ResultSet rs, ResultSetMetaData rsmd, int tablePosition, JSONObject table, int columnIndex, String lable, Map childMap) throws Exception { -// Object v = super.getValue(config, rs, rsmd, tablePosition, table, columnIndex, lable, childMap); -//// if (v instanceof JsonNode) { // DuckDB json 类型需要转换 -//// JsonNode jn = (JsonNode) v; -//// v = jn.isNull() ? null : JSON.parse(jn.toString()); -//// } -// return v; // MongoUtil.getValue(v); -// } + @Override + protected Object getValue( + SQLConfig config, ResultSet rs, ResultSetMetaData rsmd, int row, JSONObject table, int columnIndex + , String label, Map childMap, Map keyMap) throws Exception { + Object v = super.getValue(config, rs, rsmd, row, table, columnIndex, label, childMap, keyMap); +// if (v instanceof JsonNode) { // DuckDB json 类型需要转换 +// JsonNode jn = (JsonNode) v; +// v = jn.isNull() ? null : parseJSON(jn.toString()); +// } + return v; // MongoUtil.getValue(v); + } } diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoVerifier.java b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoVerifier.java index afc3a7b..4533616 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoVerifier.java +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoVerifier.java @@ -15,6 +15,8 @@ package apijson.demo; import apijson.router.APIJSONRouterVerifier; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import java.util.regex.Pattern; @@ -23,7 +25,7 @@ * 具体见 https://github.com/Tencent/APIJSON/issues/12 * @author Lemon */ -public class DemoVerifier extends APIJSONRouterVerifier { // APIJSONVerifier { +public class DemoVerifier extends APIJSONRouterVerifier { // APIJSONVerifier { public static final String TAG = "DemoVerifier"; static { @@ -39,7 +41,7 @@ public class DemoVerifier extends APIJSONRouterVerifier { // APIJSONVerif // 重写方法来自定义字段名等 // @Override - // public String getVisitorIdKey(SQLConfig config) { + // public String getVisitorIdKey(SQLConfig config) { // return super.getVisitorIdKey(config); // return "userid"; // return "uid" 等自定义的字段名 // } diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/CodeUtil.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/CodeUtil.js index 8a66958..518f95a 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/CodeUtil.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/CodeUtil.js @@ -266,7 +266,7 @@ var CodeUtil = { } else { try { - value = JSON.parse(value) + value = parseJSON(value) } catch (e) { console.log(e) @@ -972,13 +972,13 @@ var CodeUtil = { s += '\n\n//回调实体类' + '\n@Keep' - + '\nopen class ' + responseType + ' : BaseResponse {' + + '\nopen class ' + responseType + ' : BaseResponse {' + '\n' + nextPadding + '@Transient' + '\n' + nextPadding + 'open var ' + varName + ': ' + dataType + CodeUtil.initEmptyValue4Type(dataType, true, true) + '\n' + '\n}\n' + '\n//通用 HTTP 解析实体基类,全局存一份' + '\n@Keep' - + '\nopen class BaseResponse {' + + '\nopen class BaseResponse {' + '\n' + nextPadding + '@Transient' + '\n' + nextPadding + 'open var code: Int' + CodeUtil.initEmptyValue4Type('Int', true, true) + '\n' + '\n' + nextPadding + '@Transient' @@ -1166,40 +1166,40 @@ var CodeUtil = { } s += '\n\n' + - 'public class ' + responseType + ' extends Response {\n' + + 'public class ' + responseType + ' extends Response {\n' + nextPrefix + 'private ' + dataType + ' ' + varName + ';\n\n' + nextPrefix + 'public '+ dataType + ' get' + modelName + '() {\n' + nextNextPrefix + 'return ' + varName + ';\n' + nextPrefix + '}\n' + - nextPrefix + 'public ' + responseType + ' set' + modelName + '(' + dataType + ' ' + varName + ') {\n' + + nextPrefix + 'public ' + responseType + ' set' + modelName + '(' + dataType + ' ' + varName + ') {\n' + nextNextPrefix + 'this.' + varName + ' = ' + varName + ';\n' + nextNextPrefix + 'return this;\n' + nextPrefix + '}\n' + '}'; s += '\n\n' + - 'public class Response {\n' + + 'public class Response {\n' + nextPrefix + 'private int code;\n' + nextPrefix + 'private String msg;\n' + nextPrefix + 'private T data;\n\n' + nextPrefix + 'public int getCode() {\n' + nextNextPrefix + 'return code;\n' + nextPrefix + '}\n' + - nextPrefix + 'public Response setCode(int code) {\n' + + nextPrefix + 'public Response setCode(int code) {\n' + nextNextPrefix + 'this.code = code;\n' + nextNextPrefix + 'return this;\n' + nextPrefix + '}\n\n' + nextPrefix + 'public String getMsg() {\n' + nextNextPrefix + 'return msg;\n' + nextPrefix + '}\n' + - nextPrefix + 'public Response setMsg(String msg) {\n' + + nextPrefix + 'public Response setMsg(String msg) {\n' + nextNextPrefix + 'this.msg = msg;\n' + nextNextPrefix + 'return this;\n' + nextPrefix + '}\n\n' + nextPrefix + 'public T getData() {\n' + nextNextPrefix + 'return data;\n' + nextPrefix + '}\n' + - nextPrefix + 'public Response setData(T data) {\n' + + nextPrefix + 'public Response setData(T data) {\n' + nextNextPrefix + 'this.data = data;\n' + nextNextPrefix + 'return this;\n' + nextPrefix + '}\n' + @@ -1846,7 +1846,7 @@ var CodeUtil = { return CodeUtil.parseCode(name, resObj, { onParseParentStart: function () { - return depth > 0 || StringUtil.isEmpty(name_, true) == false ? '' : CodeUtil.getBlank(depth) + varKey + ' ' + name + ' = JSON.parse(resultJson) \n'; + return depth > 0 || StringUtil.isEmpty(name_, true) == false ? '' : CodeUtil.getBlank(depth) + varKey + ' ' + name + ' = parseJSON(resultJson) \n'; }, onParseParentEnd: function () { @@ -2695,7 +2695,7 @@ res_data = rep.json() else if (format instanceof Array == false && format instanceof Object) { s += prefix2 + varName + '_json = json.loads(' + varName + ')' try { - var realObj = JSON.parse(real); + var realObj = parseJSON(real); var cs = CodeUtil.parsePythonResponseByStandard(varName + '_json', key, format, realObj, depth, isSmart, true, funDefs, funNames); if (StringUtil.isNotEmpty(cs, true)) { s += '\n' + padding + cs.trim(); @@ -2759,7 +2759,7 @@ res_data = rep.json() return CodeUtil.parseCode(name, resObj, { onParseParentStart: function () { - return depth > 0 || StringUtil.isEmpty(name_, true) == false ? '' : CodeUtil.getBlank(depth) + varKey + ' ' + name + ': object = JSON.parse(resultJson); \n'; + return depth > 0 || StringUtil.isEmpty(name_, true) == false ? '' : CodeUtil.getBlank(depth) + varKey + ' ' + name + ': object = parseJSON(resultJson); \n'; }, onParseParentEnd: function () { @@ -7294,7 +7294,7 @@ res_data = rep.json() }, getType4Request: function (value) { - // return t != 'string' ? t : typeof JSON.parse(value); + // return t != 'string' ? t : typeof parseJSON(value); if (value instanceof Array) { return 'array' } diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/JSONRequest.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/JSONRequest.js index 20b97ba..79bca3b 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/JSONRequest.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/JSONRequest.js @@ -215,7 +215,7 @@ function format(json) { } try { - return JSON.stringify(JSON.parse(json), null, "\t"); + return JSON.stringify(parseJSON(json), null, "\t"); } catch(e) { log(TAG_REQUEST_UTIL, 'format try { ... } catch (err) { \n ' + e); return json; @@ -234,9 +234,9 @@ function format(json) { // var jsonObj; // if (typeof json == 'string'){ // try { - // jsonObj = JSON.parse(json); + // jsonObj = parseJSON(json); // } catch (err) { - // console.log('format try { jsonObj = JSON.parse(json); } catch (err) { \n ' + err); + // console.log('format try { jsonObj = parseJSON(json); } catch (err) { \n ' + err); // return json; // } // } @@ -266,7 +266,7 @@ function parseJSON(s) { } try { - return JSON.parse(s); + return parseJSON(s); } catch (e) { return JSON5.parse(s) } diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/JSONResponse.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/JSONResponse.js index 21a4321..065396f 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/JSONResponse.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/JSONResponse.js @@ -829,7 +829,7 @@ var JSONResponse = { } if (right instanceof Object) { - var m = JSON.parse(JSON.stringify(left)); + var m = parseJSON(JSON.stringify(left)); for (var k in right) { m[k] = JSONResponse.deepMerge(m[k], right[k]); } @@ -1036,7 +1036,7 @@ var JSONResponse = { } else if (format instanceof Array == false && format instanceof Object) { try { - var realObj = JSON.parse(real); + var realObj = parseJSON(real); var result = JSONResponse.compareWithStandard(format, realObj, folder, exceptKeys, ignoreTrend); if (guess == true) { result.code -= 1; @@ -1601,7 +1601,7 @@ var JSONResponse = { } catch (e) { log(e) try { - var realObj = JSON.parse(real); + var realObj = parseJSON(real); var format2 = JSONResponse.updateStandard(target.format, realObj, exceptKeys, ignoreTrend, key); if (format2 != null) { target.format = format2; diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/index.html b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/index.html index 2d8c495..ab29bad 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/index.html +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/index.html @@ -910,15 +910,15 @@ diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/jquery.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/jquery.js index 67e3160..24d1741 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/jquery.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/jquery.js @@ -521,7 +521,7 @@ jQuery.extend({ parseJSON: function( data ) { // Attempt to parse using the native JSON parser first if ( window.JSON && window.JSON.parse ) { - return window.JSON.parse( data ); + return window.parseJSON( data ); } if ( data === null ) { @@ -555,7 +555,7 @@ jQuery.extend({ return null; } try { - if ( window.DOMParser ) { // Standard + if ( window.DOMParser ) { // Standard tmp = new DOMParser(); xml = tmp.parseFromString( data , "text/xml" ); } else { // IE diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/localforage.min.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/localforage.min.js index d8761e2..9467fa0 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/localforage.min.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/localforage.min.js @@ -4,4 +4,4 @@ https://localforage.github.io/localForage (c) 2013-2017 Mozilla, Apache License 2.0 */ -!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.localforage=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;ge;e++)d[e]=a.charCodeAt(e);return c}function m(a){return new ja(function(b){var c=a.transaction(ka,"readwrite"),d=i([""]);c.objectStore(ka).put(d,"key"),c.onabort=function(a){a.preventDefault(),a.stopPropagation(),b(!1)},c.oncomplete=function(){var a=navigator.userAgent.match(/Chrome\/(\d+)/),c=navigator.userAgent.match(/Edge\//);b(c||!a||parseInt(a[1],10)>=43)}})["catch"](function(){return!1})}function n(a){return"boolean"==typeof ha?ja.resolve(ha):m(a).then(function(a){return ha=a})}function o(a){var b=ia[a.name],c={};c.promise=new ja(function(a){c.resolve=a}),b.deferredOperations.push(c),b.dbReady?b.dbReady=b.dbReady.then(function(){return c.promise}):b.dbReady=c.promise}function p(a){var b=ia[a.name],c=b.deferredOperations.pop();c&&c.resolve()}function q(a,b){return new ja(function(c,d){if(a.db){if(!b)return c(a.db);o(a),a.db.close()}var e=[a.name];b&&e.push(a.version);var f=ga.open.apply(ga,e);b&&(f.onupgradeneeded=function(b){var c=f.result;try{c.createObjectStore(a.storeName),b.oldVersion<=1&&c.createObjectStore(ka)}catch(d){if("ConstraintError"!==d.name)throw d;console.warn('The database "'+a.name+'" has been upgraded from version '+b.oldVersion+" to version "+b.newVersion+', but the storage "'+a.storeName+'" already exists.')}}),f.onerror=function(a){a.preventDefault(),d(f.error)},f.onsuccess=function(){c(f.result),p(a)}})}function r(a){return q(a,!1)}function s(a){return q(a,!0)}function t(a,b){if(!a.db)return!0;var c=!a.db.objectStoreNames.contains(a.storeName),d=a.versiona.db.version;if(d&&(a.version!==b&&console.warn('The database "'+a.name+"\" can't be downgraded from version "+a.db.version+" to version "+a.version+"."),a.version=a.db.version),e||c){if(c){var f=a.db.version+1;f>a.version&&(a.version=f)}return!0}return!1}function u(a){return new ja(function(b,c){var d=new FileReader;d.onerror=c,d.onloadend=function(c){var d=btoa(c.target.result||"");b({__local_forage_encoded_blob:!0,data:d,type:a.type})},d.readAsBinaryString(a)})}function v(a){var b=l(atob(a.data));return i([b],{type:a.type})}function w(a){return a&&a.__local_forage_encoded_blob}function x(a){var b=this,c=b._initReady().then(function(){var a=ia[b._dbInfo.name];return a&&a.dbReady?a.dbReady:void 0});return k(c,a,a),c}function y(a){function b(){return ja.resolve()}var c=this,d={db:null};if(a)for(var e in a)d[e]=a[e];ia||(ia={});var f=ia[d.name];f||(f={forages:[],db:null,dbReady:null,deferredOperations:[]},ia[d.name]=f),f.forages.push(c),c._initReady||(c._initReady=c.ready,c.ready=x);for(var g=[],h=0;ha?void b(null):void c.ready().then(function(){var e=c._dbInfo,f=e.db.transaction(e.storeName,"readonly").objectStore(e.storeName),g=!1,h=f.openCursor();h.onsuccess=function(){var c=h.result;return c?void(0===a?b(c.key):g?b(c.key):(g=!0,c.advance(a))):void b(null)},h.onerror=function(){d(h.error)}})["catch"](d)});return j(d,b),d}function G(a){var b=this,c=new ja(function(a,c){b.ready().then(function(){var d=b._dbInfo,e=d.db.transaction(d.storeName,"readonly").objectStore(d.storeName),f=e.openCursor(),g=[];f.onsuccess=function(){var b=f.result;return b?(g.push(b.key),void b["continue"]()):void a(g)},f.onerror=function(){c(f.error)}})["catch"](c)});return j(c,a),c}function H(a){var b,c,d,e,f,g=.75*a.length,h=a.length,i=0;"="===a[a.length-1]&&(g--,"="===a[a.length-2]&&g--);var j=new ArrayBuffer(g),k=new Uint8Array(j);for(b=0;h>b;b+=4)c=na.indexOf(a[b]),d=na.indexOf(a[b+1]),e=na.indexOf(a[b+2]),f=na.indexOf(a[b+3]),k[i++]=c<<2|d>>4,k[i++]=(15&d)<<4|e>>2,k[i++]=(3&e)<<6|63&f;return j}function I(a){var b,c=new Uint8Array(a),d="";for(b=0;b>2],d+=na[(3&c[b])<<4|c[b+1]>>4],d+=na[(15&c[b+1])<<2|c[b+2]>>6],d+=na[63&c[b+2]];return c.length%3===2?d=d.substring(0,d.length-1)+"=":c.length%3===1&&(d=d.substring(0,d.length-2)+"=="),d}function J(a,b){var c="";if(a&&(c=Ea.call(a)),a&&("[object ArrayBuffer]"===c||a.buffer&&"[object ArrayBuffer]"===Ea.call(a.buffer))){var d,e=qa;a instanceof ArrayBuffer?(d=a,e+=sa):(d=a.buffer,"[object Int8Array]"===c?e+=ua:"[object Uint8Array]"===c?e+=va:"[object Uint8ClampedArray]"===c?e+=wa:"[object Int16Array]"===c?e+=xa:"[object Uint16Array]"===c?e+=za:"[object Int32Array]"===c?e+=ya:"[object Uint32Array]"===c?e+=Aa:"[object Float32Array]"===c?e+=Ba:"[object Float64Array]"===c?e+=Ca:b(new Error("Failed to get type for BinaryArray"))),b(e+I(d))}else if("[object Blob]"===c){var f=new FileReader;f.onload=function(){var c=oa+a.type+"~"+I(this.result);b(qa+ta+c)},f.readAsArrayBuffer(a)}else try{b(JSON.stringify(a))}catch(g){console.error("Couldn't convert value into a JSON string: ",a),b(null,g)}}function K(a){if(a.substring(0,ra)!==qa)return JSON.parse(a);var b,c=a.substring(Da),d=a.substring(ra,Da);if(d===ta&&pa.test(c)){var e=c.match(pa);b=e[1],c=c.substring(e[0].length)}var f=H(c);switch(d){case sa:return f;case ta:return i([f],{type:b});case ua:return new Int8Array(f);case va:return new Uint8Array(f);case wa:return new Uint8ClampedArray(f);case xa:return new Int16Array(f);case za:return new Uint16Array(f);case ya:return new Int32Array(f);case Aa:return new Uint32Array(f);case Ba:return new Float32Array(f);case Ca:return new Float64Array(f);default:throw new Error("Unkown type: "+d)}}function L(a){var b=this,c={db:null};if(a)for(var d in a)c[d]="string"!=typeof a[d]?a[d].toString():a[d];var e=new ja(function(a,d){try{c.db=openDatabase(c.name,String(c.version),c.description,c.size)}catch(e){return d(e)}c.db.transaction(function(e){e.executeSql("CREATE TABLE IF NOT EXISTS "+c.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],function(){b._dbInfo=c,a()},function(a,b){d(b)})})});return c.serializer=Fa,e}function M(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=new ja(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT * FROM "+e.storeName+" WHERE key = ? LIMIT 1",[a],function(a,c){var d=c.rows.length?c.rows.item(0).value:null;d&&(d=e.serializer.deserialize(d)),b(d)},function(a,b){d(b)})})})["catch"](d)});return j(d,b),d}function N(a,b){var c=this,d=new ja(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT * FROM "+e.storeName,[],function(c,d){for(var f=d.rows,g=f.length,h=0;g>h;h++){var i=f.item(h),j=i.value;if(j&&(j=e.serializer.deserialize(j)),j=a(j,i.key,h+1),void 0!==j)return void b(j)}b()},function(a,b){d(b)})})})["catch"](d)});return j(d,b),d}function O(a,b,c,d){var e=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var f=new ja(function(f,g){e.ready().then(function(){void 0===b&&(b=null);var h=b,i=e._dbInfo;i.serializer.serialize(b,function(b,j){j?g(j):i.db.transaction(function(c){c.executeSql("INSERT OR REPLACE INTO "+i.storeName+" (key, value) VALUES (?, ?)",[a,b],function(){f(h)},function(a,b){g(b)})},function(b){if(b.code===b.QUOTA_ERR){if(d>0)return void f(O.apply(e,[a,h,c,d-1]));g(b)}})})})["catch"](g)});return j(f,c),f}function P(a,b,c){return O.apply(this,[a,b,c,1])}function Q(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=new ja(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("DELETE FROM "+e.storeName+" WHERE key = ?",[a],function(){b()},function(a,b){d(b)})})})["catch"](d)});return j(d,b),d}function R(a){var b=this,c=new ja(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("DELETE FROM "+d.storeName,[],function(){a()},function(a,b){c(b)})})})["catch"](c)});return j(c,a),c}function S(a){var b=this,c=new ja(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("SELECT COUNT(key) as c FROM "+d.storeName,[],function(b,c){var d=c.rows.item(0).c;a(d)},function(a,b){c(b)})})})["catch"](c)});return j(c,a),c}function T(a,b){var c=this,d=new ja(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT key FROM "+e.storeName+" WHERE id = ? LIMIT 1",[a+1],function(a,c){var d=c.rows.length?c.rows.item(0).key:null;b(d)},function(a,b){d(b)})})})["catch"](d)});return j(d,b),d}function U(a){var b=this,c=new ja(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("SELECT key FROM "+d.storeName,[],function(b,c){for(var d=[],e=0;e=0;c--){var d=localStorage.key(c);0===d.indexOf(a)&&localStorage.removeItem(d)}});return j(c,a),c}function X(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=c.ready().then(function(){var b=c._dbInfo,d=localStorage.getItem(b.keyPrefix+a);return d&&(d=b.serializer.deserialize(d)),d});return j(d,b),d}function Y(a,b){var c=this,d=c.ready().then(function(){for(var b=c._dbInfo,d=b.keyPrefix,e=d.length,f=localStorage.length,g=1,h=0;f>h;h++){var i=localStorage.key(h);if(0===i.indexOf(d)){var j=localStorage.getItem(i);if(j&&(j=b.serializer.deserialize(j)),j=a(j,i.substring(e),g++),void 0!==j)return j}}});return j(d,b),d}function Z(a,b){var c=this,d=c.ready().then(function(){var b,d=c._dbInfo;try{b=localStorage.key(a)}catch(e){b=null}return b&&(b=b.substring(d.keyPrefix.length)),b});return j(d,b),d}function $(a){var b=this,c=b.ready().then(function(){for(var a=b._dbInfo,c=localStorage.length,d=[],e=0;c>e;e++)0===localStorage.key(e).indexOf(a.keyPrefix)&&d.push(localStorage.key(e).substring(a.keyPrefix.length));return d});return j(c,a),c}function _(a){var b=this,c=b.keys().then(function(a){return a.length});return j(c,a),c}function aa(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=c.ready().then(function(){var b=c._dbInfo;localStorage.removeItem(b.keyPrefix+a)});return j(d,b),d}function ba(a,b,c){var d=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var e=d.ready().then(function(){void 0===b&&(b=null);var c=b;return new ja(function(e,f){var g=d._dbInfo;g.serializer.serialize(b,function(b,d){if(d)f(d);else try{localStorage.setItem(g.keyPrefix+a,b),e(c)}catch(h){"QuotaExceededError"!==h.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==h.name||f(h),f(h)}})})});return j(e,c),e}function ca(a,b){a[b]=function(){var c=arguments;return a.ready().then(function(){return a[b].apply(a,c)})}}function da(){for(var a=1;ac;c++){var e=a[c];this.supports(e)&&b.push(e)}return b},a.prototype._wrapLibraryMethodsWithReady=function(){for(var a=0;ae;e++)d[e]=a.charCodeAt(e);return c}function m(a){return new ja(function(b){var c=a.transaction(ka,"readwrite"),d=i([""]);c.objectStore(ka).put(d,"key"),c.onabort=function(a){a.preventDefault(),a.stopPropagation(),b(!1)},c.oncomplete=function(){var a=navigator.userAgent.match(/Chrome\/(\d+)/),c=navigator.userAgent.match(/Edge\//);b(c||!a||parseInt(a[1],10)>=43)}})["catch"](function(){return!1})}function n(a){return"boolean"==typeof ha?ja.resolve(ha):m(a).then(function(a){return ha=a})}function o(a){var b=ia[a.name],c={};c.promise=new ja(function(a){c.resolve=a}),b.deferredOperations.push(c),b.dbReady?b.dbReady=b.dbReady.then(function(){return c.promise}):b.dbReady=c.promise}function p(a){var b=ia[a.name],c=b.deferredOperations.pop();c&&c.resolve()}function q(a,b){return new ja(function(c,d){if(a.db){if(!b)return c(a.db);o(a),a.db.close()}var e=[a.name];b&&e.push(a.version);var f=ga.open.apply(ga,e);b&&(f.onupgradeneeded=function(b){var c=f.result;try{c.createObjectStore(a.storeName),b.oldVersion<=1&&c.createObjectStore(ka)}catch(d){if("ConstraintError"!==d.name)throw d;console.warn('The database "'+a.name+'" has been upgraded from version '+b.oldVersion+" to version "+b.newVersion+', but the storage "'+a.storeName+'" already exists.')}}),f.onerror=function(a){a.preventDefault(),d(f.error)},f.onsuccess=function(){c(f.result),p(a)}})}function r(a){return q(a,!1)}function s(a){return q(a,!0)}function t(a,b){if(!a.db)return!0;var c=!a.db.objectStoreNames.contains(a.storeName),d=a.versiona.db.version;if(d&&(a.version!==b&&console.warn('The database "'+a.name+"\" can't be downgraded from version "+a.db.version+" to version "+a.version+"."),a.version=a.db.version),e||c){if(c){var f=a.db.version+1;f>a.version&&(a.version=f)}return!0}return!1}function u(a){return new ja(function(b,c){var d=new FileReader;d.onerror=c,d.onloadend=function(c){var d=btoa(c.target.result||"");b({__local_forage_encoded_blob:!0,data:d,type:a.type})},d.readAsBinaryString(a)})}function v(a){var b=l(atob(a.data));return i([b],{type:a.type})}function w(a){return a&&a.__local_forage_encoded_blob}function x(a){var b=this,c=b._initReady().then(function(){var a=ia[b._dbInfo.name];return a&&a.dbReady?a.dbReady:void 0});return k(c,a,a),c}function y(a){function b(){return ja.resolve()}var c=this,d={db:null};if(a)for(var e in a)d[e]=a[e];ia||(ia={});var f=ia[d.name];f||(f={forages:[],db:null,dbReady:null,deferredOperations:[]},ia[d.name]=f),f.forages.push(c),c._initReady||(c._initReady=c.ready,c.ready=x);for(var g=[],h=0;ha?void b(null):void c.ready().then(function(){var e=c._dbInfo,f=e.db.transaction(e.storeName,"readonly").objectStore(e.storeName),g=!1,h=f.openCursor();h.onsuccess=function(){var c=h.result;return c?void(0===a?b(c.key):g?b(c.key):(g=!0,c.advance(a))):void b(null)},h.onerror=function(){d(h.error)}})["catch"](d)});return j(d,b),d}function G(a){var b=this,c=new ja(function(a,c){b.ready().then(function(){var d=b._dbInfo,e=d.db.transaction(d.storeName,"readonly").objectStore(d.storeName),f=e.openCursor(),g=[];f.onsuccess=function(){var b=f.result;return b?(g.push(b.key),void b["continue"]()):void a(g)},f.onerror=function(){c(f.error)}})["catch"](c)});return j(c,a),c}function H(a){var b,c,d,e,f,g=.75*a.length,h=a.length,i=0;"="===a[a.length-1]&&(g--,"="===a[a.length-2]&&g--);var j=new ArrayBuffer(g),k=new Uint8Array(j);for(b=0;h>b;b+=4)c=na.indexOf(a[b]),d=na.indexOf(a[b+1]),e=na.indexOf(a[b+2]),f=na.indexOf(a[b+3]),k[i++]=c<<2|d>>4,k[i++]=(15&d)<<4|e>>2,k[i++]=(3&e)<<6|63&f;return j}function I(a){var b,c=new Uint8Array(a),d="";for(b=0;b>2],d+=na[(3&c[b])<<4|c[b+1]>>4],d+=na[(15&c[b+1])<<2|c[b+2]>>6],d+=na[63&c[b+2]];return c.length%3===2?d=d.substring(0,d.length-1)+"=":c.length%3===1&&(d=d.substring(0,d.length-2)+"=="),d}function J(a,b){var c="";if(a&&(c=Ea.call(a)),a&&("[object ArrayBuffer]"===c||a.buffer&&"[object ArrayBuffer]"===Ea.call(a.buffer))){var d,e=qa;a instanceof ArrayBuffer?(d=a,e+=sa):(d=a.buffer,"[object Int8Array]"===c?e+=ua:"[object Uint8Array]"===c?e+=va:"[object Uint8ClampedArray]"===c?e+=wa:"[object Int16Array]"===c?e+=xa:"[object Uint16Array]"===c?e+=za:"[object Int32Array]"===c?e+=ya:"[object Uint32Array]"===c?e+=Aa:"[object Float32Array]"===c?e+=Ba:"[object Float64Array]"===c?e+=Ca:b(new Error("Failed to get type for BinaryArray"))),b(e+I(d))}else if("[object Blob]"===c){var f=new FileReader;f.onload=function(){var c=oa+a.type+"~"+I(this.result);b(qa+ta+c)},f.readAsArrayBuffer(a)}else try{b(JSON.stringify(a))}catch(g){console.error("Couldn't convert value into a JSON string: ",a),b(null,g)}}function K(a){if(a.substring(0,ra)!==qa)return parseJSON(a);var b,c=a.substring(Da),d=a.substring(ra,Da);if(d===ta&&pa.test(c)){var e=c.match(pa);b=e[1],c=c.substring(e[0].length)}var f=H(c);switch(d){case sa:return f;case ta:return i([f],{type:b});case ua:return new Int8Array(f);case va:return new Uint8Array(f);case wa:return new Uint8ClampedArray(f);case xa:return new Int16Array(f);case za:return new Uint16Array(f);case ya:return new Int32Array(f);case Aa:return new Uint32Array(f);case Ba:return new Float32Array(f);case Ca:return new Float64Array(f);default:throw new Error("Unkown type: "+d)}}function L(a){var b=this,c={db:null};if(a)for(var d in a)c[d]="string"!=typeof a[d]?a[d].toString():a[d];var e=new ja(function(a,d){try{c.db=openDatabase(c.name,String(c.version),c.description,c.size)}catch(e){return d(e)}c.db.transaction(function(e){e.executeSql("CREATE TABLE IF NOT EXISTS "+c.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],function(){b._dbInfo=c,a()},function(a,b){d(b)})})});return c.serializer=Fa,e}function M(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=new ja(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT * FROM "+e.storeName+" WHERE key = ? LIMIT 1",[a],function(a,c){var d=c.rows.length?c.rows.item(0).value:null;d&&(d=e.serializer.deserialize(d)),b(d)},function(a,b){d(b)})})})["catch"](d)});return j(d,b),d}function N(a,b){var c=this,d=new ja(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT * FROM "+e.storeName,[],function(c,d){for(var f=d.rows,g=f.length,h=0;g>h;h++){var i=f.item(h),j=i.value;if(j&&(j=e.serializer.deserialize(j)),j=a(j,i.key,h+1),void 0!==j)return void b(j)}b()},function(a,b){d(b)})})})["catch"](d)});return j(d,b),d}function O(a,b,c,d){var e=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var f=new ja(function(f,g){e.ready().then(function(){void 0===b&&(b=null);var h=b,i=e._dbInfo;i.serializer.serialize(b,function(b,j){j?g(j):i.db.transaction(function(c){c.executeSql("INSERT OR REPLACE INTO "+i.storeName+" (key, value) VALUES (?, ?)",[a,b],function(){f(h)},function(a,b){g(b)})},function(b){if(b.code===b.QUOTA_ERR){if(d>0)return void f(O.apply(e,[a,h,c,d-1]));g(b)}})})})["catch"](g)});return j(f,c),f}function P(a,b,c){return O.apply(this,[a,b,c,1])}function Q(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=new ja(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("DELETE FROM "+e.storeName+" WHERE key = ?",[a],function(){b()},function(a,b){d(b)})})})["catch"](d)});return j(d,b),d}function R(a){var b=this,c=new ja(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("DELETE FROM "+d.storeName,[],function(){a()},function(a,b){c(b)})})})["catch"](c)});return j(c,a),c}function S(a){var b=this,c=new ja(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("SELECT COUNT(key) as c FROM "+d.storeName,[],function(b,c){var d=c.rows.item(0).c;a(d)},function(a,b){c(b)})})})["catch"](c)});return j(c,a),c}function T(a,b){var c=this,d=new ja(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT key FROM "+e.storeName+" WHERE id = ? LIMIT 1",[a+1],function(a,c){var d=c.rows.length?c.rows.item(0).key:null;b(d)},function(a,b){d(b)})})})["catch"](d)});return j(d,b),d}function U(a){var b=this,c=new ja(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("SELECT key FROM "+d.storeName,[],function(b,c){for(var d=[],e=0;e=0;c--){var d=localStorage.key(c);0===d.indexOf(a)&&localStorage.removeItem(d)}});return j(c,a),c}function X(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=c.ready().then(function(){var b=c._dbInfo,d=localStorage.getItem(b.keyPrefix+a);return d&&(d=b.serializer.deserialize(d)),d});return j(d,b),d}function Y(a,b){var c=this,d=c.ready().then(function(){for(var b=c._dbInfo,d=b.keyPrefix,e=d.length,f=localStorage.length,g=1,h=0;f>h;h++){var i=localStorage.key(h);if(0===i.indexOf(d)){var j=localStorage.getItem(i);if(j&&(j=b.serializer.deserialize(j)),j=a(j,i.substring(e),g++),void 0!==j)return j}}});return j(d,b),d}function Z(a,b){var c=this,d=c.ready().then(function(){var b,d=c._dbInfo;try{b=localStorage.key(a)}catch(e){b=null}return b&&(b=b.substring(d.keyPrefix.length)),b});return j(d,b),d}function $(a){var b=this,c=b.ready().then(function(){for(var a=b._dbInfo,c=localStorage.length,d=[],e=0;c>e;e++)0===localStorage.key(e).indexOf(a.keyPrefix)&&d.push(localStorage.key(e).substring(a.keyPrefix.length));return d});return j(c,a),c}function _(a){var b=this,c=b.keys().then(function(a){return a.length});return j(c,a),c}function aa(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=c.ready().then(function(){var b=c._dbInfo;localStorage.removeItem(b.keyPrefix+a)});return j(d,b),d}function ba(a,b,c){var d=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var e=d.ready().then(function(){void 0===b&&(b=null);var c=b;return new ja(function(e,f){var g=d._dbInfo;g.serializer.serialize(b,function(b,d){if(d)f(d);else try{localStorage.setItem(g.keyPrefix+a,b),e(c)}catch(h){"QuotaExceededError"!==h.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==h.name||f(h),f(h)}})})});return j(e,c),e}function ca(a,b){a[b]=function(){var c=arguments;return a.ready().then(function(){return a[b].apply(a,c)})}}function da(){for(var a=1;ac;c++){var e=a[c];this.supports(e)&&b.push(e)}return b},a.prototype._wrapLibraryMethodsWithReady=function(){for(var a=0;a= 0 && i2 >= 0 && i2 < i) { valString = valString.substring(i2 + 1, i + 1) // alert('valString = ' + valString) - var _$_this_$_ = JSON.parse(valString) || {} + var _$_this_$_ = parseJSON(valString) || {} path = _$_this_$_._$_path_$_ table = _$_this_$_._$_table_$_ } @@ -435,7 +435,7 @@ if (i >= 0 && i2 >= 0 && i2 < i) { valString = valString.substring(i2 + 1, i + 1) // alert('valString = ' + valString) - var _$_this_$_ = JSON.parse(valString) || {} + var _$_this_$_ = parseJSON(valString) || {} path = _$_this_$_ == null ? '' : _$_this_$_._$_path_$_ table = _$_this_$_ == null ? '' : _$_this_$_._$_table_$_ } @@ -473,7 +473,7 @@ var tr = App.currentRemoteItem.TestRecord || {}; var d = App.currentRemoteItem.Document || {}; var standard = App.isMLEnabled ? tr.standard : tr.response; - var standardObj = StringUtil.isEmpty(standard, true) ? null : JSON.parse(standard); + var standardObj = StringUtil.isEmpty(standard, true) ? null : parseJSON(standard); var tests = App.tests[String(App.currentAccountIndex)] || {}; var responseObj = (tests[d.id] || {})[0] @@ -519,7 +519,7 @@ var tr = App.currentRemoteItem.TestRecord || {}; var d = App.currentRemoteItem.Document || {}; var standard = App.isMLEnabled ? tr.standard : tr.response; - var standardObj = StringUtil.isEmpty(standard, true) ? null : JSON.parse(standard); + var standardObj = StringUtil.isEmpty(standard, true) ? null : parseJSON(standard); var tests = App.tests[String(App.currentAccountIndex)] || {}; var responseObj = (tests[d.id] || {})[0] @@ -707,7 +707,7 @@ https://github.com/Tencent/APIJSON/issues var v = decodeURIComponent(part.substring(ind+1)); if (tryParse == true) { try { - v = JSON.parse(v) + v = parseJSON(v) } catch (e) { console.log(e) @@ -1559,7 +1559,7 @@ https://github.com/Tencent/APIJSON/issues var tr = cri.TestRecord || {}; var d = cri.Document || {}; var standard = this.isMLEnabled ? tr.standard : tr.response; - var standardObj = StringUtil.isEmpty(standard, true) ? null : JSON.parse(standard); + var standardObj = StringUtil.isEmpty(standard, true) ? null : parseJSON(standard); var tests = this.tests[String(this.currentAccountIndex)] || {}; var responseObj = (tests[d.id] || {})[0] @@ -1607,7 +1607,7 @@ https://github.com/Tencent/APIJSON/issues var tr = cri.TestRecord || {}; var d = cri.Document || {}; var standard = this.isMLEnabled ? tr.standard : tr.response; - var standardObj = StringUtil.isEmpty(standard, true) ? null : JSON.parse(standard); + var standardObj = StringUtil.isEmpty(standard, true) ? null : parseJSON(standard); var tests = this.tests[String(this.currentAccountIndex)] || {}; var responseObj = (tests[d.id] || {})[0] @@ -1901,7 +1901,7 @@ https://github.com/Tencent/APIJSON/issues var jsonStr = json == null ? null : (typeof json == 'string' ? json : JSON.stringify(json)) if (this.isTestCaseShow != true && jsonStr == null) { // StringUtil.isEmpty(jsonStr) try { - jsonStr = JSON.stringify(encode(JSON.parse(vInput.value))) + jsonStr = JSON.stringify(encode(parseJSON(vInput.value))) } catch (e) { // 可能包含注释 log(e) jsonStr = encode(StringUtil.trim(vInput.value)) @@ -2222,7 +2222,7 @@ https://github.com/Tencent/APIJSON/issues apiMap[url] = { name: name, request: typeAndParam.param, - response: api.res_body == null ? null : JSON.parse(api.res_body), + response: api.res_body == null ? null : parseJSON(api.res_body), detail: name + '\n' + (api.up_time == null ? '' : (typeof api.up_time != 'number' ? api.up_time : new Date(1000*api.up_time).toLocaleString())) + '\nhttp://apijson.cn/yapi/project/1/interface/api/' + api._id @@ -2877,7 +2877,7 @@ https://github.com/Tencent/APIJSON/issues saveTextAs(txt, clazz) } else { - var res = JSON.parse(this.jsoncon) + var res = parseJSON(this.jsoncon) res = this.removeDebugInfo(res) var s = '' @@ -3032,7 +3032,7 @@ https://github.com/Tencent/APIJSON/issues this.isTestCaseShow = false - const currentResponse = this.view != 'code' || StringUtil.isEmpty(this.jsoncon, true) ? {} : this.removeDebugInfo(JSON.parse(this.jsoncon)); + const currentResponse = this.view != 'code' || StringUtil.isEmpty(this.jsoncon, true) ? {} : this.removeDebugInfo(parseJSON(this.jsoncon)); const after = isSingle ? this.switchQuote(inputted) : inputted; // this.toDoubleJSON(inputted); const inputObj = this.getRequest(after, {}); @@ -3043,7 +3043,7 @@ https://github.com/Tencent/APIJSON/issues if (isExportRandom != true) { var commentStddObj = null try { - commentStddObj = JSON.parse(isEditResponse ? tr.standard : doc.standard); + commentStddObj = parseJSON(isEditResponse ? tr.standard : doc.standard); } catch(e) { log(e) @@ -3155,7 +3155,7 @@ https://github.com/Tencent/APIJSON/issues // var k = cfgLine.substring(0, ind).replaceAll('/', '.'); // .trim(); // var v = cfgLine.substring(ind + 1).trim(); // try { - // v = JSON.parse(v); + // v = parseJSON(v); // } // catch (e) { // log(e) @@ -3877,7 +3877,7 @@ https://github.com/Tencent/APIJSON/issues var jsonData = null try { - jsonData = JSON.parse(docUrl) + jsonData = parseJSON(docUrl) } catch (e) {} @@ -4194,7 +4194,7 @@ https://github.com/Tencent/APIJSON/issues break default: type = REQUEST_TYPE_JSON - parameters = api.req_body_other == null ? null : JSON.parse(api.req_body_other) + parameters = api.req_body_other == null ? null : parseJSON(api.req_body_other) var params = parameters.properties || {} var required = parameters.required || [] @@ -5580,9 +5580,9 @@ https://github.com/Tencent/APIJSON/issues getCache: function (url, key, defaultValue) { var cache = localStorage.getItem('APIAuto:' + url) try { - cache = JSON.parse(cache) + cache = parseJSON(cache) } catch(e) { - this.log('login this.send >> try { cache = JSON.parse(cache) } catch(e) {\n' + e.message) + this.log('login this.send >> try { cache = parseJSON(cache) } catch(e) {\n' + e.message) } cache = cache || {} var val = key == null ? cache : cache[key] @@ -6294,14 +6294,14 @@ https://github.com/Tencent/APIJSON/issues try { var standardObj = null; try { - standardObj = JSON.parse(currentItem.standard); + standardObj = parseJSON(currentItem.standard); } catch (e3) { log(e3) } var isAPIJSONRouter = false; try { - var apijson = JSON.parse(currentItem.apijson); + var apijson = parseJSON(currentItem.apijson); isAPIJSONRouter = JSONResponse.isObject(apijson) } catch (e3) { log(e3) @@ -7923,16 +7923,16 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea case CodeUtil.LANGUAGE_KOTLIN: s += '\n#### <= Android-Kotlin: 空对象用 HashMap<String, Any>(),空数组用 ArrayList<Any>()\n' + '```kotlin \n' - + CodeUtil.parseKotlinRequest(null, JSON.parse(rq), 0, isSingle, false, false, this.type, this.getBaseUrl(), '/' + this.getMethod(), this.urlComment) + + CodeUtil.parseKotlinRequest(null, parseJSON(rq), 0, isSingle, false, false, this.type, this.getBaseUrl(), '/' + this.getMethod(), this.urlComment) + '\n ``` \n注:对象 {} 用 mapOf("key": value),数组 [] 用 listOf(value0, value1)\n'; break; case CodeUtil.LANGUAGE_JAVA: s += '\n#### <= Android-Java: 同名变量需要重命名' + ' \n ```java \n' - + StringUtil.trim(CodeUtil.parseJavaRequest(null, JSON.parse(rq), 0, isSingle, false, false, this.type, '/' + this.getMethod(), this.urlComment)) + + StringUtil.trim(CodeUtil.parseJavaRequest(null, parseJSON(rq), 0, isSingle, false, false, this.type, '/' + this.getMethod(), this.urlComment)) + '\n ``` \n注:' + (isSingle ? '用了 APIJSON 的 JSONRequest, JSONResponse 类,也可使用其它类封装,只要 JSON 有序就行\n' : 'LinkedHashMap<>() 可替换为 fastjson 的 JSONObject(true) 等有序JSON构造方法\n'); - var serverCode = CodeUtil.parseJavaServer(this.type, '/' + this.getMethod(), this.database, this.schema, JSON.parse(rq), isSingle); + var serverCode = CodeUtil.parseJavaServer(this.type, '/' + this.getMethod(), this.database, this.schema, parseJSON(rq), isSingle); if (StringUtil.isEmpty(serverCode, true) != true) { s += '\n#### <= Server-Java: RESTful 等非 APIJSON 规范的 API' + ' \n ```java \n' @@ -7943,46 +7943,46 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea case CodeUtil.LANGUAGE_C_SHARP: s += '\n#### <= Unity3D-C\#: 键值对用 {"key", value}' + '\n ```csharp \n' - + CodeUtil.parseCSharpRequest(null, JSON.parse(rq), 0) + + CodeUtil.parseCSharpRequest(null, parseJSON(rq), 0) + '\n ``` \n注:对象 {} 用 new JObject{{"key", value}},数组 [] 用 new JArray{value0, value1}\n'; break; case CodeUtil.LANGUAGE_SWIFT: s += '\n#### <= iOS-Swift: 空对象用 [ : ]' + '\n ```swift \n' - + CodeUtil.parseSwiftRequest(null, JSON.parse(rq), 0) + + CodeUtil.parseSwiftRequest(null, parseJSON(rq), 0) + '\n ``` \n注:对象 {} 用 ["key": value],数组 [] 用 [value0, value1]\n'; break; // case CodeUtil.LANGUAGE_OBJECTIVE_C: // s += '\n#### <= iOS-Objective-C \n ```objective-c \n' -// + CodeUtil.parseObjectiveCRequest(null, JSON.parse(rq)) +// + CodeUtil.parseObjectiveCRequest(null, parseJSON(rq)) // + '\n ``` \n'; // break; case CodeUtil.LANGUAGE_GO: s += '\n#### <= Web-Go: 对象 key: value 会被强制排序,每个 key: value 最后都要加逗号 ","' + ' \n ```go \n' - + CodeUtil.parseGoRequest(null, JSON.parse(rq), 0) + + CodeUtil.parseGoRequest(null, parseJSON(rq), 0) + '\n ``` \n注:对象 {} 用 map[string]interface{} {"key": value},数组 [] 用 []interface{} {value0, value1}\n'; break; case CodeUtil.LANGUAGE_C_PLUS_PLUS: s += '\n#### <= Web-C++: 使用 RapidJSON' + ' \n ```cpp \n' - + StringUtil.trim(CodeUtil.parseCppRequest(null, JSON.parse(rq), 0, isSingle)) + + StringUtil.trim(CodeUtil.parseCppRequest(null, parseJSON(rq), 0, isSingle)) + '\n ``` \n注:std::string 类型值需要判断 RAPIDJSON_HAS_STDSTRING\n'; break; case CodeUtil.LANGUAGE_PHP: s += '\n#### <= Web-PHP: 空对象用 (object) ' + (isSingle ? '[]' : 'array()') + ' \n ```php \n' - + CodeUtil.parsePHPRequest(null, JSON.parse(rq), 0, isSingle) + + CodeUtil.parsePHPRequest(null, parseJSON(rq), 0, isSingle) + '\n ``` \n注:对象 {} 用 ' + (isSingle ? '[\'key\' => value]' : 'array("key" => value)') + ',数组 [] 用 ' + (isSingle ? '[value0, value1]\n' : 'array(value0, value1)\n'); break; case CodeUtil.LANGUAGE_PYTHON: s += '\n#### <= Web-Python: 注释符用 \'\#\'' + ' \n ```python \n' - + CodeUtil.parsePythonRequest(null, JSON.parse(rq), 0, isSingle, vInput.value) + + CodeUtil.parsePythonRequest(null, parseJSON(rq), 0, isSingle, vInput.value) + '\n ``` \n注:关键词转换 null: None, false: False, true: True'; break; @@ -8259,7 +8259,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea map[StringUtil.toLowerCase(item.schema) + '.' + StringUtil.toLowerCase(item.name)] = item function getShowString(method, lineItemCount) { - var roles = item[method] == null ? null : JSON.parse(item[method]) + var roles = item[method] == null ? null : parseJSON(item[method]) var rs = [] if (roles != null) { var schemaStr = StringUtil.isEmpty(item.schema) ? 'null' : "'" + item.schema + "'" @@ -9407,7 +9407,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea var header = this.getHeader(vHeader.value) var callback = null - var data = isPre ? undefined : (this.jsoncon == null ? null : JSON.parse(this.jsoncon)) + var data = isPre ? undefined : (this.jsoncon == null ? null : parseJSON(this.jsoncon)) var res = isPre ? undefined : { data: data } @@ -9592,14 +9592,14 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea var random = item.Random = item.Random || {} var subs = item['[]'] || [] var existCount = subs.length - subs = existCount <= 0 ? subs : JSON.parse(JSON.stringify(subs)) + subs = existCount <= 0 ? subs : parseJSON(JSON.stringify(subs)) var count = random.count || 0 var respCount = 0; for (var i = 0; i < count; i ++) { // var constConfig = i < existCount ? ((subs[i] || {}).Random || {}).config : this.getRandomConstConfig(random.config, random.id) //第1遍,把 key : expression 改为 key : value - // var constJson = this.getRandomJSON(JSON.parse(JSON.stringify(json)), constConfig, random.id) //第2遍,用新的 random config 来修改原 json + // var constJson = this.getRandomJSON(parseJSON(JSON.stringify(json)), constConfig, random.id) //第2遍,用新的 random config 来修改原 json const which = i; var rawConfig = testSubList && i < existCount ? ((subs[i] || {}).Random || {}).config : random.config @@ -9615,7 +9615,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea try { this.parseRandom( - JSON.parse(JSON.stringify(json)), rawConfig, random.id + parseJSON(JSON.stringify(json)), rawConfig, random.id , ! testSubList, testSubList && i >= existCount, testSubList && i >= existCount , function (randomName, constConfig, constJson) { @@ -10731,7 +10731,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea stdd = stdd || ((this.currentRemoteItem || {}).TestRecord || {})[standardKey] } - var standard = typeof stdd != 'string' ? stdd : (StringUtil.isEmpty(stdd, true) ? null : JSON.parse(stdd)) + var standard = typeof stdd != 'string' ? stdd : (StringUtil.isEmpty(stdd, true) ? null : parseJSON(stdd)) tr.compare = JSONResponse.compareResponse(res, standard, this.removeDebugInfo(response) || {}, '', isML, null, null, ignoreTrend) || {} tr.compare.duration = it.durationHint } @@ -11298,7 +11298,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea saveTextAs( '# APIJSON自动化回归测试-前\n主页: https://github.com/Tencent/APIJSON' + '\n\n接口名称: \n' + (document.version > 0 ? 'V' + document.version : 'V*') + ' ' + document.name - + '\n返回结果: \n' + JSON.stringify(JSON.parse(testRecord.response || '{}'), null, ' ') + + '\n返回结果: \n' + JSON.stringify(parseJSON(testRecord.response || '{}'), null, ' ') , '测试:' + document.name + '-前.txt' ) @@ -11324,7 +11324,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea '# APIJSON自动化回归测试-标准\n主页: https://github.com/Tencent/APIJSON' + '\n\n接口名称: \n' + (document.version > 0 ? 'V' + document.version : 'V*') + ' ' + document.name + '\n测试结果: \n' + JSON.stringify(testRecord.compare || '{}', null, ' ') - + '\n测试标准: \n' + JSON.stringify(JSON.parse(testRecord.standard || '{}'), null, ' ') + + '\n测试标准: \n' + JSON.stringify(parseJSON(testRecord.standard || '{}'), null, ' ') , '测试:' + document.name + '-标准.txt' ) }, 5000) @@ -11377,7 +11377,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea ] if (pathKeys.length > 0) { - var curRsp = StringUtil.isEmpty(testRecord.response) ? {} : JSON.parse(testRecord.response); + var curRsp = StringUtil.isEmpty(testRecord.response) ? {} : parseJSON(testRecord.response); JSONResponse.setValByPath(curRsp, pathKeys, JSONResponse.getValByPath(currentResponse, pathKeys)); currentResponse = curRsp; } @@ -11443,7 +11443,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea item.TestRecord = null } - App.updateTestRecord(0, list, index, item, rawRspStr == null ? null : JSON.parse(rawRspStr), isRandom, true, App.currentAccountIndex, isCross) + App.updateTestRecord(0, list, index, item, rawRspStr == null ? null : parseJSON(rawRspStr), isRandom, true, App.currentAccountIndex, isCross) }) } else { //上传新的校验标准 @@ -11489,11 +11489,11 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea } } else { - standard = (StringUtil.isEmpty(testRecord.standard, true) ? null : JSON.parse(testRecord.standard)) || {} + standard = (StringUtil.isEmpty(testRecord.standard, true) ? null : parseJSON(testRecord.standard)) || {} if (pathKeys.length <= 0) { - stddObj = JSONResponse.updateFullStandard(standard, rawRspStr == null ? null : JSON.parse(rawRspStr), isML) + stddObj = JSONResponse.updateFullStandard(standard, rawRspStr == null ? null : parseJSON(rawRspStr), isML) } else if (isML) { - stddObj = JSONResponse.updateStandardByPath(standard, pathNames, lastKey, rawRspStr == null ? null : JSON.parse(rawRspStr)) + stddObj = JSONResponse.updateStandardByPath(standard, pathNames, lastKey, rawRspStr == null ? null : parseJSON(rawRspStr)) } } @@ -11614,7 +11614,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea // } // } - App.updateTestRecord(0, list, index, item, rawRspStr == null ? null : JSON.parse(rawRspStr), isRandom, true, App.currentAccountIndex, isCross) + App.updateTestRecord(0, list, index, item, rawRspStr == null ? null : parseJSON(rawRspStr), isRandom, true, App.currentAccountIndex, isCross) } }) @@ -11705,7 +11705,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea ) )) { setTimeout(function () { - window.open(vUrl.value + "/" + encodeURIComponent(JSON.stringify(encode(JSON.parse(vInput.value))))) + window.open(vUrl.value + "/" + encodeURIComponent(JSON.stringify(encode(parseJSON(vInput.value))))) }, 2000) } }, Math.max(2000, delayTime)) @@ -11732,7 +11732,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea } if (setting == null) { - setting = StringUtil.isEmpty(rawReq.setting, true) ? null : JSON.parse(StringUtil.trim(rawReq.setting, true)) + setting = StringUtil.isEmpty(rawReq.setting, true) ? null : parseJSON(StringUtil.trim(rawReq.setting, true)) } if (setting == null) { @@ -12020,13 +12020,13 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea var standardObj = null; try { var currentItem = App.isTestCaseShow ? App.remotes[App.currentDocIndex] : App.currentRemoteItem; - standardObj = JSON.parse(((currentItem || {})[isReq ? 'Document' : 'TestRecord'] || {}).standard); + standardObj = parseJSON(((currentItem || {})[isReq ? 'Document' : 'TestRecord'] || {}).standard); } catch (e3) { log(e3) } if (standardObj == null) { standardObj = JSONResponse.updateStandard({}, - isReq ? App.getRequest(vInput.value) : App.jsoncon == null ? null : JSON.parse(App.jsoncon) + isReq ? App.getRequest(vInput.value) : App.jsoncon == null ? null : parseJSON(App.jsoncon) ) } @@ -13006,7 +13006,7 @@ Content-Type: ` + contentType) + (StringUtil.isEmpty(headerStr, true) ? '' : hea if (StringUtil.isNotEmpty(rawReq.setting, true)) { var save = rawReq.save == 'true' try { - var setting = JSON.parse(StringUtil.trim(rawReq.setting, true)) || {} + var setting = parseJSON(StringUtil.trim(rawReq.setting, true)) || {} if ((setting.count != null && setting.count != App.count) || (setting.page != null && setting.page != App.page) diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/server.js b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/server.js index ba2a859..10d2fe5 100644 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/server.js +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/js/server.js @@ -1,6 +1,6 @@ const Koa = require('koa'); //const cors = require('koa2-cors'); -const bodyParser = require('koa-bodyparser'); +const bodyParser = require('koa-bodyparser'); // const Vue = require('vue'); const {getRequestFromURL, App} = require('./main'); // const { createBundleRenderer } = require('vue-server-renderer') @@ -168,13 +168,13 @@ app.use(async ctx => { // }) // ctx.req.addListener('end', function() { // console.log(json); - var body = ctx.body || ctx.req.body || ctx.request.body || {} // || JSON.parse(json) || {}; + var body = ctx.body || ctx.req.body || ctx.request.body || {} // || parseJSON(json) || {}; console.log(body); var isML = ctx.path == '/test/ml' || body.isML; var res = body.response; var stdd = body.standard; - var response = typeof res != 'string' ? res : (StringUtil.isEmpty(res, true) ? null : JSON.parse(res)); - var standard = typeof stdd != 'string' ? stdd : (StringUtil.isEmpty(stdd, true) ? null : JSON.parse(stdd)); + var response = typeof res != 'string' ? res : (StringUtil.isEmpty(res, true) ? null : parseJSON(res)); + var standard = typeof stdd != 'string' ? stdd : (StringUtil.isEmpty(stdd, true) ? null : parseJSON(stdd)); console.log('\n\nresponse = ' + JSON.stringify(response)); console.log('\n\nstdd = ' + JSON.stringify(stdd)); var compare = JSONResponse.compareResponse(null, standard, response || {}, '', isML, null, null, false) || {} diff --git a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/md/lib/codemirror/mode/rust/index.html b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/md/lib/codemirror/mode/rust/index.html index 407e84f..4996451 100755 --- a/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/md/lib/codemirror/mode/rust/index.html +++ b/APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/md/lib/codemirror/mode/rust/index.html @@ -29,7 +29,7 @@

        Rust mode

        ",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue,c.appendChild(b),b.innerHTML="",k.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,k.noCloneEvent=!0,b.attachEvent&&(b.attachEvent("onclick",function(){k.noCloneEvent=!1}),b.cloneNode(!0).click()),null==k.deleteExpando){k.deleteExpando=!0;try{delete b.test}catch(d){k.deleteExpando=!1}}}(),function(){var b,c,d=y.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(k[b+"Bubbles"]=c in a)||(d.setAttribute(c,"t"),k[b+"Bubbles"]=d.attributes[c].expando===!1);d=null}();var X=/^(?:input|select|textarea)$/i,Y=/^key/,Z=/^(?:mouse|pointer|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=/^([^.]*)(?:\.(.+)|)$/;function ab(){return!0}function bb(){return!1}function cb(){try{return y.activeElement}catch(a){}}m.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m._data(a);if(r){c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=m.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return typeof m===K||a&&m.event.triggered===a.type?void 0:m.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(E)||[""],h=b.length;while(h--)f=_.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=m.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=m.event.special[o]||{},l=m.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&m.expr.match.needsContext.test(e),namespace:p.join(".")},i),(n=g[o])||(n=g[o]=[],n.delegateCount=0,j.setup&&j.setup.call(a,d,p,k)!==!1||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?n.splice(n.delegateCount++,0,l):n.push(l),m.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m.hasData(a)&&m._data(a);if(r&&(k=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=_.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=m.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,n=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=n.length;while(f--)g=n[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(n.splice(f,1),g.selector&&n.delegateCount--,l.remove&&l.remove.call(a,g));i&&!n.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||m.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)m.event.remove(a,o+b[j],c,d,!0);m.isEmptyObject(k)&&(delete r.handle,m._removeData(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,l,n,o=[d||y],p=j.call(b,"type")?b.type:b,q=j.call(b,"namespace")?b.namespace.split("."):[];if(h=l=d=d||y,3!==d.nodeType&&8!==d.nodeType&&!$.test(p+m.event.triggered)&&(p.indexOf(".")>=0&&(q=p.split("."),p=q.shift(),q.sort()),g=p.indexOf(":")<0&&"on"+p,b=b[m.expando]?b:new m.Event(p,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=q.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:m.makeArray(c,[b]),k=m.event.special[p]||{},e||!k.trigger||k.trigger.apply(d,c)!==!1)){if(!e&&!k.noBubble&&!m.isWindow(d)){for(i=k.delegateType||p,$.test(i+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),l=h;l===(d.ownerDocument||y)&&o.push(l.defaultView||l.parentWindow||a)}n=0;while((h=o[n++])&&!b.isPropagationStopped())b.type=n>1?i:k.bindType||p,f=(m._data(h,"events")||{})[b.type]&&m._data(h,"handle"),f&&f.apply(h,c),f=g&&h[g],f&&f.apply&&m.acceptData(h)&&(b.result=f.apply(h,c),b.result===!1&&b.preventDefault());if(b.type=p,!e&&!b.isDefaultPrevented()&&(!k._default||k._default.apply(o.pop(),c)===!1)&&m.acceptData(d)&&g&&d[p]&&!m.isWindow(d)){l=d[g],l&&(d[g]=null),m.event.triggered=p;try{d[p]()}catch(r){}m.event.triggered=void 0,l&&(d[g]=l)}return b.result}},dispatch:function(a){a=m.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(m._data(this,"events")||{})[a.type]||[],k=m.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=m.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,g=0;while((e=f.handlers[g++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(e.namespace))&&(a.handleObj=e,a.data=e.data,c=((m.event.special[e.origType]||{}).handle||e.handler).apply(f.elem,i),void 0!==c&&(a.result=c)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(e=[],f=0;h>f;f++)d=b[f],c=d.selector+" ",void 0===e[c]&&(e[c]=d.needsContext?m(c,this).index(i)>=0:m.find(c,this,null,[i]).length),e[c]&&e.push(d);e.length&&g.push({elem:i,handlers:e})}return h]","i"),hb=/^\s+/,ib=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,jb=/<([\w:]+)/,kb=/\s*$/g,rb={option:[1,""],legend:[1,"
        ","
        "],area:[1,"",""],param:[1,"",""],thead:[1,"","
        "],tr:[2,"","
        "],col:[2,"","
        "],td:[3,"","
        "],_default:k.htmlSerialize?[0,"",""]:[1,"X
        ","
        "]},sb=db(y),tb=sb.appendChild(y.createElement("div"));rb.optgroup=rb.option,rb.tbody=rb.tfoot=rb.colgroup=rb.caption=rb.thead,rb.th=rb.td;function ub(a,b){var c,d,e=0,f=typeof a.getElementsByTagName!==K?a.getElementsByTagName(b||"*"):typeof a.querySelectorAll!==K?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||m.nodeName(d,b)?f.push(d):m.merge(f,ub(d,b));return void 0===b||b&&m.nodeName(a,b)?m.merge([a],f):f}function vb(a){W.test(a.type)&&(a.defaultChecked=a.checked)}function wb(a,b){return m.nodeName(a,"table")&&m.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function xb(a){return a.type=(null!==m.find.attr(a,"type"))+"/"+a.type,a}function yb(a){var b=pb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function zb(a,b){for(var c,d=0;null!=(c=a[d]);d++)m._data(c,"globalEval",!b||m._data(b[d],"globalEval"))}function Ab(a,b){if(1===b.nodeType&&m.hasData(a)){var c,d,e,f=m._data(a),g=m._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)m.event.add(b,c,h[c][d])}g.data&&(g.data=m.extend({},g.data))}}function Bb(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!k.noCloneEvent&&b[m.expando]){e=m._data(b);for(d in e.events)m.removeEvent(b,d,e.handle);b.removeAttribute(m.expando)}"script"===c&&b.text!==a.text?(xb(b).text=a.text,yb(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),k.html5Clone&&a.innerHTML&&!m.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&W.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}}m.extend({clone:function(a,b,c){var d,e,f,g,h,i=m.contains(a.ownerDocument,a);if(k.html5Clone||m.isXMLDoc(a)||!gb.test("<"+a.nodeName+">")?f=a.cloneNode(!0):(tb.innerHTML=a.outerHTML,tb.removeChild(f=tb.firstChild)),!(k.noCloneEvent&&k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||m.isXMLDoc(a)))for(d=ub(f),h=ub(a),g=0;null!=(e=h[g]);++g)d[g]&&Bb(e,d[g]);if(b)if(c)for(h=h||ub(a),d=d||ub(f),g=0;null!=(e=h[g]);g++)Ab(e,d[g]);else Ab(a,f);return d=ub(f,"script"),d.length>0&&zb(d,!i&&ub(a,"script")),d=h=e=null,f},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,l,n=a.length,o=db(b),p=[],q=0;n>q;q++)if(f=a[q],f||0===f)if("object"===m.type(f))m.merge(p,f.nodeType?[f]:f);else if(lb.test(f)){h=h||o.appendChild(b.createElement("div")),i=(jb.exec(f)||["",""])[1].toLowerCase(),l=rb[i]||rb._default,h.innerHTML=l[1]+f.replace(ib,"<$1>")+l[2],e=l[0];while(e--)h=h.lastChild;if(!k.leadingWhitespace&&hb.test(f)&&p.push(b.createTextNode(hb.exec(f)[0])),!k.tbody){f="table"!==i||kb.test(f)?""!==l[1]||kb.test(f)?0:h:h.firstChild,e=f&&f.childNodes.length;while(e--)m.nodeName(j=f.childNodes[e],"tbody")&&!j.childNodes.length&&f.removeChild(j)}m.merge(p,h.childNodes),h.textContent="";while(h.firstChild)h.removeChild(h.firstChild);h=o.lastChild}else p.push(b.createTextNode(f));h&&o.removeChild(h),k.appendChecked||m.grep(ub(p,"input"),vb),q=0;while(f=p[q++])if((!d||-1===m.inArray(f,d))&&(g=m.contains(f.ownerDocument,f),h=ub(o.appendChild(f),"script"),g&&zb(h),c)){e=0;while(f=h[e++])ob.test(f.type||"")&&c.push(f)}return h=null,o},cleanData:function(a,b){for(var d,e,f,g,h=0,i=m.expando,j=m.cache,l=k.deleteExpando,n=m.event.special;null!=(d=a[h]);h++)if((b||m.acceptData(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)n[e]?m.event.remove(d,e):m.removeEvent(d,e,g.handle);j[f]&&(delete j[f],l?delete d[i]:typeof d.removeAttribute!==K?d.removeAttribute(i):d[i]=null,c.push(f))}}}),m.fn.extend({text:function(a){return V(this,function(a){return void 0===a?m.text(this):this.empty().append((this[0]&&this[0].ownerDocument||y).createTextNode(a))},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?m.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||m.cleanData(ub(c)),c.parentNode&&(b&&m.contains(c.ownerDocument,c)&&zb(ub(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){1===a.nodeType&&m.cleanData(ub(a,!1));while(a.firstChild)a.removeChild(a.firstChild);a.options&&m.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return m.clone(this,a,b)})},html:function(a){return V(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a)return 1===b.nodeType?b.innerHTML.replace(fb,""):void 0;if(!("string"!=typeof a||mb.test(a)||!k.htmlSerialize&&gb.test(a)||!k.leadingWhitespace&&hb.test(a)||rb[(jb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(ib,"<$1>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(m.cleanData(ub(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,m.cleanData(ub(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,n=this,o=l-1,p=a[0],q=m.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&nb.test(p))return this.each(function(c){var d=n.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(i=m.buildFragment(a,this[0].ownerDocument,!1,this),c=i.firstChild,1===i.childNodes.length&&(i=c),c)){for(g=m.map(ub(i,"script"),xb),f=g.length;l>j;j++)d=i,j!==o&&(d=m.clone(d,!0,!0),f&&m.merge(g,ub(d,"script"))),b.call(this[j],d,j);if(f)for(h=g[g.length-1].ownerDocument,m.map(g,yb),j=0;f>j;j++)d=g[j],ob.test(d.type||"")&&!m._data(d,"globalEval")&&m.contains(h,d)&&(d.src?m._evalUrl&&m._evalUrl(d.src):m.globalEval((d.text||d.textContent||d.innerHTML||"").replace(qb,"")));i=c=null}return this}}),m.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){m.fn[a]=function(a){for(var c,d=0,e=[],g=m(a),h=g.length-1;h>=d;d++)c=d===h?this:this.clone(!0),m(g[d])[b](c),f.apply(e,c.get());return this.pushStack(e)}});var Cb,Db={};function Eb(b,c){var d,e=m(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:m.css(e[0],"display");return e.detach(),f}function Fb(a){var b=y,c=Db[a];return c||(c=Eb(a,b),"none"!==c&&c||(Cb=(Cb||m("
  • UU%7w{EEET zr#pf4+Z>@T|HnfPsxs{lt&>Bw`Y=;IpQ>!*%RK2wM1%EA;M_w6k6vV*ML(i`Q%#7_ z=V~Xy^`-k0bR7dvy-ONNue?zc$Ba2=X+0OAf9Q|+gDJlR3?B?LjQm>)e*c4^H9>Az z$i3#8d~54RIAlcB+x;UsxXm!iSxl`6suVq;l^{?6;c|x0CjP{w14;xAL6q>&oU?J&f4@=v_-XtD-f$VA}}i zQ`t3AFy~S9vIX=70u(e3W_2)#l!_<(s3L5=h)d3qI?RgCuXuI`z8K1B_~>P)y%k!N zhE3NADq8rt)t9FG4Dkd>xl z6AuTa@2_W}Jz&nDN;2UJR7<=4Y8ufUe-CTf8>`!!KaF(T8OIa-s-p}0x0X(S^SV1wE z!jXnrE**0gO>KnDaf}BHcNpp)sa$yYstKjiawA{rtSzDwmbvOM#!^X1$L(Y7%sgWZ z%*s3aeJQifhSQQVB%+7krtNNHtNF`nLg!6pO4$i}(&kOZSE3qx_F5I{J#1`ALR^m< zYhk{mDpB6=>wC|CpLgU(L-JH0MbkbQob{0M6axLsGKm$D5c2~R--CU6F-!HoF+?9` zJCir8L*{-0zE|?Wc|%z~e{f2gi(S;>D4ygko?O)I_j*uuBa(42%lxHa^fhO@HszO0 zh9tD8-OKhW3?e4vL-%d7oLAd+Y2ci?{zZ5SS#pv+tYyqanzW7d9lW(TT4F!G{34Buq`f6NCzoXzB z%3TNgHl2R8%Tz@8PO@v-loKx8c0JIPY+13b3S)Rkx|A#LXttONAa|N zMP&7E^^~#dM};#@Wix{^py(~$JY1TWvpx#;;0fXV*PyQ3Yo)$B;M>CZNco(X@n^cL z0>26Jtse-UFT8CxOiy3KLtpfX=6+qGRBA_4sn9}8TdEqiUEmSum*LiB9mb; zWd~nJ$(Ic$Z;?evn^0P;{?H6GuA;%L>6uVKr~j9JD893cPN+=xwEWyXNdvKMbl{{Z zri^-9U@VP@K;sr8w{(-DFmd0l*@kAOfIle2otlm${{{)5LkP9S(nx4o1kj)tsslzL zw>PGqkMJGPsdk6RqfzZ1;X4T0>|*47Bm#I#B-Y_*wFLeW#5!E0oB3tSu^5q}Rs0L# zJT{10HIlOch8 zes-X)ojdH}E$QQ^TRwj;49Okuea1@x=v=?dhyUX{k^3D)J$j3o zE&LrT@@V*&M84X|ETUr!(Gj-r`0vd4H~6k4<)~~XB~NmGU7FQ|15e=+cb)38&L3RD z7RLJB$=uF&1}=sDmJ-+`F4gx>VD0FUp`tQeZ3Vodl20nCa`B7o-Y(D@8pV%XNrKXT zHaFfhZf=%0@MSEhHeWdV__;|B{3J=|Vu3_@j(2|3R#Mmw=(8n0J#@AiQ zRIs;Bkj&82-{c?%5&_=T^%SnfX=-;^eD=nE4L+8EUB&6oVB*u8fdD^$*bmg}LBg%D z7==&_L$og}{Gq;u>b`#P4_w!S-F?#!i0;sDxSRd7Ta*tetr0B=@+}7=5>*ejb)X7n zM+!x}=SKJF(Q11P9?IT{gw#g6RCw`1w(8StL*7%^3r=&5InE)^S*%qjxwc$X4wBsb zOr<7#zK?mziUPFeCu<9zKP%YAD@1@w!%YCJQg7)Qq#9V5Gp=apZ?#MfWL=axL_ap( zqX^l^_39BmFfWVSN3?@#dxFn#AWKWM4I_c2xSH_6V^fJDbM<^029K5w=i?E*QUad_ zHko=%l(SR)Wf8rqp?<*z(YP_=p%(W!j!M>|P6We0YEcZS<~BNClUJggttt1eCh0Nj zAJ!GOypUndTs*xH6`j9;chXZrwST=HDZp&oAnYv(A1={#5s~F|3T|0y-ex}{X{+gQ zsY=f&nWqcrk(3uTB-Qoyqog>Srhyg~v^$3sRP&g$P}u*1BxmFFi5_;ACv&r@@FYUU{eGl84L25Zr;n}Q^qur0xLCEU$Sv2B=^jw^HNh%fn< z1{qxh^*oFs{D;>~=s=K117=sc4R4I-P4W?V)%&-tg_NgM=ane5w3Vk+D=!nTsePTN zx0fqbTB14OOm1>+q7~h7nMNnXsTd$+$B4-YdHD|3X{^>IQ|K|&KNbAY&9 zu$bKZ_?1o;enrW+_>VosIN0TcbJu>rlR$B{4PiB^p^(4B7aBv}c_Fy^>`|}MGq5JnDdy^AGo(Y@8 zQ2D<}oF6`Ee8?c~nS98YP>UACiW(pa2NB{%23j{mJ>;p(lKs!j9w+Z8+4@QWribsHKqgnnD1yBc^ z(nvc4bqDTe^tW|=*dbse(31%6J69%f7!e{l#KU@(=rOMm-7{pAc@pw{W+p5GB;{L4 zCOCZ}p7#+O9@>*V2M2;&bf-Jv{b45~zFZ8`SMkp8D#|g2Vd6@sZDK)M^oaxC1x=N3 zd=-`#l#PTHs>#y|1)BFulh?qHCv6q0(*9F>B_7Fy-%wvrPX|B~0f9_i|MYD5CNWF=iSPu9imJ+atpGUntBbF}%?HXxtVu0hTHZJapE59P--(^qy8jL&H+STAzhsmWf(G zx0sJ9R{R-q5F5s4ASufEmTRI_I?vO~bv%1qjME#>1k!*7s!i7(y@&nOL5qU#*I1sK zPk}yE6fr~A3y5uWwB!rIFG3&Cd{ifVsboamf~rLMyhsCp4f_Ef?4oublT1$e6tN+4 zX&MQ66qb+B0njgV_M6Zm#qU*rA?@rJ$WaTvW?hk9EgN?b_tG`F5`Uw?!eO~CHVuwe zdwyur4V$l+DsxB=<;fS{en>;N4S8LMs{9>Na(>l7$mHHnrG=hjkev?@D%b@2XaP@0 zE8{KD;M^zt3hn(M@|Q);v)IuGd0pGMjqbZ(8RQ*=%wR}G`a2czonm5DRqpH!dTHX{ zGv4i3o{ve2A6B3e9gBuTNxJNxw7Bi)81!W1CBn675pGaK55lbi#dbX}mYOIrqvtj) z@h?&6U}8W=ceU#Yt`)cNmH=qvZ&`u(R=D0@3ccXw>`T2Mobu+tgBAzWGrlQH!nweM zY(|J44|632F%*V)mU+}WWW_JyErB;$>25P;{)u@}F1DpilANUPV+nDQL5Cvu)Ll@h zKb<}`J;Qfo#V9plA=10&KYV|5(KK?-?u+O~@Ygl$=J56Swy33F1abDj+fA;;>m4E( z0{!u9Qpm8eZmY`Y_wt~>4I9`DVx#2t9ZYUmbG41MtHcxVM`A%=;ynA=yuPS_TR2c{ z5$x7Jp>Gb|i*0)u^#m`RrKP)h?PXE24fYh7H;4&d9_ig(6-V+Vm4~_MgQKO8iS-^t zNJy_{j9qKzrDuXpqIQ~mO~2<(V#Yin*F>jwmee2@)Xk9Pzp&qQv&01f2iw`%OiUtH_0}K<%lwD~4Ypo(!7kFA>8>{}0On zIUCUlIXnL*Kn#Bh`M%cV9y5yPGcz8g_xj|uQA2|Gb24_xE z{(R%Q?Uhi!!y9}k?Z!`BYde0b@5WD9E4ug8(UYIN;Jydwdidz;&5d8Y96bqpd=_+n zN$B~}*72vTIo$(bJU&ypzqIuHXnY|)P9eZ>iKO@oD8Id+1qAEA|CdngvBhnV6$A(< z_ZJWl#s5PnrmQF<>TYW6;%w(g%JiQ)v5>^Swo3w-A#(6noHjaX64df*Q{s4|q9uxZk;T z{Cs&p?*3grmM^M^hv@>@hH|jey{GFXWusO7w;!GRFWL0M9~v6Nun!>zf`6*d^^l=R z(TX`{{aI+g967HQE4J>u)z5mLi%WZ%9{b(4KDdPG>w4IHdekw3KIU`3txv}Ve@kMO zag-*Qg|}pCWf48Z!QMNWam*T~3Oa1nTEavTX;G@7WtTnrIM7O^)+0#6iNieZ)LLrj zuDIZ-+a?~j6S7CN=C+XOAN@?!>nU1WX{Rir#fHq^OTf`Z;i?bm3}>R=<4zUSm!;Au zX&h5Z7z#mW23o_OD@L1@*`4tTAN1O0w4U?BE?qAH@XD+iW!7XiEkMQbhWz}ErC<78)>}GK^mcoV(|3&|Id<1Ojqf3LTb zMBu=->K(Oyh{zI*LXu4p9e2xI@Z%tBXcR0Re9pf`lPG_6lTR3-X~Gyrn_4gAf`+qR z*cro2t)kkTulVN>%(+q*c26XL|mXmoW6{XQskd zc#%A2v!F48TSeKh>`aQn7v#SciiAJ1)j9Y?(2<|O8wCdfBK>~^o|>tnrJ1FvBPsKL zMqQ7}xe|&X;#X)eZSb)~Jc*0cHo1s$fZc@^2tw$qC`uTFEoY26J!5bdER#RlR6;>toS<`Bnj6HUOW8E;>v zk1cq?TunWtx7Q}RuV(_0Z-0)nYB0B6gdwFL=q~cjvnXP1MGQq^v#>bD0c@u;34_0YCsDusCWptLLp2FaH^bXxuCSC04Ez${fh9z0y2z0@9zf7JB z?V9)$z#WS;1}(xKb&fU;G%SWnC2BS4a(zuEO3a`dWeTyzuDy^r1Rt_!Qe%9?m3Xq3 z2KCC7PBD#`CfnxFzw16$ZQ5#(wUTnpf+)E6R9)BDWuzH|)&|Nx<*~Eu;7|KqU|C@P zl}l5^H`h0gIO9R)iQ40_iFWa>s{Cr#ab9kIun&7mC&b}o#j=Rh|Gb2e=q^LM2|u5G^rL&5Y>bq&pTc3+T?5}7RCvgHXo z)sm1^R5_HwU1m`St6%}=;vxwJgHX~*Y2rGxIH8PmhK9@%GC>@t#z7`%pWHI*u_hs# z&CJ?hR0l4TNnbcEA#!!zxOl@_0=q&3E@)I;=d=2Qg_-`1L}?KAymL8Xp`Uhw@`O>I zazd{(yO5M3n!%vS>4B70OSjq6g3J=mcj%~$rP)-}dRZ5zSxGxTh^fTXK^o5lq)jr) zKoQKWUHJP2b<>AOfh{w{y_{CrU4&Uu3+G?on8x6e#;M)^{Tm3=AT$5{34f&@1^53} zZ~y<{FYIV)_=COw`470n3Ca%&AcpL!Sb`-R90(eBACBx$B_blrgQ8frGt5YoYPwFi zPQ^X!A>4{%wITB6&mNoZc-t{Q+`T=+?;-VoBJHdFDXFfOtl2D0Tb43Qbd* zka`%#yhy>YrXD<&ceMTNUgf$CQsm3V%S(&#(+-{;T&>-sSlExPD&i-|6p$gz&ZmO5 zYeOUvLhgh#w}6Nl>TbG0u*Ep_>UsSi@bDk1cBTU2nKu|9AY4KqAe{dN4?p=x*v{6> z()>TaNREc30nP}TFV0jd?UdXB?r;RuzS;pPJh)JJlE2Nw^C%atq^kr-a7%M5dqRsC z4X50Vl9p%MP6@=HbHSTM8o1=r7g6bRpP$*Bnzu%47Zsqb~`hd zU6Pk<;==979U`ecj?H#544R>u zDi)^h#vkEqRW2CK2PST%I?RztJ%Z2*O?iPtRt51wSE|a-j~0I^DSt+L63qyfV>gDN zby4*!CYL;M=$@7u5$VcYF&$wjkJzi%A7$R!h2ZvMAbvF~5t+g$YvUC*S-_!Co;-Cd zgQlJzE1Nc23pdAdp;@(3AEq*Pb5&R3BY|1)>fmj7;w^0=7CN2tgkaZX1S+bX88IM) zb*H)j>zUdmfL)lU)&cxRPQ$!7^ShqO{RcavA4PXUVc29eEM zghb7yA7Kf51xnJew$Tfv%f$=)6=~y`e({7<=Fw-Roh`p2@rJduh?4x3&?iOV&gSsP z9#CU&E>WPd8l$!zH1e+UcroG2omRjH`uAU+%GHdR=O<7|5;%kU(hU$|%iqXXF!P9x6hK05Cr#8@xN75L z9Dns$6T`_MekBLjG!0of#xntLgf*)nNlhe#kC0?kZ{$UYE`ACFPYzym6LCs^ zI<)w?Q~sX3yb@2f(uj4Dz#IAy9G>LhTtzZr&4QkH312xmmYptLAtkr#|FU=0J4vee z{B<|Z2z#n=Ql$_Z%VH^#421~IpfS`~@+CozA}O|%0EAV4B)~Zvj7@+Og2oz2o|WcQ zNe*#Pv{wJgn6N~hNYm znKAk-4^nrQdRb{{8zaArvY9mC%69G%VFVco-HtjZ++;CejQ2-LD zw?vHi0>}!uv!~GHTX|*-*}8vVH|MX`%l$t#Mo^>+#p2D0BiNHx&Yo{_KmJ{sbeKt^ zH9AxS`&{w`x_@nM@X0M#rvE^BX=c@3>2S|q-6gict*L88zFz66x@?|9E99C&r)uvn z+WWi#VuS22w-N-UL9BHfx?sTUC=xacf$ATOXR307AtBqQ&f;mM9b~^Uh&*YC2y|6BtyF{) z)eh_&p?Lp2wHW!9IQoPlX4qLlIsiI1hfF@9z0sM&+TLo!tt{P9~LgM-kMY(5UxwUw&SLQ-%$8E#^vu zaS3|!8zGu7lJ$FIGb%d*V7 ziwM<>8AF5w08v}LfXq}q#+K1Ucv$UzBx1oPZLGMBZD~GMAr+^;Xy*KsGC5nm@V|J= z&rxVcbNL91D#y)1m*IcnTjTNx??nT)6*e1I3E~Zn$@kjSLhod$l3rVL5WGtedl=^_w!Es5h=t zo?3Nv1bb`PH~7F)hT503P^guY(YJMYsVtAuk4Vld9#un#GJ5;?50DewU^WnysY8Zo z`v7Z+P=d6+ksCm>>vZo0=MbAmzKPr+xnqwKbIKi#raTh21&m8rkLkazW*nsgX5DHw z{DG!5=yx{Zhh4?GWFB_?>{(tpvnn$s7pW6xHFQ5E;AEH8V1mPEZuraI({vA;tRIC4 zfl1Z&{g^|@1Bmh*$Lz=)dY@*^TdN(%(w@9Iz?t)uzA6Kye~uyj9~ceCa}qp0?{oT0 zLs6ff6hlOjz9|!z1~U!IbGd;g7QAKCM;f}Cw5o3g%XPcH86Bn(n{o+{->w$CSLbeW z_SD#gdSXy+VnBwJ3!WEGGI}NL{Uzl6%U!gZQJloH5-{PW%W0U_n$Cw6{o~B5&@lox?paEQ+?zg{Io4DB&ewK< z3vp<2*zREAXIX`iOTG=A%u3Q9kzhtl8Lm1Q2s^MaOfYcr{)bVOTTSKi26J=y)z zPP$#=2BO|gGr743`G+SP{>z)3j*LWctm-y75`TskVDCoJr@+}AQlcixAvl;DrI!+2 z_wK9byB5H0?WJ5CRvio8^ey|E|3EJBpV?3w(?Z!-;zH?&Gu(gqQKcV{hv}W7^o7eExirc|zd)aL=^&cMTWp+cUl~Jd$7TYfx4_F`?4@Sb*U6b{hza;|u!cMIHRkq70AJlw&tuvnzlrPliz-(p~??R~e;O83m#? zLVZNE+H0C$52CCqlmpYCu<--yl9`bW(G$lLO8_0IS{8TkG; zbpmXlRN4jGE*ty79n}P*JXB;2n$^52fb9#=h}h3+VeN_ZbT2f zy*wekaR~&GbZ2P;G(vR?!_-^@%}hl-71-81f~6IgXusMvMcGY0@aO4 zteva_zE)V}a>uhToBH}o|9+9;)Sd%3*^!-ln#jLP<`=;F^OmBEA0z#SRJk$zS;g+1 z{_N5Z+Wu`)58M5l!=3a<7gr87H%e;&dZ!Vu4w{{-TK8J}ktX5SE~VGa^TZpMi5ukm zu8fI4LNF2|O9B)RuwU%8?}Tcbi-a8P_ycL}X9=x%kbF-CixS4l{I$rni#rOENY z1fSZ3=G#mpy{5!9#XY8p3*SBK;1A&A{HaAEq_LLT_By8#pPqVqjgA4VwfSZnTb&7q z%y0hxuB85>Vi;N--_ZOa6E5L^fH3}7#UNv6ZfX2q%$54KGKxCt_n$_|)Ovq#w3r4o zeo9c(k-5pRd4J@PVB})Zk27Rq+F;Nm1L>$gHF+zm&np`c+&%`SPXnt`8FClK1b}tF z(xr^pD^53dqTm_Gq;0R+p3|+}w;ZQA*)Q+63mBlQ*GV{>OZstYTzjc?#v0v~OcX80 zMou0+yf{-bj?Ks7+^cwlIy+2P;r(M%WHu`&fHQfDja-R&*1J-YXLa<+q-uG2JfS(p z$pLaPAx)KvO}`kFX+<+%1;yMb2B|wh%`MVo$~ z5y9s8E}7XJ8SSWPTr~$!aVSPvs8l+3?2~L<^*i#@VLlXngC#YzKNb}Fp5)nVIbKqj)A}JDj?G{6{x2&@!{>+4?&r<1CsT+Tf@=Xs(BL0=$T; zGn5L9Gg*Zf0`Tw6aA2tOJzGK`&`2XrY8Bc7IkAHWg^!}sbfFQX$_aCsHR&?&%xo{6 zDFp|jESU{8CnroM8e^uhni$oG!_`hgL%l{#r=t>>7($Ko%#6rXp3W!SEqq;ha`AsK z%z-bZB0Uvzb&+eTRB2Z3T*TF7w-aSo>Xk&3j%}%KCL<~*$?W`3W!rc?Xv)b@)gJ*= zDK0wf7}JJWC3qH{xPVYXI{DkyY#}8G%F;6x1QBf~^~%6M^!(n(}j0`xO; z2|e0)bID#c!ZL|o+Dn@);gPJ^a(6q#o0{g-PF7xi;&a5F3dMo_Z?MHUqrYQ&qay>? z0nt6L!D5vSkZX4p<#Z5QG7x1JWOXh{zta5Po!ZrVR05@Ia=TgcqvhDWHjJv-c<&_8 zoEzqfN`J_uKssUA$=z4nlo%Qn)tISu0Al263z-UQV!d*%#%M0ua@#w;Vba_kUM2Pw zr;l>p4GzcUmG3Td=4UbQaQh|5ns4$_Q-Z4{vCccBIZFZ0I9`Hn)6iKVI40qSrvu2R z1zNiscKCg}aG+Ym*tN*$sss~K}>I25PP3<7$LHq!1yO*isbueNvU_7l?x zH}j69M{ezF`-3)l)Y(C?vlb^tb4vQ1QG>7=K$kKgmL#h@YPV?k=>yEF`$gZhSWQ7> z^HDQvjaV`07C>p|Iiv~}^g>Qz!7@#q>-JQbGTX^A^|o})<->LceXU|X%?r01eCRW6 zSu&|_NXqs8VXXd0sM;&Ea1_BrhjT9Vn22wn13@b>6|LY3-(PhI3mF_sKX;q8N?&-j zv%V3w?wuYyqpiPuwZ)g10e*WA$f&mh>WF!q3Vp!v^X3VBU70+;rZBz3wYusfhn5%+s>`F8OOM-Csz7K-`&PM-1 zZ|54`apwMTdbB@%73}|!jbu%oE$mDLjg3v6oc=2zB~Hn03ZRC5L&@pnW8?>e&>fQ# zbz0&BxfqVn$Jk$vJ7}ru!JQzIGqX)bC%FGc|7oH?J9JA@uc)H0`qA(5JH`H%pNsPY z@*YZv3GFZKRz}f1%Hhk%I+&DHUfc*Jt7l7iX-t~%-hyJFNXEvY3;6U=dj95V;Ga9S?0)-)6A#|Og@e5FCO0PK6jtz3r+UOK;JtF>Xc z_{3?$x+7H`KGO^X_BrWccG-@sQW~^^?8j?M2FmX{b8kj2b+OQoSxauHNpkmYWc$=e zpf5#CZI|gjRkU=?So0KNZ~-keU7}h$O15W_ZCvH%#LP1G!x9gAW@P$)jX-#)8Bzr6 z2I578*H0cFJ)Y9EWyZ`h_$x0x(Uri5VcbUJk$wo>-*OvMb{3VDrgEUK-*;P8RT z^>>j?rn4JRTG%w$RoHdEcPzSB+|_wgM#cfKeu2<*e|B8GMTa0 z4}^XZ)X#Xr!f;o2!TOSV590Hw8-fU~j{(C6VEp%~{>L3-o9-xY1r!L#_Q!tXf3lKF zrVcKqPR{>%xc|jUs#z=JsABr2249ln3SpDNrDLArl|j3HyOBm|P<5Z)5}dX5o%I>{&=8-#N}wfmisRj>qwX~+|3Qle3XqX&T24s&?a>4TI0 ztG)}W!vtx;J;El3>x z{Ws>XkZl#+OkEb-FK8l0Pq|BX$3Q7>Ohbfx1+5z?lG5nK`P{4d%PFtWFW5%yLp|xb z8I9B3RY#F?m}0jbfoffi3N4d!all>Jz@6?zu*O?-7V0NeIAGjvk?wi>z@wIoqE2PC z6+e4$XSSO4gYl4+${ou;D91N)p3 zzOGTI1SdAbi_7?0ibpG=WSghrXDe`w>#z$)YI#;F3r%ZL-F~KSatd22%{Y$Z7kX9~r;G0c56$t&-TO&BBZ2#oO71Np=PK z&FH~^-#J;gvgJ{Ivd$-Qhg@b74|EP|5%+ohz@9sML2m7>^4TCsy?g~Qi9WbEi@xFY z?W~Au$l~pH@RPm$buDudl!KAihI(h`4h0P2n89Jbz`qyP9?*U2zDIOJ$fO*l-Gw6N zyGT$pNhDDga))ouByjs5@B+6P5Q~lXyvldfZ#{iUd&N!?=eM!v?cpdt)fY3B z8W5px`5};9@%5ON6XKs~lB>hwW2)0U4NS5uzoV<;o`=ROAt13duYj(^*hC5;krG|7 zpWI}GBhYp7X_Vtwnuf?6F4BO-$DsHEF(d* zcz%*h3$>gT;Pxpx8${bGbh8fcm3&;{f?s@wU#bse9Y*>Pn0iFHK42)6y+2-~EjTyd>Vc=->h&%ZczOCB>Rq5E zXeD|6W4M)Es7!qxxCjsf0lrZfHvqq`Ns5Z;HN`H0Ax=%GSYmaAUKIMe{kTkAte{b% z%3{V#CZTk5tTyaNvG-!YyMur7Q1&&;hS3d>_uLb?Mt4qm^)|UB@E%1=L9V*wiN_)6hz`Tn$kQqMG|WwD zwmsO~9Wg9|U3~W9(Bl)zNMd%qa*1t~WCX+JCCuc*KKA~+ImeYy+-23pjoqc?#kKa* z!VWpv{1!{_Bn#u#_Tf5n?HnqkJAeq&jRKByyl#n67d!T{;sLRgo424B*iJxU=3Hm0 zv3o`Xlt~bp(?Xw6QTiUygf#UpSOQ#;JG@i@bYHJ&lT0V+pT^d!e zmhE&q0^$NzWedKqOGii*3u&M!fIzw!xLg6h{rGI|HOTVB#lhn#m@0Hs0K_{?3>1|! z1D^eSnhOAWn}YJU_em?jkZ2!;^>q4xKz#U<@lAk|wcB}zhi&{97w@>ga{Rwv1%#(Q zG5CWSlTLx@!&(HZ=Z334cjnICs@fhyQ#<)I6;GWqlEg5E^-G+`!72#cM>q|AklVLY z2Rmq41tLFhTQr8=LeMZ#fGp2IF25;@M8+%Y|pRa=WG4|kw8=@;LfxP*1N%X>f zNG3yH0+>@~|1uZP&GpcgtHJQEAOqpJ>R{#c?ImuDaSm1 zfqrIS_0pA3gCenT0>>Xd#>)M$djs!)PZDkLo+{oT61|Lk9K6RD`wb`$w~&*J?95N# z+tstY@NcIf{uCz~8s#(H(0lq%?XvHAsMkR?&XmJOCP5wF{3S^Zf{fy-l7fo1j-slX z+RYe=EyOu;Qq-M^sQkM6b7IN$2Aa*!UZPf?Y&0mTG*Z31>L}D5qb`Q=+8NzW`bE&m z`Qp9Xe1!V6Y|YmZr0Ff@j7`>B+_~T>z^jdwD07)>)@YTw8EzC^PpZ*z_pI=MvJr{{$l`RFY# z6N^goqUOb?8L13~$!}etH2{LYqjO;Jitq@?PD;Z%Omjrk4&&j}xG+g!Rf;~K#;|-X zdu=LIErntj4}UY5V}>eCH{<#DOfM`!Tq;{VgiS{hWlcrPafgj`X_2H8wBlt#69nZo zImRmZSOb)PyF7r)kD$4rT@0w8v?z(BcPc1hrmFBJCmqDR^*E(XUW*B~{i&tyFtD5% z{i3mcj;3F)_xKtel_jiviKb@*pc`V+Sfc}VF)3Pk2!9Q z*t&F$r|=z*YSWHuE-%g#z1+uNK5+JHPs{ro=GuR^w=1Cf8yyzHxZquM?abAconUOO zDw0Izi?_C2W*lYO6fmc4Y%Tu`@)mlPbO@ll2*uTm>r#>e?`|(^uBonV2TU2aK4ISc zv9YSXu)I=(;@8p99)nfmAvFry;+;8(C$><_R_(FY0xIoosr5mdQ!+Nkf;BSxYY-0Z z$KOp?w8DP$8+y`q4t=(NR?RQZ+`ffk&v@gqIRxBWfxpY;pYl5MA@eTcXJyI>ya&Lw z*&|dI+_mqG{v_Merr-Fz-&?HEnn;KUQ+t`zcVA%30|a>PI=z#Mm}ZCqfz;#l&ktY) zzI)Q!&7Mip)OL3VBXGmt)ria~(UtiU_18luO;mO{_45y7nXSLd?Gw{sc5e~v3A1^_ zWL-+#JEp|C--4-o{pzjhGSywX{yV{Af&|L{1f~d&<5SU_k5h7)FKD@sgQJG!#zu$* z1v}~S1U#p(D}bOpp-sMtmDE;9-h0=tAIke-V}vk>+5I{3RWPt^+v`VE4BLt%Z+Ln) zmC77;{LZLeFxeE}^7D=e=XBACi_7+Zib90wf9Cfm7Dq}c8=!bOE z*v~+LE2ZHT{tVhNP^{YRGd6i$4slu*damPGl23}0L5G8+YhyUlEv1t9X{BcdK3+uM z0|rY%sLtB5;*hP`qbWlTihohSV^%&LQZL%S#8zdn7^-95 z7EpDblci{`(3;@7WgJnE+{M;fFH?WdaxeJ&^LZ{&I!E)?N}AG1w3n>UFAd2J<84d!tla! z859KNi_<=u=DTU0ZRgiD&llzMn-tW6__Tz4L7rLDJ-X!cn-$bSd_uu|O3t%uoXH3E zP6+M70$9)iYV&Q{XLEu0P4ixYezQVuiqPMI&{sUZ7spCwUQP~Xsy;F^I`d~eCLIj{a{AM55>30m8uiL)>{-z&_^ZKK+VPkzD z06v(RkL$L1{a>H{A-;%@f-s+mj~rC(HeHyx{|Mno!UR?jPpu0{*N~J55|t59zE|Z2 z%;9yo)On&)ZDo-4F%Dnl(8b3snbR4>!rL1~_ ztf(^lwv8Pvn2CzJrk~)~I81SqP4`HHQqXbF4{#1BCuNdM9fi}6-^i!X$fu?mr%cw^ zArlCunui8im3fGJEe$tN&9sb}YuGbNLo+sX8a~vtUrQp5FT;?0F)}}fi^%(=l#WEY zq;vAOG=iSAH2#hlA86aSea)10cw$vJ#^KU4IR(x}>hck$onk9bA8!F#U*SiwM%~I7 zsg(~IJ6VB?SR-PPj&Y(vDf&sHYkY#CS2>qr=PzB?P?lAmN&n`YHdn&@;bdDYdbjlb z!jyG7Ua$OvqQWZn{3}^M!T247a}r)5ktIevRtai>Bc-lml^j0XyVEF}nxfolah?8^ zVu6zHMS;r)vezBW`^hRZCO%JkO#w~lop?USxkrSbpxtcV2mlQdnDn?2j&Ci?+dfjN z*x#g!i?SO;y3-Ern4OOcftKyBXx5zXfZUXXd*Ex1JWZB*0GeA)B7%h5+R`$_e%naB0>tNdwEy`h&0=?k#_ zgfKd?n-2M%{B-DW$1Zlu5UhWnKKq&@JKOA_g*0`T9ukJXP$0`=c&`x)XF4WphKERA zbscAT+dR^hBukbqnuA6D=U{@PI(5|eNeGojIFC|o*|t#&L928v!#EklHHsspnz^;& z@GCqGhx1iES&Ttb<22pM(KWT2Bw|H|airNpDsW#RYQ&3&dVt6DTAyh~(tz8IHps0I z)z>QWDsln^Vf>#4-;F3R6t@sljjX|&2BCeEvUYDe;1D=ta105I^ipJ+&-ErP zE|6sFdxICYT;*}qZG&yJmrfX!X3kc>ll^4kIB8ZoxUXh1aU+%R(Sbxx?1vZnag;aA zy=Fp8j_KcZQl+a*aLi5OO>DlfMT58)uL;ATca37~&SVW|Nfx%TBM5P%M1A+7O_}%7 zE`zN?5m*{Jg(Z@%9DFd<1=-bH4h1h12R&3UmwUuk0bLw~fB!^a8NvgxpTj^E-VX(~ ze;7t5)a8kXZIBiUd=)q1&?`lSA$UZD%2!{|e_BgX59?7qUR07Pxo+X$dl5m0sOiar zea@t)pP7&YpY&nTy69;4!wAIGgnvr~CYO+Ys@r4`dU-X|jTgmdqRy>k##Dj4D%vfW zLO51st2>!szp4qp&WUgObgRHxiQ%^*^x35%&Qpn{KGa>l>jug9OG$$~9D_XhAwKpY zzBZA+r(q4xZ;B$5)XGw|!#C@0RdwvA(pKn6*Cu2ZKkOMlQTC z2ap44kpK=j7ZEmSpfvZ$$&eNm4Z~0?ww3VHqnen2Qbnao4#6gS__9`}ol_Ebx1r$b zHKn~7^KLJyQ^ajUpf3iZQeih_elhPJfu<38S~YEKm*aXg$X}yz^1lvezagU2fDYIE z?>3i)+=)OA(U)G(`|)}WAVuzmPA$aEMs<_Vw@$mg0#Tt5xZ8!4^M({9Hhdy+|izc5aIfRwEs z>iIt7;7uf?OaXzp$vD7R?M|UEW+of-sfy@P(fSiT>%d8XS7sMOG{VsrHL9mG)^U1Q z5mrzj&tyvDR4zi*I!+st$|-&_NrIHYeR#F3tW-&l6BkFeRpG&?Pd2R{l#>~kqZOQ^ zh1{a7wqP~MivB56_`ZN(bWI-FqL$uGz?*dD%WCSQz4gAplJKs${4juEtnM~eW13fB zKC^O@p7tcSWbbOeF)-fKGt*v8a{H_dMt{V~wn-*|c!hTFzcfYjYU}IoTgu;#}ve$<>4Zlwtiw-&E>1V?qulVq}*&_0KBEf^DOR}$!^Zfm^vHNU_f<EMIRi#3aJEIb$b+LOHJ`io)NwHN!SvzOKT8U3yMb@l<-4h(`v zFF^LMc=+d8(R)iJY@$N~+;jH%xR7SYwL<27IbUWKoWi};e6k`1%fR zRD10QRW~ty!R90x_mK(3+*};5(WJ*hnz2zQAa?fF`SgR7nEw;nZ=2^=1~8pLhsL;{ zhwMKmS%r=}xG6awuo?Fhn&gu*9rqlKU#?V)3axjnXUaZ*LC2+>%I_>Ygx%9?6m{ZF z%7f36p^yaU#HdXfRb&j+ zRlmti9?y@@TIt1cYI8z(+ex?Fc)z5Ymf*#%)yG@SDd21*rGjHItA&y`bvfGwfv>W> zIRu5TYaG80pt@E0{(f7`^v1pfh@+s#V%Ciue1mXY5qs>YXxl64-ROab6kx`f+;SlO>eK9Y>U zjYy`@v8c51E>gy5lZRr?glG>h77qe&v-(V(o@;74ZmNC@8E@NXsCv4wSXNxQD8$qLC+B&$8JcI%yq_y{Y52bFsjA`R#+yaF+xH#Wim1C#mSaF>B zf?AFDTT*y*tS~Ar5g*JI4#{Jvbb-CRFG#$0ch)wfkp(SBo0FiQ5))Y5)1(qj*G{)L+~ge==^1WlG+pqBRh8~m9!p6*taRSGTgM$@hl zz@JeG=NwHHe)M2Gv2BU`H)AYZ)4X9@FUL1?T=8&Z?{#V6mMuW}&MBSGmTe}VMAhG3 zmVsBzq(uvI;%II0n1+#;X1r?89IqCUC|WR#?F)%}NhGP-C)=d#fDQE>SHMz203VAh zf`ltVdTTZzY;kmoX)R{p!bILUK+{6tb6r~k1D(0oSdOsKDnz@>QlMyKXlHJJDvj|= zzg_OW3Q*JFc~py;Lj*ak-7`ZXt0KE?>e&9J*c%vsy-(+jSN{g4Fr$bev@q0JBCs&D zLs|~GijM%S_|1Cv3?wW07+&LCvNxSYjv*Z;8VVRtH%PbAN+eI27{*uM2U%-lm0BDd zrdKZz;(%!QooID2hC!#5Mn&o-(tg^FO54gG#an{)lk1^diN0lzg6mgw|Bn?AZ#4$593Nqb z`F3K;cj`;)VP5!moLta{(vfMxhtuec(Q7)5;KHG42#ZWeiCos7mINvH@Bfu^@gJfh z+ij0d|3_uA|5^W=sIdD9w$L{nAFtruXQq}yez zHEDyy9M5@Ag3k|+Z=f4LM?_vY_V(FE+4DMA4AS z%S!2l#Xpr}C*SfRcT`g;^=B4^SQWkDuG7PI$j0GIj*msE9tMlcEe35DCt|SeSu`64 zR8_@eRCgS@m{{zp;pmycB=+`5VIy@SH8zZ=3stXKq5YWMalH{I`v2t2L%qlf>@|as zMa)md1=2zGS6<=c8q+dnQ_Ffm=s)BnrH zcN1)jMVazkPcm0^7ZS>k0EG-ius}FNh_SmsgQ4Ua!oGq3AA#{dZ&niWD@5)GwV=la z0{S`rU$n^|McKdqja>XUY@r72g{O@D-D}mrDp_Kk!9j11Y-Ucp#ReZ5KnA{9B-wd+ ztjB2%g*;%yD#Nih8ML(~EGm!2Cv+3!kyj7~NfTNWOcDV@L*RB0&6(pyxcRj+X~a4< zT|)oa%zN#5-}C*x{mr}0>3zE9c?D|MQdTC6Eetcxu0%v9S1DUc>5#J4#k#hz#mb^z zWaWRe+?3ujgAB!PwXO}0o(xk_B;5QDrdPPXjm!41%-%u7OL(V})6~haird_D;aIKG zb{O2oxlj1cv^>PP44Eo-dV|}4nRFo*(rUY+ASGq}EiED$WL$?dQ%bWWLYZ%rfR?v- zgC+*KZ1?PO`uhLvMHLGlot6xdi!*Zw621n|e`ELc%E+m&EH}8tYf5 z5EG?*U6W-Z205mpz2Y{xJd-^Qe~S$Z!j(pytRzk=9E;RH12_x;(?Mfc$7%dmMn2L# z66RRJeST9%;tm853nUnN9^|0r(gR%cla8o?JNBTgdn}k=B@H&+YURzdM@R zRa>n|E$3AeN2${0_4+gT4Q_cLfD^gd8Mp)D%5-9v}bDc^HwzrQPxLz)%a zoU>8)BD=3$wgcBWaI4DAG}(B>`>bmq_H%Fl_ye!%K5?*2e&t~Pdd}V@G+o(pRFjhb zL6MGSi?O>dh657p0>Ag1+vrx|e0Iceb~ua8ks|)zCvtc!CBJs}U08C>?9Nm@%}Dp$ zCH}UZsccl#;`pAI9mIXt*z|8%%=`oZvtsMLy4Xbs_|=ZaQWJO8vk-c1zdK-}Vc?kc@Z4s{Xcs_uFc~ zh1vrGd7{!?zZ}s#(ky$@ycTku%ChFbl~YD4xSgZx$ljjGN(bkSd&9Rq<4U%bBH7h! zJYk)13rCTcs9#KCmzUp)_m#=#uO7e} z6qn=Ie0B7Y2|EU_x|oLQz`YW@71C(b0^=Q2A_PEt-x-qkNhTJT?6qnrGf-3mnB>HG z4^u5y?>Z@m#ii8IoS;W_hDFYuR7_@}!8wyze1wisZN++R>s4B;V~Dk6=a4>0-(+g7 zb!yzm$v_p|NGyXWX7{l=YWj)ek^Gv?zX2^Z6~3Mu*7#69mCTx-T~Z7mliE!yZ?6th z+F#7slIFnMMTxxHi^JHdq`1)1%fCT1z&@gC?LzDUz%W42D&{!R|DubY^Dhx5C&3%A zK*#I&UNY6aT(p;d-BOY5G2UXtvAN4Rt9cr5H9IvI6~BShS~d3Zun)h*CyHGJJb}1y z=!tacL6IoE0fF0RI#!8gfLl5worvinHggn}MdCJM#Yd8fj*P-(b6ZU3dSy^`fUh%* zYf0W4w;lL==ir&!)oVw3b_?uPN5oj_l_;wt^eQ6I9&;CJ?O0`^9#&;eCgnB-r??XM%D@PT(|ARk3G-^19S3R#qVAjySg~=B``d_4j!0 z<5+ak_5GMk(%OsMR~D&n&Ik0X{nXAowhhi^q*GD3ToSXH7I8Ena3tidnp z3K#YpmFV^EP`CTgUU+)sqnb#d%B#WV|9CA3d0_3(h*iJ}ud9QYqxW1Ad51#XYs=%8 zYj-~poq_&ixb;`Y{8wQgg?cCKgM=A~uM2W+jN78yqP6Ql@E+}#T{kAVnK`WO{CGYSgD zD{3Bzz-D9oF)qe@^&v}jXLUuM~}woe)cD({hlB8L;)Ed`5g9&MvUeP9U^ zFUvA(x*Sfn8b9m}U_;Upf;`4Co=Sv9YrGs>1C=S_03&n*E_OVh39@F`+Ab79VVVWoCs}B_G zG-h)5BgNsX=OQX%7JIM5PJ2k^H2emeq1Oz8l>U$Qi&#|;sOMQSw)CW)hainH|0-|Y ztI*=TnCGjH(u8Ym2Y7{7Pm8E|!b~@)YRC}%%+@kn;L4Qog!v?JovYF<*>!KJn=fDV z!42H~oqAUE$?UX`Whd1@Z~O~pS=%^ufw70 zBPMyVZ06&;-1cXM(-&BRlUr4Tu#c_Dw_DE94bBg|Jv8vZ>75C*2ih0j>fPh$tctB+ z!dtMZlqLpP_a=|S<=;o&?jF>x6{!vpo(qgl>omG2dq*{eUx>1wXtjeuq(#rsk>;V@ zO3Jr0!UvAog|Jz^P^t@!w(Y1Z+y0i8syorGsrtVVo@d}=b8%}jadWsht+H@A+6OkW zMWj6c8vF)^m>4B!$u*=SJh0N4uj)k&Gf1dU=>sZ}80yVp{lNXUw?cnm{N@*-oIv>< zB8r`@_3isVW$1sX-xA}QbBv!dl;)=fMfv}gq5n;|shhhgEn)j0vX0SdfkXv$Gtn8a z6b%BY7_kzQ1;B}ABY~m;rVdeT(k2JfabcjAms_ruuL882l*{Rxk?CWos$0-gE1EsO zA5GsM0C$Do9c#~7o+ig8EX2Ts1k?PEDc7F8&zjTRH_PACUr;}ud;(FDH{iRRa={k< z=AXwxjm*X+?>M|3Z`DPla^2fMnFwOQy4v2VNJ79tuci(_A^y~5*!9$VMwd>6oa(Lc z>E&6!thKwe4m;kog`^KMwgCA`7P3glPqwL_hC-7_Hxo8ktjx52YY;z4H-7pE>!0n? z9k*}4N8mx&y;Bx4#!RR$Jz`+A_LL6-)LJWj9@MbzZ}WjLu++lJeiacdXK(MVQu~*q zZKpRwR&58cPtZuzQh8Be;Hm`_|G03GEk>ZgutlXH6$BYW)cnf+mo;U5Nzc2V?YW_e zlC7}3{nU~&jnCOiPG#fDmyT`5rsxv8X2@~H>KMafI6HY1Uuu@GH(GSdJVVoYp{k0KvKQHQ{2T|3< zGP4|?JffLn2>kE>-9W;GT5WIf7dol?HyJ_QuT=DWKyWx`#$rssjj~loOoPho@nF`J zgiqVl#uMI2d}b6{^>#WOJy$h^B~b}~UIc2xW|wHBt2Un(G`U|EHH<&s#Nf}5%6yq{ zzyRXU4t#;8#ze70zgFeW6=idgQhZ$)r3h~xX2LOiiHF)G70|o%Psb~2uKc0G8l;kO zy4_->gUADHIc4xSW5z0$O>~`JZG794q?UK`fmIb1^%@2kt9~Zt1mu$k+`CaD7f9}J zED??6{-}R7FhjO*JM;A%kg>D9;RdY0rlM#(kXsbdIfe}M=w z%{t6}5#tT&gNobno_|J@4RCMP970!hfZdbTIblt;i5y>1F8X)Ug7lI#;=2CEDuFwb zg_UMpYobn+R5#)An~C8HvBknUt#1I{B&{<7;YRDE;*WWaL?0wX|WQS+3(h zL75b&@J|FnfD&AKExwUs%{#NYh+prH>(RMIYb4R7>AI~+uBmf!5y`TrmwjPkX0a{1 zMGKYZ#}$#>)ilARVuH;0qZ;ya+9#7UDx>Y$hNyU*+nsv$Ik16Nf>_nHp2Pk=Daeol z(TWqYSvo~3doO_2;sAY`!Q#f)<4ruH$gq+QH&Td8XQ`C=^Nc{TxFL>#Ai0ljmsFCA zPmRdH5h1|Qz~04ySuwmPT!-}s!ULsy0PhJx1U3*8P) zU6YlWH+YcNvQAC&eg`y>y0`r{wUuQxuI51)(I zY#f$|ja{xLMw)IVWASt&gXshLxE=%M!f(AfFc$NMPSMg^Jl;}EBk^T=YW%hSV!k$k z^m*G%I}+9;8I8-9$f`%C?&O?_kPHH zj5&)E1?Y`>H%zXXg33QUwZJ8bn}qO@MB946cO%4tG z~D*K>%CYS9ncWGZ}dWrc0 z4m|FOYf>EH>+jo0Frc%9PQfq+Nfeb!IWW>|c*N)&uz5%1k9dy+haLrr4S_+dPU^M& z%)LhMY@&zQ@?xyvr1(2unOz^qz{u4=~2%NoE^W zObo2T#i9@f9ogSIh-#hOJV_`9l3b;r*t25ON1E5`mS;&7`-wWga~V38IUG_y5h(k8ikac2SNBO8@3?X`Vai(Ku9Go4 ztVx}2kI}6w?=O+><%I?z^+aCZz8{7mr=!-KUenIaDBb9^o_E_^cJm)?^NL+>38lO0 zta^HZTI@Xo)U0oAY-qMm#^Trc5{k_(>Ej8A=k6os&Juh$1KL7apB;~Z1vUtcoCLI@ z)?ahVtY?d)B!pf_G|_5NRuI{8@o`ioa60%9E3;uceXtt)r+e zGDCHiIN1Vq{a4%w^!nOPThDPNDfH_)mY#{mi*AxmN4|??OS^_=K6n)JG;14s zJQ@N#T4xV%$yGgq_Peu3NLd>2$R*3N(*R31j?wmV=5KDiO#pASNH||iO5|&y_@q*n z{Ee`if1Wloqq%I2v!zq=caqeqgCy3uQx>y^h%N!Izu!06M~|ZD&UX3feRe^S`Gb@< zwzsc=%nPgYXK+Jj*bm5)W0P9} z-$=iz4<1L|Dl>^^Gm$4WxYt875dmj?kuOn^FB$Fcql@=68L!7K`Jq9wD&!^O5I$aH zkq%lchZeI@86Ku%bNPgLH|(p$ZKZY_q$^c%1l6AO2B@I~&??{l@`TSCWU_NAVhbx!4X$EBXa zb=}?6ILexTwKupQ2##Nf|F??NFj1a+Mg{`fW%$3-68~vt${JW08#?`WFH-~7OX(TdnA#ie!Y(uQ!|@#^z<+W1a;U)Gn$ar*hi_uH}O zKKq&%b?5!%h8Cy}s8<(+fyz!KA4Zf3Vy{4=p;at$WZC?@DdSOtr;#{YdXWykm94dE zBTt+K%J6surG8R4sDFG~9iKe!S3T|@B`R?AzQV^Lu}L{rNtJ(hw#ICR z8a5n{)d4$=7VYjvle2yHZe+Q84oovs?rti$N;NzOlH%(_FpUEcoDQ5cH)poQ(w)$M`=szlRbloE$mK`>)huKf6v z;5PeLP~n@|D#Qa@cLZd68S<>3S&MF_w*MD3@Psas%bV; zn#<%jBo5mjU2L`@n4}CeO9Sn74~skD!_r|k`$}9i{d5)fYUpB9l$2ztZ;X%Q*^WH9 zIXs*qqHF7t<~gWufN&=!+^DVv%KAlanEKnhHDYygrR5%O{3)oj=TPttS&KKA3MBn& ziS^*c2MqDxd6ACCNp=;?{K_<(nc%$gEL9*G;6QjW8a1`p5_Wh-vb zyfR(<5H0gs85^ zu%-$01E0$42odD;8ie$+2qNUmR$OotD#dT$1l%-0@WjmbJ!G!KI z$xvtvvmapFPdO#^%e$??*VYNf5=ZeD?u;I1dwn9ZZlBY10oy8&?nR$5k5yaaXSI$g zb6cXjVd~@PdvxPAyY*ga*ZrHo?(4M6=PWjTQ-l^FPyA_OZQc085cWS?>0|y;ND_VvrnvL7_2zpMIt|1lzs-bIQpB~vP z&17sas=sL+ENqmR2v$0q+60%Db}A`Z{4+^C2oa4qzDxS;xr9Q)F^t zzF+V1^@x4v^?(2So@ZY_)RXp+x_J^Ua4gby4)P zm^0fRpu~;NhVhzIck!lKtCU-m8^2Z<*)$Q@F@3!nvYLd&-%5cTHad#T+c<2= zclpII>!i8*iR*w&L#Cy>DQAtd!I-x*{d~UcL*{0&ZaD1*q|q7oLP%_wLM9dFOyShG zQEU!E)@Y{pLIRF1Lv#xFi>qSIp@KlHf!94EvePiGXBEvOmRx**_7x)9FX&hMUJIZm zedGMrKcog5r*_uQN=p^&yL)?>>y`-%Dxm|xhuf?SEu|FwxfwThIdP~^#;eUO2du06 zj>%!(ptt>~TTL{*2P^#^v~mSkT7%v{7Eeqxtg9=*`aFC!y-AOdQ*bpj%|@i)nCsg3 z7b(^=H{6AW@Cc?`T3UieIV+ggWlM($5yHmwHM+(aa|$*wZOm<}5yLnw^^Wf11Xr!9 zWdn!0-csZ|6&w9@t<)4OS~%%pI3Ne3$gAlu)ia{M5E}kg8PQmNPQe=(Nm+{IDXU3; zLzgf03e)wC=>nzOGm2r=S3*(K{f;5@w+u=!J0?O|pz@--PWM;Di*Y7r>)@qIpW?kI zno89|xf^JxONr>}IwVb>8h|-Zl+T`_>lV&@_gn!`7e?%PkYncqEmK8FVnzq2Uty8I z-8NM25ZgP?mPS&?pRn@@ijeKAqw4V zC*|e=<+jCuO|E-+~kQJ%Ku^N#jnz5egYb*T-4X1c~?T&@LZXw7yADNHZ+^ zc$og6j8Norcp^npqgkc|HWkNIeDCDlf&Spe?fU@^o~RLqrpUj$fCVZ%S3>O7dH-V7 zhG)kc=cJkBpm|a%t{csy+iIEJeXPcU%r5z3lug-ZxE$g4iML5tOqa!#mEcO$mu5aa z$iaFFJ=B31Unw{GN%Pcmy=>BJeA^3kBbgOmna+*GN4ITwlW>$exNfQ4fToS|jf_oR>Fve`zet}e z@`yv3XLq|UN~LJDj-E_DE;B3t=V2) zE4O9lD;t;b*cgj1vvFdx_d+z`f*;(GO;Vk2V6~xrDCK!nq{k>cdbG z=lTmBIltM0ND*T*V5*3*5ilW%xb{FWpK0Ym2$;y6G5%2Mu5#cDMxqOLzxUCxpphSP_mRH_2DsO z8$7XXvh~5HEd+)|BUr;=(Sh9l_Zz_hEglG;UewyJTyild+5C7+Jw(Y0ZkU5r%Ooe! zG$be=oH4^lZ{>kqf`Iy0q6I+NB-1a73{Y?=Dai{^HmKyW-SJR8FM+Js-3q*28v|J^ zJ5=yZ6kyde+yF;!7c++LgxJiPr#-&R~bwjOKeIM?TEX}*s zDsDSs^O!|mxJF)yg*V;WFXt}24QCG57mQ>3)Fh0nwxK7tV z-ed|AArG*SMZ8m>LAnX{7AeHpPQN;&>^d|*D~B{GgcR`*@l(YSB)E4ehA8d%J=ER2kiIm> zOIR97U~&=hN5rN}u$&i3q;e5sFIxvwT_H)pf-8jAR@h+)a6+Bm)mvDpkz=SpUk%pc zwsX)JHtP(ZSwO1rf>**%S9RRiW5o1Z1V$;xMk(u|sYsftbib;}AXK?Pt4Ly33Sd`q zK&o_tRYtK^DhVuS$a^Kn*Po@cz5IGQ}ZdR5UE z)^$u7DAU$$_EZE2y$B1;s^G?LfH=S^z%?lYkwb^&${lzqy7=v{wctkZZIHK;Zb85S z*daCJ4#3EycK(fog9-9c1X`BkCdrl+`t@uvB}Zs0<^^9nJdI|*hVU^(h+idKE^IY; zdpuOV2fYNr0SK_?Q4u6|&?I&eh_@(3*7;#dDUBtbC*q#6`C)FUKU#iSPOD|4EZ%X(!N$GMBjvidMZ`{xu2G0iQT~x5 zs*(pxJnqTAiyf@ifnGhWl3ZJqX_*~@k720AD!AEdD9o64up#Stlp|Knm(W=!^j*Bj zGAT=Eg$oij7q$7(S&q^#B^*?&`SC)?%{rJ7(%8d_rA_-}qh&*9)Tp&+73lcV2NY2P zyC-GF?u`m=$Bz?yHWoU}FyH5iH_v1Hu8S3JXXrC)r?(f>>-U@Zlq26a7nGnUGr2s8SK5Eu;^R-ez`z1_Z6f{8@I$KiW%8qN)90E5=M~&fL9Cn)~fpmij^6W^aVMMccRUgu4OYmb6p1j0zvdQ7HlSzW(VpFR!`( zw69KjzcqVX(=>mjE>|)+KS`Jh1y>Wy=xD(7Bz+DIH$zYMR`l+@&IB^0!q}72;(_&^ zv_j_l!)WI-a)b10vV(nlBl!pd^*%Qd1PFHMfk#?%*OOA#OonH3+spjb%0>OoK=pJm z(EWQc6Rzp7|CH56Pr03qdOa5Yd^Gs(xKEj)=5Lk=Yvm9xk|l5tl9d#=7LMU@^02h z7>Efl@d)>Tq_&5jb1y&@nV+Ew&jyMB1K3Rt%pd!6f*+TmpPteGBj0|k&;P4S6s-pBrlpK7 z;JVB?R%ES{nZ#x;X}& zUak^KL+ekJl?_o_VcTv%+W`neSODGENl)t7`6O+U5BGJB_<0+9m`I>ymPft-jFP8bJ{){8QtU@x7D8%6S0 zaAk}17dM7%i*sH^xG6UV1qm{+CAMoDXj#(7qsH6CQ=VWGsDMv8p{rqure67A*os_} z1w0|g#C0A1q`yN=AFsC`SYqv6DdQ(#^yUnq4ML_f7Hie*0V(TgtL{Y!c|0z9IeCs& zR)0PAAOxpQg1c|EOj!~I|1~J8FH@DRO=I)guAZ`SXpof+Eua2Yk@3;!7jhCxQi_*X z&c_gndBjE2ppdXq8k3~4%(*J%*tS*{mW_5uOT?zHyr29dnB9j(U?@h8SxyrHGB_|e z@mqhtkR7kF`N{sOCE5|ZT0TA#-l}a*fMV+@#iv5CJR-nqjlpa~vKUZ=QaTSeoHJ&G zVOy19*p%GS-83b8;=r_M;4PKt?}fL-@2E8MOgj5kM_ipp5aC8WUcTY8iOh0*G`3bP z$H;=bEBE|v?l-qp??jxeD#`B9xFFkU1YrR9O`NV!zsHlJyIaa>Kb;gWOp_8@%FG&i zhK92%IVCH?r_RidJxR?LMeZ0}But7$*8B+*eM^+1V1@^3y+f5r@sV^$=i$(i5*=Mn zHB~SPeP`$!V6pm2F#bv{3+@!;#lu!&9Jp5H0tCLc*+5w|E4u2Q_@~*)ukl6Yy&rn5 zf97Z~tG_5_jE~~ciTgmSFM4>pqHpw2*{35TmOKk*)ab!VVgdlu4N80(^U%0*eYemF zAQG-D4RPFb#hNd1i|e+Guf3FCrFMdX?B>UTcZDE@+49r=;dDLFJQ&$J`saw)Y=o6~ z3qUXT{ss#GUB*nyxymBZ&o{#(l~vxc+fkHeY$MRi`{fdXNsyiwhI19DopG#kiov(2 z=5LU1z%FA)IZ-{>UsYn&16`tP^a%tD4E>xr&LBK78@DDqNI>`MgmaIS-Js%2J8h9t zV7w8C_35wX?Q(|{ULym%ehkS}ao&y(!CIJ%jcD3_%pjro?4RHt{GPyES&pE%0(o1Y zc#3OTS8>;QR(mZyPxPp80EjN)5S@CF0RWeMk6j4sQq;@K(+gv8VzZoVVO>`vskTIR zyf&>1wt#qTzDqPE>+Gv@#HXkGAXv&Ro;hrQUVZ1FWx1_7LaLc{c)IbjCQD~_v}eF) zel=eu5pDiMT}<-8Z4v=BS?GgRFGtdByU{!|eZ9!Ua5`sj&4(JEs*&=l17cyqG22EK zOpp_&()*o;m2GSaGcwp@GMbHb;Nx%>Np8nq9%IJrRPD8>f9pz+ydR(Bt#1P`}E4VY!ovsUjnP ztk;O+CBR8|MPaTA+3@tC7yYkS)sEwYIJjCP!G_5@puiFDD*nmA{pJLfRL zGiplLAr|WD&_;WwaXPYSx->-g#;l^zxSWU&EO7SXRwR_Pp`TC|XdR6|{mYwB7wSf=W-ULoePFb=pNGX*eA2H%;%R%l?pNO!8N=xd@E zb}9ugJDhBpuDo8}WMO5>Cau3S?%>;EGL*_>I`!(a0V}G(D0?P+_GXYE; zXY`xc0F@iUh8seNZ)DhS`5RZYmstPrpx}{>@EElh*?``KeqWrAEsQVL-B^tm&wsw# z{l35-%&@+UFF%9PLN|#R0uWyl7&?%?xxs|szP-V*fxdnOba#mU-x0yzG%vO4FSUW+ zA;G>_AEX#xnY)C|H$V4J3I67IxmJ6*4*1Rq{ubE24DfaL{{l+j@B-Im@%NP6BvmFj z;T46U1%&4Li1_>bmfbxMd>ARY_2LfXUIBBD9q)8pZAU@aZ8YB!#;0Qvyi$-UzjL(rX##6&BcW|mj|r>*h;wktF>hw`kdp2zpVYBXf$ zTVvi0y{=W5?CLA8A^?L_k2Fl z&tL1o$ayYtsf3cx1BJAdE-?Ay^i8msYfZ$^nO@Q11q`iS7us$spZ& z9F^u2>DE>S)v8#1LC5N4(jhN^{AAl;+E?GQr(*L1Mf0A#<=8YiQ`gw?OG@*8 z>F5~Jddk<>(#NI!HM-?kc1~l#t2-Ss2|$*uXyaQ+4!z9s*=%Jj;IU3%uFXAH|pi#qesnQ0ij@~zX>*#7=th0J0vt|hO7~RjQg*qw}l%yiy4@B;KHuZcKK1z!vIN8>XxcXdjy0(3i zz(10R?FF7+Y8hHmM|dc*w&%CB+*Y>vYN~#%DR3WT%Z(6 zY;&Nl6*;56YXTawHwjzm(KzRuLu*jWQcvr*#VN@<-tE~3qN?Bj`rhwi+ z$qY}E*TY+A<;wURk8=Y_%Mi#(RPG%bsCkA?MvU~2QPsmx&`YfhIB-PBoOM4UEY!O zI!b&E+x-D>xx%jzu`MHZG=7+}&YYJ<-0dePH9g>rzqe*u31P zD${VMv7&5af7on#rX{ZL%&aN1Z<8YI$FyhjL#rVB^+6Ua@edfOz|fbk|93Nnnd!GL=>l|kVNEwL<%#4?-KLu+l~?I~8zb2u$P$i6x19z4tp5#c}(S(_8V(CQr{fs4?T*DS;vI`u1y#19ZwE^c zU$!#Q7vSenh_?u~_&f%jw8NO(&F~<9qCI4{Vqi&DBU)BlxG+c@^zOlfcmSZe8X7L~ ztT&k|!$^TpLRRO5}$B>*K#0U#=mPieQx~0sIPU9S69Y zi8x7*&W4K&5$iwXAoQQ+=J%dji)YzSEj~!@^#z}6!li|G3Q%YqZoI_A)~W8^o$lu? zPs;DF=UrPM%A3w8l$Q@GWw{WCkZQ-Xfc3)4VQE<_ix^7$kh_D7d~QbOm-Tg29|<`4 znz(^lUVeM}?73IJvm2p>Kb0|Xf=2$$!TBxp3F48wDJGK-&6G59;WUC3=vG4Ips>PccNeP>4aF1RT8pQulNV~Qx}5F5Z$ ze!^Dd9MzkLWVGx(jlPX|lPvPXJRJbNa$Z6N>&r5K6ZD1vX@3cUGwve|#5D2Dh?K-D zWjkiDO3`k}!-raRsU3pkUKNEwv&8I{5ssieL>QG*qx_EeC3fK?(r>>`)^GS(@1_Pq zZU~qi)sxnmlLQyC7ZhMU58H&HF6#pV2PUR)9NkF&rdnA0LMCV2tRS zlW3uKxzfail`YSf<;K>n8(%7ca8$kndnjsw51Cf+JI{P~?>kX>F0`!lFy;Qi-f7Wj z-k5*>;Owuo@tg?L+RddU=SC^7fI^Xh+f@mvzfGcH9Vh$c(rcJ3icSkl$WyzdYY%9x z!%NiJkrL^W%CcoC6i?gw<*c-SdRP=@&)>{!9VvHa%La;;IV!y;I0^Vf4cAMY)2A`p z{#w|J%S?+eMTJf)7`>LvB>O`bL=&t&q1TB-Wk)8(6nMMC{ma=AiX9rTQ{WB z&&n3&G9BUsI`Nfz*1~ezm{gMyE(XP;v~SYajZOJ1I9ZJ-u*zReW>9x_;OS1hK(DlaA#EDqv=yiF$YdAK6DN6&Vq|8Eeqp_?IMwM;!71x`-^HsMw!%K8 zDG~ZbJ)2gnjW`u`+z|7w=i4C%%a+m^n%pKr{SN618lI$rCu{XAq2gahd-Iq23Z_y@mrzssCiK;01-h5(dDr&Fv#-q|A1K8G~2T znrVu;il6jAx&f;V?+MN>V4rHD3+_c+YxPgaB4Pd{>VTeyVK}Xa1#(4*U=8aRnUP0X zk6{O8*3=t3cHmmqdjzVGw;hF)H`SYK@^jx)Y~N*tCzjZCSwMff61iT$f~g=)H>$Lc zQc7}C>9{axYX3Eit{yk+JhG_&L*n)WDiw(nq5r}Z`+)nb4nzC*$FeQ~Qq$k{rY6*7 zD3V{awf%tDg0ki6yYfOH#4CCt%t_$ism3e}_p|{e3b?<;uqS~y>-GqwOeYjl03xJYd1 z#BD-goZ-9CQ^*o8R@H}$?Lhzh=RHpm2UYE!2q-{OH{Ds7j;721Me$k|G=O^aG^JaL zfcgV3Q59bm%-ZlS$)S2{mfODGv}e-k?nRD2(}&If1H*e4amNL_vU~7FV6fw zTLnE*epWRa5YQC+|DACCuW?65J6jt^TtY@S^B9`Wt?G{jx(4Z!so~BNtDAo+XaT5Rs(+x!=ChwZ8w~>GkQRm-GHS z=XuWaoacPb=bj^`*HIjk#X{`cDWW8+n3M~T8mb%|6dEi|vg=@$Ty1({YBjXV;uFQ% zPhjwi==zk8<)-7%b72kd$@*+{2zc-O;R#g}-J1K-B>Lp^o3$gY`Yc8z&sxCT>I>2G zOY*!~zfqItxV1*r7P%*M3OP-B7>)`0&%7eY_x)hPLQlvrL9(9tw><%)QppH37k$O{SNYT zh#cMqOQrV_f$a2Pf+hPy=VkpU5`xl&DofqEzJD^7>viwfk2Iir8z^umX!F9ri7>~N z+ktoD$5d6zk0yj@3U-h7bx_iT;xU_w$JFv1{>c0`Nlsq(vnnz5Q^XPOp7!o08=meF z9u9@VNbu61e*1wYtjcx|L?a!<0#TS)~ z%y2RaaLJ(wfBBO!(BMI>jlL`$rK&MXn8E06i)0sFp5F?}?R2+LX9wk-1~Q(>&#Wl} z2K6aZ!L|3VY*ZGyG!M5)WOiEa}C!P)0514vigd178y zMjxIynV4mgqnF8QNTfd8ukoNOmN_mX-6!WSapl%XjS0ud3Tec{j%Is7Ip4~(_Lzu^U-YfkT2B2~bLGkkp;r4T&kMj18|bpfF#lLs1To8|&f(B~vx`VeGNF~U^Jh^mG7yJmllFt-TP z=tZ6k#*@7yp;jo;q#w^@_md@_>yn(Rp9sHBb+u+mTaM3T{cML1`L!^+AY(bhwt9hY zHie{84;=B@?l`q7gw&YDMR*@JHx7Eg=uDJ+%l~Y-vR|%&p_*8dU?x#Pm&y4rh@l!B zzr`vpBaO_^sn8>7^7@azYU@&y+r-#^(4;nobB*P(T_9!YLsh(HWIrny?Y4_m4lf#&=aI#-v=hu(7Anez;@glKb7( z+7Fs;suz1`Cmr14GG~6!Z9u#g$=PXC4&CR;_GZugrSF$ksMf8?FmP%(qwai^7o#)H zFQQEYU!S&-tD{qaw%JmZegpA3Ou2o5>+82X*^H}#_|7=i@E=_hCiXu3B8yl=$OOtl zab)c~{fCzLV^>cdAAfJ6I>iXpDIkOa$BJoj!ZsT4fRoLB!s~!?1`2*ke zh&SW9dyB!N*XGDz7aB;no)kS60A*?LMbfg)@6EGRcg<7*W~`XLO8n zzPf|Li<-aw1|P3!sr*BkdgYIUaU&^@)5}8*r*aj0@%W&T+Jt#y-(2*+$Ktn~((4UP z{7Ix|TaMeK-A!?v=$f^#N$rW{%wtNfmCwSpgrZM% zwej+Pj_-9OnLe*r)MtAf-tUAx*wwA2H)X>-Gc5%D(v1J$epP*c_Y+viD^+T|INRDj+6;cOIT8KU4UrO8dNIXOuPPXs$Mr_iZL?bYCgZF7fPEEm5-~snTO>EhH%q@^&*oF)q9bPrq>Skbr+14 z6i3Qw#+XZ%3|yDIO1LqQ^TN0@_3;?-oYAHv!YJf%*MqUUf({H653Ft4(g=@8P(7-W z#ToRqu6!X*H8Pc;Na}GvZ6os2(>97>au#MQ_p?>H`OOHw45EQLzt=0wXM0l4!ztu) zhpAUr=WG^9m3yHc6^Q83wwpJ^i`oY(0^GXZJd`lL+mVF-kv;p$qQp~!ci8>kYXgLI zJuI=~knM%mON$O%bRD7C_X_V;t&0j=Oyx;Va$7uMqxGgOZQl82TDZ)n*N>*MM&c=$ zn!!?)Ul1%UQp(-S^G5|;qNy$6x7$CFMH$k~J!N{~@%jSl{9d0a)=yA|2AL5E~k_={(i64T-j5;WX zmXQRE*ZS6UoA4;gmaSz9CXh_^IVIc@_c0(FpH9Fp9a0=<7Cqijf&W5xTJ%nPQhB=} zE@vhK@0uSQHLSc~>3F1Oj^OO1R&CGgoE1sN?}sC+c+XPJ69^s>T~`;t-GC8cedQDu zY-4pi`L<5TE<4u*uM6ZscF8F1-dDW^Ya2yt$pKUKZ(oX(lPEijUt^mxzOX__yb_Y* z{Ul>Zeno}I^?X+)@yf|Zt8|~R9<9=T`l&N)nuGVSxcUE4#>tFz@Ticp zD>LwV=qG1cuREVA8|NCDbE(nt>2i#3%|6@OR z3NMHb$*`)OlG9tmNygKhA*4u;ySSvERAfdKGaeC7GB)ug<4_ZkSNfsRcKf`0@3R>w zjYgdlQc22UUev$Ab`u|B9MP?(BXCRgZ+1NyFhtR@pHY=%+vcc!bug51hWTsToM;HrdMO0`S?P`MPoQ@ESahhl!rxH-vg2lNzEGl( zEz7FJkAB!25l$1Kg8x12%*5E;ycBL`&*KUid?{7qw7o8@ zz2bVUW$&&tgq&p$wI#4R{ty~)uOP4UoQ1$bK+r>3<=IopT-I^o*>xFV7dn(QJKUCS z1DoQKLhYWd!Du;z$Mviw{N^J~Drs5uJ5$0Y!lGRe2q49)jU8jcqJn2}y%+%u|q4zu`y%)#bdpKHy-)LEDke+rV zB!08Zs6n48RVi!TZ1-|3AI5!H=s%d4|zKhK)}gV)NLo zOBPp`wQuoz(1qPf^Iy&;kcPfdN+@gF`EzuhWd+%Urf_656X^!TbDn)B1SU)br zwCbL9Wb^XQZMkT-JXVWTj-Mv6Z24D1irE>dH&sN=cFB5D3-r3RiDcy`{W~4)73c(Rb$ zCp|N0f27B1CrK$=;X1J!sll7?#ylFhb*8pi6#1!BHrj;wwwa4$*jRMkEQw;l#|!jn z6lD{K$!fC~4RIfL7^X&EDZ`C1I`Zp5gzTus#t;}WNu7cVdb%x=Zn5XYez|jcR^K3z7+JiFIUQuh~VvCtkYxVu%_0W?pE%cwRuQTSjw$l1i^2XjWP>_e+>YTds z%p>-ePTQleuk%ZTmHFm`$1|YsbV5Cvxtf?~;wh8#$ddFZlJsh6-FeSEJH^GRblJD3 zo=rJyz#S(!T)3{GvnK@aP>6baIYl@AXVug31=zxEiKj!n+$qvB-w909ZwkdC!wqXx zy_$S3d(bRUB@<9{E%K)_#Pha##CO*P4*Mcz=A>y;KRzu=YQoJP4A-+9LT0Nq2s#5ii^?X(8`ImY>}0yGjvwBejg38;CYUoV1tw6}?nG<|R8aD1x zMZc>vk1>{#CIlPGgsIqJshdpEH9hfzW!24D(?2g|zf`6D=<>NI$_k_W1~G`j@bRKz zusbEi3jNzxQ^ap{lwe1u>CR+@62G<4j*q13OEApVVmSKQ7n^GsN9YlWU&^KQehy3h zhk67{=PoDd5pz!p=5>mlPGfp}@f#`k@YLEARbx*v^?Sn@xe#o}h)0ffh6qP~rdcYw zlH1nfYCl)C*7zmPdM30EYPpwvC#qVI{+etm#(E;DSvBTQ1s=MS3C5LL-%))x#Gct!M>tpm$P`o?o<@y+-c>Ys_N{=+pyHz+Mf z4NsH$s8nv+>j%BaPFTaU1~W974a&(eA4-;UGuN6S;!dUf@X?wmYvY7Sjy6AxY_MR*-vGhc%%Izcv z%|X6PQxyF8M@*8GuxHzpN^efAMW z^tq{7S;>J-nOaR<>B==_>g;;npVl!Gteo(um=7N2mJ=4SzR}L_@5jVaD(I>o5pdQP z5M>XWOODB|KX*e=ot{?o^}D8^FXJxS_hKon*wjnaT9she)Z?=1UA+X=xdaf}v60ay zPNhW$C=m)N656p?dNgnpD8`>nh}z7Wf4_*!?4W#Y8#iNxbk~Y3;^F zYLgI+6hBs4x({PP4AVdq^BWkK>t3j61VlF?*f6z^tOZAnjM4wl8I?ULHSNB~(DX$l~a(uhAvVtaO zO6_qH-#2N;bM0fWCgc0KR%A>2bQA06UHiY~A{(WopOFfMr7);d+g1drM-A&Lu6IE9xuPp+1^=bd)J!qq4#-8z&fUmY^ z!Ii0)taNmB5if$dmF1YeMjI^IVF<6`%khnn^E!ozn+kR7H(g@*U`S;3Lku4a5XFb8v(1M-0ST>r27(wa)>$E|-j_z*H6^rqFldR1%) z!~&czeCB`RH~|se?d?i*)ExUy6G`^JU|JZ|PA0M@=is~c;U>vz?Y#NITr=)4sNq=_ zQKer$IeM2A674GIETh6Fm`}l$ocKasM=He5?#4k9k^O6I~T1S zjH9xA=)DoIUsZP(_IT7uT7}~KuTvQr1vZKe#x<;M9_devqTiKV=UJ2)532-dym z&b3nHfhV{;;MC9`@r)?c?5?CB=!)yQTB+v1*ve&}oYBBo==Wh&kyBfD!!9e#{?16` zJ3LJ`d1J{eXC~#C$?I1g+X&|Zoz)6MutJqnzF6O{UEf$ydGU7`LwqP0;w-#jo zaE}Zt%TdtJxDk(w;ImpsT1V8gsH9W2xAJkYIiW#sxr^wJr9n)dzA1}(<96#d1WM4E zOQUIaq+ODot*_f7l8M#kULk+}^ph_7oDBj29wr0UbisEKIj)yx4Fep;RG;8TYEOKl z7$lcK(8w|KDr!w0j=p1ze0H=ts_(5?rBS%i>oy%r)vL{Luw#V8z|%_)%_I)9In1Yw z4b7%pB*iERTU7M35xVQ z^PAavg)dI&8Q5q!TY9JFKTGvZJ#!3fpoxV|g#)(K0cB@UAo%Bh(SMOa=B3e}e?r7| zHGBwqV;;ddrYbw|3x41N>n48+%9kDd`%g7BX?3NG@=zTwf5(_Kp@Xy94V}ZdLzB zQSv+LyO<;3PUv{Jzv$E$fNMJdFn4p96B3Tm{NHLvR|CQDpR&z>Kv2Gq{$V)T!Ocz4 zHTkx?*R~wL8Bb7r9v8q#s^cUO$ccYh=ns_d$PPKcE6?)oFmqR=BjWes*WV~~=fS?a zOs)qieFql<2FehG>)kq)wzJbQHM9G7DQzc>P3hiaD?nlbE#$zUE#U1%lXpkL94ufK zn!i2CV{aL|Iv<$m0_w^x8B;)i-z_85!{q=O1J>YB7$6-7GNOC>Rzdlm0q>0Orfs!Y z*3sS`43c|`C`3|sLkd90z{R{p1fMA1e$dBvLp80Wk>H?5Ggst3n%rC~TA>E8o8UTy z0lW;1z8i?Kqw7wyjNj0IWeXsl;9|jm<%29@H*EK=z&nW|otL7}PUiD1=KO@kZT59n7(%8*q*%oy<-)N-Tn%|V1u5=h#^`W zI01CGXrSjE)Y6K_r5pwTw+=2$oB-J3c{dKY#X&ffx-gkIK(&Gkv&S`q?@{c=XTershGI zny10qVU;}Ry^+7=+}&FA;AW9y$Ls=yKwxio#)6*ty=l5I1l$r1+h?%6W{Z9IEwG9Y z7#e}||0yWnU}-Fj2Fp7j5qpegXssbyNTnTt`dvWhMUULTW&aeEuiQmUvIfXoePd+Ia}kye%3@w<@o$ART3a2f;f(uITdJN(v%(H zdyEeMbXlz;!h0ZTFasGcdQ$3+?6y`Qs9cHuN-5w=GZ-rrFd$!t;0I_V4Cs zB^`N*dN~2o%T+LxgMsN!LHU+|`q_(?CIRRPGdjGp!=&u)=V$iz=icra zbr=xG6jPM9M7JEu@Ky=MA*v^zKw8fa69F#tn809}k11B~yoHyEl7cGCDSG`i{e z!Ivk9fz0TU9y0@W@z@jnUr@9nYP+5y+yQV7m|Oru-iGU#(CxVqh-wyabXq8nKsX}g zx8_WH8~fWQ8o>+LN!spu#P0sGO> z=_2Tg2V0XuvM=Bx5c?JIcP0$6C899FTT$(IjAYp-q{(*E<`aQf`w^s}n9~b0kfZ&r z++F8(?93a7ut*Q{9R?8tOk>Yti1si66SXDUcHRhu+dJ98_D?U+77O{z$vkr&gpE)L zgbjnwp1L>x;K2{gJeAX6jRIMQGZ>FC$8?<`Os1wOe4nf=|CmobAyD5t0KlBx@_%D_zb$sm5JMI(+v zupr%cuy;H#P+Hyl7JrPjJItVE&ay?Yb%Tz18pzG~M`E-;rLAIPXhFl_pDww-vC+8l zvsT69tPn`K`A(-V{*H;;QtDQl56TIaOWZ~Tfy1W)@4*~-22bH&2)RWCt=<|Z_p%nc z54|IaI@AE5ufS-DX@6a&y`g{Xe|EPn(L`BpinF~yhuT1&n7TA(#UyT#4$RBWWH7aS z2Tn=Purn`rWy8e%hmGsIoB9kuE9XGJ#GHR*pTz`$FbOx`yK$+ei=x0^Aw0kam|5aE z(QSwt3~B9XanLk%kar@j3q&pl;Ch&|4MOp4&cDy4e&covgzjpu-$$#607*0@ccz=P z7q&rA@VLyu>Jk$E@0n14M?bX9cAjvxe#LhkKL}m`#T=n9FPM5&Q?A2Cwk%ZcOirP z`lbE|XM3?@YZ-O_$Nt-6KDx5!?#g>EtM1R^+L8sVL;U(x`Tyc=FSBlO_g-k-LW600 v?yg4eA?FtN-(}Zr9qzqYwvA8C|6lQcuWcL#5e)*-2Y*^Y6fi9SaS8H&07aZQ literal 0 HcmV?d00001 diff --git a/APIJSON-Java-Server/APIJSONFinal/libs/apijson-column-2.0.3.jar b/APIJSON-Java-Server/APIJSONFinal/libs/apijson-column-2.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..b8d3c25791a168d771badc89eaff8561b8027c7f GIT binary patch literal 8213 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