Commit d900fff4 by xue_wengang

个人中心、监控预警

parent 884abe91
{
"code":200,
"data":{
"rows":[
{
"ids":"456024",
"label":"手机号",
"codeType":"CODE_CBYP_BSHLX",
"text":"手机号",
"pId":null,
"id":"mobile",
"isParent":false,
"children":[]
},
{
"ids":"456025",
"label":"银行卡号",
"codeType":"CODE_CBYP_BSHLX",
"text":"银行卡号",
"pId":null,
"id":"yhkh",
"isParent":false,
"children":[]
},
{
"ids":"456026",
"label":"QQ号",
"codeType":"CODE_CBYP_BSHLX",
"text":"QQ号",
"pId":null,
"id":"qq",
"isParent":false,
"children":[]
},
{
"ids":"456027",
"label":"微信号",
"codeType":"CODE_CBYP_BSHLX",
"text":"微信号",
"pId":null,
"id":"wx",
"isParent":false,
"children":[]
},
{
"ids":"456028",
"label":"邮箱号",
"codeType":"CODE_CBYP_BSHLX",
"text":"邮箱号",
"pId":null,
"id":"email",
"isParent":false,
"children":[]
},
{
"ids":"456029",
"label":"网址",
"codeType":"CODE_CBYP_BSHLX",
"text":"网址",
"pId":null,
"id":"url",
"isParent":false,
"children":[]
},
{
"ids":"456030",
"label":"其他标识号",
"codeType":"CODE_CBYP_BSHLX",
"text":"其他标识号",
"pId":null,
"id":"otherid",
"isParent":false,
"children":[]
},
{
"ids":"1304561",
"label":"电信网络诈骗",
"codeType":"CODE_ZDRYLB",
"text":"电信网络诈骗",
"pId":null,
"id":"zd010002",
"isParent":false,
"children":[]
},
{
"ids":"1304562",
"label":"在逃",
"codeType":"CODE_ZDRYLB",
"text":"在逃",
"pId":null,
"id":"zd010007",
"isParent":false,
"children":[]
},
{
"ids":"1304563",
"label":"撤逃",
"codeType":"CODE_ZDRYLB",
"text":"撤逃",
"pId":null,
"id":"zd010008",
"isParent":false,
"children":[]
},
{
"ids":"1304564",
"label":"前科人员",
"codeType":"CODE_ZDRYLB",
"text":"前科人员",
"pId":null,
"id":"zd010013",
"isParent":false,
"children":[]
},
{
"ids":"1304565",
"label":"一人两案",
"codeType":"CODE_ZDRYLB",
"text":"一人两案",
"pId":null,
"id":"zd010014",
"isParent":false,
"children":[]
},
{
"ids":"1304566",
"label":"一人多案",
"codeType":"CODE_ZDRYLB",
"text":"一人多案",
"pId":null,
"id":"zd010015",
"isParent":false,
"children":[]
},
{
"ids":"1304567",
"label":"结伙作案",
"codeType":"CODE_ZDRYLB",
"text":"结伙作案",
"pId":null,
"id":"zd010017",
"isParent":false,
"children":[]
},
{
"ids":"1304568",
"label":"团伙作案",
"codeType":"CODE_ZDRYLB",
"text":"团伙作案",
"pId":null,
"id":"zd010018",
"isParent":false,
"children":[]
},
{
"ids":"1304569",
"label":"跨省作案",
"codeType":"CODE_ZDRYLB",
"text":"跨省作案",
"pId":null,
"id":"zd010026",
"isParent":false,
"children":[]
},
{
"ids":"1304570",
"label":"跨市作案",
"codeType":"CODE_ZDRYLB",
"text":"跨市作案",
"pId":null,
"id":"zd010027",
"isParent":false,
"children":[]
},
{
"ids":"1304571",
"label":"跨区作案",
"codeType":"CODE_ZDRYLB",
"text":"跨区作案",
"pId":null,
"id":"zd010028",
"isParent":false,
"children":[]
},
{
"ids":"1304572",
"label":"涉案电话",
"codeType":"CODE_ZDRYLB",
"text":"涉案电话",
"pId":null,
"id":"zd090001",
"isParent":false,
"children":[]
},
{
"ids":"1304573",
"label":"犯罪窝点",
"codeType":"CODE_ZDRYLB",
"text":"犯罪窝点",
"pId":null,
"id":"zd090002",
"isParent":false,
"children":[]
},
{
"ids":"1304574",
"label":"异常资金流动",
"codeType":"CODE_ZDRYLB",
"text":"异常资金流动",
"pId":null,
"id":"zd090003",
"isParent":false,
"children":[]
}
]
},
"success":true,
"message":"成功"
}
\ No newline at end of file
import { get, post, postform } from "@/utils/http.js";
import base from "@/api/base";
// 全省案件查询
export const getCbQsajList = params =>
post(`${base.alyIP}/jcyj/getCbQsajList`, params);
// 全国案件查询
export const getCbQgajList = params =>
post(`${base.alyIP}/jcyj/getCbQgajList`, params);
import { get, post, postform } from "@/utils/http.js";
import base from "@/api/base";
// 模型新增
export const addJcyjMx = params =>
postform(`${base.alyIP}/jcyj/addJcyjMx`, params);
// 模型详情
export const getJcyjMxById = params =>
post(`${base.alyIP}/jcyj/getJcyjMxById`, params);
// 模型修改
export const updateJcyjMx = params =>
postform(`${base.alyIP}/jcyj/updateJcyjMx`, params);
// 模型删除
export const delJcyjMxById = params =>
post(`${base.alyIP}/jcyj/delJcyjMxById`, params);
// 模型查询
export const getJcyjMxByType = params =>
post(`${base.alyIP}/jcyj/getJcyjMxByType`, params);
......@@ -8,8 +8,15 @@ export const getDabqDetail = params =>
// 1.3 团伙作案、结伙作案详情
export const getDrbqDetail = params =>
post(`${base.alyIP}/jcyj/getDrbqDetail`, params);
// 1.4 在逃、撤逃人员详情
export const getZtDetail = params =>
post(`${base.alyIP}/jcyj/getZtDetail`, params);
\ No newline at end of file
post(`${base.alyIP}/jcyj/getZtDetail`, params);
// 结果等级
export const addJcyjGzjg = params =>
post(`${base.alyIP}/jcyj/addJcyjGzjg`, params);
// 结果查询
export const getJcyjGzjgList = params =>
post(`${base.alyIP}/jcyj/getJcyjGzjgList`, params);
......@@ -21,4 +21,8 @@ export const updateUserXx = params =>
export const openUserXx = params =>
post(`${base.alyIP}/sysuser/openUserXx`, params);
//个人中心
export const getPersonInfo = params =>
post(`${base.alyIP}/sysuser/getPersonInfo`, params);
......@@ -25,11 +25,12 @@ export const remove = params =>
export const selectMenuList = params =>
post(`${base.alyIP}/sysrole/selectMenuList`, params);
//用户查询
//用户查询
export const selectUserNewList = params =>
post(`${base.alyIP}/sysuser/selectUserNewList`, params);
post(`${base.alyIP}/sysuser/selectUserNewList`, params);
//角色查询
export const selectRoleList = params =>
post(`${base.alyIP}/sysrole/selectRoleList`, params);
......@@ -1322,7 +1322,8 @@ export default {
item.id == "kyxsbshlx" ||
item.id == "shseSjhylydm" ||
item.id == "bkmxSyfw" ||
item.id == "bkmxMxCode"
item.id == "bkmxMxCode" ||
item.id == "mxCode"
) {
str = self.formLabelAlign[item.id].join(",");
}
......
......@@ -871,7 +871,6 @@
v-if="
pageBs == 'zdryGl' ||
pageBs == 'queryDzrygl' ||
pageBs == 'jcyjZdrygl' ||
pageBs == 'dytj'
"
>
......@@ -1807,7 +1806,6 @@
fixed="left"
v-if="
!(
pageBs == 'queryBsh' ||
pageBs == 'gnsyrz' ||
pageBs == 'queryXsccNew' ||
pageBs == 'queryWcqkNew' ||
......@@ -1909,6 +1907,7 @@
!(
pageBs == 'rySp' ||
pageBs == 'jcyjZdrygl' ||
pageBs == 'queryBsh' ||
pageBs == 'yhkxsGl' ||
pageBs == 'rwbd' ||
pageBs == 'gzzkyxs' ||
......@@ -2166,6 +2165,7 @@
pageBs != 'rwbd' &&
pageBs != 'rwbdjs' &&
pageBs != 'jcyjZdrygl' &&
pageBs != 'queryBsh' &&
pageBs != 'queryRlqbxsSH' &&
pageBs != 'xywspdzczl' &&
pageBs != 'xywspdfkxx' &&
......@@ -2625,7 +2625,7 @@
</el-table>
<div
v-if="
listMode == 2 && pageBs != 'queryDzrygl' && pageBs != 'jcyjZdrygl'
listMode == 2 && pageBs != 'queryDzrygl'
"
>
<el-card
......@@ -3009,7 +3009,7 @@ import LazySelectTreeDialog from "@c/lazy_treeCode_components.vue";
import Http from "@/utils/http.js";
import axios from "axios";
import { addMenuBt } from "@/api/dwgrxnpg/dwgrxnpg.js";
import { selectMenuList, selectUserNewList } from "@/api/userAuth/menu.js";
import { selectMenuList, selectRoleList } from "@/api/userAuth/menu.js";
import { post } from "@/utils/http.js";
import url from "@/api/base";
import qs from "qs";
......@@ -3399,7 +3399,7 @@ export default {
resolve(result.data.rows);
});
} else if (this.pageBs == "queryRole") {
selectUserNewList({
selectRoleList({
code: "",
limit: 10,
page: 1,
......
......@@ -96,6 +96,14 @@ const menuLayouts = [
},
component: () => import("@/views/jcyjzxt/queryBsh.vue")
},
{
path: "/yjmxgl",
name: "yjmxgl",
meta: {
title: '预警模型管理'
},
component: () => import("@/views/jcyjzxt/yjmxgl/yjmxgl.vue")
},
];
export default [
......@@ -112,4 +120,20 @@ export default [
},
component: () => import("@/views/jcyjzxt/hmd/add.vue")
},
{
path: "/addYjmx",
name: "addYjmx",
meta: {
title: '新增模型'
},
component: () => import("@/views/jcyjzxt/yjmxgl/addYjmx.vue")
},
{
path: "/yjmxInfo",
name: "yjmxInfo",
meta: {
title: '模型详情'
},
component: () => import("@/views/jcyjzxt/yjmxgl/yjmxInfo.vue")
},
];
......@@ -75,6 +75,15 @@ const menuLayouts = [
},
component: () => import("@/views/userAuth/tellWhite/queryTWhite.vue")
},
{
path: "/personalInfo",
name: "personalInfo",
meta: {
isAdd: false,
title: '个人中心'
},
component: () => import("@/views/userAuth/personalInfo.vue")
},
];
export default [{
path: "/right",
......
<template>
<div>
<form-compontent
:formField="propFormField"
:formLabelAligns="formLabelAlign"
@submit="submit"
:propTitle="title"
@getDialogSeletesd="getDialogSeletesd"
>
</form-compontent>
</div>
</template>
<script>
import formCompontent from "@c/form.vue";
import {
addJcyjMx,
getJcyjMxById,
updateJcyjMx,
} from "@/api/jcyjzxt/yjmxgl.js";
export default {
name: "addYjmx",
components: {
formCompontent,
},
data() {
return {
title: "模型新增",
propFormField: [
//基本信息
{
id: 1,
objStr: "",
index: 0,
data: [
{
name: "模型名称:",
id: "mxName",
type: "text",
prop: "checkEmpty",
value: "",
placeholder: "请输入",
col: "2",
},
{
name: "适用范围:",
id: "mxSyfw",
type: "codeTree",
prop: "checkEmpty",
value: "",
placeholder: "请选择",
col: "2",
codeOptions: [],
codeTree: "CODE_YJMX_SYFW",
},
{
name: "模型代码:",
id: "mxCode",
type: "codeTree",
prop: "checkEmpty",
value: "",
placeholder: "请选择",
multiple: true,
col: "2",
codeOptions: [],
codeTree: "CODE_ALL", //监测预警模型所有字典码
},
{
name: "模型描述:",
id: "mxMs",
type: "textarea",
value: "",
placeholder: "请输入",
col: "18",
},
],
},
],
formLabelAlign: {},
Loading: null,
mxSyfwTxt: "",
mxCodeTxt: "",
};
},
methods: {
getDialogSeletesd(label) {
debugger
if (label == "证件号码" || label == "标识号码") {
this.mxSyfwTxt = label;
}else{
this.mxCodeTxt = label
}
},
submit(params) {
let loading = this.$loading({
lock: true,
text: "正在保存...",
spinner: "el-icon-loading",
background: "rgba(255, 255, 255, 0.7)",
});
if (!this.xxzjbh) {
this.addSubmit(params, loading);
} else {
this.editSubmit(params, loading);
}
},
addSubmit(params, loading) {
debugger
params.append("mxSyfwTxt", this.mxSyfwTxt);
params.append("mxTxt", this.mxCodeTxt.split(',').reverse().toString());
addJcyjMx(params).then((res) => {
if (res.success && res.code == 200) {
this.$alert("保存成功!", "提示", {
confirmButtonText: "确定",
type: "success",
callback: () => {
loading.close();
this.$router.push("yjmxgl");
},
});
} else {
this.$message.error(res.message);
loading.close();
}
});
},
editSubmit(params, loading) {
// params.append("unitname", this.unitname);
params.append("mxSyfwTxt", this.mxSyfwTxt);
params.append("mxTxt", this.mxCodeTxt.split(',').reverse().toString());
params.append("xxzjbh", this.xxzjbh);
updateJcyjMx(params).then((res) => {
if (res.success && res.code == 200) {
this.$alert("保存成功!", "提示", {
confirmButtonText: "确定",
type: "success",
callback: () => {
loading.close();
this.$router.push("yjmxgl");
},
});
} else {
this.$message.error(res.message);
loading.close();
}
});
},
getshuju() {
var self = this;
getJcyjMxById({
xxzjbh: this.xxzjbh,
}).then((res) => {
if (res.success && res.code == 200) {
var result = res.data.mx;
res.data.mx.mxCode = res.data.mx.mxCode.split(",");
self.propFormField.forEach((fieldItem) => {
if (fieldItem.data && fieldItem.data.length > 0) {
fieldItem.data.forEach((i) => {
self.$set(self.formLabelAlign, i.id, result[i.id]);
});
}
self.$forceUpdate();
});
self.$forceUpdate();
}
setTimeout(() => {
self.Loading.close();
}, 500);
});
},
},
created() {
if (this.$route.query.xxzjbh) {
this.Loading = this.$loading({
lock: true,
text: "正在获取数据...",
spinner: "el-icon-loading",
background: "rgba(255, 255, 255, 0.7)",
});
this.title = "模型修改";
this.xxzjbh = this.$route.query.xxzjbh;
this.getshuju();
}
},
watch: {
"formLabelAlign.mxSyfw": {
handler(val, old) {
let self = this;
if (val == "02") {
self.propFormField[0].data.forEach((val) => {
if (val.type == "codeTree") {
if (val.id == "mxCode") {
axios
.get(`JsonData/CODE_CBYP_BSHLX.json`)
.then((res) => {
self.$set(val, "codeOptions", res.data.data.rows);
})
.catch((err) => {
console.log(err);
});
}
}
});
} else if (val == "01") {
self.propFormField[0].data.forEach((val) => {
if (val.type == "codeTree") {
if (val.id == "mxCode") {
axios
.get(`JsonData/CODE_ZDRYLB.json`)
.then((res) => {
self.$set(val, "codeOptions", res.data.data.rows);
})
.catch((err) => {
console.log(err);
});
}
}
});
}
},
},
},
};
</script>
<style scoped lang="scss">
</style>
\ No newline at end of file
<template>
<div class="Content" id="userDetail">
<right-content
:cxQueryField="cxQueryField"
:pageObject="pageObject"
:pageFooterProps="pageFooterProps"
labelWidth="110px"
title="用户详情"
>
</right-content>
</div>
</template>
<script>
import rightContent from "@c/PersonInfor.vue";
import {
getJcyjMxById
} from "@/api/jcyjzxt/yjmxgl.js";
export default {
name: "userDetail",
components: {
rightContent,
},
data() {
return {
cxQueryField: [
{
title: "",
id: 1,
objStr: "", //对象中的对应字段
data: [
{
label: "模型名称:",
prop: "mxName",
col: "3",
},
{
label: "适用范围:",
prop: "mxSyfwTxt",
col: "3",
},
{
label: "模型代码:",
prop: "mxTxt",
col: "3",
},
{
label: "模型描述:",
prop: "mxMs",
col: "6",
},
],
},
],
pageFooterProps: [],
pageObject: {},
Loading: null,
};
},
mounted() {},
methods: {
getInfor() {
getJcyjMxById({
xxzjbh: this.$route.query.xxzjbh,
}).then((res) => {
if (res.success && res.code == 200) {
this.pageObject = res.data.mx;
}
this.Loading.close();
});
},
},
created() {
this.Loading = this.$loading({
lock: true,
text: "正在获取数据...",
spinner: "el-icon-loading",
background: "rgba(255, 255, 255, 0.7)",
});
this.getInfor();
},
};
</script>
<style scoped lang="scss">
</style>
<template>
<div class="Content">
<right-content
:pageBs="pageBs"
:header="header"
:cxFormData="cxFormData"
:cxQueryField="cxQueryField"
:cxDefaultFormThead="cxDefaultFormThead"
:cxUrl="cxUrl"
ref="rightContent"
@add="add"
@toInfor="toInfor"
>
<template #listOperation="scope">
<span class="flTtitle Add" @click="add(scope.scope)">
<i class="el-icon-plus"></i>新增</span
>
</template>
<template #btnGroup="scope">
<span @click="dele(scope.scope)" class="dele">删除</span>
<span @click="edit(scope.scope)" class="edit">编辑</span>
</template>
</right-content>
</div>
</template>
<script>
import rightContent from "@c/ptCxForm_components.vue";
import { delJcyjMxById } from "@/api/jcyjzxt/yjmxgl.js";
export default {
name: "yjmxgl",
components: {
rightContent,
},
data() {
return {
header: "模型管理",
pageBs: "yjmxgl",
cxFormData: {
username: "",
limit: 10,
page: 1,
policemanid: "",
trueName: "",
},
cxQueryField: [
{
name: "模型名称",
id: "mxName",
type: "text",
value: "",
placeholder: "",
col: "3",
},
{
name: "适用范围",
id: "mxSyfw",
type: "codeTreeDialog",
props: "checkEmpty",
value: "",
placeholder: "请选择",
col: "3",
codeOptions: [],
codeTree: "CODE_YJMX_SYFW",
},
{
name: "模型代码",
id: "mxCode",
type: "codeTreeDialog",
props: "checkEmpty",
value: "",
placeholder: "请选择",
col: "3",
codeOptions: [],
codeTree: "CODE_ZDRYLB",
},
],
cxDefaultFormThead: [
{
label: "模型名称",
prop: "mxName",
toInfor: true,
},
{
label: "适用范围",
prop: "mxSyfwTxt",
},
{
label: "模型代码",
prop: "mxTxt",
},
{
label: "模型描述",
prop: "mxMs",
},
],
cxUrl: "/jcyj/getJcyjMxList",
Menu: [
{
id: "yjmxgl",
label: "模型管理",
index: "yjmxgl",
auth: "M0101",
className: "iconfont iconrizhi",
disabled: false,
},
],
};
},
created() {
this.$store.commit("user/SET_Menu", this.Menu);
this.$store.commit("user/SET_Header", this.header);
},
mounted() {},
methods: {
add() {
this.$router.pushToTab("addYjmx");
},
toInfor(obj) {
this.$router.pushToTab({
path: "/yjmxInfo",
query: {
xxzjbh: obj.xxzjbh,
},
});
},
edit(obj) {
this.$router.pushToTab({
path: "/addYjmx",
query: {
xxzjbh: obj.row.xxzjbh,
},
});
},
dele(obj) {
this.$confirm("此操作将永久删除该用户, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
delJcyjMxById({
xxzjbh: obj.row.xxzjbh,
}).then((res) => {
if (res.success && res.code == 200) {
this.$message({
type: "success",
message: "删除成功",
});
this.$refs.rightContent.doQuery("yes");
}
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
},
},
watch: {
"cxFormData.mxSyfw": {
handler(val, old) {
let self = this;
debugger;
if (val == "02") {
self.cxQueryField.forEach((val) => {
if (val.type == "codeTreeDialog") {
if (val.id == "mxCode") {
axios
.get(`JsonData/CODE_CBYP_BSHLX.json`)
.then((res) => {
self.$set(val, "codeOptions", res.data.data.rows);
})
.catch((err) => {
console.log(err);
});
}
}
});
} else if (val == "01") {
self.cxQueryField.forEach((val) => {
if (val.type == "codeTreeDialog") {
if (val.id == "mxCode") {
axios
.get(`JsonData/CODE_ZDRYLB.json`)
.then((res) => {
self.$set(val, "codeOptions", res.data.data.rows);
})
.catch((err) => {
console.log(err);
});
}
}
});
}
},
},
},
};
</script>
<style>
.el-dialog__body {
padding: 10px 15px !important;
}
.rightContent .el-input__inner,
#formCommonPage .el-input__inner {
height: 32px;
line-height: 32px;
font-family: inherit;
}
.el-table__header-wrapper th,
.el-table__header-wrapper tr {
background: #f4f6f7;
}
.rightContent .el-input__icon,
#formCommonPage .el-input__icon,
.el-input__suffix-inner {
line-height: 36px;
}
.rightContent .el-range-separator {
position: relative;
top: -4px;
}
.rightContent .el-textarea__inner,
#formCommonPage .el-textarea__inner {
width: 100%;
font-family: inherit;
}
.rightContent .el-range-input,
#formCommonPage .el-range-input {
vertical-align: top;
}
.rightContent .el-date-editor .el-range__close-icon {
margin-top: -4px;
}
.rightContent .el-form-item__error {
left: calc(66% - 27px);
top: 12px;
}
.success-row {
background-color: #fbf9f4 !important;
}
.Content .el-input,
.Content .el-date-editor--daterange.el-input__inner {
width: 100% !important;
}
</style>
<style scoped lang="scss">
@import "@/assets/styles/rightContent.scss";
.hbyps {
width: 64px;
height: 24px;
margin-right: 10px;
background: #ffffff;
border: 1px solid #007aff;
opacity: 1;
border-radius: 4px;
text-align: center;
align-items: center;
display: inline-block;
font-size: 12px !important;
font-weight: 400 !important;
color: #007aff !important;
cursor: pointer;
}
.name {
margin: 20px;
.el-form-item {
margin-bottom: 22px;
display: flex;
}
/deep/.el-form-item__label {
text-align: right;
vertical-align: middle;
float: left;
font-size: 14px;
color: #606266;
line-height: 40px;
padding: 0 12px 0 0;
width: 150px !important;
box-sizing: border-box;
}
/deep/.el-form-item__content {
margin: 0 0 0 10px !important;
}
}
</style>
......@@ -121,6 +121,14 @@
className: "iconfont icongongnengfuwu",
hasChildren: false,
},
{
id: "yjmxgl",
label: "预警模型管理",
newAuth: "M01",
index: "yjmxgl",
className: "iconfont icongongnengfuwu",
hasChildren: false,
},
],
Menu: [
{
......
<!-- -->
<template>
<div class="personalInfo">
<div class="left">
<div class="leftTop"></div>
<img src="../../assets/img/photo.png" width="120px" />
<div class="leftBott">
<div class="info" style="padding-top: 60px">
<div class="title">姓名:</div>
<div class="content">{{ userInfo.trueName }}</div>
</div>
<div class="info">
<div class="title">警号:</div>
<div class="content">{{ userInfo.policemanid }}</div>
</div>
<div class="info">
<div class="title">身份证号:</div>
<div class="content">{{ userInfo.identitycard }}</div>
</div>
<div class="info">
<div class="title">所属单位:</div>
<div class="content">{{ userInfo.unitname }}</div>
</div>
</div>
</div>
<div class="right">
<div class="xian"></div>
<div class="rightitem">
<div class="cricle">用户等级</div>
<div class="sj"></div>
<div class="rightContent">
<div class="tag">{{ userInfo.gradeStr }}</div>
</div>
</div>
<div class="rightitem">
<div class="cricle">三员角色</div>
<div class="sj"></div>
<div class="rightContent">
<div class="tagWrap" v-for="(item, index) in rolesArr" :key="index">
<div class="tag">{{ item }}</div>
</div>
</div>
</div>
<div class="rightitem">
<div class="cricle">用户角色</div>
<div class="sj"></div>
<div class="rightContent">
<div class="tagWrap" v-for="(item, index) in userArr" :key="index">
<div class="tag">{{ item }}</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import { getPersonInfo } from "@/api/userAuth/addUser.js";
export default {
data() {
return {
userInfo: {},
rolesArr: [],
userArr: [],
};
},
components: {},
computed: {},
created() {
this.getData();
},
methods: {
getData() {
var self = this;
getPersonInfo().then((res) => {
self.userInfo = res.data.info;
self.rolesArr = res.data.info.syRolesStr.split(",");
self.userArr = res.data.info.userRolesStr.split(",");
});
},
},
};
</script>
<style lang='scss' scoped>
.personalInfo {
padding: 50px 0 0 100px;
display: flex;
.left {
width: 400px;
height: 350px;
box-shadow: 2px 2px 12px #555;
text-align: center;
.leftTop {
width: 400px;
height: 150px;
background: rgb(89, 172, 214);
}
.leftBott {
width: 400px;
height: 200px;
background: #fff;
.info {
display: flex;
height: 30px;
font-weight: 500;
.title {
width: 190px;
text-align: right;
height: 30px;
}
.content {
text-align: left;
height: 30px;
}
}
}
img {
margin-top: -60px;
position: absolute;
transform: translate(-50%);
}
}
.right {
width: 500px;
height: 350px;
// box-shadow: 2px 2px 12px #555;
background: rgba(89, 152, 196, 0.8);
margin-left: 50px;
position: relative;
.xian {
height: 90%;
border-left-style: dashed;
color: #888686;
border-left-width: 2px;
position: absolute;
left: 42px;
height: 95%;
margin-top: 11px;
}
.rightitem {
display: flex;
position: relative;
margin-top: 30px;
.cricle {
background: rgb(228, 108, 35);
border: 4px solid rgb(250, 166, 122);
width: 58px;
height: 58px;
border-radius: 50%;
text-align: center;
line-height: 58px;
margin-left: 10px;
color: #fff;
}
.sj {
width: 0;
height: 0;
border: 12px solid;
border-style: dashed;
border-color: transparent rgba(255, 255, 255, 0.74) transparent
transparent;
margin-top: 17px;
position: absolute;
left: 65px;
}
.rightContent {
width: 380px;
background: rgba(255, 255, 255, 0.7);
height: 28px;
position: absolute;
left: 90px;
border: 1px solid #ada9a9;
box-shadow: 1px 1px 3px #4d4c4c;
display: flex;
padding: 15px 10px;
.tagWrap {
display: flex;
align-items: center;
}
.tag {
padding: 1px 5px;
background: #486ca0;
border-radius: 10px;
color: #fff;
height: 20px;
margin-right: 5px;
}
}
}
}
}
</style>
\ No newline at end of file
......@@ -314,6 +314,13 @@ export default {
},
],
},
{
id: "personalInfo",
label: "个人中心",
index: "personalInfo",
className: "iconfont icongongnengfuwu",
hasChildren: false,
}
],
//全选
checkAll: false,
......
......@@ -413,6 +413,7 @@ export default {
xxzjbh: this.xxzjbh,
}).then((res) => {
if (res.success && res.code == 200) {
debugger
res.data.rows.forEach((item) => {
this.formLabelAlign.mxList.push(item.xxzjbh);
this.xxzjbhList.push(item.xxzjbh);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment