Selaa lähdekoodia

市政工程|工业工程

刘浩男 1 vuosi sitten
vanhempi
commit
84d529d3d6
2 muutettua tiedostoa jossa 186 lisäystä ja 177 poistoa
  1. 41 0
      src/api/zdsz/engineeringIndustry.js
  2. 145 177
      src/views/zdsz/engineeringIndustry/index.vue

+ 41 - 0
src/api/zdsz/engineeringIndustry.js

@@ -0,0 +1,41 @@
+import request from "@/utils/request";
+
+export function getEngineeIndustryList({type, enginType ='',}) {
+  return request({
+    url: `/zdsz/engineeringIndustry/list?type=${type}&enginType=${enginType}`,
+    method: 'get',
+  })
+}
+
+export function addEngineeEngineeIndustry(data) {
+  return request({
+    url: '/zdsz/engineeringIndustry',
+    method: 'post',
+    data
+  })
+}
+
+export function putEngineeEngineeIndustry(id) {
+  return request({
+    url: `/zdsz/engineeringIndustry/${id}`,
+    method: 'get',
+
+  })
+}
+
+export function EditEngineeEngineeIndustry(data) {
+  return request({
+    url: '/zdsz/engineeringIndustry',
+    method: 'put',
+    data
+  })
+}
+
+export function DelEngineeEngineeIndustry(id) {
+  return request({
+    url: `/zdsz/engineeringIndustry/${id}`,
+    method: 'delete',
+  })
+}
+
+

+ 145 - 177
src/views/zdsz/engineeringIndustry/index.vue

@@ -1,51 +1,24 @@
 
- <!-- 
+ <!--
     *@description: 工业工程
     *@author: yh Fu
     *@date: 2024-01-02 15:51:03
-    *@version: V1.0.5 
+    *@version: V1.0.5
     -->
 
     <template>
         <div class="app-container">
           <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="110px">
-            <el-form-item label="小区" prop="areaId">
-              <el-select v-model="queryParams.areaId" placeholder="请选择小区" filterable @change="getBuildings">
-                <el-option
-                  v-for="obj in areas"
-                  :key="obj.id"
-                  :label="obj.name"
-                  :value="obj.id"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-            <el-form-item label="楼栋" prop="buildingId">
-              <el-select v-model="queryParams.buildingId" placeholder="请选择楼栋" filterable @change="getUnits">
-                <el-option
-                  v-for="obj in builds"
-                  :key="obj.id"
-                  :label="obj.name"
-                  :value="obj.id"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-            <el-form-item label="单元" prop="unitId">
-              <el-select v-model="queryParams.unitId" placeholder="请选择单元" filterable @change="getHouses">
-                <el-option
-                  v-for="obj in units"
-                  :key="obj.id"
-                  :label="obj.name"
-                  :value="obj.id"
-                ></el-option>
-              </el-select>
+            <el-form-item label="建筑单位" prop="unitId">
+              <el-input v-model="queryParams.constructUnit" placeholder="请输入建筑单位名称"></el-input>
             </el-form-item>
-            <el-form-item label="房间号" prop="houseId">
-              <el-select v-model="queryParams.houseId" placeholder="请选择房间号" filterable>
+            <el-form-item label="工程类型" prop="houseId">
+              <el-select v-model="queryParams.enginType" placeholder="请选择类型">
                 <el-option
-                  v-for="obj in houses"
-                  :key="obj.id"
-                  :label="obj.name"
-                  :value="obj.id"
+                  v-for="e in dict.type.engin_type"
+                  :key="e.value"
+                  :label="e.label"
+                  :value="e.value"
                 ></el-option>
               </el-select>
             </el-form-item>
@@ -54,7 +27,7 @@
               <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
             </el-form-item>
           </el-form>
-      
+
           <el-row :gutter="10" class="mb8">
             <el-col :span="1.5">
               <el-button
@@ -63,7 +36,7 @@
                 icon="el-icon-plus"
                 size="mini"
                 @click="handleAdd"
