事件指派人员的人员树结构

Lvtianfang
吕天方 12 months ago
parent 13f315f008
commit 37294bc09d

@ -2,7 +2,7 @@
# @Author: 张涛
# @Date: 2023-11-09 18:29:41
# @LastEditors: JC9527
# @LastEditTime: 2024-02-21 17:43:03
# @LastEditTime: 2024-03-01 16:49:05
# @FilePath: \JiangningUrbanManagePc\.env.development
###
# 页面标题
@ -14,10 +14,10 @@ ENV = 'development'
# 若依管理系统/开发环境
# /dev-api
# VUE_APP_BASE_API = 'http://39.101.188.84:9037'
VUE_APP_BASE_API = 'https://t-jn-bjh-admin-server.jsszkd.com'
# VUE_APP_BASE_API = 'https://t-jn-bjh-admin-server.jsszkd.com'
VUE_APP_BASE_API1 = 'https://t-kd-process-server.jsszkd.com'
VUE_APP_BASE_API2 = 'https://t-jn-development-manager-server.jsszkd.com/api/webapp'
# VUE_APP_BASE_API = 'http://192.168.0.109:9037'
VUE_APP_BASE_API = 'http://192.168.0.105:9037'
# 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true

@ -213,3 +213,17 @@ export function getFence(params){
params
})
}
// 部门有imei人员的部门树
export function hasImeiTree(){
return request({
url: '/jn/department/hasImeiTree',
method: 'get'
})
}
// 根据部门id获取部门imei不为空的人员
export function getDept(id){
return request({
url: '/jn/department/getDept/' + id,
method: 'get'
})
}

@ -4,7 +4,7 @@
* @Author: JC9527
* @Date: 2023-08-15 09:44:13
* @LastEditors: JC9527
* @LastEditTime: 2024-01-28 14:19:23
* @LastEditTime: 2024-03-01 16:48:15
-->
<template>
<div class="left-box">
@ -204,7 +204,6 @@ export default {
onlinePeople({pageNum:1,pageSize:10}).then(res=>{
this.perpsonNum = res.total;
// console.log(res.rows,"res.rows");
this.peopleArray = res.rows;
})
},

