Explorar o código

版本1.4.1 审核

qinhouyu hai 1 ano
pai
achega
5000e84c10

+ 8 - 0
src/api/gas/courtyardNetworkManagement.js

@@ -41,6 +41,14 @@ export function batchReview(data) {
     data: data
   })
 }
+//
+export function getReviewList(data) {
+  return request({
+    url: '/gas/courtyardNetworkManagement/reviewList',
+    method: 'get',
+    params: data
+  })
+}
 
 // 删除庭院网管
 export function delCourtyardNetworkManagement(id) {

+ 1 - 0
src/views/gas/area/index.vue

@@ -283,6 +283,7 @@ import {
 import {getWorker} from "@/api/gas/user";
 import {getToken} from "@/utils/auth";
 import {listPostAll} from "@/api/system/post";
+import Cookies from "js-cookie";
 
 export default {
   name: "Area",

+ 85 - 6
src/views/gas/courtyardNetworkManagement/index.vue

@@ -15,7 +15,7 @@
       <el-form-item label="发现问题" prop="findProblem">
         <el-select v-model="queryParams.findProblem" placeholder="请选择发现问题" clearable size="small">
           <el-option
-            v-for="dict in dict.type.find_problem"
+            v-for="dict in dict.type.courtyard_leakage"
             :key="dict.value"
             :label="dict.label"
             :value="dict.value"
@@ -132,7 +132,7 @@
       <!--      <el-table-column label="所属单元" align="center" prop="unitName"/>-->
       <el-table-column label="发现问题" align="center" prop="findProblem">
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.find_problem" :value="scope.row.findProblem"/>
+          <dict-tag :options="dict.type.courtyard_leakage" :value="scope.row.findProblem"/>
         </template>
       </el-table-column>
       <el-table-column label="审核状态" align="center" prop="processStatus">
@@ -168,13 +168,20 @@
             type="text"
             icon="el-icon-edit"
             @click="openshShow(scope.row)"
-            v-show="scope.row.processStatus == null && scope.row.processStatus != '-1'"
+            v-if="btnShow(scope.row)"
             v-hasPermi="['gas:courtyardNetworkManagement:edit']"
           >审核
           </el-button>
           <el-button
             size="mini"
             type="text"
+            icon="el-icon-edit"
+            @click="reviewListOpen(scope.row)"
+          >审核记录
+          </el-button>
+          <el-button
+            size="mini"
+            type="text"
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
             v-hasPermi="['gas:courtyardNetworkManagement:remove']"
@@ -191,6 +198,55 @@
       :limit.sync="queryParams.pageSize"
       @pagination="getList"
     />
+
+    <el-dialog title="'审核记录'" :visible.sync="reviewListShow" width="800px" append-to-body>
+      <el-table
+        :data="reviewList"
+        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 slot="footer" class="dialog-footer">
+        <el-button @click="reviewListShow = false">关 闭</el-button>
+      </div>
+    </el-dialog>
+
     <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">
@@ -236,7 +292,7 @@
         <el-form-item label="发现问题" prop="findProblem">
           <el-radio-group v-model="form.findProblem">
             <el-radio
-              v-for="dict in dict.type.find_problem"
+              v-for="dict in dict.type.courtyard_leakage"
               :key="dict.value"
               :label="dict.value"
             >{{ dict.label }}
@@ -264,7 +320,7 @@ import {
   getCourtyardNetworkManagement,
   delCourtyardNetworkManagement,
   addCourtyardNetworkManagement,
-  updateCourtyardNetworkManagement, batchReview
+  updateCourtyardNetworkManagement, batchReview, getReviewList
 } from "@/api/gas/courtyardNetworkManagement";
 import {getAreaList} from "@/api/gas/area";
 import {getBuildingList} from "@/api/gas/building";
@@ -276,7 +332,7 @@ import Cookies from "js-cookie";
 
 export default {
   name: "CourtyardNetworkManagement",
-  dicts: ['process_status', 'find_problem'],
+  dicts: ['process_status', 'courtyard_leakage'],
   data() {
     return {
       buildingList: [], // 楼宇集合
@@ -302,6 +358,9 @@ export default {
       total: 0,
       // 庭院网管表格数据
       courtyardNetworkManagementList: [],
+      //审核记录
+      reviewListShow: false,
+      reviewList: [],
       workerList: [],
       // 弹出层标题
       title: "",
@@ -314,6 +373,7 @@ export default {
         pageSize: 10,
         unitId: undefined,
         findProblem: undefined,
+        postNameArias:this.$store.state.user.postName,
         ranks: (Cookies.get("postName").indexOf('xx') > -1 ? parseInt(Cookies.get("postId")) : undefined),
       },
       // 岗位选项
@@ -355,6 +415,17 @@ export default {
     this.getList();
   },
   methods: {
+    btnShow(row){
+      let b = false;
+      if (row.flag==true){
+        b = true;
+      }
+      //主表审核状态通过与不通过都不显示
+      if (row.processStatus=='0' || row.processStatus=='1'){
+        b = false;
+      }
+      return b;
+    },
     getUsers(value){
       if (!value) return;
       getWorker({ranks:value}).then(response => {
@@ -377,10 +448,17 @@ export default {
         this.workerList = req.data
       })
     },
+    reviewListOpen(row){
+      this.reviewList = [];
+      this.reviewListShow=true;
+      getReviewList({emrId: row.id}).then(res=>this.reviewList = res.rows);
+    },
     submitFormSH() {
       this.$refs["formSH"].validate(valid => {
         if (valid) {
           this.buttonLoading = true;
+          const postNameArias = this.$store.state.user.postName;
+          this.formSH.postNameArias = postNameArias
           if (this.formSH.id != null) {
             updateCourtyardNetworkManagement(this.formSH).then(response => {
               this.$modal.msgSuccess("审核成功");
@@ -404,6 +482,7 @@ export default {
     openshShow(data, isBatch) {
       this.formSH = {
         id: undefined,
+        postNameArias: undefined,
         uids: [],
         processStatus: undefined,
         processComments: undefined,

+ 80 - 2
src/views/gas/regulatingBoxMaintenance/index.vue

@@ -206,7 +206,7 @@
           <el-button
             size="mini"
             type="text"
-            v-show="scope.row.processStatus == null && scope.row.processStatus != '-1'"
+            v-if="btnShow(scope.row)"
             icon="el-icon-edit"
             @click="process(scope.row)"
             v-hasPermi="['gas:regulatingBoxMaintenance:edit']"
@@ -215,6 +215,13 @@
           <el-button
             size="mini"
             type="text"
+            icon="el-icon-edit"
+            @click="reviewListOpen(scope.row)"
+          >审核记录
+          </el-button>
+          <el-button
+            size="mini"
+            type="text"
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
             v-hasPermi="['gas:regulatingBoxMaintenance:remove']"
@@ -223,7 +230,53 @@
         </template>
       </el-table-column>
     </el-table>
-
+    <el-dialog title="'审核记录'" :visible.sync="reviewListShow" width="800px" append-to-body>
+      <el-table
+        :data="reviewList"
+        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 slot="footer" class="dialog-footer">
+        <el-button @click="reviewListShow = false">关 闭</el-button>
+      </div>
+    </el-dialog>
     <pagination
       v-show="total>0"
       :total="total"
@@ -323,6 +376,7 @@ import {
 import Cookies from "js-cookie";
 import {listPostAll} from "@/api/system/post";
 import {getWorker} from "@/api/gas/user";
+import {getReviewList} from "@/api/gas/courtyardNetworkManagement";
 
 export default {
   name: "RegulatingBoxMaintenance",
@@ -340,6 +394,9 @@ export default {
       exportLoading: false,
       // 选中数组
       ids: [],
+      //审核记录
+      reviewListShow: false,
+      reviewList: [],
       workerList: [],
       pickerOptions: {
         shortcuts: [{
@@ -395,6 +452,7 @@ export default {
         maintenanceItem: undefined,
         remarks: undefined,
         createTimes: [],
+        postNameArias:this.$store.state.user.postName,
         ranks:(Cookies.get("postName").indexOf('xx') > -1 ? parseInt(Cookies.get("postId")) : undefined),
       },
       // 表单参数
@@ -403,6 +461,7 @@ export default {
         id: '',
         uids: [],
         processStatus: '',
+        postNameArias: null,
         remarks: ""
       },
       // 表单校验
@@ -441,6 +500,22 @@ export default {
         this.workerListSelect = response.data;
       });
     },
+    btnShow(row){
+      let b = false;
+      if (row.flag==true){
+        b = true;
+      }
+      //主表审核状态通过与不通过都不显示
+      if (row.processStatus=='0' || row.processStatus=='1'){
+        b = false;
+      }
+      return b;
+    },
+    reviewListOpen(row){
+      this.reviewList = [];
+      this.reviewListShow=true;
+      getReviewList({emrId: row.id}).then(res=>this.reviewList = res.rows);
+    },
     getWorkerList(ranks) {
       let data = null
       if(ranks){
@@ -453,6 +528,8 @@ export default {
       })
     },
     upprocess() {
+      const postNameArias = this.$store.state.user.postName;
+      this.shFrom.postNameArias = postNameArias
       if (this.shFrom.processStatus == undefined || this.shFrom.processStatus == '') {
         this.$message.warning("请选择审核状态")
       }
@@ -481,6 +558,7 @@ export default {
       else
         this.shFrom.id = data.id;
       this.shFrom.processStatus = '';
+      this.shFrom.postNameArias = null;
       this.shFrom.remarks = '';
       this.dialogVisible = true;
     },

+ 79 - 1
src/views/gas/regulatorBox/index.vue

@@ -176,12 +176,19 @@
           <el-button
             size="mini"
             type="text"
-            v-show="scope.row.processStatus == null && scope.row.processStatus != '-1'"
             icon="el-icon-edit"
             @click="process(scope.row)"
+            v-if="btnShow(scope.row)"
             v-hasPermi="['gas:regulatingBoxMaintenance:edit']"
           >审核
           </el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="reviewListOpen(scope.row)"
+          >审核记录
+          </el-button>
           <!--          <el-button-->
           <!--            size="mini"-->
           <!--            type="text"-->
@@ -201,6 +208,53 @@
       :limit.sync="queryParams.pageSize"
       @pagination="getList"
     />
+    <el-dialog title="'审核记录'" :visible.sync="reviewListShow" width="800px" append-to-body>
+      <el-table
+        :data="reviewList"
+        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 slot="footer" class="dialog-footer">
+        <el-button @click="reviewListShow = false">关 闭</el-button>
+      </div>
+    </el-dialog>
     <el-dialog
       title="审核"
       :visible.sync="dialogVisible"
@@ -626,6 +680,7 @@ import el from "element-ui/src/locale/lang/el";
 import {getWorker} from "@/api/gas/user";
 import Cookies from "js-cookie";
 import {listPostAll} from "@/api/system/post";
+import {getReviewList} from "@/api/gas/courtyardNetworkManagement";
 
 export default {
   name: "RegulatorBox",
@@ -660,6 +715,9 @@ export default {
       // 调压箱管理表格数据
       regulatorBoxList: [],
       workerList: [],
+      //审核记录
+      reviewListShow: false,
+      reviewList: [],
       dialogVisible: false,
       pickerOptions: {
         shortcuts: [{
@@ -692,6 +750,7 @@ export default {
         id: '',
         uids: [],
         processStatus:'',
+        postNameArias:null,
         remarks: ""
       },
       // 弹出层标题
@@ -705,6 +764,7 @@ export default {
         administrativeOffice: undefined,
         number: undefined,
         createTimes:[],
+        postNameArias:this.$store.state.user.postName,
         ranks:(Cookies.get("postName").indexOf('xx') > -1 ? parseInt(Cookies.get("postId")) : undefined),
       },
       // 岗位选项
@@ -815,6 +875,22 @@ export default {
     this.getList();
   },
   methods: {
+    btnShow(row){
+      let b = false;
+      if (row.flag==true){
+        b = true;
+      }
+      //主表审核状态通过与不通过都不显示
+      if (row.processStatus=='0' || row.processStatus=='1'){
+        b = false;
+      }
+      return b;
+    },
+    reviewListOpen(row){
+      this.reviewList = [];
+      this.reviewListShow=true;
+      getReviewList({emrId: row.id}).then(res=>this.reviewList = res.rows);
+    },
     getUsers(value){
       if (!value) return;
       getWorker({ranks:value}).then(response => {
@@ -822,6 +898,8 @@ export default {
       });
     },
     upprocess(){
+      const postNameArias = this.$store.state.user.postName;
+      this.shFrom.postNameArias = postNameArias
       if (this.shFrom.processStatus == undefined || this.shFrom.processStatus == ''){
         this.$message.warning("请选择审核状态")
       } if (this.shFrom.uids.length == 0){

+ 75 - 1
src/views/gas/roadSectionInspection/index.vue

@@ -161,7 +161,7 @@
           <el-button
             size="mini"
             type="text"
-            v-show="scope.row.processStatus == null && scope.row.processStatus != '-1'"
+            v-if="btnShow(scope.row)"
             icon="el-icon-edit"
             @click="process(scope.row)"
             v-hasPermi="['gas:regulatingBoxMaintenance:edit']"
@@ -192,6 +192,53 @@
       :limit.sync="queryParams.pageSize"
       @pagination="getList"
     />
+    <el-dialog title="'审核记录'" :visible.sync="reviewListShow" width="800px" append-to-body>
+      <el-table
+        :data="reviewList"
+        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 slot="footer" class="dialog-footer">
+        <el-button @click="reviewListShow = false">关 闭</el-button>
+      </div>
+    </el-dialog>
     <el-dialog
       title="审核"
       :visible.sync="openSH"
@@ -312,12 +359,16 @@ import {
 import {listPostAll} from "@/api/system/post";
 import Cookies from "js-cookie";
 import {getWorker} from "@/api/gas/user";
+import {getReviewList} from "@/api/gas/courtyardNetworkManagement";
 
 export default {
   name: "RoadSectionInspection",
   dicts: ['find_problem','process_status'],
   data() {
     return {
+      //审核记录
+      reviewListShow: false,
+      reviewList: [],
       // 按钮loading
       buttonLoading: false,
       dialogVisible: false,
@@ -355,6 +406,7 @@ export default {
         samplingMeterCount: undefined,
         findProblem: undefined,
         findTime: undefined,
+        postNameArias:this.$store.state.user.postName,
         ranks:(Cookies.get("postName").indexOf('xx') > -1 ? parseInt(Cookies.get("postId")) : undefined),
       },
       // 表单参数
@@ -362,6 +414,7 @@ export default {
       shFrom:{
         id: '',
         processStatus:'',
+        postNameArias:undefined,
         remarks: ""
       },
       openSH:false,
@@ -396,6 +449,22 @@ export default {
     this.getWorkerList();
   },
   methods: {
+    btnShow(row){
+      let b = false;
+      if (row.flag==true){
+        b = true;
+      }
+      //主表审核状态通过与不通过都不显示
+      if (row.processStatus=='0' || row.processStatus=='1'){
+        b = false;
+      }
+      return b;
+    },
+    reviewListOpen(row){
+      this.reviewList = [];
+      this.reviewListShow=true;
+      getReviewList({emrId: row.id}).then(res=>this.reviewList = res.rows);
+    },
     getUsers(value){
       if (!value) return;
       getWorker({ranks:value}).then(response => {
@@ -406,6 +475,7 @@ export default {
       this.formSH = {
         id: undefined,
         uids: [],
+        postNameArias: undefined,
         processStatus: undefined,
         remarks: undefined,
       }
@@ -425,6 +495,8 @@ export default {
       })
     },
     batchReviews(){
+      const postNameArias = this.$store.state.user.postName;
+      this.formSH.postNameArias = postNameArias
       if (this.formSH.processStatus == undefined || this.formSH.processStatus == ''){
         this.$message.warning("请选择审核状态")
       }
@@ -436,6 +508,8 @@ export default {
       });
     },
     upprocess(){
+      const postNameArias = this.$store.state.user.postName;
+      this.shFrom.postNameArias = postNameArias
       if (this.shFrom.processStatus == undefined || this.shFrom.processStatus == ''){
         this.$message.warning("请选择审核状态")
       }

+ 15 - 3
src/views/gas/valveWellInspection/index.vue

@@ -243,7 +243,7 @@
           <el-input v-model="weizhi" placeholder="位置" disabled/>
         </el-form-item>
         <el-form-item label="发现问题" prop="discoverProblems">
-          <el-select v-model="form.discoverProblems" placeholder="请选择发现问题" clearable size="small" style="width: 100%">
+          <el-select v-model="form.discoverProblems" placeholder="请选择发现问题" clearable size="small" style="width: 100%" @change="checkRemark">
             <el-option
               v-for="dict in dict.type.find_problem"
               :key="dict.value"
@@ -252,8 +252,8 @@
             />
           </el-select>
         </el-form-item>
-        <el-form-item label="备注" prop="remark">
-          <el-input v-model="form.remark" type="textarea" placeholder="请输入备注"/>
+        <el-form-item label="阀井情况" prop="remark" :rules="form.discoverProblems == '0' ? [{ required: true, message: '请输入阀井情况', trigger: 'blur' }] : []">
+          <el-input v-model="form.remark" type="textarea" placeholder="请输入阀井情况" @blur="checkRemark"/>
         </el-form-item>
         <el-col :span="24">
           <el-form-item label="照片" prop="photoList">
@@ -386,6 +386,9 @@ export default {
         discoverProblems: [
           {required: true, message: "发现问题不能为空", trigger: "blur"}
         ],
+        remark: [
+          {required: true, message: "阀井情况不能为空", trigger: "blur"}
+        ],
       },
       workerListSelect:[],
       listValveWellPositionList: []
@@ -398,6 +401,15 @@ export default {
     this.getWorkerList();
   },
   methods: {
+    checkRemark(value){
+      if (value=='0'){
+        this.$nextTick(() => {
+          this.$refs['form'].validateField('remark');
+        });
+      }else {
+        this.$refs['form'].clearValidate('remark');
+      }
+    },
     getUsers(value){
       if (!value) return;
       getWorker({ranks:value}).then(response => {