Browse Source

林业流程更改

wang_xy 2 năm trước cách đây
mục cha
commit
e3d36249bc

+ 12 - 3
src/api/forest.js

@@ -242,10 +242,19 @@ export function dutysystemRemove(param) {
     params:param
   })
 }
-// 事件短信联系人
+// // 事件短信联系人
+// export function userFeginlist(param) {
+//   return request({
+//     url: '/center-fire/VisuForestCloudMapController/userFeginlist',
+//     method: 'post'
+//   })
+// }
+
+// 通过部门id获取责任人
 export function userFeginlist(param) {
   return request({
-    url: '/center-fire/VisuForestCloudMapController/userFeginlist',
-    method: 'post'
+    url: '/system/user/userFeginlist',
+    method: 'post',
+    data: param
   })
 }

+ 22 - 0
src/assets/styles/base.scss

@@ -65,6 +65,7 @@ $eventStateColor-wb: #c2bc43;
 $eventStateColor-cf: #a23737;
 $eventStateColor-bj: #6ae08f;
 $eventStateColor-gd: #0369ef;
+$eventStateColor-qr: #13EF4B;
 
 $eventStateColor-xsb: #11b57e;
 $eventStateColor-cb: #e63b4a;
@@ -2494,6 +2495,27 @@ div::-webkit-scrollbar {
         border-radius: .2rem;
       }
     }
