2 Commits b453481523 ... 96e1501a6c

Author SHA1 Message Date
  wangtong 96e1501a6c Merge remote-tracking branch 'origin/master' 1 year ago
  wangtong 8536257f64 非居民 1 year ago

+ 3 - 1
src/plugins/download.js

@@ -71,12 +71,14 @@ export default {
       responseType: 'blob',
       responseType: 'blob',
       headers: { 'Authorization': 'Bearer ' + getToken() }
       headers: { 'Authorization': 'Bearer ' + getToken() }
     }).then(async (res) => {
     }).then(async (res) => {
+      console.log(res)
       const isLogin = await this.blobValidate(res.data);
       const isLogin = await this.blobValidate(res.data);
       if (isLogin) {
       if (isLogin) {
         const blob = new Blob([res.data], { type: 'application/zip' })
         const blob = new Blob([res.data], { type: 'application/zip' })
+        Message.info("下载中请稍后!")
         this.saveAs(blob, name)
         this.saveAs(blob, name)
       } else {
       } else {
-        Message.error('无效的会话,或者会话已过期,请重新登录。');
+        Message.error("该选项目录下无下载内容");
       }
       }
     })
     })
   },
   },

+ 93 - 2
src/views/gas/area/index.vue

@@ -93,6 +93,18 @@
         >导出
         >导出
         </el-button>
         </el-button>
       </el-col>
       </el-col>
+<!--      <el-col :span="1.5">-->
+<!--        <el-button-->
+<!--          type="success"-->
+<!--          plain-->
+<!--          icon="el-icon-download"-->
+<!--          size="mini"-->
+<!--          :loading="exportLoading"-->
+<!--          @click="handleInstall"-->
+<!--          v-hasPermi="['gas:courtyardNetworkManagement:export']"-->
+<!--        >下载-->
+<!--        </el-button>-->
+<!--      </el-col>-->
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
     </el-row>
 
 
@@ -148,6 +160,15 @@
             v-hasPermi="['gas:area:remove']"
             v-hasPermi="['gas:area:remove']"
           >删除
           >删除
           </el-button>
           </el-button>
+          <el-button
+            type="text"
+            size="mini"
+             icon="el-icon-download"
+            :loading="exportLoading"
+            @click="handleInstall(scope.row)"
+            v-hasPermi="['gas:courtyardNetworkManagement:export']"
+          >下载
+          </el-button>
         </template>
         </template>
       </el-table-column>
       </el-table-column>
     </el-table>
     </el-table>
