This commit is contained in:
zhutianqi
2021-07-08 17:31:21 +08:00
parent cf357076ea
commit edf0a1ad03
5 changed files with 681 additions and 193 deletions
@@ -6,23 +6,19 @@
<el-transfer
:data="data"
v-model="value"
:titles="['可选模块','个人模块']"
:titles="['可选模块','个人展示模块']"
@change="handleChange"
@left-check-change="selectedChange"
@right-check-change="selectedChange"
filterable>
</el-transfer>
<div class="btn-group">
<!-- <div class="button-wrapper">-->
<!-- <el-button type="primary" size="small" class="searchAngNewBtn" @click="reloadMockData(1)">{{$t('m.moveUp')}}</el-button>-->
<!-- <el-button type="primary" size="small" class="searchAngNewBtn" @click="reloadMockData(2)" style="margin-left: 0.5rem;">{{$t('m.moveDown')}}</el-button>-->
<!-- </div>-->
</div>
</div>
</div>
<el-divider></el-divider>
<div class="footer">
<el-button type="primary" size="small" class="searchAngNewBtn" v-btn-permission="'NQDDVW8JW3EUVAEXZH3F'" @click="savePersonal">保存修改</el-button>
<el-button type="primary" size="small" class="searchAngNewBtn" @click="savePersonal">保存修改</el-button>
</div>
</div>
</template>
@@ -47,46 +43,36 @@ export default {
listStyle: {
width: '5rem',
height: '8rem'
}
},
oldData: []
}
},
methods: {
// 右侧列表元素变化时触发
handleChange (newTargetKeys, direction, moveKeys) {
this.targetKeys = newTargetKeys
this.numData = []
if (direction === 'left') {
this.oldData.forEach( item => {
moveKeys.forEach( items => {
if (items === item.id) {
item.state = 1
}
})
})
} else if (direction === 'right'){
this.oldData.forEach( item => {
moveKeys.forEach( items => {
if (items === item.id) {
item.state = 0
}
})
})
}
this.targetKeys = newTargetKeys
this.numData = []
},
selectedChange (sourceSelectedKeys, targetSelectedKeys) {
this.numData = sourceSelectedKeys
this.sourceSelectedKeys = targetSelectedKeys
},
renderPersonal (item) {
return item.label
},
// 上移,下移
reloadMockData (flag) {
if (this.numData.length > 1 || this.numData.length === 0) {
this.$message({
message: '选择个人板块一条板块进行上移下移操作',
type: 'warning'
})
} else {
// numData : 选中的值
let num = this.targetKeys.indexOf(this.numData[0])
if (flag === 1) {
// 1表示上移
if (num > 0) {
this.value.splice(num, 1)
this.value.splice(num - 1, 0, this.numData[0])
}
} else {
// 2表示下移
this.targetKeys.splice(num, 1)
this.targetKeys.splice(num + 1, 0, this.numData[0])
// targetKeys 变了
// this.data = JSON.stringify(this.targetKeys)
}
}
this.numData = sourceSelectedKeys
this.sourceSelectedKeys = targetSelectedKeys
},
savePersonal () {
if (this.targetKeys.length === 0) {
@@ -96,9 +82,10 @@ export default {
})
return
}
this.$http.post('person/personModuleUser/insertModule',
this.$http.postData('sarPersonalCenter/sar-user-personal-menu/update',
{
moduleIds: this.targetKeys
sarUserPersonalMenus: this.oldData,
userId: this.$store.getters.userInfo.userId
}, {
_this: this
}, res => {
@@ -113,16 +100,14 @@ export default {
},
// 获取模块
selectPersonConf () {
this.$http.get('person/personModule/queryByList',
this.$http.get('/sarPersonalCenter/sar-user-personal-menu/getList',
{
userId: this.$store.getters.userInfo.userId
}, {_this: this}, res => {
res.data.map((item) => {
if (item.moduleName === '首页') {
res.data.records.map((item) => {
if (item.menuName === '首页') {
this.selected.push(item)
} else if (item.moduleName === '待办任务') {
this.selected.push(item)
} else if (item.flag === '0') {
} else if (item.state == 0) {
this.selected.push(item)
}
})
@@ -132,16 +117,17 @@ export default {
}
// 左侧数据会筛选出右侧数据进行显示
var j
for (j = 0; j < res.data.length; j++) {
for (j = 0; j < res.data.records.length; j++) {
let moduleLabel = {}
moduleLabel = res.data[j].moduleName
moduleLabel = res.data.records[j].menuName
let moduleid = {}
moduleid = res.data[j].id
moduleid = res.data.records[j].id
this.data.push({
label: moduleLabel,
key: moduleid,
disabled: moduleLabel === '首页' || moduleLabel === '待办任务'
disabled: moduleLabel === '首页'
})
this.oldData = JSON.parse(JSON.stringify(res.data.records))
}
this.value = this.targetKeys
}, e => {
@@ -260,16 +260,16 @@ export default {
},
roleFormRules: {
dockUserName: [
{ required: true, message: '请输入调研标题', trigger: 'change' },
{ required: true, message: '请选择责任部门对接人', trigger: 'change' },
],
ministerUserName: [
{ required: true, message: '请输入调研标题', trigger: 'change' },
{ required: true, message: '请选择标准法规部部长', trigger: 'change' },
],
directorUserName: [
{ required: true, message: '请输入调研标题', trigger: 'change' },
{ required: true, message: '请选择技术管理中心主任', trigger: 'change' },
],
presidentUserName: [
{ required: true, message: '请输入调研标题', trigger: 'change' },
{ required: true, message: '请选择工程研究院院长', trigger: 'change' },
]
},
fileUrl: 'api/att/attFile/upload',
@@ -7,13 +7,14 @@
</ProcessHeader>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">人员信息</div>
</div>
<div class="content" v-if="active === '1'">
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto;">
<el-form
ref="bzzqyjForm"
:model="form"
:rules="formRules"
class="label-input-form"
label-width="210px"
>
@@ -27,25 +28,29 @@
<div class="addButton">
<el-button size="small" type="primary" @click="addZqyjList">选择征求意见</el-button>
</div>
</el-form-item>
<el-form-item label="标准编号" prop="cid" class="add-form-item form-item-disabled">
<el-select v-model="form.cid" placeholder="请选择标准编号">
<el-option label="GB 472726" value="1"></el-option>
<el-option label="GB/T 8453291" value="2"></el-option>
</el-select>
<el-input
disabled
v-model="form.cid"
placeholder="请输入标准编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="标准名称" prop="cname" class="add-form-item form-item-disabled">
<el-select v-model="form.cname" placeholder="请选择标准名称">
<el-option label="标准1" value="1"></el-option>
<el-option label="标准2" value="2"></el-option>
</el-select>
<el-input
disabled
v-model="form.cname"
placeholder="请输入标准名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="征求意见结束日期" prop="endTime" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.endTime"
type="date"
placeholder="请选择结束日期">
disabled
v-model="form.endTime"
type="date"
placeholder="请选择结束日期">
</el-date-picker>
</el-form-item>
</el-col>
@@ -53,13 +58,27 @@
</div>
</el-form>
</div>
<el-collapse accordion>
<el-collapse-item title="意见填写">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<div class="content" v-if="active === '2'">
<div class="content" v-show="active === '2'">
<div class="block" style="padding-top: 20px;">
<el-timeline>
<el-form
ref="Form"
:model="roleForm"
:rules="roleFormRules"
class="label-input-form">
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
<el-card>
@@ -67,66 +86,66 @@
<h4>流程发起人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.startUser" style="display: none;"/>
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"/>
<el-input v-model="roleForm.startUserName" placeholder="流程发起人" disabled/>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="选择责任人" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
<el-timeline-item timestamp="指派责任人" placement="top" :color="roleForm.dockUserList ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="dockUserName" style="margin-bottom: 0">
<h4>责任对接人</h4>
<el-form-item prop="dockUserList" style="margin-bottom: 0">
<h4>责任部门对接人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.dockUser" style="display: none;"/>
<el-input v-model="roleForm.dockUserList" style="display: none;"/>
<el-input
v-model="roleForm.dockUserName"
placeholder="选择责任人"
@click.native="choiceZRR('dockUser', '选择责任人', roleForm.dockUser)">
v-model="roleForm.dockUserListName"
placeholder="选择责任部门对接人"
@click.native="choiceZRRS">
</el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="填写意见" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
<el-timeline-item timestamp="审核征求意见" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="mainUserName" style="margin-bottom: 0">
<h4>责任人</h4>
<el-form-item prop="ministerUser" style="margin-bottom: 0">
<h4>标准法规部部长</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.mainUser" style="display: none;"/>
<el-input v-model="roleForm.ministerUser" style="display: none;"/>
<el-input
v-model="roleForm.mainUserName"
placeholder="选择责任人·"
@click.native="choiceZRR('mainUser', '选择责任人', roleForm.mainUser)"
v-model="roleForm.ministerUserName"
placeholder="选择标准法规部部长·"
@click.native="choiceZRR('ministerUser', '选择标准法规部部长', roleForm.ministerUser)"
/>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="意见汇总并发起会签" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
<el-timeline-item timestamp="审定征求意见" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="engineerUserName" style="margin-bottom: 0">
<h4>标准法规工程师</h4>
<el-form-item prop="directorUser" style="margin-bottom: 0">
<h4>技术管理中心主任</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.engineerUser" style="display: none;"/>
<el-input v-model="roleForm.directorUser" style="display: none;"/>
<el-input
v-model="roleForm.engineerUserName"
placeholder="选择标准法规工程师"
@click.native="choiceZRR('engineerUser', '选择标准法规工程师', roleForm.engineerUser)"
v-model="roleForm.directorUserName"
placeholder="选择技术管理中心主任"
@click.native="choiceZRR('directorUser', '选择技术管理中心主任', roleForm.directorUser)"
/>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="审核" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
<el-timeline-item timestamp="批准征求意见" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="checkUserName" style="margin-bottom: 0">
<h4>责任对接人标准法规部门负责人</h4>
<el-form-item prop="presidentUser" style="margin-bottom: 0">
<h4>工程研究总院院长</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.checkUser" style="display: none;"/>
<el-input v-model="roleForm.presidentUser" style="display: none;"/>
<el-input
v-model="roleForm.checkUserName"
placeholder="选择责任对接人,标准法规部门负责人"
@click.native="choiceZRR('checkUser', '选择责任对接人,标准法规部门负责人', roleForm.checkUserName)"
v-model="roleForm.presidentUserName"
placeholder="选择工程研究总院院长"
@click.native="choiceZRR('presidentUser', '选择工程研究总院院长', roleForm.presidentUser)"
/>
</div>
</el-form-item>
@@ -152,42 +171,43 @@
custom-class="demo-drawer"
>
<div class="standardForComments">
<!-- 顶部工具栏 -->
<table-tools-bar>
<div slot="left">
<div class="search-area">
<el-form :model="standCommonlySearch" inline class="label-input-form">
<el-formItem label="类别" class="search-item">
<el-input v-model="standCommonlySearch.categorg" class="s-c-input" placeholder="标准/政策" clearable :maxlength="100"></el-input>
</el-formItem>
<el-formItem label="关键字" class="search-item">
<el-input v-model="standCommonlySearch.cname" class="s-c-input" placeholder="请输入关键字" clearable :maxlength="100"></el-input>
</el-formItem>
<el-formItem label="开始日期" class="search-item">
<el-datePicker v-model="standCommonlySearch.start" :editable="false"
placeholder="请选择开始日期"></el-datePicker>
</el-formItem>
<el-formItem label="结束日期" class="search-item">
<el-datePicker v-model="standCommonlySearch.end" :editable="false"
placeholder="请选择结束日期"></el-datePicker>
</el-formItem>
<el-formItem class="search-item btn-box">
<el-button
type="primary"
size="mini"
class="common-button-primary"
@click="sarStandCompareHisInfo">查询</el-button>
<el-button
class="common-button-default"
size="mini"
@click="clearSearchStand">清空</el-button>
</el-formItem>
</el-form>
</div>
</div>
</table-tools-bar>
<div class="content">
<!-- 顶部工具栏 -->
<table-tools-bar>
<div slot="left">
<div class="search-area">
<el-form :model="standCommonlySearch" inline class="label-input-form">
<el-formItem label="类别" class="search-item">
<el-input v-model="standCommonlySearch.categorg" class="s-c-input" placeholder="标准/政策" clearable :maxlength="100"></el-input>
</el-formItem>
<el-formItem label="关键字" class="search-item">
<el-input v-model="standCommonlySearch.cname" class="s-c-input" placeholder="请输入关键字" clearable :maxlength="100"></el-input>
</el-formItem>
<el-formItem label="开始日期" class="search-item">
<el-datePicker v-model="standCommonlySearch.start" :editable="false"
placeholder="请选择开始日期"></el-datePicker>
</el-formItem>
<el-formItem label="结束日期" class="search-item">
<el-datePicker v-model="standCommonlySearch.end" :editable="false"
placeholder="请选择结束日期"></el-datePicker>
</el-formItem>
<el-formItem class="search-item btn-box">
<el-button
type="primary"
size="mini"
class="common-button-primary"
@click="sarStandCompareHisInfo">查询</el-button>
<el-button
class="common-button-default"
size="mini"
@click="clearSearchStand">清空</el-button>
</el-formItem>
</el-form>
</div>
</div>
</table-tools-bar>
<div class="table-wrap">
<div style="position: absolute;height: calc(100% - 10px);width: 100%;">
<el-table
@@ -216,6 +236,57 @@
</div>
</div>
</el-drawer>
<el-drawer
:title="drawerTitle"
:visible.sync="modalshowflag"
:wrapperClosable="false"
size="800px">
<el-tree
v-if="modalshowflag"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
@check="drawerCheck"
default-expand-all
:expand-on-click-node="false"
show-checkbox
ref="tree">
</el-tree>
<div id="roleFormButton" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
</div>
</el-drawer>
<el-drawer
title="选择责任部门对接人"
:visible.sync="modalshowflag2"
:wrapperClosable="false"
size="800px">
<el-tree
v-if="modalshowflag2"
style="height: 100%; overflow: auto;"
node-key="id"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList2"
highlight-current
check-strictly
default-expand-all
:expand-on-click-node="false"
show-checkbox
ref="tree2">
</el-tree>
<div id="roleFormButton2" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo2">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo2">取消</el-button>
</div>
</el-drawer>
</div>
</template>
@@ -229,6 +300,7 @@ export default {
name: "bzzqyjStep1",
data() {
return {
commentText: '',
textarea: '', // 意见
title: '', // 新增抽屉标题
listModel: false, // 新增抽屉开关
@@ -241,6 +313,17 @@ export default {
endTime: '', // 结束日期
cname: '', // 名称
},
formRules: {
cid: [
{ required: true, message: '请输入标准编号', trigger: 'change' },
],
endTime: [
{ required: true, message: '请输入标准结束日期', trigger: 'change' },
],
cname: [
{ required: true, message: '请输入标准名称', trigger: 'change' },
],
},
// 标准征求意见数据可库
standCommonlySearch: {
categorg: '',
@@ -259,15 +342,41 @@ export default {
roleForm: {
startUserName: this.$store.getters.userInfo.userName,
startUser: this.$store.getters.userInfo.userId,
dockUser: '',
dockUserName: '',
mainUser: '',
mainUserName: '',
engineerUser: '',
engineerUserName: '',
checkUser: '',
checkUserName: '',
}
dockUserList: '',
dockUserListName: '',
ministerUser: '',
ministerUserName: '',
directorUser: '',
directorUserName: '',
presidentUser: '',
presidentUserName: '',
},
roleFormRules: {
dockUserList: [
{ required: true, message: '请选择责任部门对接人', trigger: 'change' },
],
ministerUser: [
{ required: true, message: '请选择标准法规部部长', trigger: 'change' },
],
directorUser: [
{ required: true, message: '请选择技术管理中心主任', trigger: 'change' },
],
presidentUser: [
{ required: true, message: '请选择工程研究院院长', trigger: 'change' },
]
},
treeData: [],
nodeList: [],
nodeList2: [],
type: '',
drawerTitle: '',
modalshowflag: false,
modalshowflag2: false,
defaultProps: {
children: 'children',
label: 'name'
},
roleRow: {},
}
},
components: {
@@ -276,6 +385,7 @@ export default {
ProcessTitle
},
mounted () {
this.getTree()
this.sarStandCompareHis()
this.tableHeight = $('.content').height() - 44
window.onresize = () => {
@@ -287,7 +397,6 @@ export default {
this.title = '标准征求意见库'
this.listModel = true
},
/** 标准征求意见库方法*
* **********************************************/
// 清空
@@ -348,7 +457,6 @@ export default {
for (let i = 0; i < this.selectedList.length; i++) {
bringData.push(deposit.get(this.selectedList[i]));
}
console.log(bringData)
this.form.cid = bringData[0].cid
this.form.cname = bringData[0].cname;
this.form.endTime = bringData[0].endTime;
@@ -360,18 +468,107 @@ export default {
}
},
/*** **********************************************/
/** 流程节点负责人的选择 *****************************/
choiceZRR() {
// this.choice
choiceZRR (type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.type = type
this.drawerTitle = title
this.modalshowflag = true
},
getTree () {
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
this.treeData = res.data
})
},
saveUserInfo () {
if (this.type === 'ministerUser') {
this.roleForm.ministerUser = this.roleRow.id
this.roleForm.ministerUserName = this.roleRow.name
} else if (this.type === 'directorUser') {
this.roleForm.directorUser = this.roleRow.id
this.roleForm.directorUserName = this.roleRow.name
} else if (this.type === 'presidentUser') {
this.roleForm.presidentUser = this.roleRow.id
this.roleForm.presidentUserName = this.roleRow.name
}
this.modalshowflag = false
},
cancleUserInfo () {
this.modalshowflag = false
},
drawerCheck (data) {
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
if(getlist.length == 1) {
this.roleRow = getlist[0]
}else {
this.$refs.tree.setCheckedKeys([data.id]);
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
}
},
choiceZRRS () {
this.nodeList2 = []
if ( this.roleForm.dockUserList.length > 0) {
this.nodeList2 = this.roleForm.dockUserList.split(',')
}
this.modalshowflag2 = true
},
saveUserInfo2 () {
var idList = ''
var nameList = ''
this.$refs.tree2.getCheckedNodes().concat(this.$refs.tree2.getHalfCheckedNodes()).forEach( item => {
if (nameList.length > 0) {
nameList += ','
idList += ','
}
idList += item.id
nameList += item.name
})
this.roleForm.dockUserList = idList
this.roleForm.dockUserListName = nameList
this.modalshowflag2 = false
},
cancleUserInfo2 () {
this.modalshowflag2 = false
},
handleTabs(name) {
this.active = name
},
// 流程也的提交按钮和保存按钮操作
handleSave() {},
handleSubmit() {}
handleSubmit() {
this.$refs['bzzqyjForm'].validate((valid) => {
if (valid) {
this.$refs['Form'].validate((valid) => {
if (valid) {
this.$http.get('lawss/activiti/startProcess', {
type: '3'
}, {}, res => {
if (res.ok) {
var json = Object.assign(this.form, this.roleForm)
json.commentText = this.commentText
this.$http.post('lawss/activiti/completeTask', {
json: JSON.stringify(json),
taskId: res.data,
userId: this.$store.getters.userInfo.userId
}, {}, res => {
if (res.success) {
this.$message.success('流程发起成功')
this.$router.push('/processCenter')
}
})
} else {
this.$message.warning('流程启动失败')
}
})
} else {
return this.$message.warning('请完善人员信息')
}
})
} else {
return this.$message.warning('请完善基础信息')
}
})
}
}
}
</script>
@@ -412,7 +609,7 @@ export default {
display: flex;
flex-direction: column;
justify-content: space-between;
height: calc(~'100% - 103px');
height: calc(~'100% - 107px');
overflow: auto;
}
.standardForComments {
@@ -1,13 +1,300 @@
<template>
<div class="bzdyStep2">
<!-- 标准调研流程-->
<ProcessHeader toggle>
<template slot="proName">标准征求意见流程</template>
<template slot="proNode">对接人选择责任人</template>
</ProcessHeader>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
</div>
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto;">
<el-form
ref="bzzqyjForm"
:model="form"
:rules="formRules"
class="label-input-form"
label-width="210px"
>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<div class="prc-content-border">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="标准编号" prop="cid" class="add-form-item form-item-disabled">
<el-input
disabled
v-model="form.cid"
placeholder="请输入标准编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="标准名称" prop="cname" class="add-form-item form-item-disabled">
<el-input
disabled
v-model="form.cname"
placeholder="请输入标准名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="征求意见结束日期" prop="endTime" class="add-form-item form-item-disabled">
<el-date-picker
disabled
v-model="form.endTime"
type="date"
placeholder="请选择结束日期">
</el-date-picker>
</el-form-item>
<el-form-item label="责任人" prop="responUserList" class="add-form-item form-item-disabled">
<el-input
v-model="form.responUserList"
style="display: none;"
clearable
></el-input>
<el-input v-model="form.responUserListName" placeholder="请选择责任人" @click.native="choiceZRR"></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</div>
<el-collapse accordion>
<el-collapse-item title="意见填写">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<ProcessFooter
show-save
show-submit
:submitLoading="isSubmit"
:saveLoading="saveLoading"
@save="handleSave"
@submit="handleSubmit"
>
</ProcessFooter>
<el-drawer
title="选择责任人"
:visible.sync="modalshowflag"
:wrapperClosable="false"
size="800px">
<el-tree
v-if="modalshowflag"
style="height: 100%; overflow: auto;"
node-key="id"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
default-expand-all
:expand-on-click-node="false"
show-checkbox
ref="tree">
</el-tree>
<div id="roleFormButton" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
</div>
</el-drawer>
</div>
</template>
<script>
export default {
name: "step2"
}
import ProcessHeader from '../../components/ProcessHeader'
import ProcessFooter from '../../components/ProcessFooter'
import ProcessTitle from '../../components/ProcessTitle'
import {inboundLiaisonDetail,processCreateStand} from 'api/process'
export default {
name: "bzzqyjStep2",
data() {
return {
commentText: '',
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId,
roleRow: {},
nodeList: [],
type: '',
defaultProps: {
children: 'children',
label: 'name'
},
treeData: [], // 人员数据
modalshowflag: false, // drawer开关
drawerTitle: '', //drawer标题
textarea: '', // 意见
ListModel: false, // 新增编辑抽屉开关
active: '1', // 默认显示
isSubmit: false,
saveLoading: false,
form: {
cid: '', // 编号
endTime: '', // 结束日期
cname: '', // 名称
responUserList: '',
responUserListName: ''
},
formRules: {
responUserList: [
{ required: true, message: '请选择责任人', trigger: 'change' },
]
},
json: {}
}
},
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle
},
methods: {
saveUserInfo () {
var idList = ''
var nameList = ''
this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes()).forEach( item => {
if (nameList.length > 0) {
nameList += ','
idList += ','
}
idList += item.id
nameList += item.name
})
this.form.responUserList = idList
this.form.responUserListName = nameList
this.modalshowflag = false
},
cancleUserInfo () {
this.modalshowflag = false
},
choiceZRR () {
this.nodeList = []
if (this.form.responUserList.length > 0) {
this.nodeList = this.form.responUserList.split(',')
}
this.modalshowflag = true
},
getTree () {
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
this.treeData = res.data
})
},
handleTabs(name) {
this.active = name
},
handleSave() {},
handleSubmit() {
this.$refs['bzzqyjForm'].validate((valid) => {
if (valid) {
var json = this.json
json.commentText = this.commentText
json.responUserList = this.form.responUserList
json.responUserListName = this.form.responUserListName
this.$http.post('lawss/activiti/completeTask', {
json: JSON.stringify(json),
taskId: this.taskIds,
userId: this.$store.getters.userInfo.userId
}, {}, res => {
if (res.success) {
this.$message.success('提交成功')
this.$router.push('/processCenter')
}
})
} else {
return this.$message.warning('请完善基础信息')
}
})
},
getData() {
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.taskIds,
pId: this.pId
}).then(res => {
let data = JSON.parse(res.mesg)
this.form.cid = data.cid
this.form.endTime = data.endTime
this.form.cname = data.cname
this.json = data
}).catch(e => {
})
})
},
},
mounted () {
this.getTree()
this.getData()
}
}
</script>
<style scoped>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.bzdyStep2 {
/deep/.el-drawer__container {
.prc-content-border {
border: none;
padding: 0 20px 0;
}
}
.fileClass {
cursor: pointer;
}
.fileClass:hover{
color: #0c91e5;
}
position: relative;
height: 100%;
.headerTabs {
height: 52px;
display: flex;
align-items: center;
position: absolute;
top: 0;
right: 10px;
.headerTabsItem {
border: 1px solid #c1c1c1;
padding: 0 5px;
height: 30px;
line-height: 30px;
cursor: pointer;
}
.active {
border: 1px solid #E6A23C;
color: #fff;
background: #E6A23C;
}
}
.content {
display: flex;
flex-direction: column;
justify-content: space-between;
height: calc(~'100% - 103px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
</style>
@@ -252,6 +252,7 @@ export default {
}
})
}
break
case '2':
if (row.taskInfo === '责任对接人选择责任人') {
this.$router.push({
@@ -343,43 +344,59 @@ export default {
})
}
break;
break
case '3':
if (row.taskInfo === '责任对接人选择责任人') {
this.$router.push({
name: 'bzzqyjStep2',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
break
//标准清单更新/发布流程
case'4' :
if (row.taskInfo === '进行会签,填写意见') {
this.$router.push({
name: 'bzqdfbStep2',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
} else if (row.taskInfo === '根据会签意见修订') {
this.$router.push({
name: 'bzqdfbStep3',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}else if (row.taskInfo === '业务经理审批') {
this.$router.push({
name: 'bzqdfbStep4',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
break;
case'4' :
if (row.taskInfo === '进行会签,填写意见') {
this.$router.push({
name: 'bzqdfbStep2',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
} else if (row.taskInfo === '根据会签意见修订') {
this.$router.push({
name: 'bzqdfbStep3',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}else if (row.taskInfo === '业务经理审批') {
this.$router.push({
name: 'bzqdfbStep4',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
break;
break
//项目合规评估流程
case '5' :
if(row.taskInfo === ''){
@@ -394,6 +411,7 @@ export default {
}
})
}
break
}
},