vue2-client 1.8.96 → 1.8.97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vue2-client",
3
- "version": "1.8.96",
3
+ "version": "1.8.97",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint",
@@ -1,16 +1,16 @@
1
- <svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 838.4997558593744 793.4999847412107" width="838.4997558593744" height="793.4999847412107">
2
- <!-- svg-source:excalidraw -->
3
- <!-- payload-type:application/vnd.excalidraw+json --><!-- payload-version:2 --><!-- payload-start -->eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1cXElvI8dcdTAwMTW++1dcYvJ1RNe++CaR2qXZNPKMJjZcdTAwMDYtsrmMmmyabC2UMZfEcVx1MDAxMFx1MDAwM0FcdTAwMDLEycWBY1x1MDAwNDGQS1x1MDAxMlx1MDAxZoJcdTAwMDCGXHUwMDAz5M9kZpx/kVdNit3sjc1N0jhD2Fx1MDAwM6m7Wf2q6r3vfd+rKn3yztLSstdr28vvLy3bXHUwMDE3ZctpVDrW+fJcdTAwMWRz/czudFx1MDAxYm5cdTAwMGJuXHUwMDEx//eue9op+0/WPa/dff+994JvXHUwMDE0ym6z/y3bsZt2y+vCcz+B35eWPvH/XHK9p2OXPatVc2z/XHUwMDBi/q3gVYJHL951W/5bMeeaS6a0XHUwMDFhPtHoluB1nl2B21XL6drBXHUwMDFkc2nZ7ZRFy3F3Lrpb9Ky019vrdc+KwVurXHLHOfB6Tr9PVrl+2lx02dT1Ou6J/bhR8erm7ZHrw+91XVx1MDAxOIHgW1x1MDAxZPe0Vm/Z3e7VsPlX3bZVbng901x1MDAwZULDq/1BeH8puHJcdTAwMDG/rVxiQlx1MDAwYlx1MDAxY1OkXHUwMDE5XHUwMDE3QsP/w9umgVx1MDAxNcwoLiipkSBSMcWojJhWdFx1MDAxZLdjTHuXaY64XGaMO7bKJzWwsFVcdTAwMTk+43WsVrdtdWDKgufOXHUwMDA3nSZCXHUwMDE1XHUwMDEwfCjiWHIp9fCJut2o1T14RMqCNlx1MDAxZkIlXHUwMDEyiLOQMbY/L1x1MDAxOK5rXGYtXHUwMDA13TAmtLcrvot8XHUwMDE0XHUwMDFk17rVaVx1MDAwZsZv2Tc1ZL75dT3qX2FcdTAwMWZcdTAwMGLN/bn1+IPm1lx1MDAxMVuvs8era2s7SD5prlxy21x1MDAxYXFIq9Nxz5eHd15cZn5cbkw7bVesvpdhIVx1MDAxOEKEKJiZYHqdRutcdTAwMDRutk5cdTAwMWQnuOaWT1x1MDAwMsf0r764M1x1MDAxYVx1MDAxMH1D11x1MDAwZtdOXGIt0+36prt9uVvcquqdnaDTV0Z69kVohnxH4VxuXHUwMDE1XHUwMDEwOFxupZxiXHSTXHUwMDEwdVx1MDAxNIxcblTC4FNFYnOLVcJssiznnJd33XTYTet+XHUwMDAzh1x1MDAxNkwjToVcZmAoQC9Oolx1MDAxN4foJVx1MDAxOFOKYJ5cdTAwMDe9JnL0M7zh6JWV59aTYvuhKjYvyO52dV6Ojlx1MDAxNVFcYk/g6IHfXHUwMDFhf4V3/udfX7/8+Tcvf/3TV7/7tmR5VshcdTAwMGbclnfQuDSWXHUwMDExNXJ1w2o2nN7I9JvmVp1GzYzysmNXvZHk4TUgXHUwMDExXHJve2477JVdXHUwMDFizDZvoYFcdTAwMGaU4S1cdTAwMTZcXO1sV6L9cTuNWqNlOY/SOpBcdTAwMTHL2XNcdTAwMTGZh9FgZlpcdTAwMTUk05pcIkGxgv9cIsFMOfdRXHUwMDFmYXhKKMliXHUwMDExLVxuSFx1MDAwMlx1MDAxMFx1MDAwMFx1MDAwZSBOtJZcdTAwMDFcdTAwMTRcdTAwMGbjXHUwMDFiU1x1MDAxZq5cdTAwMTVAOTGNXHUwMDA0yfZtuKeEO1x1MDAwNt5BXHSFzifEO1x0TUM04M1EUMZYkPfyXHUwMDA3/IhDxrNcdTAwMGZhSPFpgrLtNqKIXHUwMDEy/LRcdTAwMTRMvv/L8OeP7iQ+nepv5lx1MDAxM/O0oLVcdTAwMTjqOFbXK7rNZsODbt43Jka70/WsjrfWaFVcdTAwMWGtXHUwMDFh3Fx1MDAwYlDwim5u50ilPriUT033UVx1MDAwMXPGXHUwMDE5xkxcdTAwMTLClZKChp6qWW0z2KzAIdpcYkFcdTAwMTJRTK468GJolN2qjDfJPVJbW0ertWJcdTAwMTXTbWWX2YFzsJJk0lxu5HLFIYtLXHUwMDAx72SEXHUwMDAx1Y3ZxFxuzFxmquLAhZFcIojGjPJHatXgS922YthcdTAwMDYmh++FXHUwMDEzQlx1MDAxNNBysXVcdTAwMTiXVP+njHKFRYh6jKXrmWN140CSRtcpXHUwMDA3uk6Mq3PO6NCRXHUwMDA2uE0w9UlcdTAwMTjlXHUwMDA0glfjxbF1ilx1MDAxM1x1MDAxMD9EU4aEXFxLwlx1MDAwNaNcdTAwMDF0XVx1MDAwYiGfgafcSW43kVx1MDAxYYfeeH6wv7l+flxctvd3712SfVBKxUZjfLP9L+9cdTAwMWX2Wk7DO7u7Vm6utVx1MDAwZlx1MDAxML04s+2ZzO23u9LDnY9rvdLTPbF376B7Ut+gK9vzomtcdTAwMTQzxIJ5nUmXJI9eLl2idVZEYO3r14SIXHUwMDE46k7G455M35KVsWRFMqqERiyGyj4gp2K11MzX+IFcdTAwMWQ3T1Wu9MOrr7979au/XHUwMDE54v3qj9/88Pc/XHUwMDAxXHUwMDBih9/noVwiytBcdTAwMDO7k6Ejmo1KJZz3QlKCXHUwMDA0QTYqJcYlsai6SOneXGYpmeu0acZcdTAwMTQj4Fx1MDAwZWHtMC4llyi/XFzZ3qDlj9c3elx1MDAxNNcrlydbb0BKJqxcdTAwMDDMTVx1MDAwM79cdTAwMTOYKVx1MDAxOSmMaMVGpJSIWLbglKxCsNVcdTAwMGZbglx1MDAxMKg+KkPJ+lxyTcn9dovVXHUwMDA3ZYeo3sbHrZJuPjrbWX3OXHUwMDFmJrfrh/nMmT75hTmt3dx/pq2jnSo6rFx1MDAxNT84PiQr5NHhxlx1MDAxY0ZhXHUwMDA2XHUwMDA2MT7Tm1RcdTAwMWaq/E6Z6ZOTeEjfMlx1MDAxYb16XHUwMDA1JkpSrDBGeeRtXHUwMDFlr7itWMKFzsRcdTAwMTKpr1x0S0CHJtD7XHUwMDE4lmCqqVlcdTAwMWOgXHUwMDBiwJIsfyRcdTAwMTJcdTAwMGI9gT9On8CNpa+///T197/op8zX3//21Vd/WPqwXHUwMDA1UWT1uu95rmc5r//6y8TEXHUwMDFkyo6zkYFI2lx1MDAxZpMoo2k/wf6o9Vx1MDAxOdQ8XHUwMDFiWcaUXHUwMDE5SVx1MDAwMbhcdTAwMWVRQPlcdTAwMTSASHRxXHRT6pNzYG1cdTAwMDK0K1IxP0RcdTAwMDVNOPB6JKBcdTAwMTFcdTAwMDGUgsXdXHUwMDEyM+IvXHUwMDFjMS6loEKSjCh7S91cdTAwMDeyXHUwMDFjyDtVidSdolRcdTAwMThcdTAwMTZcYuRcdTAwMTRleYosXHUwMDEzMnfwXHI1iZRcdTAwMWNenmuRMd3bzCfmZ0FzsVx1MDAxNDq3KmPuklx1MDAxZSogLYhZs+ZYQ75mXGaHnlx1MDAxYVRcdTAwMTlNkVx1MDAxMVx1MDAxMSEhJFx1MDAxNVx1MDAwNJ1mgycmrDNm48/SSJ1cdTAwMTFzXHIvVExcdIGkmemYVdJcdTAwMWZVgVx1MDAxMeWYXHUwMDBiRK6hzlx1MDAxOFx1MDAwMavQmlx1MDAxYVx1MDAxNWnOTzBVREoywZaAbLJ34yCSQkKYwlx1MDAwNeB7hFxu0G9cdTAwMDSISISEIOSDtim2SFx1MDAxZS75zZuDXHUwMDE0XGJgXHUwMDE05YhcdTAwMDHoUJCSwatC2D+yaUCFSsRcdTAwMDOo01xcwW0qXHUwMDE3UIDMZMxMTbRmPyku5Fx1MDAwZUGIQMQkUlxmKJPAXHUwMDFhKVx1MDAxYY9A6q+eMMlMXHUwMDEy1lx1MDAxMIJT4sJcdPe6vWZ9vS0un9ytr+Gn9UrJSsFcdTAwMDVcdTAwMDRcdTAwMDPFYXalmTdcYntcdTAwMTazqr8mclx1MDAwNbdCi5hROVF2QuRYTG5J92bziftxPLlkXCJaZpmGsdj+gWGZRlx1MDAwMjwzzHF+VMue5duKaoKIYP9cbkBChItKqszKXHSSXG4xKkJl5Fx1MDAxYqrScMWZ1ji0oPVGXHUwMDE3aWxxUGpu7Vx1MDAxZTuHat/eqD9rblx1MDAxNPdT2s1XpFlos/Mv0oyrKSV3JGg2RjBnzziZcJJWo6FcIrYzYYgk8HpIXHUwMDFkSuQv0mRP321FXHUwMDEyyFqZSIL7e2dcdTAwMTaOJCCa4khcdTAwMTJauFx1MDAxYWo9JojJtlx1MDAwYoCShTCgqWo0P/z7i5dfftWvbvz3y89cdTAwMWXa3VPHXHUwMDBij23SaspcXIsyY9JitCiTbHBiUObZY5pZh6Gc+Zt8YWKYplLJUY/FVLOCRppTysBrgX/EfY3LcZtzOSow84TCXHUwMDE4UEKHZNL4MkxZXHUwMDEzi1iTh8JNI8TMZVx1MDAxOFx1MDAxOC1cdTAwMGXcKyY6/ffI6NUh1DJcIkG8i0WsoUpwkKnCdr5sOc3fzCfmaXGuPKlEyFGIydzeP6ptXHUwMDE4VWYouWKcXG7OeeipgbRcdTAwMTlcXJhQXz1Xh2t7T93mZqtTsndrx/d541x1MDAxZUuru0hcdTAwMDVyXHUwMDBlQUpGoK4gMceM4P5m+oHswzDQMaOud39cdTAwMTdm6YvJMJSIcD7B/q7ssbpx5EjhXHUwMDE2XHUwMDFh+0Btln5cdTAwMTBXWsY25lxu5Vx1MDAxN19cYkhiJnQoUudcdTAwMDWpXHUwMDEzXHUwMDFjx4irXHUwMDE2zDXVlIg35/jFlHz97HGR1su1Z5qvlzqiXdVcdTAwMGZ7zr1cdTAwMWbdrqzkXsYoR8KuLIVHKLKKbstcdTAwMDJinOLHwbas7Fx1MDAxNci3pFwi7chcYqaKM554ZESn1oGoXHUwMDE0XFwjrFx1MDAxN8AohFbTLdZcdTAwMGW5/bc/e/3FX1x1MDAxZZzand6xXXU79ss/f/ph6/VvPnv53T/7NHpeZz1m2aVcdTAwMTVa7I0ogzGpKKZcZlx1MDAxMrpcdTAwMWLrbEbUZsNLplDQfFQnxMKW0L62RVxmOGjSSS+qxMhyTjyGgWmEiVx1MDAwN9LsbUyPi2lcdTAwMTgmjFx1MDAxOGckacE2voo7XFyykkhpmIU8W/AmlVx0oFx1MDAxOdU0QT1XmbCS5m7mXHUwMDEzd7Tr0Fx0uTk6yFx1MDAwNKIo00CxwESiSFxcJjC/b5iDkpBKaaank1xyk1x1MDAxY1x1MDAwYlx1MDAwMVx1MDAxZkNcblx1MDAxM1AwWIDKjK8h90+FcMTAtSjnTC5ONfThbK0uXHUwMDFm7FRcdTAwMWVox63RZtd6gjr2ZjtcdTAwMTdcdFx1MDAwMerqb1xyXHUwMDFm7KZSkYVMTJR/ZNXsPpFcdTAwMTSRXHUwMDA0XHUwMDEygkVCiW2ic6v/p4CFkVx1MDAwNHdcdTAwMDXviFx1MDAxZFnzb6Zcbj1GMOcj+8nmhVhcdTAwMTRcdTAwMDHDXHT6N83m8M8/97dOf/mPV7//dlx1MDAxZWzjWk+WjlqfXHUwMDE4b2N3R2CRvkOTMGB5jOQv/rNa08O1Umn76bNL0b5Qj1x1MDAxZd89PL09XHUwMDAxkFwi0CnuK3SpKeCkkJFSKiTFXHUwMDAy72t3XHUwMDBlwoYvUJ9cdTAwMTPkZzdcdTAwMTh0XHUwMDE4e4JVwilcdTAwMTamXHUwMDBiXGaQXHUwMDFjKDiSoOJDs3d1hFx1MDAwM1FcdTAwMDFUb1x1MDAxMVvBsySq+ZtcdTAwMDZT7faK5OBoYlx1MDAxOZ9cbp94XHUwMDBm7z9objqkVHV6R48uNp+K02pKKoRRXHUwMDA17WJO0VOBJcahI6fDXG5cdTAwMWFcdTAwMGLRXHUwMDBiKuPHNt+oXHUwMDFkXG6pXHUwMDFlZT4xX4qTqUxQyS79aVx1MDAxY706LP1cdTAwMTGCzW41nkeZNnJM8m1FXHUwMDE2xU3JhFxiwkx1RLCI9tKE9Vx1MDAwZrJhXHUwMDA22kyHSjy3ovJHTJVcdTAwMTlsXHUwMDE017xhYf6lv367lyePN++tbO3Z3Vx1MDAxZd1qXHUwMDFmdot7dff57DtcdTAwMGJmKP2ltDuuUpnckZzmZufoTHOvQGGOaSBcdTAwMTNf0nYs4PQ/k1wiXHUwMDE55ULkUsd5nOK2XHUwMDAyi3+mhFx1MDAxMiYxZyp80n9cdTAwMDAsWF9cdTAwMTew0IRyUMKhXHUwMDEyYE6aS7KIM+NcdTAwMGJhJdNtWFxiqnyrVc/uxGqaXHUwMDE5W1x1MDAxOFx1MDAxNnWuZEzizChUXnUhoVx1MDAwM1NFrUpfXG6UQnKuyVx1MDAwNEuBR9XLp63O6vF9voXLd7eeXHUwMDFmfVDfX731YVx1MDAwYlx1MDAwMWuUXHUwMDA26GGBXGLGNFK9kEr0z85cdTAwMDDxxKBE+MLCXHUwMDE2yyRpXHUwMDExXHUwMDBmW1wiKMxcbtLXLCaAeYQ2WS06bEFG9/06Wlx1MDAwNkhcdTAwMTboU+v9yZT9iEmZXHUwMDAxl6rtQ5QuujSk/T9aM8G+vst2u3ZcIlx1MDAxZd1zXHUwMDBmkXO+t1uqnj3Et//wpVwivrK/WrNcZpVcdTAwMDP9gFOC+9VCJjloIL64eJtpXHTlKlx1MDAxOFx1MDAxNbRcdTAwMDLQcM2b/iZefFx1MDAxZZXBeZT9aGNvkLyeea2iXHUwMDFm1+9cZl6wbLXbXHUwMDA3XHUwMDFlXGb/8lW1Y/msYZ+vxZ3t3ar/Mbjgo4KJP9v06pNcdTAwMTfvvPhcdTAwMWaTkGJcdTAwMTAifQ==<!-- payload-end -->
4
- <defs>
5
- <style>
6
- @font-face {
7
- font-family: "Virgil";
8
- src: url("https://excalidraw.com/Virgil.woff2");
9
- }
10
- @font-face {
11
- font-family: "Cascadia";
12
- src: url("https://excalidraw.com/Cascadia.woff2");
13
- }
14
- </style>
15
- </defs>
1
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 838.4997558593744 793.4999847412107" width="838.4997558593744" height="793.4999847412107">
2
+ <!-- svg-source:excalidraw -->
3
+ <!-- payload-type:application/vnd.excalidraw+json --><!-- payload-version:2 --><!-- payload-start -->eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1cXElvI8dcdTAwMTW++1dcYvJ1RNe++CaR2qXZNPKMJjZcdTAwMDYtsrmMmmyabC2UMZfEcVx1MDAxMFx1MDAwM0FcdTAwMDLEycWBY1x1MDAwNDGQS1x1MDAxMlx1MDAxZoJcdTAwMDCGXHUwMDAz5M9kZpx/kVdNit3sjc1N0jhD2Fx1MDAwM6m7Wf2q6r3vfd+rKn3yztLSstdr28vvLy3bXHUwMDE3ZctpVDrW+fJcdTAwMWRz/czudFx1MDAxYm5cdTAwMGJuXHUwMDEx//eue9op+0/WPa/dff+994JvXHUwMDE0ym6z/y3bsZt2y+vCcz+B35eWPvH/XHK9p2OXPatVc2z/XHUwMDBi/q3gVYJHL951W/5bMeeaS6a0XHUwMDFhPtHoluB1nl2B21XL6drBXHUwMDFkc2nZ7ZRFy3F3Lrpb9Ky019vrdc+KwVurXHLHOfB6Tr9PVrl+2lx02dT1Ou6J/bhR8erm7ZHrw+91XVx1MDAxOIHgW1x1MDAxZPe0Vm/Z3e7VsPlX3bZVbng901x1MDAwZULDq/1BeH8puHJcdTAwMDG/rVxiQlx1MDAwYlx1MDAxY1OkXHUwMDE5XHUwMDE3QsP/w9umgVx1MDAxNcwoLiipkSBSMcWojJhWdFx1MDAxZLdjTHuXaY64XGaMO7bKJzWwsFVcdTAwMTk+43WsVrdtdWDKgufOXHUwMDA3nSZCXHUwMDE1XHUwMDEwfCjiWHIp9fCJut2o1T14RMqCNlx1MDAxZkIlXHUwMDEyiLOQMbY/L1x1MDAxOK5rXGYtXHUwMDA13TAmtLcrvot8XHUwMDE0XHUwMDFk17rVaVx1MDAwZsZv2Tc1ZL75dT3qX2FcdTAwMWZcdTAwMGLN/bn1+IPm1lx1MDAxMVuvs8era2s7SD5prlxy21x1MDAxYXFIq9Nxz5eHd15cZn5cbkw7bVesvpdhIVx1MDAxOEKEKJiZYHqdRutcdTAwMDRutk5cdTAwMWQnuOaWT1x1MDAwMsf0r764M1x1MDAxYVx1MDAxMH1D11x1MDAwZtdOXGIt0+36prt9uVvcquqdnaDTV0Z69kVohnxH4VxuXHUwMDE1XHUwMDEwOFxupZxiXHSTXHUwMDEwdVx1MDAxNIxcblTC4FNFYnOLVcJssiznnJd33XTYTet+XHUwMDAzh1x1MDAxNkwjToVcZmAoQC9Oolx1MDAxN4foJVx1MDAxOFOKYJ5cdTAwMDe9JnL0M7zh6JWV59aTYvuhKjYvyO52dV6Ojlx1MDAxNVFcYk/g6IHfXHUwMDFhf4V3/udfX7/8+Tcvf/3TV7/7tmR5VshcdTAwMGbclnfQuDSWXHUwMDExNXJ1w2o2nN7I9JvmVp1GzYzysmNXvZHk4TUgXHUwMDExXHJve2477JVdXHUwMDFizDZvoYFcdTAwMGaU4S1cdTAwMTZcXO1sV6L9cTuNWqNlOY/SOpBcdTAwMTHL2XNcdTAwMTGZh9FgZlpcdTAwMTUk05pcIkGxgv9cIsFMOfdRXHUwMDFmYXhKKMliXHUwMDExLVxuSFx1MDAwMlx1MDAxMFx1MDAwMFx1MDAwZSBOtJZcdTAwMDFcdTAwMTRcdTAwMGbjXHUwMDFiU1x1MDAxZq5cdTAwMTVAOTGNXHUwMDA0yfZtuKeEO1x1MDAwNt5BXHSFzifEO1x0TUM04M1EUMZYkPfyXHUwMDA3/IhDxrNcdTAwMGZhSPFpgrLtNqKIXHUwMDEy/LRcdTAwMTRMvv/L8OeP7iQ+nepv5lx1MDAxM/O0oLVcdTAwMTjqOFbXK7rNZsODbt43Jka70/WsjrfWaFVcdTAwMWGtXHUwMDFh3Fx1MDAwYlDwim5u50ilPriUT033UVx1MDAwMXPGXHUwMDE5xkxcdTAwMTLClZKChp6qWW0z2KzAIdpcYkFcdTAwMTJRTK468GJolN2qjDfJPVJbW0ertWJcdTAwMTXTbWWX2YFzsJJk0lxu5HLFIYtLXHUwMDAx72SEXHUwMDAx1Y3ZxFxuzFxmquLAhZFcIojGjPJHatXgS922YthcdTAwMDYmh++FXHUwMDEzQlx1MDAxNNBysXVcdTAwMTiXVP+njHKFRYh6jKXrmWN140CSRtcpXHUwMDA3uk6Mq3PO6NCRXHUwMDA2uE0w9UlcdTAwMTjlXHUwMDA0glfjxbF1ilx1MDAxM1x1MDAxMD9EU4aEXFxLwlx1MDAwNaNcdTAwMDF0XVx1MDAwYiGfgafcSW43kVx1MDAxYYfeeH6wv7l+flxctvd3712SfVBKxUZjfLP9L+9cdTAwMWX2Wk7DO7u7Vm6utVx1MDAwZlx1MDAxML04s+2ZzO23u9LDnY9rvdLTPbF376B7Ut+gK9vzomtcdTAwMTQzxIJ5nUmXJI9eLl2idVZEYO3r14SIXHUwMDE46k7G455M35KVsWRFMqqERiyGyj4gp2K11MzX+IFcdTAwMWQ3T1Wu9MOrr7979au/XHUwMDE54v3qj9/88Pc/XHUwMDAxXHUwMDBih9/noVwiytBcdTAwMDO7k6Ejmo1KJZz3QlKCXHUwMDA0QTYqJcYlsai6SOneXGYpmeu0acZcdTAwMTQj4Fx1MDAwZWHtMC4llyi/XFzZ3qDlj9c3elx1MDAxNNcrlydbb0BKJqxcdTAwMDDMTVx1MDAwM79cdTAwMTOYKVx1MDAxOSmMaMVGpJSIWLbglKxCsNVcdTAwMGZbglx1MDAxMKg+KkPJ+lxyTcn9dovVXHUwMDA3ZYeo3sbHrZJuPjrbWX3OXHUwMDFmJrfrh/nMmT75hTmt3dx/pq2jnSo6rFx1MDAxNT84PiQr5NHhxlx1MDAxY0ZhXHUwMDA2XHUwMDA2MT7Tm1RcdTAwMWaq/E6Z6ZOTeEjfMlx1MDAxYb16XHUwMDA1JkpSrDBGeeRtXHUwMDFlr7itWMKFzsRcdTAwMTKpr1x0S0CHJtD7XHUwMDE4lmCqqVlcdTAwMWOgXHUwMDBiwJIsfyRcdTAwMTJcdTAwMGI9gT9On8CNpa+///T197/op8zX3//21Vd/WPqwXHUwMDA1UWT1uu95rmc5r//6y8TEXHUwMDFkyo6zkYFI2lx1MDAxZpMoo2k/wf6o9Vx1MDAxOdQ8XHUwMDFiWcaUXHUwMDE5SVx1MDAwMbhcdTAwMWVRQPlcdTAwMTSASHRxXHRT6pNzYG1cdTAwMDK0K1IxP0RcdTAwMDVNOPB6JKBcdTAwMTFcdTAwMDGUgsXdXHUwMDEyM+IvXHUwMDFjMS6loEKSjCh7S91cdTAwMDeyXHUwMDFjyDtVidSdolRcdTAwMThcdTAwMTZcYuRcdTAwMTRleYosXHUwMDEzMnfwXHI1iZRcdTAwMWNenmuRMd3bzCfmZ0FzsVx1MDAxNDq3KmPuklx1MDAxZSogLYhZs+ZYQ75mXGaHnlx1MDAxYVRcdTAwMTlNkVx1MDAxMVx1MDAxMSEhJFx1MDAxNVx1MDAwNJ1mgycmrDNm48/SSJ1cdTAwMTFzXHIvVExcdIGkmemYVdJcdTAwMWZVgVx1MDAxMeWYXHUwMDBiRK6hzlx1MDAxOFx1MDAwMavQmlx1MDAxYVx1MDAxNWnOTzBVREoywZaAbLJ34yCSQkKYwlx1MDAwNeB7hFxu0G9cdTAwMDSISISEIOSDtim2SFx1MDAxZS75zZuDXHUwMDE0XGJgXHUwMDE05YhcdTAwMDHoUJCSwatC2D+yaUCFSsRcdTAwMDOo01xcwW0qXHUwMDE3UIDMZMxMTbRmPyku5Fx1MDAwZUGIQMQkUlxmKJPAXHUwMDFhKVx1MDAxYY9A6q+eMMlMXHUwMDEy1lx1MDAxMIJT4sJcdPe6vWZ9vS0un9ytr+Gn9UrJSsFcdTAwMDVcdTAwMDRcdTAwMDPFYXalmTdcYntcdTAwMTazqr8mclx1MDAwNbdCi5hROVF2QuRYTG5J92bziftxPLlkXCJaZpmGsdj+gWGZRlx1MDAwMjwzzHF+VMue5duKaoKIYP9cbkBChItKqszKXHSSXG4xKkJl5Fx1MDAxYqrScMWZ1ji0oPVGXHUwMDE3aWxxUGpu7Vx1MDAxZTuHat/eqD9rblx1MDAxNPdT2s1XpFlos/Mv0oyrKSV3JGg2RjBnzziZcJJWo6FcIrYzYYgk8HpIXHUwMDFkSuQv0mRP321FXHUwMDEyyFqZSIL7e2dcdTAwMTaOJCCa4khcdTAwMTJauFx1MDAxYWo9JojJtlx1MDAwYoCShTCgqWo0P/z7i5dfftWvbvz3y89cdTAwMWXa3VPHXHUwMDBij23SaspcXIsyY9JitCiTbHBiUObZY5pZh6Gc+Zt8YWKYplLJUY/FVLOCRppTysBrgX/EfY3LcZtzOSow84TCXHUwMDE4UEKHZNL4MkxZXHUwMDEzi1iTh8JNI8TMZVx1MDAxOFx1MDAxOC1cdTAwMGXcKyY6/ffI6NUh1DJcIkG8i0WsoUpwkKnCdr5sOc3fzCfmaXGuPKlEyFGIydzeP6ptXHUwMDE4VWYouWKcXG7OeeipgbRcdTAwMTlcXJhQXz1Xh2t7T93mZqtTsndrx/d541x1MDAxZUuru0hcdTAwMDVyXHUwMDBlQUpGoK4gMceM4P5m+oHswzDQMaOud39cdTAwMTdm6YvJMJSIcD7B/q7ssbpx5EjhXHUwMDE2XHUwMDFh+0Btln5cdTAwMTBXWsY25lxu5Vx1MDAxN19cYkhiJnQoUudcdTAwMDWpXHUwMDEzXHUwMDFjx4irXHUwMDE2zDXVlIg35/jFlHz97HGR1su1Z5qvlzqiXdVcdTAwMGZ7zr1cdTAwMWbdrqzkXsYoR8KuLIVHKLKKbstcdTAwMDJinOLHwbas7Fx1MDAxNci3pFwi7chcYqaKM554ZESn1oGoXHUwMDE0XFwjrFx1MDAxN8AohFbTLdZcdTAwMGW5/bc/e/3FX1x1MDAxZZzand6xXXU79ss/f/ph6/VvPnv53T/7NHpeZz1m2aVcdTAwMTVa7I0ogzGpKKZcZlx1MDAxMrpcdTAwMWLrbEbUZsNLplDQfFQnxMKW0L62RVxmOGjSSS+qxMhyTjyGgWmEiVx1MDAwN9LsbUyPi2lcdTAwMTgmjFx1MDAxOGckacE2voo7XFyykkhpmIU8W/AmlVx0oFx1MDAxOdU0QT1XmbCS5m7mXHUwMDEzd7Tr0Fx0uTk6yFx1MDAwNKIo00CxwESiSFxcJjC/b5iDkpBKaaank1xyk1x1MDAxY1x1MDAwYlx1MDAwMVx1MDAxZkNcblx1MDAxM1AwWIDKjK8h90+FcMTAtSjnTC5ONfThbK0uXHUwMDFm7FRcdTAwMWVox63RZtd6gjr2ZjtcdTAwMTdcdFx1MDAwMerqb1xyXHUwMDFm7KZSkYVMTJR/ZNXsPpFcdTAwMTSRXHUwMDA0XHUwMDEygkVCiW2ic6v/p4CFkVx1MDAwNHdcdTAwMDXviFx1MDAxZFnzb6Zcbj1GMOcj+8nmhVhcdTAwMTRcdTAwMDHDXHT6N83m8M8/97dOf/mPV7//dlx1MDAxZWzjWk+WjlqfXHUwMDE4b2N3R2CRvkOTMGB5jOQv/rNa08O1Umn76bNL0b5Qj1x1MDAxZd89PL09XHUwMDAxkFwi0CnuK3SpKeCkkJFSKiTFXHUwMDAy72t3XHUwMDBlwoYvUJ9cdTAwMTPkZzdcdTAwMTh0XHUwMDE4e4JVwilcdTAwMTamXHUwMDBiXGaQXHUwMDFjKDiSoOJDs3d1hFx1MDAwM1FcdTAwMDFUb1x1MDAxMVvBsySq+ZtcdTAwMDZT7faK5OBoYlx1MDAxOZ9cbp94XHUwMDBm7z9objqkVHV6R48uNp+K02pKKoRRXHUwMDA17WJO0VOBJcahI6fDXG5cdTAwMWFcdTAwMGLRXHUwMDBiKuPHNt+oXHUwMDFkXG6pXHUwMDFlZT4xX4qTqUxQyS79aVx1MDAxY706LP1cdTAwMTGCzW41nkeZNnJM8m1FXHUwMDE2xU3JhFxiwkx1RLCI9tKE9Vx1MDAwZrJhXHUwMDA22kyHSjy3ovJHTJVcdTAwMTlsXHUwMDE017xhYf6lv367lyePN++tbO3Z3Vx1MDAxZd1qXHUwMDFmdot7dff57DtcdTAwMGJmKP2ltDuuUpnckZzmZufoTHOvQGGOaSBcdTAwMTNf0nYs4PQ/k1wiXHUwMDE55ULkUsd5nOK2XHUwMDAyi3+mhFx1MDAxMiYxZyp80n9cdTAwMDAsWF9cdTAwMTew0IRyUMKhXHUwMDEyYE6aS7KIM+NcdTAwMGJhJdNtWFxiqnyrVc/uxGqaXHUwMDE5W1x1MDAxOFx1MDAxNnWuZEzizChUXnUhoVx1MDAwM1NFrUpfXG6UQnKuyVx1MDAwNEuBR9XLp63O6vF9voXLd7eeXHUwMDFmfVDfX731YVx1MDAwYlx1MDAwMWuUXHUwMDA26GGBXGLGNFK9kEr0z85cdTAwMDDxxKBE+MLCXHUwMDE2yyRpXHUwMDExXHUwMDBmW1wiKMxcbtLXLCaAeYQ2WS06bEFG9/06Wlx1MDAwNkhcdTAwMTboU+v9yZT9iEmZXHUwMDAxl6rtQ5QuujSk/T9aM8G+vst2u3ZcIlx1MDAxZd1zXHUwMDBmkXO+t1uqnj3Et//wpVwivrK/WrNcZpVcdTAwMDP9gFOC+9VCJjloIL64eJtpXHTlKlx1MDAxOFx1MDAxNbRcdTAwMDLQcM2b/iZefFx1MDAxZZXBeZT9aGNvkLyeea2iXHUwMDFm1+9cZl6wbLXbXHUwMDA3XHUwMDFlXGb/8lW1Y/msYZ+vxZ3t3ar/Mbjgo4KJP9v06pNcdTAwMTfvvPhcdTAwMWaTkGJcdTAwMTAifQ==<!-- payload-end -->
4
+ <defs>
5
+ <style>
6
+ @font-face {
7
+ font-family: "Virgil";
8
+ src: url("https://excalidraw.com/Virgil.woff2");
9
+ }
10
+ @font-face {
11
+ font-family: "Cascadia";
12
+ src: url("https://excalidraw.com/Cascadia.woff2");
13
+ }
14
+ </style>
15
+ </defs>
16
16
  <rect x="0" y="0" width="838.4997558593744" height="793.4999847412107" fill="#ffffff"></rect><g stroke-linecap="round" transform="translate(21.999893188476335 10) rotate(0 134.00001525878895 38.999996185302734)"><path d="M19.5 0 M19.5 0 C105.59 -0.5, 190.75 2.84, 248.5 0 M19.5 0 C72.48 0.89, 124.03 2.08, 248.5 0 M248.5 0 C262.29 -2.75, 265.64 3.83, 268 19.5 M248.5 0 C262.84 -4.35, 271.35 4.03, 268 19.5 M268 19.5 C266.1 28.47, 267.61 40.55, 268 58.5 M268 19.5 C266.77 30.1, 268.3 38.13, 268 58.5 M268 58.5 C268.25 74.9, 258.91 74.33, 248.5 78 M268 58.5 C269.94 67.99, 258.96 75.04, 248.5 78 M248.5 78 C166.8 76.9, 86.42 75.78, 19.5 78 M248.5 78 C160.94 77.18, 73.82 78.67, 19.5 78 M19.5 78 C8.24 74.35, 3.56 67.55, 0 58.5 M19.5 78 C2.27 73.48, 1.88 72.71, 0 58.5 M0 58.5 C1.2 54.34, -0.08 43.28, 0 19.5 M0 58.5 C2.07 48.37, 1.17 36.9, 0 19.5 M0 19.5 C-2.1 2.88, 6.68 3.71, 19.5 0 M0 19.5 C2.15 4.74, 7.9 -2.26, 19.5 0" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(65.49995422363304 31.49993896484375) rotate(0 94.5 20)"><text x="0" y="30" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#495057" text-anchor="start" style="white-space: pre;" direction="ltr">传入参数Data</text></g><g stroke-linecap="round"><g transform="translate(146.7630571236012 86.00006103515625) rotate(0 3.860349272645692 69.03760786011821)"><path d="M1.61 -1.95 C2.4 20.93, 2.81 113.79, 3.62 136.96 M-0.96 3.16 C0.78 26.47, 7.71 117.27, 8.68 140.03" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(146.7630571236012 86.00006103515625) rotate(0 3.860349272645692 69.03760786011821)"><path d="M-6.09 109.01 C-1.74 120.06, 1.55 124.39, 10.16 140.81 M-2.72 110.63 C0.6 117.97, 1.36 126.32, 8.34 138.9" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(146.7630571236012 86.00006103515625) rotate(0 3.860349272645692 69.03760786011821)"><path d="M14.39 107.74 C13.42 119.35, 11.4 124.01, 10.16 140.81 M17.76 109.36 C16.33 116.72, 12.36 125.37, 8.34 138.9" stroke="#495057" stroke-width="1" fill="none"></path></g></g><g stroke-linecap="round" transform="translate(10 228.49992752075195) rotate(0 158.5 39)"><path d="M19.5 0 M19.5 0 C110.9 1.28, 200.45 3.04, 297.5 0 M19.5 0 C130.69 -0.61, 241.5 0.84, 297.5 0 M297.5 0 C310.57 -2.56, 313.83 5.87, 317 19.5 M297.5 0 C314.78 2.08, 319.03 1.98, 317 19.5 M317 19.5 C317.16 24.67, 316.86 34.56, 317 58.5 M317 19.5 C316.39 31.3, 315.51 42.69, 317 58.5 M317 58.5 C317.22 75.23, 310.87 76.23, 297.5 78 M317 58.5 C317.29 74.11, 313.76 75.47, 297.5 78 M297.5 78 C234.64 76.3, 173.74 75.31, 19.5 78 M297.5 78 C205.65 78.49, 110.67 76.71, 19.5 78 M19.5 78 C8.77 80.24, -0.34 70.02, 0 58.5 M19.5 78 C3.43 79.43, -4 74.68, 0 58.5 M0 58.5 C-1.22 47.24, 1.97 30.48, 0 19.5 M0 58.5 C0.3 44.05, -1.93 31.64, 0 19.5 M0 19.5 C0.16 5.06, 9.77 -1.22, 19.5 0 M0 19.5 C-3.47 5.92, 3.05 -0.93, 19.5 0" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(46 249.99992752075195) rotate(0 122.5 17.5)"><text x="122.5" y="24" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#495057" text-anchor="middle" style="white-space: pre;" direction="ltr">根据Data查询数据</text></g><g stroke-linecap="round" transform="translate(21.500076293945085 457.000061035156) rotate(0 158.5 40)"><path d="M20 0 M20 0 C82.17 0.81, 146.13 1.39, 297 0 M20 0 C98.14 3.32, 175.07 4.16, 297 0 M297 0 C312.85 -1.3, 317.8 5.92, 317 20 M297 0 C314.84 -3.81, 314.82 6.04, 317 20 M317 20 C315.99 39.27, 319.23 49.09, 317 60 M317 20 C318.15 35.19, 316.47 50.33, 317 60 M317 60 C317.1 74.33, 306.63 79.8, 297 80 M317 60 C318.13 73.97, 305.86 80.71, 297 80 M297 80 C221.28 79.14, 151.55 76.66, 20 80 M297 80 C206.66 81.98, 116.44 84.02, 20 80 M20 80 C4.52 80.16, 0.82 76.09, 0 60 M20 80 C9.16 76.58, 4.39 69.84, 0 60 M0 60 C-1.12 47.24, 2.6 25.4, 0 20 M0 60 C0.98 43.46, -1.78 30.63, 0 20 M0 20 C1.72 5.54, 9.39 0.04, 20 0 M0 20 C-3.47 7.21, 5.13 2.96, 20 0" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(76.50007629394509 462.000061035156) rotate(0 103.5 35)"><text x="103.5" y="24" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#495057" text-anchor="middle" style="white-space: pre;" direction="ltr">组织查询结果 </text><text x="103.5" y="59" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#495057" text-anchor="middle" style="white-space: pre;" direction="ltr">arrays/total等</text></g><g stroke-linecap="round"><g transform="translate(153.48269834720134 307.9999542236328) rotate(0 1.0919746526446659 71.37524573892358)"><path d="M0.97 1.59 C0.92 25.8, -1.02 119.03, -1.14 142.77 M-1.95 -0.02 C-1.04 23.53, 4.13 114.91, 4.14 138.17" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(153.48269834720134 307.9999542236328) rotate(0 1.0919746526446659 71.37524573892358)"><path d="M-4.75 107.37 C-3.41 116.77, 1.36 123, 6.34 141.27 M-7.13 111.87 C-4.8 114.98, -3.57 123.4, 3.23 137.63" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(153.48269834720134 307.9999542236328) rotate(0 1.0919746526446659 71.37524573892358)"><path d="M15.76 106.71 C11.56 116.43, 10.81 122.84, 6.34 141.27 M13.38 111.22 C11.51 114.67, 8.53 123.22, 3.23 137.63" stroke="#495057" stroke-width="1" fill="none"></path></g></g><g stroke-linecap="round"><g transform="translate(164.36975087018686 540.9999084472656) rotate(0 2.2161321658697375 75.94996558740735)"><path d="M1.88 1.85 C1.45 26.32, -0.5 123.91, -0.14 147.93 M-0.54 0.38 C-0.35 25.23, 4.34 126.92, 4.98 151.52" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(164.36975087018686 540.9999084472656) rotate(0 2.2161321658697375 75.94996558740735)"><path d="M-3.68 120.34 C-1.83 136.99, -0.24 146.44, 3.92 153.66 M-4.61 121.98 C-4.4 130.96, -1.52 136.21, 5.66 150.88" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(164.36975087018686 540.9999084472656) rotate(0 2.2161321658697375 75.94996558740735)"><path d="M16.83 119.58 C10.74 136.8, 4.37 146.55, 3.92 153.66 M15.89 121.22 C11.32 130.12, 9.43 135.55, 5.66 150.88" stroke="#495057" stroke-width="1" fill="none"></path></g></g><g stroke-linecap="round" transform="translate(19.499954223632358 703.4999847412107) rotate(0 158.5 40)"><path d="M20 0 M20 0 C122.6 -0.3, 220.47 -2.27, 297 0 M20 0 C124.5 -0.87, 227.33 0.37, 297 0 M297 0 C311.74 0.39, 314.64 7.85, 317 20 M297 0 C309.94 2.74, 321.57 2.3, 317 20 M317 20 C316.99 28.72, 315.11 41.67, 317 60 M317 20 C314.77 33.47, 316.21 46.94, 317 60 M317 60 C319.17 76.89, 307.34 83.46, 297 80 M317 60 C315.94 74.95, 308.65 81.56, 297 80 M297 80 C194.87 77.36, 91.4 74.91, 20 80 M297 80 C199.87 75.36, 103.48 77.79, 20 80 M20 80 C9.7 81.97, -0.82 73.15, 0 60 M20 80 C7.65 84.16, 4.19 70.21, 0 60 M0 60 C-1.49 51.89, 1.42 38.35, 0 20 M0 60 C-0.15 51.62, -0.05 43.02, 0 20 M0 20 C0.76 10.21, 3.5 -3.38, 20 0 M0 20 C3.33 7.27, 6.27 3.91, 20 0" stroke="#495057" stroke-width="1" fill="none"></path></g><g transform="translate(62.49995422363236 725.9999847412107) rotate(0 115.5 17.5)"><text x="115.5" y="24" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#495057" text-anchor="middle" style="white-space: pre;" direction="ltr">返回结果集Result</text></g><g stroke-linecap="round"><g transform="translate(290.99992370605423 46.96952930676798) rotate(0 127.702671778947 26.139837041058172)"><path d="M-1.81 1.98 C41.39 10.06, 214.26 41.16, 257.22 48.88 M2.4 0.59 C45.43 8.97, 213.24 43.4, 255.1 51.69" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(290.99992370605423 46.96952930676798) rotate(0 127.702671778947 26.139837041058172)"><path d="M228.27 56.48 C230.02 53.99, 236.02 52.42, 251.5 48.09 M226.11 54.87 C234.71 55.76, 247.23 52.33, 253.26 50.46" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(290.99992370605423 46.96952930676798) rotate(0 127.702671778947 26.139837041058172)"><path d="M232.33 36.36 C233.22 38.41, 238.29 41.43, 251.5 48.09 M230.17 34.75 C237.51 42.65, 248.62 46.24, 253.26 50.46" stroke="#c92a2a" stroke-width="1" fill="none"></path></g></g><g stroke-linecap="round" transform="translate(553.9999389648432 72.99993515014648) rotate(0 134.00001525878895 40)"><path d="M20 0 M20 0 C101.4 -0.71, 186.55 1.63, 248 0 M20 0 C79.14 -2.22, 138.39 -4.25, 248 0 M248 0 C262.69 -2.16, 264.27 9.37, 268 20 M248 0 C262.21 0.58, 267.87 5.53, 268 20 M268 20 C265.47 38.52, 268.9 49.57, 268 60 M268 20 C267.66 33, 269.89 43.69, 268 60 M268 60 C265.47 76.33, 259.65 83.87, 248 80 M268 60 C272.2 76.61, 263.07 81.58, 248 80 M248 80 C201.03 75.11, 147.15 74.73, 20 80 M248 80 C170.64 82.72, 91.81 80.94, 20 80 M20 80 C4.79 81.74, -3.5 75.87, 0 60 M20 80 C2.39 84.04, -3.75 77.36, 0 60 M0 60 C4.15 47.01, -0.78 38.45, 0 20 M0 60 C1.41 46.25, -0.71 33.05, 0 20 M0 20 C-2.16 3.21, 3.69 -2.84, 20 0 M0 20 C-0.84 4.54, 5.89 -0.59, 20 0" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(564.4999542236321 77.99993515014648) rotate(0 123.5 35)"><text x="123.5" y="24" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#c92a2a" text-anchor="middle" style="white-space: pre;" direction="ltr">调用Querybefore处</text><text x="123.5" y="59" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#c92a2a" text-anchor="middle" style="white-space: pre;" direction="ltr">理并返回Data</text></g><g stroke-linecap="round"><g transform="translate(549.9999237060542 117.99999237060547) rotate(0 -193.69374129965888 52.07656196191908)"><path d="M-0.54 0.38 C-64.41 17.26, -320.9 86.05, -385.1 103.67 M-4.27 -1.88 C-68.27 16.49, -322.99 87.52, -386.85 106.03" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(549.9999237060542 117.99999237060547) rotate(0 -193.69374129965888 52.07656196191908)"><path d="M-361.98 89.75 C-371.22 92.8, -373.46 92.97, -390.83 108.57 M-364.48 90.46 C-367.05 91.52, -372.24 94.62, -388.29 104.7" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(549.9999237060542 117.99999237060547) rotate(0 -193.69374129965888 52.07656196191908)"><path d="M-356.38 109.49 C-367.27 107.92, -370.81 103.5, -390.83 108.57 M-358.88 110.2 C-362.53 106.8, -368.95 105.54, -388.29 104.7" stroke="#c92a2a" stroke-width="1" fill="none"></path></g></g><g transform="translate(340.00007629394486 161.4999771118164) rotate(0 80.5 20)"><text x="0" y="30" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#c92a2a" text-anchor="start" style="white-space: pre;" direction="ltr">把Data更新</text></g><g stroke-linecap="round"><g transform="translate(333.9999084472653 493.3000038313785) rotate(0 111.50646419912574 24.34065105429312)"><path d="M-1.63 -1.02 C34.82 7.51, 182.44 40.73, 219.21 49.22 M2.68 -4.04 C39.99 5.12, 187.63 43.17, 224.64 52.72" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(333.9999084472653 493.3000038313785) rotate(0 111.50646419912574 24.34065105429312)"><path d="M193.33 53.07 C203.98 52.22, 214.48 53.27, 222.97 49.84 M194.13 54.48 C206.13 55.27, 219.3 55.58, 224.46 50.75" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(333.9999084472653 493.3000038313785) rotate(0 111.50646419912574 24.34065105429312)"><path d="M198.45 33.2 C207.2 38.59, 216.07 45.96, 222.97 49.84 M199.25 34.61 C209.48 43.16, 220.63 51.3, 224.46 50.75" stroke="#c92a2a" stroke-width="1" fill="none"></path></g></g><g stroke-linecap="round" transform="translate(560.4997253417965 516.9999313354492) rotate(0 134.00001525878895 40)"><path d="M20 0 M20 0 C96.14 3.51, 175 4.43, 248 0 M20 0 C104.03 1.88, 188.76 2.04, 248 0 M248 0 C261.89 1.26, 267.65 9.71, 268 20 M248 0 C260.21 2.83, 265.09 4.34, 268 20 M268 20 C265.04 34.72, 266.55 41.39, 268 60 M268 20 C269.01 27.45, 270.15 37.47, 268 60 M268 60 C268.25 77.08, 263.17 81.34, 248 80 M268 60 C267.11 70.61, 258.89 77.46, 248 80 M248 80 C156.98 77.11, 73.68 77.36, 20 80 M248 80 C193.67 77.31, 142.15 78.05, 20 80 M20 80 C5.48 79.58, -0.4 75.64, 0 60 M20 80 C10.8 80.03, 3.06 69.75, 0 60 M0 60 C-2.05 46.78, 3.2 35.63, 0 20 M0 60 C1.32 51, 0.36 41.02, 0 20 M0 20 C0.32 5.52, 4.64 1.45, 20 0 M0 20 C3.89 8.18, 4.99 2.13, 20 0" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(576.4997406005855 521.9999313354492) rotate(0 118 35)"><text x="118" y="24" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#c92a2a" text-anchor="middle" style="white-space: pre;" direction="ltr">调用QueryAfter处</text><text x="118" y="59" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#c92a2a" text-anchor="middle" style="white-space: pre;" direction="ltr">理并返回Result</text></g><g transform="translate(397.99983215331986 654.9999618530271) rotate(0 87.5 20)"><text x="0" y="30" font-family="Virgil, Segoe UI Emoji" font-size="28px" fill="#c92a2a" text-anchor="start" style="white-space: pre;" direction="ltr">把Result更新</text></g><g stroke-linecap="round"><g transform="translate(562.9999542236322 576.5000152587886) rotate(0 -194.84828739121545 52.56615835860373)"><path d="M-0.34 0.72 C-65.22 18.78, -322.39 88.94, -386.73 106.49 M-3.97 -1.36 C-69.52 15.96, -325.3 83.33, -389.36 101.74" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(562.9999542236322 576.5000152587886) rotate(0 -194.84828739121545 52.56615835860373)"><path d="M-363.85 83.37 C-373.97 90.66, -384.2 101.62, -391.42 98.44 M-365.97 85.74 C-370.99 87.77, -379.92 93.71, -391.14 103.58" stroke="#c92a2a" stroke-width="1" fill="none"></path></g><g transform="translate(562.9999542236322 576.5000152587886) rotate(0 -194.84828739121545 52.56615835860373)"><path d="M-358.43 103.16 C-370.41 102.7, -382.75 105.92, -391.42 98.44 M-360.55 105.53 C-366.64 102.23, -377.01 102.87, -391.14 103.58" stroke="#c92a2a" stroke-width="1" fill="none"></path></g></g></svg>
