Parcourir la source

人员档案模块。场所模块。牌位模块图片上传功能更新

guoqing il y a 1 an
Parent
commit
526e11ac03

+ 32 - 29
src/views/placeManage/placePerson/placePersonAdd.vue

@@ -51,16 +51,10 @@
         />
       </van-cell-group>
       <van-cell-group>
-        <van-field name="uploader" label-align="top" label="工作照片:">
+        <van-field name="uploader" label="工作照片:" >
           <template #input>
-            <van-uploader
-              v-model="fileList"
-              :after-read="afterRead1"
-              :max-count="1"
-              capture="camera"
-              accept=""
-              :before-delete="fjdelete"
-            >
+            <van-uploader readonly v-model="fileList" :max-count="1" accept="" :preview-full-image="false"
+              :before-delete="deleteRead" @click-upload="chooseImg">
             </van-uploader>
           </template>
         </van-field>
@@ -542,11 +536,12 @@
 </template>
 
 <script>
-import { onBeforeUpdate, onMounted, ref, getCurrentInstance } from "vue";
+import { onBeforeUpdate, onMounted, ref } from "vue";
 import placePerson from "@/api/placePerson/placePerson";
 import PlaceRegister from "@/api/placeRegister/placeRegister";
 import { useRouter } from "vue-router";
 import tools from "@/api/sys/tools";
