scorpio 2 년 전
부모
커밋
fdd2a74bba

+ 46 - 2
src/views/home/component/dash.vue

@@ -50,6 +50,39 @@
           }}
         </el-button>
       </template>
+      <template #plan_storage_time-header="{column}">
+        <div class='flex flex-center'>
+          <div class='mr-5'>{{ (column || {}).label }}</div>
+          <el-tooltip content='红色为计划开工时间,蓝色为实际开工时间'>
+            <el-icon>
+              <InfoFilled/>
+            </el-icon>
+          </el-tooltip>
+        </div>
+      </template>
+      <template #plan_storage_time="{row}">
+        <div class='flex flex-center'>
+          <div class='mr-5 red' v-if='row.is_storage === 0 '>{{ row.plan_storage_time }}</div>
+          <div class='mr-5 blue' v-else>{{ row.storage_time }}</div>
+        </div>
+      </template>
+
+      <template #plan_commencement_time-header="{column}">
+        <div class='flex flex-center'>
+          <div class='mr-5'>{{ (column || {}).label }}</div>
+          <el-tooltip content='红色为计划开工时间,蓝色为实际开工时间'>
+            <el-icon>
+              <InfoFilled/>
+            </el-icon>
+          </el-tooltip>
+        </div>
+      </template>
+      <template #plan_commencement_time="{row}">
+        <div class='flex flex-center'>
+          <div class='mr-5 red' v-if='row.is_start === undefined ||row.is_start === 0 '>{{ row.plan_commencement_time }}</div>
+          <div class='mr-5 blue' v-else>{{ row.start_time }}</div>
+        </div>
+      </template>
     </avue-crud>
     <!--    新增-->
     <el-dialog v-model="showAdd"
@@ -124,7 +157,8 @@
       </div>
     </el-dialog>
     <form-dialog :dialogType="diaType" @close="formDialogClose" @export='exportExcel' :ids='selectList'/>
-    <summary-dialog :dialogType="diaType" @close="diaType = -1" :select-num='selectList.length === 0 ? page.total : selectList.length'
+    <summary-dialog :dialogType="diaType" @close="diaType = -1"
+                    :select-num='selectList.length === 0 ? page.total : selectList.length'
                     @export='exportExcelTotal'/>
   </div>
 </template>
@@ -204,7 +238,7 @@ export default {
             }
           },
           {
-            label: '股(科)室',
+            label: '责任单位',
             prop: 'create_dept_name',
             width: 180
           },
@@ -228,6 +262,11 @@ export default {
               }
             ]
           },
+          {
+            label: '计划(实际)入库时间',
+            prop: 'plan_storage_time',
+            width: 120
+          },
           {
             label: '是否开工',
             prop: 'is_start',
@@ -243,6 +282,11 @@ export default {
               }
             ]
           },
