From ee695cb13f2306500eaf6799e8a9d2b78408a2a5 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 15 May 2024 14:44:28 +0800
Subject: [PATCH] Merge branch 'master' of http://139.196.74.78:10010/r/jczz_web

---
 src/views/article/components/userList.vue                  |   10 
 src/views/property/components/userList.vue                 |  284 +++++
 src/views/property/process/maintenanceFundApply/edit.vue   | 1300 +++++++++++++++---------
 vue.config.js                                              |   98 +
 src/views/property/propertyCapitalApply.vue                |  361 ++++--
 src/views/article/components/discussionManageChild.vue     |    5 
 src/views/property/process/maintenanceFundApply/detail.vue | 1133 +++++++++++++-------
 7 files changed, 2,114 insertions(+), 1,077 deletions(-)

diff --git a/src/views/article/components/discussionManageChild.vue b/src/views/article/components/discussionManageChild.vue
index 490fc81..0898b93 100644
--- a/src/views/article/components/discussionManageChild.vue
+++ b/src/views/article/components/discussionManageChild.vue
@@ -210,9 +210,6 @@
                 value,
                 column
               }) => {
-                // this.$message.success('focus事件查看控制台')
-                // console.log('获取焦点', value, column)
-                // this.$refs.userList && this.$refs.userList.resetForm()
                 this.$refs.userList.show(this.discussion.articleRange)
               },
             },
@@ -436,4 +433,4 @@
   .el-pagination {
     margin-top: 20px;
   }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/views/article/components/userList.vue b/src/views/article/components/userList.vue
index 348c16a..0947a22 100644
--- a/src/views/article/components/userList.vue
+++ b/src/views/article/components/userList.vue
@@ -158,6 +158,14 @@
       }
     },
     methods: {
+      selectPersonList(personList) {
+        console.log(personList, "++++++++++++")
+        this.personList = personList
+        let nameList = personList.map(e => {
+          return e.name
+        })
+        this.froms.userName = nameList.join(",")
+      },
       submit() {
         this.$emit("selectPersonList", this.idsList)
         this.showDialog = false
@@ -254,4 +262,4 @@
       }
     }
   }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/views/property/components/userList.vue b/src/views/property/components/userList.vue
new file mode 100644
index 0000000..a6cdaa6
--- /dev/null
+++ b/src/views/property/components/userList.vue
@@ -0,0 +1,284 @@
+<template>
+  <el-dialog class="dept-user-table-dialog" width="70%" title="选择人员" modal-append-to-body="false" append-to-body="true"
+    :close-on-click-model="true" :visible.sync="showDialog" @close="showDialog = false">
+    <!-- <div class="left">
+      <el-scrollbar>
+        <basic-container>
+          <avue-tree :option="treeOption" :data="treeData" @node-click="nodeClick" />
+        </basic-container>
+      </el-scrollbar>
+    </div> -->
+    <div class="right">
+      <avue-crud :option="option" :search.sync="search" :table-loading="loading" :data="data" ref="crud" v-model="form"
+        :page.sync="page" @search-change="searchChange" @search-reset="searchReset" @selection-change="selectionChange"
+        @current-change="currentChange" @size-change="sizeChange" @refresh-change="refreshChange"></avue-crud>
+    </div>
+    <div slot="footer" class="dialog-footer">
+      <el-button @click="showDialog = false">取 消</el-button>
+      <el-button type="primary" @click="submit">确 定</el-button>
+    </div>
+  </el-dialog>
+
+
+</template>
+
+<script>
+  import {
+    getDeptLazyTree
+  } from "@/api/system/dept";
+  import {
+    getList
+  } from "@/api/doorplateAddress/doorplateAddress";
+  import {
+    mapGetters
+  } from "vuex";
+
+  export default {
+    name: "DeptUserTable",
+    data() {
+      return {
+        showDialog: false,
+        form: {},
+        search: {},
+        selectionList: [],
+        query: {},
+        loading: true,
+        platformLoading: false,
+        page: {
+          pageSize: 10,
+          currentPage: 1,
+          total: 0
+        },
+        treeDeptId: '',
+        treeData: [],
+        treeOption: {
+          nodeKey: 'id',
+          lazy: true,
+          treeLoad: function(node, resolve) {
+            const parentId = (node.level === 0) ? 0 : node.data.id
+            getDeptLazyTree(parentId).then(res => {
+              resolve(res.data.data.map(item => {
+                return {
+                  ...item,
+                  leaf: !item.hasChildren
+                }
+              }))
+            })
+          },
+          addBtn: false,
+          menu: false,
+          size: 'small',
+          props: {
+            labelText: '标题',
+            label: 'title',
+            value: 'value',
+            children: 'children'
+          }
+        },
+        option: {
+          height: 'auto',
+          calcHeight: 120,
+          tip: false,
+          searchShow: true,
+          searchMenuSpan: 6,
+          border: true,
+          index: true,
+          selection: true,
+          viewBtn: true,
+          dialogType: 'drawer',
+          dialogClickModal: false,
+          menu: false,
+          addBtn: false,
+          rowKey: "id",
+          reserveSelection: true,
+          column: [
+            // {
+            //   label: "用户姓名",
+            //   prop: "name",
+            //   search: true,
+            //   searchSpan: 4,
+            //   display: false
+            // },
+            // {
+            //   label: "电话",
+            //   prop: "phoneNumber",
+            //   slot: true,
+            //   searchSpan: 4,
+            //   search: true,
+            //   display: false
+            // },
+            {
+              label: "地址",
+              width: 560,
+              prop: "addressName",
+              slot: true,
+              display: false
+            },
+            {
+              label: "楼栋",
+              prop: "buildingName",
+              slot: true,
+              searchSpan: 4,
+              search: true,
+              display: false
+            },
+            {
+              label: "单元",
+              prop: "unitName",
+              searchSpan: 4,
+              slot: true,
+              search: true,
+              // display: false
+            },
+            {
+              label: "户室号",
+              prop: "houseName",
+              searchSpan: 4,
+              slot: true,
+              search: true,
+              display: false
+            },
+            {
+              label: "地址编码",
+              prop: "addressCode",
+              // searchSpan: 4,
+              // slot: true,
+              // search: true,
+              display: false
+            },
+
+          ],
+        },
+        data: [],
+        articleRange: '',
+      }
+    },
+    computed: {
+      ...mapGetters(["userInfo", "permission"]),
+      ids() {
+        let ids = []
+        this.selectionList.forEach(ele => {
+          console.log(ele, "---------")
+          ids.push({
+            id: ele.id,
+            houseName: ele.houseName,
+            addressCode: ele.addressCode
+          })
+        })
+        return ids.join(",")
+      },
+      idsList() {
+        let ids = []
+        this.selectionList.forEach(ele => {
+          ids.push({
+            id: ele.id,
+            houseName: ele.houseName || "",
+            addressCode: ele.addressCode
+          })
+        })
+        return ids
+      }
+    },
+    methods: {
+      submit() {
+        this.$emit("selectPersonList", this.idsList)
+        this.showDialog = false
+      },
+
+      show(articleRange) {
+        console.log("***111111111111111111***", articleRange)
+        this.articleRange = articleRange
+        this.showDialog = true
+        this.page.currentPage = 1
+        this.onLoad(this.page)
+      },
+
+      nodeClick(data) {
+        this.treeDeptId = data.id
+        this.page.currentPage = 1
+        this.onLoad(this.page)
+      },
+      searchReset() {
+        this.query = {}
+        this.treeDeptId = ''
+        this.onLoad(this.page)
+      },
+      searchChange(params, done) {
+        this.query = params
+        this.page.currentPage = 1
+        this.onLoad(this.page, params)
+        done()
+      },
+      selectionChange(list) {
+        console.log(list, "list")
+        this.selectionList = list
+      },
+      selectionClear() {
+        this.selectionList = []
+        this.$refs.crud.toggleSelection()
+      },
+      currentChange(currentPage) {
+        this.page.currentPage = currentPage
+        this.onLoad(this.page)
+      },
+      sizeChange(pageSize) {
+        this.page.pageSize = pageSize
+      },
+      refreshChange() {
+        this.onLoad(this.page, this.query)
+      },
+      onLoad(page, params = {}) {
+        this.loading = true
+        params.districtIds = this.articleRange
+        getList(page.currentPage, page.pageSize, Object.assign(params, this.query), this.treeDeptId)
+          .then(res => {
+            const data = res.data.data
+            this.page.total = data.total
+            this.data = data.records
+            // this.data.forEach(item => {
+            //   if (!item.unitName) {
+            //     item.unitName = '1单元'
+            //   }
+            // })
+            this.loading = false
+            // this.selectionClear()
+          })
+      },
+    }
+  }
+</script>
+
+<style lang="scss">
+  .dept-user-table-dialog {
+    margin: 0 !important;
+
+    .el-dialog {
+      display: flex;
+      flex-direction: column;
+      margin: auto !important;
+      position: absolute;
+      top: 0 !important;
+      left: 0 !important;
+      right: 0 !important;
+      bottom: 0 !important;
+      //width: 1000px !important;
+      height: 800px !important;
+
+      .el-dialog__body {
+        height: 0 !important;
+        flex: 1;
+        display: flex;
+
+        .left {
+          width: 0;
+          flex: 2;
+        }
+
+        .right {
+          margin-left: 10px;
+          flex: 9;
+        }
+      }
+    }
+  }
+</style>
diff --git a/src/views/property/process/maintenanceFundApply/detail.vue b/src/views/property/process/maintenanceFundApply/detail.vue
index 0b3df87..eaef17a 100644
--- a/src/views/property/process/maintenanceFundApply/detail.vue
+++ b/src/views/property/process/maintenanceFundApply/detail.vue
@@ -1,35 +1,38 @@
+<!-- eslint-disable vue/valid-v-for -->
 <template>
-  <basic-container>
-    <el-form ref="form" :model="form" label-width="80px">
-      <!-- <el-row type="flex" class="row-bg" justify="end">
+    <basic-container>
+        <el-form ref="form" :model="form" label-width="80px">
+            <!-- <el-row type="flex" class="row-bg" justify="end">
         <el-form-item>
           <el-button @click="handleCancel">关闭</el-button>
         </el-form-item>
       </el-row> -->
