Răsfoiți Sursa

feat:conflict

ananzhusen 1 an în urmă
părinte
comite
746519d73b
2 a modificat fișierele cu 38 adăugiri și 18 ștergeri
  1. 20 1
      src/services/common.ts
  2. 18 17
      src/views/components/Header.vue

+ 20 - 1
src/services/common.ts

@@ -400,6 +400,13 @@ export const _save = async (
   return true;
   // }, 2000);
 };
+export function queryURLParams(value?: string) {
+  let url = value || window.location.href.split('?')[1];
+  const urlSearchParams = new URLSearchParams(url);
+  const params = Object.fromEntries(urlSearchParams.entries());
+  return params;
+}
+
 // TODO 保存图纸
 export const save = async (
   type: SaveType = SaveType.Save,
@@ -610,6 +617,17 @@ export const save = async (
   if (!data.folder) {
     data.folder = ''; // folder.name;
   }
+  let childIds = [];
+  data.pens.forEach((pen)=>{
+    if(pen.name === 'iframe'){
+      if(pen.iframe.indexOf(`view${rootDomain}`) !== -1){
+        let params = queryURLParams(pen.iframe.split('?')[1])
+        childIds.push(params.id);
+      }
+    }
+  });
+  
+  // data.childIds = childIds;
   const body = {
     data,
     image:data.image,
@@ -617,7 +635,8 @@ export const save = async (
     folder:data.folder,
     // shared:true,
     userFlag,
-    case:data.case
+    case:data.case,
+    childIds
   }
   delete data.name;
   delete data.image;

+ 18 - 17
src/views/components/Header.vue

@@ -524,7 +524,8 @@ import {
   useDot,
   delAttrs,
   // useAssets,
-  // autoSaveAS
+  autoSaveAS,
+  queryURLParams
 } from '@/services/common';
 import { useEnterprise } from '@/services/enterprise';
 import {
@@ -1107,12 +1108,12 @@ const doDownloadZip = async ()=>{
 //   }
 // }
 
-function queryURLParams(value?: string) {
-  let url = value || window.location.href.split('?')[1];
-  const urlSearchParams = new URLSearchParams(url);
-  const params = Object.fromEntries(urlSearchParams.entries());
-  return params;
-}
+// function queryURLParams(value?: string) {
+//   let url = value || window.location.href.split('?')[1];
+//   const urlSearchParams = new URLSearchParams(url);
+//   const params = Object.fromEntries(urlSearchParams.entries());
+//   return params;
+// }
 
 const downloadHtml = async () => {
   if (!(user && user.id)) {
@@ -1146,7 +1147,7 @@ const preGetPayList = async () => {
       (pen.iframe.indexOf(`2d${rootDomain}`) !== -1 ||
         pen.iframe.indexOf('/2d') !== -1 || pen.iframe.indexOf('data=2d') !== -1 ||
         pen.iframe.indexOf(`v${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/view/v') !== -1 ||pen.iframe.indexOf('data=v') !== -1 ||
+        pen.iframe.indexOf(`view${rootDomain}/v`) !== -1 ||pen.iframe.indexOf('data=v') !== -1 ||
         pen.iframe.indexOf('/preview') !== -1)
   );
   if (pen_pay && pen_pay.length) {
@@ -1177,19 +1178,19 @@ const showPayListDialog = async () => {
     (pen) =>
       pen.name === 'iframe' &&
       (pen.iframe.indexOf(`3d${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/3d') !== -1)
+        pen.iframe.indexOf(`view${rootDomain}/3d`) !== -1)
   );
   const pen_2d = meta2d.store.data.pens.filter(
     (pen) =>
       pen.name === 'iframe' &&
       (pen.iframe.indexOf(`2d${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/2d') !== -1)
+        pen.iframe.indexOf(`view${rootDomain}/2d`) !== -1)
   );
   const pen_v = meta2d.store.data.pens.filter(
     (pen) =>
       pen.name === 'iframe' &&
       (pen.iframe.indexOf(`v${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/view/v') !== -1||pen.iframe.indexOf('data=v') !== -1)
+        pen.iframe.indexOf(`view${rootDomain}/v`) !== -1||pen.iframe.indexOf('data=v') !== -1)
   );
   let price = 0;
   data.payDiagram.checked = true;
@@ -1336,7 +1337,7 @@ const preDownload =() => {
     (pen) =>
       pen.name === 'iframe' &&
       (pen.iframe.indexOf(`3d${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/3d') !== -1)
+        pen.iframe.indexOf(`view${rootDomain}/3d`) !== -1)
   );
   if (pen_3d && pen_3d.length) {
     //存在3d场景
@@ -1380,7 +1381,7 @@ const preDownload =() => {
     (pen) =>
       pen.name === 'iframe' &&
       (pen.iframe.indexOf(`2d${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/2d') !== -1)
+        pen.iframe.indexOf(`view${rootDomain}/2d`) !== -1)
   );
   if (pen_2d && pen_2d.length) {
     //存在3d场景
@@ -1424,7 +1425,7 @@ const preDownload =() => {
     (pen) =>
       pen.name === 'iframe' &&
       (pen.iframe.indexOf(`v${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/view/v') !== -1||pen.iframe.indexOf('data=v') !== -1)
+        pen.iframe.indexOf(`view${rootDomain}/v`) !== -1||pen.iframe.indexOf('data=v') !== -1)
   );
 
   if (pen_v && pen_v.length) {
@@ -1473,7 +1474,7 @@ const preFrameDownload = async () => {
     (pen) =>
       pen.name === 'iframe' &&
       (pen.iframe.indexOf(`3d${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/3d') !== -1)
+        pen.iframe.indexOf(`view${rootDomain}/3d`) !== -1)
   );
   let name_3d = (downloadType===Frame.vue3?'toVue3':downloadType===Frame.vue2?'toVue2':'toReact');
   let flag_3d = false; //标记是否存在3d场景
@@ -1519,7 +1520,7 @@ const preFrameDownload = async () => {
     (pen) =>
       pen.name === 'iframe' &&
       (pen.iframe.indexOf(`2d${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/2d') !== -1)
+        pen.iframe.indexOf(`view${rootDomain}/2d`) !== -1)
   );
   let name_2d = (downloadType===Frame.vue3?'downloadVue3':downloadType===Frame.vue2?'downloadVue2':'downloadReact');
 
@@ -1565,7 +1566,7 @@ const preFrameDownload = async () => {
     (pen) =>
       pen.name === 'iframe' &&
       (pen.iframe.indexOf(`v${rootDomain}`) !== -1 ||
-        pen.iframe.indexOf('/view/v') !== -1||pen.iframe.indexOf('data=v') !== -1||pen.iframe.indexOf('/preview') !== -1)
+        pen.iframe.indexOf(`view${rootDomain}/v`) !== -1||pen.iframe.indexOf('data=v') !== -1||pen.iframe.indexOf('/preview') !== -1)
   );
   if (pen_v && pen_v.length) {
     //存在大屏场景