From 610a3c14abbd833de453bf4fe4dc0ce771482681 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期五, 25 十一月 2022 14:24:35 +0800
Subject: [PATCH] 完善数据上报
---
src/views/personalCenter/components/SubAccount.vue | 322 ++++++++++++++++++++++++++++++++++-------------------
1 files changed, 207 insertions(+), 115 deletions(-)
diff --git a/src/views/personalCenter/components/SubAccount.vue b/src/views/personalCenter/components/SubAccount.vue
index 95b6f3d..985a4f0 100644
--- a/src/views/personalCenter/components/SubAccount.vue
+++ b/src/views/personalCenter/components/SubAccount.vue
@@ -1,14 +1,14 @@
<template>
<div class="sub-account" v-if="!isShowAdd && !isShowRelate">
- <div class="head-name">瀛愯处鎴风鐞�</div>
+ <div class="head-name" v-show="showHeadName">瀛愯处鍙风鐞�</div>
<div class="search">
<div class="left">
<div class="id">
- 濮撳悕/鎵嬫満鍙�
- <el-input v-model="inputText" placeholder="璇疯緭鍏�"></el-input>
+ 鐢ㄦ埛鍚�/濮撳悕/鎵嬫満鍙�
+ <el-input v-model="inputText" placeholder="璇疯緭鍏�" clearable></el-input>
</div>
- <div class="cluster">
+ <div class="cluster" v-show="false">
鎺堟潈鏃堕暱
<el-select @change="findUserList" v-model="timeLength" placeholder="璇烽�夋嫨">
<el-option v-for="item in durationArr" :key="item.value" :label="item.label" :value="item.value">
@@ -41,20 +41,17 @@
:data="dataList"
:fit="true"
:default-sort="{ prop: 'createTime', order: 'descending' }"
+ v-loading="tbLoading"
>
<el-table-column label="搴忓彿" width="55" class-name="index">
<template slot-scope="scope">{{ scope.$index + 1 + (page - 1) * size }}</template>
</el-table-column>
- <!-- <el-table-column
- prop="trueName"
- label="濮撳悕"
- show-overflow-tooltip
- ></el-table-column> -->
<el-table-column prop="username" label="鐢ㄦ埛鍚�" show-overflow-tooltip></el-table-column>
+ <el-table-column prop="trueName" label="濮撳悕" show-overflow-tooltip></el-table-column>
<el-table-column prop="phoneNum" label="鎵嬫満鍙�" show-overflow-tooltip></el-table-column>
<el-table-column prop="userType" label="鐢ㄦ埛绫诲瀷">
<template slot-scope="scope">
- <span>{{ scope.row.userType == 1 ? "涓汉" : "鍏徃" }}</span>
+ <span>{{ scope.row.userType == 1 ? "鏈湴" : "OA璐︽埛" }}</span>
</template>
</el-table-column>
@@ -66,19 +63,20 @@
<!-- <el-table-column prop="authDuration" label="鎺堟潈鏃堕暱">
</el-table-column> -->
- <el-table-column prop="dataNames" label="鍏徃"> </el-table-column>
- <el-table-column prop="companyName" label="閮ㄩ棬" show-overflow-tooltip></el-table-column>
+ <!-- <el-table-column prop="dataNames" label="鍏徃"> </el-table-column> -->
+ <el-table-column prop="companyName" label="閮ㄩ棬" show-overflow-tooltip min-width="200px"></el-table-column>
- <el-table-column label="鐘舵��">
+ <!-- <el-table-column label="鐘舵��">
<template slot-scope="scope">
<div v-if="scope.row.isBind == 1" class="status green">宸茬粦瀹�</div>
<div v-else class="status">鏈粦瀹�</div>
</template>
- </el-table-column>
+ </el-table-column> -->
- <el-table-column label="鎿嶄綔">
+ <el-table-column label="鎿嶄綔" align="center" width="100px">
<template slot-scope="scope">
<span class="iconfont option" @click="editUser(scope.row)">缂栬緫</span>
+ <span class="iconfont option" style="color:red" @click="delUser(scope.row)">鍒犻櫎</span>
</template>
</el-table-column>
</el-table>
@@ -97,10 +95,11 @@
</div>
</div>
<div class="sub-account" v-else-if="isShowAdd">
- <div class="add-title" @click="isShowAdd = false">
+ <!-- <div class="add-title" @click="isShowAdd = false">
<span class="iconfont"></span>
- <span>娣诲姞瀛愯处鎴�</span>
- </div>
+ <span>瀛愯处鎴风鐞�</span>
+ </div> -->
+ <div class="head-name" style="margin-bottom:20px">瀛愯处鎴风紪杈�</div>
<el-form
:model="ruleForm"
:rules="rules"
@@ -112,8 +111,7 @@
<el-form-item label="鐢ㄦ埛鍚�" prop="username">
<el-input v-model="ruleForm.username" style="width: 350px"></el-input>
</el-form-item>
- <!-- <el-form-item label="瀵嗙爜" prop="password" v-show="!isEditing"> -->
- <el-form-item label="瀵嗙爜" prop="password">
+ <el-form-item label="瀵嗙爜" prop="password" v-show="!isEditing">
<el-input v-model="ruleForm.password" style="width: 350px"></el-input>
</el-form-item>
<!-- <el-form-item label="閲嶇疆瀵嗙爜">
@@ -198,9 +196,32 @@
/>
</div>
</el-form-item>
+ <el-form-item label="鐭俊鎺ㄩ��" v-show="isEditing">
+ <el-select v-model="smsSceneConfig" multiple collapse-tags style="width: 250px" placeholder="璇烽�夋嫨">
+ <el-option
+ v-for="item in taskOptions"
+ style="font-size: 12px"
+ :key="item.value"
+ :value="item.value"
+ :label="item.value"
+ :title="item.value"
+ ></el-option>
+ </el-select>
+ <el-select
+ v-model="smsLevelConfig"
+ multiple
+ collapse-tags
+ style="margin-left:10px;width: 150px"
+ placeholder="璇烽�夋嫨"
+ >
+ <el-option v-for="item in levelOptions" :key="item.value" :label="item.label" :value="item.value">
+ </el-option>
+ </el-select>
+ <el-checkbox v-model="smsEnable" style="margin-left:20px">鍚敤</el-checkbox>
+ </el-form-item>
</el-form>
<div class="right">
- <div class="button searchBtn" @click="saveSubUser">淇濆瓨</div>
+ <div class="button searchBtn" @click="saveUser">淇濆瓨</div>
<div class="button resetBtn" @click="resetUser">閲嶇疆</div>
<div class="button resetBtn" style="margin-left:20px" @click="goback">杩斿洖</div>
</div>
@@ -216,7 +237,8 @@
</template>
<script>
-import { findUserList, saveSubUser, getMenu, getDataTree } from "@/api/user"
+import { findUserList, saveSubUser, getMenu, getDataTree, deleteUser } from "@/api/user"
+import { findTaskById, updateTask } from "@/api/report"
import { getAreas, getDic } from "@/api/login"
import Steps from "./Steps"
@@ -228,6 +250,59 @@
Steps,
StepsCard,
TreeMenu
+ },
+ computed: {
+ taskOptions() {
+ return [
+ {
+ value: "鏄庣伀",
+ label: "鏄庣伀"
+ },
+ {
+ value: "鐑熼浘",
+ label: "鐑熼浘"
+ },
+ {
+ value: "缈昏秺鍥存爮",
+ label: "缈昏秺鍥存爮"
+ },
+ {
+ value: "鍖哄煙鍏ヤ镜",
+ label: "鍖哄煙鍏ヤ镜"
+ },
+ {
+ value: "浜哄憳绂诲矖",
+ label: "浜哄憳绂诲矖"
+ },
+ {
+ value: "浜哄憳鑱氶泦",
+ label: "浜哄憳鑱氶泦"
+ },
+ {
+ value: "鎵撶數璇�",
+ label: "鎵撶數璇�"
+ },
+ {
+ value: "鎶界儫",
+ label: "鎶界儫"
+ },
+ {
+ value: "鏈僵鎴村畨鍏ㄥ附",
+ label: "鏈僵鎴村畨鍏ㄥ附"
+ },
+ {
+ value: "鏈┛宸ヨ",
+ label: "鏈┛宸ヨ"
+ },
+ {
+ value: "鐫″矖",
+ label: "鐫″矖"
+ }
+ ]
+ },
+ showHeadName() {
+ return this.$route.path === "/personalCenter"
+ }
},
data() {
const validateTree = (rule, value, callback) => {
@@ -243,14 +318,15 @@
}
}
return {
+ tbLoading: false,
searchTime: [this.$moment().format("YYYY-MM-DD 00:00:00"), this.$moment().format("YYYY-MM-DD HH:mm:ss")], //鎼滅储鏃堕棿
page: 1,
size: 10, //鍒嗛〉鐩稿叧
+ total: 0, //鎬绘暟,
inputText: "", //杈撳叆妗嗗唴瀹�
activeStep: 0,
activeIndex: 0,
industrys: [],
- total: 0, //鎬绘暟,
treeHeight: 750,
treeData: [],
treeSettings: {
@@ -328,17 +404,27 @@
username: [{ required: true, message: "璇疯緭鍏ョ敤鎴峰悕", trigger: "blur" }],
// password: [{ required: true, message: "璇疯緭鍏ュ瘑鐮�", trigger: "blur" }],
userType: [{ required: true, message: "璇烽�夋嫨鐢ㄦ埛绫诲瀷", trigger: "blur" }],
- trueName: [{ required: true, message: "璇疯緭鍏ュ鍚�", trigger: "blur" }],
- menuIds: [{ validator: validateTree, trigger: "blur" }]
+ trueName: [{ required: true, message: "璇疯緭鍏ュ鍚�", trigger: "blur" }]
+ // menuIds: [{ validator: validateTree, trigger: "blur" }]
},
sysMenus: [],
DataTree: [],
+ smsSceneConfig: [],
+ smsLevelConfig: [],
+ smsEnable: false,
userInfo: {},
curEditId: "",
defaultProp: {
children: "children",
label: "name"
- }
+ },
+ levelOptions: [
+ { value: "涓�绾�", label: "涓�绾�" },
+ { value: "浜岀骇", label: "浜岀骇" },
+ { value: "涓夌骇", label: "涓夌骇" },
+ { value: "鍥涚骇", label: "鍥涚骇" },
+ { value: "浜旂骇", label: "浜旂骇" }
+ ]
}
},
created() {
@@ -351,6 +437,7 @@
mounted() {
this.TreeDataPool.reset()
this.TreeDataPool.multiple = true
+ this.VideoPhotoData.queryTaskList()
},
methods: {
fetchDataTree() {
@@ -391,7 +478,7 @@
this.ruleForm.companyName = row.companyName
this.ruleForm.phoneNum = row.phoneNum
this.ruleForm.email = row.email
- this.ruleForm.isChangePwd = row.isChangePwd
+ this.ruleForm.isChangePwd = false
this.ruleForm.industryId = row.industryId
this.ruleForm.areaId = row.areaId
this.ruleForm.address = [row.provinceId, row.areaId]
@@ -400,11 +487,27 @@
this.checkedMenu = row.menuIds
this.checkedData = row.dataIds
+ this.smsSceneConfig = []
+ this.smsLevelConfig = []
+ this.smsEnable = false
+ findTaskById({ id: row.id }).then((rsp) => {
+ if (rsp && rsp.success && rsp.data != "") {
+ if (rsp.data.taskName != "") {
+ this.smsSceneConfig = rsp.data.taskName.split(",")
+ }
+ if (rsp.data.level != "") {
+ this.smsLevelConfig = rsp.data.level.split(",")
+ }
+ this.smsEnable = rsp.data.enable
+ }
+ })
+
// 鏌ヨ褰撳墠鐢ㄦ埛鏉冮檺涓嬫墍鏈夊彲绠$悊鐨勬憚鍍忔満
if (row.dataIds) {
sessionStorage.setItem("clusterId", row.dataIds[0])
await this.TreeDataPool.fetchTreeData()
}
+
// 鐢╡mail瀛楁鏆傛椂浠f浛鎽勫儚鏈洪泦鍚堝瓧娈�
let checkedCameras = row.email
@@ -418,6 +521,23 @@
let cameraIds = checkedCameras.split(",")
this.$refs.ztreeMenus.updateNodes(cameraIds)
}
+ },
+ delUser(row) {
+ this.$confirm("纭瑕佸垹闄よ鐢ㄦ埛鍚�, 鏄惁缁х画?", "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning"
+ }).then(async () => {
+ let rsp = await deleteUser({ id: row.id })
+ if (rsp && rsp.success) {
+ this.$message({
+ type: "success",
+ message: "鍒犻櫎鎴愬姛!"
+ })
+ }
+
+ this.findUserList()
+ })
},
resetUser() {
this.ruleForm = {
@@ -436,6 +556,9 @@
provinceId: "",
authDuration: 1
}
+ this.smsSceneConfig = []
+ this.smsLevelConfig = []
+ this.smsEnable = false
this.$nextTick(() => {
this.$refs.treeMenus.setCheckedKeys([])
this.$refs.treeData.setCheckedKeys([])
@@ -449,7 +572,7 @@
console.log("鏌ヨ琛屼笟鍒楄〃澶辫触锛�")
}
},
- saveSubUser() {
+ saveUser() {
let _this = this
this.ruleForm.menuIds = this.$refs.treeMenus.getCheckedKeys()
this.ruleForm.dataIds = this.$refs.treeData.getCheckedKeys()
@@ -481,7 +604,8 @@
// 缂栬緫涓嶆彁浜ゅ瘑鐮�
if (this.isEditing) {
- // delete json.password
+ delete json.password
+ json.isChangePwd = false
}
if (typeof json.areaId === "string") {
@@ -496,16 +620,34 @@
saveSubUser(json)
.then((res) => {
if (res.success) {
- this.$notify.success(res.data)
- this.isShowAdd = false
- this.isEditing = false
- this.findUserList()
+ // 淇濆瓨娑堟伅鎺ㄩ��
+ if (_this.isEditing) {
+ let smsTaskInfo = {
+ id: _this.ruleForm.id,
+ taskName: _this.smsSceneConfig.join(","),
+ level: _this.smsLevelConfig.join(","),
+ cameras: json.email,
+ person: json.trueName,
+ tel: json.phoneNum,
+ enable: _this.smsEnable,
+ IsDel: "0"
+ }
+
+ updateTask(smsTaskInfo).then((rsp) => {
+ // console.log(rsp)
+ })
+ }
+
+ _this.$notify.success(res.data)
+ _this.isShowAdd = false
+ _this.isEditing = false
+ _this.findUserList()
} else {
- this.$notify.error(res.msg)
+ _this.$notify.error(res.msg)
}
})
.catch((err) => {
- this.$notify.error(err.data.msg)
+ _this.$notify.error(err.data.msg)
})
} else {
return false
@@ -513,6 +655,11 @@
})
},
findUserList() {
+ this.tbLoading = true
+ if (this.inputText.length) {
+ this.inputText = this.inputText.trim()
+ }
+
findUserList({
inputText: this.inputText,
page: this.page,
@@ -526,9 +673,12 @@
} else {
this.$notify.error("鍔犺浇瀛愯处鎴峰垪琛ㄥけ璐�")
}
+
+ this.tbLoading = false
})
.catch((e) => {
this.$notify.error(e.msg)
+ this.tbLoading = false
})
},
goback() {
@@ -544,34 +694,7 @@
this.inputText = ""
this.timeLength = null
},
- // 璺冲埌璁惧璇︽儏
- checkDetail(row) {
- this.$router.push({
- path: "/equipmentDetail",
- query: {
- id: row.devId,
- ip: row.devIp,
- port: row.serverPort,
- ndid: row.id
- }
- })
- },
- // 璺冲埌绠楁硶璇︽儏
- algorithmDetail(row) {
- this.$router.push({
- path: "/algorithmDetail",
- query: {
- id: row.devId,
- ip: row.devIp,
- port: row.serverPort
- }
- })
- },
-
- // 鏌ヨ鍒楄〃
-
- save() {},
//鍒嗛〉鍔熻兘
handleSizeChange(size) {
this.size = size
@@ -583,53 +706,14 @@
this.findUserList()
},
- //瑙g粦鎸夐挳
- Untying(row) {
- console.log(row)
- this.unbindId = row.id
- this.isShowUnbind = true
- },
-
- //鑾峰緱榛樿鏃堕棿
- getDateInit() {
- // 瑕佹眰 榛樿涓�涓湀
- const end = new Date()
- const start = new Date()
- const nowDate = new Date()
- nowDate.setHours(0)
- nowDate.setMinutes(0)
- nowDate.setSeconds(0)
- nowDate.setMilliseconds(0)
- start.setTime(nowDate.getTime() - 3600 * 1000 * 24 * 30)
- end.setTime(nowDate.getTime() + 3600 * 1000 * 24 - 1)
- return [this.$moment(start).format("YYYY-MM-DD HH:mm:ss"), this.$moment(end).format("YYYY-MM-DD HH:mm:ss")]
- },
-
- // 鍏抽棴瑙g粦寮圭獥
- closeUnbindBox() {
- this.isShowUnbind = false
- },
-
- //瑙g粦鎴愬姛鍥炶皟
- reflash() {
- this.isShowUnbind = false
- },
-
- clearSearch() {
- this.searchTime = this.getDateInit()
- this.inputText = ""
- },
-
- //閫�鍑洪泦缇�
- quitCluster(equipment) {
- this.activeEquipment = equipment
- this.showQuit = true
- },
-
- //鍔犲叆闆嗙兢
- joinCluster(equipment) {
- this.activeEquipment = equipment
- this.showJoin = true
+ // 鐢熸垚uuid
+ getUuid() {
+ let originStr = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
+ let originChar = "0123456789abcdef"
+ let len = originChar.length
+ return originStr.replace(/x/g, function(match) {
+ return originChar.charAt(Math.floor(Math.random() * len))
+ })
}
}
}
@@ -695,9 +779,10 @@
}
}
.searchBtn {
- width: 60px;
- height: 32px;
- line-height: 32px;
+ width: 50px;
+ height: 25px;
+ line-height: 25px;
+ font-size: 14px;
text-align: center;
color: #fff;
background: #0065ff;
@@ -707,9 +792,10 @@
display: flex;
}
.resetBtn {
- width: 60px;
- height: 32px;
- line-height: 32px;
+ width: 50px;
+ height: 25px;
+ line-height: 25px;
+ font-size: 14px;
text-align: center;
color: #0065ff;
box-sizing: border-box;
@@ -918,6 +1004,12 @@
}
}
}
+
+ .el-select ::v-deep {
+ .el-select__tags-text {
+ color: #3d3d3d;
+ }
+ }
}
</style>
--
Gitblit v1.8.0