-      <el-card shadow="hover">
-        <div slot="header">
-          <span>审批信息</span>
-        </div>
-        <avue-form :option="option" :value="form">
+            <el-card shadow="hover">
+                <div slot="header">
+                    <span>审批信息</span>
+                </div>
+                <avue-form :option="option" :value="form" :upload-after="uploadAfter">
+                    <template slot-scope="{ row, size, index }" slot="vote">
+                        <div>{{ topicTitle }}</div>
+                        <el-table :data="topictData" v-if="topictData.length">
+                            <el-table-column width="300" property="optionContent" label="选项"
+                                label-class-name="workOrderStyle"></el-table-column>
+                            <el-table-column width="300" property="number" label="人数" label-class-name="workOrderStyle">
+                            </el-table-column>
+                            <el-table-column width="300">
+                                <template slot-scope="scope">
+                                    <el-button slot="reference" type="primary" size="mini"
+                                        @click="openUserPopup(scope.row, 1)">详情</el-button>
+                                </template>
+                            </el-table-column>
+                        </el-table>
+                    </template>
 
-          <template slot-scope="{ row, size, index }" slot="vote">
-            <div>{{ topicTitle }}</div>
-            <el-table :data="topictData" v-if="topictData.length">
-              <el-table-column width="300" property="optionContent" label="选项"
-                label-class-name="workOrderStyle"></el-table-column>
-              <el-table-column width="300" property="number" label="人数" label-class-name="workOrderStyle">
-              </el-table-column>
-              <el-table-column width="300">
-                <template slot-scope="scope">
-                  <el-button slot="reference" type="primary" size="mini"
-                    @click="openUserPopup(scope.row, 1)">详情</el-button>
-                </template>
-              </el-table-column>
-            </el-table>
-          </template>
-
-        </avue-form>
-        <!-- <el-form-item label="申请人">
+                    <template slot-scope="{ row, size, index }" v-for="(item) in keyArray" :slot="item">
+                        <el-button v-show="showDownLoadButton(item)" icon="el-icon-download" type="primary" size="small" @click="downLoad(form[item])">文件下载</el-button>
+                    </template>
+                </avue-form>
+                <!-- <el-form-item label="申请人">
           <el-input :disabled="true" v-model="form.flow.assigneeName" />
         </el-form-item>
         <el-row>
@@ -47,415 +50,753 @@
         <el-form-item label="请假理由">
           <el-input :disabled="true" type="textarea" v-model="form.reason" />
         </el-form-item> -->
-      </el-card>
-      <el-card shadow="hover">
-        <div slot="header">
-          <span>流程信息</span>
-        </div>
-        <el-row type="flex" class="row-bg">
-          <el-timeline>
-            <el-timeline-item :key="flow.id" :timestamp="flow.createTime" v-for="flow in flowList" placement="top">
-              <el-card shadow="hover">
-                <p>{{ flow.assigneeName }} 在 [{{ flow.createTime }}] 开始处理 [{{ flow.historyActivityName }}] 环节</p>
-                <p v-if="flow.historyActivityDurationTime !== ''">任务历时 [{{ flow.historyActivityDurationTime }}]</p>
-                <p v-if="flow.comment !== ''">批复意见: [{{ flow.comment }}]</p>
-                <p v-if="flow.endTime !== ''">结束时间: [{{ flow.endTime }}]</p>
-              </el-card>
-            </el-timeline-item>
-          </el-timeline>
-        </el-row>
-      </el-card>
-      <el-card shadow="hover">
-        <div slot="header">
-          <span>流程跟踪</span>
-        </div>
-        <el-row class="row-bg">
-          <flow-design :is-display="true" :process-instance-id="processInstanceId"></flow-design>
-        </el-row>
-      </el-card>
-    </el-form>
-    <deitDiscussion ref="DeitDiscussion">
-    </deitDiscussion>
-  </basic-container>
+            </el-card>
+            <el-card shadow="hover">
+                <div slot="header">
+                    <span>流程信息</span>
+                </div>
+                <el-row type="flex" class="row-bg">
+                    <el-timeline>
+                        <el-timeline-item :key="flow.id" :timestamp="flow.createTime" v-for="flow in flowList"
+                            placement="top">
+                            <el-card shadow="hover">
+                                <p>{{ flow.assigneeName }} 在 [{{ flow.createTime }}] 开始处理 [{{ flow.historyActivityName
+                                    }}] 环节</p>
+                                <p v-if="flow.historyActivityDurationTime !== ''">任务历时 [{{
+            flow.historyActivityDurationTime }}]</p>
+                                <p v-if="flow.comment !== ''">批复意见: [{{ flow.comment }}]</p>
+                                <p v-if="flow.endTime !== ''">结束时间: [{{ flow.endTime }}]</p>
+                            </el-card>
+                        </el-timeline-item>
+                    </el-timeline>
+                </el-row>
+            </el-card>
+            <el-card shadow="hover">
+                <div slot="header">
+                    <span>流程跟踪</span>
+                </div>
+                <el-row class="row-bg">
+                    <flow-design :is-display="true" :process-instance-id="processInstanceId"></flow-design>
+                </el-row>
+            </el-card>
+        </el-form>
+        <deitDiscussion ref="DeitDiscussion">
+        </deitDiscussion>
+    </basic-container>
 
 </template>
 
 <script>
-  import {
+import {
     historyFlowList,
     leaveDetail
-  } from "@/api/work/process";
-  import {
+} from "@/api/work/process"
+import {
     getList,
     remove,
     update,
     add,
     getPropertyCapitalApply
-  } from "@/api/property/propertyCapitalApply";
+} from "@/api/property/propertyCapitalApply"
 
