Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
@@ -2,8 +2,8 @@
|
||||
<template>
|
||||
<div class="attribute-custom v-class">
|
||||
<div class="action-bar1">
|
||||
<el-button class="common-button-primary add-button" size="mini" v-btn-permission="'EAT8LJFSP6P4QMR6M8F4'" type="primary" @click="showAddModel"><i class="iconfont"></i>新增</el-button>
|
||||
<el-button class="common-button-default" size="mini" v-btn-permission="'Q2AQMSUHKZDKLXJBHJEN'" @click="showDisplayLocationDialog">展示区域管理</el-button>
|
||||
<el-button class="common-button-primary add-button" size="mini" v-btn-permission="''" type="primary" @click="showAddModel"><i class="iconfont"></i>新增</el-button>
|
||||
<el-button class="common-button-default" size="mini" v-btn-permission="''" @click="showDisplayLocationDialog">展示区域管理</el-button>
|
||||
</div>
|
||||
<loading :loading="attributeDataLoading">数据处理中</loading>
|
||||
<div class="content">
|
||||
@@ -76,7 +76,7 @@
|
||||
<el-dropdown trigger="click" @command="handleCommand">
|
||||
<i class="iconfont"></i>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item v-btn-permission="'PTH96GYZT6SQZE9H8XCF'" :command="[scope.row, '编辑']">编辑</el-dropdown-item>
|
||||
<el-dropdown-item v-btn-permission="''" :command="[scope.row, '编辑']">编辑</el-dropdown-item>
|
||||
<el-dropdown-item :disabled="scope.row.isEdit==='1'" :command="[scope.row, '删除']">删除</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
|
||||
@@ -53,10 +53,10 @@
|
||||
class="common-button-primary"
|
||||
size="mini"
|
||||
@click="showAddModel(1, null)"
|
||||
v-btn-permission="'29YZ482LEHRJJXELWZGG'"
|
||||
v-btn-permission="''"
|
||||
><i class="iconfont"></i>新增</el-button
|
||||
>
|
||||
<el-button @click="deleteAttr" size="mini" class="common-button-default" v-btn-permission="T97J4LTH3TP36CREJ62A"
|
||||
<el-button @click="deleteAttr" size="mini" class="common-button-default" v-btn-permission=""
|
||||
><i class="iconfont"></i>删除</el-button
|
||||
>
|
||||
</div>
|
||||
@@ -124,13 +124,13 @@
|
||||
<i class="iconfont"></i>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item
|
||||
v-btn-permission="'5B3QMLDMTJ4XPLKSFA8Q'"
|
||||
v-btn-permission="''"
|
||||
:disabled="scope.row.enable === '0'"
|
||||
:command="[scope.row, '编辑']"
|
||||
>编辑</el-dropdown-item
|
||||
>
|
||||
<el-dropdown-item
|
||||
v-btn-permission="'T97J4LTH3TP36CREJ62A'"
|
||||
v-btn-permission="''"
|
||||
:disabled="scope.row.enable === '0'"
|
||||
:command="[scope.row, '删除']"
|
||||
>删除</el-dropdown-item
|
||||
|
||||
@@ -12,6 +12,10 @@ export default {
|
||||
label: '标准入库流程',
|
||||
value: '1'
|
||||
},
|
||||
{
|
||||
label:'标准清单发布流程',
|
||||
value: '3'
|
||||
},
|
||||
],
|
||||
formDisableFlag: false,
|
||||
pickerOptions: {
|
||||
|
||||
@@ -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="qbkwForm"
|
||||
:model="form"
|
||||
:rules="formRules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
@@ -30,10 +31,10 @@
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="完成时间" prop="year" class="add-form-item form-item-disabled">
|
||||
<el-form-item label="完成时间" prop="date" class="add-form-item form-item-disabled">
|
||||
<el-date-picker
|
||||
v-model="form.year"
|
||||
type="year"
|
||||
v-model="form.date"
|
||||
type="date"
|
||||
placeholder="请选择完成时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
@@ -55,99 +56,72 @@
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="调研描述">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入调研描述"
|
||||
v-model="textarea">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
</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-timeline-item timestamp="发起流程" placement="top" :color="user1 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>流程发起人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="user1" placeholder="流程发起人"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="选择责任人" placement="top" :color="user2 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>责任对接人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="user2" placeholder="选择责任人" @click.native="choiceZRR">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="上传调研结果" placement="top" :color="user3 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="user3" placeholder="选择责任人"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
|
||||
<el-timeline-item timestamp="审批" placement="top" :color="user4 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>责任对接人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="user5" placeholder="选择责任对接人"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="调研汇总" placement="top" :color="user5 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>标准法规工程师</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="user4" placeholder="选择标准法规工程师"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="会签审核" placement="top" :color="user6 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="user5" placeholder="选择责任人"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="会签审核" placement="top" :color="user7 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>责任部门领导与标准法规部部长</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="user5" placeholder="选择责任部门领导与标准法规部部长"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="审定" placement="top" :color="user8 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>技术管理中心负责人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="user5" placeholder="选择技术管理中心负责人"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="批准" placement="top" :color="user9 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>标准法规业务院级领导</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="user5" placeholder="选择标准法规业务院级领导"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-form
|
||||
ref="Form"
|
||||
:model="roleForm"
|
||||
:rules="roleFormRules"
|
||||
class="label-input-form">
|
||||
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||
<h4>流程发起人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="选择部门责任人" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||
<h4>责任部门对接人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.dockUserName" placeholder="选择责任人" @click.native="choiceZRR('dockUser', '选择责任人', roleForm.dockUser)">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="审批" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||
<h4>标准法规部部长</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.ministerUserName" placeholder="选择标准法规部部长" @click.native="choiceZRR('ministerUser', '选择标准法规部部长', roleForm.ministerUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="审定" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||
<h4>技术管理中心主任</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.directorUserName" placeholder="选择技术管理中心主任" @click.native="choiceZRR('directorUser', '选择技术管理中心主任', roleForm.directorUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||
<h4>工程研究总院院长</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.presidentUserName" placeholder="选择工程研究总院院长" @click.native="choiceZRR('presidentUser', '选择工程研究总院院长', roleForm.presidentUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
</el-form>
|
||||
</el-timeline>
|
||||
</div>
|
||||
</div>
|
||||
@@ -166,10 +140,13 @@
|
||||
: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"
|
||||
@@ -178,6 +155,10 @@
|
||||
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>
|
||||
@@ -191,6 +172,9 @@ export default {
|
||||
name: "bzdyStep1",
|
||||
data() {
|
||||
return {
|
||||
roleRow: {},
|
||||
nodeList: [],
|
||||
type: '',
|
||||
defaultProps: {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
@@ -206,20 +190,45 @@ export default {
|
||||
saveLoading: false,
|
||||
form: {
|
||||
title: '', // 调研标题
|
||||
year: '', // 完成时间
|
||||
date: '', // 完成时间
|
||||
model: '', // 上传模板
|
||||
},
|
||||
data: [], // 标准列表数据
|
||||
ListForm: {}, // 新增数据
|
||||
user1: '',
|
||||
user2: '',
|
||||
user3: '',
|
||||
user4: '',
|
||||
user5: '',
|
||||
user6: '',
|
||||
user7: '',
|
||||
user8: '',
|
||||
user9: '',
|
||||
formRules: {
|
||||
title: [
|
||||
{ required: true, message: '请输入调研标题', trigger: 'blur' },
|
||||
],
|
||||
date: [
|
||||
{ type: 'date', required: true, message: '请选择完成时间', trigger: 'change' }
|
||||
]
|
||||
},
|
||||
roleForm: {
|
||||
startUserName: this.$store.getters.userInfo.userName,
|
||||
startUser: this.$store.getters.userInfo.userId,
|
||||
dockUser: '',
|
||||
responUserList: '',
|
||||
ministerUser: '',
|
||||
directorUser: '',
|
||||
presidentUser: '',
|
||||
dockUserName: '',
|
||||
responUserListName: '',
|
||||
ministerUserName: '',
|
||||
directorUserName: '',
|
||||
presidentUserName: ''
|
||||
},
|
||||
roleFormRules: {
|
||||
dockUserName: [
|
||||
{ required: true, message: '请输入调研标题', trigger: 'change' },
|
||||
],
|
||||
ministerUserName: [
|
||||
{ required: true, message: '请输入调研标题', trigger: 'change' },
|
||||
],
|
||||
directorUserName: [
|
||||
{ required: true, message: '请输入调研标题', trigger: 'change' },
|
||||
],
|
||||
presidentUserName: [
|
||||
{ required: true, message: '请输入调研标题', trigger: 'change' },
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
components: {
|
||||
@@ -228,15 +237,39 @@ export default {
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
saveUserInfo () {
|
||||
if (this.type === 'dockUser') {
|
||||
this.roleForm.dockUser = this.roleRow.id
|
||||
this.roleForm.dockUserName = this.roleRow.name
|
||||
} else 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]
|
||||
}
|
||||
},
|
||||
choiceZRR () {
|
||||
this.drawerTitle = '选择责任人'
|
||||
choiceZRR (type, title, id) {
|
||||
this.nodeList = []
|
||||
this.nodeList.push(id)
|
||||
this.type = type
|
||||
this.drawerTitle = title
|
||||
this.modalshowflag = true
|
||||
},
|
||||
getTree () {
|
||||
@@ -244,25 +277,42 @@ export default {
|
||||
this.treeData = res.data
|
||||
})
|
||||
},
|
||||
closeDrawer() {
|
||||
this.ListModel = false
|
||||
},
|
||||
OkDrawer() {
|
||||
this.ListModel = false
|
||||
var item = {
|
||||
remarks: '123'
|
||||
}
|
||||
this.data.push(item)
|
||||
},
|
||||
addList() {
|
||||
this.title = '新增标准'
|
||||
this.ListModel = true
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
handleSave() {},
|
||||
handleSubmit() {
|
||||
this.$refs['qbkwForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
this.$refs['Form'].validate((valid) => {
|
||||
if (valid) {
|
||||
this.$http.get('lawss/activiti/startProcess', {
|
||||
type: '2'
|
||||
}, {}, res => {
|
||||
if (res.ok) {
|
||||
var json = Object.assign(this.form, this.roleForm)
|
||||
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('请完善基础信息')
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
|
||||
@@ -0,0 +1,283 @@
|
||||
<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="qbkwForm"
|
||||
: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="12">
|
||||
<el-form-item label="调研标题" prop="title" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.title"
|
||||
placeholder="请输入调研标题"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="完成时间" prop="date" class="add-form-item form-item-disabled">
|
||||
<el-date-picker
|
||||
disabled
|
||||
v-model="form.date"
|
||||
type="date"
|
||||
placeholder="请选择完成时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="调研模板" prop="model" class="add-form-item form-item-disabled">
|
||||
<div v-if="form.model">
|
||||
{{ form.model }}
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini">
|
||||
点击上传
|
||||
</el-button>
|
||||
</div>
|
||||
</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>
|
||||
</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>
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand} from 'api/process'
|
||||
|
||||
export default {
|
||||
name: "bzdyStep2",
|
||||
data() {
|
||||
return {
|
||||
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: {
|
||||
title: '', // 调研标题
|
||||
date: '', // 完成时间
|
||||
model: '', // 上传模板
|
||||
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['qbkwForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
var json = this.json
|
||||
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.title = data.title
|
||||
this.form.date = data.date
|
||||
this.json = data
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
},
|
||||
mounted () {
|
||||
this.getTree()
|
||||
this.getData()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
.bzdyStep2 {
|
||||
/deep/.el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
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>
|
||||
@@ -0,0 +1,295 @@
|
||||
<template>
|
||||
<div class="bzdyStep3">
|
||||
<!-- 标准调研流程-->
|
||||
<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="qbkwForm"
|
||||
: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="12">
|
||||
<el-form-item label="调研标题" prop="title" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.title"
|
||||
placeholder="请输入调研标题"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="完成时间" prop="date" class="add-form-item form-item-disabled">
|
||||
<el-date-picker
|
||||
disabled
|
||||
v-model="form.date"
|
||||
type="date"
|
||||
placeholder="请选择完成时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="调研模板" prop="model" class="add-form-item form-item-disabled">
|
||||
<div v-if="form.model">
|
||||
{{ form.model }}
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini">
|
||||
点击上传
|
||||
</el-button>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="调研结果" prop="fileName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
style="display: none;"
|
||||
v-model="form.fileName"
|
||||
clearable
|
||||
></el-input>
|
||||
<div v-if="form.fileName" @click="fileUpload" class="fileClass">
|
||||
{{ form.fileName }}
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
@click="fileUpload"
|
||||
size="mini">
|
||||
点击上传
|
||||
</el-button>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-save
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
|
||||
<el-upload
|
||||
multiple
|
||||
drag
|
||||
:action="fileUrl"
|
||||
ref="importfile"
|
||||
name="file"
|
||||
accept=".ZIP, .zip, .docx, .DOCX, .xls, .xlsx"
|
||||
:before-upload="beginImportFile"
|
||||
:on-success="importFileSuccess"
|
||||
:show-file-list="false"
|
||||
>
|
||||
<div style="padding: 20px 0">
|
||||
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||
<p>点击或拖拽上传文件</p>
|
||||
</div>
|
||||
</el-upload>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand} from 'api/process'
|
||||
|
||||
export default {
|
||||
name: "bzdyStep3",
|
||||
data() {
|
||||
return {
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
title: '', // 调研标题
|
||||
date: '', // 完成时间
|
||||
model: '', // 上传模板
|
||||
fileId: '',
|
||||
fileName: '',
|
||||
responUserList: '',
|
||||
responUserListName: '',
|
||||
},
|
||||
formRules: {
|
||||
fileName: [
|
||||
{ required: true, message: '请上传调研结果', trigger: 'change' },
|
||||
]
|
||||
},
|
||||
json: {},
|
||||
fileUrl: 'api/att/attFile/upload',
|
||||
fileMadel: false,
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
// 导入按钮 上传之前的钩子
|
||||
beginImportFile (file) {
|
||||
var filename = file.name
|
||||
var index1 = filename.lastIndexOf('.')
|
||||
var index2 = filename.length
|
||||
var fileSuffix = filename.substring(index1, index2)
|
||||
// const fileSuffix = file.name.split('.')[1] // 后缀名
|
||||
// 判断上传文件格式
|
||||
if (fileSuffix === '.ZIP' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.zip' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||
return true
|
||||
} else {
|
||||
this.spinShow = false
|
||||
this.$message.error('文件' + file.name + '格式不正确,请上传ZIP/DOCX或XLS文件')
|
||||
return false
|
||||
}
|
||||
// 判断文件上传大小
|
||||
// eslint-disable-next-line no-unreachable
|
||||
if (file.size / 1024 / 1024 <= 200) {
|
||||
return true
|
||||
} else {
|
||||
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||
return false
|
||||
}
|
||||
return true
|
||||
},
|
||||
// 导入标准数据成功后执行
|
||||
importFileSuccess (response, file) {
|
||||
if (response.ok) {
|
||||
this.fileMadel = false
|
||||
this.form.fileId = response.data.id
|
||||
this.form.fileName = response.data.name
|
||||
this.$message({
|
||||
showClose: true,
|
||||
message: response.message,
|
||||
type: 'success'
|
||||
})
|
||||
}
|
||||
},
|
||||
fileUpload () {
|
||||
this.fileMadel = true
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
handleSave() {},
|
||||
handleSubmit() {
|
||||
this.$refs['qbkwForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
var json = this.json
|
||||
json.fileId = this.form.fileId
|
||||
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.title = data.title
|
||||
this.form.date = data.date
|
||||
this.json = data
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
},
|
||||
mounted () {
|
||||
this.getData()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
.bzdyStep3 {
|
||||
/deep/.el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
position: relative;
|
||||
height: 100%;
|
||||
.fileClass {
|
||||
cursor: pointer;
|
||||
}
|
||||
.fileClass:hover{
|
||||
color: #0c91e5;
|
||||
}
|
||||
.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>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,13 +1,507 @@
|
||||
<!--标准-->
|
||||
<!--标准清单发布流程step2 -->
|
||||
<template>
|
||||
<div class="bzqdfb-step2">
|
||||
<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 class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-if="active == '1'">
|
||||
<div style="flex: auto; overflow: auto">
|
||||
<process-title>
|
||||
<template slot="title">基础信息</template>
|
||||
</process-title>
|
||||
<el-form
|
||||
:model="listForm"
|
||||
class="label-input-form prc-content-border"
|
||||
label-width="150px"
|
||||
>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<!-- <el-form-item label="选择清单" prop="orgName" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-radio-group v-model="listType" @change="selectionList">-->
|
||||
<!-- <el-radio label="country">国家/地区清单</el-radio>-->
|
||||
<!-- <el-radio label="project">项目清单</el-radio>-->
|
||||
<!-- <el-radio label="other">其他清单</el-radio>-->
|
||||
<!-- </el-radio-group>-->
|
||||
<!-- <el-button size="mini" type="primary" style="margin-left: 40px;" @click="choiceShow">选择清单</el-button>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="清单名称" prop="listName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.listName"
|
||||
placeholder="请输入清单名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="适用区域" prop="applyRegion" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.applyRegion"
|
||||
placeholder="请输入适用区域"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="清单说明" prop="descriptionList" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.descriptionList"
|
||||
placeholder="请输入清单说明"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="附件" prop="enclosure" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.enclosure"
|
||||
placeholder="暂无数据"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<process-title>
|
||||
<template slot="title">填写信息</template>
|
||||
</process-title>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
height="64.6%"
|
||||
style="width: 100%"
|
||||
@selection-change="selectStandChange"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
prop="code"
|
||||
fixed="left"
|
||||
width="180px"
|
||||
label="标准号">
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
|
||||
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
width="260px"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
sortable
|
||||
label="发布日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
sortable
|
||||
label="新车型实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="zccssrq"
|
||||
sortable
|
||||
label="在产车实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="textStatus"
|
||||
width="120px"
|
||||
label="文本状态">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<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>
|
||||
<div class="content" v-if="active == '2'">
|
||||
<div class="block" style="padding-top: 20px;">
|
||||
<el-timeline>
|
||||
<el-timeline-item timestamp="发起流程" placement="top" :color="user1 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>标准/政策法规工程师</h4>
|
||||
<div style="margin-top: 10px;">
|
||||
<el-input v-model="user1" placeholder="请输入"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="选择责任人进行会签" placement="top" :color="user2 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>责任人</h4>
|
||||
<div style="margin-top: 10px;">
|
||||
<el-input v-model="user2" placeholder="请输入">
|
||||
|
||||
</el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="根据会签内容进行修订" placement="top" :color="user3 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>标准/政策法规工程师</h4>
|
||||
<div style="margin-top: 10px;">
|
||||
<el-input v-model="user3" placeholder="请输入"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="审核" placement="top" :color="user5 ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<h4>业务经理</h4>
|
||||
<div style="margin-top: 10px;">
|
||||
<el-input v-model="user5" placeholder="请输入"></el-input>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
</el-timeline>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content" v-if="active === '3'">
|
||||
<div class="flow-list">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="detailData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:no-data-text="listNoDataText"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
sortable="custom"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="审批意见"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{scope.row.commentText}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? '已完成' : '未完成'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<loading :loading="loading">流程列表加载中</loading>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { inboundLiaisonDetail, queryDetail } from "api/process";
|
||||
|
||||
export default {
|
||||
name: "bzqdfbStep2"
|
||||
name: "bzqdfbStep2",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
detailData: [],
|
||||
// 当前流程类型(1待办/2已办)
|
||||
processType: 1,
|
||||
loading: false,
|
||||
dataList: [],//清单里的标准数据
|
||||
active: "1",
|
||||
userId:this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
listType: "country", //选择的清单类型
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
tabValue: "listOfCountries",
|
||||
selectedList: [], //选择清单的选择框
|
||||
selectList: [], //选择标准的选择框
|
||||
bringData: [],
|
||||
commentText: "", //填写会签意见
|
||||
page: 1,
|
||||
total: 0,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
listForm: {
|
||||
listType: "", //区分是哪个清单
|
||||
listName: "", //清单名称
|
||||
applyRegion: "", //适用区域
|
||||
descriptionList: "", //清单说明
|
||||
enclosure: "", //附件
|
||||
inforlist: "",//用来存放标准的id
|
||||
dataList: [{
|
||||
standNumber: "", //标准号
|
||||
cnName: "", //中文名称
|
||||
enName: "", //英文名称
|
||||
isSubTime: "", //发布日期
|
||||
newCarTime: "", //新车型实施日期
|
||||
oldCarTime: "", //在产车实施日期
|
||||
applyCar: "", //适用车型
|
||||
textState: "", //文本状态
|
||||
id: ""
|
||||
}]
|
||||
},
|
||||
choiceForm: {}, //选择标准清单列表
|
||||
countryOptions: [], //适用区域下拉框数据
|
||||
user1: "",
|
||||
user2: "",
|
||||
user3: "",
|
||||
user4: "",
|
||||
user5: "",
|
||||
standMap: new Map()
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
processTable () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : '',
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: 'loading',
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res
|
||||
}, e => {})
|
||||
},
|
||||
//tab发生变化
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
choiceShow() {
|
||||
this.ListModel = true;
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg)
|
||||
this.getFormFieldList(processForm)
|
||||
}
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList (item) {
|
||||
this.$nextTick(() => {
|
||||
console.log(item);
|
||||
this.listForm = JSON.parse(JSON.stringify(item))
|
||||
this.listForm.prcNum = this.prcNum
|
||||
this.listForm.prcName = this.prcName
|
||||
this.listForm['id'] = item.id
|
||||
this.listForm.dataList = item.dataList
|
||||
this.dataList = item.dataList
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
//保存事件
|
||||
handleSave() {
|
||||
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.listForm.prcCreateUser = this.$store.getters.userInfo.userId;
|
||||
this.listForm.applyUpdUserId = this.$store.getters.userInfo.userId;
|
||||
this.listForm.prcCreateUserName = this.$store.getters.userInfo.account;
|
||||
this.listForm.zrUserId = this.$store.getters.userInfo.userId ;
|
||||
this.listForm.commentText = this.commentText;
|
||||
this.listForm.approvalOpinion = "";
|
||||
this.listForm.standId = this.listForm.standId;
|
||||
this.listForm.signFlag = "";
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json,
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
}, e => {
|
||||
|
||||
});
|
||||
},
|
||||
//选择标准取消事件
|
||||
closeDrawer() {
|
||||
this.ListModel = false;
|
||||
},
|
||||
//标准表格选择框改变
|
||||
selectStandChange(data) {
|
||||
this.selectList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectList.push(data[i].id);
|
||||
}
|
||||
},
|
||||
selectThree() {
|
||||
|
||||
},
|
||||
pageChange(page) {
|
||||
this.page = page;
|
||||
this.searchData();
|
||||
},
|
||||
pageSizeChange(pageSize) {
|
||||
this.pageSize = this.$store.getters.userInfo.configContent;
|
||||
this.searchData();
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
listNoDataText () {
|
||||
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.processTable()
|
||||
this.getData()
|
||||
// console.log(this.$store.getters.getHandleInfo);
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.bzqdfb-step2 {
|
||||
/deep/ .el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
|
||||
.choiceBtn {
|
||||
.el-button--primary {
|
||||
width: 150px;
|
||||
}
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
.accessStandardsAndRegulations {
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.demo-drawer-content {
|
||||
margin-top: 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,595 @@
|
||||
<!--标准清单发布/更新流程step3 - 根据会签意见修订-->
|
||||
<template>
|
||||
<div class="bzqdfb-step3">
|
||||
<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 class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-if="active == '1'">
|
||||
<div style="flex: auto; overflow: auto">
|
||||
<process-title>
|
||||
<template slot="title">基础信息</template>
|
||||
</process-title>
|
||||
<el-form
|
||||
:model="listForm"
|
||||
class="label-input-form prc-content-border"
|
||||
label-width="150px"
|
||||
>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<!-- <el-form-item label="选择清单" prop="orgName" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-radio-group v-model="listType" @change="selectionList">-->
|
||||
<!-- <el-radio label="country">国家/地区清单</el-radio>-->
|
||||
<!-- <el-radio label="project">项目清单</el-radio>-->
|
||||
<!-- <el-radio label="other">其他清单</el-radio>-->
|
||||
<!-- </el-radio-group>-->
|
||||
<!-- <el-button size="mini" type="primary" style="margin-left: 40px;" @click="choiceShow">选择清单</el-button>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="清单名称" prop="listName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.listName"
|
||||
placeholder="请输入清单名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="适用区域" prop="applyRegion" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.applyRegion"
|
||||
placeholder="请输入适用区域"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="清单说明" prop="descriptionList" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.descriptionList"
|
||||
placeholder="请输入清单说明"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="附件" prop="enclosure" class="add-form-item form-item-disabled">
|
||||
<el-upload
|
||||
v-if="listForm.enclosure == 'null' || this.listForm.enclosure== 'undefined' || this.listForm.enclosure == '' "
|
||||
:action="uploadFileListPath"
|
||||
show-file-list
|
||||
:file-list="fileInfoList"
|
||||
name="file"
|
||||
accept=".PDF, .pdf, .doc, .DOC, .docx, .DOCX, .xls, .xlsx, .ppt, .pptx, .PPT, .PPTX, .JPG, .JPEG, .PNG, .jpg, .jpeg, .png"
|
||||
:on-remove="delFileInfo"
|
||||
:on-success="uploadBackSuccess"
|
||||
:before-upload="beforeUpload"
|
||||
>
|
||||
<el-button class="common-button-default" size="mini">
|
||||
点击上传
|
||||
</el-button>
|
||||
</el-upload>
|
||||
<el-input
|
||||
v-else
|
||||
v-model="listForm.enclosure"
|
||||
placeholder=""
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<process-title>
|
||||
<template slot="title">填写信息</template>
|
||||
</process-title>
|
||||
<div class="tableTitle">
|
||||
<div class="tableButton">
|
||||
<el-button plain class="common-button-primary" size="mini" @click="addList">添加</el-button>
|
||||
<el-button plain class="common-button-primary" size="mini" @click="deleteList">批量删除</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
height="61.6%"
|
||||
style="width: 100%"
|
||||
@selection-change="selectStandChange"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="code"
|
||||
fixed="left"
|
||||
width="180px"
|
||||
label="标准号">
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
|
||||
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
width="260px"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
sortable
|
||||
label="发布日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
sortable
|
||||
label="新车型实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="zccssrq"
|
||||
sortable
|
||||
label="在产车实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="textStatus"
|
||||
width="120px"
|
||||
label="文本状态">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content" v-if="active === '3'">
|
||||
<div class="flow-list">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="detailData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:no-data-text="listNoDataText"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
sortable="custom"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="审批意见"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{scope.row.commentText}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? '已完成' : '未完成'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<loading :loading="loading">流程列表加载中</loading>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 添加标准抽屉-->
|
||||
<el-drawer
|
||||
title="添加标准"
|
||||
:visible.sync="standModel"
|
||||
size="900px"
|
||||
custom-class="demo-drawer"
|
||||
>
|
||||
<el-table
|
||||
:data="standardData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
height="100%"
|
||||
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
@selection-change="selectThree"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="content"
|
||||
label="标准号"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="deptName"
|
||||
label="中文名称"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="deptName"
|
||||
label="英文名称"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="deptName"
|
||||
label="发布日期"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="deptName"
|
||||
label="新车型实施日期"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="deptName"
|
||||
label="在产车实施日期"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="deptName"
|
||||
label="适用车型"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="deptName"
|
||||
label="文本状态"
|
||||
>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-drawer>
|
||||
|
||||
<ProcessFooter
|
||||
show-save
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { inboundLiaisonDetail, saveTaskFirst } from "api/process";
|
||||
|
||||
export default {
|
||||
name: "bzqdfbStep3",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
detailData: [],
|
||||
// 当前流程类型(1待办/2已办)
|
||||
processType: 1,
|
||||
loading: false,
|
||||
userId:this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
uploadFileListPath: 'api/att/attFile/upload', // 上传的地址
|
||||
fileInfoList: [], // 上传的附件
|
||||
dataList: [],//清单里的标准数据
|
||||
standardData: [], //添加标准数据
|
||||
standModel: false, // 选择标准抽屉状态
|
||||
active: "1",
|
||||
signFlag: "1", //是否会签 1为会签 2为不会签
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
tabValue: "listOfCountries",
|
||||
selectedList: [], //选择清单的选择框
|
||||
selectList: [], //选择标准的选择框
|
||||
bringData: [],
|
||||
page: 1,
|
||||
total: 0,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
listForm: {
|
||||
listName: "", //清单名称
|
||||
applyRegion: "", //适用区域
|
||||
descriptionList: "", //清单说明
|
||||
enclosure: "", //附件
|
||||
signFlag: "1", //是否会签 1为会签 2为不会签
|
||||
dataList: [{
|
||||
standNumber: "", //标准号
|
||||
cnName: "", //中文名称
|
||||
enName: "", //英文名称
|
||||
isSubTime: "", //发布日期
|
||||
newCarTime: "", //新车型实施日期
|
||||
oldCarTime: "", //在产车实施日期
|
||||
applyCar: "", //适用车型
|
||||
textState: "", //文本状态
|
||||
id: ""
|
||||
}]
|
||||
},
|
||||
choiceForm: {}, //选择标准清单列表
|
||||
countryOptions: [], //适用区域下拉框数据
|
||||
user1: "",
|
||||
user2: "",
|
||||
user3: "",
|
||||
user4: "",
|
||||
user5: "",
|
||||
standMap: new Map()
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
processTable () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : '',
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: 'loading',
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res
|
||||
}, e => {})
|
||||
},
|
||||
//tab发生变化
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
//点击新增事件
|
||||
addList() {
|
||||
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", "", {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.standardData = res.data.list;
|
||||
}, e => {
|
||||
});
|
||||
this.standModel = true;
|
||||
},
|
||||
// 点击批量删除事件
|
||||
deleteList() {
|
||||
if (this.selectList.length < 1) {
|
||||
this.$message.warning("请选择一条数据进行删除");
|
||||
} else {
|
||||
this.$confirm("您确认删除这些数据?", "提示", {
|
||||
confirmButtonText: "确认",
|
||||
confirmButtonClass: "common-button-primary",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(() => {
|
||||
let exits = [];
|
||||
this.selectList.map(item => {
|
||||
let index;
|
||||
index = this.dataList.findIndex(items => {
|
||||
return items.id = item;
|
||||
});
|
||||
if (index > -1) {
|
||||
this.dataList.splice(index, 1);
|
||||
}
|
||||
exits.push(item);
|
||||
});
|
||||
this.selectList = [];
|
||||
}).catch(() => {
|
||||
});
|
||||
}
|
||||
},
|
||||
// 删除上传的文件
|
||||
delFileInfo (file, fileList) {
|
||||
// this.fileInfoList = fileList
|
||||
},
|
||||
// 上传文件成功回调
|
||||
uploadBackSuccess (res, file, fileList) {
|
||||
// if (res.ok) {
|
||||
// this.fileInfoList = fileList
|
||||
// this.fileInfoList[this.fileInfoList.length - 1].id = res.data.id
|
||||
// this.$message.success('上传成功')
|
||||
// } else {
|
||||
// this.$message.error(res.message)
|
||||
// fileList.pop()
|
||||
// }
|
||||
},
|
||||
//上传之前的钩子
|
||||
beforeUpload () {
|
||||
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg)
|
||||
this.getFormFieldList(processForm)
|
||||
}
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList (item) {
|
||||
this.$nextTick(() => {
|
||||
this.listForm = JSON.parse(JSON.stringify(item))
|
||||
this.listForm.prcNum = this.prcNum
|
||||
this.listForm.prcName = this.prcName
|
||||
this.listForm['id'] = item.id
|
||||
this.listForm.dataList = item.dataList
|
||||
this.dataList = item.dataList
|
||||
})
|
||||
},
|
||||
//保存事件
|
||||
handleSave() {
|
||||
let _formData = new FormData()
|
||||
_formData.append('createUser', this.$store.getters.userInfo.userId)
|
||||
_formData.append('createUserName', this.$store.getters.userInfo.uName)
|
||||
_formData.append('prcType', this.$route.query.type)
|
||||
saveTaskFirst(_formData).then(res => {
|
||||
this.$message.success('保存成功')
|
||||
}).catch(e => {
|
||||
})
|
||||
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.listForm.jlUserId = this.$store.getters.userInfo.userId ;
|
||||
this.listForm.prcCreateUser = this.$store.getters.userInfo.userId;
|
||||
this.listForm.prcCreateUserName = this.$store.getters.userInfo.account;
|
||||
this.listForm.commentText = this.commentText;
|
||||
this.listForm.zrUserId = this.$store.getters.userInfo.userId ;
|
||||
this.listForm.approvalOpinion = "";
|
||||
this.listForm.standId = this.listForm.standId;
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json,
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
});
|
||||
},
|
||||
//标准表格选择框改变
|
||||
selectStandChange(data) {
|
||||
this.selectList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectList.push(data[i].id);
|
||||
}
|
||||
},
|
||||
selectThree() {
|
||||
|
||||
},
|
||||
pageChange(page) {
|
||||
this.page = page;
|
||||
this.searchData();
|
||||
},
|
||||
pageSizeChange(pageSize) {
|
||||
this.pageSize = this.$store.getters.userInfo.configContent;
|
||||
this.searchData();
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
listNoDataText () {
|
||||
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getData()
|
||||
this.processTable()
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.bzqdfb-step3 {
|
||||
/deep/ .el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
|
||||
.choiceBtn {
|
||||
.el-button--primary {
|
||||
width: 150px;
|
||||
}
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
.accessStandardsAndRegulations {
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.demo-drawer-content {
|
||||
margin-top: 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -0,0 +1,473 @@
|
||||
<!--标准法规清单发布 - 业务经理审批-->
|
||||
<template>
|
||||
<div class="bzqdfb-step4">
|
||||
<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 class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-if="active == '1'">
|
||||
<div style="flex: auto; overflow: auto">
|
||||
<process-title>
|
||||
<template slot="title">基础信息</template>
|
||||
</process-title>
|
||||
<el-form
|
||||
:model="listForm"
|
||||
class="label-input-form prc-content-border"
|
||||
label-width="150px"
|
||||
>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<!-- <el-form-item label="选择清单" prop="orgName" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-radio-group v-model="listType" @change="selectionList">-->
|
||||
<!-- <el-radio label="country">国家/地区清单</el-radio>-->
|
||||
<!-- <el-radio label="project">项目清单</el-radio>-->
|
||||
<!-- <el-radio label="other">其他清单</el-radio>-->
|
||||
<!-- </el-radio-group>-->
|
||||
<!-- <el-button size="mini" type="primary" style="margin-left: 40px;" @click="choiceShow">选择清单</el-button>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="清单名称" prop="listName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.listName"
|
||||
placeholder="请输入清单名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="适用区域" prop="applyRegion" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.applyRegion"
|
||||
placeholder="请输入适用区域"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="清单说明" prop="descriptionList" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.descriptionList"
|
||||
placeholder="请输入清单说明"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="附件" prop="enclosure" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.enclosure"
|
||||
placeholder="暂无数据"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<process-title>
|
||||
<template slot="title">填写信息</template>
|
||||
</process-title>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
height="64.6%"
|
||||
style="width: 100%"
|
||||
@selection-change="selectStandChange"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
prop="code"
|
||||
fixed="left"
|
||||
width="180px"
|
||||
label="标准号">
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
|
||||
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
width="260px"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
sortable
|
||||
label="发布日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
sortable
|
||||
label="新车型实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="zccssrq"
|
||||
sortable
|
||||
label="在产车实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="textStatus"
|
||||
width="120px"
|
||||
label="文本状态">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<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>
|
||||
<div class="content" v-if="active === '3'">
|
||||
<div class="flow-list">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="detailData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:no-data-text="listNoDataText"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
sortable="custom"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="审批意见"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{scope.row.commentText}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? '已完成' : '未完成'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<loading :loading="loading">流程列表加载中</loading>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
:approval="true"
|
||||
@back="beforeBack"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { inboundLiaisonDetail } from "api/process";
|
||||
|
||||
export default {
|
||||
name: "bzqdfbStep4",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
detailData: [],
|
||||
// 当前流程类型(1待办/2已办)
|
||||
processType: 1,
|
||||
loading: false,
|
||||
dataList: [],//清单里的标准数据
|
||||
approvalOpinion: '', // 通过0/驳回1
|
||||
active: "1",
|
||||
listType: "country", //选择的清单类型
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
tabValue: "listOfCountries",
|
||||
selectedList: [], //选择清单的选择框
|
||||
selectList: [], //选择标准的选择框
|
||||
bringData: [],
|
||||
commentText: '', //填写会签意见
|
||||
page: 1,
|
||||
total: 0,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
listForm: {
|
||||
listType: "", //区分是哪个清单
|
||||
listName: "", //清单名称
|
||||
applyRegion: "", //适用区域
|
||||
descriptionList: "", //清单说明
|
||||
enclosure: "", //附件
|
||||
signFlag: "1", //是否会签 1为会签 2为不会签
|
||||
approvalOpinion: '', // 通过/驳回
|
||||
dataList: [{
|
||||
standNumber: "", //标准号
|
||||
cnName: "", //中文名称
|
||||
enName: "", //英文名称
|
||||
isSubTime: "", //发布日期
|
||||
newCarTime: "", //新车型实施日期
|
||||
oldCarTime: "", //在产车实施日期
|
||||
applyCar: "", //适用车型
|
||||
textState: "", //文本状态
|
||||
id: ""
|
||||
}]
|
||||
},
|
||||
choiceForm: {}, //选择标准清单列表
|
||||
countryOptions: [], //适用区域下拉框数据
|
||||
userId:this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
signFlag: "1", //是否会签 1为会签 2为不会签
|
||||
user1: "",
|
||||
user2: "",
|
||||
user3: "",
|
||||
user4: "",
|
||||
user5: "",
|
||||
standMap: new Map()
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
processTable () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : '',
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: 'loading',
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res
|
||||
}, e => {})
|
||||
},
|
||||
//tab发生变化
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
choiceShow() {
|
||||
this.ListModel = true;
|
||||
},
|
||||
//保存事件
|
||||
handleSave() {
|
||||
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg)
|
||||
this.getFormFieldList(processForm)
|
||||
}
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList (item) {
|
||||
this.$nextTick(() => {
|
||||
this.listForm = JSON.parse(JSON.stringify(item))
|
||||
this.listForm.prcNum = this.prcNum
|
||||
this.listForm.prcName = this.prcName
|
||||
this.listForm['id'] = item.id
|
||||
this.listForm.dataList = item.dataList
|
||||
this.dataList = item.dataList
|
||||
})
|
||||
},
|
||||
//驳回事件
|
||||
beforeBack () {
|
||||
this.listForm.approvalOpinion = '1'
|
||||
this.handleSubmit()
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.listForm.jlUserId = this.$store.getters.userInfo.userId ;
|
||||
this.listForm.prcCreateUser = this.$store.getters.userInfo.userId;
|
||||
this.listForm.applyUpdUserId = this.$store.getters.userInfo.userId;
|
||||
this.listForm.prcCreateUserName = this.$store.getters.userInfo.account;
|
||||
this.listForm.commentText = this.commentText;
|
||||
this.listForm.zrUserId = this.$store.getters.userInfo.userId ;
|
||||
this.listForm.signflag = "";
|
||||
this.listForm.standId = this.listForm.standId;
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json,
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
});
|
||||
},
|
||||
//选择标准取消事件
|
||||
closeDrawer() {
|
||||
this.ListModel = false;
|
||||
},
|
||||
//标准表格选择框改变
|
||||
selectStandChange(data) {
|
||||
this.selectList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectList.push(data[i].id);
|
||||
}
|
||||
},
|
||||
selectThree() {
|
||||
|
||||
},
|
||||
pageChange(page) {
|
||||
this.page = page;
|
||||
this.searchData();
|
||||
},
|
||||
pageSizeChange(pageSize) {
|
||||
this.pageSize = this.$store.getters.userInfo.configContent;
|
||||
this.searchData();
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
listNoDataText () {
|
||||
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getData()
|
||||
this.processTable()
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.bzqdfb-step4 {
|
||||
/deep/ .el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
|
||||
.choiceBtn {
|
||||
.el-button--primary {
|
||||
width: 150px;
|
||||
}
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
.accessStandardsAndRegulations {
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.demo-drawer-content {
|
||||
margin-top: 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -0,0 +1,525 @@
|
||||
<template>
|
||||
<div class="wfhxzgStep1">
|
||||
<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 class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||
</div>
|
||||
<div class="content" v-if="active === '1'">
|
||||
<div style="flex: auto; overflow: auto;">
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="tableTitle">
|
||||
<div class="tableButton">
|
||||
<el-button plain class="common-button-primary" size="mini" @click="addList">添加</el-button>
|
||||
<el-button plain class="common-button-primary" size="mini" @click="deleteList">批量删除</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
height="49%"
|
||||
style="width: 100%"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column prop="standId" label="标准号/标准名称"/>
|
||||
<el-table-column prop="productName" label="项目名称"/>
|
||||
<el-table-column prop="itemsNum" label="条款号"/>
|
||||
<el-table-column prop="itemsName" label="条款名称"/>
|
||||
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
||||
</el-table>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="意见填写">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="textarea">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-if="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>
|
||||
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||
<h4>流程发起人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||
<h4>标准法规工程师</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||
<h4>负责人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.presidentUserName" placeholder="选择分发负责人" @click.native="choiceZRR('presidentUser', '选择分发负责人', roleForm.presidentUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
</el-form>
|
||||
</el-timeline>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 添加标准抽屉-->
|
||||
<el-drawer
|
||||
title="未符合项整改数据库"
|
||||
:visible.sync="standModel"
|
||||
size="900px"
|
||||
custom-class="demo-drawer"
|
||||
>
|
||||
<div class="search-area">
|
||||
<div class="content-top">
|
||||
<el-form :modal="nonConformitySearch" inline class="label-input-form">
|
||||
<el-form-item label="标准号/标准名称" class="search-item">
|
||||
<el-input v-model="nonConformitySearch.standId"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="项目名称" class="search-item">
|
||||
<el-input v-model="nonConformitySearch.productName"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="责任部门" class="search-item">
|
||||
<el-input v-model="nonConformitySearch.responsibleUnit" v-show="false" />
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
popper-class="user-dept-popper"
|
||||
trigger="click"
|
||||
:value="false"
|
||||
>
|
||||
<el-input
|
||||
slot="reference"
|
||||
v-model="nonConformitySearch.responseUnitShow"
|
||||
placeholder="根据责任部门查找"
|
||||
readonly
|
||||
clearable
|
||||
id="searchResp"
|
||||
/>
|
||||
<div class="api">
|
||||
<laws-tree
|
||||
:zNodes="zNodesSItem"
|
||||
treeDivId="zNodesSItemSearch"
|
||||
deptSelect
|
||||
showRMenu
|
||||
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||
</laws-tree>
|
||||
</div>
|
||||
</el-popover>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini"
|
||||
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||
@click="getTableByPage('')">
|
||||
查询
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="mini"
|
||||
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||
@click="clearAllSearch">
|
||||
清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</div>
|
||||
<el-table
|
||||
:data="unqualidiedData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
height="100%"
|
||||
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
@selection-change="selectThree"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column prop="standId" label="标准号/标准名称"/>
|
||||
<el-table-column prop="productName" label="项目名称"/>
|
||||
<el-table-column prop="itemsNum" label="条款号"/>
|
||||
<el-table-column prop="itemsName" label="条款名称"/>
|
||||
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
||||
</el-table>
|
||||
<div class="demo-drawer-footer">
|
||||
<el-button size="mini" @click="closeDrawer">取消</el-button>
|
||||
<el-button type="primary" size="mini" @click="OkDrawer">带入</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
<ProcessFooter
|
||||
show-save
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<el-drawer
|
||||
:title="drawerTitle"
|
||||
:visible.sync="modalshowflag"
|
||||
:wrapperClosable="false"
|
||||
size="800px">
|
||||
<el-tree
|
||||
v-if="modalshowflag"
|
||||
style="height: 100%;"
|
||||
node-key="id"
|
||||
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>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {interfaceUrl} from "@/sysConfig";
|
||||
|
||||
export default {
|
||||
name: "step1",
|
||||
data() {
|
||||
return {
|
||||
textarea: '', // 意见
|
||||
title: '', // 新增编辑抽屉标题
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
nonConformitySearch: {
|
||||
standId: '', // 标准号/名称
|
||||
productName: '', // 项目名称
|
||||
responsibleUnit: '' // 责任部门
|
||||
},
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
dataList: [{
|
||||
standId: '',
|
||||
productName: '',
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
planCloseTime: '',
|
||||
responsibleUnit: '',
|
||||
dutyEngineer: ''
|
||||
}],
|
||||
// 责任部门
|
||||
zNodesSItem: [],
|
||||
standModel: false,
|
||||
unqualidiedData: [{
|
||||
standId: '',
|
||||
productName: '',
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
planCloseTime: '',
|
||||
responsibleUnit: '',
|
||||
dutyEngineer: ''
|
||||
}],
|
||||
selectedList: [], //未整改项的选择框
|
||||
roleForm: {
|
||||
startUserName: this.$store.getters.userInfo.userName,
|
||||
startUser: this.$store.getters.userInfo.userId,
|
||||
},
|
||||
roleFormRules: {
|
||||
},
|
||||
nodeList: [],
|
||||
drawerTitle: '', //drawer标题
|
||||
modalshowflag: false, // drawer开关
|
||||
treeData: [], // 人员数据
|
||||
defaultProps: {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
},
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
//点击新增事件
|
||||
addList() {
|
||||
this.$http.get("sarStandUnqualified/sar-stand-unqualified", "", {
|
||||
...this.nonConformitySearch,
|
||||
current: this.pageNo,
|
||||
size: this.$store.getters.userInfo.configContent
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.unqualidiedData = res.data.records
|
||||
this.total = res.data.total
|
||||
}, e => {
|
||||
});
|
||||
this.standModel = true;
|
||||
},
|
||||
|
||||
// 点击批量删除事件
|
||||
deleteList() {
|
||||
if (this.selectList.length < 1) {
|
||||
this.$message.warning("请选择一条数据进行删除");
|
||||
} else {
|
||||
this.$confirm("您确认删除这些数据?", "提示", {
|
||||
confirmButtonText: "确认",
|
||||
confirmButtonClass: "common-button-primary",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(() => {
|
||||
let exits = [];
|
||||
this.selectList.map(item => {
|
||||
let index;
|
||||
index = this.dataList.findIndex(items => {
|
||||
return items.id = item;
|
||||
});
|
||||
if (index > -1) {
|
||||
this.dataList.splice(index, 1);
|
||||
}
|
||||
exits.push(item);
|
||||
});
|
||||
this.selectList = [];
|
||||
}).catch(() => {
|
||||
});
|
||||
}
|
||||
},
|
||||
//选择标准取消事件
|
||||
closeDrawer() {
|
||||
this.ListModel = false;
|
||||
},
|
||||
//未符合项整合确定事件
|
||||
OkDrawer() {
|
||||
if (this.selectedList.length !== 0) {
|
||||
let deposit = new Map();
|
||||
this.unqualidiedData.forEach(item => {
|
||||
deposit.set(item.id, item);
|
||||
});
|
||||
let bringData = [];
|
||||
for (let i = 0; i < this.selectedList.length; i++) {
|
||||
bringData.push(deposit.get(this.selectedList[i]));
|
||||
}
|
||||
this.dataList.standId = bringData[0].standId
|
||||
this.dataList.productName = bringData[0].productName;
|
||||
this.dataList.itemsNum = bringData[0].itemsNum;
|
||||
this.dataList.itemsName = bringData[0].itemsName;
|
||||
this.dataList.planCloseTime = bringData[0].planCloseTime;
|
||||
this.dataList.responsibleUnit = bringData[0].responsibleUnit;
|
||||
this.dataList.dutyEngineer = bringData[0].dutyEngineer;
|
||||
this.ListModel = false;
|
||||
} else {
|
||||
this.$message.warning("请选择至少一条数据进行带入");
|
||||
}
|
||||
},
|
||||
selectThree() {},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
|
||||
// 保存按钮
|
||||
handleSave() {},
|
||||
// 提交按钮
|
||||
handleSubmit() {},
|
||||
|
||||
// 获取流程节点数据
|
||||
getTree () {
|
||||
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||
this.treeData = res.data
|
||||
})
|
||||
},
|
||||
// 流程阶段负责人选择
|
||||
choiceZRR (type, title, id) {
|
||||
this.nodeList = []
|
||||
this.nodeList.push(id)
|
||||
this.type = type
|
||||
this.drawerTitle = title
|
||||
this.modalshowflag = true
|
||||
},
|
||||
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]
|
||||
}
|
||||
},
|
||||
// 流程节点负责人抽屉保存按钮
|
||||
saveUserInfo () {
|
||||
if (this.type === 'dockUser') {
|
||||
this.roleForm.dockUser = this.roleRow.id
|
||||
this.roleForm.dockUserName = this.roleRow.name
|
||||
} else 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
|
||||
},
|
||||
//未整改项抽屉中的查询按钮
|
||||
getTableByPage() {
|
||||
this.addList()
|
||||
},
|
||||
// 清空 查询条件
|
||||
clearAllSearch (search = true) {
|
||||
this.nonConformitySearch = {
|
||||
standId: '',
|
||||
productName: '',
|
||||
responsibleUnit: ''
|
||||
}
|
||||
this.getTableByPage()
|
||||
},
|
||||
// 分页事件
|
||||
pageChange (page) {
|
||||
this.pageNo = page
|
||||
this.getTableByPage()
|
||||
},
|
||||
pageSizeChange () {
|
||||
this.getTableByPage()
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
.wfhxzgStep1 {
|
||||
/deep/.el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
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-center {
|
||||
padding: 10px 0px 10px 10px;
|
||||
}
|
||||
.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>
|
||||
@@ -0,0 +1,523 @@
|
||||
<template>
|
||||
<div class="wfhxzgStep2">
|
||||
<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 class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||
</div>
|
||||
<div class="content" v-if="active === '1'">
|
||||
<div style="flex: auto;">
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-form :modal="dataList" inline class="label-input-form">
|
||||
<el-form-item label="标准号/标准名称" class="search-item">
|
||||
<el-input v-model="dataList.standId"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="项目名称" class="search-item">
|
||||
<el-input v-model="dataList.productName"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="责任部门" class="search-item">
|
||||
<el-input v-model="dataList.responsibleUnit" v-show="false" />
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
popper-class="user-dept-popper"
|
||||
trigger="click"
|
||||
:value="false"
|
||||
>
|
||||
<el-input
|
||||
slot="reference"
|
||||
v-model="dataList.responseUnitShow"
|
||||
placeholder="根据责任部门查找"
|
||||
readonly
|
||||
clearable
|
||||
id="searchResp"
|
||||
/>
|
||||
<div class="api">
|
||||
<laws-tree
|
||||
:zNodes="zNodesSItem"
|
||||
treeDivId="zNodesSItemSearch"
|
||||
deptSelect
|
||||
showRMenu
|
||||
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||
</laws-tree>
|
||||
</div>
|
||||
</el-popover>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini"
|
||||
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||
@click="getTableByPage('dataList')">
|
||||
查询
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="mini"
|
||||
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||
@click="clearAllSearch">
|
||||
清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div class="content-center">
|
||||
<el-button
|
||||
style="text-align: end"
|
||||
class="common-button-default"
|
||||
size="small"
|
||||
type="primary"
|
||||
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||
@click="dutyEngineerList">
|
||||
批量分发负责人
|
||||
</el-button>
|
||||
</div>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
@selection-change="handleSelectionChange"
|
||||
height="49%"
|
||||
style="width: 100%"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column prop="standId" label="标准号/标准名称"/>
|
||||
<el-table-column prop="productName" label="项目名称"/>
|
||||
<el-table-column prop="itemsNum" label="条款号"/>
|
||||
<el-table-column prop="itemsName" label="条款名称"/>
|
||||
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
||||
<el-table-column label="选择分发责任人" prop="duty">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.show">
|
||||
<el-input size="mini" placeholder="请输入内容" @blur="choiceDuty" v-model="scope.row.duty"></el-input>
|
||||
</span>
|
||||
<span v-else :disabled="true">{{scope.row.duty}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- <pagination :page="pageNo" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"/>-->
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="意见填写">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="textarea">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-if="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>
|
||||
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||
<h4>流程发起人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||
<h4>标准法规工程师</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||
<h4>负责人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.presidentUserName" placeholder="选择分发负责人" @click.native="choiceZRR('presidentUser', '选择分发负责人', roleForm.presidentUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
</el-form>
|
||||
</el-timeline>
|
||||
</div>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-save
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<el-drawer
|
||||
:title="drawerTitle"
|
||||
:visible.sync="modalshowflag"
|
||||
:wrapperClosable="false"
|
||||
size="800px">
|
||||
<el-tree
|
||||
v-if="modalshowflag"
|
||||
style="height: 100%;"
|
||||
node-key="id"
|
||||
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>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {interfaceUrl} from "@/sysConfig";
|
||||
|
||||
export default {
|
||||
name: "step2",
|
||||
data() {
|
||||
return {
|
||||
textarea: '', // 意见
|
||||
title: '', // 新增编辑抽屉标题
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
nonConformitySearch: {
|
||||
standId: '', // 标准号/名称
|
||||
productName: '', // 项目名称
|
||||
responsibleUnit: '' // 责任部门
|
||||
},
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
dataList: [
|
||||
{
|
||||
standId: '1',
|
||||
productName: '1',
|
||||
itemsNum: '1',
|
||||
itemsName: '1',
|
||||
planCloseTime: '1',
|
||||
responsibleUnit: '1',
|
||||
dutyEngineer: '1',
|
||||
duty: '',
|
||||
},{
|
||||
standId: '332',
|
||||
productName: '333',
|
||||
itemsNum: '33',
|
||||
itemsName: '33',
|
||||
planCloseTime: '33',
|
||||
responsibleUnit: '33',
|
||||
dutyEngineer: '33',
|
||||
duty: ''
|
||||
},{
|
||||
standId: '312`',
|
||||
productName: '31312',
|
||||
itemsNum: '31`2',
|
||||
itemsName: '312`1`',
|
||||
planCloseTime: '321`3`2',
|
||||
responsibleUnit: '312`123`',
|
||||
dutyEngineer: '312123',
|
||||
duty: '121'
|
||||
},{
|
||||
standId: '32123',
|
||||
productName: '32132',
|
||||
itemsNum: '312321',
|
||||
itemsName: '3123',
|
||||
planCloseTime: '3123',
|
||||
responsibleUnit: '3123',
|
||||
dutyEngineer: '3123',
|
||||
duty: ''
|
||||
},
|
||||
],
|
||||
// 新增选择分发责任人数组
|
||||
multipleSelection: [],
|
||||
// 当前页数
|
||||
pageNo: 1,
|
||||
total: 0,
|
||||
myLoading: false,
|
||||
// 责任部门
|
||||
zNodesSItem: [],
|
||||
unqualidiedData: [{
|
||||
standId: '',
|
||||
productName: '',
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
planCloseTime: '',
|
||||
responsibleUnit: '',
|
||||
dutyEngineer: ''
|
||||
}],
|
||||
clearSelection: false,
|
||||
selectedList: [], //未整改项的选择框
|
||||
roleForm: {
|
||||
startUserName: this.$store.getters.userInfo.userName,
|
||||
startUser: this.$store.getters.userInfo.userId,
|
||||
},
|
||||
roleFormRules: {
|
||||
},
|
||||
nodeList: [],
|
||||
drawerTitle: '', //drawer标题
|
||||
modalshowflag: false, // drawer开关
|
||||
treeData: [], // 人员数据
|
||||
defaultProps: {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
},
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
this.myLoading.loadData = true
|
||||
this.$http.get('sarStandUnqualified/sar-stand-unqualified', {
|
||||
...this.nonConformitySearch,
|
||||
current: this.pageNo,
|
||||
size: this.$store.getters.userInfo.configContent
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.myLoading.loadData = false
|
||||
this.nonList = res.data.records
|
||||
this.total = res.data.total
|
||||
}, e => {
|
||||
this.myLoading.loadData = false
|
||||
})
|
||||
},
|
||||
|
||||
// 批量选择分发责任人
|
||||
dutyEngineerList() {
|
||||
if (this.multipleSelection.length === 0) {
|
||||
this.$message.warning("请选择至少一条数据进行分发责任人");
|
||||
} else {
|
||||
this.multipleSelection.forEach((val, index)=> {
|
||||
val.show = true
|
||||
this.$set(val, index)
|
||||
})
|
||||
// this.modalshowflag = true
|
||||
// this.$set(this.dataList.duty)
|
||||
}
|
||||
},
|
||||
// 选择勾选项的集合
|
||||
handleSelectionChange(val) {
|
||||
this.multipleSelection = val;
|
||||
console.log(this.multipleSelection)
|
||||
},
|
||||
// 选择分发责任人时
|
||||
choiceDuty() {
|
||||
for (let i = 0; i < this.multipleSelection.length; i++ ) {
|
||||
if (this.multipleSelection[i].duty !== '') {
|
||||
console.log(i)
|
||||
for (let b = 0; b < this.multipleSelection.length; b++) {
|
||||
this.multipleSelection[b].duty = this.multipleSelection[i].duty
|
||||
this.multipleSelection.forEach(val=> {
|
||||
val.show = false
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
selectPeople(row) {
|
||||
this.modalshowflag = true
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
|
||||
// 保存按钮
|
||||
handleSave() {},
|
||||
// 提交按钮
|
||||
handleSubmit() {},
|
||||
|
||||
// 获取流程节点数据
|
||||
getTree () {
|
||||
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||
this.treeData = res.data
|
||||
})
|
||||
},
|
||||
// 流程阶段负责人选择
|
||||
choiceZRR (type, title, id) {
|
||||
this.nodeList = []
|
||||
this.nodeList.push(id)
|
||||
this.type = type
|
||||
this.drawerTitle = title
|
||||
this.modalshowflag = true
|
||||
},
|
||||
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]
|
||||
}
|
||||
},
|
||||
// 流程节点负责人抽屉保存按钮
|
||||
saveUserInfo () {
|
||||
if (this.type === 'dockUser') {
|
||||
this.roleForm.dockUser = this.roleRow.id
|
||||
this.roleForm.dockUserName = this.roleRow.name
|
||||
} else 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
|
||||
},
|
||||
//未整改项抽屉中的查询按钮
|
||||
getTableByPage() {
|
||||
},
|
||||
// 清空 查询条件
|
||||
clearAllSearch (search = true) {
|
||||
this.nonConformitySearch = {
|
||||
standId: '',
|
||||
productName: '',
|
||||
responsibleUnit: ''
|
||||
}
|
||||
this.getTableByPage()
|
||||
},
|
||||
// 分页事件
|
||||
pageChange (page) {
|
||||
this.pageNo = page
|
||||
this.getTableByPage()
|
||||
},
|
||||
pageSizeChange () {
|
||||
this.getTableByPage()
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
.wfhxzgStep2 {
|
||||
/deep/.el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
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-center {
|
||||
padding: 10px 0px 10px 10px;
|
||||
}
|
||||
.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>
|
||||
@@ -0,0 +1,452 @@
|
||||
<template>
|
||||
<div class="wfhxzgStep3">
|
||||
<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 class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||
</div>
|
||||
<div class="content" v-if="active === '1'">
|
||||
<div style="flex: auto;">
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-form :modal="dataList" inline class="label-input-form">
|
||||
<el-form-item label="标准号/标准名称" class="search-item">
|
||||
<el-input v-model="dataList.standId"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="项目名称" class="search-item">
|
||||
<el-input v-model="dataList.productName"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="责任部门" class="search-item">
|
||||
<el-input v-model="dataList.responsibleUnit" v-show="false" />
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
popper-class="user-dept-popper"
|
||||
trigger="click"
|
||||
:value="false"
|
||||
>
|
||||
<el-input
|
||||
slot="reference"
|
||||
v-model="dataList.responseUnitShow"
|
||||
placeholder="根据责任部门查找"
|
||||
readonly
|
||||
clearable
|
||||
id="searchResp"
|
||||
/>
|
||||
<div class="api">
|
||||
<laws-tree
|
||||
:zNodes="zNodesSItem"
|
||||
treeDivId="zNodesSItemSearch"
|
||||
deptSelect
|
||||
showRMenu
|
||||
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||
</laws-tree>
|
||||
</div>
|
||||
</el-popover>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini"
|
||||
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||
@click="getTableByPage('dataList')">
|
||||
查询
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="mini"
|
||||
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||
@click="clearAllSearch">
|
||||
清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
height="49%"
|
||||
style="width: 100%"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column prop="standId" label="标准号/标准名称"/>
|
||||
<el-table-column prop="productName" label="项目名称"/>
|
||||
<el-table-column prop="itemsNum" label="条款号"/>
|
||||
<el-table-column prop="itemsName" label="条款名称"/>
|
||||
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
||||
<el-table-column label="选择责任人">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="primary" size="small" @click="selectPeople(scope.row)">选择责任人</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- <pagination :page="pageNo" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"/>-->
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="意见填写">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="textarea">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-if="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>
|
||||
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||
<h4>流程发起人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||
<h4>标准法规工程师</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||
<h4>负责人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.presidentUserName" placeholder="选择负责人" @click.native="choiceZRR('presidentUser', '选择负责人', roleForm.presidentUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
</el-form>
|
||||
</el-timeline>
|
||||
</div>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-save
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<el-drawer
|
||||
:title="drawerTitle"
|
||||
:visible.sync="modalshowflag"
|
||||
:wrapperClosable="false"
|
||||
size="800px">
|
||||
<el-tree
|
||||
v-if="modalshowflag"
|
||||
style="height: 100%;"
|
||||
node-key="id"
|
||||
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>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {interfaceUrl} from "@/sysConfig";
|
||||
|
||||
export default {
|
||||
name: "step3",
|
||||
data() {
|
||||
return {
|
||||
textarea: '', // 意见
|
||||
title: '', // 新增编辑抽屉标题
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
nonConformitySearch: {
|
||||
standId: '', // 标准号/名称
|
||||
productName: '', // 项目名称
|
||||
responsibleUnit: '' // 责任部门
|
||||
},
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
dataList: [
|
||||
{
|
||||
standId: '1',
|
||||
productName: '1',
|
||||
itemsNum: '1',
|
||||
itemsName: '1',
|
||||
planCloseTime: '1',
|
||||
responsibleUnit: '1',
|
||||
dutyEngineer: '1'
|
||||
},{
|
||||
standId: '',
|
||||
productName: '',
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
planCloseTime: '',
|
||||
responsibleUnit: '',
|
||||
dutyEngineer: ''
|
||||
}],
|
||||
// 当前页数
|
||||
pageNo: 1,
|
||||
total: 0,
|
||||
myLoading: false,
|
||||
// 责任部门
|
||||
zNodesSItem: [],
|
||||
unqualidiedData: [{
|
||||
standId: '',
|
||||
productName: '',
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
planCloseTime: '',
|
||||
responsibleUnit: '',
|
||||
dutyEngineer: ''
|
||||
}],
|
||||
selectedList: [], //未整改项的选择框
|
||||
roleForm: {
|
||||
startUserName: this.$store.getters.userInfo.userName,
|
||||
startUser: this.$store.getters.userInfo.userId,
|
||||
},
|
||||
roleFormRules: {
|
||||
},
|
||||
nodeList: [],
|
||||
drawerTitle: '', //drawer标题
|
||||
modalshowflag: false, // drawer开关
|
||||
treeData: [], // 人员数据
|
||||
defaultProps: {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
},
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
this.myLoading.loadData = true
|
||||
this.$http.get('sarStandUnqualified/sar-stand-unqualified', {
|
||||
...this.nonConformitySearch,
|
||||
current: this.pageNo,
|
||||
size: this.$store.getters.userInfo.configContent
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.myLoading.loadData = false
|
||||
this.nonList = res.data.records
|
||||
this.total = res.data.total
|
||||
}, e => {
|
||||
this.myLoading.loadData = false
|
||||
})
|
||||
},
|
||||
|
||||
selectPeople(row) {
|
||||
this.modalshowflag = true
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
|
||||
// 保存按钮
|
||||
handleSave() {},
|
||||
// 提交按钮
|
||||
handleSubmit() {},
|
||||
|
||||
// 获取流程节点数据
|
||||
getTree () {
|
||||
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||
this.treeData = res.data
|
||||
})
|
||||
},
|
||||
// 流程阶段负责人选择
|
||||
choiceZRR (type, title, id) {
|
||||
this.nodeList = []
|
||||
this.nodeList.push(id)
|
||||
this.type = type
|
||||
this.drawerTitle = title
|
||||
this.modalshowflag = true
|
||||
},
|
||||
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]
|
||||
}
|
||||
},
|
||||
// 流程节点负责人抽屉保存按钮
|
||||
saveUserInfo () {
|
||||
if (this.type === 'dockUser') {
|
||||
this.roleForm.dockUser = this.roleRow.id
|
||||
this.roleForm.dockUserName = this.roleRow.name
|
||||
} else 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
|
||||
},
|
||||
//未整改项抽屉中的查询按钮
|
||||
getTableByPage() {
|
||||
},
|
||||
// 清空 查询条件
|
||||
clearAllSearch (search = true) {
|
||||
this.nonConformitySearch = {
|
||||
standId: '',
|
||||
productName: '',
|
||||
responsibleUnit: ''
|
||||
}
|
||||
this.getTableByPage()
|
||||
},
|
||||
// 分页事件
|
||||
pageChange (page) {
|
||||
this.pageNo = page
|
||||
this.getTableByPage()
|
||||
},
|
||||
pageSizeChange () {
|
||||
this.getTableByPage()
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
.wfhxzgStep3 {
|
||||
/deep/.el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
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-center {
|
||||
padding: 10px 0px 10px 10px;
|
||||
}
|
||||
.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>
|
||||
@@ -0,0 +1,452 @@
|
||||
<template>
|
||||
<div class="wfhxzgStep4">
|
||||
<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 class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||
</div>
|
||||
<div class="content" v-if="active === '1'">
|
||||
<div style="flex: auto;">
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-form :modal="dataList" inline class="label-input-form">
|
||||
<el-form-item label="标准号/标准名称" class="search-item">
|
||||
<el-input v-model="dataList.standId"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="项目名称" class="search-item">
|
||||
<el-input v-model="dataList.productName"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="责任部门" class="search-item">
|
||||
<el-input v-model="dataList.responsibleUnit" v-show="false" />
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
popper-class="user-dept-popper"
|
||||
trigger="click"
|
||||
:value="false"
|
||||
>
|
||||
<el-input
|
||||
slot="reference"
|
||||
v-model="dataList.responseUnitShow"
|
||||
placeholder="根据责任部门查找"
|
||||
readonly
|
||||
clearable
|
||||
id="searchResp"
|
||||
/>
|
||||
<div class="api">
|
||||
<laws-tree
|
||||
:zNodes="zNodesSItem"
|
||||
treeDivId="zNodesSItemSearch"
|
||||
deptSelect
|
||||
showRMenu
|
||||
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||
</laws-tree>
|
||||
</div>
|
||||
</el-popover>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini"
|
||||
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||
@click="getTableByPage('dataList')">
|
||||
查询
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="mini"
|
||||
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||
@click="clearAllSearch">
|
||||
清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
height="49%"
|
||||
style="width: 100%"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column prop="productName" label="项目名称"/>
|
||||
<el-table-column prop="itemsNum" label="条款号"/>
|
||||
<el-table-column prop="itemsName" label="条款名称"/>
|
||||
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||
<el-table-column prop="duty" label="负责人"/>
|
||||
<el-table-column label="佐证材料">
|
||||
<template slot-scope="scope">
|
||||
<el-upload>
|
||||
<el-button type="primary" size="small" @click="uploadText(scope.row)">上传佐证材料</el-button>
|
||||
</el-upload>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- <pagination :page="pageNo" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"/>-->
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="意见填写">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="textarea">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-if="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>
|
||||
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||
<h4>流程发起人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||
<h4>标准法规工程师</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||
<h4>负责人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.presidentUserName" placeholder="选择分发负责人" @click.native="choiceZRR('presidentUser', '选择分发负责人', roleForm.presidentUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
</el-form>
|
||||
</el-timeline>
|
||||
</div>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-save
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<el-drawer
|
||||
:title="drawerTitle"
|
||||
:visible.sync="modalshowflag"
|
||||
:wrapperClosable="false"
|
||||
size="800px">
|
||||
<el-tree
|
||||
v-if="modalshowflag"
|
||||
style="height: 100%;"
|
||||
node-key="id"
|
||||
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>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {interfaceUrl} from "@/sysConfig";
|
||||
|
||||
export default {
|
||||
name: "step4",
|
||||
data() {
|
||||
return {
|
||||
textarea: '', // 意见
|
||||
title: '', // 新增编辑抽屉标题
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
nonConformitySearch: {
|
||||
standId: '', // 标准号/名称
|
||||
productName: '', // 项目名称
|
||||
responsibleUnit: '' // 责任部门
|
||||
},
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
dataList: [
|
||||
{
|
||||
standId: '1',
|
||||
productName: '1',
|
||||
itemsNum: '1',
|
||||
itemsName: '1',
|
||||
planCloseTime: '1',
|
||||
responsibleUnit: '1',
|
||||
dutyEngineer: '1'
|
||||
},{
|
||||
standId: '',
|
||||
productName: '',
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
planCloseTime: '',
|
||||
responsibleUnit: '',
|
||||
dutyEngineer: ''
|
||||
}],
|
||||
// 当前页数
|
||||
pageNo: 1,
|
||||
total: 0,
|
||||
myLoading: false,
|
||||
// 责任部门
|
||||
zNodesSItem: [],
|
||||
unqualidiedData: [{
|
||||
standId: '',
|
||||
productName: '',
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
planCloseTime: '',
|
||||
responsibleUnit: '',
|
||||
dutyEngineer: ''
|
||||
}],
|
||||
selectedList: [], //未整改项的选择框
|
||||
roleForm: {
|
||||
startUserName: this.$store.getters.userInfo.userName,
|
||||
startUser: this.$store.getters.userInfo.userId,
|
||||
},
|
||||
roleFormRules: {
|
||||
},
|
||||
nodeList: [],
|
||||
drawerTitle: '', //drawer标题
|
||||
modalshowflag: false, // drawer开关
|
||||
treeData: [], // 人员数据
|
||||
defaultProps: {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
},
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
this.myLoading.loadData = true
|
||||
this.$http.get('sarStandUnqualified/sar-stand-unqualified', {
|
||||
...this.nonConformitySearch,
|
||||
current: this.pageNo,
|
||||
size: this.$store.getters.userInfo.configContent
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.myLoading.loadData = false
|
||||
this.nonList = res.data.records
|
||||
this.total = res.data.total
|
||||
}, e => {
|
||||
this.myLoading.loadData = false
|
||||
})
|
||||
},
|
||||
|
||||
uploadText(row) {
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
|
||||
// 保存按钮
|
||||
handleSave() {},
|
||||
// 提交按钮
|
||||
handleSubmit() {},
|
||||
|
||||
// 获取流程节点数据
|
||||
getTree () {
|
||||
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||
this.treeData = res.data
|
||||
})
|
||||
},
|
||||
// 流程阶段负责人选择
|
||||
choiceZRR (type, title, id) {
|
||||
this.nodeList = []
|
||||
this.nodeList.push(id)
|
||||
this.type = type
|
||||
this.drawerTitle = title
|
||||
this.modalshowflag = true
|
||||
},
|
||||
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]
|
||||
}
|
||||
},
|
||||
// 流程节点负责人抽屉保存按钮
|
||||
saveUserInfo () {
|
||||
if (this.type === 'dockUser') {
|
||||
this.roleForm.dockUser = this.roleRow.id
|
||||
this.roleForm.dockUserName = this.roleRow.name
|
||||
} else 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
|
||||
},
|
||||
//未整改项抽屉中的查询按钮
|
||||
getTableByPage() {
|
||||
},
|
||||
// 清空 查询条件
|
||||
clearAllSearch (search = true) {
|
||||
this.nonConformitySearch = {
|
||||
standId: '',
|
||||
productName: '',
|
||||
responsibleUnit: ''
|
||||
}
|
||||
this.getTableByPage()
|
||||
},
|
||||
// 分页事件
|
||||
pageChange (page) {
|
||||
this.pageNo = page
|
||||
this.getTableByPage()
|
||||
},
|
||||
pageSizeChange () {
|
||||
this.getTableByPage()
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
.wfhxzgStep4 {
|
||||
/deep/.el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
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-center {
|
||||
padding: 10px 0px 10px 10px;
|
||||
}
|
||||
.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>
|
||||
@@ -0,0 +1,454 @@
|
||||
<template>
|
||||
<div class="wfhxzgStep5">
|
||||
<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 class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||
</div>
|
||||
<div class="content" v-if="active === '1'">
|
||||
<div style="flex: auto;">
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-form :modal="dataList" inline class="label-input-form">
|
||||
<el-form-item label="标准号/标准名称" class="search-item">
|
||||
<el-input v-model="dataList.standId"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="项目名称" class="search-item">
|
||||
<el-input v-model="dataList.productName"
|
||||
placeholder="请输入"
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="责任部门" class="search-item">
|
||||
<el-input v-model="dataList.responsibleUnit" v-show="false" />
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
popper-class="user-dept-popper"
|
||||
trigger="click"
|
||||
:value="false"
|
||||
>
|
||||
<el-input
|
||||
slot="reference"
|
||||
v-model="dataList.responseUnitShow"
|
||||
placeholder="根据责任部门查找"
|
||||
readonly
|
||||
clearable
|
||||
id="searchResp"
|
||||
/>
|
||||
<div class="api">
|
||||
<laws-tree
|
||||
:zNodes="zNodesSItem"
|
||||
treeDivId="zNodesSItemSearch"
|
||||
deptSelect
|
||||
showRMenu
|
||||
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||
</laws-tree>
|
||||
</div>
|
||||
</el-popover>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini"
|
||||
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||
@click="getTableByPage('dataList')">
|
||||
查询
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="mini"
|
||||
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||
@click="clearAllSearch">
|
||||
清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
height="49%"
|
||||
style="width: 100%"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column prop="productName" label="项目名称"/>
|
||||
<el-table-column prop="itemsNum" label="条款号"/>
|
||||
<el-table-column prop="itemsName" label="条款名称"/>
|
||||
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||
<el-table-column prop="dutyEngineer" label="负责人"/>
|
||||
<el-table-column label="佐证材料">
|
||||
<div class="div-text">{{ 11 || '暂无数据' }}</div>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- <pagination :page="pageNo" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"/>-->
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="意见填写">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="textarea">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-if="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>
|
||||
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||
<h4>流程发起人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||
<h4>标准法规工程师</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||
<h4>负责人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||
<h4>分发责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.presidentUserName" placeholder="选择分发负责人" @click.native="choiceZRR('presidentUser', '选择分发负责人', roleForm.presidentUser)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
</el-form>
|
||||
</el-timeline>
|
||||
</div>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:backLoading="backLoading"
|
||||
@back="handleDataBack"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<el-drawer
|
||||
:title="drawerTitle"
|
||||
:visible.sync="modalshowflag"
|
||||
:wrapperClosable="false"
|
||||
size="800px">
|
||||
<el-tree
|
||||
v-if="modalshowflag"
|
||||
style="height: 100%;"
|
||||
node-key="id"
|
||||
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>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {interfaceUrl} from "@/sysConfig";
|
||||
|
||||
export default {
|
||||
name: "step5",
|
||||
data() {
|
||||
return {
|
||||
textarea: '', // 意见
|
||||
title: '', // 新增编辑抽屉标题
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
nonConformitySearch: {
|
||||
standId: '', // 标准号/名称
|
||||
productName: '', // 项目名称
|
||||
responsibleUnit: '' // 责任部门
|
||||
},
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
backLoading: false,
|
||||
dataList: [
|
||||
{
|
||||
standId: '1',
|
||||
productName: '1',
|
||||
itemsNum: '1',
|
||||
itemsName: '1',
|
||||
planCloseTime: '1',
|
||||
responsibleUnit: '1',
|
||||
dutyEngineer: '1'
|
||||
},{
|
||||
standId: '',
|
||||
productName: '',
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
planCloseTime: '',
|
||||
responsibleUnit: '',
|
||||
dutyEngineer: ''
|
||||
}],
|
||||
// 当前页数
|
||||
pageNo: 1,
|
||||
total: 0,
|
||||
myLoading: false,
|
||||
// 责任部门
|
||||
zNodesSItem: [],
|
||||
unqualidiedData: [{
|
||||
standId: '',
|
||||
productName: '',
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
planCloseTime: '',
|
||||
responsibleUnit: '',
|
||||
dutyEngineer: ''
|
||||
}],
|
||||
selectedList: [], //未整改项的选择框
|
||||
roleForm: {
|
||||
startUserName: this.$store.getters.userInfo.userName,
|
||||
startUser: this.$store.getters.userInfo.userId,
|
||||
},
|
||||
roleFormRules: {
|
||||
},
|
||||
// 驳回弹窗状态
|
||||
backDialog: false,
|
||||
|
||||
|
||||
nodeList: [],
|
||||
drawerTitle: '', //drawer标题
|
||||
modalshowflag: false, // drawer开关
|
||||
treeData: [], // 人员数据
|
||||
defaultProps: {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
},
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
this.myLoading.loadData = true
|
||||
this.$http.get('sarStandUnqualified/sar-stand-unqualified', {
|
||||
...this.nonConformitySearch,
|
||||
current: this.pageNo,
|
||||
size: this.$store.getters.userInfo.configContent
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.myLoading.loadData = false
|
||||
this.nonList = res.data.records
|
||||
this.total = res.data.total
|
||||
}, e => {
|
||||
this.myLoading.loadData = false
|
||||
})
|
||||
},
|
||||
// 批准俺妞妞操作
|
||||
handleBack() {
|
||||
this.backDialog = true
|
||||
},
|
||||
handleSuccess() {},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
|
||||
// 保存按钮
|
||||
handleSave() {},
|
||||
// 提交按钮
|
||||
handleSubmit() {},
|
||||
|
||||
// 获取流程节点数据
|
||||
getTree () {
|
||||
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||
this.treeData = res.data
|
||||
})
|
||||
},
|
||||
// 流程阶段负责人选择
|
||||
choiceZRR (type, title, id) {
|
||||
this.nodeList = []
|
||||
this.nodeList.push(id)
|
||||
this.type = type
|
||||
this.drawerTitle = title
|
||||
this.modalshowflag = true
|
||||
},
|
||||
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]
|
||||
}
|
||||
},
|
||||
// 流程节点负责人抽屉保存按钮
|
||||
saveUserInfo () {
|
||||
if (this.type === 'dockUser') {
|
||||
this.roleForm.dockUser = this.roleRow.id
|
||||
this.roleForm.dockUserName = this.roleRow.name
|
||||
} else 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
|
||||
},
|
||||
//未整改项抽屉中的查询按钮
|
||||
getTableByPage() {
|
||||
},
|
||||
// 清空 查询条件
|
||||
clearAllSearch (search = true) {
|
||||
this.nonConformitySearch = {
|
||||
standId: '',
|
||||
productName: '',
|
||||
responsibleUnit: ''
|
||||
}
|
||||
this.getTableByPage()
|
||||
},
|
||||
// 分页事件
|
||||
pageChange (page) {
|
||||
this.pageNo = page
|
||||
this.getTableByPage()
|
||||
},
|
||||
pageSizeChange () {
|
||||
this.getTableByPage()
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
.wfhxzgStep5 {
|
||||
/deep/.el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
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-center {
|
||||
padding: 10px 0px 10px 10px;
|
||||
}
|
||||
.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>
|
||||
@@ -10,6 +10,7 @@
|
||||
<div class="process-name" @click="handleCreateProcess('4')">标准需求(翻译)申请流程</div>
|
||||
<div class="process-name" @click="handleCreateProcess('5')">标准发放申请流程</div>
|
||||
<div class="process-name" @click="handleCreateProcess('6')">标准清单发布/更新流程</div>
|
||||
<div class="process-name" @click="handleCreateProcess('7')">未符合项整改流程</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="zcgllc">
|
||||
@@ -84,6 +85,10 @@ export default {
|
||||
})
|
||||
break
|
||||
case '7':
|
||||
//未符合项整改流程
|
||||
this.$router.push({
|
||||
name:'wfhxzgStep1'
|
||||
})
|
||||
break
|
||||
case '8':
|
||||
break
|
||||
|
||||
@@ -190,7 +190,6 @@ export default {
|
||||
loading: 'loading',
|
||||
_this: this
|
||||
}, res => {
|
||||
console.log(res)
|
||||
this.processList = res.list || []
|
||||
this.total = res.count
|
||||
}, e => {
|
||||
|
||||
@@ -252,6 +252,83 @@ export default {
|
||||
}
|
||||
})
|
||||
}
|
||||
case '2':
|
||||
if (row.taskInfo === '责任对接人选择责任人') {
|
||||
this.$router.push({
|
||||
name: 'bzdyStep2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '责任人上传调研结果') {
|
||||
this.$router.push({
|
||||
name: 'bzdyStep3',
|
||||
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 '5' :
|
||||
if(row.taskInfo === ''){
|
||||
this.$router.push({
|
||||
name: '',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
...mapMutations(['setProcess', 'setHandleInfo']),
|
||||
|
||||
@@ -21,113 +21,128 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import listOfCountries from "../accessStandardsAndRegulations/page/listOfCountries";
|
||||
import listProject from "../accessStandardsAndRegulations/page/listProject";
|
||||
import listTracking from "../accessStandardsAndRegulations/page/listTracking";
|
||||
import listOther from "../accessStandardsAndRegulations/page/listOther";
|
||||
export default {
|
||||
name: "AccessStandardsAndRegulations",
|
||||
data() {
|
||||
return {
|
||||
list: [],
|
||||
tabValue: ''
|
||||
};
|
||||
},
|
||||
methods: {},
|
||||
components: {
|
||||
listOfCountries,
|
||||
listProject,
|
||||
listTracking,
|
||||
listOther
|
||||
},
|
||||
props: {},
|
||||
computed: {},
|
||||
watch: {},
|
||||
mounted() {
|
||||
var list = []
|
||||
const menuList = this.$store.getters.getMenuList
|
||||
menuList.forEach(item => {
|
||||
if (item.id === 'b05b562950cb6d0aef539fad30b7386a') {
|
||||
list.push({
|
||||
label: '国家/地区清单',
|
||||
name: 'listOfCountries'
|
||||
})
|
||||
} else if (item.id === '63e05705d0c8013162caa34f9fe52865') {
|
||||
list.push({
|
||||
label: '项目类清单',
|
||||
name: 'listProject'
|
||||
})
|
||||
} else if (item.id === '418123d180abf67bd2c46d5a694baaa5') {
|
||||
list.push({
|
||||
label: '重点标准跟踪清单',
|
||||
name: 'listTracking'
|
||||
})
|
||||
} else if (item.id === '5a75523729b04102a565167004d640e9') {
|
||||
list.push({
|
||||
label: '其他清单',
|
||||
name: 'listOther'
|
||||
})
|
||||
import listOfCountries from "../accessStandardsAndRegulations/page/listOfCountries";
|
||||
import listProject from "../accessStandardsAndRegulations/page/listProject";
|
||||
import listTracking from "../accessStandardsAndRegulations/page/listTracking";
|
||||
import listOther from "../accessStandardsAndRegulations/page/listOther";
|
||||
|
||||
export default {
|
||||
name: "AccessStandardsAndRegulations",
|
||||
data() {
|
||||
return {
|
||||
list: [],
|
||||
tabValue: "listProject",
|
||||
menuName: ["国家/地区清单", "项目类清单", "重点标准跟踪清单", "其他清单"]
|
||||
};
|
||||
},
|
||||
methods: {},
|
||||
components: {
|
||||
listOfCountries,
|
||||
listProject,
|
||||
listTracking,
|
||||
listOther
|
||||
},
|
||||
props: {},
|
||||
computed: {},
|
||||
watch: {},
|
||||
mounted() {
|
||||
var list = [];
|
||||
const menuList = this.$store.getters.getMenuList;
|
||||
let menuData = [];
|
||||
let menuID = ["b05b562950cb6d0aef539fad30b7386a", "63e05705d0c8013162caa34f9fe52865", "418123d180abf67bd2c46d5a694baaa5", "5a75523729b04102a565167004d640e9"];
|
||||
this.menuName.forEach(item => {
|
||||
for (let i = 0; i < menuList.length; i++) {
|
||||
let entity = menuList[i];
|
||||
if (item != entity.menuName) continue;
|
||||
if (menuID.indexOf(entity.id) >= 0 && menuData.indexOf(entity.id) == -1) {
|
||||
menuData.push(entity.id);
|
||||
if (entity.id === "b05b562950cb6d0aef539fad30b7386a") {
|
||||
list.push({
|
||||
label: "国家/地区清单",
|
||||
name: "listOfCountries"
|
||||
});
|
||||
continue;
|
||||
} else if (entity.id === "63e05705d0c8013162caa34f9fe52865") {
|
||||
list.push({
|
||||
label: "项目类清单",
|
||||
name: "listProject"
|
||||
});
|
||||
continue;
|
||||
} else if (entity.id === "418123d180abf67bd2c46d5a694baaa5") {
|
||||
list.push({
|
||||
label: "重点标准跟踪清单",
|
||||
name: "listTracking"
|
||||
});
|
||||
continue;
|
||||
} else if (entity.id === "5a75523729b04102a565167004d640e9") {
|
||||
list.push({
|
||||
label: "其他清单",
|
||||
name: "listOther"
|
||||
});
|
||||
continue;
|
||||
}
|
||||
}
|
||||
})
|
||||
this.list = list
|
||||
this.tabValue = this.list[0].name
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
const toName = ['ListOfStandardsAndRegulationsDetails', 'Details', 'ProjectAddEit', 'OtherAddEit']
|
||||
// 离开此页面之前,记录tabName以便返回使用,如果将要访问的页面不是这两个,则清空tabName
|
||||
if (toName.includes(to.name)) {
|
||||
this.$store.commit('SET_ACCESS_STANDARD_REG_TABS', this.tabValue)
|
||||
} else {
|
||||
this.$store.commit('SET_ACCESS_STANDARD_REG_TABS')
|
||||
}
|
||||
setTimeout(() => {
|
||||
next()
|
||||
}, 100)
|
||||
},
|
||||
beforeRouteEnter(to, from, next) {
|
||||
next(vm => {
|
||||
if (vm.$store.state.accessStandRegTabName !== '') {
|
||||
vm.tabValue = vm.$store.state.accessStandRegTabName
|
||||
}
|
||||
})
|
||||
});
|
||||
this.list = list;
|
||||
this.tabValue = this.list[0].name;
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
const toName = ["ListOfStandardsAndRegulationsDetails", "Details", "ProjectAddEit", "OtherAddEit"];
|
||||
// 离开此页面之前,记录tabName以便返回使用,如果将要访问的页面不是这两个,则清空tabName
|
||||
if (toName.includes(to.name)) {
|
||||
this.$store.commit("SET_ACCESS_STANDARD_REG_TABS", this.tabValue);
|
||||
} else {
|
||||
this.$store.commit("SET_ACCESS_STANDARD_REG_TABS");
|
||||
}
|
||||
};
|
||||
setTimeout(() => {
|
||||
next();
|
||||
}, 100);
|
||||
},
|
||||
beforeRouteEnter(to, from, next) {
|
||||
next(vm => {
|
||||
if (vm.$store.state.accessStandRegTabName !== "") {
|
||||
vm.tabValue = vm.$store.state.accessStandRegTabName;
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
@import '~@/assets/styles/mixins';
|
||||
@import '~@/assets/styles/style';
|
||||
@import '~@/assets/styles/mixins';
|
||||
|
||||
#accessStandardsAndRegulations {
|
||||
height: 100%;
|
||||
padding: 0 10px;
|
||||
background: #fff;
|
||||
#accessStandardsAndRegulations {
|
||||
height: 100%;
|
||||
padding: 0 10px;
|
||||
background: #fff;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
/deep/ .el-tabs {
|
||||
flex: auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
/deep/ .el-tabs {
|
||||
/deep/ .el-tabs__header {
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
.el-tabs__content {
|
||||
height: 100% !important;
|
||||
flex: auto;
|
||||
position: relative;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
/deep/ .el-tabs__header {
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
.el-tabs__content {
|
||||
height: 100% !important;
|
||||
.el-tab-pane {
|
||||
height: 100%;
|
||||
flex: auto;
|
||||
position: relative;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
.el-tab-pane {
|
||||
height: 100%;
|
||||
flex: auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
+4
-3
@@ -102,8 +102,9 @@
|
||||
label="清单状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.detailedListState === '1'">未发布</span>
|
||||
<span v-if="scope.row.detailedListState === '2'">已发布</span>
|
||||
<span v-if="scope.row.detailedListState === '0'">未发布</span>
|
||||
<span v-if="scope.row.detailedListState === '1'">已发布</span>
|
||||
<span v-if="scope.row.detailedListState === '3'">审核中</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -377,7 +378,7 @@ export default {
|
||||
position: relative;
|
||||
flex: auto;
|
||||
width: 100%;
|
||||
//height: calc(~'100% - 105px - 56px') !important;
|
||||
height: calc(100% - 110px) !important;
|
||||
.pagination {
|
||||
position: static;
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
class="common-button-primary add-button"
|
||||
size="mini"
|
||||
@click="openModal(null,'addOpt')"
|
||||
v-btn-permission="'ae7419baca1564175bf96d94e827ef8b'"
|
||||
v-btn-permission="''"
|
||||
><i class="iconfont"></i>新增
|
||||
</el-button>
|
||||
<el-button
|
||||
@@ -91,8 +91,9 @@
|
||||
label="清单状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.detailedListState === '1'">未发布</span>
|
||||
<span v-if="scope.row.detailedListState === '2'">已发布</span>
|
||||
<span v-if="scope.row.detailedListState === '0'">未发布</span>
|
||||
<span v-if="scope.row.detailedListState === '1'">已发布</span>
|
||||
<span v-if="scope.row.detailedListState === '3'">审核中</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
placeholder="请输入清单名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
:loading="searching"
|
||||
@@ -93,8 +94,9 @@
|
||||
label="清单状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.detailedListState === '1'">未发布</span>
|
||||
<span v-if="scope.row.detailedListState === '2'">已发布</span>
|
||||
<span v-if="scope.row.detailedListState === '0'">未发布</span>
|
||||
<span v-if="scope.row.detailedListState === '1'">已发布</span>
|
||||
<span v-if="scope.row.detailedListState === '3'">审核中</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -111,70 +111,41 @@
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standNumber"
|
||||
width="180px"
|
||||
prop="code"
|
||||
fixed="left"
|
||||
width="180px"
|
||||
label="标准号">
|
||||
<template slot-scope="scope">
|
||||
<a class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standNumber }}</a>
|
||||
<a v-if="scope.row.resId" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.code }}</a>
|
||||
<span v-else>{{ scope.row.code }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standName"
|
||||
width="180px"
|
||||
label="中文名称"
|
||||
fixed="left"
|
||||
label="标准名称"
|
||||
width="260px"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standEnName"
|
||||
width="180px"
|
||||
fixed="left"
|
||||
label="英文名称">
|
||||
<template slot-scope="scope">
|
||||
<a class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standEnName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
width="190px"
|
||||
label="发布日期"
|
||||
prop="isSubTime"
|
||||
sortable
|
||||
>
|
||||
label="发布日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newCarTime"
|
||||
width="190px"
|
||||
label="新车型实施日期"
|
||||
prop="newPutTime"
|
||||
sortable
|
||||
>
|
||||
label="新车型实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="nowCarTime"
|
||||
width="190px"
|
||||
label="在产车实施日期"
|
||||
show-overflow-tooltip
|
||||
prop="prodPutTime"
|
||||
sortable
|
||||
>
|
||||
label="在产车实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArcticId"
|
||||
width="120px"
|
||||
show-overflow-tooltip
|
||||
label="适用车型">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="responseUnit"
|
||||
prop="proEssessUser"
|
||||
width="120px"
|
||||
show-overflow-tooltip
|
||||
label="责任部门">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="textStatus"
|
||||
width="120px"
|
||||
show-overflow-tooltip
|
||||
label="文本状态">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
+41
-58
@@ -13,6 +13,24 @@
|
||||
<el-form-item label="清单类别" prop="detailedList" class="search-item">
|
||||
<el-input v-model="sarAccessEO.detailedList" :disabled="disabledFlag" placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="适用领域" prop="applicationScope" class="search-item">
|
||||
<el-select
|
||||
v-model="sarAccessEO.applicationScope"
|
||||
multiple
|
||||
placeholder="请选择"
|
||||
filterable
|
||||
:disabled="disabledFlag"
|
||||
class="wx-resolve"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in applyOptions"
|
||||
:value="item.value"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<br/><br/>
|
||||
<el-form-item label="清单说明" prop="remark" class="search-item max-search-item2">
|
||||
<el-input
|
||||
@@ -193,37 +211,27 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="中文名称"
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
width="260px"
|
||||
fixed="left"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="enName"
|
||||
label="英文名称"
|
||||
width="260px"
|
||||
>
|
||||
prop="isSubTime"
|
||||
sortable
|
||||
label="发布日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newPutTime"
|
||||
width="150px"
|
||||
sortable
|
||||
label="新车型实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="prodPutTime"
|
||||
width="150px"
|
||||
sortable
|
||||
label="在产车实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="ZRBMName"
|
||||
width="150px"
|
||||
label="责任部门">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="proEssessUser"
|
||||
@@ -292,11 +300,11 @@
|
||||
<el-button
|
||||
class="common-button-default export-button"
|
||||
size="mini" @click="exportAccessInfo('apart')"
|
||||
v-btn-permission="'98c9556f5ae1590b4c2eb7d8ae2526dd'"
|
||||
v-btn-permission="''"
|
||||
><i class="iconfont"></i>导出</el-button>
|
||||
<el-button
|
||||
class="common-button-default delete-button"
|
||||
v-btn-permission="'c998c341816ecade73493fca3051cb1e'"
|
||||
v-btn-permission="''"
|
||||
size="mini" @click="deleteSelectSarAccessInfo"
|
||||
v-if="!disabledFlag"
|
||||
><i class="iconfont"></i>删除</el-button>
|
||||
@@ -327,59 +335,31 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="name"
|
||||
width="180px"
|
||||
label="中文名称"
|
||||
fixed="left"
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
width="260px"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.resId && scope.row.sarType !== 'TEMP'" class="table-jump"
|
||||
@click="handlePreview(scope.row)">{{ scope.row.name }}</a>
|
||||
<span v-else>{{ scope.row.name }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="enName"
|
||||
width="180px"
|
||||
fixed="left"
|
||||
label="英文名称">
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.resId && scope.row.sarType !== 'TEMP'" class="table-jump"
|
||||
@click="handlePreview(scope.row)">{{ scope.row.enName }}</a>
|
||||
<span v-else>{{ scope.row.enName }}</span>
|
||||
</template>
|
||||
prop="isSubTime"
|
||||
sortable
|
||||
label="发布日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newPutTime"
|
||||
width="190px"
|
||||
label="发布日期"
|
||||
sortable
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newPutTime"
|
||||
width="190px"
|
||||
label="新车型实施日期"
|
||||
sortable
|
||||
>
|
||||
label="新车型实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="prodPutTime"
|
||||
width="190px"
|
||||
label="在产车实施日期"
|
||||
sortable
|
||||
>
|
||||
label="在产车实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArcticId"
|
||||
width="120px"
|
||||
show-overflow-tooltip
|
||||
label="适用车型">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArcticId"
|
||||
prop="proEssessUser"
|
||||
width="120px"
|
||||
show-overflow-tooltip
|
||||
label="文本状态">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -490,8 +470,10 @@ export default {
|
||||
energyKind: '',
|
||||
type: '',
|
||||
relateFile: '',
|
||||
remark: '' // 清单说明
|
||||
remark: '' ,// 清单说明
|
||||
applicationScope: '' , //适用领域
|
||||
},
|
||||
applyOptions: [], //适用领域list
|
||||
fileInfoList: [], // 上传的附件
|
||||
uploadFileListPath: 'api/att/attFile/upload', // 上传的地址
|
||||
// 新增、编辑 基础信息验证条件
|
||||
@@ -711,7 +693,7 @@ export default {
|
||||
accessType: '',
|
||||
id: '',
|
||||
standType: 'INLAND', // 标准分类
|
||||
// country: 'CN', // 适用区域
|
||||
country: 'CN', // 适用区域
|
||||
standSort: '', // 标准类别
|
||||
standNumber: '', // 标准编号
|
||||
standYear: '', // 标准年份
|
||||
@@ -2184,7 +2166,8 @@ export default {
|
||||
this.regionOptions = res.data.REGION // 基础信息 区域list
|
||||
this.applyArcticOptions = res.data.PRODUCTTYPE || [] // 基础车型 适用车型list
|
||||
this.energyKindOptions = res.data.ENERGYTYPES || [] // 能源种类list
|
||||
this.drawerCountryOptions = res.data.COUNTRY // 国家、地区list
|
||||
this.applicationScope = res.data.COUNTRY // 国家、地区list
|
||||
this.applyOptions = res.data.COUNTRY //适用领域 list
|
||||
this.standNatureOptions = res.data.SARPROPERTY // 新增 标准性质
|
||||
this.accessSarTypeOptions = res.data.REQUESTTYPE // 数据搜索 要求类型
|
||||
this.standSortOptions = res.data.STANDCLASSIFY // 标准类别
|
||||
|
||||
+37
-105
@@ -13,6 +13,24 @@
|
||||
<el-form-item label="项目名称" prop="projectName" class="search-item">
|
||||
<el-input v-model="sarAccessEO.projectName" :disabled="disabledFlag" placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="适用领域" prop="applicationScope" class="search-item">
|
||||
<el-select
|
||||
v-model="sarAccessEO.applicationScope"
|
||||
multiple
|
||||
placeholder="请选择"
|
||||
filterable
|
||||
:disabled="disabledFlag"
|
||||
class="wx-resolve"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in applyOptions"
|
||||
:value="item.value"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<br/><br/>
|
||||
<el-form-item label="清单说明" prop="remark" class="search-item max-search-item2">
|
||||
<el-input
|
||||
@@ -193,37 +211,27 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="中文名称"
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
width="260px"
|
||||
fixed="left"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="enName"
|
||||
label="英文名称"
|
||||
width="260px"
|
||||
>
|
||||
prop="isSubTime"
|
||||
sortable
|
||||
label="发布日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newPutTime"
|
||||
width="150px"
|
||||
sortable
|
||||
label="新车型实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="prodPutTime"
|
||||
width="150px"
|
||||
sortable
|
||||
label="在产车实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="ZRBMName"
|
||||
width="150px"
|
||||
label="责任部门">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="proEssessUser"
|
||||
@@ -327,59 +335,31 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="name"
|
||||
width="180px"
|
||||
label="中文名称"
|
||||
fixed="left"
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
width="260px"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.resId && scope.row.sarType !== 'TEMP'" class="table-jump"
|
||||
@click="handlePreview(scope.row)">{{ scope.row.name }}</a>
|
||||
<span v-else>{{ scope.row.name }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="enName"
|
||||
width="180px"
|
||||
fixed="left"
|
||||
label="英文名称">
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.resId && scope.row.sarType !== 'TEMP'" class="table-jump"
|
||||
@click="handlePreview(scope.row)">{{ scope.row.enName }}</a>
|
||||
<span v-else>{{ scope.row.enName }}</span>
|
||||
</template>
|
||||
prop="isSubTime"
|
||||
sortable
|
||||
label="发布日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newPutTime"
|
||||
width="190px"
|
||||
label="发布日期"
|
||||
sortable
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newPutTime"
|
||||
width="190px"
|
||||
label="新车型实施日期"
|
||||
sortable
|
||||
>
|
||||
label="新车型实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="prodPutTime"
|
||||
width="190px"
|
||||
label="在产车实施日期"
|
||||
sortable
|
||||
>
|
||||
label="在产车实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArcticId"
|
||||
width="120px"
|
||||
show-overflow-tooltip
|
||||
label="适用车型">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArcticId"
|
||||
prop="proEssessUser"
|
||||
width="120px"
|
||||
show-overflow-tooltip
|
||||
label="文本状态">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -490,9 +470,11 @@ export default {
|
||||
energyKind: '',
|
||||
type: '',
|
||||
relateFile: '',
|
||||
remark: '' // 清单说明
|
||||
remark: '' ,// 清单说明
|
||||
applicationScope: '', //适用领域
|
||||
},
|
||||
fileInfoList: [], // 上传的附件
|
||||
applyOptions:[], //适用领域
|
||||
uploadFileListPath: 'api/att/attFile/upload', // 上传的地址
|
||||
// 新增、编辑 基础信息验证条件
|
||||
sarAccessEORules: {
|
||||
@@ -616,56 +598,6 @@ export default {
|
||||
{required: true, type: 'string', message: '英文名称不能为空', trigger: 'blur'},
|
||||
{type: 'string', max: 1000, message: '英文名称不能超过1000个字符', trigger: 'change'}
|
||||
],
|
||||
// synopsis: [
|
||||
// {required: true, type: 'string', message: '法规说明不能为空', trigger: 'blur'},
|
||||
// {type: 'string', max: 1000, message: '法规说明不能超过1000个字符', trigger: 'change'}
|
||||
// ],
|
||||
// newPutTime: [
|
||||
// {required: true, message: '新车型实施日期不能为空', trigger: 'change'}
|
||||
// ],
|
||||
// prodPutTime: [
|
||||
// {required: true, message: '在产车实施日期不能为空', trigger: 'change'}
|
||||
// ],
|
||||
// eopPutTime: [
|
||||
// {required: true, message: 'eop实施日期不能为空', trigger: 'change'}
|
||||
// ],
|
||||
// newPutTextTime: [
|
||||
// {required: true, message: '新车型实施日期(项目)不能为空', trigger: 'change'}
|
||||
// ],
|
||||
// prodPutTextTime: [
|
||||
// {required: true, message: '在产车实施日期(项目)不能为空', trigger: 'change'}
|
||||
// ],
|
||||
// eopPutTextTime: [
|
||||
// {required: true, message: 'eop实施日期(项目)不能为空', trigger: 'change'}
|
||||
// ],
|
||||
performInfo: [
|
||||
// {required: true, type: 'string', message: '实施说明不能为空', trigger: 'blur'},
|
||||
{type: 'string', max: 1000, message: '实施说明不能超过1000个字符', trigger: 'change'}
|
||||
],
|
||||
// ZRBM: [
|
||||
// {required: true, type: 'string', message: '责任部门不能为空', trigger: 'change'}
|
||||
// ],
|
||||
// XGBM: [
|
||||
// {required: true, message: '相关部门不能为空', trigger: 'change'}
|
||||
// ],
|
||||
// FO: [
|
||||
// {required: true, type: 'string', message: 'FO不能为空', trigger: 'change'}
|
||||
// ],
|
||||
// proEssessUserId: [
|
||||
// {required: true, type: 'string', message: '项目评估角色不能为空', trigger: 'change'}
|
||||
// ],
|
||||
askNature: [
|
||||
{required: true, message: '监管类型不能为空', trigger: 'change'}
|
||||
],
|
||||
// applyArctic: [
|
||||
// {required: true, message: '适用车辆类型不能为空', trigger: 'change'}
|
||||
// ],
|
||||
accessType: [
|
||||
{required: true, type: 'string', message: '入库模块不能为空', trigger: 'change'}
|
||||
],
|
||||
authObjId: [
|
||||
{required: true, type: 'string', message: '认证对象不能为空', trigger: 'change'}
|
||||
]
|
||||
},
|
||||
// 认证对象下拉数据
|
||||
authObjOptions: [
|
||||
@@ -2185,7 +2117,7 @@ export default {
|
||||
this.regionOptions = res.data.REGION // 基础信息 区域list
|
||||
this.applyArcticOptions = res.data.PRODUCTTYPE || [] // 基础车型 适用车型list
|
||||
this.energyKindOptions = res.data.ENERGYTYPES || [] // 能源种类list
|
||||
this.drawerCountryOptions = res.data.COUNTRY // 国家、地区list
|
||||
this.applyOptions = res.data.COUNTRY // 国家、地区list
|
||||
this.standNatureOptions = res.data.SARPROPERTY // 新增 标准性质
|
||||
this.accessSarTypeOptions = res.data.REQUESTTYPE // 数据搜索 要求类型
|
||||
this.standSortOptions = res.data.STANDCLASSIFY // 标准类别
|
||||
|
||||
@@ -3,26 +3,17 @@
|
||||
<div id="domesticStandardDatabase" :class="{ 'tree-close': sideClose }" class="demo-spin-article v-class">
|
||||
<div class="tree-content" :class="{ 'tree-closed': sideClose }">
|
||||
<div class="tree">
|
||||
<laws-tree :zNodes="zNodes"
|
||||
ref="domesticTree"
|
||||
treeDivId="domesticTree"
|
||||
showRMenu
|
||||
deptSelect
|
||||
autoSelect
|
||||
add-id="Q8SLTYESAL"
|
||||
edit-id="94V5KRZUJF"
|
||||
remove-id="5F7U4B2Q24"
|
||||
:drag="hasPermissionDrag"
|
||||
drag-bind=".drag-table"
|
||||
drag-dom="drag-row"
|
||||
:hideRMenuNode="['gxhbq', 'wdsc']"
|
||||
@treeAdd="(treeId, treeNode) => clickDropMenu('newMenu', treeNode)"
|
||||
@treeEdit="(treeId, treeNode) => clickDropMenu('editMenu', treeNode)"
|
||||
@treeClick="(treeId, treeNode) => treeClick(treeNode)"
|
||||
@treeRightClick="(treeId, treeNode) => treeRightClick(treeNode)"
|
||||
@treeRemove="(treeId, treeNode) => clickDropMenu('deleteMenu', treeNode)"
|
||||
@drag="drag"
|
||||
></laws-tree>
|
||||
<el-tree
|
||||
ref="tree"
|
||||
node-key="id"
|
||||
class="filter-tree"
|
||||
:props="props"
|
||||
:data="treeList"
|
||||
highlight-current
|
||||
@node-click="treeClick"
|
||||
default-expand-all
|
||||
:expand-on-click-node="false">
|
||||
</el-tree>
|
||||
</div>
|
||||
<div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }">
|
||||
<!--切换折叠样式-->
|
||||
@@ -142,7 +133,7 @@
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="标准号"
|
||||
width="170px"
|
||||
width="200px"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
|
||||
@@ -152,6 +143,7 @@
|
||||
<el-table-column
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
width="250px"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||||
@@ -160,7 +152,7 @@
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
sortable="custom"
|
||||
width="110px"
|
||||
width="170px"
|
||||
label="发布日期">
|
||||
<template slot-scope="scope">
|
||||
{{ formatIssueDate(scope.row.issueTime) }}
|
||||
@@ -169,7 +161,6 @@
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
sortable="custom"
|
||||
width="150px"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ formatText(scope.row.XCXSSRQ) }}</span>
|
||||
@@ -178,7 +169,6 @@
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
sortable="custom"
|
||||
width="150px"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ formatText(scope.row.ZCCSSRQ) }}</span>
|
||||
@@ -961,6 +951,11 @@ export default {
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
props: {
|
||||
label: 'menuName',
|
||||
children: 'children'
|
||||
},
|
||||
treeList: [],
|
||||
visibleOrgTable: false,
|
||||
orgTableVal: '',
|
||||
orgTableValName: '',
|
||||
@@ -1693,104 +1688,12 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
// 二级菜单新建,编辑,删除
|
||||
clickDropMenu (name, treeNode) {
|
||||
this.selectSarMenu = JSON.parse(JSON.stringify(treeNode))
|
||||
if (undefined !== this.selectSarMenu.id) { // 当前有选中节点
|
||||
if (name === 'newMenu') {
|
||||
this.menuModalTitle = '新增目录'
|
||||
this.menuModalFlag = true
|
||||
this.menuAddOrUpdateFlag = 1
|
||||
this.sarMenu = {
|
||||
id: '',
|
||||
parentId: '',
|
||||
menuName: '',
|
||||
sorDivide: 'INLAND_STAND',
|
||||
displaySeq: '',
|
||||
parentIds: '',
|
||||
remarks: ''
|
||||
}
|
||||
} else if (name === 'editMenu') {
|
||||
this.menuModalTitle = '编辑目录'
|
||||
this.menuModalFlag = true
|
||||
this.menuAddOrUpdateFlag = 2
|
||||
this.sarMenu.id = treeNode.id
|
||||
this.sarMenu.parentId = treeNode.pId
|
||||
this.sarMenu.menuName = treeNode.oldname || treeNode.name
|
||||
this.sarMenu.displaySeq = treeNode.displaySeq
|
||||
if (treeNode.remarks == null || treeNode.remarks === '' || treeNode.remarks === 'null') {
|
||||
this.sarMenu.remarks = ''
|
||||
} else {
|
||||
this.sarMenu.remarks = treeNode.remarks
|
||||
}
|
||||
} else {
|
||||
if (this.selectSarMenu.parentId == null) { // 如果父id为null 说明是根目录
|
||||
this.$message({
|
||||
title: '提示',
|
||||
content: '根目录不可删除!'
|
||||
})
|
||||
} else {
|
||||
// deleteMenu 删除二级菜单,先判断是否选中,选中项目,然后调用删除方法
|
||||
// 先判断目录下是否有菜单
|
||||
this.$http.post('lawss/sarMenu/judgequeryMenuByPid', this.selectSarMenu, {
|
||||
_this: this, loading: 'loading'
|
||||
}, res => {
|
||||
if (res.data) {
|
||||
// this.deleteMenuModal = true
|
||||
this.$confirm('该节点下有记录,确定删除?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
this.$http.post('lawss/sarMenu/deleteMenuAndChildren', this.selectSarMenu, {
|
||||
_this: this, loading: 'loading'
|
||||
}, res => {
|
||||
this.selectMenu() // 删除成功后,更新二级菜单
|
||||
// 获取下一个节点
|
||||
let currentNode = this.$refs.domesticTree.getNextNode()
|
||||
let nodeId = ''
|
||||
// 如果这个节点为null, 本次删除了最后一个节点
|
||||
if (currentNode === null) {
|
||||
// 选中根节点
|
||||
this.$refs.domesticTree.selectRootNode()
|
||||
} else {
|
||||
nodeId = currentNode.id
|
||||
}
|
||||
this.getDomesticStandardTable(nodeId)
|
||||
}, e => {
|
||||
})
|
||||
}).catch(() => {
|
||||
// 取消删除,清空选择
|
||||
// this.$refs.selections.clearSelection()
|
||||
})
|
||||
} else {
|
||||
this.sureDeleteSarMenu()
|
||||
}
|
||||
}, e => {
|
||||
})
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.$Modal.info({
|
||||
title: '提示',
|
||||
content: '请选择节点!'
|
||||
})
|
||||
}
|
||||
},
|
||||
treeClick (treeNode) {
|
||||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
||||
this.standCommonlySearch.menuId = treeNode.id
|
||||
this.sarStandardsSearch.menuId = treeNode.id // 将当前二级菜单的id传回后台做标准的条件查询
|
||||
this.sarStandardsSearch.page = 1
|
||||
this.standCommonlySearch.page = 1
|
||||
this.getDomesticStandardTable(this.tableFlag) // 根据选中的二级菜单查询对应的标准列表
|
||||
},
|
||||
treeRightClick (treeNode) {
|
||||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
||||
this.standCommonlySearch.menuId = treeNode.id
|
||||
this.sarStandardsSearch.menuId = treeNode.id
|
||||
this.getDomesticStandardTable(this.tableFlag)
|
||||
},
|
||||
// 点击搜索按钮
|
||||
searchBtnClick (standCommonlySearch) {
|
||||
@@ -1906,43 +1809,12 @@ export default {
|
||||
},
|
||||
// 查询二级菜单
|
||||
selectMenu () {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.$http.get('lawss/sarMenu/selectMenuByRole', {sorDivide: 'INLAND_STAND'}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
let treeNode = []
|
||||
this.parentNode = {}
|
||||
if (res.data == null) {
|
||||
res.data = []
|
||||
}
|
||||
res.data.map((item, index) => {
|
||||
let treeItem = {}
|
||||
for (let key in item) {
|
||||
if (key === 'parentId') {
|
||||
treeItem.pId = item[key]
|
||||
treeItem.parentId = item[key]
|
||||
} else if (key === 'menuName') {
|
||||
treeItem.name = item[key]
|
||||
} else {
|
||||
treeItem[key] = item[key]
|
||||
}
|
||||
if (this.initZNode === '' && item.id === '64df1d5522bb49c09af2') { this.initZNode = treeItem }
|
||||
}
|
||||
treeNode[index] = treeItem
|
||||
// 记录最外层父节点
|
||||
if (treeItem.parentId === '' || treeItem.parentId == null) {
|
||||
this.parentNode = treeItem
|
||||
}
|
||||
})
|
||||
this.zNodes = treeNode
|
||||
// 查完左侧目录后,如果没有选中的,设置最外层选中
|
||||
if (JSON.stringify(this.selectSarMenu) === '{}' || !this.selectSarMenu) {
|
||||
this.selectSarMenu = JSON.parse(JSON.stringify(this.parentNode))
|
||||
}
|
||||
resolve(res)
|
||||
}, e => {
|
||||
reject(e)
|
||||
})
|
||||
this.$http.get('sarResource/ts-resource', {
|
||||
sorDivide: 'INLAND_STAND'
|
||||
}, {}, res => {
|
||||
if (res.ok) {
|
||||
this.treeList = res.data
|
||||
}
|
||||
})
|
||||
},
|
||||
// 树-删除
|
||||
@@ -2446,7 +2318,12 @@ export default {
|
||||
}
|
||||
// this.sarStandardsSearch.menuId = this.selectSarMenu.id
|
||||
const formData = {...data}
|
||||
formData.menuId = this.selectSarMenu.id
|
||||
if (!item) {
|
||||
formData.menuId = this.sarStandardsSearch.menuId
|
||||
} else {
|
||||
formData.menuId = this.selectSarMenu.id
|
||||
}
|
||||
|
||||
// 排序
|
||||
formData.orderBy = this.orderBy
|
||||
// 处理我的收藏和个性化标签传参
|
||||
|
||||
@@ -3,27 +3,17 @@
|
||||
<div id="foreignStandardsAndRegulations" :class="{ 'tree-close': sideClose }" class="demo-spin-article v-class">
|
||||
<div class="tree-content" :class="{ 'tree-closed': sideClose }">
|
||||
<div class="tree">
|
||||
<laws-tree :zNodes="zNodes"
|
||||
ref="domesticTree"
|
||||
treeDivId="domesticTree"
|
||||
showRMenu
|
||||
deptSelect
|
||||
autoSelect
|
||||
add-id="QE4VD4BUQY"
|
||||
edit-id="NR9VRJ3VY3"
|
||||
remove-id="NTUFYC8TCC"
|
||||
:drag="hasPermissionDrag"
|
||||
drag-bind=".drag-table"
|
||||
drag-dom="drag-row"
|
||||
:hideRMenuNode="['gxhbq', 'wdsc']"
|
||||
:loading="menuTreeLoading"
|
||||
@treeAdd="(treeId, treeNode) => clickDropMenu('newMenu', treeNode)"
|
||||
@treeEdit="(treeId, treeNode) => clickDropMenu('editMenu', treeNode)"
|
||||
@treeClick="(treeId, treeNode) => treeClick(treeNode)"
|
||||
@treeRightClick="(treeId, treeNode) => treeRightClick(treeNode)"
|
||||
@treeRemove="(treeId, treeNode) => clickDropMenu('deleteMenu', treeNode)"
|
||||
@drag="drag"
|
||||
></laws-tree>
|
||||
<el-tree
|
||||
ref="tree"
|
||||
node-key="id"
|
||||
class="filter-tree"
|
||||
:props="props"
|
||||
:data="treeList"
|
||||
highlight-current
|
||||
@node-click="treeClick"
|
||||
default-expand-all
|
||||
:expand-on-click-node="false">
|
||||
</el-tree>
|
||||
</div>
|
||||
<div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }">
|
||||
<!--切换折叠样式-->
|
||||
@@ -934,6 +924,11 @@ export default {
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
treeList: [],
|
||||
props: {
|
||||
label: 'menuName',
|
||||
children: 'children'
|
||||
},
|
||||
menuTreeLoading: true,
|
||||
orderBy:'',
|
||||
nowOrder:'',
|
||||
@@ -1644,101 +1639,11 @@ export default {
|
||||
})
|
||||
})
|
||||
},
|
||||
// 二级菜单新建,编辑,删除
|
||||
clickDropMenu (name, treeNode) {
|
||||
this.selectSarMenu = JSON.parse(JSON.stringify(treeNode))
|
||||
if (undefined !== this.selectSarMenu.id) { // 当前有选中节点
|
||||
if (name === 'newMenu') {
|
||||
this.menuModalTitle = '新增目录'
|
||||
this.menuModalFlag = true
|
||||
this.menuAddOrUpdateFlag = 1
|
||||
this.sarMenu = {
|
||||
id: '',
|
||||
parentId: '',
|
||||
menuName: '',
|
||||
sorDivide: 'FOREIGN_STAND',
|
||||
displaySeq: '',
|
||||
parentIds: '',
|
||||
remarks: ''
|
||||
}
|
||||
} else if (name === 'editMenu') {
|
||||
this.menuModalTitle = '编辑目录'
|
||||
this.menuModalFlag = true
|
||||
this.menuAddOrUpdateFlag = 2
|
||||
this.sarMenu.id = treeNode.id
|
||||
this.sarMenu.parentId = treeNode.pId
|
||||
this.sarMenu.menuName = treeNode.oldname || treeNode.name
|
||||
this.sarMenu.displaySeq = treeNode.displaySeq
|
||||
if (treeNode.remarks == null || treeNode.remarks === '' || treeNode.remarks === 'null') {
|
||||
this.sarMenu.remarks = ''
|
||||
} else {
|
||||
this.sarMenu.remarks = treeNode.remarks
|
||||
}
|
||||
} else {
|
||||
if (this.selectSarMenu.parentId == null) { // 如果父id为null 说明是根目录
|
||||
this.$message({
|
||||
title: '提示',
|
||||
content: '根目录不可删除!'
|
||||
})
|
||||
} else {
|
||||
// deleteMenu 删除二级菜单,先判断是否选中,选中项目,然后调用删除方法
|
||||
// 先判断目录下是否有菜单
|
||||
this.$http.post('lawss/sarMenu/judgequeryMenuByPid', this.selectSarMenu, {
|
||||
_this: this, loading: 'loading'
|
||||
}, res => {
|
||||
if (res.data) {
|
||||
// this.deleteMenuModal = true
|
||||
this.$confirm('该节点下有记录,确定删除?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
this.$http.post('lawss/sarMenu/deleteMenuAndChildren', this.selectSarMenu, {
|
||||
_this: this, loading: 'loading'
|
||||
}, res => {
|
||||
this.selectMenu() // 删除成功后,更新二级菜单
|
||||
// 获取下一个节点
|
||||
let currentNode = this.$refs.domesticTree.getNextNode()
|
||||
let nodeId = ''
|
||||
// 如果这个节点为null, 本次删除了最后一个节点
|
||||
if (currentNode === null) {
|
||||
// 选中根节点
|
||||
this.$refs.domesticTree.selectRootNode()
|
||||
} else {
|
||||
nodeId = currentNode.id
|
||||
}
|
||||
this.getDomesticStandardTable()
|
||||
}, e => {
|
||||
})
|
||||
}).catch(() => {
|
||||
// 取消删除,清空选择
|
||||
// this.$refs.selections.clearSelection()
|
||||
})
|
||||
} else {
|
||||
this.sureDeleteSarMenu()
|
||||
}
|
||||
}, e => {
|
||||
})
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.$Modal.info({
|
||||
title: '提示',
|
||||
content: '请选择节点!'
|
||||
})
|
||||
}
|
||||
},
|
||||
treeClick (treeNode) {
|
||||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
||||
this.selectSarMenu = treeNode
|
||||
this.standCommonlySearch.menuId = treeNode.id
|
||||
this.standCommonlySearch.page = 1
|
||||
this.getDomesticStandardTable() // 根据选中的二级菜单查询对应的标准列表
|
||||
},
|
||||
treeRightClick (treeNode) {
|
||||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
||||
this.standCommonlySearch.menuId = treeNode.id
|
||||
this.getDomesticStandardTable()
|
||||
},
|
||||
// 点击搜索按钮
|
||||
searchBtnClick () {
|
||||
@@ -1828,40 +1733,12 @@ export default {
|
||||
},
|
||||
// 查询二级菜单
|
||||
selectMenu () {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.$http.get('lawss/sarMenu/selectMenuByRole', {sorDivide: 'FOREIGN_STAND'}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
let treeNode = []
|
||||
this.parentNode = {}
|
||||
res.data.forEach((item, index) => {
|
||||
let treeItem = {}
|
||||
for (let key in item) {
|
||||
if (key === 'parentId') {
|
||||
treeItem.pId = item[key]
|
||||
treeItem.parentId = item[key]
|
||||
} else if (key === 'menuName') {
|
||||
treeItem.name = item[key]
|
||||
} else {
|
||||
treeItem[key] = item[key]
|
||||
}
|
||||
if (this.initZNode === '' && item.id === '64df1d5522bb49c09af2') { this.initZNode = treeItem }
|
||||
}
|
||||
treeNode[index] = treeItem
|
||||
// 记录最外层父节点
|
||||
if (treeItem.parentId === '' || treeItem.parentId == null) {
|
||||
this.parentNode = treeItem
|
||||
}
|
||||
})
|
||||
this.zNodes = treeNode
|
||||
// 查完左侧目录后,如果没有选中的,设置最外层选中
|
||||
if (JSON.stringify(this.selectSarMenu) === '{}' || !this.selectSarMenu) {
|
||||
this.selectSarMenu = JSON.parse(JSON.stringify(this.parentNode))
|
||||
}
|
||||
resolve(res)
|
||||
}, e => {
|
||||
reject(e)
|
||||
})
|
||||
this.$http.get('sarResource/ts-resource', {
|
||||
sorDivide: 'FOREIGN_STAND'
|
||||
}, {}, res => {
|
||||
if (res.ok) {
|
||||
this.treeList = res.data
|
||||
}
|
||||
})
|
||||
},
|
||||
// 树-删除
|
||||
@@ -2416,7 +2293,11 @@ export default {
|
||||
data.sarStandardsSearch = ''
|
||||
}
|
||||
const formData = {...data}
|
||||
formData.menuId = this.selectSarMenu.id
|
||||
if (!item) {
|
||||
formData.menuId = this.selectSarMenu.id
|
||||
} else {
|
||||
formData.menuId = this.standCommonlySearch.menuId
|
||||
}
|
||||
formData.nowOrderBy = this.nowOrder ? this.orderBy : ''
|
||||
formData.nowOrder = this.nowOrder
|
||||
// 处理我的收藏和个性化标签传参
|
||||
@@ -2437,7 +2318,6 @@ export default {
|
||||
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', formData, {
|
||||
_this: this, loading: 'loading'
|
||||
}, res => {
|
||||
console.log('2441',formData);
|
||||
this.isAdvancedSearch = false
|
||||
if (res.ok) {
|
||||
for (let i = 0; i < res.data.list.length; i++) {
|
||||
|
||||
@@ -1211,13 +1211,13 @@ export default {
|
||||
handlePreview (row) {
|
||||
this.$store.commit('setDetailMap', this.$route.path)
|
||||
this.$store.commit('setLocalProData', JSON.stringify(row))
|
||||
if (!this.$hasPermission('XTR2AJYDAN4J7GALXDW9')){
|
||||
this.$message({
|
||||
message: '无权访问',
|
||||
type: 'warning'
|
||||
})
|
||||
return
|
||||
}
|
||||
// if (!this.$hasPermission('XTR2AJYDAN4J7GALXDW9')){
|
||||
// this.$message({
|
||||
// message: '无权访问',
|
||||
// type: 'warning'
|
||||
// })
|
||||
// return
|
||||
// }
|
||||
this.$http.get('sarStandProjectLibrary/queryById', {
|
||||
id: row.id
|
||||
}, {
|
||||
|
||||
@@ -42,6 +42,7 @@ export default {
|
||||
flex-direction: column;
|
||||
background-color: #FFFFFF;
|
||||
.non-content {
|
||||
padding: 0 10px;
|
||||
height: 100%;
|
||||
/deep/ .el-tabs {
|
||||
display: flex;
|
||||
|
||||
Reference in New Issue
Block a user