-                v-hasPermi="['zdsz:openbolt:add']"
+                v-hasPermi="['zdsz:engineeringIndustry:add']"
               >新增</el-button>
             </el-col>
             <el-col :span="1.5">
@@ -74,7 +47,7 @@
                 size="mini"
                 :disabled="single"
                 @click="handleUpdate"
-                v-hasPermi="['zdsz:openbolt:edit']"
+                v-hasPermi="['zdsz:engineeringIndustry:edit']"
               >修改</el-button>
             </el-col>
             <el-col :span="1.5">
@@ -85,7 +58,7 @@
                 size="mini"
                 :disabled="multiple"
                 @click="handleDelete"
-                v-hasPermi="['zdsz:openbolt:remove']"
+                v-hasPermi="['zdsz:engineeringIndustry:remove']"
               >删除</el-button>
             </el-col>
             <!--      <el-col :span="1.5">-->
@@ -100,20 +73,17 @@
             <!--      </el-col>-->
             <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
           </el-row>
-      
+
           <el-table v-loading="loading" :data="comprehensiveList" @selection-change="handleSelectionChange">
             <el-table-column type="selection" width="55" align="center" />
             <!--      <el-table-column label="" align="center" prop="id" v-if="true"/>-->
-            <el-table-column label="小区" align="center" prop="areaName" />
-            <el-table-column label="楼栋" align="center" prop="buildingName" />
-            <el-table-column label="单元" align="center" prop="unitName" />
-            <el-table-column label="房间" align="center" prop="houseName" />
-            <el-table-column label="安检是否合格" align="center" prop="isQualified">
-              <template slot-scope="scope">
-                <dict-tag :options="dict.type.pass_check" :value="scope.row.isQualified"/>
-              </template>
-            </el-table-column>
-            <el-table-column label="备注" align="center" prop="remark" show-overflow-tooltip/>
+            <el-table-column label="建筑单位" align="center" prop="constructUnit" />
+            <el-table-column label="项目负责人" align="center" prop="projectHead" />
+            <el-table-column label="现场负责人" align="center" prop="sceneHead" />
+            <el-table-column label="设计负责人" align="center" prop="designHead" />
+            <el-table-column label="设计单位" align="center" prop="designUnit" />
+            <el-table-column label="监理负责人" align="center" prop="supervisionHead" />
+            <el-table-column label="监理单位" align="center" prop="supervisionUnit" />
             <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
               <template slot-scope="scope">
                 <el-button
@@ -121,14 +91,14 @@
                   type="text"
                   icon="el-icon-edit"
                   @click="handleUpdate(scope.row)"
-                  v-hasPermi="['zdsz:comprehensive:edit']"
+                  v-hasPermi="['zdsz:engineeringIndustry:edit']"
                 >修改</el-button>
                 <el-button
                   size="mini"
                   type="text"
                   icon="el-icon-delete"
                   @click="handleDelete(scope.row)"
-                  v-hasPermi="['zdsz:comprehensive:remove']"
+                  v-hasPermi="['zdsz:engineeringIndustry:remove']"
                 >删除</el-button>
                 <el-button
                   size="mini"
@@ -139,7 +109,7 @@
               </template>
             </el-table-column>
           </el-table>
-      
+
           <pagination
             v-show="total>0"
             :total="total"
@@ -176,7 +146,7 @@
               <el-form-item label="建筑单位" prop="constructUnit">
                 <el-input v-model="queryParams.constructUnit" placeholder="请填写建筑单位"></el-input>
               </el-form-item>
-              <el-form-item label="类型" prop="enginTyoe">
+              <el-form-item label="类型" prop="enginType">
                 <el-select v-model="queryParams.enginType" placeholder="请选择类型">
                   <el-option
                     v-for="e in dict.type.engin_type"
@@ -193,9 +163,9 @@
                 <el-input v-model="queryParams.supervisionUnit" placeholder="请填写监理单位"/>
               </el-form-item>
               <el-form-item label="备注" prop="remark">