-  import {
+import {
     getLists
-  } from "@/api/discuss/topics"
-  import deitDiscussion from "../../components/deitDiscussion.vue"
-  export default {
+} from "@/api/discuss/topics"
+import deitDiscussion from "../../components/deitDiscussion.vue"
+export default {
     components: {
-      deitDiscussion
+        deitDiscussion
     },
-    data() {
-      return {
-        businessId: '',
-        processInstanceId: '',
-        src: '',
-        flowList: [],
-        form: {
-          flow: {
-            assigneeName: '',
-          },
-          startTime: '',
-          endTime: '',
-          reason: '',
-        },
-        option: {
-          height: "auto",
-          calcHeight: 54,
-          dialogWidth: 1150,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 3,
-          menuWidth: 350,
-          border: true,
-          //stripe:true,
-          submitBtn: false,
-          emptyBtn: false,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          dialogClickModal: false,
-          column: [{
-              label: "小区",
-              prop: "districtId",
-              searchSpan: 5,
-              search: true,
-              type: 'tree',
-              dicUrl: `/api/blade-district/district/getDistrictTree`,
-              cascader: ['articleId'],
-              props: {
-                label: "name",
-                value: "id"
-              },
-              defaultExpandedKeys: ["361102003"],
-              span: 12,
-              labelWidth: 120,
-              width: 220,
-              overHidden: true,
-              rules: [{
-                required: true,
-                message: "请选择小区",
-                trigger: "blur",
-              }, ],
-              disabled: true
+    data () {
+        return {
+            keyArray: [
+                'file1',
+                'file2',
+                'file3',
+                'file4',
+                'file5',
+                'file6',
+                'file7',
+                'file8',
+                'file9',
+                'file10',
+                'file11',
+            ],
+            businessId: '',
+            processInstanceId: '',
+            src: '',
+            flowList: [],
+            form: {
+                flow: {
+                    assigneeName: '',
+                },
+                attachment: [],
+                startTime: '',
+                endTime: '',
+                reason: '',
             },
-            {
-              label: '维修项目名称',
-              prop: 'name',
-              searchLabelWidth: 120,
-              searchSpan: 5,
-              search: true,
-              span: 12,
-              labelWidth: 140,
-              rules: [{
-                required: true,
-                message: "请输入维修项目名称",
-                trigger: "blur",
-              }, ],
-              disabled: true
-            },
-            {
-              label: "预计开工时间",
-              prop: "runTime",
-              span: 12,
-              labelWidth: 140,
-              type: "date",
-              format: "yyyy-MM-dd",
-              valueFormat: "yyyy-MM-dd",
-              rules: [{
-                required: true,
-                message: "请选择合同开始时间",
-                trigger: "blur",
-              }, ],
-              disabled: true
-            },
-            {
-              label: "预计竣工时间",
-              prop: "completedTime",
-              labelWidth: 140,
-              span: 12,
-              type: "date",
-              format: "yyyy-MM-dd",
-              valueFormat: "yyyy-MM-dd",
-              rules: [{
-                required: true,
-                message: "请选择合同结束时间",
-                trigger: "blur",
-              }, ],
-              disabled: true
-            },
-            {
-              label: "楼栋",
-              prop: "buildingName",
-              labelWidth: 140,
-              value: '',
-              span: 12,
-              row: true,
-              disabled: true
-            },
-            {
-              label: '联系人',
-              prop: 'linkman',
-              span: 12,
-              labelWidth: 120,
-              search: true,
-              searchSpan: 4,
-              rules: [{
-                required: true,
-                message: "请输入联系人",
-                trigger: "blur",
-              }, ],
-              disabled: true
-            },
-            {
-              label: '联系方式',
-              prop: 'linkPhone',
-              span: 12,
-              labelWidth: 140,
-              rules: [{
-                required: true,
-                message: "请输入联系方式",
-                trigger: "blur",
-              }, ],
-              disabled: true
-            },
-            {
-              label: "项目预算总金额(元)",
-              prop: "budgetAmount",
-              span: 12,
-              hide: true,
-              labelWidth: 140,
-              type: 'number',
-              precision: 2,
-              value: '0.00',
-              disabled: true
-            },
-            {
-              label: "实际预算金额(元)",
-              prop: "actualAmount",
-              span: 12,
-              hide: true,
-              labelWidth: 140,
-              type: 'number',
-              precision: 2,
-              value: '0.00',
-              disabled: true
-            },
-            {
-              label: "自筹金额(元)",
-              prop: "selfAmount",
-              span: 12,
-              hide: true,
-              labelWidth: 140,
-              type: 'number',
-              precision: 2,
-              value: '0.00',
-              disabled: true
-            },
-            {
-              label: "预算应拨付金额(元)",
-              prop: "budgetAppropriateAmount",
-              span: 12,
-              hide: true,
-              labelWidth: 140,
-              type: 'number',
-              precision: 2,
-              value: '0.00',
-              disabled: true
-            },
-            {
-              disabled: true,
-              display: false,
-              hide: true,
-              parent: false,
-              label: "投票结果",
-              prop: "articleId",
-              search: false,
-              viewDisabled: false,
-              type: 'select',
-              dicUrl: `/api/blade-article/article/getArticleByDistrictId?type=4&eventType=1&districtId={{districtId}}`,
-              cascader: ['vote'],
-              props: {
-                label: "title",
-                value: "id"
-              },
-              defaultExpandedKeys: ["361102003"],
-              span: 12,
-              labelWidth: 140,
-              rules: [{
-                required: true,
-                message: "请选择投票结果",
-                trigger: "blur",
-              }, ],
-              change: (val) => {
-                console.log("val===>", val)
-                // console.log("form===>",this.form)
-                if (val.value && !this.form.id) {
-                  this.articleRange = val.articleRange;
-                  // this.showDialog = true;
-                  // this.getDetail(val.value, val.articleRange)
-                }
+            option: {
+                height: "auto",
+                calcHeight: 54,
+                dialogWidth: 1150,
+                tip: false,
+                searchShow: true,
+                searchMenuSpan: 3,
+                menuWidth: 350,
+                border: true,
+                //stripe:true,
+                submitBtn: false,
+                emptyBtn: false,
+                index: true,
+                viewBtn: true,
+                selection: true,
+                dialogClickModal: false,
+                column: [{
+                    label: "小区",
+                    prop: "districtId",
+                    searchSpan: 5,
+                    search: true,
+                    type: 'tree',
+                    dicUrl: `/api/blade-district/district/getDistrictTree`,
+                    cascader: ['articleId'],
+                    props: {
+                        label: "name",
+                        value: "id"
+                    },
+                    defaultExpandedKeys: ["361102003"],
+                    span: 12,
+                    labelWidth: 120,
+                    width: 220,
+                    overHidden: true,
+                    rules: [{
+                        required: true,
+                        message: "请选择小区",
+                        trigger: "blur",
+                    },],
+                    disabled: true
+                },
+                {
+                    disabled: true,
+                    label: "户室",
+                    prop: "houseNames",
+                    tags: true,
+                    type: "input",
+                    span: 12,
+                    remote: true,
+                    rules: [{
+                        required: true,
+                        message: '请选择户室',
+                        trigger: 'blur'
+                    }],
+                    focus: ({
+                        value,
+                        column
+                    }) => {
+                        if (!this.form.districtId) {
+                            this.$message({
+                                type: "error",
+                                message: "请先选择小区后,再选择户室!",
+                            })
+                            return
+                        }
+                        this.$refs.userList.show(this.form.districtId)
+                    },
+                },
+                {
+                    label: '维修项目名称',
+                    prop: 'name',
+                    searchLabelWidth: 120,
+                    searchSpan: 5,
+                    search: true,
+                    span: 12,
+                    labelWidth: 140,
+                    rules: [{
+                        required: true,
+                        message: "请输入维修项目名称",
+                        trigger: "blur",
+                    },],
+                    disabled: true
+                },
+                {
+                    label: "预计开工时间",
+                    prop: "runTime",
+                    span: 12,
+                    labelWidth: 140,
+                    type: "date",
+                    format: "yyyy-MM-dd",
+                    valueFormat: "yyyy-MM-dd",
+                    rules: [{
+                        required: true,
+                        message: "请选择合同开始时间",
+                        trigger: "blur",
+                    },],
+                    disabled: true
+                },
+                {
+                    label: "预计竣工时间",
+                    prop: "completedTime",
+                    labelWidth: 140,
+                    span: 12,
+                    type: "date",
+                    format: "yyyy-MM-dd",
+                    valueFormat: "yyyy-MM-dd",
+                    rules: [{
+                        required: true,
+                        message: "请选择合同结束时间",
+                        trigger: "blur",
+                    },],
+                    disabled: true
+                },
+                {
+                    label: "项目分摊方式",
+                    prop: "allocationWay",
+                    value: '按建筑面积分摊',
+                    span: 12,
+                    row: true,
+                    disabled: true
+                },
+                {
+                    label: '联系人',
+                    prop: 'linkman',
+                    span: 12,
+                    labelWidth: 120,
+                    search: true,
+                    searchSpan: 4,
+                    rules: [{
+                        required: true,
+                        message: "请输入联系人",
+                        trigger: "blur",
+                    },],
+                    disabled: true
+                },
+                {
+                    label: '联系方式',
+                    prop: 'linkPhone',
+                    span: 12,
+                    labelWidth: 140,
+                    rules: [{
+                        required: true,
+                        message: "请输入联系方式",
+                        trigger: "blur",
+                    },],
+                    disabled: true
+                },
+                // {
+                //   label: "项目预算总金额(元)",
+                //   prop: "budgetAmount",
+                //   span: 12,
+                //   hide: true,
+                //   labelWidth: 140,
+                //   type: 'number',
+                //   precision: 2,
+                //   value: '0.00',
+                //   disabled: true
+                // },
+                // {
+                //   label: "实际预算金额(元)",
+                //   prop: "actualAmount",
+                //   span: 12,
+                //   hide: true,
+                //   labelWidth: 140,
+                //   type: 'number',
+                //   precision: 2,
+                //   value: '0.00',
+                //   disabled: true
+                // },
+                // {
+                //   label: "自筹金额(元)",
+                //   prop: "selfAmount",
+                //   span: 12,
+                //   hide: true,
+                //   labelWidth: 140,
+                //   type: 'number',
+                //   precision: 2,
+                //   value: '0.00',
+                //   disabled: true
+                // },
+                // {
+                //   label: "预算应拨付金额(元)",
+                //   prop: "budgetAppropriateAmount",
+                //   span: 12,
+                //   hide: true,
+                //   labelWidth: 140,
+                //   type: 'number',
+                //   precision: 2,
+                //   value: '0.00',
+                //   disabled: true
+                // },
+                {
+                    disabled: true,
+                    display: false,
+                    hide: true,
+                    parent: false,
+                    label: "投票结果",
+                    prop: "articleId",
+                    search: false,
+                    viewDisabled: false,
+                    type: 'select',
+                    dicUrl: `/api/blade-article/article/getArticleByDistrictId?type=4&eventType=1&districtId={{districtId}}`,
+                    cascader: ['vote'],
+                    props: {
+                        label: "title",
+                        value: "id"
+                    },
+                    defaultExpandedKeys: ["361102003"],
+                    span: 12,
+                    labelWidth: 140,
+                    rules: [{
+                        required: true,
+                        message: "请选择投票结果",
+                        trigger: "blur",
+                    },],
+                    change: (val) => {
+                        console.log("val===>", val)
+                        // console.log("form===>",this.form)
+                        if (val.value && !this.form.id) {
+                            this.articleRange = val.articleRange
+                            // this.showDialog = true;
+                            // this.getDetail(val.value, val.articleRange)
+                        }
 
-              }
-            },
+                    }
+                },
 
-            {
-              disabled: true,
-              display: false,
-              span: 24,
-              hide: true,
-              prop: "vote",
-              slot: true,
-              label: "投票详情",
-              labelWidth: 140,
+                {
+                    disabled: true,
+                    display: false,
+                    span: 24,
+                    hide: true,
+                    prop: "vote",
+                    slot: true,
+                    label: "投票详情",
+                    labelWidth: 140,
 
-            },
+                },
 
-            {
-              label: "项目摘要",
-              span: 24,
-              hide: true,
-              prop: "projectDigest",
-              placeholder: "例如:“XX小区XX栋XX设施设备维修,总的预算金额是X,是否含有审价,本次维修涉及范围共XX户,总面积的建筑面积为XX平方米”",
-              labelWidth: 140,
-              type: "textarea",
-              disabled: true
+                {
+                    label: "项目摘要",
+                    span: 24,
+                    hide: true,
+                    prop: "projectDigest",
+                    placeholder: "例如:“XX小区XX栋XX设施设备维修,总的预算金额是X,是否含有审价,本次维修涉及范围共XX户,总面积的建筑面积为XX平方米”",
+                    labelWidth: 140,
+                    type: "textarea",
+                    disabled: true
+                },
+                {
+                    label: "项目进度描述",
+                    span: 24,
+                    hide: true,
+                    prop: "projectDescribe",
+                    labelWidth: 140,
+                    type: "textarea",
+                    disabled: true
+                },
+                // {
+                //   label: '施工方案附件',
+                //   prop: 'constructionSchemeUrls',
+                //   type: 'upload',
+                //   span: 24,
+                //   hide: true,
+                //   labelWidth: 140,
+                //   multiple: true,
+                //   // showFileList: true,
+                //   propsHttp: {
+                //     res: 'data',
+                //     name: "originalName",
+                //     url: "link"
+                //   },
+                //   action: '/api/blade-resource/oss/endpoint/put-file-attach',
+                //   rules: [{
+                //     required: true,
+                //     message: "请上传施工方案",
+                //     trigger: "blur",
+                //   }, ],
+                // }
+                {
+                    label: "维修资金使用申请审批表",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file1",
+                    type: "upload",
+                    dataType: 'object',
+                    listType: "text",
+                    props: {
+                        label: 'fileUrl',
+                        value: 'fileName'
+                    },
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "申请使用维修资金的报告、附维修部位彩色照片、业委会(物管会)会议纪要(社区意见)",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file2",
+                    type: "upload",
+                    dataType: 'object',
+                    listType: "text",
+                    props: {
+                        label: 'fileUrl',
+                        value: 'fileName'
+                    },
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "公示单,预算,现场勘察图片、公示照片(公示期7天)",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file3",
+                    type: "upload",
+                    listType: "text",
+                    dataType: 'object',
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "维修单位出具的工程款发票(验收合格后以竣工决算审核报告审定金额开具)",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file4",
+                    type: "upload",
+                    listType: "text",
+                    dataType: 'object',
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "应急维修需提供专业机构出具的检验检测报告或(乡镇人民政府)街道办事处现场核实意见",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file5",
+                    type: "upload",
+                    listType: "text",
+                    dataType: 'object',
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "业主签名表或线上表决记录(应急情况不提供)",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file6",
+                    type: "upload",
+                    listType: "text",
+                    dataType: 'object',
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "政府采购资料",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file7",
+                    type: "upload",
+                    listType: "text",
+                    dataType: 'object',
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "维修和更新、改造方案、维修项目的协议或合同",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file8",
+                    type: "upload",
+                    listType: "text",
+                    dataType: 'object',
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "维修改造工程竣工验收单一式两份(维修完工需经申请人签字);维修项目签证单(超出预算清单内容的需出具签证单)",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file9",
+                    type: "upload",
+                    listType: "text",
+                    dataType: 'object',
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "维修项目决算、造价机构出具的决算审价报告",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file10",
+                    type: "upload",
+                    listType: "text",
+                    dataType: 'object',
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                {
+                    label: "业主委员会情况登记表;经办人或代理人证件(复印件),复印件上签名、联系电话",
+                    slot: true,
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file11",
+                    type: "upload",
+                    listType: "text",
+                    dataType: 'object',
+                    action: "/api/blade-resource/oss/endpoint/put-file-attach",
+                    propsHttp: {
+                        res: "data",
+                        name: 'name',
+                        url: "link",
+                    },
+                    span: 24,
+                    hide: true,
+                    disabled: true,
+                    // rules: [{
+                    //   required: true,
+                    //   message: "请上传文件",
+                    //   trigger: "blur",
+                    // }],
+                },
+                ],
             },
-            {
-              label: "项目进度描述",
-              span: 24,
-              hide: true,
-              prop: "projectDescribe",
-              labelWidth: 140,
-              type: "textarea",
-              disabled: true
-            },
-            {
-              label: '施工方案附件',
-              prop: 'constructionSchemeUrls',
-              type: 'upload',
-              span: 24,
-              hide: true,
-              labelWidth: 140,
-              multiple: true,
-              // showFileList: true,
-              propsHttp: {
-                res: 'data',
-                name: "originalName",
-                url: "link"
-              },
-              action: '/api/blade-resource/oss/endpoint/put-file-attach',
-              rules: [{
-                required: true,
-                message: "请上传施工方案",
-                trigger: "blur",
-              }, ],
-            }
-          ],
-        },
-        topictData: [],
-        topicTitle: "",
-        articleRange: ""
-      }
+            topictData: [],
+            topicTitle: "",
+            articleRange: ""
+        }
     },
 
     watch: {
-      'form.districtId': {
-        handler(newData) {
-          const column = this.findObject(this.option.column, "articleId")
-          if (newData && this.form.articleId) {
-            column.display = true;
-          } else {
-            column.display = false
-          }
-        }
-      },
+        'form.districtId': {
+            handler (newData) {
+                const column = this.findObject(this.option.column, "articleId")
+                if (newData && this.form.articleId) {
+                    column.display = true
+                } else {
+                    column.display = false
+                }
+            }
+        },
 
 
-      'form.articleId': {
-        handler(newData) {
-          this.getVoteDetail(this.form.articleId, this.articleRange)
-          const column = this.findObject(this.option.column, "vote")
-          if (newData) {
-            column.display = true;
-          } else {
-            column.display = false
-          }
-        }
-      },
+        'form.articleId': {
+            handler (newData) {
+                this.getVoteDetail(this.form.articleId, this.articleRange)
+                const column = this.findObject(this.option.column, "vote")
+                if (newData) {
+                    column.display = true
+                } else {
+                    column.display = false
+                }
+            }
+        },
 
     },
 
+    computed: {
+        showDownLoadButton () {
+            return (item) => {
+                if (item in this.form && JSON.stringify(this.form[item]) != '') {
+                    return true
+                } else {
+                    return false
+                }
+            }
+        }
+    },
 
 
-    created() {
-      this.init();
+    created () {
+        this.init()
     },
     methods: {
-      init() {
-        this.processInstanceId = this.$route.params.processInstanceId;
-        this.businessId = this.$route.params.businessId;
-        historyFlowList(this.processInstanceId).then(res => {
-          const data = res.data;
-          if (data.success) {
-            this.flowList = data.data;
-          }
-        })
-        getPropertyCapitalApply(this.businessId).then(res => {
-          const data = res.data;
-          if (data.success) {
-            this.form = data.data;
-          }
-        })
-      },
-      handleCancel() {
-        this.$router.$avueRouter.closeTag();
-        this.$router.push({
-          path: `/work/start`
-        });
-      },
+        init () {
+            this.processInstanceId = this.$route.params.processInstanceId
+            this.businessId = this.$route.params.businessId
+            historyFlowList(this.processInstanceId).then(res => {
+                const data = res.data
+                if (data.success) {
+                    this.flowList = data.data
+                }
+            })
+            getPropertyCapitalApply(this.businessId).then(res => {
+                const data = res.data
+                if (data.success) {
+                    this.form = data.data
+                    if (this.form.attachment) {
+                        this.form.attachment = JSON.parse(this.form.attachment)
+                        this.form.attachment.forEach(item => {
+                            let name = item.name
+                            this.form[name] = item
+                        })
+                        console.log("*********555***********" + JSON.stringify(this.form))
+                    }
+                }
+            })
+        },
+        handleCancel () {
+            this.$router.$avueRouter.closeTag()
+            this.$router.push({
+                path: `/work/start`
+            })
+        },
 
-      getVoteDetail(articleId, districtId) {
-        let params = {
-          level: 1,
-          articleId: articleId,
-          districtId: districtId
-        }
-        getLists(1, 10, params).then(res => {
-          const data = res.data.data
-          if (data.length) {
-            this.topictData = data[0].children;
-            this.topicTitle = data[0].discussContent;
-          }
-        })
-      },
+        getVoteDetail (articleId, districtId) {
+            let params = {
+                level: 1,
+                articleId: articleId,
+                districtId: districtId
+            }
+            getLists(1, 10, params).then(res => {
+                const data = res.data.data
+                if (data.length) {
+                    this.topictData = data[0].children
+                    this.topicTitle = data[0].discussContent
+                }
+            })
+        },
 
-      openUserPopup(row) {
-        this.$refs.DeitDiscussion.openUser(row, 1, [this.form.districtId])
-      },
+        openUserPopup (row) {
+            this.$refs.DeitDiscussion.openUser(row, 1, [this.form.districtId])
+        },
+
+        downLoad (fileObj) {
+            window.open(fileObj.fileUrl)
+        } 
     }
-  }
+}
 </script>
 
 
 <style>
-  .workOrderStyle {
+.workOrderStyle {
     font-weight: normal;
-  }
+}
 </style>
diff --git a/src/views/property/process/maintenanceFundApply/edit.vue b/src/views/property/process/maintenanceFundApply/edit.vue
index 7eb648f..a8f283d 100644
--- a/src/views/property/process/maintenanceFundApply/edit.vue
+++ b/src/views/property/process/maintenanceFundApply/edit.vue
@@ -1,7 +1,7 @@
 <template>
-  <basic-container>
-    <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-      <!--  <el-row type="flex" class="row-bg" justify="end">
+    <basic-container>
+        <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+            <!--  <el-row type="flex" class="row-bg" justify="end">
         <el-form-item>
           <el-button @click="handleCancel">关闭</el-button>
         </el-form-item>
@@ -9,544 +9,864 @@
 
 
 
-      <el-card shadow="hover">
-        <div slot="header">
-          <span>审批信息</span>
-        </div>
-        <avue-form ref="crud" :option="option" v-model="form" @submit="handleSubmit">
+            <el-card shadow="hover">
+                <div slot="header">
+                    <span>审批信息</span>
+                </div>
+                <avue-form ref="crud" :option="option" v-model="form" @submit="handleSubmit"
+                    :upload-exceed="uploadExceed">
 
-          <template slot-scope="{ row, size, index }" slot="vote">
-            <div>{{ topicTitle }}</div>
-            <el-table :data="topictData" v-if="topictData.length">
-              <el-table-column width="300" property="optionContent" label="选项"
-                label-class-name="workOrderStyle"></el-table-column>
-              <el-table-column width="300" property="number" label="人数" label-class-name="workOrderStyle">
-              </el-table-column>
-              <el-table-column width="300">
-                <template slot-scope="scope">
-                  <el-button slot="reference" type="primary" size="mini"
-                    @click="openUserPopup(scope.row, 1)">详情</el-button>
-                </template>
-              </el-table-column>
-            </el-table>
-          </template>
+                    <template slot-scope="{ row, size, index }" slot="vote">
+                        <div>{{ topicTitle }}</div>
+                        <el-table :data="topictData" v-if="topictData.length">
+                            <el-table-column width="300" property="optionContent" label="选项"
+                                label-class-name="workOrderStyle"></el-table-column>
+                            <el-table-column width="300" property="number" label="人数" label-class-name="workOrderStyle">
+                            </el-table-column>
+                            <el-table-column width="300">
+                                <template slot-scope="scope">
+                                    <el-button slot="reference" type="primary" size="mini"
+                                        @click="openUserPopup(scope.row, 1)">详情</el-button>
+                                </template>
+                            </el-table-column>
+                        </el-table>
+                    </template>
 
 
-          <template slot-scope="{size}" slot="menuForm">
-            <el-button type="primary" :size="size" @click="$refs.crud.submit()">保存信息</el-button>
-            <!-- <el-button :size="size" @click="$refs.form.resetForm()">自定义清空</el-button> -->
-          </template>
-        </avue-form>
+                    <template slot-scope="{size}" slot="menuForm">
+                        <el-button type="primary" :size="size" @click="$refs.crud.submit()">保存信息</el-button>
+                        <!-- <el-button :size="size" @click="$refs.form.resetForm()">自定义清空</el-button> -->
+                    </template>
+                </avue-form>
 
 
-      </el-card>
+            </el-card>
 
 
-      <el-card shadow="hover">
-        <div slot="header">
-          <span>流程信息</span>
-        </div>
-        <el-row type="flex" class="row-bg">
-          <el-timeline>
-            <el-timeline-item :key="flow.id" :timestamp="flow.createTime" v-for="flow in flowList" placement="top">
-              <el-card shadow="hover">
-                <p>{{ flow.assigneeName }} 在 [{{ flow.createTime }}] 开始处理 [{{ flow.historyActivityName }}] 环节</p>
-                <p v-if="flow.historyActivityDurationTime !== ''">任务历时 [{{ flow.historyActivityDurationTime }}]</p>
-                <p v-if="flow.comment !== ''">批复意见: [{{ flow.comment }}]</p>
-                <p v-if="flow.endTime !== ''">结束时间: [{{ flow.endTime }}]</p>
-              </el-card>
-            </el-timeline-item>
-          </el-timeline>
-        </el-row>
-      </el-card>
-      <el-card shadow="hover">
-        <div slot="header">
-          <span>流程跟踪</span>
-        </div>
-        <el-row class="row-bg">
-          <flow-design :is-display="true" :process-instance-id="processInstanceId"></flow-design>
-        </el-row>
-      </el-card>
-    </el-form>
+            <el-card shadow="hover">
+                <div slot="header">
+                    <span>流程信息</span>
+                </div>
+                <el-row type="flex" class="row-bg">
+                    <el-timeline>
+                        <el-timeline-item :key="flow.id" :timestamp="flow.createTime" v-for="flow in flowList"
+                            placement="top">
+                            <el-card shadow="hover">
+                                <p>{{ flow.assigneeName }} 在 [{{ flow.createTime }}] 开始处理 [{{ flow.historyActivityName
+                                    }}] 环节</p>
+                                <p v-if="flow.historyActivityDurationTime !== ''">任务历时 [{{
+            flow.historyActivityDurationTime }}]</p>
+                                <p v-if="flow.comment !== ''">批复意见: [{{ flow.comment }}]</p>
+                                <p v-if="flow.endTime !== ''">结束时间: [{{ flow.endTime }}]</p>
+                            </el-card>
+                        </el-timeline-item>
+                    </el-timeline>
+                </el-row>
+            </el-card>
+            <el-card shadow="hover">
+                <div slot="header">
+                    <span>流程跟踪</span>
+                </div>
+                <el-row class="row-bg">
+                    <flow-design :is-display="true" :process-instance-id="processInstanceId"></flow-design>
+                </el-row>
+            </el-card>
+        </el-form>
 
-    <div style="text-align: center;
+        <div style="text-align: center;
     position: fixed;
     left: 0;
     right: 0;
     bottom: 10px;">
-      <el-button type="primary" @click="handleAgree">重新提交</el-button>
-      <el-button type="danger" @click="handleDisagree">关闭申请</el-button>
-    </div>
+            <el-button type="primary" @click="handleAgree">重新提交</el-button>
+            <el-button type="danger" @click="handleDisagree">关闭申请</el-button>
+        </div>
 
-    <deitDiscussion ref="DeitDiscussion">
-    </deitDiscussion>
+        <deitDiscussion ref="DeitDiscussion"> </deitDiscussion>
 
-  </basic-container>
+        <userList ref="userList" @selectPersonList="selectPersonList"></userList>
+
+    </basic-container>
 </template>
 
 <script>
-  import {
+import {
     historyFlowList,
     leaveDetail
-  } from "@/api/work/process";
+} from "@/api/work/process"
+import userList from "../../components/userList.vue"
 
-  import {
+import {
     getList,
     remove,
     update,
     add,
     getPropertyCapitalApply
-  } from "@/api/property/propertyCapitalApply";
-  import {
+} from "@/api/property/propertyCapitalApply"
+import {
     completeTask
-  } from "@/api/work/work";
-  import {
+} from "@/api/work/work"
+import {
     getLists
-  } from "@/api/discuss/topics"
-  import deitDiscussion from "../../components/deitDiscussion.vue"
-  export default {
+} from "@/api/discuss/topics"
+import deitDiscussion from "../../components/deitDiscussion.vue"
+export default {
     components: {
-      deitDiscussion
+        deitDiscussion,
+        userList
     },
-    data() {
-      return {
-        taskId: '',
-        businessId: '',
-        processInstanceId: '',
-        src: '',
-        flowList: [],
-        form: {
-          flow: {
-            assigneeName: '',
-          },
-          startTime: '',
-          endTime: '',
-          reason: '',
-          comment: '',
-        },
-        option: {
-          height: "auto",
-          calcHeight: 54,
-          dialogWidth: 1150,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 3,
-          menuWidth: 350,
-          border: true,
-          //stripe:true,
-          submitBtn: false,
-          emptyBtn: false,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          dialogClickModal: false,
-          column: [{
-              label: "小区",
-              prop: "districtId",
-              searchSpan: 5,
-              search: true,
-              type: 'tree',
-              dicUrl: `/api/blade-district/district/getDistrictTree`,
-              cascader: ['articleId'],
-              props: {
-                label: "name",
-                value: "id"
-              },
-              defaultExpandedKeys: ["361102003"],
-              span: 12,
-              labelWidth: 140,
-              width: 220,
-              overHidden: true,
-              rules: [{
-                required: true,
-                message: "请选择小区",
-                trigger: "blur",
-              }, ],
+    data () {
+        return {
+            taskId: '',
+            businessId: '',
+            processInstanceId: '',
+            src: '',
+            flowList: [],
+            form: {
+                flow: {
+                    assigneeName: '',
+                },
+                startTime: '',
+                endTime: '',
+                reason: '',
+                comment: '',
             },
-            {
-              label: '维修项目名称',
-              prop: 'name',
-              searchLabelWidth: 120,
-              searchSpan: 5,
-              search: true,
-              span: 12,
-              labelWidth: 140,
-              rules: [{
-                required: true,
-                message: "请输入维修项目名称",
-                trigger: "blur",
-              }, ],
-            },
-            {
-              label: "预计开工时间",
-              prop: "runTime",
-              span: 12,
-              labelWidth: 140,
-              type: "date",
-              format: "yyyy-MM-dd",
-              valueFormat: "yyyy-MM-dd",
-              rules: [{
-                required: true,
-                message: "请选择合同开始时间",
-                trigger: "blur",
-              }, ],
-            },
-            {
-              label: "预计竣工时间",
-              prop: "completedTime",
-              labelWidth: 140,
-              span: 12,
-              type: "date",
-              format: "yyyy-MM-dd",
-              valueFormat: "yyyy-MM-dd",
-              rules: [{
-                required: true,
-                message: "请选择合同结束时间",
-                trigger: "blur",
-              }, ],
-            },
-            {
-              label: "楼栋",
-              prop: "buildingName",
-              value: '',
-              span: 12,
-              row: true,
-              rules: [{
-                required: true,
-                message: "请输入楼栋",
-                trigger: "blur",
-              }, ],
-            },
-            {
-              label: '联系人',
-              prop: 'linkman',
-              span: 12,
-              labelWidth: 140,
-              search: true,
-              searchSpan: 4,
-              rules: [{
-                required: true,
-                message: "请输入联系人",
-                trigger: "blur",
-              }, ],
-            },
-            {
-              label: '联系方式',
-              prop: 'linkPhone',
-              span: 12,
-              labelWidth: 140,
-              rules: [{
-                required: true,
-                message: "请输入联系方式",
-                trigger: "blur",
-              }, ],
-            },
-            {
-              label: "项目预算总金额(元)",
-              prop: "budgetAmount",
-              span: 12,
-              hide: true,
-              labelWidth: 140,
-              type: 'number',
-              precision: 2,
-              value: '0.00',
-            },
-            {
-              label: "实际预算金额(元)",
-              prop: "actualAmount",
-              span: 12,
-              hide: true,
-              labelWidth: 140,
-              type: 'number',
-              precision: 2,
-              value: '0.00',
-            },
-            {
-              label: "自筹金额(元)",
-              prop: "selfAmount",
-              span: 12,
-              hide: true,
-              labelWidth: 140,
-              type: 'number',
-              precision: 2,
-              value: '0.00',
-            },
-            {
-              label: "预算应拨付金额(元)",
-              prop: "budgetAppropriateAmount",
-              span: 12,
-              hide: true,
-              labelWidth: 140,
-              type: 'number',
-              precision: 2,
-              value: '0.00',
-            },
-            {
-              display: false,
-              hide: true,
-              parent: false,
-              label: "投票结果",
-              prop: "articleId",
-              search: false,
-              viewDisabled: false,
-              type: 'select',
-              dicUrl: `/api/blade-article/article/getArticleByDistrictId?type=4&eventType=1&districtIdList={{districtId}}`,
-              // slot: true,
-              formslot: true,
-              cascader: ['vote'],
-              props: {
-                label: "title",
-                value: "id"
-              },
-              defaultExpandedKeys: ["361102003"],
-              span: 12,
-              width: 260,
-              rules: [{
-                required: true,
-                message: "请选择投票结果",
-                trigger: "blur",
-              }, ],
-              change: (val) => {
-                console.log("val===>", val)
-                // console.log("form===>",this.form)
+            option: {
+                height: "auto",
+                calcHeight: 54,
+                dialogWidth: 1150,
+                tip: false,
+                searchShow: true,
+                searchMenuSpan: 3,
+                menuWidth: 350,
+                border: true,
+                //stripe:true,
+                submitBtn: false,
+                emptyBtn: false,
+                index: true,
+                viewBtn: true,
+                selection: true,
+                dialogClickModal: false,
+                column: [{
+                    label: "小区",
+                    prop: "districtId",
+                    searchSpan: 5,
+                    search: true,
+                    type: 'tree',
+                    dicUrl: `/api/blade-district/district/getDistrictTree`,
+                    cascader: ['articleId'],
+                    props: {
+                        label: "name",
+                        value: "id"
+                    },
+                    defaultExpandedKeys: ["361102003"],
+                    span: 12,
+                    labelWidth: 140,
+                    width: 220,
+                    overHidden: true,
+                    rules: [{
+                        required: true,
+                        message: "请选择小区",
+                        trigger: "blur",
+                    },],
+                },
+                {
+                    disabled: true,
+                    label: "户室",
+                    prop: "houseNames",
+                    tags: true,
+                    type: "input",
+                    span: 12,
+                    remote: true,
+                    rules: [{
+                        required: true,
+                        message: '请选择户室',
+                        trigger: 'blur'
+                    }],
+                    focus: ({
+                        value,
+                        column
+                    }) => {
+                        if (!this.form.districtId) {
+                            this.$message({
+                                type: "error",
+                                message: "请先选择小区后,再选择户室!",
+                            })
+                            return
+                        }
+                        this.$refs.userList.show(this.form.districtId)
+                    },
+                },
+                {
+                    label: '维修项目名称',
+                    prop: 'name',
+                    searchLabelWidth: 120,
+                    searchSpan: 5,
+                    search: true,
+                    span: 12,
+                    labelWidth: 140,
+                    rules: [{
+                        required: true,
+                        message: "请输入维修项目名称",
+                        trigger: "blur",
+                    },],
+                },
+                {
+                    label: "预计开工时间",
+                    prop: "runTime",
+                    span: 12,
+                    labelWidth: 140,
+                    type: "date",
+                    format: "yyyy-MM-dd",
+                    valueFormat: "yyyy-MM-dd",
+                    rules: [{
+                        required: true,
+                        message: "请选择合同开始时间",
+                        trigger: "blur",
+                    },],
+                },
+                {
+                    label: "预计竣工时间",
+                    prop: "completedTime",
+                    labelWidth: 140,
+                    span: 12,
+                    type: "date",
+                    format: "yyyy-MM-dd",
+                    valueFormat: "yyyy-MM-dd",
+                    rules: [{
+                        required: true,
+                        message: "请选择合同结束时间",
+                        trigger: "blur",
+                    },],
+                },
+                {
+                    label: "楼栋",
+                    prop: "buildingName",
+                    value: '',
+                    span: 12,
+                    row: true,
+                    rules: [{
+                        required: true,
+                        message: "请输入楼栋",
+                        trigger: "blur",
+                    },],
+                },
+                {
+                    label: '联系人',
+                    prop: 'linkman',
+                    span: 12,
+                    labelWidth: 140,
+                    search: true,
+                    searchSpan: 4,
+                    rules: [{
+                        required: true,
+                        message: "请输入联系人",
+                        trigger: "blur",
+                    },],
+                },
+                {
+                    label: '联系方式',
+                    prop: 'linkPhone',
+                    span: 12,
+                    labelWidth: 140,
+                    rules: [{
+                        required: true,
+                        message: "请输入联系方式",
+                        trigger: "blur",
+                    },],
+                },
+                {
+                    label: "项目预算总金额(元)",
+                    prop: "budgetAmount",
+                    span: 12,
+                    hide: true,
+                    labelWidth: 140,
+                    type: 'number',
+                    precision: 2,
+                    value: '0.00',
+                },
+                {
+                    label: "实际预算金额(元)",
+                    prop: "actualAmount",
+                    span: 12,
+                    hide: true,
+                    labelWidth: 140,
+                    type: 'number',
+                    precision: 2,
+                    value: '0.00',
+                },
+                {
+                    label: "自筹金额(元)",
+                    prop: "selfAmount",
+                    span: 12,
+                    hide: true,
+                    labelWidth: 140,
+                    type: 'number',
+                    precision: 2,
+                    value: '0.00',
+                },
+                {
+                    label: "预算应拨付金额(元)",
+                    prop: "budgetAppropriateAmount",
+                    span: 12,
+                    hide: true,
+                    labelWidth: 140,
+                    type: 'number',
+                    precision: 2,
+                    value: '0.00',
+                },
+                {
+                    display: false,
+                    hide: true,
+                    parent: false,
+                    label: "投票结果",
+                    prop: "articleId",
+                    search: false,
+                    viewDisabled: false,
+                    type: 'select',
+                    dicUrl: `/api/blade-article/article/getArticleByDistrictId?type=4&eventType=1&districtIdList={{districtId}}`,
+                    formslot: true,
+                    cascader: ['vote'],
+                    props: {
+                        label: "title",
+                        value: "id"
+                    },
+                    defaultExpandedKeys: ["361102003"],
+                    span: 12,
+                    width: 260,
+                    rules: [{
+                        required: true,
+                        message: "请选择投票结果",
+                        trigger: "blur",
+                    },],
+                    change: (val) => {
+                        console.log("val===>", val)
+                    }
+                },
 
+                {
+                    display: false,
+                    span: 24,
+                    hide: true,
+                    prop: "vote",
+                    slot: true,
+                    label: "投票详情",
+                    labelWidth: 140,
 
-              }
+                },
+                {
+                    label: "项目摘要",
+                    span: 24,
+                    hide: true,
+                    prop: "projectDigest",
+                    placeholder: "例如:“XX小区XX栋XX设施设备维修,总的预算金额是X,是否含有审价,本次维修涉及范围共XX户,总面积的建筑面积为XX平方米”",
+                    labelWidth: 140,
+                    type: "textarea",
+                },
+                {
+                    label: "项目进度描述",
+                    span: 24,
+                    hide: true,
+                    prop: "projectDescribe",
+                    labelWidth: 140,
+                    type: "textarea",
+                },
+                // {
+                //   label: '施工方案附件',
+                //   prop: 'constructionSchemeUrls',
+                //   type: 'upload',
+                //   span: 24,
+                //   hide: true,
+                //   labelWidth: 140,
+                //   multiple: true,
+                //   // showFileList: true,
+                //   propsHttp: {
+                //     res: 'data',
+                //     name: "originalName",
+                //     url: "link"
+                //   },
+                //   action: '/api/blade-resource/oss/endpoint/put-file-attach',
+                //   rules: [{
+                //     required: true,
+                //     message: "请上传施工方案",
+                //     trigger: "blur",
+                //   }, ],
+                // }
+                {
+                    label: "维修资金使用申请审批表",
+                    offset: 2,
+                    labelPosition: "top",
+                    prop: "file1",
+                    type: "upload",
+                    dataType: 'object',
+                    listType: "picture-card",
+                    limit: 1,
+                    props: {
+                        label: 'fileUrl',
+                        value: 'fileName'
+                    },
+                    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: "file2",
+                    type: "upload",
+                    dataType: 'object',
+                    listType: "picture-card",
+                    limit: 1,
+                    props: {
+                        label: 'fileUrl',
+                        value: 'fileName'
+                    },
+                    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: "picture-card",
+                    limit: 1,
+                    dataType: 'object',
+                    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: "picture-card",
+                    limit: 1,
+                    dataType: 'object',
+                    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: "picture-card",
+                    limit: 1,
+                    dataType: 'object',
+                    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: "picture-card",
+                    limit: 1,
+                    dataType: 'object',
+                    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: "picture-card",
+                    limit: 1,
+                    dataType: 'object',
+                    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: "picture-card",
+                    limit: 1,
+                    dataType: 'object',
+                    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: "picture-card",
+                    limit: 1,
+                    dataType: 'object',
+                    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: "picture-card",
+                    limit: 1,
+                    dataType: 'object',
+                    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: "picture-card",
+                    limit: 1,
+                    dataType: 'object',
+                    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",
+                    // }],
+                },
+                ],
             },
-
-            {
-              display: false,
-              span: 24,
-              hide: true,
-              prop: "vote",
-              slot: true,
-              label: "投票详情",
-              labelWidth: 140,
-
-            },
-            {
-              label: "项目摘要",
-              span: 24,
-              hide: true,
-              prop: "projectDigest",
-              placeholder: "例如:“XX小区XX栋XX设施设备维修,总的预算金额是X,是否含有审价,本次维修涉及范围共XX户,总面积的建筑面积为XX平方米”",
-              labelWidth: 140,
-              type: "textarea",
-            },
-            {
-              label: "项目进度描述",
-              span: 24,
-              hide: true,
-              prop: "projectDescribe",
-              labelWidth: 140,
-              type: "textarea",
-            },
-            // {
-            //   label: "批复意见",
-            //   span: 24,
-            //   hide: true,
-            //   prop: "comment",
-            //   labelWidth: 140,
-            //   type: "textarea",
-            //   rules: [{
-            //     required: true,
-            //     message: "请输入批复意见",
-            //     trigger: "blur",
-            //   }, ],
-            // },
-            {
-              label: '施工方案附件',
-              prop: 'constructionSchemeUrls',
-              type: 'upload',
-              span: 24,
-              hide: true,
-              labelWidth: 140,
-              multiple: true,
-              // showFileList: true,
-              propsHttp: {
-                res: 'data',
-                name: "originalName",
-                url: "link"
-              },
-              action: '/api/blade-resource/oss/endpoint/put-file-attach',
-              rules: [{
-                required: true,
-                message: "请上传施工方案",
-                trigger: "blur",
-              }, ],
-            }
-          ],
-        },
-        topictData: [],
-        topicTitle: "",
-        articleRange: ""
-      }
+            topictData: [],
+            topicTitle: "",
+            articleRange: ""
+        }
     },
 
 
     watch: {
-      'form.districtId': {
-        handler(newData) {
-          const column = this.findObject(this.option.column, "articleId")
-          if (newData && this.form.articleId) {
-            column.display = true;
-          } else {
-            column.display = false
-          }
-        }
-      },
+        'form.districtId': {
+            handler (newData) {
+                const column = this.findObject(this.option.column, "articleId")
+                if (newData && this.form.articleId) {
+                    column.display = true
+                } else {
+                    column.display = false
+                }
+            }
+        },
 
 
-      'form.articleId': {
-        handler(newData) {
-          this.getVoteDetail(this.form.articleId, this.articleRange)
-          const column = this.findObject(this.option.column, "vote")
-          if (newData) {
-            column.display = true;
-          } else {
-            column.display = false
-          }
-        }
-      },
+        'form.articleId': {
+            handler (newData) {
+                this.getVoteDetail(this.form.articleId, this.articleRange)
+                const column = this.findObject(this.option.column, "vote")
+                if (newData) {
+                    column.display = true
+                } else {
+                    column.display = false
+                }
+            }
+        },
 
     },
 
 
-    created() {
-      this.init();
+    created () {
+        this.init()
     },
-    beforeRouteUpdate(to, from, next) {
-      // 在当前路由改变,但是该组件被复用时调用
-      // 举例来说,对于一个带有动态参数的路径 /foo/:id,在 /foo/1 和 /foo/2 之间跳转的时候
-      // 由于会渲染同样的 Foo 组件,因此组件实例会被复用。而这个钩子就会在这个情况下被调用
-      // 可以访问组件实例 `this`
-      if (to.fullPath !== from.fullPath) {
-        next();
-        this.init();
-      }
+    beforeRouteUpdate (to, from, next) {
+        // 在当前路由改变,但是该组件被复用时调用
+        // 举例来说,对于一个带有动态参数的路径 /foo/:id,在 /foo/1 和 /foo/2 之间跳转的时候
+        // 由于会渲染同样的 Foo 组件,因此组件实例会被复用。而这个钩子就会在这个情况下被调用
+        // 可以访问组件实例 `this`
+        if (to.fullPath !== from.fullPath) {
+            next()
+            this.init()
+        }
     },
     methods: {
-      handleSubmit(form, done, loading) {
-        if (form.constructionSchemeUrls.length > 0) {
-          var urls = []
-          var split = form.constructionSchemeUrls.split(",");
-          split.forEach(url => {
-            var names = url.split("jczz/");
-            urls.push(names[1])
-          })
-          form.constructionSchemeUrls = urls.join(",")
-        }
-        update(form).then(
-          () => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
-            done();
-          },
-          (error) => {
-            window.console.log(error);
-            loading();
-          }
-        );
-      },
-      init() {
-        this.taskId = this.$route.params.taskId;
-        this.processInstanceId = this.$route.params.processInstanceId;
-        this.businessId = this.$route.params.businessId;
-        historyFlowList(this.processInstanceId).then(res => {
-          const data = res.data;
-          if (data.success) {
-            this.flowList = data.data;
-          }
-        })
-        getPropertyCapitalApply(this.businessId).then(res => {
-          const data = res.data;
-          if (data.success) {
-            this.form = data.data;
-          }
-        })
-      },
-      handleAgree() {
-        // if (!this.form.comment) {
-        //   this.$message.warning('请先填写批复意见');
-        //   return;
-        // }
-        const params = {
-          taskId: this.taskId,
-          processInstanceId: this.processInstanceId,
-          flag: 'ok',
-          comment: this.form.comment,
-        };
-        completeTask(params).then(res => {
-          const data = res.data;
-          if (data.success) {
-            this.$message.success(data.msg);
-            this.$router.$avueRouter.closeTag();
-            this.$router.push({
-              path: `/property/propertyCapitalApply`
-            });
-          } else {
-            this.$message.error(data.msg || '提交失败');
-          }
-        })
-      },
-      handleDisagree() {
-        this.form.comment = '关闭申请'
-        if (!this.form.comment) {
-          this.$message.warning('请先填写批复意见');
-          return;
-        }
-        const params = {
-          taskId: this.taskId,
-          processInstanceId: this.processInstanceId,
-          comment: this.form.comment,
-        };
-        completeTask(params).then(res => {
-          const data = res.data;
-          if (data.success) {
-            this.$message.success(data.msg);
-            this.$router.$avueRouter.closeTag();
-            this.$router.push({
-              path: `/property/propertyCapitalApply`
-            });
-          } else {
-            this.$message.error(data.msg || '提交失败');
-          }
-        })
-      },
-      handleCancel() {
-        this.$router.$avueRouter.closeTag();
-        this.$router.push({
-          path: `/property/todo`
-        });
-      },
 
-      getVoteDetail(articleId, districtId) {
-        let params = {
-          level: 1,
-          articleId: articleId,
-          districtId: districtId
-        }
-        getLists(1, 10, params).then(res => {
-          const data = res.data.data
-          if (data.length) {
-            this.topictData = data[0].children;
-            this.topicTitle = data[0].discussContent;
-          }
-        })
-      },
+        uploadAfter (res, done, loading, column) {
+            console.log(res, column)
+            // this.form.attachment = []
+            this.form.attachment.push({
+                fileName: column.label,
+                fileUrl: res.link,
+                fileType: this.getFileExtension(res.originalName),
+            })
+            done()
+            // this.$message.success('上传后的方法')
+        },
 
-      openUserPopup(row) {
-        this.$refs.DeitDiscussion.openUser(row, 1, [this.form.districtId])
-      },
+        getFileExtension (filename) {
+            var lastDotIndex = filename.lastIndexOf('.')
+            if (lastDotIndex !== -1) {
+                return filename.substring(lastDotIndex + 1)
+            }
+            return ''
+        },
+
+        selectPersonList (personList) {
+            console.log(personList, "++++++++++++")
+            this.personList = personList
+            let houseNameList = personList.map(e => {
+                if (e.houseName) {
+                    return e.houseName
+                }
+            })
+            this.form.houseName = houseNameList.join(",")
+            let addressCodeList = personList.map(e => {
+                if (e.addressCode) {
+                    return e.addressCode
+                }
+            })
+            this.form.addressCodes = addressCodeList.join(",")
+        },
+        handleSubmit (form, done, loading) {
+            if (form.constructionSchemeUrls.length > 0) {
+                var urls = []
+                var split = form.constructionSchemeUrls.split(",")
+                split.forEach(url => {
+                    var names = url.split("jczz/")
+                    urls.push(names[1])
+                })
+                form.constructionSchemeUrls = urls.join(",")
+            }
+            update(form).then(
+                () => {
+                    this.onLoad(this.page)
+                    this.$message({
+                        type: "success",
+                        message: "操作成功!",
+                    })
+                    done()
+                },
+                (error) => {
+                    window.console.log(error)
+                    loading()
+                }
+            )
+        },
+        init () {
+            this.taskId = this.$route.params.taskId
+            this.processInstanceId = this.$route.params.processInstanceId
+            this.businessId = this.$route.params.businessId
+            historyFlowList(this.processInstanceId).then(res => {
+                const data = res.data
+                if (data.success) {
+                    this.flowList = data.data
+                }
+            })
+            getPropertyCapitalApply(this.businessId).then(res => {
+                const data = res.data
+                if (data.success) {
+                    this.form = data.data
+                }
+            })
+        },
+        handleAgree () {
+            // if (!this.form.comment) {
+            //   this.$message.warning('请先填写批复意见');
+            //   return;
+            // }
+            const params = {
+                taskId: this.taskId,
+                processInstanceId: this.processInstanceId,
+                flag: 'ok',
+                comment: this.form.comment,
+            }
+            completeTask(params).then(res => {
+                const data = res.data
+                if (data.success) {
+                    this.$message.success(data.msg)
+                    this.$router.$avueRouter.closeTag()
+                    this.$router.push({
+                        path: `/property/propertyCapitalApply`
+                    })
+                } else {
+                    this.$message.error(data.msg || '提交失败')
+                }
+            })
+        },
+        handleDisagree () {
+            this.form.comment = '关闭申请'
+            if (!this.form.comment) {
+                this.$message.warning('请先填写批复意见')
+                return
+            }
+            const params = {
+                taskId: this.taskId,
+                processInstanceId: this.processInstanceId,
+                comment: this.form.comment,
+            }
+            completeTask(params).then(res => {
+                const data = res.data
+                if (data.success) {
+                    this.$message.success(data.msg)
+                    this.$router.$avueRouter.closeTag()
+                    this.$router.push({
+                        path: `/property/propertyCapitalApply`
+                    })
+                } else {
+                    this.$message.error(data.msg || '提交失败')
+                }
+            })
+        },
+        handleCancel () {
+            this.$router.$avueRouter.closeTag()
+            this.$router.push({
+                path: `/property/todo`
+            })
+        },
+
+        getVoteDetail (articleId, districtId) {
+            let params = {
+                level: 1,
+                articleId: articleId,
+                districtId: districtId
+            }
+            getLists(1, 10, params).then(res => {
+                const data = res.data.data
+                if (data.length) {
+                    this.topictData = data[0].children
+                    this.topicTitle = data[0].discussContent
+                }
+            })
+        },
+
+        openUserPopup (row) {
+            this.$refs.DeitDiscussion.openUser(row, 1, [this.form.districtId])
+        },
+
+        uploadExceed (limit, files, fileList, column) {
+            console.log(limit, files, fileList, column)
+            this.$message.error('超出上传限制文件数量')
+        }
     }
-  }
+}
 </script>
 
 <style>
-  .workOrderStyle {
+.workOrderStyle {
     font-weight: normal;
-  }
+}
 </style>
diff --git a/src/views/property/propertyCapitalApply.vue b/src/views/property/propertyCapitalApply.vue
index 3c66426..7001f08 100644
--- a/src/views/property/propertyCapitalApply.vue
+++ b/src/views/property/propertyCapitalApply.vue
@@ -4,7 +4,8 @@
     <avue-crud :option="option" :table-loading="loading" :data="data" :page.sync="page" ref="crud" @row-del="rowDel"
       v-model="form" :permission="permissionList" @row-update="rowUpdate" @row-save="rowSave" :before-open="beforeOpen"
       @search-change="searchChange" @search-reset="searchReset" @selection-change="selectionChange"
-      @current-change="currentChange" @size-change="sizeChange" @refresh-change="refreshChange" @on-load="onLoad">
+      @current-change="currentChange" @size-change="sizeChange" :upload-after="uploadAfter"
+      @refresh-change="refreshChange" @on-load="onLoad">
       <template slot-scope="{ row, size, index }" slot="voteForm">
         <div>{{ topicTitle }}</div>
         <el-table :data="topictData" v-if="topictData.length">
@@ -19,8 +20,6 @@
           </el-table-column>
         </el-table>
       </template>
-
-
 
       <template slot-scope="{ row, size, index }" slot="menu">
 
@@ -77,6 +76,9 @@
 
     <deitDiscussion ref="DeitDiscussion">
     </deitDiscussion>
+
+    <userList ref="userList" @selectPersonList="selectPersonList"></userList>
+
   </basic-container>
 </template>
 <script>
@@ -87,6 +89,7 @@
     add,
     getPropertyCapitalApply
   } from "@/api/property/propertyCapitalApply"
+  import userList from "./components/userList.vue";
   import {
     mapGetters
   } from "vuex"
@@ -101,13 +104,14 @@
 
   export default {
     components: {
-      deitDiscussion
+      deitDiscussion,
+      userList
     },
     data() {
       return {
         showDialog: false,
         form: {
-          // constructionSchemeUrls:[]
+          attachment: []
         },
         query: {},
         loading: true,
@@ -178,7 +182,37 @@
                 trigger: "blur",
               }, ],
             },
-
+            {
+              // display: false,
+              label: "户室",
+              prop: "houseNames",
+              tags: true,
+              type: "input",
+              // multiple: true,
+              span: 12,
+              // offset: 8,
+              remote: true,
+              // hide: true,
+              // row: true,
+              rules: [{
+                required: true,
+                message: '请选择户室',
+                trigger: 'blur'
+              }],
+              focus: ({
+                value,
+                column
+              }) => {
+                if (!this.form.districtId) {
+                  this.$message({
+                    type: "error",
+                    message: "请先选择小区后,再选择户室!",
+                  })
+                  return
+                }
+                this.$refs.userList.show(this.form.districtId)
+              },
+            },
             {
               label: '维修项目名称',
               prop: 'name',
@@ -242,17 +276,14 @@
               }, ],
             },
             {
-              label: "楼栋",
-              prop: "buildingName",
-              value: '',
+              label: "项目分摊方式",
+              prop: "allocationWay",
+              value: '按建筑面积分摊',
               span: 12,
-              row: true,
-              rules: [{
-                required: true,
-                message: "请输入楼栋",
-                trigger: "blur",
-              }, ],
+              // row: true,
+
             },
+
             {
               width: 110,
               label: '联系人',
@@ -315,42 +346,42 @@
                 value: 7,
               }]
             },
-            {
-              label: "项目预算总金额(元)",
-              prop: "budgetAmount",
-              span: 12,
-              hide: true,
-              type: 'number',
-              precision: 2,
-              value: '0.00'
-            },
-            {
-              label: "实际预算金额(元)",
-              prop: "actualAmount",
-              span: 12,
-              hide: true,
-              type: 'number',
-              precision: 2,
-              value: '0.00'
-            },
-            {
-              label: "自筹金额(元)",
-              prop: "selfAmount",
-              span: 12,
-              hide: true,
-              type: 'number',
-              precision: 2,
-              value: '0.00'
-            },
-            {
-              label: "预算应拨付金额(元)",
-              prop: "budgetAppropriateAmount",
-              span: 12,
-              hide: true,
-              type: 'number',
-              precision: 2,
-              value: '0.00'
-            },
+            // {
+            //   label: "项目预算总金额(元)",
+            //   prop: "budgetAmount",
+            //   span: 12,
+            //   hide: true,
+            //   type: 'number',
+            //   precision: 2,
+            //   value: '0.00'
+            // },
+            // {
+            //   label: "实际预算金额(元)",
+            //   prop: "actualAmount",
+            //   span: 12,
+            //   hide: true,
+            //   type: 'number',
+            //   precision: 2,
+            //   value: '0.00'
+            // },
+            // {
+            //   label: "自筹金额(元)",
+            //   prop: "selfAmount",
+            //   span: 12,
+            //   hide: true,
+            //   type: 'number',
+            //   precision: 2,
+            //   value: '0.00'
+            // },
+            // {
+            //   label: "预算应拨付金额(元)",
+            //   prop: "budgetAppropriateAmount",
+            //   span: 12,
+            //   hide: true,
+            //   type: 'number',
+            //   precision: 2,
+            //   value: '0.00'
+            // },
             {
               display: false,
               hide: true,
@@ -378,11 +409,8 @@
               }, ],
               change: (val) => {
                 console.log("val===>", val)
-                // console.log("form===>",this.form)
                 if (val.value && !this.form.id) {
                   this.articleRange = val.articleRange;
-                  // this.showDialog = true;
-                  // this.getDetail(val.value, val.articleRange)
                 }
 
               }
@@ -433,13 +461,17 @@
             //   }]
             // },
             {
-
               label: "维修资金使用申请审批表",
               offset: 2,
               labelPosition: "top",
               prop: "file1",
               type: "upload",
+              dataType: 'object',
               listType: "text",
+              props: {
+                label: 'name',
+                value: 'url'
+              },
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -448,19 +480,19 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
-
               label: "申请使用维修资金的报告、附维修部位彩色照片、业委会(物管会)会议纪要(社区意见)",
               offset: 2,
               labelPosition: "top",
               prop: "file2",
               type: "upload",
+              dataType: 'object',
               listType: "text",
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
@@ -470,20 +502,20 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
-
-              label: "公示单,现场勘察图片、公示照片(公示期7天)",
+              label: "公示单,预算,现场勘察图片、公示照片(公示期7天)",
               offset: 2,
               labelPosition: "top",
               prop: "file3",
               type: "upload",
               listType: "text",
+              dataType: 'object',
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -492,20 +524,20 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
-
               label: "维修单位出具的工程款发票(验收合格后以竣工决算审核报告审定金额开具)",
               offset: 2,
               labelPosition: "top",
               prop: "file4",
               type: "upload",
               listType: "text",
+              dataType: 'object',
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -514,11 +546,11 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
               label: "应急维修需提供专业机构出具的检验检测报告或(乡镇人民政府)街道办事处现场核实意见",
@@ -527,6 +559,7 @@
               prop: "file5",
               type: "upload",
               listType: "text",
+              dataType: 'object',
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -535,20 +568,20 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
-
               label: "业主签名表或线上表决记录(应急情况不提供)",
               offset: 2,
               labelPosition: "top",
               prop: "file6",
               type: "upload",
               listType: "text",
+              dataType: 'object',
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -557,11 +590,11 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
               label: "政府采购资料",
@@ -570,6 +603,7 @@
               prop: "file7",
               type: "upload",
               listType: "text",
+              dataType: 'object',
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -578,20 +612,20 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
-
               label: "维修和更新、改造方案、维修项目的协议或合同",
               offset: 2,
               labelPosition: "top",
               prop: "file8",
               type: "upload",
               listType: "text",
+              dataType: 'object',
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -600,20 +634,20 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
-
               label: "维修改造工程竣工验收单一式两份(维修完工需经申请人签字);维修项目签证单(超出预算清单内容的需出具签证单)",
               offset: 2,
               labelPosition: "top",
               prop: "file9",
               type: "upload",
               listType: "text",
+              dataType: 'object',
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -622,20 +656,20 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
-
               label: "维修项目决算、造价机构出具的决算审价报告",
               offset: 2,
               labelPosition: "top",
               prop: "file10",
               type: "upload",
               listType: "text",
+              dataType: 'object',
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -644,20 +678,20 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
             {
-
               label: "业主委员会情况登记表;经办人或代理人证件(复印件),复印件上签名、联系电话",
               offset: 2,
               labelPosition: "top",
               prop: "file11",
               type: "upload",
               listType: "text",
+              dataType: 'object',
               action: "/api/blade-resource/oss/endpoint/put-file-attach",
               propsHttp: {
                 res: "data",
@@ -666,16 +700,15 @@
               },
               span: 24,
               hide: true,
-              rules: [{
-                required: true,
-                message: "请上传文件",
-                trigger: "blur",
-              }],
+              // rules: [{
+              //   required: true,
+              //   message: "请上传文件",
+              //   trigger: "blur",
+              // }],
             },
           ],
         },
         data: [],
-
         optionList: {
           header: false,
           menu: false,
@@ -773,7 +806,44 @@
     },
     methods: {
 
+      uploadAfter(res, done, loading, column) {
+        console.log(res, column)
+        // this.form.attachment = []
+        this.form.attachment.push({
+          fileName: column.label,
+          fileUrl: res.link,
+          name: column.prop,
+          originalName: res.originalName,
+          fileType: this.getFileExtension(res.originalName),
+        })
+        done()
+        // this.$message.success('上传后的方法')
+      },
 
+      getFileExtension(filename) {
+        var lastDotIndex = filename.lastIndexOf('.');
+        if (lastDotIndex !== -1) {
+          return filename.substring(lastDotIndex + 1);
+        }
+        return '';
+      },
+
+      selectPersonList(personList) {
+        console.log(personList, "++++++++++++")
+        this.personList = personList
+        let houseNameList = personList.map(e => {
+          if (e.houseName) {
+            return e.houseName
+          }
+        })
+        this.form.houseNames = houseNameList.join(",")
+        let addressCodeList = personList.map(e => {
+          if (e.addressCode) {
+            return e.addressCode
+          }
+        })
+        this.form.addressCodes = addressCodeList.join(",")
+      },
       rowView() {
         this.showDialog = false;
       },
@@ -821,34 +891,35 @@
         //   })
         //   row.constructionSchemeUrls = urls.join(",")
         // }
+        console.log("保存+++++++++" + JSON.stringify(row))
 
-        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) {
+        // 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(",")
-          }
-        }
+        //     files.push(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];
-          }
-        }
+        row.attachment = JSON.stringify(row.attachment);
+        // for (let j in row) {
+        //   if (keys.indexOf(j) != -1) {
+        //     delete row[j];
+        //   }
+        // }
         console.log("提交===>", row);
         row.propertyFlag = 1
         add(row).then(
diff --git a/vue.config.js b/vue.config.js
index 8d63659..23a6fc5 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -9,49 +9,65 @@
  * Copyright (c) 2024 by shuishen, All Rights Reserved.
  */
 module.exports = {
-    //路径前缀
-    publicPath: "/",
-    lintOnSave: true,
-    productionSourceMap: false,
-    chainWebpack: (config) => {
-        //忽略的打包文件
-        config.externals({
-            vue: "Vue",
-            "vue-router": "VueRouter",
-            vuex: "Vuex",
-            axios: "axios",
-            "element-ui": "ELEMENT",
-        })
-        const entry = config.entry("app")
-        entry.add("babel-polyfill").end()
-        entry.add("classlist-polyfill").end()
-        entry.add("@/mock").end()
+  //路径前缀
+  publicPath: "/",
+  lintOnSave: true,
+  productionSourceMap: false,
+  chainWebpack: (config) => {
+    //忽略的打包文件
+    config.externals({
+      vue: "Vue",
+      "vue-router": "VueRouter",
+      vuex: "Vuex",
+      axios: "axios",
+      "element-ui": "ELEMENT",
+    })
+    const entry = config.entry("app")
+    entry.add("babel-polyfill").end()
+    entry.add("classlist-polyfill").end()
+    entry.add("@/mock").end()
+  },
+  css: {
+    extract: {
+      ignoreOrder: true,
     },
-    css: {
-        extract: {
-            ignoreOrder: true,
+  },
+  //开发模式反向代理配置,生产模式请使用Nginx部署并配置反向代理
+  devServer: {
+    port: 1888,
+    proxy: {
+      "/api/blade-resource/oss": {
+        //本地服务接口地址
+        // target: "http://192.168.31.188:9528",
+        target: "https://srgdjczzxtpt.com:2080/api",
+        // target: "https://kt39592615.goho.co",
+        // target: "http://z4042833u6.wicp.vip",
+        // target: "http://localhost:9528",
+        // target: "http://192.168.2.109:9528",
+        //远程演示服务地址,可用于直接启动项目
+        //target: 'https://saber.bladex.cn/api',
+        changeOrigin: true,
+        ws: true,
+        pathRewrite: {
+          "^/api": "/",
         },
-    },
-    //开发模式反向代理配置,生产模式请使用Nginx部署并配置反向代理
-    devServer: {
-        port: 1888,
-        proxy: {
-            "/api": {
-                //本地服务接口地址
-                target:"http://192.168.2.111:9528",
-                // target: "https://srgdjczzxtpt.com:2080/api",
-                // target: "https://kt39592615.goho.co",
-                // target: "http://z4042833u6.wicp.vip",
-                // target: "http://localhost:9528",
-                // target: "http://192.168.2.109:9528",
-                //远程演示服务地址,可用于直接启动项目
-                //target: 'https://saber.bladex.cn/api',
-                changeOrigin: true,
-                ws: true,
-                pathRewrite: {
-                    "^/api": "/",
-                },
-            },
+      },
+      "/api": {
+        //本地服务接口地址
+        target: "http://192.168.31.188:9528",
+        // target: "https://srgdjczzxtpt.com:2080/api",
+        // target: "https://kt39592615.goho.co",
+        // target: "http://z4042833u6.wicp.vip",
+        // target: "http://localhost:9528",
+        // target: "http://192.168.2.109:9528",
+        //远程演示服务地址,可用于直接启动项目
+        //target: 'https://saber.bladex.cn/api',
+        changeOrigin: true,
+        ws: true,
+        pathRewrite: {
+          "^/api": "/",
         },
+      },
     },
+  },
 }

--
Gitblit v1.9.3