@@ -1,3 +1,3 @@
1
- import CitySelect from './CitySelect'
2
-
3
- export default CitySelect
1
+ import CitySelect from './CitySelect'
2
+
3
+ export default CitySelect
@@ -1,109 +1,109 @@
1
- # 省市区修改组件
2
-
3
- > 下拉框数据从库里查询 divisions_of_china 表
4
- > 省市区数据存储格式
5
-
6
- +---------+-----+------------+--------+--------+----------+
7
- |code |name |provinceCode|cityCode|areaCode|parentCode|
8
- +---------+-----+------------+--------+--------+----------+
9
- |11 |北京市 |NULL |NULL |NULL |NULL |
10
- |1101 |市辖区 |11 |NULL |NULL |11 |
11
- |110101 |东城区 |11 |1101 |NULL |1101 |
12
- |110101001|东华门街道|11 |1101 |110101 |1101 |
13
- |110101002|景山街道 |11 |1101 |110101 |1101 |
14
- +---------+-----+------------+--------+--------+----------+
15
-
16
-
17
- 查询出来之后转成tree 作为数据 (截取了一段数据)
18
-
19
- ```json
20
- [
21
- {
22
- "code": "11",
23
- "name": "北京",
24
- "label": "北京",
25
- "value": "北京",
26
- "children":
27
- [
28
- {
29
- "code": "1101",
30
- "parentcode": "11",
31
- "name": "辖区",
32
- "label": "辖区",
33
- "value": "辖区",
34
- "children":
35
- [
36
- {
37
- "code": "110101",
38
- "parentcode": "1101",
39
- "name": "东城区",
40
- "label": "东城区",
41
- "value": "东城区"
42
- }
43
- ]}]}]
44
- ```
45
-
46
- 可传递参数
47
- ```js
48
- props = {
49
- // 页面渲染内容 默认 省市区街道 四个 所以是4
50
- contexts: {
51
- type: Number,
52
- default: 3
53
- },
54
- placeholder: {
55
- type: String,
56
- default: '请选择省市区'
57
- },
58
- // small lage 输入框大小
59
- size: {
60
- type: String,
61
- default: undefined
62
- },
63
- // 类型 simple / undefined
64
- // simple 就是用的 cascader 不穿就是用的 自己封装的
65
- type: {
66
- type: String,
67
- default: undefined
68
- },
69
- // 框的样式
70
- inputStyle: {
71
- type: Object,
72
- default: () => {
73
- }
74
- },
75
- // 下拉框的样式
76
- dropdownStyle: {
77
- type: Object,
78
- default: () => {
79
- return {
80
- width: '35rem',
81
- padding: '1%'
82
- }
83
- }
84
- },
85
- // 标签的样式
86
- tagStyle: {
87
- type: Object,
88
- default: () => {
89
- return {
90
- fontSize: '0.88rem',
91
- width: '23%',
92
- textAlign: 'left',
93
- margin: '0.5%',
94
- cursor: 'pointer'
95
- }
96
- }
97
- },
98
- // 用于v-model 绑定
99
- value: {
100
- type: String,
101
- default: undefined
102
- },
103
- // 用于v-model 绑定 code :最后一级的code address: 所有级拼接的地址
104
- valueType: {
105
- type: String,
106
- default: 'address'
107
- }
108
- }
109
- ```
1
+ # 省市区修改组件
2
+
3
+ > 下拉框数据从库里查询 divisions_of_china 表
4
+ > 省市区数据存储格式
5
+
6
+ +---------+-----+------------+--------+--------+----------+
7
+ |code |name |provinceCode|cityCode|areaCode|parentCode|
8
+ +---------+-----+------------+--------+--------+----------+
9
+ |11 |北京市 |NULL |NULL |NULL |NULL |
10
+ |1101 |市辖区 |11 |NULL |NULL |11 |
11
+ |110101 |东城区 |11 |1101 |NULL |1101 |
12
+ |110101001|东华门街道|11 |1101 |110101 |1101 |
13
+ |110101002|景山街道 |11 |1101 |110101 |1101 |
14
+ +---------+-----+------------+--------+--------+----------+
15
+
16
+
17
+ 查询出来之后转成tree 作为数据 (截取了一段数据)
18
+
19
+ ```json
20
+ [
21
+ {
22
+ "code": "11",
23
+ "name": "北京",
24
+ "label": "北京",
25
+ "value": "北京",
26
+ "children":
27
+ [
28
+ {
29
+ "code": "1101",
30
+ "parentcode": "11",
31
+ "name": "辖区",
32
+ "label": "辖区",
33
+ "value": "辖区",
34
+ "children":
35
+ [
36
+ {
37
+ "code": "110101",
38
+ "parentcode": "1101",
39
+ "name": "东城区",
40
+ "label": "东城区",
41
+ "value": "东城区"
42
+ }
43
+ ]}]}]
44
+ ```
45
+
46
+ 可传递参数
47
+ ```js
48
+ props = {
49
+ // 页面渲染内容 默认 省市区街道 四个 所以是4
50
+ contexts: {
51
+ type: Number,
52
+ default: 3
53
+ },
54
+ placeholder: {
55
+ type: String,
56
+ default: '请选择省市区'
57
+ },
58
+ // small lage 输入框大小
59
+ size: {
60
+ type: String,
61
+ default: undefined
62
+ },
63
+ // 类型 simple / undefined
64
+ // simple 就是用的 cascader 不穿就是用的 自己封装的
65
+ type: {
66
+ type: String,
67
+ default: undefined
68
+ },
69
+ // 框的样式
70
+ inputStyle: {
71
+ type: Object,
72
+ default: () => {
73
+ }
74
+ },
75
+ // 下拉框的样式
76
+ dropdownStyle: {
77
+ type: Object,
78
+ default: () => {
79
+ return {
80
+ width: '35rem',
81
+ padding: '1%'
82
+ }
83
+ }
84
+ },
85
+ // 标签的样式
86
+ tagStyle: {
87
+ type: Object,
88
+ default: () => {
89
+ return {
90
+ fontSize: '0.88rem',
91
+ width: '23%',
92
+ textAlign: 'left',
93
+ margin: '0.5%',
94
+ cursor: 'pointer'
95
+ }
96
+ }
97
+ },
98
+ // 用于v-model 绑定
99
+ value: {
100
+ type: String,
101
+ default: undefined
102
+ },
103
+ // 用于v-model 绑定 code :最后一级的code address: 所有级拼接的地址
104
+ valueType: {
105
+ type: String,
106
+ default: 'address'
107
+ }
108
+ }
109
+ ```
@@ -1,3 +1,3 @@
1
- import PersonSetting from './PersonSetting'
2
-
3
- export default PersonSetting
1
+ import PersonSetting from './PersonSetting'
2
+
3
+ export default PersonSetting
@@ -1,3 +1,3 @@
1
- import Upload from './Upload'
2
-
3
- export default Upload
1
+ import Upload from './Upload'
2
+
3
+ export default Upload
@@ -8,21 +8,30 @@
8
8
  </a-select>