-                <el-input 
-                  v-model="queryParams.remark" 
-                  type="textarea" 
+                <el-input
+                  v-model="queryParams.remark"
+                  type="textarea"
                   placeholder="请输入内容"
                   class="remark_input"
                   />
@@ -208,10 +178,10 @@
             </div>
           </el-dialog>
           <!-- 节点信息dialog -->
-          <el-dialog :visible="nodeDetailVisible" :rules="nodeRules" title="节点信息" append-to-body customClass="appendElNodeDialog">
+          <el-dialog :visible="nodeDetailVisible" :rules="nodeRules" title="节点信息" append-to-body customClass="appendElNodeDialog" @close="nodeCancel">
             <el-form ref="nodeForm" :model="zEngineeringInfoBo" :rules="nodeRules" label-width="110px">
-              <el-form-item label="节点类型" prop="type">
-                <el-input v-model="nodeType" placeholder="顶管" disabled></el-input>
+              <el-form-item label="节点类型" prop="nodeType">
+                <el-input v-model="zEngineeringInfoBo.nodeType" placeholder="请填写节点类型" disabled></el-input>
               </el-form-item>
               <el-form-item label="施工地址" prop="constructAddre">
                 <el-input v-model="zEngineeringInfoBo.constructAddre" placeholder="请填写施工地址"></el-input>
@@ -294,19 +264,18 @@
           </el-dialog>
         </div>
       </template>
-      
+
       <script>
-      import { listComprehensive, getComprehensive, delComprehensive, addComprehensive, updateComprehensive } from "@/api/zdsz/comprehensive";
-      import {getBuildings} from "@/api/zdsz/building";
-      import {getUnits} from "@/api/zdsz/unit";
-      import {getAreas} from "@/api/zdsz/area";
-      import {getHouses, listHouse} from "@/api/zdsz/house";
-      import { 
-        getEngineeList,                            // 查询工程列表
-        addEnginee,                                // 新增工程
-      } from "@/api/zdsz/enginee"
+      import {
+        getEngineeIndustryList,                            // 查询工程列表
+        addEngineeEngineeIndustry,                         // 新增工程
+        putEngineeEngineeIndustry,                         // 查询工程详情
+        EditEngineeEngineeIndustry,                        // 修改工程
+        DelEngineeEngineeIndustry                          // 删除工程
+      } from "@/api/zdsz/engineeringIndustry"
       import EngineePipe from "@/components/EngineePipe"
-      
+      import {addEnginee} from "@/api/zdsz/enginee";
+
       export default {
         name: "openrepair",
         dicts:['pass_check','is_repair','engin_type','self_closing_valve_type','visit_type'],
@@ -415,7 +384,7 @@
                 value:'0',
                 label:'否'
               }
-            ],                          
+            ],
             segmentedCompressionQualifiedOption:[
               {
                 value:'1',
@@ -425,7 +394,7 @@
                 value:'0',
                 label:'否'
               }
-            ],                          
+            ],
             nodeDetailVisible:false,
             // 表单参数
             form: {},