+          {
+            label: '计划(实际)开工时间',
+            prop: 'plan_commencement_time',
+            width: 120
+          },
           {
             label: '创建时间',
             prop: 'create_time',

+ 5 - 8
src/views/home/component/form_dialog.vue

@@ -8,7 +8,6 @@
                @close="close"
                width="45%">
       <div class='flex flex-center flex-col'>
-        <img src="../../../assets/img/import.png" class="pic"/>
         <div class="flex flex-center full-width flex-justify-start">
           <span class="bold mr-20">文件上传</span>
           <div>
@@ -67,9 +66,6 @@
                @close="close"
                title="数据表格导出"
                width="45%">
-      <div class='flex flex-center'>
-        <img src="../../../assets/img/export.png" class="pic"/>
-      </div>
       <div class="flex flex-col">
         <el-autocomplete
             v-model="keyWords"
@@ -222,7 +218,7 @@ export default {
       this.$api.params.getListByKey({ type: this.fieldType[index].dictKey, export: 1 }).then(res => {
         if (res.code === 200) {
           const tmps = res.data.records.map(e => {
-            e.checked = this.fieldType[index].params === undefined ? true : this.fieldType[index].params.findIndex(sub => sub.id === e.id) > -1
+            e.checked = this.fieldType[index].params === undefined ? false : this.fieldType[index].params.findIndex(sub => sub.id === e.id) > -1
             return e
           }).filter(sub => sub.code !== 'name')
           if (this.fieldType[index].params !== undefined) {
@@ -255,8 +251,10 @@ export default {
       }
       this.loading = true
       this.$message.success('正在导入,请稍后...')
-      if (this.user.info.viewStage === 0) {
-        this.dept.isReport = 1
+      if (this.user.info.viewStage === 1) {
+        this.dept = Object.assign({}, this.dept, { isReport: 1 })
+      } else {
+        this.dept = Object.assign({}, this.dept, { isReport: 0 })
       }
       this.$refs.upload.submit()
     },
@@ -268,7 +266,6 @@ export default {
       }
     },
     allChange (res) {
-      console.log(res)
       this.fieldType[this.selectIndex].params = this.fieldType[this.selectIndex].params.map(sub => {
         sub.checked = res
         return sub

+ 14 - 0
src/views/home/component/params/params1.vue

@@ -68,6 +68,8 @@
                 start-placeholder="开始日期"
                 end-placeholder="截止日期"
                 style='width: 100%;'
+                format='YYYY-MM-DD'
+                value-format='YYYY-MM-DD'
             />
           </el-form-item>
         </div>
@@ -79,6 +81,8 @@
                 type="date"
                 style="width:100%;"
                 placeholder="计划开工时间"
+                format='YYYY-MM-DD'
+                value-format='YYYY-MM-DD'
             />
           </el-form-item>
           <el-form-item label="实际开工时间" style='flex:1' class='ml-20'>
@@ -87,6 +91,8 @@
                 type="date"
                 style="width:100%;"
                 placeholder="实际开工时间"
+                format='YYYY-MM-DD'
+                value-format='YYYY-MM-DD'
             />
           </el-form-item>
         </div>
@@ -97,6 +103,8 @@
                 type="date"
                 style="width:100%;"
                 placeholder="计划入库时间"
+                format='YYYY-MM-DD'
+                value-format='YYYY-MM-DD'
             />
           </el-form-item>
           <el-form-item label="实际入库时间" style='flex:1' class='ml-20'>
@@ -105,6 +113,8 @@
                 type="date"
                 style="width:100%;"
                 placeholder="实际入库时间"
+                format='YYYY-MM-DD'
+                value-format='YYYY-MM-DD'
             />
           </el-form-item>
         </div>
@@ -115,6 +125,8 @@
                 type="date"
                 style="width:100%;"
                 placeholder="计划竣工时间"
+                format='YYYY-MM-DD'
+                value-format='YYYY-MM-DD'
             />
           </el-form-item>
           <el-form-item label="实际竣工时间" style='flex:1' class='ml-20'>
@@ -123,6 +135,8 @@
                 type="date"
                 style="width:100%;"
                 placeholder="实际竣工时间"
+                format='YYYY-MM-DD'
+                value-format='YYYY-MM-DD'
             />
           </el-form-item>
         </div>

+ 64 - 17
src/views/home/component/params/params4.vue

@@ -16,6 +16,14 @@
         <template #menu='{row}'>
           <el-button v-if='detail.canUpdate' text type='primary' icon='el-icon-edit' @click='edit(row)'>编辑</el-button>
         </template>
+        <template #doc='{row}'>
+          <div class='flex flex-center' @click='edit = true'>
+            <div v-if='row.edit === false'>{{ detail[row.prop] ? detail[row.prop] : '暂无' }}</div>
+            <el-input v-else v-model='newDetail[row.prop]' :placeholder='detail[row.prop]'></el-input>
+            <el-button circle @click='changeEdit(row)' icon='el-icon-edit' class='ml-10 pointer'>
+            </el-button>
+          </div>
+        </template>
       </avue-crud>
     </div>
     <el-dialog v-model='show'>
@@ -45,64 +53,95 @@ export default {
       default: null
     }
   },
+  watch: {
+    detail: {
+      handler (val) {
+        this.newDetail = val
+        delete this.newDetail._id
+      },
+      immediate: true
+    }
+  },
   data () {
     return {
+      newDetail: null,
+      canEdit: false,
+      docNo: '',
       show: false,
       uploads: false,
       currentRow: null,
       disabled: true,
       form: {},
-      // eslint-disable-next-line vue/no-dupe-keys
       data: [
         {
           name: '建设项目用地预审',
           deptName: '',
-          docNo: '凤环函〔2018147]号'
+          docNo: '凤环函〔2018147]号',
+          edit: false,
+          prop: 'approval_no-land_use_pre_audit'
         },
         {
           name: '选址意见书',
           deptName: '',
-          docNo: '选字第201900011号'
+          docNo: '选字第201900011号',
+          edit: false,
+          prop: 'approval_no-site_select_opinions'
         },
         {
           name: '环境影响评价批复',
           deptName: '生态环境局',
-          docNo: ''
+          edit: false,
+          docNo: '',
+          prop: 'approval_no-eia'
         },
         {
           name: '项目建议书批复',
           deptName: '',
-          docNo: ''
+          docNo: '',
+          edit: false,
+          prop: 'approval_no-advice_ratify'
         },
         {
           name: '可行性研究报告批复',
           deptName: '发改局',
-          docNo: ''
+          edit: false,
+          docNo: '',
+          prop: 'approval_no-feasibility_study'
         },
         {
           name: '初步设计及概算批复',
           deptName: '',
-          docNo: ''
+          docNo: '',
+          edit: false,
+          prop: 'approval_no-design'
         },
         {
           name: '建设用地规划许可证',
           deptName: '住建局',
-          docNo: ''
+          docNo: '',
+          edit: false,
+          prop: 'approval_no-land_user'
         },
         {
           name: '开工许可证',
           deptName: '住建局',
-          docNo: ''
+          docNo: '',
+          edit: false,
+          prop: 'approval_no-permit_no'
         },
         {
           name: '施工许可证',
           deptName: '住建局',
-          docNo: ''
+          docNo: '',
+          edit: false,
+          prop: 'approval_no-construction_permit'
         },
         {
           name: '建设工程规划许可证',
           deptName: '住建局',
-          docNo: ''
+          docNo: '',
+          edit: false,
+          prop: 'approval_no-construction_plan_permit'
         }
       ],
       option: {
@@ -110,6 +149,7 @@ export default {
         menuAlign: 'center',
         menuWidth: 380,
         size: 'mini',
+        menu: false,
         addBtn: false,
         delBtn: false,
         editBtn: false,
@@ -124,11 +164,6 @@ export default {
             prop: 'name',
             display: false
           },
-          {
-            label: '批复单位',
-            prop: 'deptName',
-            display: false
-          },
           {
             label: '文件',
             prop: 'file',
@@ -137,7 +172,7 @@ export default {
           },
           {
             label: '文号',
-            prop: 'docNo'
+            prop: 'doc'
           }
         ]
       }
@@ -208,6 +243,18 @@ export default {
         this.onLoad()
       }).catch(() => {
       })
+    },
+    changeEdit (res) {
+      res.edit = !res.edit
+      if (res.edit === false) {
+        this.$api.project.proUpdate(this.newDetail).then(res => {
+          if (res.code === 200) {
+            this.$message.success(res.msg)
+          } else {
+            this.$message.error(res.msg)
+          }
+        })
+      }
     }
   }
 }