@@ -255,7 +276,7 @@ import {getToken} from "@/utils/auth";
 
 
 export default {
 export default {
   name: "Area",
   name: "Area",
-  dicts: ['release_status', 'district', 'district'],
+  dicts: ['release_status', 'district', 'district','install_type'],
   data() {
   data() {
     return {
     return {
       //进度条
       //进度条
@@ -300,6 +321,7 @@ export default {
       title: "",
       title: "",
       // 是否显示弹出层
       // 是否显示弹出层
       open: false,
       open: false,
+
       // 查询参数
       // 查询参数
       queryParams: {
       queryParams: {
         pageNum: 1,
         pageNum: 1,
@@ -325,12 +347,15 @@ export default {
           {required: true, message: "行政区不能为空", trigger: "change"}
           {required: true, message: "行政区不能为空", trigger: "change"}
         ],
         ],
       },
       },
-      workerList: []
+      workerList: [],
+      installList:[],
+      value:'庭院网管'
     };
     };
   },
   },
   created() {
   created() {
     this.getWorkerList();
     this.getWorkerList();
     this.getList();
     this.getList();
+    this.getdictList();
   },
   },
   methods: {
   methods: {
     // 文件上传中处理
     // 文件上传中处理
@@ -453,6 +478,12 @@ export default {
       };
       };
       this.resetForm("form");
       this.resetForm("form");
     },
     },
+    getdictList() {
+      this.getDicts("install_type").then(response => {
+        this.installList = response.data;
+        console.log(this.installList)
+      });
+    },
     /** 搜索按钮操作 */
     /** 搜索按钮操作 */
     handleQuery() {
     handleQuery() {
       this.queryParams.pageNum = 1;
       this.queryParams.pageNum = 1;
@@ -539,6 +570,66 @@ export default {
     /** 导出按钮操作 */
     /** 导出按钮操作 */
     handleExport() {
     handleExport() {
       this.$download.excel('/gas/area/export', this.queryParams);
       this.$download.excel('/gas/area/export', this.queryParams);
+    },
+    handleInstall(data) {
+      const h = this.$createElement;
+      const that = this
+      this.$msgbox({
+        title: '消息',
+        message: h('p', null, [
+          h('span', null, '选择下载类型 '),
+          h('el-select', {
+              props: {
+                value: that.value,
+                filterable: true,
+              },
+              ref: 'selectView',
+              on: {
+                change:e => {
+                  that.value = e
+                  that.$refs.selectView.value = e  // select下拉框值改变,回显到页面上
+                },
+              },
+            },
+            [
+              that.installList.map(it => {
+                return h('el-option', {
+                  props: {
+                    label: it.dictLabel,
+                    key: it.dictLabel,
+                    value: it.dictLabel,
+                  },
+                });
+              })
+            ]
+          )
+        ]),
+        showCancelButton: true,
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        beforeClose: (action, instance, done) => {
+          console.log(this.value)
+          let obj=that.installList.filter(item=>item.dictLabel==this.value)
+          console.log(obj)
+          if (action === 'confirm') {
+            instance.confirmButtonLoading = true;
+            instance.confirmButtonText = '执行中...';
+            this.$download.zip(`/gas/courtyardNetworkManagement/install?id=${data.id}&findProblem=${this.value}&remarks=${obj[0].dictValue}`, data.name+this.value);
+            setTimeout(() => {
+              done();
+              setTimeout(() => {
+                instance.confirmButtonLoading = false;
+              }, 300);
+            }, 3000);
+          } else {
+            done();
+          }
+        }
+      }).then(action => {
+
+      });
+
+
     }
     }
   }
   }
 };
 };

+ 15 - 0
src/views/gas/courtyardNetworkManagement/index.vue

@@ -98,6 +98,18 @@
         >导出
         >导出
         </el-button>
         </el-button>
       </el-col>
       </el-col>
+<!--      <el-col :span="1.5">-->
+<!--        <el-button-->
+<!--          type="success"-->
+<!--          plain-->
+<!--          icon="el-icon-download"-->
+<!--          size="mini"-->
+<!--          :loading="exportLoading"-->
+<!--          @click="handleInstall"-->
+<!--          v-hasPermi="['gas:courtyardNetworkManagement:export']"-->
+<!--        >下载-->
+<!--        </el-button>-->
+<!--      </el-col>-->
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
     </el-row>
 
 
@@ -516,6 +528,9 @@ export default {
     /** 导出按钮操作 */
     /** 导出按钮操作 */
     handleExport() {
     handleExport() {
       this.$download.excel('/gas/courtyardNetworkManagement/export', this.queryParams);
       this.$download.excel('/gas/courtyardNetworkManagement/export', this.queryParams);
+    },
+    handleInstall() {
+      this.$download.excel('/gas/courtyardNetworkManagement/install', this.queryParams);
     }
     }
   }
   }
 };
 };

+ 90 - 34
src/views/gas/pipelineGasUser/index.vue

@@ -27,6 +27,25 @@
                       :value="dict.value" />
                       :value="dict.value" />
         </el-select>
         </el-select>
       </el-form-item>
       </el-form-item>
