Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
@@ -2,8 +2,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="attribute-custom v-class">
|
<div class="attribute-custom v-class">
|
||||||
<div class="action-bar1">
|
<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-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="'Q2AQMSUHKZDKLXJBHJEN'" @click="showDisplayLocationDialog">展示区域管理</el-button>
|
<el-button class="common-button-default" size="mini" v-btn-permission="''" @click="showDisplayLocationDialog">展示区域管理</el-button>
|
||||||
</div>
|
</div>
|
||||||
<loading :loading="attributeDataLoading">数据处理中</loading>
|
<loading :loading="attributeDataLoading">数据处理中</loading>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
@@ -76,7 +76,7 @@
|
|||||||
<el-dropdown trigger="click" @command="handleCommand">
|
<el-dropdown trigger="click" @command="handleCommand">
|
||||||
<i class="iconfont"></i>
|
<i class="iconfont"></i>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<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-item :disabled="scope.row.isEdit==='1'" :command="[scope.row, '删除']">删除</el-dropdown-item>
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
|
|||||||
@@ -53,10 +53,10 @@
|
|||||||
class="common-button-primary"
|
class="common-button-primary"
|
||||||
size="mini"
|
size="mini"
|
||||||
@click="showAddModel(1, null)"
|
@click="showAddModel(1, null)"
|
||||||
v-btn-permission="'29YZ482LEHRJJXELWZGG'"
|
v-btn-permission="''"
|
||||||
><i class="iconfont"></i>新增</el-button
|
><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
|
><i class="iconfont"></i>删除</el-button
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
@@ -124,13 +124,13 @@
|
|||||||
<i class="iconfont"></i>
|
<i class="iconfont"></i>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
v-btn-permission="'5B3QMLDMTJ4XPLKSFA8Q'"
|
v-btn-permission="''"
|
||||||
:disabled="scope.row.enable === '0'"
|
:disabled="scope.row.enable === '0'"
|
||||||
:command="[scope.row, '编辑']"
|
:command="[scope.row, '编辑']"
|
||||||
>编辑</el-dropdown-item
|
>编辑</el-dropdown-item
|
||||||
>
|
>
|
||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
v-btn-permission="'T97J4LTH3TP36CREJ62A'"
|
v-btn-permission="''"
|
||||||
:disabled="scope.row.enable === '0'"
|
:disabled="scope.row.enable === '0'"
|
||||||
:command="[scope.row, '删除']"
|
:command="[scope.row, '删除']"
|
||||||
>删除</el-dropdown-item
|
>删除</el-dropdown-item
|
||||||
|
|||||||
@@ -12,6 +12,10 @@ export default {
|
|||||||
label: '标准入库流程',
|
label: '标准入库流程',
|
||||||
value: '1'
|
value: '1'
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label:'标准清单发布流程',
|
||||||
|
value: '3'
|
||||||
|
},
|
||||||
],
|
],
|
||||||
formDisableFlag: false,
|
formDisableFlag: false,
|
||||||
pickerOptions: {
|
pickerOptions: {
|
||||||
|
|||||||
@@ -7,13 +7,14 @@
|
|||||||
</ProcessHeader>
|
</ProcessHeader>
|
||||||
<div class="headerTabs">
|
<div class="headerTabs">
|
||||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
<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>
|
||||||
<div class="content" v-if="active === '1'">
|
<div class="content" v-show="active === '1'">
|
||||||
<div style="flex: auto; overflow: auto;">
|
<div style="flex: auto; overflow: auto;">
|
||||||
<el-form
|
<el-form
|
||||||
ref="qbkwForm"
|
ref="qbkwForm"
|
||||||
:model="form"
|
:model="form"
|
||||||
|
:rules="formRules"
|
||||||
class="label-input-form"
|
class="label-input-form"
|
||||||
label-width="210px"
|
label-width="210px"
|
||||||
>
|
>
|
||||||
@@ -30,10 +31,10 @@
|
|||||||
clearable
|
clearable
|
||||||
></el-input>
|
></el-input>
|
||||||
</el-form-item>
|
</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
|
<el-date-picker
|
||||||
v-model="form.year"
|
v-model="form.date"
|
||||||
type="year"
|
type="date"
|
||||||
placeholder="请选择完成时间">
|
placeholder="请选择完成时间">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -55,99 +56,72 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</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>
|
||||||
<div class="content" v-if="active === '2'">
|
<div class="content" v-show="active === '2'">
|
||||||
<div class="block" style="padding-top: 20px;">
|
<div class="block" style="padding-top: 20px;">
|
||||||
<el-timeline>
|
<el-timeline>
|
||||||
<el-timeline-item timestamp="发起流程" placement="top" :color="user1 ? '#66b1ff' : ''">
|
<el-form
|
||||||
<el-card>
|
ref="Form"
|
||||||
<h4>流程发起人</h4>
|
:model="roleForm"
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
:rules="roleFormRules"
|
||||||
<el-input v-model="user1" placeholder="流程发起人"></el-input>
|
class="label-input-form">
|
||||||
</div>
|
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
|
||||||
</el-card>
|
<el-card>
|
||||||
</el-timeline-item>
|
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||||
<el-timeline-item timestamp="选择责任人" placement="top" :color="user2 ? '#66b1ff' : ''">
|
<h4>流程发起人</h4>
|
||||||
<el-card>
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
<h4>责任对接人</h4>
|
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||||
<el-input v-model="user2" placeholder="选择责任人" @click.native="choiceZRR">
|
</div>
|
||||||
</el-input>
|
</el-form-item>
|
||||||
</div>
|
</el-card>
|
||||||
</el-card>
|
</el-timeline-item>
|
||||||
</el-timeline-item>
|
<el-timeline-item timestamp="选择部门责任人" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||||
<el-timeline-item timestamp="上传调研结果" placement="top" :color="user3 ? '#66b1ff' : ''">
|
<el-card>
|
||||||
<el-card>
|
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||||
<h4>责任人</h4>
|
<h4>责任部门对接人</h4>
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
<el-input v-model="user3" placeholder="选择责任人"></el-input>
|
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||||
</div>
|
<el-input v-model="roleForm.dockUserName" placeholder="选择责任人" @click.native="choiceZRR('dockUser', '选择责任人', roleForm.dockUser)">
|
||||||
</el-card>
|
</el-input>
|
||||||
</el-timeline-item>
|
</div>
|
||||||
|
</el-form-item>
|
||||||
<el-timeline-item timestamp="审批" placement="top" :color="user4 ? '#66b1ff' : ''">
|
</el-card>
|
||||||
<el-card>
|
</el-timeline-item>
|
||||||
<h4>责任对接人</h4>
|
<el-timeline-item timestamp="审批" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
<el-card>
|
||||||
<el-input v-model="user5" placeholder="选择责任对接人"></el-input>
|
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||||
</div>
|
<h4>标准法规部部长</h4>
|
||||||
</el-card>
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
</el-timeline-item>
|
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||||
<el-timeline-item timestamp="调研汇总" placement="top" :color="user5 ? '#66b1ff' : ''">
|
<el-input v-model="roleForm.ministerUserName" placeholder="选择标准法规部部长" @click.native="choiceZRR('ministerUser', '选择标准法规部部长', roleForm.ministerUser)"></el-input>
|
||||||
<el-card>
|
</div>
|
||||||
<h4>标准法规工程师</h4>
|
</el-form-item>
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
</el-card>
|
||||||
<el-input v-model="user4" placeholder="选择标准法规工程师"></el-input>
|
</el-timeline-item>
|
||||||
</div>
|
<el-timeline-item timestamp="审定" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||||
</el-card>
|
<el-card>
|
||||||
</el-timeline-item>
|
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||||
<el-timeline-item timestamp="会签审核" placement="top" :color="user6 ? '#66b1ff' : ''">
|
<h4>技术管理中心主任</h4>
|
||||||
<el-card>
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
<h4>责任人</h4>
|
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
<el-input v-model="roleForm.directorUserName" placeholder="选择技术管理中心主任" @click.native="choiceZRR('directorUser', '选择技术管理中心主任', roleForm.directorUser)"></el-input>
|
||||||
<el-input v-model="user5" placeholder="选择责任人"></el-input>
|
</div>
|
||||||
</div>
|
</el-form-item>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-timeline-item>
|
</el-timeline-item>
|
||||||
<el-timeline-item timestamp="会签审核" placement="top" :color="user7 ? '#66b1ff' : ''">
|
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||||
<el-card>
|
<el-card>
|
||||||
<h4>责任部门领导与标准法规部部长</h4>
|
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
<h4>工程研究总院院长</h4>
|
||||||
<el-input v-model="user5" placeholder="选择责任部门领导与标准法规部部长"></el-input>
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
</div>
|
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||||
</el-card>
|
<el-input v-model="roleForm.presidentUserName" placeholder="选择工程研究总院院长" @click.native="choiceZRR('presidentUser', '选择工程研究总院院长', roleForm.presidentUser)"></el-input>
|
||||||
</el-timeline-item>
|
</div>
|
||||||
<el-timeline-item timestamp="审定" placement="top" :color="user8 ? '#66b1ff' : ''">
|
</el-form-item>
|
||||||
<el-card>
|
</el-card>
|
||||||
<h4>技术管理中心负责人</h4>
|
</el-timeline-item>
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
</el-form>
|
||||||
<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-timeline>
|
</el-timeline>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -166,10 +140,13 @@
|
|||||||
:wrapperClosable="false"
|
:wrapperClosable="false"
|
||||||
size="800px">
|
size="800px">
|
||||||
<el-tree
|
<el-tree
|
||||||
|
v-if="modalshowflag"
|
||||||
node-key="id"
|
node-key="id"
|
||||||
|
style="height: 100%; overflow: auto;"
|
||||||
class="filter-tree"
|
class="filter-tree"
|
||||||
:data="treeData"
|
:data="treeData"
|
||||||
:props="defaultProps"
|
:props="defaultProps"
|
||||||
|
:default-checked-keys="nodeList"
|
||||||
highlight-current
|
highlight-current
|
||||||
check-strictly
|
check-strictly
|
||||||
@check="drawerCheck"
|
@check="drawerCheck"
|
||||||
@@ -178,6 +155,10 @@
|
|||||||
show-checkbox
|
show-checkbox
|
||||||
ref="tree">
|
ref="tree">
|
||||||
</el-tree>
|
</el-tree>
|
||||||
|
<div id="roleFormButton" class="demo-drawer-footer">
|
||||||
|
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
|
||||||
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
|
||||||
|
</div>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -191,6 +172,9 @@ export default {
|
|||||||
name: "bzdyStep1",
|
name: "bzdyStep1",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
roleRow: {},
|
||||||
|
nodeList: [],
|
||||||
|
type: '',
|
||||||
defaultProps: {
|
defaultProps: {
|
||||||
children: 'children',
|
children: 'children',
|
||||||
label: 'name'
|
label: 'name'
|
||||||
@@ -206,20 +190,45 @@ export default {
|
|||||||
saveLoading: false,
|
saveLoading: false,
|
||||||
form: {
|
form: {
|
||||||
title: '', // 调研标题
|
title: '', // 调研标题
|
||||||
year: '', // 完成时间
|
date: '', // 完成时间
|
||||||
model: '', // 上传模板
|
model: '', // 上传模板
|
||||||
},
|
},
|
||||||
data: [], // 标准列表数据
|
formRules: {
|
||||||
ListForm: {}, // 新增数据
|
title: [
|
||||||
user1: '',
|
{ required: true, message: '请输入调研标题', trigger: 'blur' },
|
||||||
user2: '',
|
],
|
||||||
user3: '',
|
date: [
|
||||||
user4: '',
|
{ type: 'date', required: true, message: '请选择完成时间', trigger: 'change' }
|
||||||
user5: '',
|
]
|
||||||
user6: '',
|
},
|
||||||
user7: '',
|
roleForm: {
|
||||||
user8: '',
|
startUserName: this.$store.getters.userInfo.userName,
|
||||||
user9: '',
|
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: {
|
components: {
|
||||||
@@ -228,15 +237,39 @@ export default {
|
|||||||
ProcessTitle
|
ProcessTitle
|
||||||
},
|
},
|
||||||
methods: {
|
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) {
|
drawerCheck (data) {
|
||||||
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
||||||
if(getlist.length == 1) {
|
if(getlist.length == 1) {
|
||||||
|
this.roleRow = getlist[0]
|
||||||
}else {
|
}else {
|
||||||
this.$refs.tree.setCheckedKeys([data.id]);
|
this.$refs.tree.setCheckedKeys([data.id]);
|
||||||
|
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
choiceZRR () {
|
choiceZRR (type, title, id) {
|
||||||
this.drawerTitle = '选择责任人'
|
this.nodeList = []
|
||||||
|
this.nodeList.push(id)
|
||||||
|
this.type = type
|
||||||
|
this.drawerTitle = title
|
||||||
this.modalshowflag = true
|
this.modalshowflag = true
|
||||||
},
|
},
|
||||||
getTree () {
|
getTree () {
|
||||||
@@ -244,25 +277,42 @@ export default {
|
|||||||
this.treeData = res.data
|
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) {
|
handleTabs(name) {
|
||||||
this.active = name
|
this.active = name
|
||||||
},
|
},
|
||||||
handleSave() {},
|
handleSave() {},
|
||||||
handleSubmit() {
|
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 () {
|
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>
|
<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>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import ProcessHeader from "../../components/ProcessHeader";
|
||||||
|
import ProcessFooter from "../../components/ProcessFooter";
|
||||||
|
import ProcessTitle from "../../components/ProcessTitle";
|
||||||
|
import { inboundLiaisonDetail, queryDetail } from "api/process";
|
||||||
|
|
||||||
export default {
|
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>
|
</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>
|
</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('4')">标准需求(翻译)申请流程</div>
|
||||||
<div class="process-name" @click="handleCreateProcess('5')">标准发放申请流程</div>
|
<div class="process-name" @click="handleCreateProcess('5')">标准发放申请流程</div>
|
||||||
<div class="process-name" @click="handleCreateProcess('6')">标准清单发布/更新流程</div>
|
<div class="process-name" @click="handleCreateProcess('6')">标准清单发布/更新流程</div>
|
||||||
|
<div class="process-name" @click="handleCreateProcess('7')">未符合项整改流程</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="zcgllc">
|
<div v-if="zcgllc">
|
||||||
@@ -84,6 +85,10 @@ export default {
|
|||||||
})
|
})
|
||||||
break
|
break
|
||||||
case '7':
|
case '7':
|
||||||
|
//未符合项整改流程
|
||||||
|
this.$router.push({
|
||||||
|
name:'wfhxzgStep1'
|
||||||
|
})
|
||||||
break
|
break
|
||||||
case '8':
|
case '8':
|
||||||
break
|
break
|
||||||
|
|||||||
@@ -190,7 +190,6 @@ export default {
|
|||||||
loading: 'loading',
|
loading: 'loading',
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
console.log(res)
|
|
||||||
this.processList = res.list || []
|
this.processList = res.list || []
|
||||||
this.total = res.count
|
this.total = res.count
|
||||||
}, e => {
|
}, 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']),
|
...mapMutations(['setProcess', 'setHandleInfo']),
|
||||||
|
|||||||
@@ -21,113 +21,128 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import listOfCountries from "../accessStandardsAndRegulations/page/listOfCountries";
|
import listOfCountries from "../accessStandardsAndRegulations/page/listOfCountries";
|
||||||
import listProject from "../accessStandardsAndRegulations/page/listProject";
|
import listProject from "../accessStandardsAndRegulations/page/listProject";
|
||||||
import listTracking from "../accessStandardsAndRegulations/page/listTracking";
|
import listTracking from "../accessStandardsAndRegulations/page/listTracking";
|
||||||
import listOther from "../accessStandardsAndRegulations/page/listOther";
|
import listOther from "../accessStandardsAndRegulations/page/listOther";
|
||||||
export default {
|
|
||||||
name: "AccessStandardsAndRegulations",
|
export default {
|
||||||
data() {
|
name: "AccessStandardsAndRegulations",
|
||||||
return {
|
data() {
|
||||||
list: [],
|
return {
|
||||||
tabValue: ''
|
list: [],
|
||||||
};
|
tabValue: "listProject",
|
||||||
},
|
menuName: ["国家/地区清单", "项目类清单", "重点标准跟踪清单", "其他清单"]
|
||||||
methods: {},
|
};
|
||||||
components: {
|
},
|
||||||
listOfCountries,
|
methods: {},
|
||||||
listProject,
|
components: {
|
||||||
listTracking,
|
listOfCountries,
|
||||||
listOther
|
listProject,
|
||||||
},
|
listTracking,
|
||||||
props: {},
|
listOther
|
||||||
computed: {},
|
},
|
||||||
watch: {},
|
props: {},
|
||||||
mounted() {
|
computed: {},
|
||||||
var list = []
|
watch: {},
|
||||||
const menuList = this.$store.getters.getMenuList
|
mounted() {
|
||||||
menuList.forEach(item => {
|
var list = [];
|
||||||
if (item.id === 'b05b562950cb6d0aef539fad30b7386a') {
|
const menuList = this.$store.getters.getMenuList;
|
||||||
list.push({
|
let menuData = [];
|
||||||
label: '国家/地区清单',
|
let menuID = ["b05b562950cb6d0aef539fad30b7386a", "63e05705d0c8013162caa34f9fe52865", "418123d180abf67bd2c46d5a694baaa5", "5a75523729b04102a565167004d640e9"];
|
||||||
name: 'listOfCountries'
|
this.menuName.forEach(item => {
|
||||||
})
|
for (let i = 0; i < menuList.length; i++) {
|
||||||
} else if (item.id === '63e05705d0c8013162caa34f9fe52865') {
|
let entity = menuList[i];
|
||||||
list.push({
|
if (item != entity.menuName) continue;
|
||||||
label: '项目类清单',
|
if (menuID.indexOf(entity.id) >= 0 && menuData.indexOf(entity.id) == -1) {
|
||||||
name: 'listProject'
|
menuData.push(entity.id);
|
||||||
})
|
if (entity.id === "b05b562950cb6d0aef539fad30b7386a") {
|
||||||
} else if (item.id === '418123d180abf67bd2c46d5a694baaa5') {
|
list.push({
|
||||||
list.push({
|
label: "国家/地区清单",
|
||||||
label: '重点标准跟踪清单',
|
name: "listOfCountries"
|
||||||
name: 'listTracking'
|
});
|
||||||
})
|
continue;
|
||||||
} else if (item.id === '5a75523729b04102a565167004d640e9') {
|
} else if (entity.id === "63e05705d0c8013162caa34f9fe52865") {
|
||||||
list.push({
|
list.push({
|
||||||
label: '其他清单',
|
label: "项目类清单",
|
||||||
name: 'listOther'
|
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()
|
this.list = list;
|
||||||
}, 100)
|
this.tabValue = this.list[0].name;
|
||||||
},
|
},
|
||||||
beforeRouteEnter(to, from, next) {
|
beforeRouteLeave(to, from, next) {
|
||||||
next(vm => {
|
const toName = ["ListOfStandardsAndRegulationsDetails", "Details", "ProjectAddEit", "OtherAddEit"];
|
||||||
if (vm.$store.state.accessStandRegTabName !== '') {
|
// 离开此页面之前,记录tabName以便返回使用,如果将要访问的页面不是这两个,则清空tabName
|
||||||
vm.tabValue = vm.$store.state.accessStandRegTabName
|
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>
|
</script>
|
||||||
|
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
@import '~@/assets/styles/style';
|
@import '~@/assets/styles/style';
|
||||||
@import '~@/assets/styles/mixins';
|
@import '~@/assets/styles/mixins';
|
||||||
|
|
||||||
#accessStandardsAndRegulations {
|
#accessStandardsAndRegulations {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
padding: 0 10px;
|
padding: 0 10px;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
/deep/ .el-tabs {
|
||||||
|
flex: auto;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
/deep/ .el-tabs {
|
/deep/ .el-tabs__header {
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-tabs__content {
|
||||||
|
height: 100% !important;
|
||||||
flex: auto;
|
flex: auto;
|
||||||
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
/deep/ .el-tabs__header {
|
.el-tab-pane {
|
||||||
margin: 0 !important;
|
height: 100%;
|
||||||
}
|
|
||||||
|
|
||||||
.el-tabs__content {
|
|
||||||
height: 100% !important;
|
|
||||||
flex: auto;
|
flex: auto;
|
||||||
position: relative;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
.el-tab-pane {
|
|
||||||
height: 100%;
|
|
||||||
flex: auto;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
+4
-3
@@ -102,8 +102,9 @@
|
|||||||
label="清单状态"
|
label="清单状态"
|
||||||
align="center">
|
align="center">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="scope.row.detailedListState === '1'">未发布</span>
|
<span v-if="scope.row.detailedListState === '0'">未发布</span>
|
||||||
<span v-if="scope.row.detailedListState === '2'">已发布</span>
|
<span v-if="scope.row.detailedListState === '1'">已发布</span>
|
||||||
|
<span v-if="scope.row.detailedListState === '3'">审核中</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
@@ -377,7 +378,7 @@ export default {
|
|||||||
position: relative;
|
position: relative;
|
||||||
flex: auto;
|
flex: auto;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
//height: calc(~'100% - 105px - 56px') !important;
|
height: calc(100% - 110px) !important;
|
||||||
.pagination {
|
.pagination {
|
||||||
position: static;
|
position: static;
|
||||||
|
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
class="common-button-primary add-button"
|
class="common-button-primary add-button"
|
||||||
size="mini"
|
size="mini"
|
||||||
@click="openModal(null,'addOpt')"
|
@click="openModal(null,'addOpt')"
|
||||||
v-btn-permission="'ae7419baca1564175bf96d94e827ef8b'"
|
v-btn-permission="''"
|
||||||
><i class="iconfont"></i>新增
|
><i class="iconfont"></i>新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
@@ -91,8 +91,9 @@
|
|||||||
label="清单状态"
|
label="清单状态"
|
||||||
align="center">
|
align="center">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="scope.row.detailedListState === '1'">未发布</span>
|
<span v-if="scope.row.detailedListState === '0'">未发布</span>
|
||||||
<span v-if="scope.row.detailedListState === '2'">已发布</span>
|
<span v-if="scope.row.detailedListState === '1'">已发布</span>
|
||||||
|
<span v-if="scope.row.detailedListState === '3'">审核中</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
placeholder="请输入清单名称"
|
placeholder="请输入清单名称"
|
||||||
></el-input>
|
></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item class="search-item btn-box">
|
<el-form-item class="search-item btn-box">
|
||||||
<el-button
|
<el-button
|
||||||
:loading="searching"
|
:loading="searching"
|
||||||
@@ -93,8 +94,9 @@
|
|||||||
label="清单状态"
|
label="清单状态"
|
||||||
align="center">
|
align="center">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="scope.row.detailedListState === '1'">未发布</span>
|
<span v-if="scope.row.detailedListState === '0'">未发布</span>
|
||||||
<span v-if="scope.row.detailedListState === '2'">已发布</span>
|
<span v-if="scope.row.detailedListState === '1'">已发布</span>
|
||||||
|
<span v-if="scope.row.detailedListState === '3'">审核中</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -111,70 +111,41 @@
|
|||||||
align="center">
|
align="center">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="standNumber"
|
prop="code"
|
||||||
width="180px"
|
|
||||||
fixed="left"
|
fixed="left"
|
||||||
|
width="180px"
|
||||||
label="标准号">
|
label="标准号">
|
||||||
<template slot-scope="scope">
|
<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>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="standName"
|
prop="standName"
|
||||||
width="180px"
|
label="标准名称"
|
||||||
label="中文名称"
|
width="260px"
|
||||||
fixed="left"
|
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
|
||||||
<a class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="standEnName"
|
prop="isSubTime"
|
||||||
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="发布日期"
|
|
||||||
sortable
|
sortable
|
||||||
>
|
label="发布日期">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="newCarTime"
|
prop="newPutTime"
|
||||||
width="190px"
|
|
||||||
label="新车型实施日期"
|
|
||||||
sortable
|
sortable
|
||||||
>
|
label="新车型实施日期">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="nowCarTime"
|
show-overflow-tooltip
|
||||||
width="190px"
|
prop="prodPutTime"
|
||||||
label="在产车实施日期"
|
|
||||||
sortable
|
sortable
|
||||||
>
|
label="在产车实施日期">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="applyArcticId"
|
|
||||||
width="120px"
|
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
label="适用车型">
|
prop="proEssessUser"
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
prop="responseUnit"
|
|
||||||
width="120px"
|
width="120px"
|
||||||
show-overflow-tooltip
|
|
||||||
label="责任部门">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
prop="textStatus"
|
|
||||||
width="120px"
|
|
||||||
show-overflow-tooltip
|
|
||||||
label="文本状态">
|
label="文本状态">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|||||||
+41
-58
@@ -13,6 +13,24 @@
|
|||||||
<el-form-item label="清单类别" prop="detailedList" class="search-item">
|
<el-form-item label="清单类别" prop="detailedList" class="search-item">
|
||||||
<el-input v-model="sarAccessEO.detailedList" :disabled="disabledFlag" placeholder="请输入"></el-input>
|
<el-input v-model="sarAccessEO.detailedList" :disabled="disabledFlag" placeholder="请输入"></el-input>
|
||||||
</el-form-item>
|
</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/>
|
<br/><br/>
|
||||||
<el-form-item label="清单说明" prop="remark" class="search-item max-search-item2">
|
<el-form-item label="清单说明" prop="remark" class="search-item max-search-item2">
|
||||||
<el-input
|
<el-input
|
||||||
@@ -193,37 +211,27 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="name"
|
prop="standName"
|
||||||
label="中文名称"
|
label="标准名称"
|
||||||
width="260px"
|
width="260px"
|
||||||
fixed="left"
|
|
||||||
>
|
>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="enName"
|
prop="isSubTime"
|
||||||
label="英文名称"
|
sortable
|
||||||
width="260px"
|
label="发布日期">
|
||||||
>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="newPutTime"
|
prop="newPutTime"
|
||||||
width="150px"
|
|
||||||
sortable
|
sortable
|
||||||
label="新车型实施日期">
|
label="新车型实施日期">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="prodPutTime"
|
prop="prodPutTime"
|
||||||
width="150px"
|
|
||||||
sortable
|
sortable
|
||||||
label="在产车实施日期">
|
label="在产车实施日期">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
|
||||||
show-overflow-tooltip
|
|
||||||
prop="ZRBMName"
|
|
||||||
width="150px"
|
|
||||||
label="责任部门">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="proEssessUser"
|
prop="proEssessUser"
|
||||||
@@ -292,11 +300,11 @@
|
|||||||
<el-button
|
<el-button
|
||||||
class="common-button-default export-button"
|
class="common-button-default export-button"
|
||||||
size="mini" @click="exportAccessInfo('apart')"
|
size="mini" @click="exportAccessInfo('apart')"
|
||||||
v-btn-permission="'98c9556f5ae1590b4c2eb7d8ae2526dd'"
|
v-btn-permission="''"
|
||||||
><i class="iconfont"></i>导出</el-button>
|
><i class="iconfont"></i>导出</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
class="common-button-default delete-button"
|
class="common-button-default delete-button"
|
||||||
v-btn-permission="'c998c341816ecade73493fca3051cb1e'"
|
v-btn-permission="''"
|
||||||
size="mini" @click="deleteSelectSarAccessInfo"
|
size="mini" @click="deleteSelectSarAccessInfo"
|
||||||
v-if="!disabledFlag"
|
v-if="!disabledFlag"
|
||||||
><i class="iconfont"></i>删除</el-button>
|
><i class="iconfont"></i>删除</el-button>
|
||||||
@@ -327,59 +335,31 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="name"
|
prop="standName"
|
||||||
width="180px"
|
label="标准名称"
|
||||||
label="中文名称"
|
width="260px"
|
||||||
fixed="left"
|
|
||||||
>
|
>
|
||||||
<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>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="enName"
|
prop="isSubTime"
|
||||||
width="180px"
|
sortable
|
||||||
fixed="left"
|
label="发布日期">
|
||||||
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>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="newPutTime"
|
prop="newPutTime"
|
||||||
width="190px"
|
|
||||||
label="发布日期"
|
|
||||||
sortable
|
sortable
|
||||||
>
|
label="新车型实施日期">
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
prop="newPutTime"
|
|
||||||
width="190px"
|
|
||||||
label="新车型实施日期"
|
|
||||||
sortable
|
|
||||||
>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
prop="prodPutTime"
|
prop="prodPutTime"
|
||||||
width="190px"
|
|
||||||
label="在产车实施日期"
|
|
||||||
sortable
|
sortable
|
||||||
>
|
label="在产车实施日期">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="applyArcticId"
|
|
||||||
width="120px"
|
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
label="适用车型">
|
prop="proEssessUser"
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
prop="applyArcticId"
|
|
||||||
width="120px"
|
width="120px"
|
||||||
show-overflow-tooltip
|
|
||||||
label="文本状态">
|
label="文本状态">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@@ -490,8 +470,10 @@ export default {
|
|||||||
energyKind: '',
|
energyKind: '',
|
||||||
type: '',
|
type: '',
|
||||||
relateFile: '',
|
relateFile: '',
|
||||||
remark: '' // 清单说明
|
remark: '' ,// 清单说明
|
||||||
|
applicationScope: '' , //适用领域
|
||||||
},
|
},
|
||||||
|
applyOptions: [], //适用领域list
|
||||||
fileInfoList: [], // 上传的附件
|
fileInfoList: [], // 上传的附件
|
||||||
uploadFileListPath: 'api/att/attFile/upload', // 上传的地址
|
uploadFileListPath: 'api/att/attFile/upload', // 上传的地址
|
||||||
// 新增、编辑 基础信息验证条件
|
// 新增、编辑 基础信息验证条件
|
||||||
@@ -711,7 +693,7 @@ export default {
|
|||||||
accessType: '',
|
accessType: '',
|
||||||
id: '',
|
id: '',
|
||||||
standType: 'INLAND', // 标准分类
|
standType: 'INLAND', // 标准分类
|
||||||
// country: 'CN', // 适用区域
|
country: 'CN', // 适用区域
|
||||||
standSort: '', // 标准类别
|
standSort: '', // 标准类别
|
||||||
standNumber: '', // 标准编号
|
standNumber: '', // 标准编号
|
||||||
standYear: '', // 标准年份
|
standYear: '', // 标准年份
|
||||||
@@ -2184,7 +2166,8 @@ export default {
|
|||||||
this.regionOptions = res.data.REGION // 基础信息 区域list
|
this.regionOptions = res.data.REGION // 基础信息 区域list
|
||||||
this.applyArcticOptions = res.data.PRODUCTTYPE || [] // 基础车型 适用车型list
|
this.applyArcticOptions = res.data.PRODUCTTYPE || [] // 基础车型 适用车型list
|
||||||
this.energyKindOptions = res.data.ENERGYTYPES || [] // 能源种类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.standNatureOptions = res.data.SARPROPERTY // 新增 标准性质
|
||||||
this.accessSarTypeOptions = res.data.REQUESTTYPE // 数据搜索 要求类型
|
this.accessSarTypeOptions = res.data.REQUESTTYPE // 数据搜索 要求类型
|
||||||
this.standSortOptions = res.data.STANDCLASSIFY // 标准类别
|
this.standSortOptions = res.data.STANDCLASSIFY // 标准类别
|
||||||
|
|||||||
+37
-105
@@ -13,6 +13,24 @@
|
|||||||
<el-form-item label="项目名称" prop="projectName" class="search-item">
|
<el-form-item label="项目名称" prop="projectName" class="search-item">
|
||||||
<el-input v-model="sarAccessEO.projectName" :disabled="disabledFlag" placeholder="请输入"></el-input>
|
<el-input v-model="sarAccessEO.projectName" :disabled="disabledFlag" placeholder="请输入"></el-input>
|
||||||
</el-form-item>
|
</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/>
|
<br/><br/>
|
||||||
<el-form-item label="清单说明" prop="remark" class="search-item max-search-item2">
|
<el-form-item label="清单说明" prop="remark" class="search-item max-search-item2">
|
||||||
<el-input
|
<el-input
|
||||||
@@ -193,37 +211,27 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="name"
|
prop="standName"
|
||||||
label="中文名称"
|
label="标准名称"
|
||||||
width="260px"
|
width="260px"
|
||||||
fixed="left"
|
|
||||||
>
|
>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="enName"
|
prop="isSubTime"
|
||||||
label="英文名称"
|
sortable
|
||||||
width="260px"
|
label="发布日期">
|
||||||
>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="newPutTime"
|
prop="newPutTime"
|
||||||
width="150px"
|
|
||||||
sortable
|
sortable
|
||||||
label="新车型实施日期">
|
label="新车型实施日期">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="prodPutTime"
|
prop="prodPutTime"
|
||||||
width="150px"
|
|
||||||
sortable
|
sortable
|
||||||
label="在产车实施日期">
|
label="在产车实施日期">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
|
||||||
show-overflow-tooltip
|
|
||||||
prop="ZRBMName"
|
|
||||||
width="150px"
|
|
||||||
label="责任部门">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="proEssessUser"
|
prop="proEssessUser"
|
||||||
@@ -327,59 +335,31 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="name"
|
prop="standName"
|
||||||
width="180px"
|
label="标准名称"
|
||||||
label="中文名称"
|
width="260px"
|
||||||
fixed="left"
|
|
||||||
>
|
>
|
||||||
<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>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="enName"
|
prop="isSubTime"
|
||||||
width="180px"
|
sortable
|
||||||
fixed="left"
|
label="发布日期">
|
||||||
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>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="newPutTime"
|
prop="newPutTime"
|
||||||
width="190px"
|
|
||||||
label="发布日期"
|
|
||||||
sortable
|
sortable
|
||||||
>
|
label="新车型实施日期">
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
prop="newPutTime"
|
|
||||||
width="190px"
|
|
||||||
label="新车型实施日期"
|
|
||||||
sortable
|
|
||||||
>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
prop="prodPutTime"
|
prop="prodPutTime"
|
||||||
width="190px"
|
|
||||||
label="在产车实施日期"
|
|
||||||
sortable
|
sortable
|
||||||
>
|
label="在产车实施日期">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="applyArcticId"
|
|
||||||
width="120px"
|
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
label="适用车型">
|
prop="proEssessUser"
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
prop="applyArcticId"
|
|
||||||
width="120px"
|
width="120px"
|
||||||
show-overflow-tooltip
|
|
||||||
label="文本状态">
|
label="文本状态">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@@ -490,9 +470,11 @@ export default {
|
|||||||
energyKind: '',
|
energyKind: '',
|
||||||
type: '',
|
type: '',
|
||||||
relateFile: '',
|
relateFile: '',
|
||||||
remark: '' // 清单说明
|
remark: '' ,// 清单说明
|
||||||
|
applicationScope: '', //适用领域
|
||||||
},
|
},
|
||||||
fileInfoList: [], // 上传的附件
|
fileInfoList: [], // 上传的附件
|
||||||
|
applyOptions:[], //适用领域
|
||||||
uploadFileListPath: 'api/att/attFile/upload', // 上传的地址
|
uploadFileListPath: 'api/att/attFile/upload', // 上传的地址
|
||||||
// 新增、编辑 基础信息验证条件
|
// 新增、编辑 基础信息验证条件
|
||||||
sarAccessEORules: {
|
sarAccessEORules: {
|
||||||
@@ -616,56 +598,6 @@ export default {
|
|||||||
{required: true, type: 'string', message: '英文名称不能为空', trigger: 'blur'},
|
{required: true, type: 'string', message: '英文名称不能为空', trigger: 'blur'},
|
||||||
{type: 'string', max: 1000, message: '英文名称不能超过1000个字符', trigger: 'change'}
|
{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: [
|
authObjOptions: [
|
||||||
@@ -2185,7 +2117,7 @@ export default {
|
|||||||
this.regionOptions = res.data.REGION // 基础信息 区域list
|
this.regionOptions = res.data.REGION // 基础信息 区域list
|
||||||
this.applyArcticOptions = res.data.PRODUCTTYPE || [] // 基础车型 适用车型list
|
this.applyArcticOptions = res.data.PRODUCTTYPE || [] // 基础车型 适用车型list
|
||||||
this.energyKindOptions = res.data.ENERGYTYPES || [] // 能源种类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.standNatureOptions = res.data.SARPROPERTY // 新增 标准性质
|
||||||
this.accessSarTypeOptions = res.data.REQUESTTYPE // 数据搜索 要求类型
|
this.accessSarTypeOptions = res.data.REQUESTTYPE // 数据搜索 要求类型
|
||||||
this.standSortOptions = res.data.STANDCLASSIFY // 标准类别
|
this.standSortOptions = res.data.STANDCLASSIFY // 标准类别
|
||||||
|
|||||||
@@ -3,26 +3,17 @@
|
|||||||
<div id="domesticStandardDatabase" :class="{ 'tree-close': sideClose }" class="demo-spin-article v-class">
|
<div id="domesticStandardDatabase" :class="{ 'tree-close': sideClose }" class="demo-spin-article v-class">
|
||||||
<div class="tree-content" :class="{ 'tree-closed': sideClose }">
|
<div class="tree-content" :class="{ 'tree-closed': sideClose }">
|
||||||
<div class="tree">
|
<div class="tree">
|
||||||
<laws-tree :zNodes="zNodes"
|
<el-tree
|
||||||
ref="domesticTree"
|
ref="tree"
|
||||||
treeDivId="domesticTree"
|
node-key="id"
|
||||||
showRMenu
|
class="filter-tree"
|
||||||
deptSelect
|
:props="props"
|
||||||
autoSelect
|
:data="treeList"
|
||||||
add-id="Q8SLTYESAL"
|
highlight-current
|
||||||
edit-id="94V5KRZUJF"
|
@node-click="treeClick"
|
||||||
remove-id="5F7U4B2Q24"
|
default-expand-all
|
||||||
:drag="hasPermissionDrag"
|
:expand-on-click-node="false">
|
||||||
drag-bind=".drag-table"
|
</el-tree>
|
||||||
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>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }">
|
<div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }">
|
||||||
<!--切换折叠样式-->
|
<!--切换折叠样式-->
|
||||||
@@ -142,7 +133,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="标准号"
|
label="标准号"
|
||||||
width="170px"
|
width="200px"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<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-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
|
<el-table-column
|
||||||
prop="standName"
|
prop="standName"
|
||||||
label="标准名称"
|
label="标准名称"
|
||||||
|
width="250px"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||||||
@@ -160,7 +152,7 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
prop="issueTime"
|
prop="issueTime"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
width="110px"
|
width="170px"
|
||||||
label="发布日期">
|
label="发布日期">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{ formatIssueDate(scope.row.issueTime) }}
|
{{ formatIssueDate(scope.row.issueTime) }}
|
||||||
@@ -169,7 +161,6 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
prop="xcxssrq"
|
prop="xcxssrq"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
width="150px"
|
|
||||||
label="新车型实施日期">
|
label="新车型实施日期">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ formatText(scope.row.XCXSSRQ) }}</span>
|
<span>{{ formatText(scope.row.XCXSSRQ) }}</span>
|
||||||
@@ -178,7 +169,6 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
prop="zccssrq"
|
prop="zccssrq"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
width="150px"
|
|
||||||
label="在产车实施日期">
|
label="在产车实施日期">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ formatText(scope.row.ZCCSSRQ) }}</span>
|
<span>{{ formatText(scope.row.ZCCSSRQ) }}</span>
|
||||||
@@ -961,6 +951,11 @@ export default {
|
|||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
props: {
|
||||||
|
label: 'menuName',
|
||||||
|
children: 'children'
|
||||||
|
},
|
||||||
|
treeList: [],
|
||||||
visibleOrgTable: false,
|
visibleOrgTable: false,
|
||||||
orgTableVal: '',
|
orgTableVal: '',
|
||||||
orgTableValName: '',
|
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) {
|
treeClick (treeNode) {
|
||||||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
|
||||||
this.standCommonlySearch.menuId = treeNode.id
|
this.standCommonlySearch.menuId = treeNode.id
|
||||||
this.sarStandardsSearch.menuId = treeNode.id // 将当前二级菜单的id传回后台做标准的条件查询
|
this.sarStandardsSearch.menuId = treeNode.id // 将当前二级菜单的id传回后台做标准的条件查询
|
||||||
this.sarStandardsSearch.page = 1
|
this.sarStandardsSearch.page = 1
|
||||||
this.standCommonlySearch.page = 1
|
this.standCommonlySearch.page = 1
|
||||||
this.getDomesticStandardTable(this.tableFlag) // 根据选中的二级菜单查询对应的标准列表
|
this.getDomesticStandardTable(this.tableFlag)
|
||||||
},
|
|
||||||
treeRightClick (treeNode) {
|
|
||||||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
|
||||||
this.standCommonlySearch.menuId = treeNode.id
|
|
||||||
this.sarStandardsSearch.menuId = treeNode.id
|
|
||||||
},
|
},
|
||||||
// 点击搜索按钮
|
// 点击搜索按钮
|
||||||
searchBtnClick (standCommonlySearch) {
|
searchBtnClick (standCommonlySearch) {
|
||||||
@@ -1906,43 +1809,12 @@ export default {
|
|||||||
},
|
},
|
||||||
// 查询二级菜单
|
// 查询二级菜单
|
||||||
selectMenu () {
|
selectMenu () {
|
||||||
return new Promise((resolve, reject) => {
|
this.$http.get('sarResource/ts-resource', {
|
||||||
this.$http.get('lawss/sarMenu/selectMenuByRole', {sorDivide: 'INLAND_STAND'}, {
|
sorDivide: 'INLAND_STAND'
|
||||||
_this: this
|
}, {}, res => {
|
||||||
}, res => {
|
if (res.ok) {
|
||||||
let treeNode = []
|
this.treeList = res.data
|
||||||
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)
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 树-删除
|
// 树-删除
|
||||||
@@ -2446,7 +2318,12 @@ export default {
|
|||||||
}
|
}
|
||||||
// this.sarStandardsSearch.menuId = this.selectSarMenu.id
|
// this.sarStandardsSearch.menuId = this.selectSarMenu.id
|
||||||
const formData = {...data}
|
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
|
formData.orderBy = this.orderBy
|
||||||
// 处理我的收藏和个性化标签传参
|
// 处理我的收藏和个性化标签传参
|
||||||
|
|||||||
@@ -3,27 +3,17 @@
|
|||||||
<div id="foreignStandardsAndRegulations" :class="{ 'tree-close': sideClose }" class="demo-spin-article v-class">
|
<div id="foreignStandardsAndRegulations" :class="{ 'tree-close': sideClose }" class="demo-spin-article v-class">
|
||||||
<div class="tree-content" :class="{ 'tree-closed': sideClose }">
|
<div class="tree-content" :class="{ 'tree-closed': sideClose }">
|
||||||
<div class="tree">
|
<div class="tree">
|
||||||
<laws-tree :zNodes="zNodes"
|
<el-tree
|
||||||
ref="domesticTree"
|
ref="tree"
|
||||||
treeDivId="domesticTree"
|
node-key="id"
|
||||||
showRMenu
|
class="filter-tree"
|
||||||
deptSelect
|
:props="props"
|
||||||
autoSelect
|
:data="treeList"
|
||||||
add-id="QE4VD4BUQY"
|
highlight-current
|
||||||
edit-id="NR9VRJ3VY3"
|
@node-click="treeClick"
|
||||||
remove-id="NTUFYC8TCC"
|
default-expand-all
|
||||||
:drag="hasPermissionDrag"
|
:expand-on-click-node="false">
|
||||||
drag-bind=".drag-table"
|
</el-tree>
|
||||||
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>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }">
|
<div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }">
|
||||||
<!--切换折叠样式-->
|
<!--切换折叠样式-->
|
||||||
@@ -934,6 +924,11 @@ export default {
|
|||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
treeList: [],
|
||||||
|
props: {
|
||||||
|
label: 'menuName',
|
||||||
|
children: 'children'
|
||||||
|
},
|
||||||
menuTreeLoading: true,
|
menuTreeLoading: true,
|
||||||
orderBy:'',
|
orderBy:'',
|
||||||
nowOrder:'',
|
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) {
|
treeClick (treeNode) {
|
||||||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
this.selectSarMenu = treeNode
|
||||||
this.standCommonlySearch.menuId = treeNode.id
|
this.standCommonlySearch.menuId = treeNode.id
|
||||||
this.standCommonlySearch.page = 1
|
this.standCommonlySearch.page = 1
|
||||||
this.getDomesticStandardTable() // 根据选中的二级菜单查询对应的标准列表
|
this.getDomesticStandardTable()
|
||||||
},
|
|
||||||
treeRightClick (treeNode) {
|
|
||||||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
|
||||||
this.standCommonlySearch.menuId = treeNode.id
|
|
||||||
},
|
},
|
||||||
// 点击搜索按钮
|
// 点击搜索按钮
|
||||||
searchBtnClick () {
|
searchBtnClick () {
|
||||||
@@ -1828,40 +1733,12 @@ export default {
|
|||||||
},
|
},
|
||||||
// 查询二级菜单
|
// 查询二级菜单
|
||||||
selectMenu () {
|
selectMenu () {
|
||||||
return new Promise((resolve, reject) => {
|
this.$http.get('sarResource/ts-resource', {
|
||||||
this.$http.get('lawss/sarMenu/selectMenuByRole', {sorDivide: 'FOREIGN_STAND'}, {
|
sorDivide: 'FOREIGN_STAND'
|
||||||
_this: this
|
}, {}, res => {
|
||||||
}, res => {
|
if (res.ok) {
|
||||||
let treeNode = []
|
this.treeList = res.data
|
||||||
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)
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 树-删除
|
// 树-删除
|
||||||
@@ -2416,7 +2293,11 @@ export default {
|
|||||||
data.sarStandardsSearch = ''
|
data.sarStandardsSearch = ''
|
||||||
}
|
}
|
||||||
const formData = {...data}
|
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.nowOrderBy = this.nowOrder ? this.orderBy : ''
|
||||||
formData.nowOrder = this.nowOrder
|
formData.nowOrder = this.nowOrder
|
||||||
// 处理我的收藏和个性化标签传参
|
// 处理我的收藏和个性化标签传参
|
||||||
@@ -2437,7 +2318,6 @@ export default {
|
|||||||
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', formData, {
|
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', formData, {
|
||||||
_this: this, loading: 'loading'
|
_this: this, loading: 'loading'
|
||||||
}, res => {
|
}, res => {
|
||||||
console.log('2441',formData);
|
|
||||||
this.isAdvancedSearch = false
|
this.isAdvancedSearch = false
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
for (let i = 0; i < res.data.list.length; i++) {
|
for (let i = 0; i < res.data.list.length; i++) {
|
||||||
|
|||||||
@@ -1211,13 +1211,13 @@ export default {
|
|||||||
handlePreview (row) {
|
handlePreview (row) {
|
||||||
this.$store.commit('setDetailMap', this.$route.path)
|
this.$store.commit('setDetailMap', this.$route.path)
|
||||||
this.$store.commit('setLocalProData', JSON.stringify(row))
|
this.$store.commit('setLocalProData', JSON.stringify(row))
|
||||||
if (!this.$hasPermission('XTR2AJYDAN4J7GALXDW9')){
|
// if (!this.$hasPermission('XTR2AJYDAN4J7GALXDW9')){
|
||||||
this.$message({
|
// this.$message({
|
||||||
message: '无权访问',
|
// message: '无权访问',
|
||||||
type: 'warning'
|
// type: 'warning'
|
||||||
})
|
// })
|
||||||
return
|
// return
|
||||||
}
|
// }
|
||||||
this.$http.get('sarStandProjectLibrary/queryById', {
|
this.$http.get('sarStandProjectLibrary/queryById', {
|
||||||
id: row.id
|
id: row.id
|
||||||
}, {
|
}, {
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ export default {
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
background-color: #FFFFFF;
|
background-color: #FFFFFF;
|
||||||
.non-content {
|
.non-content {
|
||||||
|
padding: 0 10px;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
/deep/ .el-tabs {
|
/deep/ .el-tabs {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -258,6 +258,69 @@ const routes = [
|
|||||||
title: '标准清单发布/更新流程'
|
title: '标准清单发布/更新流程'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/bzqdfbStep3',
|
||||||
|
name: 'bzqdfbStep3',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzqdfb/step3.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准清单发布/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzqdfbStep4',
|
||||||
|
name: 'bzqdfbStep4',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzqdfb/step4.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准清单发布/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep1',
|
||||||
|
name: 'wfhxzgStep1',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step1.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep2',
|
||||||
|
name: 'wfhxzgStep2',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step2.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改发布/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep3',
|
||||||
|
name: 'wfhxzgStep3',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step3.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep4',
|
||||||
|
name: 'wfhxzgStep4',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step4.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep5',
|
||||||
|
name: 'wfhxzgStep5',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step5.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/bzrkStep1',
|
path: '/bzrkStep1',
|
||||||
name: 'bzrkStep1',
|
name: 'bzrkStep1',
|
||||||
@@ -312,6 +375,24 @@ const routes = [
|
|||||||
title: '标准调研流程'
|
title: '标准调研流程'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/bzdyStep2',
|
||||||
|
name: 'bzdyStep2',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzdy/step2.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准调研流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzdyStep3',
|
||||||
|
name: 'bzdyStep3',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzdy/step3.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准调研流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/zqyjStep1',
|
path: '/zqyjStep1',
|
||||||
name: 'zqyjStep1',
|
name: 'zqyjStep1',
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
// 服务器地址
|
// 服务器地址
|
||||||
// const devIp = '39.98.140.126'
|
// const devIp = '39.98.140.126'
|
||||||
// const devInterfacePORT = '10005'
|
// const devInterfacePORT = '10005'
|
||||||
const devIp = '192.168.10.53'
|
const devIp = '192.168.10.248'
|
||||||
const devInterfacePORT = '9999'
|
const devInterfacePORT = '9999'
|
||||||
// 云端端口号
|
// 云端端口号
|
||||||
const DEV_CLOUD_RES_INTERFACE_PORT = '7777'
|
const DEV_CLOUD_RES_INTERFACE_PORT = '7777'
|
||||||
|
|||||||
Reference in New Issue
Block a user