bianjiang 1 ano atrás
pai
commit
68efdf20be

+ 2 - 2
package.json

@@ -17,7 +17,7 @@
   "dependencies": {
     "@linaria/core": "^4.1.1",
     "@queenjs-modules/auth": "^0.0.18",
-    "@queenjs-modules/queditor": "^0.0.9",
+    "@queenjs-modules/queditor": "^0.0.16",
     "@queenjs-modules/queentree": "^0.0.8",
     "@queenjs-modules/queentree-explorer": "^0.0.2",
     "@queenjs/components": "0.0.23",
@@ -48,7 +48,7 @@
     "nats.ws": "^1.12.0",
     "proto.gl": "^1.0.0",
     "qrcode": "^1.5.1",
-    "queen3d": "^0.0.91",
+    "queen3d": "^0.0.92",
     "queenjs": "1.0.0-beta.77",
     "queentree": "^0.1.86-nocheck",
     "rimraf": "^3.0.2",

+ 6 - 3
src/modules/list/actions/canvas.ts

@@ -53,9 +53,13 @@ export default ListModule.action({
         item.offsetY = h + canvas.padding;
         halfOffset += item.offsetY;
       });
-
+      let repeatArr: any = [];
+      const times = Math.ceil(canvas.height / halfOffset);
+      for (let i = 0; i < times; i++) {
+        repeatArr = [...repeatArr, ...arr];
+      }
       const linesItem = {
-        items: [...arr, ...arr],
+        items: repeatArr,
         offset: 0,
         halfOffset: halfOffset,
         dragging: false,
@@ -151,5 +155,4 @@ export default ListModule.action({
     };
     loop();
   },
-  // loopRunning() {},
 });

+ 21 - 1
src/modules/list/actions/list.ts

@@ -1,15 +1,19 @@
 import { useCtx } from "@/comm/ctx";
 import ListModule from "..";
 import { queenApi } from "queenjs";
+import { cloneDeep } from "lodash";
 export default ListModule.action({
   async getAssetList() {
+    if (this.store.list.length > 0) {
+      return;
+    }
     const { deviceCtrl } = useCtx();
     const appDataDir = deviceCtrl.appDataDir;
     const currentCategory = localStorage.getItem("category") || "default";
+
     const assetsJson = await deviceCtrl.ReadFileText(
       `${appDataDir}/screen/assets_${currentCategory}.json`
     );
-
     if (assetsJson.error) {
       const res = await deviceCtrl.WriteFileText(
         `${appDataDir}/screen/assets_${currentCategory}.json`,
@@ -30,4 +34,20 @@ export default ListModule.action({
     }
     return res.result;
   },
+  async delAsset(record: any) {
+    const { deviceCtrl } = useCtx();
+    const list = cloneDeep(this.store.list);
+    list.map((e: any, index: number) => {
+      if (e._id == record._id) {
+        list.splice(index, 1);
+      }
+    });
+    this.store.list = list;
+    const appDataDir = deviceCtrl.appDataDir;
+    const currentCategory = localStorage.getItem("category") || "default";
+    const res = await deviceCtrl.WriteFileText(
+      `${appDataDir}/screen/assets_${currentCategory}.json`,
+      JSON.stringify(list)
+    );
+  },
 });

+ 29 - 0
src/pages/website/routes/backend/List.tsx

@@ -6,6 +6,7 @@ import { Button, Select, Space, Table } from "ant-design-vue";
 
 import { defineComponent, reactive } from "vue";
 import CategoryModal from "./categoryModal";
+import { queenApi } from "queenjs";
 
 export default defineComponent({
   setup() {
@@ -21,6 +22,14 @@ export default defineComponent({
         },
       ],
     });
+    const del = async (item: any) => {
+      await queenApi.showConfirm({
+        type: "danger",
+        content: `确认删除${item?.name || ""}?`,
+      });
+      actions.delAsset(item);
+    };
+
     const columns = [
       {
         title: "封面图",
@@ -41,6 +50,26 @@ export default defineComponent({
         dataIndex: "name",
         key: "name",
       },
+      {
+        title: "操作",
+        key: "action",
+        dataIndex: "action",
+        customRender: ({ record }: any) => {
+          return (
+            <Space>
+              <Button
+                type="link"
+                danger
+                onClick={() => {
+                  del(record);
+                }}
+              >
+                删除
+              </Button>
+            </Space>
+          );
+        },
+      },
     ];
     actions.getAssetList();
     const initShowCategory = async () => {

+ 1 - 0
src/pages/website/routes/home/index.tsx

@@ -25,6 +25,7 @@ export default defineComponent({
         }
         actions.startListRunning(canvasRef.value);
       });
+
       actions.getAssetList();
     });
 

+ 8 - 8
yarn.lock

@@ -1224,10 +1224,10 @@
   resolved "http://124.70.149.18:4873/@queenjs-modules%2fauth/-/auth-0.0.18.tgz"
   integrity sha512-zQGPz1GUR2QE3qCkfpdQ3vDkNNuFRhvrD+ErCynnlDP/QQNgvOoHizPEO5OE4VzdBu+/psGWymQs+9zONGuO3A==
 
-"@queenjs-modules/queditor@^0.0.9":
-  version "0.0.9"
-  resolved "http://124.70.149.18:4873/@queenjs-modules%2fqueditor/-/queditor-0.0.9.tgz#2c4c0b8d68da48e3e30dc92b0acb5f1f8d8761ce"
-  integrity sha512-iK9PykYQO0gZOcz851e4NNBUAg/DlmhuQrQgRkmlK287oD7u6r8pD/ONOD7Anyy04FP6BTe9DOhGMW55imdlVw==
+"@queenjs-modules/queditor@^0.0.16":
+  version "0.0.16"
+  resolved "http://124.70.149.18:4873/@queenjs-modules%2fqueditor/-/queditor-0.0.16.tgz#a6c5345b9ce7a70a63ddc3720c77a7852dd7d973"
+  integrity sha512-vK36KnM3g9o1YxLyEQgCl2k0gjA8m2Q1sikETVvbdG9Y+73uoItrPTq+dPWhqMC4QfVYtZyi2SFaKa7p2+BROg==
 
 "@queenjs-modules/queentree-explorer@^0.0.2":
   version "0.0.2"
@@ -6372,10 +6372,10 @@ qs@^6.4.0:
   dependencies:
     side-channel "^1.0.4"
 
-queen3d@^0.0.91:
-  version "0.0.91"
-  resolved "http://124.70.149.18:4873/queen3d/-/queen3d-0.0.91.tgz#faad590772903fc7320a2c97386ebc7e2007b6de"
-  integrity sha512-W5BHximnu3CwS+xk5JOqOX8RqZFsja/KlE6RIb/JMF/Mi9H/b10Xh7M2SHedd1JWHdyXm/Wsx1YcUmUpzRhVnQ==
+queen3d@^0.0.92:
+  version "0.0.92"
+  resolved "http://124.70.149.18:4873/queen3d/-/queen3d-0.0.92.tgz#f541b0624786e7ae775c972a04baec915ba0cac1"
+  integrity sha512-iXnAA84zT0taaKi/e2h9bzFISAh7ZKyJ9O7+ttL0OQvY9lGFBHcgaDqycYFziID2W+hnJJcFh6fRhvMuW6Tp6w==
 
 queenjs@1.0.0-beta.77:
   version "1.0.0-beta.77"