+      <el-form-item label="队伍" >
+        <el-select v-model="queryParams.team" clearable placeholder="请选择队伍" :disabled="postName.indexOf('xx') > -1">
+          <el-option
+            v-for="item in postOptions"
+            :key="item.postId"
+            :label="item.postName"
+            :value="item.postId"
+          ></el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="上报人" prop="userId">
+        <el-select v-model="queryParams.userId" placeholder="请选择巡查人员" clearable size="small">
+          <el-option
+            v-for="item in workerList"
+            :key="item.id"
+            :label="item.name"
+            :value="item.id"/>
+        </el-select>
+      </el-form-item>
       <el-form-item>
       <el-form-item>
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@@ -34,16 +53,16 @@
     </el-form>
     </el-form>
 
 
     <el-row :gutter="10" class="mb8">
     <el-row :gutter="10" class="mb8">
-      <el-col :span="1.5">
-        <el-button
-          type="primary"
-          plain
-          icon="el-icon-plus"
-          size="mini"
-          @click="handleAdd"
-          v-hasPermi="['system:pipelineGasUser:add']"
-        >新增</el-button>
-      </el-col>
+<!--      <el-col :span="1.5">-->
+<!--        <el-button-->
+<!--          type="primary"-->
+<!--          plain-->
+<!--          icon="el-icon-plus"-->
+<!--          size="mini"-->
+<!--          @click="handleAdd"-->
+<!--          v-hasPermi="['system:pipelineGasUser:add']"-->
+<!--        >新增</el-button>-->
+<!--      </el-col>-->
       <el-col :span="1.5">
       <el-col :span="1.5">
         <el-button
         <el-button
           type="success"
           type="success"
@@ -66,17 +85,17 @@
           v-hasPermi="['system:pipelineGasUser:remove']"
           v-hasPermi="['system:pipelineGasUser:remove']"
         >删除</el-button>
         >删除</el-button>
       </el-col>
       </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="warning"
-          plain
-          icon="el-icon-download"
-          size="mini"
-          :loading="exportLoading"
-          @click="handleExport"
-          v-hasPermi="['system:pipelineGasUser:export']"
-        >导出</el-button>
-      </el-col>
+<!--      <el-col :span="1.5">-->
+<!--        <el-button-->
+<!--          type="warning"-->
+<!--          plain-->
+<!--          icon="el-icon-download"-->
+<!--          size="mini"-->
+<!--          :loading="exportLoading"-->
+<!--          @click="handleExport"-->
+<!--          v-hasPermi="['system:pipelineGasUser:export']"-->
+<!--        >导出</el-button>-->
+<!--      </el-col>-->
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
     </el-row>
 
 
@@ -119,7 +138,9 @@
 <!--      <el-table-column label="安检情况1" align="center" prop="securityCheckOne" />-->
 <!--      <el-table-column label="安检情况1" align="center" prop="securityCheckOne" />-->
 <!--      <el-table-column label="安检情况2" align="center" prop="securityCheckTwo" />-->
 <!--      <el-table-column label="安检情况2" align="center" prop="securityCheckTwo" />-->
 <!--      <el-table-column label="安检员签字" align="center" prop="securityCheckUser" />-->
 <!--      <el-table-column label="安检员签字" align="center" prop="securityCheckUser" />-->
-<!--      <el-table-column label="安检时间" align="center" prop="securityCheckTime" width="180">-->
+      <el-table-column label="安检时间" align="center" prop="securityCheckTime" width="180"/>
+        <el-table-column label="创建时间" align="center" prop="createTime" width="180"/>
+          <el-table-column label="上报人" align="center" prop="createByName" width="180"/>
 <!--        <template slot-scope="scope">-->
 <!--        <template slot-scope="scope">-->
 <!--          <span>{{ parseTime(scope.row.securityCheckTime, '{y}-{m}-{d}') }}</span>-->
 <!--          <span>{{ parseTime(scope.row.securityCheckTime, '{y}-{m}-{d}') }}</span>-->
 <!--        </template>-->
 <!--        </template>-->
@@ -131,6 +152,15 @@
 <!--      <el-table-column label="两气混用label" align="center" prop="mixingGasesLabel" />-->
 <!--      <el-table-column label="两气混用label" align="center" prop="mixingGasesLabel" />-->
 <!--      <el-table-column label="重物搭挂label" align="center" prop="heavyHangingLabel" />-->
 <!--      <el-table-column label="重物搭挂label" align="center" prop="heavyHangingLabel" />-->
 <!--      <el-table-column label="电线缠绕label" align="center" prop="wireTangleLabel" />-->
 <!--      <el-table-column label="电线缠绕label" align="center" prop="wireTangleLabel" />-->