+    //确认
+    .event-state-qr {
+      display: flex;
+      align-items: center;
+
+      i {
+        color: $eventStateColor-qr;
+        font-size: 1rem;
+        margin-left: -.5rem;
+      }
+
+      .event-list-state-qr {
+        width: fit-content;
+        background-color: $eventStateColor-qr;
+        color: $white;
+		    padding:0.25rem 0.4rem;
+        margin-left: -.5rem;
+        margin-bottom: .2rem;
+        border-radius: .2rem;
+      }
+    }
 
     .bgt-info-name {
       color: $inBlue;

+ 27 - 1
src/views/eventdetailsdialog.vue

@@ -409,6 +409,12 @@
               v-if="depteventId!=null&&depteventId!=''"
               @click="addLine">添加
             </el-button>
+            <el-button
+              size="mini"
+              type="danger"
+              v-if="depteventId!=null&&depteventId!=''"
+              @click="finUserByDept">选择
+            </el-button>
             <el-table
               :data="dutysystemTableData"
               style="width: 100%"
@@ -968,6 +974,9 @@
         <div id="playWnd" class="playWnd" style="left: 0px; top: 0px;"></div>
       </div>
     </el-dialog>
+    <el-dialog title="人员选择" :visible.sync="showFindUserByDept" width="40%">
+      <findUserByDept v-if="showFindUserByDept" ref="findUserByDept" :deptId="iconCurrentIndex" @addSelection="addSelection"></findUserByDept>
+    </el-dialog>
   </div>
 </template>
 
@@ -979,6 +988,7 @@ import vBottomMenu from '@/components/vBottomMenu.vue' //一体化公共底部
 import eventLogUpload from '@/views/eventLogUpload.vue' //日志上传文件
 import areaSupermap from '@/components/supermap'//区域标记地图
 import TcPlayer from '@/components/TcPlayer' //视频预览
+import findUserByDept from '@/views/findUserByDept' //责任人选择弹框
 import {
   getEventDetail,
   sendEventLog,
@@ -1023,10 +1033,12 @@ export default {
     supermapDialog,
     eventLogUpload,
     areaSupermap,
-    TcPlayer
+    TcPlayer,
+    findUserByDept
   },
   data() {
     return {
+      showFindUserByDept: false,//责任人选择框
       //海康
       cameraTitle: '',
       cameraCode:'',
@@ -1257,6 +1269,20 @@ export default {
       //添加新的行数
       this.dutysystemTableData.push(newValue)
     },
+    finUserByDept: function(){ //根据部门选择责任人
+      this.showFindUserByDept=true;
+    },
+    addSelection: function(userList){
+      for (let i in this.dutysystemTableData) {
+        for (let j in userList) {
+          if(this.dutysystemTableData[i].name == userList[j].name && this.dutysystemTableData[i].telphone == userList[j].telphone){
+            userList.splice(j, 1);
+          }
+        }
+      }
+      this.dutysystemTableData = this.dutysystemTableData.concat(userList);
+      this.showFindUserByDept=false;
+    },
     handleDelete: function(index, row) {//删除负责人行数
       if (row.id != null && row.id != '') {
         let param = { ids: row.id }

+ 113 - 0
src/views/findUserByDept.vue

@@ -0,0 +1,113 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="姓名" prop="nickName">
+        <el-input
+          v-model="queryParams.nickName"
+          placeholder="姓名"
+        />
+      </el-form-item>
+      <el-form-item label="手机号" prop="phonenumber">
+        <el-input
+          v-model="queryParams.phonenumber"
+          placeholder="手机号"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="getList">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="addSelection">确认</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-table v-loading="loading" :data="userList"  @selection-change="handleSelectionChange">
+      <el-table-column align="center" type="selection" width="60"></el-table-column>
+      <el-table-column label="姓名" align="center" prop="nickName"></el-table-column>
+      <el-table-column label="岗位" align="center" prop="name" ></el-table-column>
+      <el-table-column label="手机号" align="center" prop="phonenumber"></el-table-column>
+    </el-table>
+  </div>
+</template>
+
+<script>
+  import {userFeginlist} from "@/api/forest";
+
+  export default {
+    name: "findUserByDept",
+    data() {
+      return {
+        // 遮罩层
+        loading: true,
+        // 选中数组
+        ids: [],
+        // 非单个禁用
+        single: true,
+        // 非多个禁用
+        multiple: false,
+        // 显示搜索条件
+        showSearch: true,
+        // 总条数
+        total: 0,
+        // 可视化前端配置表表格数据
+        userList: [],
+        // 弹出层标题
+        title: "",
+        // 是否显示弹出层
+        open: false,
+        // 查询参数
+        queryParams: {
+          deptId: null,
+          nickName:null,
+          phonenumber:null
+        },
+        // 表单参数
+        form: {},
+        resUser:[],
+      };
+    },
+    props: {
+      deptId: {
+        type: String,
+        required: true
+      },
+    },
+    created() {
+      this.queryParams.deptId = this.deptId;
+      this.getList();
+    },
+    methods: {
+      /** 查询可视化前端配置表列表 */
+      getList() {
+        this.loading = true;
+        userFeginlist(this.queryParams).then(response => {
+          this.userList = response.data;
+          this.loading = false;
+        });
+      },
+      /** 重置按钮操作 */
+      resetQuery() {
+        this.queryParams.nickName=null;
+        this.queryParams.phonenumber=null;
+        this.getList();
+      },
+      // 多选框选中数据
+      handleSelectionChange(selection) {
+        this.resUser = [];
+        for (let i in selection){
+          const res = {};
+          res.id = '';
+          res.dept = '';
+          res.depteventId = '';
+          res.name = selection[i].nickName;
+          res.post = '';
+          res.telphone = selection[i].phonenumber;
+          this.resUser.push(res);
+        }
+      },
+      //数据提交到父页
+      addSelection(){
+        this.$emit("addSelection",this.resUser);
+      }
+    }
+  };
+</script>

+ 7 - 0
src/views/forest.vue

@@ -347,6 +347,13 @@
                         归档
                       </div>
                     </div>
+                    <div v-if="item.eventStatusValue=='forest_event_status_7'"
+                         class="event-state-qr">
+                      <i class="el-icon-caret-left"></i>
+                      <div class="event-list-state-qr">
+                        确认
+                      </div>
+                    </div>
                     <div class="bgt-info-name">{{ item.reportor }} {{ item.eventName }}</div>
                     <div class="bgt-info-place">
                       <ul>