@@ -491,7 +460,7 @@
             // 节点规则校验
             nodeRules:{
               type: [
-                { required: true, message: "施工地址不能为空" ,trigger: 'blur'}
+                { required: true, message: "节点类型不能为空" ,trigger: 'blur'}
               ],
               constructAddre: [
                 { required: true, message: "施工地址不能为空" ,trigger: 'blur'}
@@ -514,7 +483,6 @@
         },
         created() {
           this.getList();
-          // this.getAreas();
         },
         methods: {
           // 新增顶管工程
@@ -528,85 +496,14 @@
           },
           toNodeDetail(){
             this.nodeDetailVisible = true
-            return
-            this.$refs['form'].validate(e => {
-              if(e){
-                this.nodeDetailVisible = true
-              }
-            })
-            
           },
           getUrl(url) {
             this.zEngineeringInfoBo.zEngiineeringPhotoBoList = this.$refs.obsImageUpload.fileList?this.$refs.obsImageUpload.fileList.map(e=>e.url):[];
           },
-          getBuildings(id) {
-            this.units = []
-            this.houses = []
-            this.queryParams.buildingId = undefined
-            this.queryParams.unitId = undefined
-            this.queryParams.houseId = undefined
-            getBuildings(id).then(res => {
-              this.builds = res.data
-            })
-          },
-          getUnits(id) {
-            this.houses = []
-            this.queryParams.unitId = undefined
-            this.queryParams.houseId = undefined
-            getUnits(this.queryParams.areaId,id).then(res => {
-              this.units = res.data
-            })
-          },
-          getAreas() {
-            this.builds = []
-            this.units = []
-            this.houses = []
-            this.queryParams.buildingId = undefined
-            this.queryParams.unitId = undefined
-            this.queryParams.houseId = undefined
-            this.form.buildingId = undefined
-            this.form.unitId = undefined
-            this.form.houseId = undefined
-            getAreas().then(res => {
-              this.areas = res.data;
-            });
-          },
-          getHouses() {
-            this.houses = []
-            this.queryParams.houseId = undefined
-            getHouses(this.queryParams.unitId).then(res => {
-              this.houses = res.data;
-            });
-          },
-          getBuildings1(id) {
-            this.units = []
-            this.houses = []
-            this.form.buildingId = undefined
-            this.form.unitId = undefined
-            this.form.houseId = undefined
-            getBuildings(id).then(res => {
-              this.builds = res.data
-            })
-          },
-          getUnits1(id) {
-            this.houses = []
-            this.form.unitId = undefined
-            this.form.houseId = undefined
-            getUnits(this.form.areaId,id).then(res => {
-              this.units = res.data
-            })
-          },
-          getHouses1() {
-            this.houses = []
-            this.form.houseId = undefined
-            getHouses(this.form.unitId).then(res => {
-              this.houses = res.data;
-            });
-          },
           /** 查询开栓|安检|维修列表 */
           getList() {
             this.loading = true;
-            getEngineeList({
+            getEngineeIndustryList({
               type:'01'
             }).then(res => {
               console.log(res)
@@ -656,45 +553,50 @@
           },
           /** 修改按钮操作 */
           handleUpdate(row) {
-            getBuildings(row.areaId).then(res => {
-              this.builds = res.data
-            });
-            getUnits(row.areaId,row.buildingId).then(res => {
-              this.units = res.data
-            })
-            getHouses(row.unitId).then(res => {
-              this.houses = res.data;
-            });
             this.loading = true;
             this.reset();
             const id = row.id || this.ids
-            getComprehensive(id).then(response => {
+            putEngineeEngineeIndustry(id).then(response => {
               this.loading = false;
-              this.form = response.data;
-              this.form.picIds = response.data.mapList;
-      
+              this.queryParams = response.data;
+              this.zEngineeringInfoBo.zEngineeringInfoBo =response.data.zengineeringNodeBo[0].zEngineeringInfoBo
+              console.log(this.zEngineeringInfoBo.zEngineeringInfoBo)
               this.open = true;
-              this.title = "修改维修";
+              this.title = "修改工程";
             });
           },
           /** 提交按钮 */
           submitForm() {
-            // this.$refs["nodeForm"].validate(valid => {
-              // if (valid) {
-                this.queryParams.zEngineeringNodeBo.zEngineeringInfoBo = this.zEngineeringInfoBo
-                console.log(this.queryParams)
-                addEnginee(this.queryParams).then(res => {
-                  console.log(res)
-                })
-              // }
-            // });
+            this.$refs["nodeForm"].validate(valid => {
+              if (valid) {
+                if (this.queryParams.id == null){
+                  this.queryParams.zEngineeringNodeBo.zEngineeringInfoBo = this.zEngineeringInfoBo
+                  console.log(this.queryParams)
+                  addEngineeEngineeIndustry(this.queryParams).then(res => {
+                    this.$modal.msgSuccess("新增成功");
+                    this.open = false;
+                    this.nodeDetailVisible = false
+                    this.getList();
+                  })
+                }else {
+                  this.queryParams.zEngineeringNodeBo.zEngineeringInfoBo = this.zEngineeringInfoBo
+                  EditEngineeEngineeIndustry(this.queryParams).then(res=>{
+                    this.$modal.msgSuccess("修改成功");
+                    this.open = false;
+                    this.nodeDetailVisible = false
+                    this.getList();
+                  })
+
+                }
+              }
+            });
           },
           /** 删除按钮操作 */
           handleDelete(row) {
             const ids = row.id || this.ids;
             this.$modal.confirm('是否确认删除维修为"' + ids + '"的数据项?').then(() => {
               this.loading = true;
-              return delComprehensive(ids);
+              return DelEngineeEngineeIndustry(ids);
             }).then(() => {
               this.loading = false;
               this.getList();
@@ -706,12 +608,78 @@
           },
           /** 导出按钮操作 */
           handleExport() {
-            this.download('zdsz/openbolt/export', {
+            this.download('zdsz/engineeringIndustry/export', {
               ...this.queryParams
             }, `comprehensive_${new Date().getTime()}.xlsx`)
           }
         }
       };
+
+
+      // getBuildings(id) {
+      //   this.units = []
+      //   this.houses = []
+      //   this.queryParams.buildingId = undefined
+      //   this.queryParams.unitId = undefined
+      //   this.queryParams.houseId = undefined
+      //   getBuildings(id).then(res => {
+      //     this.builds = res.data
+      //   })
+      // },
+      // getUnits(id) {
+      //   this.houses = []
+      //   this.queryParams.unitId = undefined
+      //   this.queryParams.houseId = undefined
+      //   getUnits(this.queryParams.areaId,id).then(res => {
+      //     this.units = res.data
+      //   })
+      // },
+      // getAreas() {
+      //   this.builds = []
+      //   this.units = []
+      //   this.houses = []
+      //   this.queryParams.buildingId = undefined
+      //   this.queryParams.unitId = undefined
+      //   this.queryParams.houseId = undefined
+      //   this.form.buildingId = undefined
+      //   this.form.unitId = undefined
+      //   this.form.houseId = undefined
+      //   getAreas().then(res => {
+      //     this.areas = res.data;
+      //   });
+      // },
+      // getHouses() {
+      //   this.houses = []
+      //   this.queryParams.houseId = undefined
+      //   getHouses(this.queryParams.unitId).then(res => {
+      //     this.houses = res.data;
+      //   });
+      // },
+      // getBuildings1(id) {
+      //   this.units = []
+      //   this.houses = []
+      //   this.form.buildingId = undefined
+      //   this.form.unitId = undefined
+      //   this.form.houseId = undefined
+      //   getBuildings(id).then(res => {
+      //     this.builds = res.data
+      //   })
+      // },
+      // getUnits1(id) {
+      //   this.houses = []
+      //   this.form.unitId = undefined
+      //   this.form.houseId = undefined
+      //   getUnits(this.form.areaId,id).then(res => {
+      //     this.units = res.data
+      //   })
+      // },
+      // getHouses1() {
+      //   this.houses = []
+      //   this.form.houseId = undefined
+      //   getHouses(this.form.unitId).then(res => {
+      //     this.houses = res.data;
+      //   });
+      // },
       </script>
 
 
@@ -720,7 +688,7 @@
   width: 70%;
   height: 80%;
 
-    
+
     .el-dialog__body{
       height: 85%;
     }
@@ -748,7 +716,7 @@
   // width: 70%;
   height: 80%;
 
-    
+
     .el-dialog__body{
       height: 85%;
     }
@@ -766,4 +734,4 @@
     }
 }
 </style>
-      
+