+      <el-table-column label="照片" align="center">
+        <template slot-scope="scope">
+          <el-image
+            style="width: 50px; height: 50px"
+            :src="scope.row.photoList!=null?scope.row.photoList[0]:''"
+            :preview-src-list="[scope.row.photoList!=null?scope.row.photoList[0]:'']">
+          </el-image>
+        </template>
+      </el-table-column>
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
         <template slot-scope="scope">
           <el-button
           <el-button
@@ -198,7 +228,7 @@
             <el-radio :label="dict.value">{{dict.label}}</el-radio>
             <el-radio :label="dict.value">{{dict.label}}</el-radio>
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
-        <el-form-item label="类型" prop="type">
+        <el-form-item label="调压箱类型" prop="type">
 <!--          <el-select v-model="form.type" placeholder="请选择类型">-->
 <!--          <el-select v-model="form.type" placeholder="请选择类型">-->
 <!--            <el-option label="请选择字典生成" value="" />-->
 <!--            <el-option label="请选择字典生成" value="" />-->
 <!--          </el-select>-->
 <!--          </el-select>-->
@@ -230,9 +260,14 @@
             <el-radio :label="dict.value">{{dict.label}}</el-radio>
             <el-radio :label="dict.value">{{dict.label}}</el-radio>
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
+        <el-form-item label="管道详情" prop="pipeline">
+
+          <!--          <el-input v-model="form.pipeline" placeholder="请输入管道" />-->
+          <el-input v-model="form.pipelineLabel" placeholder="请输入管道详情"/>
+        </el-form-item>
         <el-form-item label="计量表具" prop="measuringInstruments">
         <el-form-item label="计量表具" prop="measuringInstruments">
 <!--          <el-input v-model="form.measuringInstruments" placeholder="请输入计量表具" />-->
 <!--          <el-input v-model="form.measuringInstruments" placeholder="请输入计量表具" />-->
-          <el-radio-group v-model="form.pipeline"  v-for="dict in dict.type.measuring_instruments" >
+          <el-radio-group v-model="form.measuringInstruments"  v-for="dict in dict.type.measuring_instruments" >
             <el-radio :label="dict.value">{{dict.label}}</el-radio>
             <el-radio :label="dict.value">{{dict.label}}</el-radio>
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
@@ -286,7 +321,7 @@
         <el-form-item label="可燃气体报警器装置-安装情况" prop="combustibleGas">
         <el-form-item label="可燃气体报警器装置-安装情况" prop="combustibleGas">
 
 
 <!--          <el-input v-model="form.combustibleGas" placeholder="请输入可燃气体报警器装置" />-->
 <!--          <el-input v-model="form.combustibleGas" placeholder="请输入可燃气体报警器装置" />-->
-          <el-radio-group v-model="form.pressureStatus"  v-for="dict in dict.type.alarm_operation_a" >
+          <el-radio-group v-model="form.combustibleGas"  v-for="dict in dict.type.alarm_operation_a" >
             <el-radio :label="dict.value">{{dict.label}}</el-radio>
             <el-radio :label="dict.value">{{dict.label}}</el-radio>
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
@@ -322,7 +357,7 @@
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
         <el-form-item label="流向标识详情" prop="flowDirectionLabel">
         <el-form-item label="流向标识详情" prop="flowDirectionLabel">
-          <el-input v-model="form.flowDirectionLabel" placeholder="请输入流向标识label" />
+          <el-input v-model="form.flowDirectionLabel" placeholder="" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="有无易燃物" prop="flammableMaterials">
         <el-form-item label="有无易燃物" prop="flammableMaterials">
 <!--          <el-input v-model="form.flammableMaterials" placeholder="请输入有无易燃物" />-->
 <!--          <el-input v-model="form.flammableMaterials" placeholder="请输入有无易燃物" />-->
