Browse Source

提交代码

JX.Li 1 năm trước cách đây
mục cha
commit
1dc8fd92de

+ 44 - 0
src/api/gas/emergencyRepairProcess.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询抢险维修审核列表
+export function listEmergencyRepairProcess(query) {
+  return request({
+    url: '/gas/emergencyRepairProcess/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询抢险维修审核详细
+export function getEmergencyRepairProcess(id) {
+  return request({
+    url: '/gas/emergencyRepairProcess/' + id,
+    method: 'get'
+  })
+}
+
+// 新增抢险维修审核
+export function addEmergencyRepairProcess(data) {
+  return request({
+    url: '/gas/emergencyRepairProcess',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改抢险维修审核
+export function updateEmergencyRepairProcess(data) {
+  return request({
+    url: '/gas/emergencyRepairProcess',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除抢险维修审核
+export function delEmergencyRepairProcess(id) {
+  return request({
+    url: '/gas/emergencyRepairProcess/' + id,
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/gas/regulatorBoxList.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询调压箱列表列表
+export function listRegulatorBoxList(query) {
+  return request({
+    url: '/gas/regulatorBoxList/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询调压箱列表详细
+export function getRegulatorBoxList(id) {
+  return request({
+    url: '/gas/regulatorBoxList/' + id,
+    method: 'get'
+  })
+}
+
+// 新增调压箱列表
+export function addRegulatorBoxList(data) {
+  return request({
+    url: '/gas/regulatorBoxList',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改调压箱列表
+export function updateRegulatorBoxList(data) {
+  return request({
+    url: '/gas/regulatorBoxList',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除调压箱列表
+export function delRegulatorBoxList(id) {
+  return request({
+    url: '/gas/regulatorBoxList/' + id,
+    method: 'delete'
+  })
+}

+ 1 - 0
src/store/getters.js

@@ -7,6 +7,7 @@ const getters = {
   token: state => state.user.token,
   token: state => state.user.token,
   avatar: state => state.user.avatar,
   avatar: state => state.user.avatar,
   name: state => state.user.name,
   name: state => state.user.name,
+  postName: state => state.user.postName,
   introduction: state => state.user.introduction,
   introduction: state => state.user.introduction,
   roles: state => state.user.roles,
   roles: state => state.user.roles,
   permissions: state => state.user.permissions,
   permissions: state => state.user.permissions,

+ 5 - 0
src/store/modules/user.js

@@ -5,6 +5,7 @@ const user = {
   state: {
   state: {
     token: getToken(),
     token: getToken(),
     name: '',
     name: '',
+    postName: '',
     avatar: '',
     avatar: '',
     roles: [],
     roles: [],
     permissions: []
     permissions: []
@@ -17,6 +18,9 @@ const user = {
     SET_NAME: (state, name) => {
     SET_NAME: (state, name) => {
       state.name = name
       state.name = name
     },
     },
+    SET_POST_NAME: (state, postName) => {
+      state.postName = postName
+    },
     SET_AVATAR: (state, avatar) => {
     SET_AVATAR: (state, avatar) => {
       state.avatar = avatar
       state.avatar = avatar
     },
     },
@@ -59,6 +63,7 @@ const user = {
             commit('SET_ROLES', ['ROLE_DEFAULT'])
             commit('SET_ROLES', ['ROLE_DEFAULT'])
           }
           }
           commit('SET_NAME', user.userName)
           commit('SET_NAME', user.userName)
+          commit('SET_POST_NAME', user.postName)
           commit('SET_AVATAR', avatar)
           commit('SET_AVATAR', avatar)
           resolve(res)
           resolve(res)
         }).catch(error => {
         }).catch(error => {

+ 2 - 9
src/views/gas/courtyardNetworkManagement/index.vue

@@ -83,6 +83,8 @@
           <dict-tag v-else :options="dict.type.process_status" :value="scope.row.processStatus"/>
           <dict-tag v-else :options="dict.type.process_status" :value="scope.row.processStatus"/>
         </template>
         </template>
       </el-table-column>
       </el-table-column>
+      <el-table-column label="创建人" align="center" prop="createName"/>
+      <el-table-column label="创建时间" align="center" prop="createTime"/>
       <el-table-column label="照片" align="center">
       <el-table-column label="照片" align="center">
         <template slot-scope="scope">
         <template slot-scope="scope">
           <el-image
           <el-image
@@ -172,15 +174,6 @@
                        :value="item.id"/>
                        :value="item.id"/>
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
-<!--        <el-form-item label="所属单元" prop="unitId">-->
-<!--          <el-select v-model="form.unitId" filterable placeholder="请输入所属单元" clearable size="small"-->
-<!--                     style="width: 100%">-->
-<!--            <el-option v-for="item in unitList"-->
-<!--                       :key="item.id"-->
-<!--                       :label="item.name"-->
-<!--                       :value="item.id"/>-->
-<!--          </el-select>-->
-<!--        </el-form-item>-->
         <el-form-item label="发现问题" prop="findProblem">
         <el-form-item label="发现问题" prop="findProblem">
           <el-select v-model="form.findProblem" placeholder="请选择发现问题">
           <el-select v-model="form.findProblem" placeholder="请选择发现问题">
             <el-option
             <el-option

+ 171 - 74
src/views/gas/emergencyRepair/index.vue

@@ -129,8 +129,17 @@
       </el-table-column>
       </el-table-column>
       <el-table-column label="审核状态" align="center" prop="processStatus">
       <el-table-column label="审核状态" align="center" prop="processStatus">
         <template slot-scope="scope">
         <template slot-scope="scope">
-          <span v-if="scope.row.processStatus == null">未审核</span>
-          <dict-tag v-else :options="dict.type.process_status" :value="scope.row.processStatus"/>
+          <span v-if="scope.row.processList.length == 0">未审核</span>
+          <span v-else-if="scope.row.processList[0].processStatus == '0'">
+            <span v-if="scope.row.processList[0].userPost == 'admin'">管理员</span>
+            <span v-if="scope.row.processList[0].userPost == 'deputyDirector'">副处长</span>
+            <span v-if="scope.row.processList[0].userPost == 'director'">处长</span>
+            通过</span>
+          <span v-else>
+            <span v-if="scope.row.processList[0].userPost == 'admin'">管理员</span>
+            <span v-if="scope.row.processList[0].userPost == 'deputyDirector'">副处长</span>
+            <span v-if="scope.row.processList[0].userPost == 'director'">处长</span>
+            拒绝</span>
         </template>
         </template>
       </el-table-column>
       </el-table-column>
       <el-table-column label="照片" align="center">
       <el-table-column label="照片" align="center">
@@ -155,11 +164,48 @@
           <el-button
           <el-button
             size="mini"
             size="mini"
             type="text"
             type="text"
+            icon="el-icon-time"
+            @click="openshShow(scope.row,'admin',false)"
+            v-hasPermi="['gas:emergencyRepair:remove']"
+          >审核记录
+          </el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            v-show="postName == 'admin' && (scope.row.processList.length == 0
+            || scope.row.processList.filter(item => item.userPost == 'admin').length == 0
+            || scope.row.processList.filter(item => item.userPost == 'admin' && item.processStatus == '0').length == 0)"
+            @click="openshShow(scope.row,'admin',true)"
+            v-hasPermi="['gas:emergencyRepair:remove']"
+          >工程审核
+          </el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            v-show="postName == 'deputyDirector'
+            && scope.row.processList.filter(item => item.userPost == 'admin' && item.processStatus == '0').length > 0
+            && (scope.row.processList.length == 0
+            || scope.row.processList.filter(item => item.userPost == 'deputyDirector').length == 0
+            || scope.row.processList.filter(item => item.userPost == 'deputyDirector' && item.processStatus == '0').length == 0)"
+            @click="openshShow(scope.row,'deputyDirector',true)"
+            v-hasPermi="['gas:emergencyRepair:remove']"
+          >工程审核
+          </el-button>
+          <el-button
+            size="mini"
+            type="text"
             icon="el-icon-edit"
             icon="el-icon-edit"
-            @click="openshShow(scope.row)"
-            v-show="scope.row.processStatus != 0"
+            v-show="postName == 'director'
+            && scope.row.processList.filter(item => item.userPost == 'admin' && item.processStatus == '0').length > 0
+            && scope.row.processList.filter(item => item.userPost == 'deputyDirector' && item.processStatus == '0').length > 0
+            && (scope.row.processList.length == 0
+            || scope.row.processList.filter(item => item.userPost == 'director').length == 0
+            || scope.row.processList.filter(item => item.userPost == 'director' && item.processStatus == '0').length == 0)"
+            @click="openshShow(scope.row,'director',true)"
             v-hasPermi="['gas:emergencyRepair:remove']"
             v-hasPermi="['gas:emergencyRepair:remove']"
-          >审核
+          >工程审核
           </el-button>
           </el-button>
           <el-button
           <el-button
             size="mini"
             size="mini"
@@ -180,24 +226,69 @@
       :limit.sync="queryParams.pageSize"
       :limit.sync="queryParams.pageSize"
       @pagination="getList"
       @pagination="getList"
     />
     />
-    <el-dialog title="审核" :visible.sync="openSH" width="500px" append-to-body>
-      <el-form ref="formSH" :model="formSH" :rules="rulesSH" label-width="100px">
-        <el-form-item label="审核状态" prop="processStatus">
-          <el-select v-model="formSH.processStatus" placeholder="请选择审核状态" :style="{width: '100%'}">
-            <el-option
-              v-for="dict in dict.type.process_status"
-              :key="dict.value"
-              :label="dict.label"
-              :value="dict.value"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="审核意见" prop="remarks">
-          <el-input v-model="formSH.processComments" type="textarea" placeholder="请输入审核意见" maxlength="255"/>
-        </el-form-item>
-      </el-form>
+    <el-dialog :title="showShen ? '工程审核':'审核记录'" :visible.sync="openSH" width="800px" append-to-body>
+      <el-table
+        :data="formSH.processList"
+        style="width: 100%"
+        border
+        :header-cell-style="{'text-align':'center'}"
+        height="500">
+        <el-table-column label="历史审核记录">
+          <el-table-column
+            prop="createBy"
+            label="审核人"
+            width="80">
+          </el-table-column>
+          <el-table-column
+            prop="userPost"
+            label="岗位"
+            width="65">
+            <template slot-scope="scope">
+              <span v-if="scope.row.userPost == 'admin'">管理员</span>
+              <span v-if="scope.row.userPost == 'deputyDirector'">副处长</span>
+              <span v-if="scope.row.userPost == 'director'">处长</span>
+            </template>
+          </el-table-column>
+          <el-table-column
+            prop="processStatus"
+            label="审核状态"
+            width="75">
+            <template slot-scope="scope">
+              {{ scope.row.processStatus == '0' ? '通过' : '拒绝' }}
+            </template>
+          </el-table-column>
+          <el-table-column
+            prop="createTime"
+            label="审核时间"
+            width="155">
+          </el-table-column>
+          <el-table-column
+            prop="processComments"
+            label="审核意见"
+            width="384">
+          </el-table-column>
+        </el-table-column>
+      </el-table>
+      <div v-show="showShen">
+        <el-divider></el-divider>
+        <el-form ref="formSH" :model="formSH" :rules="rulesSH" label-width="100px">
+          <el-form-item label="审核状态" prop="processStatus">
+            <el-select v-model="formSH.processStatus" placeholder="请选择审核状态" :style="{width: '100%'}">
+              <el-option
+                v-for="dict in dict.type.process_status"
+                :key="dict.value"
+                :label="dict.label"
+                :value="dict.value"
+              ></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="审核意见" prop="remarks">
+            <el-input v-model="formSH.processComments" type="textarea" placeholder="请输入审核意见" maxlength="255"/>
+          </el-form-item>
+        </el-form>
+      </div>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
-        <el-button :loading="buttonLoading" type="primary" @click="submitFormSH">确 定</el-button>
+        <el-button :loading="buttonLoading" type="primary" v-show="showShen" @click="submitFormSH">确 定</el-button>
         <el-button @click="openSH = false">关 闭</el-button>
         <el-button @click="openSH = false">关 闭</el-button>
       </div>
       </div>
     </el-dialog>
     </el-dialog>
@@ -206,6 +297,16 @@
       <el-form ref="form" :model="form" :rules="rules" label-width="100px" :disabled="disabled">
       <el-form ref="form" :model="form" :rules="rules" label-width="100px" :disabled="disabled">
         <el-row :gutter="10">
         <el-row :gutter="10">
           <el-col :span="12">
           <el-col :span="12">
+            <el-form-item label="工程名称" prop="enginName">
+              <el-input v-model="form.enginName" placeholder="请输入工程名称"/>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="现场领导" prop="onSiteLeadership">
+              <el-input v-model="form.onSiteLeadership" placeholder="请输入现场领导"/>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
             <el-form-item label="报修时间" prop="repairTime">
             <el-form-item label="报修时间" prop="repairTime">
               <el-date-picker clearable size="small"
               <el-date-picker clearable size="small"
                               v-model="form.repairTime"
                               v-model="form.repairTime"
@@ -216,52 +317,41 @@
               </el-date-picker>
               </el-date-picker>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
-          <!--          <el-col :span="12">-->
-          <!--            <el-form-item label="所属小区" prop="areaId">-->
-          <!--              <el-select v-model="form.areaId" filterable placeholder="请选择所属小区" clearable size="small"-->
-          <!--                         @change="getBuildingList" style="width: 100%">-->
-          <!--                <el-option v-for="item in areaList"-->
-          <!--                           :key="item.id"-->
-          <!--                           :label="item.name"-->
-          <!--                           :value="item.id"/>-->
-          <!--              </el-select>-->
-          <!--            </el-form-item>-->
-          <!--          </el-col>-->
-
-          <!--        </el-row>-->
-          <!--        <el-row :gutter="10">-->
-          <!--          <el-col :span="12">-->
-          <!--            <el-form-item label="所属楼宇" prop="buildingId">-->
-          <!--              <el-select v-model="form.buildingId" filterable placeholder="请选择所属楼宇" @change="getUnitList"-->
-          <!--                         clearable size="small" style="width: 100%">-->
-          <!--                <el-option v-for="item in buildingList"-->
-          <!--                           :key="item.id"-->
-          <!--                           :label="item.name"-->
-          <!--                           :value="item.id"/>-->
-          <!--              </el-select>-->
-          <!--            </el-form-item>-->
-          <!--          </el-col>-->
-          <!--          <el-col :span="12">-->
-          <!--            <el-form-item label="所属单元" prop="unitId">-->
-          <!--              <el-select v-model="form.unitId" filterable placeholder="请输入所属单元" clearable size="small"-->
-          <!--                         style="width: 100%">-->
-          <!--                <el-option v-for="item in unitList"-->
-          <!--                           :key="item.id"-->
-          <!--                           :label="item.name"-->
-          <!--                           :value="item.id"/>-->
-          <!--              </el-select>-->
-          <!--            </el-form-item>-->
-          <!--          </el-col>-->
-          <!--        </el-row>-->
-          <!--        <el-row :gutter="10">-->
           <el-col :span="12">
           <el-col :span="12">
-            <el-form-item label="报修人名称" prop="repairName">
-              <el-input v-model="form.repairName" placeholder="请输入报修人名称"/>
+            <el-form-item label="到达时间" prop="arrivalTime">
+              <el-date-picker clearable size="small"
+                              v-model="form.arrivalTime"
+                              type="datetime"
+                              value-format="yyyy-MM-dd HH:mm:ss"
+                              placeholder="选择到达时间"
+                              :style="{width: '100%'}">
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="施工时间" prop="constructionTime">
+              <el-date-picker clearable size="small"
+                              v-model="form.constructionTime"
+                              type="datetime"
+                              value-format="yyyy-MM-dd HH:mm:ss"
+                              placeholder="选择施工时间"
+                              :style="{width: '100%'}">
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="施工管径" prop="constructionPipeDiameter">
+              <el-input v-model="form.constructionPipeDiameter" placeholder="请输入施工管径"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
         <el-row :gutter="10">
         <el-row :gutter="10">
           <el-col :span="12">
           <el-col :span="12">
+            <el-form-item label="报修人名称" prop="repairName">
+              <el-input v-model="form.repairName" placeholder="请输入报修人名称"/>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
             <el-form-item label="报修人电话" prop="repairPhone">
             <el-form-item label="报修人电话" prop="repairPhone">
               <el-input v-model="form.repairPhone" placeholder="请输入报修人电话"/>
               <el-input v-model="form.repairPhone" placeholder="请输入报修人电话"/>
             </el-form-item>
             </el-form-item>
@@ -283,6 +373,8 @@
               <el-input v-model="form.repairContent" placeholder="请输入报修内容" maxlength="255"/>
               <el-input v-model="form.repairContent" placeholder="请输入报修内容" maxlength="255"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
+        </el-row>
+        <el-row :gutter="10">
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="损坏原因" prop="causesOfDamage">
             <el-form-item label="损坏原因" prop="causesOfDamage">
               <el-select v-model="form.causesOfDamage" placeholder="请选择损坏原因" :style="{width: '100%'}">
               <el-select v-model="form.causesOfDamage" placeholder="请选择损坏原因" :style="{width: '100%'}">
@@ -295,8 +387,6 @@
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
-        </el-row>
-        <el-row :gutter="10">
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="管线压力" prop="pipelinePressure">
             <el-form-item label="管线压力" prop="pipelinePressure">
               <el-select v-model="form.pipelinePressure" placeholder="请选择管线压力" :style="{width: '100%'}">
               <el-select v-model="form.pipelinePressure" placeholder="请选择管线压力" :style="{width: '100%'}">
@@ -309,25 +399,25 @@
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
+        </el-row>
+        <el-row :gutter="10">
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="停气方式" prop="stopGasMethod">
             <el-form-item label="停气方式" prop="stopGasMethod">
               <el-input v-model="form.stopGasMethod" placeholder="请输入停气方式" maxlength="255"/>
               <el-input v-model="form.stopGasMethod" placeholder="请输入停气方式" maxlength="255"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
-        </el-row>
-        <el-row :gutter="10">
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="使用材料" prop="usingMaterials">
             <el-form-item label="使用材料" prop="usingMaterials">
               <el-input v-model="form.usingMaterials" placeholder="请输入使用材料" maxlength="255"/>
               <el-input v-model="form.usingMaterials" placeholder="请输入使用材料" maxlength="255"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
+        </el-row>
+        <el-row :gutter="10">
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="维修人" prop="maintenanceName">
             <el-form-item label="维修人" prop="maintenanceName">
               <el-input v-model="form.maintenanceName" placeholder="请输入维修人"/>
               <el-input v-model="form.maintenanceName" placeholder="请输入维修人"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
-        </el-row>
-        <el-row :gutter="10">
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="维修时间" prop="maintenanceTime">
             <el-form-item label="维修时间" prop="maintenanceTime">
               <el-date-picker clearable size="small"
               <el-date-picker clearable size="small"
@@ -370,6 +460,8 @@ import {
 import {getBuildingList} from "@/api/gas/building";
 import {getBuildingList} from "@/api/gas/building";
 import {getAreaList} from "@/api/gas/area";
 import {getAreaList} from "@/api/gas/area";
 import {getUnitList} from "@/api/gas/unit";
 import {getUnitList} from "@/api/gas/unit";
+import store from "@/store";
+import {addEmergencyRepairProcess} from "@/api/gas/emergencyRepairProcess";
 
 
 export default {
 export default {
   name: "EmergencyRepair",
   name: "EmergencyRepair",
@@ -385,6 +477,7 @@ export default {
       openSH: false,
       openSH: false,
       // 遮罩层
       // 遮罩层
       loading: true,
       loading: true,
+      showShen: true,
       // 导出遮罩层
       // 导出遮罩层
       exportLoading: false,
       exportLoading: false,
       // 选中数组
       // 选中数组
@@ -401,6 +494,7 @@ export default {
       emergencyRepairList: [],
       emergencyRepairList: [],
       // 弹出层标题
       // 弹出层标题
       title: "",
       title: "",
+      postName: "",
       // 是否显示弹出层
       // 是否显示弹出层
       open: false,
       open: false,
       // 查询参数
       // 查询参数
@@ -415,7 +509,7 @@ export default {
       // 表单参数
       // 表单参数
       form: {},
       form: {},
       formSH: {},
       formSH: {},
-      rulesSH:{
+      rulesSH: {
         processStatus: [
         processStatus: [
           {required: true, message: "审核状态不能为空", trigger: "blur"}
           {required: true, message: "审核状态不能为空", trigger: "blur"}
         ],
         ],
@@ -475,6 +569,7 @@ export default {
   },
   },
   created() {
   created() {
     // this.getAreaList();
     // this.getAreaList();
+    this.postName = store.getters.postName
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
@@ -482,8 +577,8 @@ export default {
       this.$refs["formSH"].validate(valid => {
       this.$refs["formSH"].validate(valid => {
         if (valid) {
         if (valid) {
           this.buttonLoading = true;
           this.buttonLoading = true;
-          if (this.formSH.id != null) {
-            updateEmergencyRepair(this.formSH).then(response => {
+          if (this.formSH.emrId != null) {
+            addEmergencyRepairProcess(this.formSH).then(response => {
               this.$modal.msgSuccess("审核成功");
               this.$modal.msgSuccess("审核成功");
               this.openSH = false;
               this.openSH = false;
               this.getList();
               this.getList();
@@ -494,13 +589,15 @@ export default {
         }
         }
       })
       })
     },
     },
-    openshShow(data) {
+    openshShow(data, userPost, showShen) {
+      this.showShen = showShen
       this.formSH = {
       this.formSH = {
-        id: undefined,
+        userPost: userPost,
+        emrId: data.id,
+        processList: data.processList,
         processStatus: undefined,
         processStatus: undefined,
         processComments: undefined,
         processComments: undefined,
       }
       }
-      this.formSH.id = data.id
       this.openSH = true
       this.openSH = true
     },
     },
     // 小区下拉
     // 小区下拉

+ 5 - 11
src/views/gas/regulatorBox/index.vue

@@ -79,12 +79,13 @@
     <el-table v-loading="loading" :data="regulatorBoxList" @selection-change="handleSelectionChange">
     <el-table v-loading="loading" :data="regulatorBoxList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center"/>
       <el-table-column type="selection" width="55" align="center"/>
       <el-table-column label="主键" align="center" prop="id" v-if="false"/>
       <el-table-column label="主键" align="center" prop="id" v-if="false"/>
-      <el-table-column label="所属小区" align="center" prop="areaName"/>
+      <el-table-column label="调压箱名称" align="center" prop="name"/>
 <!--      <el-table-column label="所属楼宇" align="center" prop="buildingName"/>-->
 <!--      <el-table-column label="所属楼宇" align="center" prop="buildingName"/>-->
 <!--      <el-table-column label="所属单元" align="center" prop="unitName"/>-->
 <!--      <el-table-column label="所属单元" align="center" prop="unitName"/>-->
       <el-table-column label="管理所" align="center" prop="administrativeOffice"/>
       <el-table-column label="管理所" align="center" prop="administrativeOffice"/>
       <el-table-column label="编号" align="center" prop="number"/>
       <el-table-column label="编号" align="center" prop="number"/>
-
+      <el-table-column label="创建人" align="center" prop="createByName"/>
+      <el-table-column label="创建时间" align="center" prop="createTime"/>
       <el-table-column label="照片" align="center">
       <el-table-column label="照片" align="center">
         <template slot-scope="scope">
         <template slot-scope="scope">
           <el-image
           <el-image
@@ -129,15 +130,8 @@
       <el-form ref="form" :model="form" :rules="rules" label-width="180px" :disabled="disabled">
       <el-form ref="form" :model="form" :rules="rules" label-width="180px" :disabled="disabled">
         <el-row :gutter="10">
         <el-row :gutter="10">
           <el-col :span="8">
           <el-col :span="8">
-            <el-form-item label="所属小区" prop="areaId">
-              <el-input v-model="form.areaName" placeholder="请输入所属小区"/>
-              <!--              <el-select v-model="form.areaId" filterable placeholder="请选择所属小区" clearable size="small"-->
-<!--                         @change="getBuildingList" style="width: 100%">-->
-<!--                <el-option v-for="item in areaList"-->
-<!--                           :key="item.id"-->
-<!--                           :label="item.name"-->
-<!--                           :value="item.id"/>-->
-<!--              </el-select>-->
+            <el-form-item label="调压箱名称" prop="areaId">
+              <el-input v-model="form.name" placeholder="请输入调压箱名称"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <!--          <el-col :span="8">-->
           <!--          <el-col :span="8">-->

+ 2 - 0
src/views/gas/warningPile/index.vue

@@ -88,6 +88,8 @@
       <el-table-column label="警示桩信信息" align="center" prop="warningPileInfo"/>
       <el-table-column label="警示桩信信息" align="center" prop="warningPileInfo"/>
       <el-table-column label="经度" align="center" prop="longitude"/>
       <el-table-column label="经度" align="center" prop="longitude"/>
       <el-table-column label="纬度" align="center" prop="latitude"/>
       <el-table-column label="纬度" align="center" prop="latitude"/>
+      <el-table-column label="创建人" align="center" prop="createByName"/>
+      <el-table-column label="创建时间" align="center" prop="createTime"/>
       <el-table-column label="照片" align="center" >
       <el-table-column label="照片" align="center" >
         <template slot-scope="scope">
         <template slot-scope="scope">
           <el-image
           <el-image

+ 81 - 57
src/views/system/user/index.vue

@@ -91,7 +91,8 @@
               size="mini"
               size="mini"
               @click="handleAdd"
               @click="handleAdd"
               v-hasPermi="['system:user:add']"
               v-hasPermi="['system:user:add']"
-            >新增</el-button>
+            >新增
+            </el-button>
           </el-col>
           </el-col>
           <el-col :span="1.5">
           <el-col :span="1.5">
             <el-button
             <el-button
@@ -102,7 +103,8 @@
               :disabled="single"
               :disabled="single"
               @click="handleUpdate"
               @click="handleUpdate"
               v-hasPermi="['system:user:edit']"
               v-hasPermi="['system:user:edit']"
-            >修改</el-button>
+            >修改
+            </el-button>
           </el-col>
           </el-col>
           <el-col :span="1.5">
           <el-col :span="1.5">
             <el-button
             <el-button
@@ -113,7 +115,8 @@
               :disabled="multiple"
               :disabled="multiple"
               @click="handleDelete"
               @click="handleDelete"
               v-hasPermi="['system:user:remove']"
               v-hasPermi="['system:user:remove']"
-            >删除</el-button>
+            >删除
+            </el-button>
           </el-col>
           </el-col>
           <el-col :span="1.5">
           <el-col :span="1.5">
             <el-button
             <el-button
@@ -123,7 +126,8 @@
               size="mini"
               size="mini"
               @click="handleImport"
               @click="handleImport"
               v-hasPermi="['system:user:import']"
               v-hasPermi="['system:user:import']"
-            >导入</el-button>
+            >导入
+            </el-button>
           </el-col>
           </el-col>
           <el-col :span="1.5">
           <el-col :span="1.5">
             <el-button
             <el-button
@@ -134,18 +138,23 @@
               :loading="exportLoading"
               :loading="exportLoading"
               @click="handleExport"
               @click="handleExport"
               v-hasPermi="['system:user:export']"
               v-hasPermi="['system:user:export']"
-            >导出</el-button>
+            >导出
+            </el-button>
           </el-col>
           </el-col>
           <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar>
           <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar>
         </el-row>
         </el-row>
 
 
         <el-table v-loading="loading" :data="userList" @selection-change="handleSelectionChange">
         <el-table v-loading="loading" :data="userList" @selection-change="handleSelectionChange">
-          <el-table-column type="selection" width="50" align="center" />
-          <el-table-column label="用户编号" align="center" key="userId" prop="userId" v-if="columns[0].visible" />
-          <el-table-column label="用户名称" align="center" key="userName" prop="userName" v-if="columns[1].visible" :show-overflow-tooltip="true" />
-          <el-table-column label="用户昵称" align="center" key="nickName" prop="nickName" v-if="columns[2].visible" :show-overflow-tooltip="true" />
-          <el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" v-if="columns[3].visible" :show-overflow-tooltip="true" />
-          <el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber" v-if="columns[4].visible" width="120" />
+          <el-table-column type="selection" width="50" align="center"/>
+          <el-table-column label="用户编号" align="center" key="userId" prop="userId" v-if="columns[0].visible"/>
+          <el-table-column label="用户名称" align="center" key="userName" prop="userName" v-if="columns[1].visible"
+                           :show-overflow-tooltip="true"/>
+          <el-table-column label="用户昵称" align="center" key="nickName" prop="nickName" v-if="columns[2].visible"
+                           :show-overflow-tooltip="true"/>
+          <el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" v-if="columns[3].visible"
+                           :show-overflow-tooltip="true"/>
+          <el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber"
+                           v-if="columns[4].visible" width="120"/>
           <el-table-column label="状态" align="center" key="status" v-if="columns[5].visible">
           <el-table-column label="状态" align="center" key="status" v-if="columns[5].visible">
             <template slot-scope="scope">
             <template slot-scope="scope">
               <el-switch
               <el-switch
@@ -174,23 +183,28 @@
                 icon="el-icon-edit"
                 icon="el-icon-edit"
                 @click="handleUpdate(scope.row)"
                 @click="handleUpdate(scope.row)"
                 v-hasPermi="['system:user:edit']"
                 v-hasPermi="['system:user:edit']"
-              >修改</el-button>
+              >修改
+              </el-button>
               <el-button
               <el-button
                 size="mini"
                 size="mini"
                 type="text"
                 type="text"
                 icon="el-icon-delete"
                 icon="el-icon-delete"
                 @click="handleDelete(scope.row)"
                 @click="handleDelete(scope.row)"
                 v-hasPermi="['system:user:remove']"
                 v-hasPermi="['system:user:remove']"
-              >删除</el-button>
-              <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['system:user:resetPwd', 'system:user:edit']">
+              >删除
+              </el-button>
+              <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)"
+                           v-hasPermi="['system:user:resetPwd', 'system:user:edit']">
                 <span class="el-dropdown-link">
                 <span class="el-dropdown-link">
                   <i class="el-icon-d-arrow-right el-icon--right"></i>更多
                   <i class="el-icon-d-arrow-right el-icon--right"></i>更多
                 </span>
                 </span>
                 <el-dropdown-menu slot="dropdown">
                 <el-dropdown-menu slot="dropdown">
                   <el-dropdown-item command="handleResetPwd" icon="el-icon-key"
                   <el-dropdown-item command="handleResetPwd" icon="el-icon-key"
-                    v-hasPermi="['system:user:resetPwd']">重置密码</el-dropdown-item>
+                                    v-hasPermi="['system:user:resetPwd']">重置密码
+                  </el-dropdown-item>
                   <el-dropdown-item command="handleAuthRole" icon="el-icon-circle-check"
                   <el-dropdown-item command="handleAuthRole" icon="el-icon-circle-check"
-                    v-hasPermi="['system:user:edit']">分配角色</el-dropdown-item>
+                                    v-hasPermi="['system:user:edit']">分配角色
+                  </el-dropdown-item>
                 </el-dropdown-menu>
                 </el-dropdown-menu>
               </el-dropdown>
               </el-dropdown>
             </template>
             </template>
@@ -213,36 +227,37 @@
         <el-row>
         <el-row>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="用户昵称" prop="nickName">
             <el-form-item label="用户昵称" prop="nickName">
-              <el-input v-model="form.nickName" placeholder="请输入用户昵称" maxlength="30" />
+              <el-input v-model="form.nickName" placeholder="请输入用户昵称" maxlength="30"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="归属部门" prop="deptId">
             <el-form-item label="归属部门" prop="deptId">
-              <treeselect v-model="form.deptId" :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
+              <treeselect v-model="form.deptId" :options="deptOptions" :show-count="true" placeholder="请选择归属部门"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
         <el-row>
         <el-row>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="手机号码" prop="phonenumber">
             <el-form-item label="手机号码" prop="phonenumber">
-              <el-input v-model="form.phonenumber" placeholder="请输入手机号码" maxlength="11" />
+              <el-input v-model="form.phonenumber" placeholder="请输入手机号码" maxlength="11"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="邮箱" prop="email">
             <el-form-item label="邮箱" prop="email">
-              <el-input v-model="form.email" placeholder="请输入邮箱" maxlength="50" />
+              <el-input v-model="form.email" placeholder="请输入邮箱" maxlength="50"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
         <el-row>
         <el-row>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item v-if="form.userId == undefined" label="用户名称" prop="userName">
             <el-form-item v-if="form.userId == undefined" label="用户名称" prop="userName">
-              <el-input v-model="form.userName" placeholder="请输入用户名称" maxlength="30" />
+              <el-input v-model="form.userName" placeholder="请输入用户名称" maxlength="30"/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item v-if="form.userId == undefined" label="用户密码" prop="password">
             <el-form-item v-if="form.userId == undefined" label="用户密码" prop="password">
-              <el-input v-model="form.password" placeholder="请输入用户密码" type="password" maxlength="20" show-password/>
+              <el-input v-model="form.password" placeholder="请输入用户密码" type="password" maxlength="20"
+                        show-password/>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
@@ -266,7 +281,8 @@
                   v-for="dict in dict.type.sys_normal_disable"
                   v-for="dict in dict.type.sys_normal_disable"
                   :key="dict.value"
                   :key="dict.value"
                   :label="dict.value"
                   :label="dict.value"
-                >{{dict.label}}</el-radio>
+                >{{ dict.label }}
+                </el-radio>
               </el-radio-group>
               </el-radio-group>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
@@ -274,7 +290,7 @@
         <el-row>
         <el-row>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="岗位">
             <el-form-item label="岗位">
-              <el-select v-model="form.postIds" multiple placeholder="请选择">
+              <el-select v-model="form.postIds" clearable placeholder="请选择">
                 <el-option
                 <el-option
                   v-for="item in postOptions"
                   v-for="item in postOptions"
                   :key="item.postId"
                   :key="item.postId"
@@ -331,10 +347,13 @@
         <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
         <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
         <div class="el-upload__tip text-center" slot="tip">
         <div class="el-upload__tip text-center" slot="tip">
           <div class="el-upload__tip" slot="tip">
           <div class="el-upload__tip" slot="tip">
-            <el-checkbox v-model="upload.updateSupport" /> 是否更新已经存在的用户数据
+            <el-checkbox v-model="upload.updateSupport"/>
+            是否更新已经存在的用户数据
           </div>
           </div>
           <span>仅允许导入xls、xlsx格式文件。</span>
           <span>仅允许导入xls、xlsx格式文件。</span>
-          <el-link type="primary" :underline="false" style="font-size:12px;vertical-align: baseline;" @click="importTemplate">下载模板</el-link>
+          <el-link type="primary" :underline="false" style="font-size:12px;vertical-align: baseline;"
+                   @click="importTemplate">下载模板
+          </el-link>
         </div>
         </div>
       </el-upload>
       </el-upload>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
@@ -346,16 +365,16 @@
 </template>
 </template>
 
 
 <script>
 <script>
-import { listUser, getUser, delUser, addUser, updateUser, resetUserPwd, changeUserStatus } from "@/api/system/user";
-import { getToken } from "@/utils/auth";
-import { treeselect } from "@/api/system/dept";
+import {listUser, getUser, delUser, addUser, updateUser, resetUserPwd, changeUserStatus} from "@/api/system/user";
+import {getToken} from "@/utils/auth";
+import {treeselect} from "@/api/system/dept";
 import Treeselect from "@riophae/vue-treeselect";
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 
 
 export default {
 export default {
   name: "User",
   name: "User",
   dicts: ['sys_normal_disable', 'sys_user_sex'],
   dicts: ['sys_normal_disable', 'sys_user_sex'],
-  components: { Treeselect },
+  components: {Treeselect},
   data() {
   data() {
     return {
     return {
       // 遮罩层
       // 遮罩层
@@ -407,7 +426,7 @@ export default {
         // 是否更新已经存在的用户数据
         // 是否更新已经存在的用户数据
         updateSupport: 0,
         updateSupport: 0,
         // 设置上传的请求头部
         // 设置上传的请求头部
-        headers: { Authorization: "Bearer " + getToken() },
+        headers: {Authorization: "Bearer " + getToken()},
         // 上传的地址
         // 上传的地址
         url: process.env.VUE_APP_BASE_API + "/system/user/importData"
         url: process.env.VUE_APP_BASE_API + "/system/user/importData"
       },
       },
@@ -422,26 +441,26 @@ export default {
       },
       },
       // 列信息
       // 列信息
       columns: [
       columns: [
-        { key: 0, label: `用户编号`, visible: true },
-        { key: 1, label: `用户名称`, visible: true },
-        { key: 2, label: `用户昵称`, visible: true },
-        { key: 3, label: `部门`, visible: true },
-        { key: 4, label: `手机号码`, visible: true },
-        { key: 5, label: `状态`, visible: true },
-        { key: 6, label: `创建时间`, visible: true }
+        {key: 0, label: `用户编号`, visible: true},
+        {key: 1, label: `用户名称`, visible: true},
+        {key: 2, label: `用户昵称`, visible: true},
+        {key: 3, label: `部门`, visible: true},
+        {key: 4, label: `手机号码`, visible: true},
+        {key: 5, label: `状态`, visible: true},
+        {key: 6, label: `创建时间`, visible: true}
       ],
       ],
       // 表单校验
       // 表单校验
       rules: {
       rules: {
         userName: [
         userName: [
-          { required: true, message: "用户名称不能为空", trigger: "blur" },
-          { min: 2, max: 20, message: '用户名称长度必须介于 2 和 20 之间', trigger: 'blur' }
+          {required: true, message: "用户名称不能为空", trigger: "blur"},
+          {min: 2, max: 20, message: '用户名称长度必须介于 2 和 20 之间', trigger: 'blur'}
         ],
         ],
         nickName: [
         nickName: [
-          { required: true, message: "用户昵称不能为空", trigger: "blur" }
+          {required: true, message: "用户昵称不能为空", trigger: "blur"}
         ],
         ],
         password: [
         password: [
-          { required: true, message: "用户密码不能为空", trigger: "blur" },
-          { min: 5, max: 20, message: '用户密码长度必须介于 5 和 20 之间', trigger: 'blur' }
+          {required: true, message: "用户密码不能为空", trigger: "blur"},
+          {min: 5, max: 20, message: '用户密码长度必须介于 5 和 20 之间', trigger: 'blur'}
         ],
         ],
         email: [
         email: [
           {
           {
@@ -503,11 +522,11 @@ export default {
     // 用户状态修改
     // 用户状态修改
     handleStatusChange(row) {
     handleStatusChange(row) {
       let text = row.status === "0" ? "启用" : "停用";
       let text = row.status === "0" ? "启用" : "停用";
-      this.$modal.confirm('确认要"' + text + '""' + row.userName + '"用户吗?').then(function() {
+      this.$modal.confirm('确认要"' + text + '""' + row.userName + '"用户吗?').then(function () {
         return changeUserStatus(row.userId, row.status);
         return changeUserStatus(row.userId, row.status);
       }).then(() => {
       }).then(() => {
         this.$modal.msgSuccess(text + "成功");
         this.$modal.msgSuccess(text + "成功");
-      }).catch(function() {
+      }).catch(function () {
         row.status = row.status === "0" ? "1" : "0";
         row.status = row.status === "0" ? "1" : "0";
       });
       });
     },
     },
@@ -585,7 +604,8 @@ export default {
         this.form = response.data.user;
         this.form = response.data.user;
         this.postOptions = response.data.posts;
         this.postOptions = response.data.posts;
         this.roleOptions = response.data.roles;
         this.roleOptions = response.data.roles;
-        this.form.postIds = response.data.postIds;
+        this.form.postIds = response.data.postIds.join() !== '' ? response.data.postIds.join() * 1 : response.data.postIds.join();
+        console.log(this.form.postIds)
         this.form.roleIds = response.data.roleIds;
         this.form.roleIds = response.data.roleIds;
         this.open = true;
         this.open = true;
         this.title = "修改用户";
         this.title = "修改用户";
@@ -600,28 +620,31 @@ export default {
         closeOnClickModal: false,
         closeOnClickModal: false,
         inputPattern: /^.{5,20}$/,
         inputPattern: /^.{5,20}$/,
         inputErrorMessage: "用户密码长度必须介于 5 和 20 之间",
         inputErrorMessage: "用户密码长度必须介于 5 和 20 之间",
-      }).then(({ value }) => {
-          resetUserPwd(row.userId, value).then(response => {
-            this.$modal.msgSuccess("修改成功,新密码是:" + value);
-          });
-        }).catch(() => {});
+      }).then(({value}) => {
+        resetUserPwd(row.userId, value).then(response => {
+          this.$modal.msgSuccess("修改成功,新密码是:" + value);
+        });
+      }).catch(() => {
+      });
     },
     },
     /** 分配角色操作 */
     /** 分配角色操作 */
-    handleAuthRole: function(row) {
+    handleAuthRole: function (row) {
       const userId = row.userId;
       const userId = row.userId;
       this.$router.push("/system/user-auth/role/" + userId);
       this.$router.push("/system/user-auth/role/" + userId);
     },
     },
     /** 提交按钮 */
     /** 提交按钮 */
-    submitForm: function() {
+    submitForm: function () {
       this.$refs["form"].validate(valid => {
       this.$refs["form"].validate(valid => {
         if (valid) {
         if (valid) {
           if (this.form.userId != undefined) {
           if (this.form.userId != undefined) {
+            this.form.postIds = [this.form.postIds]
             updateUser(this.form).then(response => {
             updateUser(this.form).then(response => {
               this.$modal.msgSuccess("修改成功");
               this.$modal.msgSuccess("修改成功");
               this.open = false;
               this.open = false;
               this.getList();
               this.getList();
             });
             });
           } else {
           } else {
+            this.form.postIds = [this.form.postIds]
             addUser(this.form).then(response => {
             addUser(this.form).then(response => {
               this.$modal.msgSuccess("新增成功");
               this.$modal.msgSuccess("新增成功");
               this.open = false;
               this.open = false;
@@ -634,12 +657,13 @@ export default {
     /** 删除按钮操作 */
     /** 删除按钮操作 */
     handleDelete(row) {
     handleDelete(row) {
       const userIds = row.userId || this.ids;
       const userIds = row.userId || this.ids;
-      this.$modal.confirm('是否确认删除用户编号为"' + userIds + '"的数据项?').then(function() {
+      this.$modal.confirm('是否确认删除用户编号为"' + userIds + '"的数据项?').then(function () {
         return delUser(userIds);
         return delUser(userIds);
       }).then(() => {
       }).then(() => {
         this.getList();
         this.getList();
         this.$modal.msgSuccess("删除成功");
         this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
+      }).catch(() => {
+      });
     },
     },
     /** 导出按钮操作 */
     /** 导出按钮操作 */
     handleExport() {
     handleExport() {
@@ -663,7 +687,7 @@ export default {
       this.upload.open = false;
       this.upload.open = false;
       this.upload.isUploading = false;
       this.upload.isUploading = false;
       this.$refs.upload.clearFiles();
       this.$refs.upload.clearFiles();
-      this.$alert(response.msg, "导入结果", { dangerouslyUseHTMLString: true });
+      this.$alert(response.msg, "导入结果", {dangerouslyUseHTMLString: true});
       this.getList();
       this.getList();
     },
     },
     // 提交上传文件
     // 提交上传文件
@@ -672,4 +696,4 @@ export default {
     }
     }
   }
   }
 };
 };
-</script>
+</script>

+ 1 - 1
vue.config.js

@@ -35,7 +35,7 @@ module.exports = {
       // detail: https://cli.vuejs.org/config/#devserver-proxy
       // detail: https://cli.vuejs.org/config/#devserver-proxy
       [process.env.VUE_APP_BASE_API]: {
       [process.env.VUE_APP_BASE_API]: {
         // target: `http://123.249.30.140:8080`,
         // target: `http://123.249.30.140:8080`,
-        target: `http://localhost:8080`,
+        target: `http://localhost:8081`,
         // target: `http://124.221.101.24:8082`,
         // target: `http://124.221.101.24:8082`,
         changeOrigin: true,
         changeOrigin: true,
         pathRewrite: {
         pathRewrite: {