9
9
  </a-col>
10
10
  <a-col>
11
- 数值列:
11
+ 汇总数值列:
12
12
  <a-select v-model="selectedValues" mode="multiple" style="width: 200px" @change="updateCharts">
13
13
  <a-select-option v-for="option in valueOptions" :key="option" :value="option">{{ option }}</a-select-option>
14
14
  </a-select>
15
15
  </a-col>
16
+ <a-col>
17
+ 对比项:
18
+ <a-select v-model="selectedProjectColumn" style="width: 200px" @change="updateCharts">
19
+ <a-select-option v-for="project in projectOptions" :key="project" :value="project">{{ project }}</a-select-option>
20
+ </a-select>
21
+ </a-col>
22
+
16
23
  </a-row>
17
24
  <a-divider/>
18
25
  <a-row align="middle" justify="space-around" :gutter="24">
19
- <a-col :span="8">
20
- <div ref="pieChart" class="chart-content"></div>
21
- </a-col>
22
- <a-col :span="8">
26
+ <a-col :span="24">
23
27
  <div ref="columnChart" class="chart-content"></div>
24
28
  </a-col>
25
- <a-col :span="8">
29
+ </a-row>
30
+ <a-row align="middle" justify="space-around" :gutter="24">
31
+ <a-col :span="12">
32
+ <div ref="pieChart" class="chart-content"></div>
33
+ </a-col>
34
+ <a-col :span="12">
26
35
  <div id="lineChart" ref="lineChart" class="chart-content"></div>
