标准征求意见流程
This commit is contained in:
@@ -0,0 +1,451 @@
|
||||
<template>
|
||||
<div class="bzzqyjStep1">
|
||||
<!-- 标准征求意见流程-->
|
||||
<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;">
|
||||
<el-form
|
||||
ref="bzzqyjForm"
|
||||
:model="form"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="prc-content-border">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="选择征求意见" class="add-form-item form-item-disabled">
|
||||
<div class="addButton">
|
||||
<el-button size="small" type="primary" @click="addZqyjList">选择征求意见</el-button>
|
||||
</div>
|
||||
|
||||
</el-form-item>
|
||||
<el-form-item label="标准编号" prop="cid" class="add-form-item form-item-disabled">
|
||||
<el-select v-model="form.cid" placeholder="请选择标准编号">
|
||||
<el-option label="GB 472726" value="1"></el-option>
|
||||
<el-option label="GB/T 8453291" value="2"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="cname" class="add-form-item form-item-disabled">
|
||||
<el-select v-model="form.cname" placeholder="请选择标准名称">
|
||||
<el-option label="标准1" value="1"></el-option>
|
||||
<el-option label="标准2" value="2"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="征求意见结束日期" prop="endTime" class="add-form-item form-item-disabled">
|
||||
<el-date-picker
|
||||
v-model="form.endTime"
|
||||
type="date"
|
||||
placeholder="请选择结束日期">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content" v-if="active === '2'">
|
||||
<div class="block" style="padding-top: 20px;">
|
||||
<el-timeline>
|
||||
<el-form
|
||||
ref="Form"
|
||||
:model="roleForm"
|
||||
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 v-model="roleForm.startUserName" placeholder="流程发起人"/>
|
||||
</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
|
||||
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="mainUserName" style="margin-bottom: 0">
|
||||
<h4>责任人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.mainUser" style="display: none;"/>
|
||||
<el-input
|
||||
v-model="roleForm.mainUserName"
|
||||
placeholder="选择责任人·"
|
||||
@click.native="choiceZRR('mainUser', '选择责任人', roleForm.mainUser)"
|
||||
/>
|
||||
</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="engineerUserName" style="margin-bottom: 0">
|
||||
<h4>标准法规工程师</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.engineerUser" style="display: none;"/>
|
||||
<el-input
|
||||
v-model="roleForm.engineerUserName"
|
||||
placeholder="选择标准法规工程师"
|
||||
@click.native="choiceZRR('engineerUser', '选择标准法规工程师', roleForm.engineerUser)"
|
||||
/>
|
||||
</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="checkUserName" style="margin-bottom: 0">
|
||||
<h4>责任对接人,标准法规部门负责人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.checkUser" style="display: none;"/>
|
||||
<el-input
|
||||
v-model="roleForm.checkUserName"
|
||||
placeholder="选择责任对接人,标准法规部门负责人"
|
||||
@click.native="choiceZRR('checkUser', '选择责任对接人,标准法规部门负责人', roleForm.checkUserName)"
|
||||
/>
|
||||
</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="标准征求意见数据库"
|
||||
:visible.sync="listModel"
|
||||
size="900px"
|
||||
custom-class="demo-drawer"
|
||||
>
|
||||
<div class="standardForComments">
|
||||
<!-- 顶部工具栏 -->
|
||||
<table-tools-bar>
|
||||
<div slot="left">
|
||||
<div class="search-area">
|
||||
<el-form :model="standCommonlySearch" inline class="label-input-form">
|
||||
<el-formItem label="类别" class="search-item">
|
||||
<el-input v-model="standCommonlySearch.categorg" class="s-c-input" placeholder="标准/政策" clearable :maxlength="100"></el-input>
|
||||
</el-formItem>
|
||||
<el-formItem label="关键字" class="search-item">
|
||||
<el-input v-model="standCommonlySearch.cname" class="s-c-input" placeholder="请输入关键字" clearable :maxlength="100"></el-input>
|
||||
</el-formItem>
|
||||
<el-formItem label="开始日期" class="search-item">
|
||||
<el-datePicker v-model="standCommonlySearch.start" :editable="false"
|
||||
placeholder="请选择开始日期"></el-datePicker>
|
||||
</el-formItem>
|
||||
<el-formItem label="结束日期" class="search-item">
|
||||
<el-datePicker v-model="standCommonlySearch.end" :editable="false"
|
||||
placeholder="请选择结束日期"></el-datePicker>
|
||||
</el-formItem>
|
||||
<el-formItem class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
|
||||
@click="sarStandCompareHisInfo">查询</el-button>
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="mini"
|
||||
@click="clearSearchStand">清空</el-button>
|
||||
</el-formItem>
|
||||
</el-form>
|
||||
</div>
|
||||
</div>
|
||||
</table-tools-bar>
|
||||
<div class="content">
|
||||
<div class="table-wrap">
|
||||
<div style="position: absolute;height: calc(100% - 10px);width: 100%;">
|
||||
<el-table
|
||||
ref="selection"
|
||||
:data="standInfoList"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;padding:0 0 20px 0;"
|
||||
height="100%"
|
||||
border
|
||||
@selection-change="handleSelection"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column prop="category" label="标准" align="center"/>
|
||||
<el-table-column prop="cname" label="标准名称/政策名称" align="center"/>
|
||||
<el-table-column prop="endTime" label="征求意见周期" align="center"/>
|
||||
<el-table-column prop="startTime" label="上传时间" align="center"/>
|
||||
</el-table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<pagination :page="standCommonlySearch.page" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
||||
<loading :loading="spinShow">数据加载中……</loading>
|
||||
<div class="demo-drawer-footer">
|
||||
<el-button size="mini" @click="closeDrawer">取消</el-button>
|
||||
<el-button type="primary" size="mini" @click="enterDrawer">带入</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</el-drawer>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
<script>
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
|
||||
export default {
|
||||
name: "bzzqyjStep1",
|
||||
data() {
|
||||
return {
|
||||
textarea: '', // 意见
|
||||
title: '', // 新增抽屉标题
|
||||
listModel: false, // 新增抽屉开关
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
// 基础信息form表单
|
||||
form: {
|
||||
cid: '', // 编号
|
||||
endTime: '', // 结束日期
|
||||
cname: '', // 名称
|
||||
},
|
||||
// 标准征求意见数据可库
|
||||
standCommonlySearch: {
|
||||
categorg: '',
|
||||
cname: '',
|
||||
start: '',
|
||||
end: '',
|
||||
page: 1,
|
||||
size: this.$store.getters.userInfo.configContent
|
||||
},
|
||||
spinShow: false,
|
||||
standInfoList: [],
|
||||
tableHeight: null,
|
||||
total: 0,
|
||||
selectedList: [],
|
||||
data: [],
|
||||
roleForm: {
|
||||
startUserName: this.$store.getters.userInfo.userName,
|
||||
startUser: this.$store.getters.userInfo.userId,
|
||||
dockUser: '',
|
||||
dockUserName: '',
|
||||
mainUser: '',
|
||||
mainUserName: '',
|
||||
engineerUser: '',
|
||||
engineerUserName: '',
|
||||
checkUser: '',
|
||||
checkUserName: '',
|
||||
}
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
mounted () {
|
||||
this.sarStandCompareHis()
|
||||
this.tableHeight = $('.content').height() - 44
|
||||
window.onresize = () => {
|
||||
this.tableHeight = $('.content').height() - 44
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
addZqyjList() {
|
||||
this.title = '标准征求意见库'
|
||||
this.listModel = true
|
||||
},
|
||||
|
||||
/** 标准征求意见库方法*
|
||||
* **********************************************/
|
||||
// 清空
|
||||
clearSearchStand () {
|
||||
this.standCommonlySearch.page = 1
|
||||
this.standCommonlySearch.start = ''
|
||||
this.standCommonlySearch.end = ''
|
||||
this.standCommonlySearch.categorg = ''
|
||||
this.standCommonlySearch.cname = ''
|
||||
this.sarStandCompareHis()
|
||||
},
|
||||
// 搜索
|
||||
sarStandCompareHisInfo() {
|
||||
this.splitInfoPage = 1
|
||||
this.sarStandCompareHis()
|
||||
},
|
||||
// 查询表格
|
||||
sarStandCompareHis () {
|
||||
this.spinShow = true
|
||||
var form = this.standCommonlySearch
|
||||
this.$http.get('slrs/sar-public-idea/SelectAllPage', form, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.standInfoList = res.data.records
|
||||
this.total = res.data.total
|
||||
this.spinShow = false
|
||||
}, e => {
|
||||
})
|
||||
},
|
||||
pageChange (page) {
|
||||
this.standCommonlySearch.page = page
|
||||
this.sarStandCompareHis()
|
||||
},
|
||||
// 分页每页显示数改变后方法
|
||||
pageSizeChange (pageSize) {
|
||||
this.$store.getters.userInfo.configContent = pageSize
|
||||
this.standCommonlySearch.size = pageSize
|
||||
this.sarStandCompareHis()
|
||||
},
|
||||
/** 选择带入数据的方法操作
|
||||
* */
|
||||
handleSelection(data) {
|
||||
this.selectedList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectedList.push(data[i].id);
|
||||
}
|
||||
},
|
||||
closeDrawer() {
|
||||
this.listModel = false
|
||||
},
|
||||
enterDrawer() {
|
||||
if (this.selectedList.length === 1) {
|
||||
let deposit = new Map();
|
||||
this.standInfoList.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]));
|
||||
}
|
||||
console.log(bringData)
|
||||
this.form.cid = bringData[0].cid
|
||||
this.form.cname = bringData[0].cname;
|
||||
this.form.endTime = bringData[0].endTime;
|
||||
this.listModel = false;
|
||||
} else if (this.selectedList.length > 1) {
|
||||
this.$message.warning("只能选择一条数据进行带入");
|
||||
} else {
|
||||
this.$message.warning("请选择一条数据进行带入");
|
||||
}
|
||||
},
|
||||
/*** **********************************************/
|
||||
|
||||
/** 流程节点负责人的选择 *****************************/
|
||||
choiceZRR() {
|
||||
// this.choice
|
||||
},
|
||||
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
// 流程也的提交按钮和保存按钮操作
|
||||
handleSave() {},
|
||||
handleSubmit() {}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
@import '~@/assets/styles/mixins';
|
||||
.bzzqyjStep1 {
|
||||
/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;
|
||||
}
|
||||
.standardForComments {
|
||||
height: 100%;
|
||||
background: #fff;
|
||||
.el-divider--horizontal {
|
||||
display: block;
|
||||
height: 1px;
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
}
|
||||
flex-direction: column;
|
||||
.action-bar {
|
||||
margin-bottom: 5px;
|
||||
padding: 0;
|
||||
}
|
||||
.content {
|
||||
flex: auto;
|
||||
overflow: hidden;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
.table-wrap {
|
||||
flex: auto;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
& > .pagination {
|
||||
position: static;
|
||||
/deep/.pagination-slot {
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,13 @@
|
||||
<template>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "step2"
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
@@ -0,0 +1,13 @@
|
||||
<template>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "step3"
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
@@ -0,0 +1,13 @@
|
||||
<template>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "step4"
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
@@ -0,0 +1,13 @@
|
||||
<template>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "step5"
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
@@ -63,7 +63,7 @@ export default {
|
||||
case '3':
|
||||
// 标准征求意见流程
|
||||
this.$router.push({
|
||||
name:'zqyjStep1'
|
||||
name:'bzzqyjStep1'
|
||||
})
|
||||
break
|
||||
case '4':
|
||||
|
||||
+39
-3
@@ -394,9 +394,45 @@ const routes = [
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/zqyjStep1',
|
||||
name: 'zqyjStep1',
|
||||
component: () => import('@/pages/processCenter/pages/creatProcess/zqyj/step1.vue'),
|
||||
path: '/bzzqyjStep1',
|
||||
name: 'bzzqyjStep1',
|
||||
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step1.vue'),
|
||||
meta: {
|
||||
requireAuth: true,
|
||||
title: '标准征求意见流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzzqyjStep2',
|
||||
name: 'bzzqyjStep2',
|
||||
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step2.vue'),
|
||||
meta: {
|
||||
requireAuth: true,
|
||||
title: '标准征求意见流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzzqyjStep3',
|
||||
name: 'bzzqyjStep3',
|
||||
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step3.vue'),
|
||||
meta: {
|
||||
requireAuth: true,
|
||||
title: '标准征求意见流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzzqyjStep4',
|
||||
name: 'bzzqyjStep4',
|
||||
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step4.vue'),
|
||||
meta: {
|
||||
requireAuth: true,
|
||||
title: '标准征求意见流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzzqyjStep5',
|
||||
name: 'bzzqyjStep5',
|
||||
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step5.vue'),
|
||||
meta: {
|
||||
requireAuth: true,
|
||||
title: '标准征求意见流程'
|
||||
|
||||
Reference in New Issue
Block a user