@ -4,7 +4,7 @@
* @Author: JC9527
* @Date: 2024-01-09 23:08:15
* @LastEditors: JC9527
* @LastEditTime: 2024-02-21 18:15:08
* @LastEditTime: 2024-03-04 10:48:02
-->
<template>
<div class="map-main">
@ -146,7 +146,7 @@
<div class="event-info">
<div class="dot"></div>
<div class="name">描述</div>
<div class="position">XXXXXXXXXXXXXX</div>
<div class="position">{{ eventInfo.info.content }}</div>
</div>
<div class="btn" @click="eventBtn">
指派
@ -1083,7 +1083,7 @@ export default {
// }
// })
let data = {'queryValue' : [], "myInstanceClassify" : "all", "parameterValue":[], fks: []}
ViewListPage({viewCode:'shi_jian_shou_li_list_page', pageNo: 1, pageSize:500}, data).then(res=>{
ViewListPage({viewCode:'event-all-list', pageNo: 1, pageSize:500}, data).then(res=>{
this.mapLoading = false;
if(res.code == 200) {
let videoPoint = [];
@ -1345,7 +1345,7 @@ export default {
},
//
eventBtn(){
this.$refs.crewAssign.open();
this.$refs.crewAssign.open(this.eventInfo.info);
},
//
monitorVideos(status){

@ -4,22 +4,22 @@
* @Author: JC9527
* @Date: 2023-08-17 09:04:40
* @LastEditors: JC9527
* @LastEditTime: 2023-12-11 13:23:15
* @LastEditTime: 2024-03-04 10:49:27
-->
<template>
<dia-log ref="dialog2" width="30%" title="人员指派">
<div class="crew-assign">
<div class="item">
<div class="ball"></div>
<div class="content">事件名称<span>xx小区乱堆杂物</span></div>
<div class="content">事件名称<span>{{ eventInfo.name }}</span></div>
</div>
<div class="item">
<div class="ball"></div>
<div class="content">事件类别<span>暴露垃圾</span></div>
<div class="content">事件类别<span>{{ eventInfo.type }}</span></div>
</div>
<div class="item">
<div class="ball"></div>
<div class="content">事件地址<span>xx街道xx小区</span></div>
<div class="content">事件地址<span>{{ eventInfo.address }}</span></div>
</div>
<div class="itemtwo">
<div class="left">
@ -27,15 +27,21 @@
<div class="content">指派人员</div>
</div>
<div class="right">
<el-select v-model="value" placeholder="请选择">
<el-option
<el-cascader
v-model="value"
:options="options"
placeholder="请选择"
@change="handleChange"
:props="perpsonProps"
>
<!-- <el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-option> -->
</el-cascader>
</div>
</div>
<div class="itemtwo">
@ -62,39 +68,50 @@
</template>
<script>
import diaLog from "../../components/dialog/index.vue";
import { hasImeiTree, getDept } from "@/api/bigScreenApi"
export default {
components: { diaLog },
data() {
return {
dateTime: "",
options: [
{
value: "选项1",
label: "李飞",
},
{
value: "选项2",
label: "李飞",
},
{
value: "选项3",
label: "李飞",
},
{
value: "选项4",
label: "李飞",
},
{
value: "选项5",
label: "李飞",
},
],
options: [],
value: "",
perpsonProps:{
label:"deptName",
value:"deptId",
lazy:true,
lazyLoad:(node, resolve)=>{
const { children,value,level } = node;
// console.log(children,"children")
// console.log(value);
// console.log("level",level);
if(children?.length == 0 ) {
getDept(value).then(res=>{
const nodes = Array.from(res.data).map((item)=>{
return {
deptId:item.userId,
deptName:item.nickName,
leaf:level >= level
}
})
resolve(nodes)
})
} else {
resolve(node)
}
}
},
eventInfo:{},
};
},
methods: {
open() {
open(info) {
this.$refs.dialog2.open("2");
hasImeiTree().then(res=>{
// console.log('',res);
this.options = res.data[0].children[0].children;
})
this.eventInfo = info;
},
Close() {
this.$refs.dialog2.Close();
@ -104,6 +121,9 @@ export default {
this.$refs.dialog2.Close();
},
confirm() {},
handleChange(value){
console.log(value);
},
},
};
</script>
@ -200,7 +220,7 @@ export default {
-webkit-text-fill-color: rgba(211, 238, 242, 0.2);
}
}
::v-deep .el-select {
::v-deep .el-cascader {
background-color: transparent;
width: 350px;
.el-input

@ -57,6 +57,25 @@
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item prop="openTime">
<template slot="label">
<div class="new-event-form">
<div class="ball"></div>
<span>发生时间</span>
</div>
</template>
<div class="right">
<el-date-picker
v-model="taskForm.openTime"
type="datetime"
placeholder="选择日期时间"
>
</el-date-picker>
<img class="data_icon" src="@/assets/images/timeIcon.png" alt="" />
</div>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
@ -146,6 +165,7 @@ export default {
title:"任务派发",
taskForm:{
task:"",
openTime:"",
},
options:[],
rules:{
@ -289,6 +309,7 @@ export default {
}
.el-form-item__content {
flex: 1;
padding-right: 20px;
// background-image: url("../../../assets/images/timebg.png");
.form-div {
font-size: 14px;
@ -307,7 +328,7 @@ export default {
// background-color: transparent;
// width: 250px;
// }
.select-input {
.select-input,.el-date-editor {
display: flex;
align-items: center;
width: 100%;
@ -341,7 +362,7 @@ export default {
.btn {
width: 91px;
height: 35px;
margin: 0 20px;
margin-left: 20px;
background: rgba(0, 60, 116, 0.6);
box-shadow: inset 0px 0px 6px 0px #00c2ff;
border-radius: 2px 2px 2px 2px;
@ -414,6 +435,50 @@ export default {
-webkit-text-fill-color: rgba(211, 238, 242, 0.2);
}
}
.right {
background-image: url("../../../assets/images/timebg.png");
// width: 350px;
width: 100%;
margin-right: 20px;
box-sizing: border-box;
height: 35px;
background-size: 100% 100%;
position: relative;
::v-deep .el-input__prefix {
display: none;
}
::v-deep .el-date-editor {
background-color: transparent;
// width: 350px;
.el-input__inner {
background-color: transparent;
border: none;
width: 100%;
height: 35px;
font-size: 14px;
font-family: "Source Han Sans CN-Medium";
font-weight: 500;
color: #e9f4ff;
padding-left: 12px;
}
.el-input__inner::placeholder {
/* 在这里添加你想要修改的 placeholder 样式 */
font-size: 14px;
font-family: "Source Han Sans CN-Regular";
font-weight: 400;
color: #d3eef2;
-webkit-background-clip: text;
-webkit-text-fill-color: rgba(211, 238, 242, 0.2);
}
}
.data_icon {
position: absolute;
right: 30px;
top: 8px;
width: 20px;
}
}
}
}
::v-deep section {

Loading…
Cancel
Save