Lou
2024-04-09 bc72c8b614a6a57c20b6cbc9a1d140e08b46d649
维修基金申请新增,11个附件上传处理
1 files modified
346 ■■■■■ changed files
src/views/property/propertyCapitalApply.vue 346 ●●●●● patch | view | raw | blame | history
src/views/property/propertyCapitalApply.vue
@@ -48,9 +48,9 @@
          v-text="textDispose(row, 'linkPhoneflag', 'linkPhone')">
        </el-button>
      </template>
      <template slot="constructionSchemeUrlsType" slot-scope="{file}">
      <!-- <template slot="constructionSchemeUrlsType" slot-scope="{file}">
        <span>{{ file }}</span>
      </template>
      </template> -->
    </avue-crud>
@@ -408,26 +408,266 @@
              prop: "projectDescribe",
              type: "textarea"
            },
        // {
        //   label: '施工方案附件',
        //   prop: 'constructionSchemeUrls',
        //   type: 'upload',
        //   span: 24,
        //   hide: true,
        //   multiple: true,
        //   listType: "text",
        //   propsHttp: {
        //     res: 'data',
        //     name: "name",
        //     url: "link"
        //   },
        //   action: '/api/blade-resource/oss/endpoint/put-file-attach',
        //   rules: [{
        //     required: true,
        //     message: "请上传施工方案",
        //     trigger: "blur",
        //   }]
        // },
            {
              label: '施工方案附件',
              prop: 'constructionSchemeUrls',
              type: 'upload',
          label: "维修资金使用申请审批表",
          offset: 2,
          labelPosition: "top",
          prop: "file1",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
              span: 24,
              hide: true,
              multiple: true,
              // showFileList: true,
              propsHttp: {
                res: 'data',
                name: "originalName",
                url: "link"
              },
              action: '/api/blade-resource/oss/endpoint/put-file-attach',
              rules: [{
                required: true,
                message: "请上传施工方案",
            message: "请上传文件",
                trigger: "blur",
              }, ],
            }
          }],
        },
        {
          label: "申请使用维修资金的报告、附维修部位彩色照片、业委会(物管会)会议纪要(社区意见)",
          offset: 2,
          labelPosition: "top",
          prop: "file2",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
        {
          label: "公示单,现场勘察图片、公示照片(公示期7天)",
          offset: 2,
          labelPosition: "top",
          prop: "file3",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
        {
          label: "维修单位出具的工程款发票(验收合格后以竣工决算审核报告审定金额开具)",
          offset: 2,
          labelPosition: "top",
          prop: "file4",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
        {
          label: "应急维修需提供专业机构出具的检验检测报告或(乡镇人民政府)街道办事处现场核实意见",
          offset: 2,
          labelPosition: "top",
          prop: "file5",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
        {
          label: "业主签名表或线上表决记录(应急情况不提供)",
          offset: 2,
          labelPosition: "top",
          prop: "file6",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
        {
          label: "政府采购资料",
          offset: 2,
          labelPosition: "top",
          prop: "file7",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
        {
          label: "维修和更新、改造方案、维修项目的协议或合同",
          offset: 2,
          labelPosition: "top",
          prop: "file8",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
        {
          label: "维修改造工程竣工验收单一式两份(维修完工需经申请人签字);维修项目签证单(超出预算清单内容的需出具签证单)",
          offset: 2,
          labelPosition: "top",
          prop: "file9",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
        {
          label: "维修项目决算、造价机构出具的决算审价报告",
          offset: 2,
          labelPosition: "top",
          prop: "file10",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
        {
          label: "业主委员会情况登记表;经办人或代理人证件(复印件),复印件上签名、联系电话",
          offset: 2,
          labelPosition: "top",
          prop: "file11",
          type: "upload",
          listType: "text",
          action: "/api/blade-resource/oss/endpoint/put-file-attach",
          propsHttp: {
            res: "data",
            name: 'name',
            url: "link",
          },
          span: 24,
          hide: true,
          rules: [{
            required: true,
            message: "请上传文件",
            trigger: "blur",
          }],
        },
          ],
        },
        data: [],
@@ -470,7 +710,6 @@
      //   },
      //   deep: true,
      //     immediate: true
      // }
      'form.districtId': {
@@ -530,6 +769,7 @@
    },
    methods: {
      rowView() {
        this.showDialog = false;
      },
@@ -549,17 +789,63 @@
          path: `/property/process/maintenanceFundApply/detail/${row.processInstanceId}/${row.id}`
        })
      },
      rowSave(row, done, loading) {
        row.constructionSchemeUrls = func.join(row.constructionSchemeUrls)
        if (row.constructionSchemeUrls.length > 0) {
    setFile(fileObj) {
      for (let i in fileObj) {
        fileObj[i] = func.join(fileObj[i])
        if (fileObj[i].length > 0) {
          var urls = []
          var split = row.constructionSchemeUrls.split(",")
          var split = fileObj[i].split(",")
          split.forEach(url => {
            var names = url.split("jczz/")
            urls.push(names[1])
          })
          row.constructionSchemeUrls = urls.join(",")
          fileObj[i] = urls.join(",")
        }
      }
      return fileObj;
    },
    rowSave(row, done, loading) {
      // row.constructionSchemeUrls = func.join(row.constructionSchemeUrls)
      // if (row.constructionSchemeUrls.length > 0) {
      //   var urls = []
      //   var split = row.constructionSchemeUrls.split(",")
      //   split.forEach(url => {
      //     var names = url.split("jczz/")
      //     urls.push(names[1])
      //   })
      //   row.constructionSchemeUrls = urls.join(",")
      // }
      let keys = ["file1", "file2", "file3", "file4", "file5", "file6", "file7", "file8", "file9", "file10", "file11"]
      let files = {};
      for (let i in row) {
        if (keys.indexOf(i) != -1) {
          files[i] = row[i];
        }
      }
      for (let k in files) {
        files[k] = func.join(files[k])
        if (files[k].length) {
          let urls = [];
          let split = files[k].split(",");
          split.forEach(url => {
            let names = url.split("jczz/");
            urls.push(names[1]);
          })
          files[k] = urls.join(",")
        }
      }
      row.attachment = JSON.stringify(files);
      for (let j in row) {
        if (keys.indexOf(j) != -1) {
          delete row[j];
        }
      }
      console.log("提交===>", row);
        row.propertyFlag = 1
        add(row).then(
          () => {
@@ -708,14 +994,14 @@
          this.data = data.records
          this.data.forEach(item => {
            this.$set(item, 'linkPhoneflag', false)
            if (item.constructionSchemeUrls.length > 0) {
              var urls = []
              var names = item.constructionSchemeUrls.split(",")
              names.forEach(name => {
                urls.push(website.minioUrl + name)
              })
              item.constructionSchemeUrls = urls.join(",")
            }
          // if (item.constructionSchemeUrls.length > 0) {
          //   var urls = []
          //   var names = item.constructionSchemeUrls.split(",")
          //   names.forEach(name => {
          //     urls.push(website.minioUrl + name)
          //   })
          //   item.constructionSchemeUrls = urls.join(",")
          // }
          })
          this.loading = false
          this.selectionClear()