scorpio il y a 2 ans
Parent
commit
193575fcac

+ 24 - 0
src/api/store/index.js

@@ -54,5 +54,29 @@ export default {
       '/blade-project-manage-v2/project-dispatch/v2/pre-storage-delete',
       params
     )
+  },
+  /**
+   * 项目上报至发改
+   * @param params
+   * @returns {Promise | Promise<unknown>}
+   */
+  report(params) {
+    return fetch(
+      '/blade-project-manage-v2/project-dispatch/v2/storage',
+      params,
+      'post'
+    )
+  },
+  /**
+   * 添加预审问题
+   * @param params
+   * @returns {Promise | Promise<unknown>}
+   */
+  addIssue(params) {
+    return fetch(
+      '/blade-project-manage-v2/project-dispatch/v2/add-warning',
+      params,
+      'post'
+    )
   }
 }

+ 15 - 2
src/views/home/component/params/params1.vue

@@ -166,6 +166,19 @@
           </el-form-item>
         </div>
 
+        <div class="full-width flex">
+          <el-form-item
+            label="项目代码"
+            class="flex-child-average"
+            style="flex: 1"
+          >
+            <el-input v-model="form.project_code" />
+          </el-form-item>
+          <el-form-item label="监管平台代码" class="flex-child-average ml-20">
+            <el-input v-model="form.regulatory_platform_code" />
+          </el-form-item>
+        </div>
+
         <div class="full-width flex">
           <el-form-item label="计划开工时间" style="flex: 1" class="full-width">
             <el-date-picker
@@ -284,14 +297,14 @@
             </div>
           </el-form-item>
           <el-form-item
-            label="是否纳入省集中开工项目"
+            label="是否纳入省集中开工"
             style="flex: 1"
             class="ml-20"
           >
             <div class="full-width">
               <el-select
                 v-model="form.is_provincial_level_construction"
-                placeholder="是否纳入省集中开工项目"
+                placeholder="是否纳入省集中开工"
                 class="full-width"
               >
                 <el-option

+ 3 - 1
src/views/msg/index.vue

@@ -1,7 +1,7 @@
 <template>
   <el-card shadow="hover">
     <div>
-      <el-empty description="暂无数据" v-if="data"></el-empty>
+      <el-empty description="暂无数据" v-if="data.length === 0"></el-empty>
       <el-collapse @change="change" accordion v-else>
         <el-collapse-item v-for="i in data" :name="i.id" :key="i.id">
           <template #title>
@@ -38,6 +38,7 @@ meta: { 'back':true}
 </route>
 <script>
 import msg2 from '@/views/msg/component/msg2.vue'
+
 export default {
   components: {
     msg2
@@ -90,6 +91,7 @@ export default {
   margin-right: 10px;
   border-radius: 10px;
 }
+
 :deep(.el-collapse-item__header):hover {
   background-color: #efefef;
 }

+ 56 - 1
src/views/store/component/info2.vue

@@ -16,20 +16,54 @@
         @on-load="onLoad"
       >
         <template #menu-left>
-          <div class="flex flex-center flex-justify-start padding">
+          <div class="flex flex-center flex-justify-start padding-left">
             <el-button type="primary">系统问题预警</el-button>
             <el-button>项目预审问题</el-button>
           </div>
         </template>
+        <template #menu-right>
+          <el-button
+            type="primary"
+            plain
+            v-if="user.info.viewStage === 1"
+            @click="show = true"
+            >新 增
+          </el-button>
+        </template>
       </avue-crud>
     </div>
+    <el-dialog v-model="show" title="新增预审问题" width="800px">
+      <div>
+        <el-input type="textarea" rows="5" v-model="problem"></el-input>
+        <div class="full-width flex flex-justify-end mt-20">
+          <el-button plain type="primary" @click="show = false"
+            >取 消
+          </el-button>
+          <el-button type="primary" @click="addIssue">确 定</el-button>
+        </div>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
 <script>
+import { useStore } from '@/store/user.js'
+
 export default {
+  setup() {
+    const user = useStore()
+    return { user }
+  },
+  props: {
+    info: {
+      type: Object,
+      default: null
+    }
+  },
   data() {
     return {
+      problem: '',
+      show: false,
       form: {},
       data: [
         {
@@ -99,6 +133,27 @@ export default {
         ]
       }
     }
+  },
+  methods: {
+    addIssue() {
+      if (this.problem.length === 0) {
+        this.$message.error('请输入预审问题描述')
+        return
+      }
+      this.$api.store
+        .addIssue({
+          projectId: this.info.projectId,
+          content: this.problem,
+          type: 2
+        })
+        .then(res => {
+          if (res.code === 200) {
+            console.log(res)
+          } else {
+            console.log(res)
+          }
+        })
+    }
   }
 }
 </script>

+ 1 - 1
src/views/store/detail.vue

@@ -21,7 +21,7 @@
         class="flex-child-average mb-20 full-width"
         style="min-height: 650px; padding: 0; width: 99%"
       >
-        <info2></info2>
+        <info2 :info="info"></info2>
       </el-card>
     </div>
   </div>

+ 28 - 4
src/views/store/index.vue

@@ -20,11 +20,13 @@
         :data="data"
         ref="crud"
         v-model="form"
+        v-model:page="page"
         :before-open="beforeOpen"
         @row-del="rowDel"
-        @row-save="rowSave"
-        @row-update="rowUpdate"
         @selection-change="selectionChange"
+        @current-change="currentChange"
+        @size-change="sizeChange"
+        @refresh-change="refreshChange"
         @on-load="onLoad"
       >
         <template #menu-left="{ row }">
@@ -51,7 +53,7 @@
             {{ row.hasFiles === 1 ? '已上传' : '未上传' }}
           </el-tag>
         </template>
-        <template #isUp="{ row }">
+        <template #isup="{ row }">
           <el-tag>
             {{ row.isUp === 1 ? '已上报' : '未上报' }}
           </el-tag>
@@ -114,7 +116,7 @@ export default {
           },
           {
             label: '上报状态',
-            prop: 'isUp'
+            prop: 'isup'
           }
         ]
       },
@@ -132,9 +134,11 @@ export default {
             const project = ele.project
             delete project.id
             delete ele.project
+            ele.isup = ele.isUp
             ele.hasfile = ele.hasFile
             return Object.assign(ele, project)
           })
+          this.page.total = res.data.total
         }
       })
     },
@@ -167,11 +171,31 @@ export default {
         done()
       }
     },
+    currentChange(currentPage) {
+      this.page.current = currentPage
+    },
+    sizeChange(pageSize) {
+      this.page.size = pageSize
+    },
+    refreshChange() {
+      this.onLoad()
+    },
     report() {
       const tmps = this.selectList.filter(ele => ele.hasFiles === 0)
       if (tmps.length > 0) {
         this.$message.error('操作失败,存在未上传入库附件的项目')
+        return
       }
+      this.$api.store
+        .report({ ids: this.selectList.map(ele => ele.id).join(',') })
+        .then(res => {
+          if (res.code === 200) {
+            this.$message.success(res.msg)
+            this.onLoad()
+          } else {
+            this.$message.error(res.msg)
+          }
+        })
     }
   }
 }