+import $base from "@/utils/config";
 export default {
   setup() {
     const onClickLeft = () => {
@@ -852,28 +847,33 @@ export default {
     //图片上传
     let fileList = ref([]);
     let fileImg = ref([]);
-    let workpic = ref("");
-    const afterRead1 = (file) => {
-      new tools().uploadFile(file, `logo`).then(({ data }) => {
+    const chooseImg = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url: $base + `/sys/file/webupload/upload?uploadPath=logo`,
+        headers: { 'Content-Type': 'multipart/form-data', "token": window.localStorage.getItem('MZ_TOKEN') },
+      }).then(res => {
+        let data = res[0].data
         data.name = decodeURIComponent(
-          data.url.substring(data.url.lastIndexOf("/") + 1)
+          data.id.substring(data.url.lastIndexOf("/") + 1)
         );
-        workpic.value += "" + data.url;
-        const json = Object.assign(inputForm.value, {
-          workPicture: workpic.value,
-        });
-        inputForm.value = json;
+        data.url = $base + data.url;
         fileImg.value.push(data);
-      });
-    };
-    const fjdelete = (file) => {
+        fileList.value.push(data)
+      })
+    }
+    // 删除文件
+    const deleteRead = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList.value.length; index++) {
-        if (file.file == fileList.value[index].file) {
-          let delurl = fileImg.value[index].url;
-          new tools().uploadFiledelete("", delurl).then(({ data }) => {});
-          fileImg.value.splice(index, 1);
+        if (file.id == fileList.value[index].id) {
           fileList.value.splice(index, 1);
+          if (fileImg.value[index]) {
+            let delurl = fileImg.value[index].url;
+            new tools().uploadFiledelete("", delurl).then(({ data }) => { });
+            fileImg.value.splice(index, 1);
+          }
         }
       }
     };
@@ -1083,6 +1083,10 @@ export default {
     let router = useRouter();
     //数据提交
     const submit = () => {
+      //保存前附件处理
+      inputForm.value.workPicture = fileImg.value
+        .map((option) => option.id)
+        .join("|");
       inputForm.value.userManagenmetDetailsDTOList.forEach((item) => {
         if (item.chineseName === "教职身份") {
           const teachType = {
@@ -1216,9 +1220,8 @@ export default {
       getDate,
       //图片上传
       fileList,
-      afterRead1,
-      //图片删除
-      fjdelete,
+      chooseImg,
+      deleteRead,
       // 返回
       onClickLeft,
       // 详细地址定位

+ 57 - 24
src/views/placeManage/placePerson/placePersoninfo.vue

@@ -71,12 +71,13 @@
             <van-field name="uploader" label-align="top" label="工作照片:">
               <template #input>
                 <van-uploader
+                  readonly
                   v-model="fileList"
-                  :after-read="afterRead1"
                   :max-count="1"
-                  capture="camera"
                   accept=""
-                  :before-delete="fjdelete"
+                  :preview-full-image="false"
+                  :before-delete="deleteRead"
+                  @click-upload="chooseImg"
                 >
                 </van-uploader>
               </template>
@@ -569,7 +570,6 @@ import placePerson from "@/api/placePerson/placePerson";
 import PlaceRegister from "@/api/placeRegister/placeRegister";
 import UserManage from "@/api/user/UserManage";
 import tools from "@/api/sys/tools";
-import placeRegister from "@/api/placeRegister/placeRegister";
 export default {
   setup() {
     const data = ref({});
@@ -617,6 +617,25 @@ export default {
           });
         }
         activitytext.value = getActivity(data.value.bkcheck);
+        data.value.workPicture.split("|").forEach((item) => {
+          if (item.trim().length > 0) {
+            fileImg.value.push({
+              name: decodeURIComponent(
+                item.substring(item.lastIndexOf("/") + 1)
+              ),
+              url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
+            });
+            fileList.value.push({
+              name: decodeURIComponent(
+                item.substring(item.lastIndexOf("/") + 1)
+              ),
+
+              url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
+            });
+          }
+        });
         data.value.userManagenmetDetailsDTOList.forEach((item) => {
           if (item.chineseName === "教职身份") {
             const teachType = {
@@ -851,30 +870,36 @@ export default {
     //图片上传
     let fileList = ref([]);
     let fileImg = ref([]);
-    let workpic = ref("");
-    const afterRead1 = (file) => {
-      new tools()
-        .uploadFile(file, `sys/file/webupload/upload`)
-        .then(({ data }) => {
-          data.name = decodeURIComponent(
-            data.url.substring(data.url.lastIndexOf("/") + 1)
-          );
-          workpic.value += "" + data.url;
-          const json = Object.assign(data.value, {
-            workPicture: workpic.value,
-          });
-          data.value = json;
-          fileImg.value.push(data);
-        });
+    const chooseImg = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url: $base + `/sys/file/webupload/upload?uploadPath=logo`,
+        headers: {
+          "Content-Type": "multipart/form-data",
+          token: window.localStorage.getItem("MZ_TOKEN"),
+        },
+      }).then((res) => {
+        let data = res[0].data;
+        data.name = decodeURIComponent(
+          data.id.substring(data.url.lastIndexOf("/") + 1)
+        );
+        data.url = $base + data.url;
+        fileImg.value.push(data);
+        fileList.value.push(data);
+      });
     };
-    const fjdelete = (file) => {
+    // 删除文件
+    const deleteRead = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList.value.length; index++) {
-        if (file.file == fileList.value[index].file) {
-          let delurl = fileImg.value[index].url;
-          new tools().uploadFiledelete("", delurl).then(({ data }) => {});
-          fileImg.value.splice(index, 1);
+        if (file.id == fileList.value[index].id) {
           fileList.value.splice(index, 1);
+          if (fileImg.value[index]) {
+            let delurl = fileImg.value[index].url;
+            new tools().uploadFiledelete("", delurl).then(({ data }) => {});
+            fileImg.value.splice(index, 1);
+          }
         }
       }
     };
@@ -1093,6 +1118,10 @@ export default {
     };
     //数据提交
     const submit = () => {
+      //保存前附件处理
+      data.value.workPicture = fileImg.value
+        .map((option) => option.id)
+        .join("|");
       data.value.userManagenmetDetailsDTOList.forEach((item) => {
         if (item.chineseName === "教职身份") {
           const teachType = {
@@ -1228,6 +1257,10 @@ export default {
       //扩展信息时间
       hs_Date,
       getDate,
+      //图片上传
+      fileList,
+      chooseImg,
+      deleteRead,
       submit,
     };
   },

+ 138 - 76
src/views/placeManage/placeRegister/placeRegister.vue

@@ -21,12 +21,13 @@
             >
               <template #input>
                 <van-uploader
+                  readonly
                   v-model="fileList"
-                  :after-read="afterRead1"
-                  :max-count="6"
-                  capture="camera"
+                  :max-count="5"
                   accept=""
-                  :before-delete="fjdelete"
+                  :preview-full-image="false"
+                  :before-delete="deleteRead"
+                  @click-upload="chooseImg"
                 >
                 </van-uploader>
               </template>
@@ -265,12 +266,13 @@
             >
               <template #input>
                 <van-uploader
-                  v-model="fileList"
-                  :after-read="afterRead1"
-                  :max-count="6"
-                  capture="camera"
+                  readonly
+                  v-model="fileList2"
+                  :max-count="5"
                   accept=""
-                  :before-delete="fjdelete"
+                  :preview-full-image="false"
+                  :before-delete="deleteRead2"
+                  @click-upload="chooseImg2"
                 >
                 </van-uploader>
               </template>
@@ -398,13 +400,17 @@
             >
               <template #input>
                 <van-uploader
+                  readonly
                   v-model="fileList3"
-                  :after-read="afterRead3"
-                  :max-count="6"
-                  capture="camera"
+                  :max-count="5"
                   accept=""
-                  :before-delete="fjdelete3"
+                  :preview-full-image="false"
+                  :before-delete="deleteRead3"
+                  @click-upload="chooseImg3"
                 >
+                  <van-button
+                    >上传文件(可添加图片、音、视频和文本等)</van-button
+                  >
                 </van-uploader>
               </template>
             </van-field>
@@ -717,6 +723,7 @@ import { useRouter } from "vue-router";
 import { onMounted, ref } from "vue";
 import placeRegister from "@/api/placeRegister/placeRegister";
 import tools from "@/api/sys/tools";
+import $base from "@/utils/config";
 export default {
   components: { ManageList, ManageList2 },
   setup() {
@@ -888,73 +895,112 @@ export default {
     //图片上传
     let fileList = ref([]);
     let fileImg = ref([]);
-    const afterRead1 = (file) => {
-      new tools()
-        .uploadFile(file, `religioussites/siteinfo/religiousSitesInfo`)
-        .then(({ data }) => {
-          data.name = decodeURIComponent(
-            data.url.substring(data.url.lastIndexOf("/") + 1)
-          );
-          inputForm.value.scenesImage += "" + data.url;
-          fileImg.value.push(data);
-        });
+    const chooseImg = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url:
+          $base +
+          `/sys/file/webupload/upload?uploadPath=religioussites/siteinfo/religiousSitesInfo`,
+        headers: {
+          "Content-Type": "multipart/form-data",
+          token: window.localStorage.getItem("MZ_TOKEN"),
+        },
+      }).then((res) => {
+        let data = res[0].data;
+        data.name = decodeURIComponent(
+          data.id.substring(data.url.lastIndexOf("/") + 1)
+        );
+        data.url = $base + data.url;
+        fileImg.value.push(data);
+        fileList.value.push(data);
+      });
     };
-    const fjdelete = (file) => {
+    // 删除文件
+    const deleteRead = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList.value.length; index++) {
-        if (file.file == fileList.value[index].file) {
-          let delurl = fileImg.value[index].url;
-          new tools().uploadFiledelete("", delurl).then(({ data }) => {});
-          fileImg.value.splice(index, 1);
+        if (file.id == fileList.value[index].id) {
           fileList.value.splice(index, 1);
+          if (fileImg.value[index]) {
+            let delurl = fileImg.value[index].url;
+            new tools().uploadFiledelete("", delurl).then(({ data }) => {});
+            fileImg.value.splice(index, 1);
+          }
         }
       }
     };
     let fileList2 = ref([]);
     let fileImg2 = ref([]);
-    const afterRead2 = (file) => {
-      new tools()
-        .uploadFile(file, `religioussites/siteinfo/religiousSitesInfo`)
-        .then(({ data }) => {
-          data.name = decodeURIComponent(
-            data.url.substring(data.url.lastIndexOf("/") + 1)
-          );
-          inputForm.value.etiquetteSpace += "" + data.url;
-          fileImg2.value.push(data);
-        });
+    const chooseImg2 = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url:
+          $base +
+          `/sys/file/webupload/upload?uploadPath=religioussites/siteinfo/religiousSitesInfo`,
+        headers: {
+          "Content-Type": "multipart/form-data",
+          token: window.localStorage.getItem("MZ_TOKEN"),
+        },
+      }).then((res) => {
+        let data = res[0].data;
+        data.name = decodeURIComponent(
+          data.id.substring(data.url.lastIndexOf("/") + 1)
+        );
+        data.url = $base + data.url;
+        fileImg2.value.push(data);
+        fileList2.value.push(data);
+      });
     };
-    const fjdelete2 = (file) => {
+    // 删除文件
+    const deleteRead2 = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList2.value.length; index++) {
-        if (file.file == fileList2.value[index].file) {
-          let delurl = fileImg2.value[index].url;
-          new tools().uploadFiledelete("", delurl).then(({ data }) => {});
-          fileImg2.value.splice(index, 1);
+        if (file.id == fileList2.value[index].id) {
           fileList2.value.splice(index, 1);
+          if (fileImg2.value[index]) {
+            let delurl = fileImg2.value[index].url;
+            new tools().uploadFiledelete("", delurl).then(({ data }) => {});
+            fileImg2.value.splice(index, 1);
+          }
         }
       }
     };
     let fileList3 = ref([]);
     let fileImg3 = ref([]);
-    const afterRead3 = (file) => {
-      new tools()
-        .uploadFile(file, `religioussites/siteinfo/religiousSitesInfo`)
-        .then(({ data }) => {
-          data.name = decodeURIComponent(
-            data.url.substring(data.url.lastIndexOf("/") + 1)
-          );
-          inputForm.value.approvalProcedures += "" + data.url;
-          fileImg3.value.push(data);
-        });
+    const chooseImg3 = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url:
+          $base +
+          `/sys/file/webupload/upload?uploadPath=religioussites/siteinfo/religiousSitesInfo`,
+        headers: {
+          "Content-Type": "multipart/form-data",
+          token: window.localStorage.getItem("MZ_TOKEN"),
+        },
+      }).then((res) => {
+        let data = res[0].data;
+        data.name = decodeURIComponent(
+          data.id.substring(data.url.lastIndexOf("/") + 1)
+        );
+        data.url = $base + data.url;
+        fileImg3.value.push(data);
+        fileList3.value.push(data);
+      });
     };
-    const fjdelete3 = (file) => {
+    // 删除文件
+    const deleteRead3 = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList3.value.length; index++) {
-        if (file.file == fileList3.value[index].file) {
-          let delurl = fileImg3.value[index].url;
-          new tools().uploadFiledelete("", delurl).then(({ data }) => {});
-          fileImg3.value.splice(index, 1);
+        if (file.id == fileList3.value[index].id) {
           fileList3.value.splice(index, 1);
+          if (fileImg3.value[index]) {
+            let delurl = fileImg3.value[index].url;
+            new tools().uploadFiledelete("", delurl).then(({ data }) => {});
+            fileImg3.value.splice(index, 1);
+          }
         }
       }
     };
@@ -995,23 +1041,29 @@ export default {
     let hs_SetupTime = ref(false);
     const getSetupTime = ({ selectedOptions }) => {
       hs_SetupTime.value = false;
-      const json = Object.assign(inputForm.value,{approvedEstablishmentTime:selectedOptions[0].text +
-        "-" +
-        selectedOptions[1].text +
-        "-" +
-        selectedOptions[2].text})
-        inputForm.value = json
+      const json = Object.assign(inputForm.value, {
+        approvedEstablishmentTime:
+          selectedOptions[0].text +
+          "-" +
+          selectedOptions[1].text +
+          "-" +
+          selectedOptions[2].text,
+      });
+      inputForm.value = json;
     };
     //批准设立时间
     let hs_SignTime = ref(false);
     const getSignTime = ({ selectedOptions }) => {
       hs_SignTime.value = false;
-      const json = Object.assign(inputForm.value,{registrationDate:selectedOptions[0].text +
-        "-" +
-        selectedOptions[1].text +
-        "-" +
-        selectedOptions[2].text})
-        inputForm.value = json
+      const json = Object.assign(inputForm.value, {
+        registrationDate:
+          selectedOptions[0].text +
+          "-" +
+          selectedOptions[1].text +
+          "-" +
+          selectedOptions[2].text,
+      });
+      inputForm.value = json;
     };
     // 互联网专区
     const internetForm = ref({
@@ -1184,6 +1236,16 @@ export default {
     };
     // 数据提交
     const submit = () => {
+      //保存前附件处理
+      inputForm.value.scenesImage = fileImg.value
+        .map((option) => option.id)
+        .join("|");
+      inputForm.value.etiquetteSpace = fileImg2.value
+        .map((option) => option.id)
+        .join("|");
+      inputForm.value.approvalProcedures = fileImg3.value
+        .map((option) => option.id)
+        .join("|");
       hlwToSubmit();
       let dynami = JSON.stringify(internetForm.value.dynamicForm);
       const json = Object.assign(inputForm.value, { dynamicFormJson: dynami });
@@ -1209,14 +1271,14 @@ export default {
       active,
       //图片上传
       fileList,
-      afterRead1,
-      fjdelete,
+      chooseImg,
+      deleteRead,
       fileList2,
-      afterRead2,
-      fjdelete2,
+      chooseImg2,
+      deleteRead2,
       fileList3,
-      afterRead3,
-      fjdelete3,
+      chooseImg3,
+      deleteRead3,
       //宗教类型
       religiousType,
       hs_religious,

+ 125 - 81
src/views/placeManage/placeRegister/placeRegisterInfo.vue

@@ -25,12 +25,13 @@
               >
                 <template #input>
                   <van-uploader
+                    readonly
                     v-model="fileList"
-                    :after-read="afterRead1"
-                    :max-count="6"
-                    capture="camera"
+                    :max-count="5"
                     accept=""
-                    :before-delete="fjdelete"
+                    :preview-full-image="false"
+                    :before-delete="deleteRead"
+                    @click-upload="chooseImg"
                   >
                   </van-uploader>
                 </template>
@@ -269,12 +270,13 @@
               >
                 <template #input>
                   <van-uploader
+                    readonly
                     v-model="fileList2"
-                    :after-read="afterRead2"
-                    :max-count="6"
-                    capture="camera"
+                    :max-count="5"
                     accept=""
-                    :before-delete="fjdelete2"
+                    :preview-full-image="false"
+                    :before-delete="deleteRead2"
+                    @click-upload="chooseImg2"
                   >
                   </van-uploader>
                 </template>
@@ -400,13 +402,17 @@
               >
                 <template #input>
                   <van-uploader
+                    readonly
                     v-model="fileList3"
-                    :after-read="afterRead3"
-                    :max-count="6"
-                    capture="camera"
+                    :max-count="5"
                     accept=""
-                    :before-delete="fjdelete3"
+                    :preview-full-image="false"
+                    :before-delete="deleteRead3"
+                    @click-upload="chooseImg3"
                   >
+                    <van-button
+                      >上传文件(可添加图片、音、视频和文本等)</van-button
+                    >
                   </van-uploader>
                 </template>
               </van-field>
@@ -720,6 +726,7 @@ import { useRouter } from "vue-router";
 import { onMounted, ref } from "vue";
 import placeRegister from "@/api/placeRegister/placeRegister";
 import tools from "@/api/sys/tools";
+import $base from "@/utils/config";
 export default {
   components: { ManageList, ManageList2 },
   setup() {
@@ -746,69 +753,63 @@ export default {
         );
         placeTypeName.value = getplaceTypeN(dataitem.value.siteType);
         placeAddress.value = dataitem.value.placeSelectName;
-        if (dataitem.value.scenesImage) {
-          let array = dataitem.value.scenesImage.split("/");
-          array.forEach((item) => {
-            if (item.trim().length > 0) {
-              fileList.value.push({
-                file: {
-                  name: decodeURIComponent(
-                    item.substring(item.lastIndexOf("/") + 1)
-                  ),
-                  url: $base + item.replace("程序附件//", "程序附件/"),
-                },
-              });
-            }
+        dataitem.value.scenesImage.split("|").forEach((item) => {
+          if (item.trim().length > 0) {
             fileImg.value.push({
               name: decodeURIComponent(
                 item.substring(item.lastIndexOf("/") + 1)
               ),
               url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
             });
-          });
-        }
-        if (dataitem.value.etiquetteSpace) {
-          let array = dataitem.value.etiquetteSpace.split("/");
-          array.forEach((item) => {
-            if (item.trim().length > 0) {
-              fileList2.value.push({
-                file: {
-                  name: decodeURIComponent(
-                    item.substring(item.lastIndexOf("/") + 1)
-                  ),
-                  url: $base + item.replace("程序附件//", "程序附件/"),
-                },
-              });
-            }
+            fileList.value.push({
+              name: decodeURIComponent(
+                item.substring(item.lastIndexOf("/") + 1)
+              ),
+
+              url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
+            });
+          }
+        });
+        dataitem.value.etiquetteSpace.split("|").forEach((item) => {
+          if (item.trim().length > 0) {
             fileImg2.value.push({
               name: decodeURIComponent(
                 item.substring(item.lastIndexOf("/") + 1)
               ),
               url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
             });
-          });
-        }
-        if (dataitem.value.approvalProcedures) {
-          let array = dataitem.value.approvalProcedures.split("/");
-          array.forEach((item) => {
-            if (item.trim().length > 0) {
-              fileList3.value.push({
-                file: {
-                  name: decodeURIComponent(
-                    item.substring(item.lastIndexOf("/") + 1)
-                  ),
-                  url: $base + item.replace("程序附件//", "程序附件/"),
-                },
-              });
-            }
+            fileList2.value.push({
+              name: decodeURIComponent(
+                item.substring(item.lastIndexOf("/") + 1)
+              ),
+
+              url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
+            });
+          }
+        });
+        dataitem.value.approvalProcedures.split("|").forEach((item) => {
+          if (item.trim().length > 0) {
             fileImg3.value.push({
               name: decodeURIComponent(
                 item.substring(item.lastIndexOf("/") + 1)
               ),
               url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
             });
-          });
-        }
+            fileList3.value.push({
+              name: decodeURIComponent(
+                item.substring(item.lastIndexOf("/") + 1)
+              ),
+
+              url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
+            });
+          }
+        });
         new placeRegister()
           .queryInternetBySiteId(dataitem.value.id)
           .then(({ data }) => {
@@ -963,18 +964,32 @@ export default {
     //图片上传
     let fileList = ref([]);
     let fileImg = ref([]);
-    const afterRead1 = (file) => {
-      new tools().uploadFile(file, `logo`).then(({ data }) => {
+    const chooseImg = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url:
+          $base +
+          `/sys/file/webupload/upload?uploadPath=religioussites/siteinfo/religiousSitesInfo`,
+        headers: {
+          "Content-Type": "multipart/form-data",
+          token: window.localStorage.getItem("MZ_TOKEN"),
+        },
+      }).then((res) => {
+        let data = res[0].data;
         data.name = decodeURIComponent(
-          data.url.substring(data.url.lastIndexOf("/") + 1)
+          data.id.substring(data.url.lastIndexOf("/") + 1)
         );
+        data.url = $base + data.url;
         fileImg.value.push(data);
+        fileList.value.push(data);
       });
     };
-    const fjdelete = (file) => {
+    // 删除文件
+    const deleteRead = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList.value.length; index++) {
-        if (file.file.name == fileList.value[index].file.name) {
+        if (file.id == fileList.value[index].id) {
           fileList.value.splice(index, 1);
           if (fileImg.value[index]) {
             let delurl = fileImg.value[index].url;
@@ -986,18 +1001,32 @@ export default {
     };
     let fileList2 = ref([]);
     let fileImg2 = ref([]);
-    const afterRead2 = (file) => {
-      new tools().uploadFile(file, `logo`).then(({ data }) => {
+    const chooseImg2 = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url:
+          $base +
+          `/sys/file/webupload/upload?uploadPath=religioussites/siteinfo/religiousSitesInfo`,
+        headers: {
+          "Content-Type": "multipart/form-data",
+          token: window.localStorage.getItem("MZ_TOKEN"),
+        },
+      }).then((res) => {
+        let data = res[0].data;
         data.name = decodeURIComponent(
-          data.url.substring(data.url.lastIndexOf("/") + 1)
+          data.id.substring(data.url.lastIndexOf("/") + 1)
         );
+        data.url = $base + data.url;
         fileImg2.value.push(data);
+        fileList2.value.push(data);
       });
     };
-    const fjdelete2 = (file) => {
+    // 删除文件
+    const deleteRead2 = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList2.value.length; index++) {
-        if (file.file.name == fileList2.value[index].file.name) {
+        if (file.id == fileList2.value[index].id) {
           fileList2.value.splice(index, 1);
           if (fileImg2.value[index]) {
             let delurl = fileImg2.value[index].url;
@@ -1009,18 +1038,32 @@ export default {
     };
     let fileList3 = ref([]);
     let fileImg3 = ref([]);
-    const afterRead3 = (file) => {
-      new tools().uploadFile(file, `logo`).then(({ data }) => {
+    const chooseImg3 = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url:
+          $base +
+          `/sys/file/webupload/upload?uploadPath=/religioussites/siteinfo/religiousSitesInfo`,
+        headers: {
+          "Content-Type": "multipart/form-data",
+          token: window.localStorage.getItem("MZ_TOKEN"),
+        },
+      }).then((res) => {
+        let data = res[0].data;
         data.name = decodeURIComponent(
-          data.url.substring(data.url.lastIndexOf("/") + 1)
+          data.id.substring(data.url.lastIndexOf("/") + 1)
         );
+        data.url = $base + data.url;
         fileImg3.value.push(data);
+        fileList3.value.push(data);
       });
     };
-    const fjdelete3 = (file) => {
+    // 删除文件
+    const deleteRead3 = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList3.value.length; index++) {
-        if (file.file.name == fileList3.value[index].file.name) {
+        if (file.id == fileList3.value[index].id) {
           fileList3.value.splice(index, 1);
           if (fileImg3.value[index]) {
             let delurl = fileImg3.value[index].url;
@@ -1267,14 +1310,15 @@ export default {
       let dynami = JSON.stringify(internetForm.value.dynamicForm);
       const json = Object.assign(dataitem.value, { dynamicFormJson: dynami });
       dataitem.value = json;
+      //保存前附件处理
       dataitem.value.scenesImage = fileImg.value
-        .map((option) => option.url)
+        .map((option) => option.id)
         .join("|");
       dataitem.value.etiquetteSpace = fileImg2.value
-        .map((option) => option.url)
+        .map((option) => option.id)
         .join("|");
       dataitem.value.approvalProcedures = fileImg3.value
-        .map((option) => option.url)
+        .map((option) => option.id)
         .join("|");
       new placeRegister().sava(dataitem.value).then((res) => {
         if (res.status == 200) {
@@ -1295,14 +1339,14 @@ export default {
       active,
       //图片上传
       fileList,
-      afterRead1,
-      fjdelete,
+      chooseImg,
+      deleteRead,
       fileList2,
-      afterRead2,
-      fjdelete2,
+      chooseImg2,
+      deleteRead2,
       fileList3,
-      afterRead3,
-      fjdelete3,
+      chooseImg3,
+      deleteRead3,
       //宗教类型
       religiousType,
       hs_religious,

+ 23 - 2
src/views/placeManage/placeTablet/placeTablet.vue

@@ -86,7 +86,28 @@ export default {
     const TabletData = ref([]);
     // 导航栏颜色
     const selectColor = ref(window.localStorage.getItem("MZ_COLOR"));
-    
+    const inputForm = ref({
+      id: "",
+      brandName: "",
+      siteName: {
+        id: "",
+      },
+      siteContact: "",
+      contactInformation: "",
+      memorialTabletHolder: "",
+      memorialTabletHolderPhone: "",
+      udCard: "",
+      nativePlace: "",
+      currentResidence: "",
+      currentResidenceDel: "",
+      relationship: "",
+      sacrificeExpenses: "",
+      position: "",
+      state: "0",
+      keepOnRecord: "0",
+      pic: "",
+      information: "",
+    });
     //搜索事件
     const show = ref(true)
     const searchName = ref("");
@@ -133,12 +154,12 @@ export default {
     const onLoad = () => {
       loading.value = true;
       finished.value = false;
-      // 异步更新数据
       //获取牌位数据
       new TabletServer()
         .list({
           current: index + 1,
           size: 11,
+          ...inputForm.value
         })
         .then(({ records, pages }) => {
           TabletData.value = TabletData.value.concat(records);

+ 35 - 33
src/views/placeManage/placeTablet/placeTabletAdd.vue

@@ -201,16 +201,10 @@
     <van-cell-group>
       <van-field name="uploader" label-align="top" label="牌位照片:">
         <template #input>
-          <van-uploader
-            v-model="fileList"
-            :after-read="afterRead1"
-            :max-count="6"
-            capture="camera"
-            accept=""
-            :before-delete="fjdelete"
-          >
-          </van-uploader>
-        </template>
+            <van-uploader readonly v-model="fileList" :max-count="5" accept="" :preview-full-image="false"
+              :before-delete="deleteRead" @click-upload="chooseImg">
+            </van-uploader>
+          </template>
       </van-field>
     </van-cell-group>
     <div class="subbtn">
@@ -226,6 +220,7 @@ import TabletServer from "@/api/tabletManage/TabletServer";
 import placePerson from "@/api/placePerson/placePerson";
 import PlaceRegister from "@/api/placeRegister/placeRegister";
 import tools from "@/api/sys/tools";
+import $base from "@/utils/config";
 export default {
   setup() {
     const onClickLeft = () => {
@@ -339,35 +334,42 @@ export default {
     //图片上传
     let fileList = ref([]);
     let fileImg = ref([]);
-    let workpic = ref("");
-    const afterRead1 = (file) => {
-      new tools()
-        .uploadFile(file, `sys/file/webupload/upload`)
-        .then(({ data }) => {
-          data.name = decodeURIComponent(
-            data.url.substring(data.url.lastIndexOf("/") + 1)
-          );
-          workpic.value += "" + data.url;
-          const json = Object.assign(inputForm.value, {
-            pic: workpic.value,
-          });
-          inputForm.value = json;
-          fileImg.value.push(data);
-        });
-    };
-    const fjdelete = (file) => {
+    const chooseImg = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url: $base + `/sys/file/webupload/upload?uploadPath=placememorialtablets/placeMemorialTablets`,
+        headers: { 'Content-Type': 'multipart/form-data', "token": window.localStorage.getItem('MZ_TOKEN') },
+      }).then(res => {
+        let data = res[0].data
+        data.name = decodeURIComponent(
+          data.id.substring(data.url.lastIndexOf("/") + 1)
+        );
+        data.url = $base + data.url;
+        fileImg.value.push(data);
+        fileList.value.push(data)
+      })
+    }
+
+    // 删除文件
+    const deleteRead = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList.value.length; index++) {
-        if (file.file == fileList.value[index].file) {
-          let delurl = fileImg.value[index].url;
-          new tools().uploadFiledelete("", delurl).then(({ data }) => {});
-          fileImg.value.splice(index, 1);
+        if (file.id == fileList.value[index].id) {
           fileList.value.splice(index, 1);
+          if (fileImg.value[index]) {
+            let delurl = fileImg.value[index].url;
+            new tools().uploadFiledelete("", delurl).then(({ data }) => { });
+            fileImg.value.splice(index, 1);
+          }
         }
       }
     };
     //数据提交
     const submit = () => {
+      inputForm.value.pic = fileImg.value
+        .map((option) => option.id)
+        .join("|");
       new TabletServer().save(inputForm.value).then((res) => {
         console.log(res);
         if (res.status == 200) {
@@ -410,9 +412,9 @@ export default {
       getPlace1,
       //图片上传
       fileList,
-      afterRead1,
+      chooseImg,
       //图片删除
-      fjdelete,
+      deleteRead,
       submit
     };
   },

+ 68 - 61
src/views/placeManage/placeTablet/placeTabletInfo.vue

@@ -207,12 +207,13 @@
         <van-field name="uploader" label-align="top" label="牌位照片:">
           <template #input>
             <van-uploader
+              readonly
               v-model="fileList"
-              :after-read="afterRead1"
-              :max-count="6"
-              capture="camera"
-              accept="image"
-              :before-delete="fjdelete"
+              :max-count="5"
+              accept=""
+              :preview-full-image="false"
+              :before-delete="deleteRead"
+              @click-upload="chooseImg"
             >
             </van-uploader>
           </template>
@@ -246,38 +247,33 @@ export default {
     const router = useRouter();
     onMounted(() => {
       var id = JSON.parse(router.currentRoute.value.query.id);
-      new TabletServer().queryById(id).then((res)=>{
-        console.log(res);
-        dataitem.value = res
-        if (!dataitem.value.pic) {
-        fileList.value = [];
-      } else {
-        // 有数据处理 dataitem.value.pic
-        let pic = dataitem.value.pic;
-        let array = pic.split("|");
-        array.forEach((item) => {
+      new TabletServer().queryById(id).then((res) => {
+        dataitem.value = res;
+        dataitem.value.pic.split("|").forEach((item) => {
           if (item.trim().length > 0) {
+            fileImg.value.push({
+              name: decodeURIComponent(
+                item.substring(item.lastIndexOf("/") + 1)
+              ),
+              url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
+            });
             fileList.value.push({
-              file: {
-                name: decodeURIComponent(
-                  item.substring(item.lastIndexOf("/") + 1)
-                ),
-                url: $base + item.replace("程序附件//", "程序附件/")
-              },
+              name: decodeURIComponent(
+                item.substring(item.lastIndexOf("/") + 1)
+              ),
+
+              url: $base + item.replace("程序附件//", "程序附件/"),
+              id: item.replace("程序附件//", "程序附件/"),
             });
           }
-          fileImg.value.push({
-            name: decodeURIComponent(item.substring(item.lastIndexOf("/") + 1)),
-            url: $base + item.replace("程序附件//", "程序附件/"),
-          });
         });
-      }
-      let addressid = dataitem.value.siteName.id;
-      new PlaceRegister().queryById(addressid).then((res) => {
-        locationName.value = res.name;
+        let addressid = dataitem.value.siteName.id;
+        new PlaceRegister().queryById(addressid).then((res) => {
+          locationName.value = res.name;
+        });
       });
-      })
-      
+
       //籍贯接口
       new placePerson().nativePlace().then((res) => {
         nativePlace.value.push(...res);
@@ -362,24 +358,37 @@ export default {
     //图片上传
     let fileList = ref([]);
     let fileImg = ref([]);
-    const afterRead1 = (file) => {
-      new tools()
-        .uploadFile(file, `logo`)
-        .then(({ data }) => {
-          data.name = decodeURIComponent(
-            data.url.substring(data.url.lastIndexOf("/") + 1)
-          );
-          fileImg.value.push(data);
-        });
+    const chooseImg = () => {
+      xm.chooseFile({
+        count: 1,
+        name: "file",
+        url:
+          $base +
+          `/sys/file/webupload/upload?uploadPath=placememorialtablets/placeMemorialTablets`,
+        headers: {
+          "Content-Type": "multipart/form-data",
+          token: window.localStorage.getItem("MZ_TOKEN"),
+        },
+      }).then((res) => {
+        let data = res[0].data;
+        data.name = decodeURIComponent(
+          data.id.substring(data.url.lastIndexOf("/") + 1)
+        );
+        data.url = $base + data.url;
+        fileImg.value.push(data);
+        fileList.value.push(data);
+      });
     };
-    const fjdelete = (file) => {
+
+    // 删除文件
+    const deleteRead = (file) => {
       //删除文件操作
       for (let index = 0; index < fileList.value.length; index++) {
-        if (file.file.name == fileList.value[index].file.name) {
+        if (file.id == fileList.value[index].id) {
           fileList.value.splice(index, 1);
           if (fileImg.value[index]) {
             let delurl = fileImg.value[index].url;
-            new tools().uploadFiledelete("", delurl).then(({ data }) => { });
+            new tools().uploadFiledelete("", delurl).then(({ data }) => {});
             fileImg.value.splice(index, 1);
           }
         }
@@ -391,23 +400,21 @@ export default {
     };
     //数据提交
     const submit = () => {
-      dataitem.value.pic = fileImg.value
-        .map((option) => option.url)
-        .join("|");
+      dataitem.value.pic = fileImg.value.map((option) => option.id).join("|");
       new TabletServer().save(dataitem.value).then((res) => {
-        // if (res.status == 200) {
-        //   xm.showToast({
-        //     message: "牌位信息修改成功",
-        //   });
-        //   router.push({
-        //     path: "/placeTablet",
-        //   });
-        // }else{
-        //   xm.showToast({
-        //     message: "牌位信息修改失败",
-        //   });
-        //   console.log(res);
-        // }
+        if (res.status == 200) {
+          xm.showToast({
+            message: "牌位信息修改成功",
+          });
+          // router.push({
+          //   path: "/placeTablet",
+          // });
+        }else{
+          xm.showToast({
+            message: "牌位信息修改失败",
+          });
+          console.log(res);
+        }
       });
     };
     return {
@@ -435,9 +442,9 @@ export default {
       getPlace1,
       //图片上传
       fileList,
-      afterRead1,
+      chooseImg,
       //图片删除
-      fjdelete,
+      deleteRead,
       //数据提交
       submit,
     };