@@ -331,7 +366,7 @@
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
         <el-form-item label="有无易燃物详情" prop="flammableMaterialsLabel">
         <el-form-item label="有无易燃物详情" prop="flammableMaterialsLabel">
-          <el-input v-model="form.flammableMaterialsLabel" placeholder="请输入有无易燃物label" />
+          <el-input v-model="form.flammableMaterialsLabel" placeholder="" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="有无占压" prop="pressure">
         <el-form-item label="有无占压" prop="pressure">
 <!--          <el-input v-model="form.pressure" placeholder="请输入有无占压" />-->
 <!--          <el-input v-model="form.pressure" placeholder="请输入有无占压" />-->
@@ -340,7 +375,7 @@
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
         <el-form-item label="有无占压详情" prop="pressureLabel">
         <el-form-item label="有无占压详情" prop="pressureLabel">
-          <el-input v-model="form.pressureLabel" placeholder="请输入有无占压label" />
+          <el-input v-model="form.pressureLabel" placeholder="" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="两气混用" prop="mixingGases">
         <el-form-item label="两气混用" prop="mixingGases">
 <!--          <el-input v-model="form.mixingGases" placeholder="请输入两气混用" />-->
 <!--          <el-input v-model="form.mixingGases" placeholder="请输入两气混用" />-->
@@ -349,7 +384,7 @@
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
         <el-form-item label="两气混用详情" prop="mixingGasesLabel">
         <el-form-item label="两气混用详情" prop="mixingGasesLabel">
-          <el-input v-model="form.mixingGasesLabel" placeholder="请输入两气混用label" />
+          <el-input v-model="form.mixingGasesLabel" placeholder="" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="重物搭挂" prop="heavyHanging">
         <el-form-item label="重物搭挂" prop="heavyHanging">
 <!--          <el-input v-model="form.heavyHanging" placeholder="请输入重物搭挂" />-->
 <!--          <el-input v-model="form.heavyHanging" placeholder="请输入重物搭挂" />-->
@@ -358,7 +393,7 @@
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
         <el-form-item label="重物搭挂详情" prop="heavyHangingLabel">
         <el-form-item label="重物搭挂详情" prop="heavyHangingLabel">
-          <el-input v-model="form.heavyHangingLabel" placeholder="请输入重物搭挂label" />
+          <el-input v-model="form.heavyHangingLabel" placeholder="" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="电线缠绕" prop="wireTangle">
         <el-form-item label="电线缠绕" prop="wireTangle">
 <!--          <el-input v-model="form.wireTangle" placeholder="请输入电线缠绕" />-->
 <!--          <el-input v-model="form.wireTangle" placeholder="请输入电线缠绕" />-->
@@ -367,10 +402,10 @@
           </el-radio-group>
           </el-radio-group>
         </el-form-item>
         </el-form-item>
         <el-form-item label="电线缠绕详情" prop="wireTangleLabel">
         <el-form-item label="电线缠绕详情" prop="wireTangleLabel">
-          <el-input v-model="form.wireTangleLabel" placeholder="请输入电线缠绕label" />
+          <el-input v-model="form.wireTangleLabel" placeholder="" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="其他" prop="other">
         <el-form-item label="其他" prop="other">
-          <el-input v-model="form.other" placeholder="请输入其他" />
+          <el-input v-model="form.other" placeholder="" type="textarea" />
         </el-form-item>
         </el-form-item>
 <!--        <el-form-item label="安检情况1" prop="securityCheckOne">-->
 <!--        <el-form-item label="安检情况1" prop="securityCheckOne">-->
 <!--          <el-input v-model="form.securityCheckOne" placeholder="请输入安检情况1" />-->
 <!--          <el-input v-model="form.securityCheckOne" placeholder="请输入安检情况1" />-->
@@ -395,6 +430,9 @@
         <el-form-item label="联系电话" prop="phone">
         <el-form-item label="联系电话" prop="phone">
           <el-input v-model="form.phone" placeholder="请输入联系电话" />
           <el-input v-model="form.phone" placeholder="请输入联系电话" />
         </el-form-item>
         </el-form-item>
