更新组织、用户管理对接接口
This commit is contained in:
parent
f147d124e8
commit
0458034b1c
|
|
@ -12,7 +12,9 @@ VITE_OPEN_PROXY = false
|
|||
VITE_PROXY_API = /dev-api
|
||||
|
||||
# VITE_PROXY = [ ["/dev-api", "http://192.168.110.186:8040" ],["/dev-img-api", "http://file.sczysoft.com" ]]
|
||||
VITE_PROXY = [ ["/dev-api", "http://42.193.40.239:8010" ],["/dev-img-api", "http://file.sczysoft.com" ]]
|
||||
|
||||
# http://42.193.40.239:8017/doc.html//线上 http://192.168.110.186:8017/doc.html//本地
|
||||
VITE_PROXY = [ ["/dev-api", "http://192.168.110.186:8017" ],["/dev-img-api", "http://file.sczysoft.com" ]]
|
||||
#
|
||||
VITE_GLOB_UPLOAD_URL=/dev-api
|
||||
VITE_UPLOAD_IMG_URL=/dev-img-api
|
||||
|
|
|
|||
|
|
@ -12,17 +12,6 @@ export function getUserPage(data) {
|
|||
});
|
||||
}
|
||||
|
||||
/**
|
||||
*删除
|
||||
*/
|
||||
export function delUser(userId) {
|
||||
return request({
|
||||
url: `${prefix}/delUser`,
|
||||
method: "POST",
|
||||
data: { userId }
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
*获取通知列表
|
||||
*/
|
||||
|
|
@ -238,11 +227,10 @@ export function delBaseinclass(data) {
|
|||
/**
|
||||
* 岗位树
|
||||
*/
|
||||
export function getListperformTree(params) {
|
||||
export function getListperformTree() {
|
||||
return request({
|
||||
url: `/admin/Sys/getListperformTree`,
|
||||
method: "GET",
|
||||
params
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -277,3 +265,44 @@ export function performDel(listperformid) {
|
|||
method: "POST"
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 用户管理-所属角色List
|
||||
*/
|
||||
export function getSysroleList() {
|
||||
return request({
|
||||
url: `/admin/Sys/getSysroleList`,
|
||||
method: "GET"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* 用户管理-新增修改
|
||||
*/
|
||||
export function saveUser(data) {
|
||||
return request({
|
||||
url: `/admin/Sys/saveUser`,
|
||||
method: "POST",
|
||||
data:data
|
||||
});
|
||||
}
|
||||
/**
|
||||
*用户管理-启用禁用
|
||||
*/
|
||||
export function delUser(params) {
|
||||
return request({
|
||||
url: `/admin/Sys/delUser`,
|
||||
method: "POST",
|
||||
data: params
|
||||
});
|
||||
}
|
||||
/**
|
||||
*用户管理-启用禁用
|
||||
*/
|
||||
export function delListperform(listperformid) {
|
||||
return request({
|
||||
url: `/admin/Sys/delListperform/${listperformid}`,
|
||||
method: "POST",
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,434 +1,374 @@
|
|||
/** el-progress-bar */
|
||||
.el-progress-bar__inner {
|
||||
background-image: linear-gradient(270deg, rgb(65, 251, 217) 0%, rgb(3, 142, 254) 100%);
|
||||
background-image: linear-gradient(270deg, rgb(65 251 217) 0%, rgb(3 142 254) 100%);
|
||||
}
|
||||
|
||||
/** el-dialog custom-dialog */
|
||||
.custom-dialog {
|
||||
border-radius: 10px;
|
||||
border-radius: 10px;
|
||||
.el-dialog__header {
|
||||
padding: 16px;
|
||||
position: relative;
|
||||
.custom-dialog-title {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding-bottom: 6px;
|
||||
span {
|
||||
color: #333;
|
||||
font-weight: bold;
|
||||
}
|
||||
.icon-style {
|
||||
width: 0.875em;
|
||||
height: 0.875em;
|
||||
fill: #b5c4e1;
|
||||
&:hover {
|
||||
opacity: 0.9;
|
||||
}
|
||||
}
|
||||
hr {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 98%;
|
||||
transform: translateX(-50%);
|
||||
left: 50%;
|
||||
border: 1px solid #f5f5f5 !important;
|
||||
}
|
||||
}
|
||||
.el-dialog__headerbtn {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
.el-dialog__body {
|
||||
padding: 16px;
|
||||
padding-top: 6px;
|
||||
}
|
||||
.el-dialog__footer {
|
||||
padding-top: 0;
|
||||
text-align: center;
|
||||
.el-button {
|
||||
margin: 0 16px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.el-dialog__header {
|
||||
padding: 16px;
|
||||
/** custom-drawer */
|
||||
.custom-drawer {
|
||||
.el-drawer__header {
|
||||
padding: 16px;
|
||||
position: relative;
|
||||
margin-bottom: 0;
|
||||
.custom-drawer-title {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding-bottom: 6px;
|
||||
}
|
||||
.custom-drawer-title hr {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 98%;
|
||||
transform: translateX(-50%);
|
||||
left: 50%;
|
||||
border: 1px solid #cecece;
|
||||
}
|
||||
.custom-drawer-title .icon-style {
|
||||
width: 0.875em;
|
||||
height: 0.875em;
|
||||
fill: #b5c4e1;
|
||||
&:hover {
|
||||
opacity: 0.9;
|
||||
}
|
||||
}
|
||||
.el-drawer__close-btn {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
.el-drawer__body {
|
||||
// padding: 16px;
|
||||
height: 100%;
|
||||
// @include boxSizing();
|
||||
}
|
||||
}
|
||||
|
||||
/** center-form */
|
||||
.center-form {
|
||||
display: flow-root;
|
||||
width: 100%;
|
||||
margin: 0 auto;
|
||||
.el-form-item {
|
||||
width: 44%;
|
||||
float: left;
|
||||
margin: 0 3%;
|
||||
margin-bottom: 22px;
|
||||
}
|
||||
.inline-block {
|
||||
width: 94%;
|
||||
}
|
||||
}
|
||||
.el-form-item {
|
||||
.el-select,
|
||||
.el-cascader,
|
||||
.el-input-number,
|
||||
.el-input {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
/** .el-input-group__append */
|
||||
.search-input {
|
||||
.el-input__wrapper {
|
||||
border: 1px solid #5473e8;
|
||||
}
|
||||
}
|
||||
.search .el-input__inner {
|
||||
border: 1px solid #5473e8;
|
||||
}
|
||||
.el-input-group__append {
|
||||
background-color: #5473e8 !important;
|
||||
border-color: #5473e8 !important;
|
||||
cursor: pointer;
|
||||
padding: 0 16px;
|
||||
box-shadow: none;
|
||||
&:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
&:active {
|
||||
border-color: #7bb6fa;
|
||||
}
|
||||
.search-bottom {
|
||||
color: #fff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 14px;
|
||||
flex-direction: row;
|
||||
}
|
||||
svg {
|
||||
padding-right: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
/** layout */
|
||||
.el-row {
|
||||
margin-bottom: 22px;
|
||||
}
|
||||
.operation {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.keyword {
|
||||
margin-top: 24px;
|
||||
}
|
||||
|
||||
/** label-select */
|
||||
.label-select {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: 30px;
|
||||
label {
|
||||
background: #f9f9f9;
|
||||
border: 1px solid #e6e6e6;
|
||||
padding: 0 10px;
|
||||
font-size: 13px;
|
||||
border-right: none;
|
||||
height: 100%;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.el-input__inner {
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
height: 100% !important;
|
||||
}
|
||||
.el-cascader {
|
||||
height: 100%;
|
||||
}
|
||||
.el-select {
|
||||
height: 100%;
|
||||
}
|
||||
.select-trigger {
|
||||
height: 100%;
|
||||
}
|
||||
.el-input {
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
/** el-table */
|
||||
.el-table {
|
||||
th,
|
||||
td {
|
||||
padding: 8px 0;
|
||||
}
|
||||
.el-one-header {
|
||||
th {
|
||||
text-align: center;
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
}
|
||||
.el-one-header1 {
|
||||
th {
|
||||
text-align: left;
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
}
|
||||
.operate {
|
||||
margin: 0 16px;
|
||||
cursor: pointer;
|
||||
&:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
svg {
|
||||
margin-right: 3px;
|
||||
vertical-align: -0.12em;
|
||||
width: 1em;
|
||||
height: 1em;
|
||||
}
|
||||
.edit {
|
||||
color: #1d86fb;
|
||||
}
|
||||
.detail {
|
||||
color: #f4a914;
|
||||
}
|
||||
.func {
|
||||
color: #fb4e33;
|
||||
}
|
||||
.delete {
|
||||
color: #fb4e33;
|
||||
}
|
||||
.statute {
|
||||
color: #226cb6;
|
||||
}
|
||||
}
|
||||
}
|
||||
.look {
|
||||
color: #1d86fb;
|
||||
cursor: pointer;
|
||||
&:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
}
|
||||
|
||||
/** avatar-upload */
|
||||
.avatar-uploader .el-upload {
|
||||
border: 1px dashed #d9d9d9;
|
||||
border-radius: 6px;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
.avatar-uploader .el-upload:hover {
|
||||
border-color: #409eff;
|
||||
}
|
||||
.avatar-uploader-icon {
|
||||
font-size: 28px;
|
||||
color: #8c939d;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
line-height: 100px;
|
||||
text-align: center;
|
||||
}
|
||||
.avatar {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.custom-dialog-title {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding-bottom: 6px;
|
||||
|
||||
span {
|
||||
color: #333333;
|
||||
/** el-tabs */
|
||||
.el-tabs__nav-next,
|
||||
.el-tabs__nav-prev {
|
||||
font-size: 18px;
|
||||
}
|
||||
.el-table .el-table__body-wrapper::-webkit-scrollbar {
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
.el-table .el-table__body-wrapper::-webkit-scrollbar-thumb {
|
||||
background-color: #c9c9c9;
|
||||
cursor: pointer;
|
||||
}
|
||||
.custom-dialog-title {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding-bottom: 6px;
|
||||
span {
|
||||
color: #333;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.icon-style {
|
||||
font-size: 16px;
|
||||
}
|
||||
.icon-style {
|
||||
width: 0.875em;
|
||||
height: 0.875em;
|
||||
fill: #B5C4E1;
|
||||
|
||||
fill: #b5c4e1;
|
||||
&:hover {
|
||||
opacity: 0.9;
|
||||
opacity: 0.9;
|
||||
}
|
||||
}
|
||||
|
||||
hr {
|
||||
}
|
||||
hr {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 98%;
|
||||
transform: translateX(-50%);
|
||||
left: 50%;
|
||||
border: 1px solid #f5f5f5 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.el-dialog__headerbtn {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.el-dialog__body {
|
||||
padding: 16px;
|
||||
padding-top: 6px;
|
||||
}
|
||||
|
||||
.el-dialog__footer {
|
||||
padding-top: 0;
|
||||
text-align: center;
|
||||
|
||||
.el-button {
|
||||
margin: 0 16px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/** custom-drawer */
|
||||
.custom-drawer {
|
||||
.el-drawer__header {
|
||||
padding: 16px;
|
||||
position: relative;
|
||||
margin-bottom: 0;
|
||||
|
||||
.custom-drawer-title {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding-bottom: 6px;
|
||||
}
|
||||
|
||||
.custom-drawer-title hr {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 98%;
|
||||
transform: translateX(-50%);
|
||||
left: 50%;
|
||||
border: 1px solid #cecece;
|
||||
}
|
||||
|
||||
.custom-drawer-title .icon-style {
|
||||
width: 0.875em;
|
||||
height: 0.875em;
|
||||
fill: #B5C4E1;
|
||||
|
||||
&:hover {
|
||||
opacity: 0.9;
|
||||
}
|
||||
}
|
||||
|
||||
.el-drawer__close-btn {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.el-drawer__body {
|
||||
// padding: 16px;
|
||||
height: 100%;
|
||||
// @include boxSizing();
|
||||
}
|
||||
}
|
||||
|
||||
/** center-form */
|
||||
.center-form {
|
||||
display: flow-root;
|
||||
width: 100%;
|
||||
margin: 0 auto;
|
||||
|
||||
.el-form-item {
|
||||
width: 44%;
|
||||
float: left;
|
||||
margin: 0 3%;
|
||||
margin-bottom: 22px;
|
||||
}
|
||||
|
||||
.inline-block {
|
||||
width: 94%;
|
||||
}
|
||||
}
|
||||
|
||||
.el-form-item {
|
||||
|
||||
.el-select,
|
||||
.el-cascader,
|
||||
.el-input-number,
|
||||
.el-input {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
/** .el-input-group__append */
|
||||
.search-input {
|
||||
.el-input__wrapper {
|
||||
border: 1px solid #5473e8;
|
||||
}
|
||||
}
|
||||
|
||||
.search .el-input__inner {
|
||||
border: 1px solid #5473e8;
|
||||
}
|
||||
|
||||
.el-input-group__append {
|
||||
background-color: #5473e8 !important;
|
||||
border-color: #5473e8 !important;
|
||||
box-shadow: none;
|
||||
cursor: pointer;
|
||||
padding: 0 16px;
|
||||
box-shadow: none;
|
||||
|
||||
&:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
&:active {
|
||||
border-color: #7bb6fa;
|
||||
}
|
||||
|
||||
.search-bottom {
|
||||
color: #fff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 14px;
|
||||
flex-direction: row;
|
||||
}
|
||||
|
||||
svg {
|
||||
padding-right: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
/** layout */
|
||||
.el-row {
|
||||
margin-bottom: 22px;
|
||||
}
|
||||
|
||||
.operation {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.keyword {
|
||||
margin-top: 24px;
|
||||
}
|
||||
|
||||
/** label-select */
|
||||
.label-select {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: 30px;
|
||||
|
||||
label {
|
||||
background: #f9f9f9;
|
||||
border: 1px solid #e6e6e6;
|
||||
padding: 0 10px;
|
||||
font-size: 13px;
|
||||
border-right: none;
|
||||
height: 100%;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.el-input__inner {
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
height: 100% !important;
|
||||
}
|
||||
|
||||
.el-cascader {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.el-select {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.select-trigger {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.el-input {
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
/** el-table */
|
||||
.el-table {
|
||||
|
||||
th,
|
||||
td {
|
||||
padding: 8px 0;
|
||||
}
|
||||
|
||||
.el-one-header {
|
||||
th {
|
||||
text-align: center;
|
||||
background-color: #F2F2F2;
|
||||
}
|
||||
}
|
||||
|
||||
.el-one-header1 {
|
||||
th {
|
||||
text-align: left;
|
||||
background-color: #F2F2F2;
|
||||
}
|
||||
}
|
||||
|
||||
.operate {
|
||||
margin: 0 16px;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
svg {
|
||||
margin-right: 3px;
|
||||
vertical-align: -0.12em;
|
||||
width: 1em;
|
||||
height: 1em;
|
||||
}
|
||||
|
||||
.edit {
|
||||
color: #1d86fb;
|
||||
}
|
||||
|
||||
.detail {
|
||||
color: #f4a914;
|
||||
}
|
||||
|
||||
.func {
|
||||
color: #fb4e33;
|
||||
}
|
||||
|
||||
.statute {
|
||||
color: #226cb6;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.look {
|
||||
color: #1d86fb;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
}
|
||||
|
||||
/** avatar-upload */
|
||||
.avatar-uploader .el-upload {
|
||||
border: 1px dashed #d9d9d9;
|
||||
border-radius: 6px;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.avatar-uploader .el-upload:hover {
|
||||
border-color: #409eff;
|
||||
}
|
||||
|
||||
.avatar-uploader-icon {
|
||||
font-size: 28px;
|
||||
color: #8c939d;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
line-height: 100px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.avatar {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
/** el-tabs */
|
||||
.el-tabs__nav-next,
|
||||
.el-tabs__nav-prev {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.el-table .el-table__body-wrapper::-webkit-scrollbar {
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
|
||||
.el-table .el-table__body-wrapper::-webkit-scrollbar-thumb {
|
||||
background-color: #c9c9c9;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.custom-dialog-title {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding-bottom: 6px;
|
||||
|
||||
span {
|
||||
color: #333333;
|
||||
font-weight: bold;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.icon-style {
|
||||
width: 0.875em;
|
||||
height: 0.875em;
|
||||
fill: #B5C4E1;
|
||||
|
||||
&:hover {
|
||||
opacity: 0.9;
|
||||
}
|
||||
}
|
||||
|
||||
hr {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 98%;
|
||||
transform: translateX(-50%);
|
||||
left: 50%;
|
||||
border: 1px solid #f5f5f5 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.el-popper {
|
||||
max-width: 50vw;
|
||||
max-width: 50vw;
|
||||
}
|
||||
|
||||
.tree-line {
|
||||
.el-tree-node {
|
||||
position: relative;
|
||||
padding-left: 12px; // 缩进量
|
||||
}
|
||||
|
||||
.el-tree-node__children {
|
||||
padding-left: 12px; // 缩进量
|
||||
}
|
||||
|
||||
// 竖线
|
||||
.el-tree-node::before {
|
||||
content: "";
|
||||
height: 100%;
|
||||
width: 1px;
|
||||
position: absolute;
|
||||
left: 0px;
|
||||
top: -20px;
|
||||
border-width: 1px;
|
||||
border-left: 1px dashed #52627c;
|
||||
}
|
||||
|
||||
// 当前层最后一个节点的竖线高度固定
|
||||
.el-tree-node:last-child::before {
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
// 横线
|
||||
.el-tree-node::after {
|
||||
content: "";
|
||||
width: 12px;
|
||||
height: 20px;
|
||||
position: absolute;
|
||||
left: 0px;
|
||||
top: 20px;
|
||||
border-width: 1px;
|
||||
border-top: 1px dashed #52627c;
|
||||
}
|
||||
|
||||
&>.el-tree-node::after {
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
&>.el-tree-node::before {
|
||||
border-left: none;
|
||||
}
|
||||
|
||||
// 展开关闭的icon
|
||||
.el-tree-node__expand-icon {
|
||||
font-size: 16px;
|
||||
|
||||
&.is-leaf {
|
||||
color: transparent;
|
||||
.el-tree-node {
|
||||
position: relative;
|
||||
padding-left: 12px; // 缩进量
|
||||
}
|
||||
.el-tree-node__children {
|
||||
padding-left: 12px; // 缩进量
|
||||
}
|
||||
|
||||
// 竖线
|
||||
.el-tree-node::before {
|
||||
content: "";
|
||||
height: 100%;
|
||||
width: 1px;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: -20px;
|
||||
border-width: 1px;
|
||||
border-left: 1px dashed #52627c;
|
||||
}
|
||||
|
||||
// 当前层最后一个节点的竖线高度固定
|
||||
.el-tree-node:last-child::before {
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
// 横线
|
||||
.el-tree-node::after {
|
||||
content: "";
|
||||
width: 12px;
|
||||
height: 20px;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 20px;
|
||||
border-width: 1px;
|
||||
border-top: 1px dashed #52627c;
|
||||
}
|
||||
& > .el-tree-node::after {
|
||||
border-top: none;
|
||||
}
|
||||
& > .el-tree-node::before {
|
||||
border-left: none;
|
||||
}
|
||||
|
||||
// 展开关闭的icon
|
||||
.el-tree-node__expand-icon {
|
||||
font-size: 16px;
|
||||
&.is-leaf {
|
||||
color: transparent;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -24,10 +24,10 @@
|
|||
v-model="addPostFactorForm.sysusername"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="密码:" prop="pwd">
|
||||
<el-form-item label="密码:" prop="password">
|
||||
<el-input
|
||||
placeholder="请输入密码"
|
||||
v-model="addPostFactorForm.pwd"
|
||||
v-model="addPostFactorForm.password"
|
||||
@focus="pwdFocus"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
|
|
@ -54,16 +54,25 @@
|
|||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="角色类型:" prop="memberType">
|
||||
<el-select v-model="addPostFactorForm.memberType">
|
||||
<el-option
|
||||
v-for="(item, index) in roleTypeList"
|
||||
:key="index"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
<el-form-item label="岗位:" prop="systitle">
|
||||
<el-tree-select
|
||||
v-model="addPostFactorForm.systitle"
|
||||
:data="postList"
|
||||
:props="postProps"
|
||||
:render-after-expand="false"
|
||||
style="width: 240px;"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="状态:" prop="delState">
|
||||
<el-switch
|
||||
v-model="addPostFactorForm.delState"
|
||||
active-text="启用"
|
||||
inactive-text="禁用"
|
||||
:active-value="1"
|
||||
:inactive-value="2"
|
||||
/>
|
||||
</el-form-item>
|
||||
|
||||
<!-- <el-form-item label="照片:">
|
||||
<el-upload
|
||||
class="avatar-uploader"
|
||||
|
|
@ -92,6 +101,7 @@ import useUserStore from "@/store/modules/user";
|
|||
import { ElMessage, FormInstance, FormRules } from "element-plus";
|
||||
import { getYears, getUUID, FileType } from "@/utils/common";
|
||||
import { saveOthexpert, getOtheWareHouseList } from "@/api/Othteam";
|
||||
import { getSysroleList, getListperformTree,saveUser } from "@/api/Sys";
|
||||
|
||||
const formRef = ref<FormInstance>();
|
||||
const userStore = useUserStore();
|
||||
|
|
@ -100,7 +110,7 @@ const userId = ref(user.value.userId);
|
|||
const uuid = ref("");
|
||||
const ruleForm = reactive<FormRules>({
|
||||
sysusername: [{ required: true, message: "请输入账号", trigger: "blur" }],
|
||||
pwd: [{ required: true, message: "请输入密码", trigger: "blur" }],
|
||||
password: [{ required: true, message: "请输入密码", trigger: "blur" }],
|
||||
chinaname: [{ required: true, message: "请输入中文名", trigger: "blur" }],
|
||||
userroles: [{ required: true, message: "请选择角色", trigger: "change" }],
|
||||
sysunitorentid: [
|
||||
|
|
@ -109,6 +119,8 @@ const ruleForm = reactive<FormRules>({
|
|||
systitle: [{ required: true, message: "请选择岗位", trigger: "change" }],
|
||||
state: [{ required: true, message: "请选择账号状态", trigger: "change" }],
|
||||
orgcodes: [{ required: true, message: "请选择任职地区", trigger: "change" }],
|
||||
delState: [{ required: true, message: "请选择状态", trigger: "change" }],
|
||||
|
||||
});
|
||||
const props = defineProps({
|
||||
visible: {
|
||||
|
|
@ -122,42 +134,70 @@ const props = defineProps({
|
|||
},
|
||||
id: String,
|
||||
});
|
||||
const listperformid = ref(props.id);
|
||||
const addPostFactorForm = ref(<any>{});
|
||||
const emits = defineEmits(["close", "onSubmit"]);
|
||||
//保存并退出
|
||||
const handleSubmit = () => {
|
||||
formRef.value?.validate((valid) => {
|
||||
if (valid) {
|
||||
addPostFactorForm.value.othage = Number(addPostFactorForm.value.othage);
|
||||
addPostFactorForm.value.othexpertid =
|
||||
addPostFactorForm.value.othexpertid || uuid.value;
|
||||
addPostFactorForm.value.userId = userId.value;
|
||||
saveOthexpert(addPostFactorForm.value).then((res: any) => {
|
||||
addPostFactorForm.value.sysuserid = addPostFactorForm.value.sysuserid||uuid.value;
|
||||
saveUser(addPostFactorForm.value).then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
ElMessage.success({
|
||||
message: "保存成功",
|
||||
type: "success",
|
||||
});
|
||||
onclone();
|
||||
}else{
|
||||
ElMessage.error({
|
||||
message: res.message,
|
||||
type: "error",
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
return false;
|
||||
});
|
||||
};
|
||||
//所属角色List
|
||||
const roleList = ref([]);
|
||||
const getRoleList = () => {
|
||||
getSysroleList().then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
roleList.value = res.data;
|
||||
}
|
||||
});
|
||||
};
|
||||
//岗位List
|
||||
const postList = ref([]);
|
||||
const postProps = {
|
||||
value: "listperformid",
|
||||
label: "parentName",
|
||||
children: "children",
|
||||
};
|
||||
const ListperformTree = () => {
|
||||
getListperformTree().then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
postList.value = res.data;
|
||||
}
|
||||
});
|
||||
};
|
||||
//关闭弹窗
|
||||
const onclone = () => {
|
||||
emits("close");
|
||||
};
|
||||
onMounted(() => {});
|
||||
onMounted(() => {
|
||||
getRoleList();
|
||||
ListperformTree();
|
||||
});
|
||||
watch(
|
||||
() => props.form,
|
||||
(val) => {
|
||||
uuid.value = getUUID();
|
||||
if (val) {
|
||||
if (!props.visible) return;
|
||||
if (props.form.sysuserid) {
|
||||
addPostFactorForm.value = val;
|
||||
}else{
|
||||
addPostFactorForm.value.delState = 1
|
||||
}
|
||||
}
|
||||
);
|
||||
|
|
@ -165,15 +205,15 @@ watch(
|
|||
|
||||
<style lang="scss" scoped>
|
||||
.detailForm-content {
|
||||
margin-right: 30px;
|
||||
margin-right: 30px;
|
||||
}
|
||||
:deep(.el-form) {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
// justify-content: space-around;
|
||||
justify-content: space-between;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
// justify-content: space-around;
|
||||
justify-content: space-between;
|
||||
}
|
||||
:deep(.el-form-item) {
|
||||
width: 47%;
|
||||
width: 47%;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="percentage-content">
|
||||
<div class="content">
|
||||
<div style="margin-bottom: 16px" class="h-layout space-between h-center">
|
||||
<div style="margin-bottom: 16px;" class="h-layout space-between h-center">
|
||||
<div>
|
||||
<div class="h-layout">
|
||||
<div class="tool-item" @click="getList">
|
||||
|
|
@ -19,17 +19,17 @@
|
|||
<svg-icon name="export" class="icon" />
|
||||
<span>导出</span>
|
||||
</div>
|
||||
<div
|
||||
<!-- <div
|
||||
v-if="tableCheckBoxs.length > 0"
|
||||
class="tool-item"
|
||||
@click="deletelist"
|
||||
>
|
||||
<svg-icon name="delete" class="icon" />
|
||||
<span>删除</span>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 30%">
|
||||
<div style="width: 30%;">
|
||||
<div>
|
||||
<el-input
|
||||
v-model="search"
|
||||
|
|
@ -107,9 +107,11 @@
|
|||
>
|
||||
<template #default="scope">
|
||||
<el-switch
|
||||
v-model="scope.row.stateShow"
|
||||
v-model="scope.row.delState"
|
||||
active-text="启用"
|
||||
inactive-text="禁用"
|
||||
:active-value="1"
|
||||
:inactive-value="2"
|
||||
@change="staShow(scope.row)"
|
||||
>
|
||||
</el-switch>
|
||||
|
|
@ -118,7 +120,7 @@
|
|||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
width="180"
|
||||
width="200"
|
||||
label="操作"
|
||||
>
|
||||
<template #default="scope">
|
||||
|
|
@ -140,6 +142,10 @@
|
|||
<svg-icon name="detail" class="icon"></svg-icon>
|
||||
<span class="detail">详情</span>
|
||||
</span>
|
||||
<!-- <span class="operate">
|
||||
<svg-icon name="delete" class="icon"></svg-icon>
|
||||
<span class="delete">删除</span>
|
||||
</span> -->
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
|
@ -206,33 +212,42 @@ const getList = () => {
|
|||
unitId: null,
|
||||
};
|
||||
getUserPage(params).then((res: any) => {
|
||||
console.log(res, "res==>");
|
||||
|
||||
tableData.value = res.data.list;
|
||||
total.value = res.data.total;
|
||||
tableDataloading.value = false;
|
||||
});
|
||||
};
|
||||
//删除列表
|
||||
const deletelist = () => {
|
||||
ElMessageBox.confirm("是否确认删除?", "提示", {
|
||||
confirmButtonText: "是",
|
||||
cancelButtonText: "否",
|
||||
type: "warning",
|
||||
}).then(() => {
|
||||
delUser(tableCheckBoxs.value.join(",")).then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
ElMessage.success({
|
||||
message: "删除成功",
|
||||
type: "success",
|
||||
});
|
||||
} else {
|
||||
ElMessage.error({
|
||||
message: res.message,
|
||||
type: "error",
|
||||
});
|
||||
}
|
||||
getList();
|
||||
});
|
||||
});
|
||||
// const deletelist = () => {
|
||||
// ElMessageBox.confirm("是否确认删除?", "提示", {
|
||||
// confirmButtonText: "是",
|
||||
// cancelButtonText: "否",
|
||||
// type: "warning",
|
||||
// }).then(() => {
|
||||
// delUser(tableCheckBoxs.value.join(",")).then((res: any) => {
|
||||
// if (res.code == 1) {
|
||||
// ElMessage.success({
|
||||
// message: "删除成功",
|
||||
// type: "success",
|
||||
// });
|
||||
// } else {
|
||||
// ElMessage.error({
|
||||
// message: res.message,
|
||||
// type: "error",
|
||||
// });
|
||||
// }
|
||||
// getList();
|
||||
// });
|
||||
// });
|
||||
// };
|
||||
const staShow = (data) => {
|
||||
let params = {
|
||||
userId: data.sysuserid,
|
||||
delState: data.delState,
|
||||
};
|
||||
delUser(params).then(() => {});
|
||||
};
|
||||
//关闭新增弹窗
|
||||
const onclone = () => {
|
||||
|
|
@ -246,19 +261,15 @@ onMounted(() => {
|
|||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.content {
|
||||
width: 100%;
|
||||
// flex: auto;
|
||||
background: #fff;
|
||||
border-radius: 0.26042vw;
|
||||
box-shadow: 0 0 0.41667vw 0 rgba(8, 33, 85, 0.1);
|
||||
height: 100%;
|
||||
padding: 0.83333vw;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden !important;
|
||||
-moz-box-sizing: border-box;
|
||||
-webkit-box-sizing: border-box;
|
||||
-o-box-sizing: border-box;
|
||||
-ms-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
// flex: auto;
|
||||
background: #fff;
|
||||
border-radius: 0.26042vw;
|
||||
box-shadow: 0 0 0.41667vw 0 rgb(8 33 85 / 10%);
|
||||
height: 100%;
|
||||
padding: 0.83333vw;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden !important;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -50,7 +50,7 @@
|
|||
v-model="addPostFactorForm.sortid"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="所在地区:" prop="areaCode" style="width: 100%">
|
||||
<el-form-item label="所在地区:" prop="areaCode" style="width: 100%;">
|
||||
<el-tree-select
|
||||
v-model="addPostFactorForm.areaCode"
|
||||
:props="areaProps"
|
||||
|
|
@ -98,7 +98,7 @@ const ruleForm = reactive<FormRules>({
|
|||
{ required: true, message: "请输入组织名", trigger: "blur" },
|
||||
],
|
||||
areaCode: [{ required: true, message: "请选择地区", trigger: "blur" }],
|
||||
performname: [{ required: true, message: "请输入负责人", trigger: "blur" }],
|
||||
// performname: [{ required: true, message: "请输入负责人", trigger: "blur" }],
|
||||
});
|
||||
|
||||
const props = defineProps({
|
||||
|
|
@ -121,9 +121,9 @@ const emits = defineEmits(["close", "onSubmit"]);
|
|||
const handleSubmit = () => {
|
||||
formRef.value?.validate((valid) => {
|
||||
if (valid) {
|
||||
console.log(addPostFactorForm.value);
|
||||
|
||||
const params = JSON.parse(JSON.stringify(addPostFactorForm.value));
|
||||
params.viewjurisdiction =
|
||||
addPostFactorForm.value.viewjurisdiction.join(",");
|
||||
performAdd(params).then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
ElMessage.success({
|
||||
|
|
@ -191,7 +191,6 @@ watch(
|
|||
uuid.value = getUUID();
|
||||
if (val) {
|
||||
if (!props.visible) return;
|
||||
val.viewjurisdiction = val.viewjurisdiction?.split(",");
|
||||
addPostFactorForm.value = val;
|
||||
}
|
||||
}
|
||||
|
|
@ -204,14 +203,14 @@ onMounted(() => {
|
|||
|
||||
<style lang="scss" scoped>
|
||||
.detailForm-content {
|
||||
margin-right: 30px;
|
||||
margin-right: 30px;
|
||||
}
|
||||
:deep(.el-form) {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
}
|
||||
:deep(.el-form-item) {
|
||||
width: 47%;
|
||||
width: 47%;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 30%">
|
||||
<div style="width: 30%;">
|
||||
<div>
|
||||
<el-input
|
||||
v-model="search"
|
||||
|
|
@ -73,7 +73,7 @@
|
|||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
width="180"
|
||||
width="200"
|
||||
label="操作"
|
||||
>
|
||||
<template #default="scope">
|
||||
|
|
@ -95,6 +95,10 @@
|
|||
<svg-icon name="detail" class="icon"></svg-icon>
|
||||
<span class="detail">详情</span>
|
||||
</span>
|
||||
<span class="operate" @click="clickDelete(scope.row.listperformid)">
|
||||
<svg-icon name="delete" class="icon"></svg-icon>
|
||||
<span class="delete">删除</span>
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
|
@ -127,7 +131,8 @@ import { onMounted, reactive, ref } from "vue";
|
|||
import { useRouter } from "vue-router";
|
||||
const router = useRouter();
|
||||
|
||||
import { getListperformPage, performDel } from "@/api/Sys";
|
||||
import { getListperformPage, delListperform } from "@/api/Sys";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import AddOrEdit from "./add-or-edit.vue";
|
||||
|
||||
import useUserStore from "@/store/modules/user";
|
||||
|
|
@ -163,7 +168,29 @@ const getList = () => {
|
|||
tableDataloading.value = false;
|
||||
});
|
||||
};
|
||||
|
||||
const clickDelete = (listperformid)=>{
|
||||
console.log(listperformid);
|
||||
ElMessageBox.confirm("是否确认删除?", "提示", {
|
||||
confirmButtonText: "是",
|
||||
cancelButtonText: "否",
|
||||
type: "warning",
|
||||
}).then(() => {
|
||||
delListperform(listperformid).then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
ElMessage.success({
|
||||
message: "删除成功",
|
||||
type: "success",
|
||||
});
|
||||
} else {
|
||||
ElMessage.error({
|
||||
message: res.message,
|
||||
type: "error",
|
||||
});
|
||||
}
|
||||
getList();
|
||||
});
|
||||
});
|
||||
}
|
||||
//关闭新增弹窗
|
||||
const onclone = () => {
|
||||
dialogVisible.value = false;
|
||||
|
|
@ -178,22 +205,17 @@ onMounted(() => {
|
|||
|
||||
<style lang="scss" scoped>
|
||||
.content {
|
||||
width: 100%;
|
||||
background: #fff;
|
||||
border-radius: 0.26042vw;
|
||||
box-shadow: 0 0 0.41667vw 0 rgba(8, 33, 85, 0.1);
|
||||
height: 100%;
|
||||
padding: 0.83333vw;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden !important;
|
||||
-moz-box-sizing: border-box;
|
||||
-webkit-box-sizing: border-box;
|
||||
-o-box-sizing: border-box;
|
||||
-ms-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
|
||||
.table {
|
||||
margin-top: 16px;
|
||||
}
|
||||
width: 100%;
|
||||
background: #fff;
|
||||
border-radius: 0.26042vw;
|
||||
box-shadow: 0 0 0.41667vw 0 rgb(8 33 85 / 10%);
|
||||
height: 100%;
|
||||
padding: 0.83333vw;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden !important;
|
||||
box-sizing: border-box;
|
||||
.table {
|
||||
margin-top: 16px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Loading…
Reference in New Issue
Block a user