14d28100 by 任超

style:样式修改

1 parent e3eaf360
......@@ -221,7 +221,7 @@ table td {
cursor: pointer;
}
.el-table__body tr:hover {
.el-table__body-wrapper .el-table__body tr:hover {
background: #063160 !important;
box-shadow: inset 0px 0px 20px 0px #03DBFF !important;
}
......@@ -233,9 +233,9 @@ table td {
// table 固定列样式
// tr:hover {
// background: #063160 !important;
// box-shadow: inset 0px 0px 20px 0px #03DBFF !important;
// }
// background: #063160 !important;
// box-shadow: inset 0px 0px 20px 0px #03DBFF !important;
// }
// .el-table__fixed-right-patch {
// background-color: #073781
// }
......
......@@ -338,12 +338,45 @@ aside {
// 操作按钮样式
.btnColor {
color: #8DEAF9;
color: #02D9FD;
width: 64px;
height: 28px;
background: rgba(255, 255, 255, 0.1);
border-radius: 16px;
}
.btnColor:hover {
color: #02D9FD;
width: 64px;
height: 28px;
background: rgba(255, 255, 255, 0.1);
border-radius: 16px;
}
.successColor {
color:#67C23A
width: 64px;
height: 28px;
background: rgba(255, 255, 255, 0.1);
border-radius: 16px;
color: #B06974;
}
.successColor:hover {
width: 64px;
height: 28px;
background: rgba(255, 255, 255, 0.1);
border-radius: 16px;
color: #B06974;
}
// 弹框中间区域样式
.dialogCon {
background: #031A46;
box-shadow: inset 0px 0px 12px 0px #02D9FD;
border-radius: 0px 2px 2px 2px;
border: 1px solid #6BC1FC;
padding: 15px;
}
// 通过 入库 样式
.adopt,
......
......@@ -125,7 +125,6 @@ export default {
onClick={() => { this.handleEdit(scope.row) }}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
)
......
......@@ -115,11 +115,9 @@ export default {
<el-button
type="text"
class='btnColor'
size="mini"
onClick={() => { this.handleEdit(scope.row) }}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
)
......
......@@ -126,7 +126,6 @@ export default {
onClick={() => { this.handleEdit(scope.row) }}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
)
......
......@@ -116,7 +116,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -84,7 +84,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -116,7 +116,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -112,7 +112,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -113,7 +113,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -110,7 +110,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -107,7 +107,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -112,7 +112,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -108,7 +108,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -118,7 +118,6 @@ export default {
onClick={() => { this.handleEdit(scope.row) }}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
)
......
......@@ -106,7 +106,6 @@ export default {
onClick={() => { this.handleEdit(scope.row) }}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
)
......
......@@ -109,7 +109,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -199,7 +199,6 @@ export default {
}}
>
修改
<i class="el-icon-d-arrow-right"></i>
</el-button> :
<el-button
type="text"
......@@ -209,7 +208,6 @@ export default {
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
}
</div>
......
......@@ -193,13 +193,12 @@ class data {
<div>
<el-button
type="text"
style="color:#67C23A"
class='successColor'
onClick={() => {
vm.handleEdit(scope.row);
}}
>
修改
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -159,25 +159,22 @@ export default {
{
scope.row.exchangeState == 2 ?
<el-button
size="mini"
type="text"
style="color:#67C23A"
class='successColor'
onClick={() => {
this.handleDetail(scope.row);
}}
>
修改
<i class="el-icon-d-arrow-right"></i>
</el-button> :
<el-button
size="mini"
class='btnColor'
type="text"
onClick={() => {
this.handleDetail(scope.row);
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
}
......
<template>
<!-- 编辑 -->
<dialogBox ref="addTask" width="60%" @submitForm="handleSubmit" @closeDialog="handleClose" v-model="myValue"
customClass="editValidRule" title="新增定时任务">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="任务名" prop="jobName">
<el-input v-model="ruleForm.jobName" placeholder="任务名"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="类名" prop="beanName">
<el-input v-model="ruleForm.beanName" placeholder="类名"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="cron表达式" prop="cronExpression">
<el-input v-model="ruleForm.cronExpression" placeholder="cron表达式"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="方法名" prop="methodName">
<el-input v-model="ruleForm.methodName" placeholder="方法名"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="任务描述" prop="remark">
<el-input v-model="ruleForm.remark" placeholder="任务描述"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<dialogBox ref="addTask" width="50%" :isMain="true" @submitForm="handleSubmit" @closeDialog="handleClose"
v-model="myValue" customClass="editValidRule" title="新增定时任务">
<div class="dialogCon" style="height:360px">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="任务名" prop="jobName">
<el-input v-model="ruleForm.jobName" placeholder="任务名"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="类名" prop="beanName">
<el-input v-model="ruleForm.beanName" placeholder="类名"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="cron表达式" prop="cronExpression">
<el-input v-model="ruleForm.cronExpression" placeholder="cron表达式"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="方法名" prop="methodName">
<el-input v-model="ruleForm.methodName" placeholder="方法名"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="任务描述" prop="remark">
<el-input v-model="ruleForm.remark" placeholder="任务描述"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<message-tips :message="message" ref="msg" />
</dialogBox>
</template>
......@@ -125,10 +127,10 @@ export default {
}
},
watch: {
value(val) {
value (val) {
this.myValue = val
},
taskData(val) {
taskData (val) {
if (val != null) {
this.ruleForm = val
} else {
......@@ -146,23 +148,30 @@ export default {
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
// @import "~@/styles/public.scss";
.editDialogBox-box {
margin: 14px 18px 30px 18px !important
}
/deep/.dialogBox .dialog_title {
margin-left: 5px !important;
}
/deep/.el-form-item__label {
color: #fff;
}
/deep/.el-dialog__headerbtn {
margin-top: -12px;
}
/deep/.el-form-item {
color: #fff;
margin-bottom: 10px;
}
.editDialogBox-box {
margin: 14px 18px 30px 18px !important
}
/deep/ .el-input__inner {
background-color: transparent;
border: 1px solid #458ACF;
}
/deep/.el-form-item__label {
color: #fff;
}
/deep/.el-form-item {
color: #fff;
margin-bottom: 10px;
}
/deep/ .el-input__inner {
background-color: transparent;
border: 1px solid #458ACF;
}
</style>
......
<template>
<!-- 编辑 -->
<dialogBox ref="edit" width="60%" :closed="true" @closeDialog="handleClose" @submitForm="handleSubmit"
customClass="editDictionary" multiple title="字典信息">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="120px">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="字典类型编码" prop="DCODE">
<el-input v-model.trim="ruleForm.DCODE" placeholder="字典类型编码"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="字典类型名称" prop="DNAME">
<el-input v-model.trim="ruleForm.DNAME" placeholder="字典类型名称"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="字典结构" prop="ISTREE">
<el-radio-group v-model="ruleForm.ISTREE">
<el-radio label="1">树形</el-radio>
<el-radio label="0">列表</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
</el-form>
<lb-table :column="column" :heightNum="550" :key="key" :expand-row-keys="keyList" row-key="DICTID"
:tree-props="{ children: 'children' }" :pagination="false" :data="tableData">
</lb-table>
</dialogBox>
</template>
<script>
import dictionaries from '@/api/dictionaries'
import { getUuid } from '@/utils/tools'
export default {
props: {
dictList: Array,
dicData: Object
},
data () {
return {
key: 0,
message: '',
keyList: [],
ruleForm: {
DCODE: '',
DNAME: '',
ISTREE: '1'
},
column: [
{
width: '60',
renderHeader: (h, scope) => {
return <i class="el-icon-plus" onClick={() => { this.handleAdd() }} style="cursor:pointer;color:#409EFF">增加</i>
},
render: (h, scope) => {
return (
<span>{scope.row.index}</span>
)
}
},
{
prop: 'DCODE',
label: '字典项编码',
render: (h, scope) => {
return (
<div>
<el-input placeholder="字典项编码" v-show={scope.row.codeShow} v-fo value={scope.row[scope.column.property]}
onFocus={() => { this.itemShowFalse(); scope.row.codeShow = true; }}
onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
<el-input placeholder="字典项编码" v-show={!scope.row.codeShow} value={scope.row[scope.column.property]}
onFocus={() => { this.itemShowFalse(); scope.row.codeShow = true; }}
onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
</div>
)
}
},
{
prop: 'DNAME',
label: '字典项名称',
render: (h, scope) => {
return (
<div>
<el-input placeholder="字典项编码" v-show={scope.row.nameShow} v-fo value={scope.row[scope.column.property]}
onFocus={() => { this.itemShowFalse(); scope.row.nameShow = true; }}
onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
<el-input placeholder="字典项名称" v-show={!scope.row.nameShow} value={scope.row[scope.column.property]}
onFocus={() => { this.itemShowFalse(); scope.row.nameShow = true; }}
onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
</div>
)
}
},
{
width: '130px',
label: '移动',
render: (h, scope) => {
return (
<div>
<el-button type='text' disabled={scope.$index == 0} onClick={() => { this.moveUpward(scope.$index, scope.row) }}>上移</el-button>
<el-button type='text' disabled={(scope.$index + 1) == this.tableData.length} onClick={() => { this.moveDown(scope.$index, scope.row) }}>下移</el-button >
</div >
)
}
},
{
width: '150px',
label: '操作',
render: (h, scope) => {
return (
<div>
<el-button type="text" style="margin-right:10px" v-show={this.ruleForm.ISTREE == '1'} onClick={() => { this.handleAddSubordinate(scope.row) }}>增加下级</el-button>
<el-button type="text" style="margin-left:0" onClick={() => { this.handleMinus(scope.$index, scope.row) }}>删除</el-button>
</div>
)
}
}
],
tableData: [],
rules: {
DCODE: [
{ required: true, message: '字典类型编码', trigger: 'blur' }
],
}
}
},
methods: {
isShow () {
this.$refs.edit.isShow()
setTimeout(() => {
this.tableData = _.cloneDeep(this.dictList)
this.addIndexes()
let { DCODE, DNAME, ISTREE } = this.dicData
this.ruleForm = {
DCODE,
DNAME,
ISTREE
}
}, 0)
},
// 添加索引
addIndexes () {
this.tableData.forEach((item, index) => {
if (index == 0) {
item.codeShow = true
} else {
item.codeShow = false
item.nameShow = false
}
item.index = index + 1
})
},
itemShowFalse () {
this.tableData.forEach((item, index) => {
item.codeShow = false
item.nameShow = false
})
},
handleMinus (index, row) {
this.removeTreeListItem(this.tableData, row.DICTID)
},
removeTreeListItem (treeList, DICTID) {
if (!treeList || !treeList.length) {
return
}
for (let i = 0; i < treeList.length; i++) {
if (treeList[i].DICTID === DICTID) {
treeList.splice(i, 1);
break;
}
this.removeTreeListItem(treeList[i].children, DICTID)
}
},
async handleSubmit () {
let submitData = _.cloneDeep(this.tableData)
this.ruleForm.DICTID = this.dicData.DICTID
this.ruleForm.PARENTID = null
this.ruleForm.TYPEID = this.dicData.TYPEID
submitData.forEach((item) => {
item.ISTREE = this.ruleForm.ISTREE
})
submitData.unshift(this.ruleForm)
try {
let res = await dictionaries.editSysDict({ 'editDicts': submitData })
if (res.code == 200) {
this.$message({
message: res.message,
type: 'success'
})
this.handleClose()
this.$parent.featchData()
}
} catch (error) {
this.message = error
this.$refs.msg.messageShow()
}
},
handleClose () {
this.$refs['ruleForm'].resetFields();
this.$refs.edit.isHide()
},
// 增加下级
handleAddSubordinate (row) {
if (!row.children) {
row.children = []
}
row.children.push(
{
DCODE: '',
DNAME: '',
DICTID: getUuid(32),
TYPEID: row.TYPEID,
PARENTID: row.DICTID,
children: null,
ISTREE: this.ruleForm.ISTREE
}
)
this.keyList = [];
this.keyList.push(row.DICTID)
},
// 增加
handleAdd () {
this.$nextTick(() => {
let container = this.$el.querySelector('.el-table__body-wrapper');
container.scrollTop = container.scrollHeight;
})
this.tableData.push(
{
DCODE: '',
DNAME: '',
DICTID: getUuid(32),
TYPEID: this.dicData.TYPEID,
PARENTID: this.dicData.DICTID,
children: null,
ISTREE: this.ruleForm.ISTREE
}
)
this.addIndexes()
},
// 上移下移
moveUpward (index, row) {
if (index > 0) {
let upData = this.tableData[index - 1];
this.tableData.splice(index - 1, 1);
this.tableData.splice(index, 0, upData);
} else {
this.$message({
message: '已经是第一条,上移失败',
type: 'warning'
});
}
this.key++
},
moveDown (index, row) {
if ((index + 1) == this.tableData.length) {
this.$message({
message: '已经是最后一条,下移失败',
type: 'warning'
});
} else {
let downData = this.tableData[index + 1];
this.tableData.splice(index + 1, 1);
this.tableData.splice(index, 0, downData);
}
this.key++
}
}
}
</script>
<style rel="stylesheet/less" lang="less" scoped>
</style>
......@@ -69,7 +69,9 @@ export default {
label: "操作",
render: (h, scope) => {
return (
<el-button type="text" icon="el-icon-edit-outline" onClick={() => { this.editClick(scope.row, 1) }}>修改</el-button>
<el-button type="text"
class='successColor'
onClick={() => { this.editClick(scope.row, 1) }}>修改</el-button>
)
}
}
......@@ -128,4 +130,8 @@ export default {
</script>
<style scoped lang="scss">
// @import "~@/styles/public.scss";
/deep/.dialogBox .dialog_title {
top: 0;
margin-left: 5px;
}
</style>
......
......@@ -74,8 +74,6 @@ export default {
<div>
<el-button
type="text"
size="mini"
icon="el-icon-edit"
onClick={() => {
this.handleEdit(scope.row);
}}
......@@ -86,8 +84,6 @@ export default {
<el-button
type="text"
size="mini"
icon="el-icon-delete"
style="color:#F56C6C"
onClick={() => {
this.handleDelete(scope.row.id, scope.row.name);
}}
......@@ -148,7 +144,7 @@ export default {
this.productId = res.content[0].id;
this.getAuthorityList(res.content[0].id, res.content[0].code)
this.selectedSubsystemCode = res.content[0].code
})
.catch((error) => {
console.log("er", error);
......
......@@ -24,7 +24,7 @@
@size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns"
:data="tableData.data">
</lb-table>
<add-task ref="task" :taskData="taskData" v-model="isDialog"/>
<add-task ref="task" :taskData="taskData" v-model="isDialog" />
</div>
</div>
</template>
......@@ -62,22 +62,26 @@ export default {
render: (h, scope) => {
return (
<div>
<el-button type="text" size="mini"
<el-button type="text"
v-show={scope.row.jobStatus === 0}
class='btnColor'
icon="el-icon-video-pause"
onClick={() => { this.handleActive(scope.row) }}>激活
</el-button>
<el-button type="text" size="mini"
v-show={scope.row.jobStatus === -1}
icon="el-icon-video-pause"
onClick={() => { this.recover(scope.row) }}>恢复
<el-button type="text"
v-show={scope.row.jobStatus === -1}
class='btnColor'
icon="el-icon-video-pause"
onClick={() => { this.recover(scope.row) }}>恢复
</el-button>
<el-button type="text" size="mini"
<el-button type="text"
icon="el-icon-edit"
class='btnColor'
onClick={() => { this.handleEdit(scope.row) }}>编辑
</el-button>
<el-button type="text" size="mini"
icon="el-icon-delete" style="color:#F56C6C"
<el-button type="text"
icon="el-icon-delete"
class='successColor'
v-show={scope.row.jobStatus !== -1}
onClick={() => { this.handleDel(scope.row) }}>删除
</el-button>
......@@ -100,7 +104,7 @@ export default {
this.taskData = null
this.isDialog = true
},
resetSe() {
resetSe () {
this.form.jobName = ''
this.featchData()
},
......@@ -114,7 +118,7 @@ export default {
this.message = error
}
},
recover(row) {
recover (row) {
this.$confirm('此操将进行恢复操作, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
......@@ -146,7 +150,7 @@ export default {
})
},
handleActive(row) {
handleActive (row) {
this.$confirm('此操将进行激活操作, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
......
<template>
<Dialog :title="title" class="modifydialog" :show.sync="visible" :width="'715px'" @close="close()">
<template slot="content">
<dialogBox :title="title" class="modifydialog" @closeDialog="close" @submitForm="submitForm" v-model="myValue">
<div class="dialogCon">
<el-form ref="form" :model="form" :rules="rules">
<el-row :gutter="24">
<el-col :span="11">
......@@ -11,11 +11,8 @@
<el-col :span="13">
<el-col :span="18" class="col-pd0">
<el-form-item label="性别:" label-width="72px">
<el-radio
v-for="(item, index) in sexList"
:key="index"
v-model="form.sex"
:label="item.value">{{ item.name }}</el-radio>
<el-radio v-for="(item, index) in sexList" :key="index" v-model="form.sex" :label="item.value">{{
item.name }}</el-radio>
</el-form-item>
</el-col>
<el-col :span="6">
......@@ -31,10 +28,7 @@
</el-col>
<el-col :span="13">
<el-form-item label="用户名:" prop="loginName" label-width="72px">
<el-input
v-model="form.loginName"
:disabled="showLoginName"
placeholder="用户名" />
<el-input v-model="form.loginName" :disabled="showLoginName" placeholder="用户名" />
</el-form-item>
</el-col>
</el-row>
......@@ -45,27 +39,16 @@
</el-form-item>
</el-col>
<el-col :span="13">
<el-form-item
label="手机号码:"
prop="mobilePhone"
label-width="72px">
<el-input
v-model="form.mobilePhone"
placeholder="手机号码" />
<el-form-item label="手机号码:" prop="mobilePhone" label-width="72px">
<el-input v-model="form.mobilePhone" placeholder="手机号码" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24">
<el-col :span="11">
<el-form-item label="最高职务级别:" label-width="100px">
<el-select
v-model="form.jobLevel"
placeholder="最高职务级别">
<el-option
v-for="item in levelList"
:key="item.value"
:label="item.name"
:value="item.value" />
<el-select v-model="form.jobLevel" placeholder="最高职务级别">
<el-option v-for="item in levelList" :key="item.value" :label="item.name" :value="item.value" />
</el-select>
</el-form-item>
</el-col>
......@@ -77,145 +60,118 @@
</el-row>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item
label="办公地点:"
label-width="100px"
class="form-item-mb0">
<el-form-item label="办公地点:" label-width="100px" class="form-item-mb0">
<el-input v-model="form.address" placeholder="办公地点" />
</el-form-item>
</el-col>
</el-row>
</el-form>
</template>
<template slot="footer">
<el-button type="primary" class="save" @click="submitForm(1)">保存</el-button>
<el-button class="cancel-button" @click="close()">取消</el-button>
</template>
</Dialog>
</div>
</dialogBox>
</template>
<script>
import { api, httpAction } from '@/api/manageApi'
import Dialog from "@/components/Dialog/";
export default {
name: "",
components: { Dialog },
props: {},
data () {
return {
form: {
sex: "0",
},
rules: {
name: [{ required: true, message: "请输入姓名", trigger: "blur" }],
code: [{ required: true, message: "请输入工号", trigger: "blur" }],
mobilePhone: [{ validator: "sddd", trigger: "blur" }],
loginName: [
{ required: true, message: "请输入用户名", trigger: "blur" },
],
},
title: "修改",
visible: false,
showLoginName: false,
sexList: [{ lable: "0", value: "0", name: "男" }, { lable: "1", value: "1", name: "女" }],
levelList: [{ lable: "0", value: "0", name: "干事" }, { lable: "1", value: "1", name: "经理" }],
dataUrl: api.users
};
},
computed: {
departmentid () {
return this.$store.state.user.userInfo;
import { api, httpAction } from '@/api/manageApi'
export default {
name: "",
props: {
value: { type: Boolean, default: false },
},
data () {
return {
myValue: false,
form: {
sex: "0",
},
},
watch: {},
created () { },
mounted () { },
methods: {
// initDictConfig() {
// getDictItems('XB').then((res) => {
// if (res.status === 1) {
// this.sexList = res.content
// } else {
// this.$message.error({ message: res.message, showClose: true })
// }
// })
// getDictItems('ZWJB').then((res) => {
// if (res.status === 1) {
// this.levelList = res.content
// } else {
// this.$message.error({ message: res.message, showClose: true })
// }
// })
// },
// 添加人员
adds () {
this.visible = true;
// this.type = 0
this.showLoginName = false
rules: {
name: [{ required: true, message: "请输入姓名", trigger: "blur" }],
code: [{ required: true, message: "请输入工号", trigger: "blur" }],
mobilePhone: [{ validator: "sddd", trigger: "blur" }],
loginName: [
{ required: true, message: "请输入用户名", trigger: "blur" },
],
},
// 编辑
edit (record) {
// this.initDictConfig()
this.showLoginName = true
// 若有id为编辑
if (record) {
this.$nextTick(() => {
this.form = Object.assign({}, record)
})
}
this.visible = true
},
handleChange (value) {
this.form.departmentId = value;
},
// 保存
submitForm (submitType) {
this.$refs.form.validate((valid) => {
if (valid) {
let method = ''
let url = ''
this.form.organizationId = this.departmentid.organizationId;
this.form.departmentId = this.departmentid.departmentId;
const formData = this.form
if (!formData.id) {
method = 'post'
url = this.dataUrl
} else {
method = 'put'
url = `${this.dataUrl}/${formData.id}`
}
title: "修改",
showLoginName: false,
sexList: [{ lable: "0", value: "0", name: "男" }, { lable: "1", value: "1", name: "女" }],
levelList: [{ lable: "0", value: "0", name: "干事" }, { lable: "1", value: "1", name: "经理" }],
dataUrl: api.users
};
},
computed: {
departmentid () {
return this.$store.state.user.userInfo;
},
},
watch: {
value (val) {
this.myValue = val
}
},
methods: {
// 添加人员
adds () {
this.showLoginName = false
},
// 编辑
edit (record) {
this.showLoginName = true
// 若有id为编辑
if (record) {
this.$nextTick(() => {
this.form = Object.assign({}, record)
})
}
},
handleChange (value) {
this.form.departmentId = value;
},
// 保存
submitForm (submitType) {
this.$refs.form.validate((valid) => {
if (valid) {
let method = ''
let url = ''
this.form.organizationId = this.departmentid.organizationId;
this.form.departmentId = this.departmentid.departmentId;
const formData = this.form
if (!formData.id) {
method = 'post'
url = this.dataUrl
} else {
method = 'put'
url = `${this.dataUrl}/${formData.id}`
}
httpAction(url, formData, method).then((res) => {
if (res.status === 1) {
this.$message.success({ message: res.message, showClose: true })
httpAction(url, formData, method).then((res) => {
if (res.status === 1) {
this.$message.success({ message: res.message, showClose: true })
this.resetForm()
this.resetForm()
this.close()
this.close()
this.$emit('ok')
} else {
this.$message.error({ message: res.message, showClose: true })
}
})
} else {
console.log('提交错误!!!')
return false
}
})
},
resetForm () {
this.form = {
sex: '0'
this.$emit('ok')
} else {
this.$message.error({ message: res.message, showClose: true })
}
})
} else {
return false
}
this.$refs.form.resetFields()
},
close () {
this.resetForm()
this.visible = false
})
},
resetForm () {
this.form = {
sex: '0'
}
this.$refs.form.resetFields()
},
};
close () {
this.resetForm()
this.visible = false
}
}
}
</script>
<style scoped lang="scss">
</style>
<style scoped lang="scss"></style>
......
......@@ -16,319 +16,315 @@
</el-form>
</div>
<div class="from-clues-content">
<lb-table
:pagination="false"
@size-change="handleSizeChange"
@p-current-change="handleCurrentChange"
:column="tableData.columns"
:data="tableData.data"
:expand-row-keys="keyList"
row-key="dictid">
<lb-table :pagination="false" @size-change="handleSizeChange" @p-current-change="handleCurrentChange"
:column="tableData.columns" :data="tableData.data" :expand-row-keys="keyList" row-key="dictid">
</lb-table>
</div>
<EditDialog ref="dialogForm" @ok="reloadTableData" />
<EditDialog ref="dialogForm" v-model="isDialog" @ok="reloadTableData" />
</div>
</template>
<script>
import {
getUuid,
judgeSort,
realMove,
findParents,
removeTreeListItem,
} from "@/utils/operation";
import {
resetPassword,
getUserList,
} from "@/api/personnelManage";
import { api, deleteAction } from '@/api/manageApi'
import data from "./data";
import { deleteDomStr } from '@/utils/proDomStr'
import tableMixin from "@/mixins/tableMixin.js";
import EditDialog from "./edit-dialog.vue";
import {updateOrder} from "@/api/orders"
export default {
name: "menus",
mixins: [tableMixin],
components: {
EditDialog,
},
data () {
return {
taskData: null,
keyList: [],
form: {
job_name: "",
currentPage: 1,
import {
getUuid,
judgeSort,
realMove,
findParents,
removeTreeListItem,
} from "@/utils/operation";
import {
resetPassword,
getUserList,
} from "@/api/personnelManage";
import { api, deleteAction } from '@/api/manageApi'
import data from "./data";
import { deleteDomStr } from '@/utils/proDomStr'
import tableMixin from "@/mixins/tableMixin.js";
import EditDialog from "./edit-dialog.vue";
import { updateOrder } from "@/api/orders"
export default {
name: "menus",
mixins: [tableMixin],
components: {
EditDialog,
},
data () {
return {
isDialog: false,
taskData: null,
keyList: [],
form: {
job_name: "",
currentPage: 1,
},
queryParam: {},
selectType: "0",
queryName: "",
organizationId: "", // 组织机构ID
departmentId: "", // 部门ID
departmentList: [], // 部门列表
levelList: [], // 职务级别
sexList: [],
typeOptions: [
{
value: "0",
label: "姓名",
},
queryParam: {},
selectType: "0",
queryName: "",
organizationId: "", // 组织机构ID
departmentId: "", // 部门ID
departmentList: [], // 部门列表
levelList: [], // 职务级别
sexList: [],
typeOptions: [
{
value: "0",
label: "姓名",
},
{
value: "1",
label: "工号",
},
{
value: "2",
label: "部门",
},
{
value: "1",
label: "工号",
},
{
value: "2",
label: "部门",
},
{
value: "3",
label: "机构",
},
],
selectionList: [],
tableData: {
columns: [
{
value: "3",
label: "机构",
label: "序号",
type: "index",
width: "50",
index: this.indexMethod,
},
],
selectionList: [],
tableData: {
columns: [
]
.concat(data.columns())
.concat([
{
label: "序号",
type: "index",
width: "50",
index: this.indexMethod,
label: "负责人",
render: (h, scope) => {
return (
<i v-show={scope.row.isDuty !== null} class="el-icon-check" />
)
}
},
]
.concat(data.columns())
.concat([
{
label: "负责人",
render: (h, scope) => {
return (
<i v-show={scope.row.isDuty !== null} class="el-icon-check" />
)
}
},
{
label: "排序",
width: 200,
render: (h, scope) => {
return (
<div>
<el-button
type="text"
disabled={scope.row.isTop}
onClick={() => {
this.updateOrder(scope.row,'TOP');
}}
>
置顶
</el-button>
<el-button
type="text"
disabled={scope.row.isTop}
onClick={() => {
this.updateOrder(scope.row,'UP');
}}
>
上移
</el-button>
<el-button
type="text"
disabled={scope.row.isBottom}
onClick={() => {
this.updateOrder(scope.row,'DOWN');
}}
>
下移
</el-button>
<el-button
type="text"
disabled={scope.row.isBottom}
onClick={() => {
this.updateOrder(scope.row,'BOTTOM');
}}
>
置底
</el-button>
</div>
);
},
{
label: "排序",
width: 200,
render: (h, scope) => {
return (
<div>
<el-button
type="text"
disabled={scope.row.isTop}
onClick={() => {
this.updateOrder(scope.row, 'TOP');
}}
>
置顶
</el-button>
<el-button
type="text"
disabled={scope.row.isTop}
onClick={() => {
this.updateOrder(scope.row, 'UP');
}}
>
上移
</el-button>
<el-button
type="text"
disabled={scope.row.isBottom}
onClick={() => {
this.updateOrder(scope.row, 'DOWN');
}}
>
下移
</el-button>
<el-button
type="text"
disabled={scope.row.isBottom}
onClick={() => {
this.updateOrder(scope.row, 'BOTTOM');
}}
>
置底
</el-button>
</div>
);
},
{
label: "操作",
width: 380,
render: (h, scope) => {
return (
<div>
<el-button
type="text"
size="mini"
icon="el-icon-video-pause"
onClick={() => {
this.resetPassword(scope.row.id);
}}
>
重置
</el-button>
<el-button
type="text"
size="mini"
icon="el-icon-edit"
onClick={() => {
this.handleEdit(scope.row);
}}
>
修改
</el-button>
<el-button
type="text"
size="mini"
icon="el-icon-delete"
style="color:#F56C6C"
onClick={() => {
this.handleDelete(scope.row.id, scope.row.name);
}}
>
删除
</el-button>
</div>
);
},
},
{
label: "操作",
width: 380,
render: (h, scope) => {
return (
<div>
<el-button
type="text"
size="mini"
icon="el-icon-video-pause"
onClick={() => {
this.resetPassword(scope.row.id);
}}
>
重置
</el-button>
<el-button
type="text"
size="mini"
icon="el-icon-edit"
onClick={() => {
this.handleEdit(scope.row);
}}
>
修改
</el-button>
<el-button
type="text"
size="mini"
icon="el-icon-delete"
style="color:#F56C6C"
onClick={() => {
this.handleDelete(scope.row.id, scope.row.name);
}}
>
删除
</el-button>
</div>
);
},
]),
data: [],
},
};
},
created () {
this.getTableList();
},
computed: {
departmentid () {
return this.$store.state.user.userInfo;
},
]),
data: [],
},
};
},
created () {
this.getTableList();
},
computed: {
departmentid () {
return this.$store.state.user.userInfo;
},
methods: {
handleAdd () {
this.$refs.dialogForm.adds();
this.$refs.dialogForm.title = "添加";
},
getTableList () {
this.loading = true;
this.queryParam = {
organizationId: this.departmentid.organizationId,
departmentId: this.departmentid.departmentId,
};
getUserList(this.queryParam).then((res) => {
console.log("人员列表", res);
if (res.status === 1) {
this.loading = false;
this.tableData.data = res.content;
this.tableData.data = judgeSort(this.tableData.data);
} else {
this.$message.error({ message: res.message, showClose: true });
}
});
},
// 重置用户密码
resetPassword (data) {
const ids = []
if (data instanceof Array) {
data.forEach((item) => {
ids.push(item.id)
})
},
methods: {
handleAdd () {
this.isDialog = true
this.$refs.dialogForm.adds();
this.$refs.dialogForm.title = "添加";
},
getTableList () {
this.loading = true;
this.queryParam = {
organizationId: this.departmentid.organizationId,
departmentId: this.departmentid.departmentId,
};
getUserList(this.queryParam).then((res) => {
if (res.status === 1) {
this.loading = false;
this.tableData.data = res.content;
this.tableData.data = judgeSort(this.tableData.data);
} else {
ids.push(data)
this.$message.error({ message: res.message, showClose: true });
}
if (ids.length === 0) {
this.$message({
message: '请选择需要重置密码的用户!',
showClose: true
})
return
}
this.$confirm(
`<div class="customer-message-wrapper">
});
},
// 重置用户密码
resetPassword (data) {
const ids = []
if (data instanceof Array) {
data.forEach((item) => {
ids.push(item.id)
})
} else {
ids.push(data)
}
if (ids.length === 0) {
this.$message({
message: '请选择需要重置密码的用户!',
showClose: true
})
return
}
this.$confirm(
`<div class="customer-message-wrapper">
<h5 class="title">确定要重置密码吗</h5>
<p class="result">执行后,数据将
<span >无法恢复</span>
</p>
</div>`,
'执行确认',
{
dangerouslyUseHTMLString: true,
customClass: 'customer-delete',
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}
)
.then(() => {
resetPassword(ids).then((res) => {
if (res.status === 1) {
this.$message.success({ message: res.message, showClose: true })
this.getTableList()
} else {
this.$message.error({ message: res.message, showClose: true })
}
})
})
.catch(() => { })
},
//排序
updateOrder(record, operate){
const findIndex = this.tableData.data.findIndex(item => item.id === record.id)
let swapId = ''
if (operate === 'UP') {
swapId = this.tableData.data[findIndex - 1].id
} else if (operate === 'DOWN') {
swapId = this.tableData.data[findIndex + 1].id
}
updateOrder('/rest/users', record, operate, swapId).then(res => {
if (res.status === 1) {
this.$message.success({ message: res.message, showClose: true })
this.getTableList();
} else {
this.$message.error({ message: res.message, showClose: true })
}
})
},
// 修改人员信息
handleEdit (row) {
this.$refs.dialogForm.edit(row);
this.$refs.dialogForm.title = "修改";
},
// 删除
handleDelete (id, content) {
this.$confirm(deleteDomStr(content), '执行确认', {
'执行确认',
{
dangerouslyUseHTMLString: true,
customClass: 'customer-delete',
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
deleteAction(`${api.users}/${id}`).then((res) => {
if (res.status === 1) {
this.$message.success({ message: res.message, showClose: true })
} else {
this.$message.error({ message: res.message, showClose: true })
}
}
)
.then(() => {
resetPassword(ids).then((res) => {
if (res.status === 1) {
this.$message.success({ message: res.message, showClose: true })
this.getTableList()
})
} else {
this.$message.error({ message: res.message, showClose: true })
}
})
.catch(() => { })
},
// 新增回显
reloadTableData () {
this.getTableList()
},
})
.catch(() => { })
},
//排序
updateOrder (record, operate) {
const findIndex = this.tableData.data.findIndex(item => item.id === record.id)
let swapId = ''
if (operate === 'UP') {
swapId = this.tableData.data[findIndex - 1].id
} else if (operate === 'DOWN') {
swapId = this.tableData.data[findIndex + 1].id
}
updateOrder('/rest/users', record, operate, swapId).then(res => {
if (res.status === 1) {
this.$message.success({ message: res.message, showClose: true })
this.getTableList();
} else {
this.$message.error({ message: res.message, showClose: true })
}
})
},
// 修改人员信息
handleEdit (row) {
this.isDialog = true
this.$refs.dialogForm.edit(row);
this.$refs.dialogForm.title = "修改";
},
// 删除
handleDelete (id, content) {
this.$confirm(deleteDomStr(content), '执行确认', {
dangerouslyUseHTMLString: true,
customClass: 'customer-delete',
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
deleteAction(`${api.users}/${id}`).then((res) => {
if (res.status === 1) {
this.$message.success({ message: res.message, showClose: true })
} else {
this.$message.error({ message: res.message, showClose: true })
}
this.getTableList()
})
})
.catch(() => { })
},
// 新增回显
reloadTableData () {
this.getTableList()
},
};
},
};
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
@import "./index.scss";
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
@import "./index.scss";
</style>
......