+        <el-form-item label="照片" prop="photoList">
+          <imageUpload v-model="form.photoList" :disabled="disabled"/>
+        </el-form-item>
       </el-form>
       </el-form>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
         <el-button :loading="buttonLoading" type="primary" @click="submitForm">确 定</el-button>
         <el-button :loading="buttonLoading" type="primary" @click="submitForm">确 定</el-button>
@@ -406,18 +444,21 @@
 
 
 <script>
 <script>
 import { listPipelineGasUser, getPipelineGasUser, delPipelineGasUser, addPipelineGasUser, updatePipelineGasUser } from "@/api/gas/pipelineGasUser";
 import { listPipelineGasUser, getPipelineGasUser, delPipelineGasUser, addPipelineGasUser, updatePipelineGasUser } from "@/api/gas/pipelineGasUser";
-
+import {getWorker} from "@/api/gas/user";
+import {listPostAll} from "@/api/system/post";
+import Cookies from "js-cookie";
 export default {
 export default {
   dicts:['yes_and_no','exterior','sensitive','box_type','pipeline_type','measuring_instruments',
   dicts:['yes_and_no','exterior','sensitive','box_type','pipeline_type','measuring_instruments',
     'catering_status','other_operating_conditions','other_appearance','pressure_gauge_operation','alarm_operation_a','alarm_operation_b',
     'catering_status','other_operating_conditions','other_appearance','pressure_gauge_operation','alarm_operation_a','alarm_operation_b',
     'emergency_shutoff_valve_appearance','emergency_shutdown_valve_operation','safety_valve_appearance','users_type','pressure_regulator_check_type'
     'emergency_shutoff_valve_appearance','emergency_shutdown_valve_operation','safety_valve_appearance','users_type','pressure_regulator_check_type'
   ,'pipelines_include_public_pipelines','measuring_instrument','connecting_pipe_metal_hose','connect_the_tube_the_glue_tube_ignition_rod','condensate_rod_appearance'
   ,'pipelines_include_public_pipelines','measuring_instrument','connecting_pipe_metal_hose','connect_the_tube_the_glue_tube_ignition_rod','condensate_rod_appearance'
-  ,'there_is_selflessness_and_private_reform','yes_and_no'],
+  ,'there_is_selflessness_and_private_reform'],
   name: "PipelineGasUser",
   name: "PipelineGasUser",
   data() {
   data() {
     return {
     return {
       // 按钮loading
       // 按钮loading
       buttonLoading: false,
       buttonLoading: false,
+      postName:Cookies.get("postName"),
       // 遮罩层
       // 遮罩层
       loading: true,
       loading: true,
       // 导出遮罩层
       // 导出遮罩层
@@ -432,6 +473,8 @@ export default {
       showSearch: true,
       showSearch: true,
       // 总条数
       // 总条数
       total: 0,
       total: 0,
+      postOptions: [],
+      workerList: [],
       // 非居民巡查表格数据
       // 非居民巡查表格数据
       pipelineGasUserList: [],
       pipelineGasUserList: [],
       // 弹出层标题
       // 弹出层标题
@@ -608,9 +651,19 @@ export default {
     };
     };
   },
   },
   created() {
   created() {
+    this.getPostList()
+    this.getWorker()
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
+    getPostList(){
+      listPostAll({remark:'ranks'}).then(response => {
+        this.postOptions = response.data;
+      });
+    },
+    getWorker() {
+      getWorker().then(req => this.workerList = req.data)
+    },
     /** 查询非居民巡查列表 */
     /** 查询非居民巡查列表 */
     getList() {
     getList() {
       this.loading = true;
       this.loading = true;
@@ -711,6 +764,9 @@ export default {
         if (valid) {
         if (valid) {
           this.buttonLoading = true;
           this.buttonLoading = true;
           if (this.form.id != null) {
           if (this.form.id != null) {
+            if (typeof this.form.photoList === 'string') {
+              this.form.photoList = this.form.photoList.split(',')
+            }
             updatePipelineGasUser(this.form).then(response => {
             updatePipelineGasUser(this.form).then(response => {
               this.$modal.msgSuccess("修改成功");
               this.$modal.msgSuccess("修改成功");
               this.open = false;
               this.open = false;

+ 81 - 0
src/views/system/post/index.vue

@@ -108,6 +108,16 @@
             v-hasPermi="['system:post:edit']"
             v-hasPermi="['system:post:edit']"
           >修改</el-button>
           >修改</el-button>
           <el-button
           <el-button
+            type="text"
+            size="mini"
+            icon="el-icon-download"
+            :loading="exportLoading"
+            @click="handleInstall(scope.row)"
+            v-if="scope.row.postCode.indexOf('xx')>-1"
+            v-hasPermi="['gas:courtyardNetworkManagement:export']"
+          >下载
+          </el-button>
+          <el-button
             size="mini"
             size="mini"
             type="text"
             type="text"
             icon="el-icon-delete"
             icon="el-icon-delete"
@@ -195,6 +205,8 @@ export default {
         postName: undefined,
         postName: undefined,
         status: undefined
         status: undefined
       },
       },
+      installList:[],
+      value:'路段巡查',
       // 表单参数
       // 表单参数
       form: {},
       form: {},
       // 表单校验
       // 表单校验
@@ -213,6 +225,7 @@ export default {
   },
   },
   created() {
   created() {
     this.getList();
     this.getList();
+    this.getdictList();
   },
   },
   methods: {
   methods: {
     /** 查询岗位列表 */
     /** 查询岗位列表 */
@@ -224,6 +237,12 @@ export default {
         this.loading = false;
         this.loading = false;
       });
       });
     },
     },
+    getdictList() {
+      this.getDicts("team_type").then(response => {
+        this.installList = response.data;
+        console.log(this.installList)
+      });
+    },
     // 取消按钮
     // 取消按钮
     cancel() {
     cancel() {
       this.open = false;
       this.open = false;
@@ -306,7 +325,69 @@ export default {
     /** 导出按钮操作 */
     /** 导出按钮操作 */
     handleExport() {
     handleExport() {
       this.$download.excel('/system/post/export', this.queryParams);
       this.$download.excel('/system/post/export', this.queryParams);
+    },
+    handleInstall(data) {
+      const h = this.$createElement;
+      const that = this
+      this.$msgbox({
+        title: '消息',
+        message: h('p', null, [
+          h('span', null, '选择下载类型 '),
+          h('el-select', {
+              props: {
+                value: that.value,
+                filterable: true,
+              },
+              ref: 'selectView',
+              on: {
+                change:e => {
+                  that.value = e
+                  that.$refs.selectView.value = e  // select下拉框值改变,回显到页面上
+                },
+
+              },
+            },
+            [
+              that.installList.map(it => {
+                return h('el-option', {
+                  props: {
+                    label: it.dictLabel,
+                    key: it.dictLabel,
+                    value: it.dictLabel,
+                  },
+                });
+              })
+            ]
+          )
+        ]),
+        showCancelButton: true,
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        beforeClose: (action, instance, done) => {
+          console.log(this.value)
+          let obj=that.installList.filter(item=>item.dictLabel==this.value)
+          console.log(obj)
+          if (action === 'confirm') {
+            instance.confirmButtonLoading = true;
+            instance.confirmButtonText = '执行中...';
+            this.$download.zip(`/gas/courtyardNetworkManagement/install?id=${data.postId}&findProblem=${this.value}&remarks=${obj[0].dictValue}`, data.postName+this.value);
+            setTimeout(() => {
+              done();
+              setTimeout(() => {
+                instance.confirmButtonLoading = false;
+              }, 300);
+            }, 3000);
+          } else {
+            done();
+          }
+        }
+      }).then(action => {
+
+      });
+
+
     }
     }
+
   }
   }
 };
 };
 </script>
 </script>