27
36
  </a-col>
28
37
  </a-row>
@@ -38,7 +47,10 @@ export default {
38
47
  selectedGroup: null,
39
48
  groupOptions: [],
40
49
  valueOptions: [],
50
+ projectOptions: [],
41
51
  selectedValues: [], // 更新为数组,支持多选
52
+ selectedProjects: [],
53
+ selectedProjectColumn: undefined,
42
54
  pieChart: null,
43
55
  columnChart: null,
44
56
  lineChart: null,
@@ -54,9 +66,6 @@ export default {
54
66
  containLabel: true
55
67
  },
56
68
  legend: {},
57
- color: ['#5DB1FF', '#59D4D4', '#FFD700', '#FF7F50', '#87CEFA',
58
- '#32CD32', '#DA70D6', '#6495ED', '#DC143C', '#00FFFF',
59
- '#00008B', '#008B8B', '#B8860B', '#A9A9A9']
60
69
  }
61
70
  }
62
71
  },
@@ -80,7 +89,11 @@ export default {
80
89
  methods: {
81
90
  initData () {
82
91
  this.initializeOptions()
83
- this.selectedGroup = this.groupOptions[0]
92
+ if (this.groupOptions.includes('year')) {
93
+ this.selectedGroup = 'year'
94
+ } else {
95
+ this.selectedGroup = this.groupOptions[0]
96
+ }
84
97
  if (this.valueOptions.length > 0) {
85
98
  this.selectedValues = [this.valueOptions[0]] // 默认选择第一个数值列
86
99
  }
@@ -89,12 +102,13 @@ export default {
89
102
  initializeOptions () {
90
103
  if (this.rawData.length > 0) {
91
104
  const row = this.rawData[0]
92
- this.groupOptions = Object.keys(row).filter(key => typeof row[key] === 'string' ||
105
+ const columns = Object.keys(row)
106
+ this.groupOptions = columns.filter(key => typeof row[key] === 'string' ||
93
107
  this.isYearArray(this.rawData, key))
94
- this.valueOptions = Object.keys(row).filter(key => {
108
+ this.valueOptions = columns.filter(key => {
95
109
  return !isNaN(parseFloat(row[key])) && isFinite(row[key]) && !this.isYear(row[key])
96
110
  })
97
- console.warn(this.valueOptions)
111
+ this.projectOptions = columns.filter(key => typeof row[key] === 'string')
98
112
  }
99
113
  },
100
114
  isYearArray (arr, key) {
@@ -123,7 +137,6 @@ export default {
123
137
  },
124
138
  renderPieChart () {
125
139
  const transformedData = this.transformDataForChart('pie')
126
- console.log(transformedData)
127
140
  const options = {
128
141
  series: [
129
142
  {
@@ -149,16 +162,41 @@ export default {
149
162
  )
150
163
  )
151
164
  },
165
+ getProjectList () {
166
+ let selectedProjects
167
+ if (this.selectedProjectColumn) {
168
+ selectedProjects = [...new Set(this.rawData.map(item => item[this.selectedProjectColumn]))]
169
+ } else {
170
+ selectedProjects = []
171
+ }
172
+ return selectedProjects
173
+ },
152
174
  renderColumnChart () {
175
+ const selectedProjects = this.getProjectList()
176
+ let items
177
+ if (selectedProjects.length > 0) {
178
+ items = selectedProjects
179
+ } else {
180
+ items = this.selectedValues
181
+ }
153
182
  const transformedData = this.transformDataForChart()
154
183
  const options = {
184
+ dataZoom: [
185
+ {
186
+ type: 'inside'
187
+ },
188
+ {
189
+ type: 'slider'
190
+ }
191
+ ],
192
+ legend: false,
155
193
  dataset: {
156
- dimensions: ['category', ...this.selectedValues],
194
+ dimensions: ['category', ...items],
157
195
  source: transformedData
158
196
  },
159
197
  xAxis: { type: 'category' },
160
198
  yAxis: {},
161
- series: this.selectedValues.map(item => {
199
+ series: items.map(item => {
162
200
  return { type: 'bar' }
163
201
  })
164
202
  }
@@ -174,7 +212,6 @@ export default {
174
212
  },
175
213
  renderLineChart () {
176
214
  const transformedData = this.transformDataForChart('line')
177
- console.log(transformedData)
178
215
  const options = {
179
216
  tooltip: {
180
217
  trigger: 'axis'
@@ -244,17 +281,41 @@ export default {
244
281
  data: this.rawData.map(item => item[valueKey]),
245
282
  }))
246
283
  } else {
247
- // 柱状图数据转换逻辑:为每个分组条件和选中的数值列创建条目
284
+ const selectedProjects = this.getProjectList()
248
285
  const transformedData = []
249
- this.rawData.forEach(item => {
250
- const tempData = {
251
- category: item[this.selectedGroup]
252
- }
253
- this.selectedValues.forEach(valueKey => {
254
- tempData[valueKey] = item[valueKey]
286
+ if (selectedProjects.length > 0 && this.selectedValues.length > 0) {
287
+ // 柱状图的数据转换逻辑
288
+ const categoryMap = {}
289
+ this.rawData.forEach(item => {
290
+ const category = item[this.selectedGroup]
291
+ const key = item[this.selectedProjectColumn]
292
+ if (item[this.selectedValues[0]] > 0) {
293
+ if (!categoryMap[category]) {
294
+ categoryMap[category] = {}
295
+ }
296
+ categoryMap[category][key] = item[this.selectedValues[0]]
297
+ }
255
298
  })
256
- transformedData.push(tempData)
257
- })
299
+
300
+ Object.keys(categoryMap).forEach(category => {
301
+ const tempData = { category }
302
+ Object.keys(categoryMap[category]).forEach(key => {
303
+ tempData[key] = categoryMap[category][key]
304
+ })
305
+ transformedData.push(tempData)
306
+ })
307
+ } else {
308
+ // 柱状图数据转换逻辑:为每个分组条件和选中的数值列创建条目
309
+ this.rawData.forEach(item => {
310
+ const tempData = {
311
+ category: item[this.selectedGroup]
312
+ }
313
+ this.selectedValues.forEach(valueKey => {
314
+ tempData[valueKey] = item[valueKey]
315
+ })
316
+ transformedData.push(tempData)
317
+ })
318
+ }
258
319
  return transformedData
259
320
  }
260
321
  },
@@ -264,7 +325,7 @@ export default {
264
325
  <style lang="less" scoped>
265
326
  .chart-card {
266
327
  .chart-content {
267
- height: 250px;
328
+ height: 400px;
268
329
  }
269
330
  }
270
331
  </style>
@@ -1,51 +1,51 @@
1
- <template>
2
- <div>
3
- <a-list v-show="!loading" size="small" :data-source="data">
4
- <a-list-item slot="renderItem" slot-scope="item">
5
- <div>
6
- <p><a @click="$emit('openFavorites', item.uuid)">{{ item.question }} </a></p>
7
- <p>{{ item.date }}</p>
8
- </div>
9
- <a class="delete_item">
10
- <a-icon type="close" @click="$emit('saveToFavorites', item.uuid)"/>
11
- </a>
12
- </a-list-item>
13
- </a-list>
14
- </div>
15
- </template>
16
-
17
- <script>
18
- import { indexedDB } from '@vue2-client/utils/indexedDB'
19
-
20
- export default {
21
- name: 'FavoriteList',
22
- data () {
23
- return {
24
- data: [],
25
- loading: false
26
- }
27
- },
28
- mounted () {
29
- this.loadData()
30
- },
31
- methods: {
32
- loadData () {
33
- console.warn(123)
34
- indexedDB.getAll((data) => {
35
- const realData = data.filter(item => item.data && item.data.uuid)
36
- .map(item => item.data)
37
- this.data = realData
38
- })
39
- }
40
- }
41
- }
42
- </script>
43
- <style lang="less" scoped>
44
- .delete_item {
45
- margin-left: 8px;
46
- color: #333;
47
- }
48
- p {
49
- margin: 0
50
- }
51
- </style>
1
+ <template>
2
+ <div>
3
+ <a-list v-show="!loading" size="small" :data-source="data">
4
+ <a-list-item slot="renderItem" slot-scope="item">
5
+ <div>
6
+ <p><a @click="$emit('openFavorites', item.uuid)">{{ item.question }} </a></p>
7
+ <p>{{ item.date }}</p>
8
+ </div>
9
+ <a class="delete_item">
10
+ <a-icon type="close" @click="$emit('saveToFavorites', item.uuid)"/>
11
+ </a>
12
+ </a-list-item>
13
+ </a-list>
14
+ </div>
15
+ </template>
16
+
17
+ <script>
18
+ import { indexedDB } from '@vue2-client/utils/indexedDB'
19
+
20
+ export default {
21
+ name: 'FavoriteList',
22
+ data () {
23
+ return {
24
+ data: [],
25
+ loading: false
26
+ }
27
+ },
28
+ mounted () {
29
+ this.loadData()
30
+ },
31
+ methods: {
32
+ loadData () {
33
+ console.warn(123)
34
+ indexedDB.getAll((data) => {
35
+ const realData = data.filter(item => item.data && item.data.uuid)
36
+ .map(item => item.data)
37
+ this.data = realData
38
+ })
39
+ }
40
+ }
41
+ }
42
+ </script>
43
+ <style lang="less" scoped>
44
+ .delete_item {
45
+ margin-left: 8px;
46
+ color: #333;
47
+ }
48
+ p {
49
+ margin: 0
50
+ }
51
+ </style>
@@ -5,19 +5,19 @@
5
5
  <a-list item-layout="horizontal" :data-source="questions">
6
6
  <a-list-item
7
7
  slot="renderItem"
8
- :class="item.sql ? (item.uuid === currentuuid ? 'question-history-active' : 'question-history-inactive') : (item.uuid === currentuuid ? 'question-history-active-bug' : 'question-history-inactive-bug')"
9
- slot-scope="item,index"
10
- @click="handleOpenFavorite(item)">
8
+ :class="renderItem.sql ? (renderItem.uuid === currentuuid ? 'question-history-active' : 'question-history-inactive') : (renderItem.uuid === currentuuid ? 'question-history-active-bug' : 'question-history-inactive-bug')"
9
+ slot-scope="renderItem,index"
10
+ @click="handleOpenFavorite(renderItem)">
11
11
  <a-list-item-meta
12
- :title="item.question"
13
- :description="item.date"
12
+ :title="renderItem.question"
13
+ :description="renderItem.date"
14
14
  />
15
15
  <a-space>
16
16
  <a-tooltip title="查看元数据">
17
17
  <a-icon
18
- v-if="item.data"
18
+ v-if="renderItem.data"
19
19
  type="eye"
20
- @click.stop="openMetaDataModal(item)"/>
20
+ @click.stop="openMetaDataModal(renderItem)"/>
21
21
  </a-tooltip>
22
22
  <span>&emsp;</span>
23
23
  <a-tooltip title="删除对话">
@@ -25,20 +25,20 @@
25
25
  type="delete"
26
26
  theme="filled"
27
27
  class="delClass"
28
- @click.stop="delQuestion(item,index)"/>
28
+ @click.stop="delQuestion(renderItem,index)"/>
29
29
  </a-tooltip>
30
30
  <span>&emsp;</span>
31
- <a-tooltip :title="item.isFavorite ? '取消收藏' : '收藏'" v-if="item.sql">
31
+ <a-tooltip :title="renderItem.isFavorite ? '取消收藏' : '收藏'" v-if="renderItem.sql">
32
32
  <a-icon
33
33
  type="star"
34
- :class="item.isFavorite ? 'startActive' : 'startInactive'"
35
- @click.stop="toFavorites(item,index)"
36
- :theme=" item.isFavorite ? 'filled': 'twoTone'"
34
+ :class="renderItem.isFavorite ? 'startActive' : 'startInactive'"
35
+ @click.stop="toFavorites(renderItem,index)"
36
+ :theme=" renderItem.isFavorite ? 'filled': 'twoTone'"
37
37
  two-tone-color="#FFD700"/>
38
38
  </a-tooltip>
39
39
  <a-tooltip title="重新查询" v-else>
40
40
  <a-icon
41
- @click.stop="reTrySearch(item, index)"
41
+ @click.stop="reTrySearch(renderItem, index)"
42
42
  type="sync"
43
43
  class="reSearch"
44
44
  title="重新查询"/>
@@ -51,26 +51,26 @@
51
51
  <a-list item-layout="horizontal" :data-source="favorites">
52
52
  <a-list-item
53
53
  slot="renderItem"
54
- slot-scope="item, index"
55
- :class="item.uuid === currentuuid ? 'question-history-active' : 'question-history-inactive'"
56
- @click="handleOpenFavorite(item)">
54
+ slot-scope="renderItem, index"
55
+ :class="renderItem.uuid === currentuuid ? 'question-history-active' : 'question-history-inactive'"
56
+ @click="handleOpenFavorite(renderItem)">
57
57
  <a-list-item-meta
58
- :title="item.question"
59
- :description="item.date"
58
+ :title="renderItem.question"
59
+ :description="renderItem.date"
60
60
  />
61
61
  <a-space>
62
62
  <a-tooltip title="查看元数据">
63
63
  <a-icon
64
- v-if="item.data"
64
+ v-if="renderItem.data"
65
65
  type="eye"
66
- @click.stop="openMetaDataModal(item)"/>
66
+ @click.stop="openMetaDataModal(renderItem)"/>
67
67
  </a-tooltip>
68
68
  <span>&emsp;</span>
69
69
  <a-icon
70
70
  type="star"
71
- :class="item.isFavorite ? 'startActive' : 'startInactive'"
72
- @click.stop="delFavorites(item,index)"
73
- :theme=" item.isFavorite ? 'filled': 'twoTone'"
71
+ :class="renderItem.isFavorite ? 'startActive' : 'startInactive'"
72
+ @click.stop="delFavorites(renderItem,index)"
73
+ :theme=" renderItem.isFavorite ? 'filled': 'twoTone'"
74
74
  two-tone-color="#FFD700"/>
75
75
  </a-space>
76
76
  </a-list-item>
@@ -108,6 +108,9 @@
108
108
  <a-descriptions-item label="sql">
109
109
  {{ item.sql }}
110
110
  </a-descriptions-item>
111
+ <a-descriptions-item label="oldSql">
112
+ {{ item.oldSql }}
113
+ </a-descriptions-item>
111
114
  <a-descriptions-item label="查询日期">
112
115
  {{ item.date }}
113
116
  </a-descriptions-item>
@@ -120,6 +120,7 @@ export default {
120
120
  }).then(res => {
121
121
  this.loading = false
122
122
  const sql = res.sql ? res.sql.replace(/'/g, "''") : null
123
+ const oldSql = res.old_sql ? res.old_sql.replace(/'/g, "''") : null
123
124
  const questionInfo = {
124
125
  uuid: uuid,
125
126
  question: value,
@@ -129,6 +130,7 @@ export default {
129
130
  relationTable: res.relation_table,
130
131
  similarTable: res.similar_table,
131
132
  sql: sql,
133
+ oldSql: oldSql,
132
134
  date: formatDate('now'),
133
135
  data: res.result,
134
136
  isFavorite: false
@@ -1,18 +1,18 @@
1
- import { post } from '@vue2-client/services/api/restTools'
2
-
3
- const entityApi = {
4
- // 根据ID查询数据
5
- getById: (entityName, id, data = {}, serviceName = process.env.VUE_APP_SYSTEM_NAME) => {
6
- return post(`/api/${serviceName}/entity/query/${entityName}/${id}`, data)
7
- },
8
- // 根据ID集合查询所有数据
9
- findAllByIds: (entityName, data, serviceName = process.env.VUE_APP_SYSTEM_NAME) => {
10
- return post(`/api/${serviceName}/entity/query/${entityName}`, data)
11
- },
12
- // 查询实体的总数量
13
- getCount: (entityName, serviceName = process.env.VUE_APP_SYSTEM_NAME) => {
14
- return post(`/api/${serviceName}/entity/queryCount/${entityName}`, {})
15
- }
16
- }
17
-
18
- export { entityApi }
1
+ import { post } from '@vue2-client/services/api/restTools'
2
+
3
+ const entityApi = {
4
+ // 根据ID查询数据
5
+ getById: (entityName, id, data = {}, serviceName = process.env.VUE_APP_SYSTEM_NAME) => {
6
+ return post(`/api/${serviceName}/entity/query/${entityName}/${id}`, data)
7
+ },
8
+ // 根据ID集合查询所有数据
9
+ findAllByIds: (entityName, data, serviceName = process.env.VUE_APP_SYSTEM_NAME) => {
10
+ return post(`/api/${serviceName}/entity/query/${entityName}`, data)
11
+ },
12
+ // 查询实体的总数量
13
+ getCount: (entityName, serviceName = process.env.VUE_APP_SYSTEM_NAME) => {
14
+ return post(`/api/${serviceName}/entity/queryCount/${entityName}`, {})
15
+ }
16
+ }
17
+
18
+ export { entityApi }
@@ -1,31 +1,31 @@
1
- /**
2
- * @description: createWaterMark.js 加水印功能
3
- */
4
- let waterMarkDOM
5
-
6
- const clearWaterMark = () => {
7
- if (waterMarkDOM) waterMarkDOM.remove()
8
- }
9
- /**
10
- * @description: 创建水印
11
- * @param waterMarkName 水印内容
12
- */
13
- export default function createWaterMark (waterMarkName) {
14
- clearWaterMark()
15
- if (!waterMarkName) {
16
- return
17
- }
18
- const width = window.parseInt(document.body.clientWidth)
19
- const canvasWidth = width / window.parseInt(width / 320)
20
- const fontFamily = window.getComputedStyle(document.body)['font-family']
21
- const fragment = document.createDocumentFragment()
22
- waterMarkDOM = document.createElement('div')
23
- waterMarkDOM.className = 'water-mark-wrap'
24
- let spanStr = ''
25
- for (let i = 0; i < 100; i++) {
26
- spanStr += `<span class="water-word" style=width:${canvasWidth}px;height:200px;font: ${fontFamily}>${waterMarkName}</span>`
27
- }
28
- waterMarkDOM.innerHTML = spanStr
29
- fragment.appendChild(waterMarkDOM)
30
- document.body.appendChild(fragment)
31
- }
1
+ /**
2
+ * @description: createWaterMark.js 加水印功能
3
+ */
4
+ let waterMarkDOM
5
+
6
+ const clearWaterMark = () => {
7
+ if (waterMarkDOM) waterMarkDOM.remove()
8
+ }
9
+ /**
10
+ * @description: 创建水印
11
+ * @param waterMarkName 水印内容
12
+ */
13
+ export default function createWaterMark (waterMarkName) {
14
+ clearWaterMark()
15
+ if (!waterMarkName) {
16
+ return
17
+ }
18
+ const width = window.parseInt(document.body.clientWidth)
19
+ const canvasWidth = width / window.parseInt(width / 320)
20
+ const fontFamily = window.getComputedStyle(document.body)['font-family']
21
+ const fragment = document.createDocumentFragment()
22
+ waterMarkDOM = document.createElement('div')
23
+ waterMarkDOM.className = 'water-mark-wrap'
24
+ let spanStr = ''
25
+ for (let i = 0; i < 100; i++) {
26
+ spanStr += `<span class="water-word" style=width:${canvasWidth}px;height:200px;font: ${fontFamily}>${waterMarkName}</span>`
27
+ }
28
+ waterMarkDOM.innerHTML = spanStr
29
+ fragment.appendChild(waterMarkDOM)
30
+ document.body.appendChild(fragment)
31
+ }