添加汇总页面(企标制修订计划管控)

This commit is contained in:
zyn
2022-12-14 09:37:15 +08:00
parent 9acd7dee72
commit 53945c80d8
3 changed files with 843 additions and 1 deletions
@@ -0,0 +1,833 @@
<template>
<div class="qbzxd-jhgk">
<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" v-if="approvalFlag" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
<div class="headerTabsItem" v-else :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">人员信息</div>
</div>
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto">
<process-title v-if="showFlag">
<template slot="title">基础信息</template>
</process-title>
<el-form
v-if="showFlag"
class="label-input-form prc-content-border"
label-width="150px"
>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="调整类型" class="add-form-item form-item-disabled">
<el-button :disabled="disabledXX" size="small" type="primary" style="margin: 10px;" @click="toggleComName('establish')">立项
</el-button>
<el-button :disabled="disabledXX" size="small" type="primary" style="margin: 10px;" @click="toggleComName('merge')">合并
</el-button>
<el-button :disabled="disabledXX" size="small" type="primary" style="margin: 10px;" @click="toggleComName('delay')">延期
</el-button>
<el-button :disabled="disabledXX" size="small" type="primary" style="margin: 10px;" @click="toggleComName('cancel')">取消
</el-button>
<el-button :disabled="disabledXX" size="small" type="primary" style="margin: 10px;" @click="toggleComName('rename')">更名
</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
<component ref="childForm" :message="qbfsForm" :is="comName"></component>
</div>
<div>
<el-collapse accordion v-model="activeNames">
<el-collapse-item title="回执说明" name="1">
<div style="margin: 10px 0;">
<el-input :disabled="disabledXX"
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
</div>
<loading :loading="formLoading">数据加载中...</loading>
<div class="content" v-show="active === '2'">
<div class="block" style="padding-top: 20px;">
<el-timeline>
<el-form
ref="roleForm"
:roleMessage="roleForm"
:model="roleForm"
:rules="roleFormRules"
class="label-input-form">
<el-timeline-item timestamp="起草" placement="top" :color="roleForm.prcCreateUser ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="prcCreateUserName" style="margin-bottom: 0">
<h4>标准立项申请人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input :disabled="disabledXX" v-model="roleForm.prcCreateUser" style="display: none;"></el-input>
<el-input :disabled="disabledXX" v-model="roleForm.prcCreateUserName" placeholder="标准立项申请人"
disabled></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 :disabled="disabledXX" v-model="roleForm.dockUser" style="display: none;"></el-input>
<el-input :disabled="disabledXX" v-model="roleForm.dockUserName" readonly 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.countersigner ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="countersignerName" style="margin-bottom: 0">
<h4>创新技术委员会成员/标准体系工作组成员(必选)</h4>
<h4>二级研发(部所所长总工中心主任/研究院院长)(可选)</h4>
<h4>质量相关人员(可选)</h4>
<h4>制造部相关人员(可选)</h4>
<h4>采购部相关人员(可选)</h4>
<h4>海外相关人员(可选)</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input :disabled="disabledXX" v-model="roleForm.countersigner" style="display: none;"></el-input>
<el-input :disabled="disabledXX" v-model="roleForm.countersignerName" readonly placeholder="选择会签人员"
@click.native="choiceZRRS">
</el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="审定" placement="top"
:color="roleForm.examine ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="examineName" style="margin-bottom: 0">
<h4>标准体系工作组组长</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input :disabled="disabledXX" v-model="roleForm.examine" style="display: none;"></el-input>
<el-input :disabled="disabledXX" v-model="roleForm.examineName" readonly placeholder="选择标准体系工作组组长"
@click.native="choiceZRR('examine', '选择标准体系工作组组长', roleForm.examine)">
</el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="批准" placement="top"
:color="roleForm.approver ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="approverName" style="margin-bottom: 0">
<h4>标准法规部高级经理</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input :disabled="disabledXX" v-model="roleForm.approver" style="display: none;"></el-input>
<el-input :disabled="disabledXX" v-model="roleForm.approverName" readonly placeholder="选择标准法规部高级经理"
@click.native="choiceZRR('approver', '选择标准法规部高级经理', roleForm.approver)">
</el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<!-- <el-timeline-item timestamp="抄送" placement="top"-->
<!-- :color="roleForm.engineer ? '#66b1ff' : ''">-->
<!-- <el-card>-->
<!-- <el-form-item prop="engineerName" style="margin-bottom: 0">-->
<!-- <h4>相关单位工程研究总院标准法规部</h4>-->
<!-- <div style="margin-top: 10px;width: 300px;">-->
<!-- <el-input :disabled="disabledXX" v-model="roleForm.engineer" style="display: none;"></el-input>-->
<!-- <el-input :disabled="disabledXX" v-model="roleForm.engineerName" readonly placeholder="选择相关单位、工程研究总院标准法规部"-->
<!-- @click.native="choiceZRR('engineer', '选择相关单位、工程研究总院标准法规部', roleForm.engineer)">-->
<!-- </el-input>-->
<!-- </div>-->
<!-- </el-form-item>-->
<!-- </el-card>-->
<!-- </el-timeline-item>-->
</el-form>
</el-timeline>
</div>
</div>
<div class="content" v-show="active === '3'">
<div class="flow-list" style="height: 100%">
<el-table
height="100%"
ref="selection"
:data="detailData"
tooltip-effect="dark"
style="width: 100%"
border
row-key="id"
: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"
>
</el-table-column>
<el-table-column
prop="assignee"
label="任务受理人"
align="center"
>
</el-table-column>
<el-table-column
prop="createTime"
label="创建时间"
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 v-show="!disabledXX"
show-save
show-submit
:submitLoading="isSubmit"
:saveLoading="saveLoading"
@save="handleSave"
@submit="handleSubmit"
>
</ProcessFooter>
<!-- 多选择责任人-->
<Role-tree v-if="!disabledXX"
is-title="选择责任部门对接人"
:is-visible.sync="modalshowflag2"
@checkedRole="checkedRole2"
:nodeList="nodeList2"
></Role-tree>
<!-- 单选人-->
<Role-tree v-if="!disabledXX"
check-box
:is-title="drawerTitle"
:is-visible.sync="modalshowflag"
@checkedRole="checkedRole"
:nodeList="nodeList"
></Role-tree>
</div>
</template>
<script>
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import merge from "process/creatProcess/qbzxdjhgk/component/merge";
import rename from "process/creatProcess/qbzxdjhgk/component/rename";
import establish from "process/creatProcess/qbzxdjhgk/component/establish";
import delay from "process/creatProcess/qbzxdjhgk/component/delay";
import cancel from "process/creatProcess/qbzxdjhgk/component/cancel";
import axios from "axios";
import { saveTaskFirst, queryTaskFirst, inboundLiaisonDetail, taskDel, saveTaskForPub } from "api/process";
export default {
name: "qbzxdjhgkStep1",
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle,
merge,
rename,
establish,
delay,
cancel
},
data() {
return {
activeNames:'1',
disabledXX:!!this.$route.query.disabledXX,
submitFlag: '',
toggleType: '5',
comFlag: 1,
active: "1",
commentText: "",
comName: "establish",
qbfsForm: {},
formLoading: false,
approvalFlag: false,
showFlag: true,
taskIds: '',
bpnId: '',
drawerTitle: "",
nodeList: [],
nodeList2: [],
detailData: [],
isSubmit: false,
saveLoading: false,
modalshowflag: false,
modalshowflag2: false,
loading: false,
roleForm: {
prcCreateUserName: this.$store.getters.userInfo.userName,
prcCreateUser: this.$store.getters.userInfo.userId,
dockUser: "",
dockUserName: "",
countersigner: "",
countersignerName: "",
approver: "",
approverName: "",
engineer: "",
engineerName: "",
examine: "",
examineName: ""
},
//必填人员校验规则
roleFormRules: {
dockUserName: [
{ required: true, message: "请选择标准立项单位整车/系统总工", trigger: "change" }
],
countersignerName:[
{required: true, message:'请选择会签人员', trigger: "change" }
],
examineName:[
{required: true, message:'请选择标准体系工作组组长', trigger: "change" }
],
approverName:[
{required: true, message:'请选择总院技术委员会覆盖领域企业标准:专委会主任/总院技术委员会未覆盖领域企业标准:总院院长或总院主管副院长', trigger: "change" }
],
engineerName:[
{required: true, message:'请选择相关单位、工程研究总院标准法规部', trigger: "change" }
],
}
};
},
mounted() {
this.taskIds = this.$route.query.taskIds
this.bpnId = this.$route.query.bpnId
if (this.bpnId !== undefined) {
this.getData()
}
if(this.taskIds){
this.approvalFlag = true
this.processTable()
//被驳回时调用
this.getHistoryData()
}
},
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 => {
})
},
getData() {
this.formLoading = true
this.showFlag = false
queryTaskFirst({
bpnId: this.$route.query.bpnId
}).then(res => {
let mes = JSON.parse(res.mes)
this.getFormFieldList(mes);
});
},
getHistoryData() {
this.submitFlag = '重新起草'
this.showFlag = false
this.formLoading = true
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId,
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg)
this.getFormFieldList(processForm)
}
}).catch(e => {
})
})
},
/**
* @description: 动态表单读取
*/
getFormFieldList(item) {
console.log(item);
this.toggleType= item.type || item.qbfsForm.type
this.$nextTick(() => {
switch (this.toggleType){
case '1':
this.comName = "merge"
break
case '2':
this.comName = "delay"
break
case '3':
this.comName = "cancel"
break
case '4':
this.comName = "rename"
break
case '5':
this.comName = "establish"
break
}
this.qbfsForm = item.qbfsForm || item;
if (this.qbfsForm.bussSort) {
if(this.qbfsForm.bussSort instanceof Array){
this.qbfsForm.bussSort = this.qbfsForm.bussSort[0]
}else {
let val = this.qbfsForm.bussSort.replace('//',"").replace('["',"").replace('"]',"").toString()
if (val !== '' && val !== null && typeof (val) !== 'undefined') {
if (val instanceof Array) {
this.qbfsForm.bussSort = this.form.bussSort.join(",")[0];
} else {
this.qbfsForm.bussSort = val
}
} else if (val === '') {
this.qbfsForm.bussSort = ""
}
}
} else {
this.qbfsForm.bussSort = ""
}
this.formLoading = false;
// this.commentText = item.commentText
this.roleForm.dockUser = item.dockUser || item.roleForm.dockUser;
this.roleForm.dockUserName = item.dockUserName || item.roleForm.dockUserName;
this.roleForm.countersigner = item.countersigner || item.roleForm.countersigner;
this.roleForm.countersignerName = item.countersignerName || item.roleForm.countersignerName;
this.roleForm.approver = item.approver ||item.roleForm.approver;
this.roleForm.approverName = item.approverName || item.roleForm.approverName;
this.roleForm.engineer = item.engineer || item.roleForm.engineer;
this.roleForm.engineerName = item.engineerName || item.roleForm.engineerName;
this.roleForm.examine = item.examine || item.roleForm.examine;
this.roleForm.examineName = item.examineName || item.roleForm.examineName;
});
},
handleTabs(name) {
this.active = name;
},
toggleComName(name) {
this.qbfsForm = {}
this.comName = name;
if(this.comName === 'merge'){
this.toggleType = '1'
}else if(this.comName === 'delay'){
this.toggleType = '2'
}else if(this.comName === 'cancel'){
this.toggleType = '3'
}else if(this.comName === 'rename'){
this.toggleType = '4'
}else if(this.comName === 'establish'){
this.toggleType = '5'
this.$refs.childForm.saveEditFile()
}
},
//流程保存
handleSave() {
if(this.approvalFlag){
//被驳回后的保存
this.saveLoading = true;
let qbzxdFrom = this.$refs["childForm"].qbfsForm;
qbzxdFrom.type = this.toggleType
qbzxdFrom.commentText = this.commentText
this.saveLoading = true
let _formData = new FormData()
_formData.append("id", this.bpnId || "");
_formData.append("taskIds", this.taskIds);
_formData.append('prcType', '25')
_formData.append('json', JSON.stringify({
roleForm: this.roleForm,
qbfsForm: qbzxdFrom,
commentText: this.commentText
}))
saveTaskForPub(_formData).then(res => {
this.saveLoading = false;
this.$message.success("保存成功");
this.bpnId = res.result;
}).catch(e => {
this.saveLoading = false;
});
}else{
//第一次正常保存
let qbzxdFrom = this.$refs["childForm"].qbfsForm;
qbzxdFrom.type = this.toggleType
this.saveLoading = true
let _formData = new FormData()
_formData.append("id", this.bpnId || "");
_formData.append('createUser', this.$store.getters.userInfo.userId)
_formData.append('createUserName', this.$store.getters.userInfo.userName)
_formData.append('prcType', '25')
_formData.append('json', JSON.stringify({
roleForm: this.roleForm,
qbfsForm: qbzxdFrom,
commentText: this.commentText
}))
saveTaskFirst(_formData).then(res => {
this.saveLoading = false
this.$message.success('保存成功')
this.bpnId = res.result
}).catch(e => {
this.saveLoading = false
})
}
},
addLog(qbzxdFrom){
let json = Object.assign(qbzxdFrom);
this.$http.post("esRevisePlanLog/log/addLog", {
json: JSON.stringify(json)
}, {
_this: this
}, res => {
});
},
//流程提交
handleSubmit() {
if(!this.$refs["childForm"].qbfsForm.type){
this.$refs["childForm"].qbfsForm.type = this.toggleType
}
if(this.comFlag === 0){
this.$message.warning('企标名称已存在,请更改!')
}else {
if (this.$route.query.prcNum === undefined) {
this.$refs["childForm"].validateForm(()=>{
let qbzxdFrom = this.$refs["childForm"].qbfsForm;
this.$refs["roleForm"].validate((valid) => {
if (valid) {
this.isSubmit = true;
qbzxdFrom.commentText = this.commentText;
qbzxdFrom.addFlag = '0'
let json = Object.assign(qbzxdFrom, this.roleForm);
this.$http.post("lawss/activiti/startProcessRollBack", {
createUser: this.$store.getters.userInfo.userId,
createUserName: this.$store.getters.userInfo.userName,
type: '25',
json: JSON.stringify({
roleForm: this.roleForm,
qbfsForm: qbzxdFrom,
commentText: this.commentText
})
}, {
_this: this
}, res => {
if (res.ok) {
this.$http.post("lawss/activiti/completeTask", {
taskIds: res.data,
userId: this.$store.getters.userInfo.userId,
json: JSON.stringify(json)
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
// this.addLog(qbzxdFrom)
if (this.bpnId !== '' && this.bpnId !== undefined) {
let taskId = {
id: this.bpnId
}
taskDel(taskId).then(res=>{
return res
})
}
this.isSubmit = false;
this.$router.push({ path: "/processCenter?tabsName=ProcessCenter" });
}
});
}
});
} else {
this.$message.warning("请完善人员信息");
}
});
});
// if (flag) {
//
// } else {
// this.$message.warning("请完善基础信息");
// }
} else {
let flag = this.$refs["childForm"].validateForm(() => {
let qbzxdFrom = this.$refs["childForm"].qbfsForm;
if(this.$route.query.taskInfo == '重新起草'){
this.isSubmit = true;
qbzxdFrom.commentText = this.commentText;
qbzxdFrom.addFlag = '0'
let json = Object.assign(qbzxdFrom, this.roleForm);
this.$http.post("lawss/activiti/startProcessRollBack", {
createUser: this.$store.getters.userInfo.userId,
createUserName: this.$store.getters.userInfo.userName,
type: '25',
json: JSON.stringify({
roleForm: this.roleForm,
qbfsForm: qbzxdFrom,
commentText: this.commentText
})
}, {
_this: this
}, res => {
if (res.ok) {
this.$http.post("lawss/activiti/completeTask", {
taskIds: res.data,
userId: this.$store.getters.userInfo.userId,
json: JSON.stringify(json)
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
// this.addLog(qbzxdFrom)
if (this.bpnId !== '' && this.bpnId !== undefined) {
let taskId = {
id: this.bpnId
}
taskDel(taskId).then(res=>{
return res
})
}
this.isSubmit = false;
this.$router.push({ path: "/processCenter?tabsName=ProcessCenter" });
}
});
}
});
}else {
this.$refs["roleForm"].validate((valid) => {
if (valid) {
this.isSubmit = true;
qbzxdFrom.commentText = this.commentText;
qbzxdFrom.addFlag = '0'
var json = Object.assign(qbzxdFrom, this.roleForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: JSON.stringify(json)
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.isSubmit = false;
// this.addLog(qbzxdFrom)
this.$router.push({ path: "/processCenter?tabsName=ProcessCenter" });
}
});
} else {
this.$message.warning("请完善人员信息");
}
});
}
});
// if (flag) {
//
// } else {
// this.$message.warning("请完善基础信息");
// }
}
}
},
// 流程阶段负责人选择
choiceZRR(type, title, id) {
this.nodeList = [];
this.nodeList.push(id);
this.type = type;
this.drawerTitle = title;
this.modalshowflag = true;
},
checkedRole(data) {
if (this.type === "dockUser") {
this.roleForm.dockUser = data[0].id;
this.roleForm.dockUserName = data[0].name;
} else if (this.type === "examine") {
this.roleForm.examine = data[0].id;
this.roleForm.examineName = data[0].name;
} else if (this.type === "approver") {
this.roleForm.approver = data[0].id;
this.roleForm.approverName = data[0].name;
} else if (this.type === "engineer") {
this.roleForm.engineer = data[0].id;
this.roleForm.engineerName = data[0].name;
}
this.modalshowflag = false;
},
choiceZRRS() {
this.nodeList2 = [];
if (this.roleForm.countersigner.length > 0) {
this.nodeList2 = this.roleForm.countersigner.split(",");
}
this.modalshowflag2 = true;
},
checkedRole2(data) {
var idList = "";
var nameList = "";
data.forEach(item => {
if (nameList.length > 0) {
nameList += ",";
idList += ",";
}
idList += item.id;
nameList += item.name;
});
this.roleForm.countersigner = idList;
this.roleForm.countersignerName = nameList;
}
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.qbzxd-jhgk {
/deep/ .el-drawer__container {
.prc-content-border {
border: none;
padding: 0 20px 0;
}
}
.fileClass {
cursor: pointer;
}
.fileClass:hover {
color: #0c91e5;
}
p {
& > a {
cursor: pointer;
}
& > i {
display: inline-block;
margin-left: 3px;
width: 18px;
height: 16px;
background-repeat: no-repeat;
background-size: 100% 100%;
background-position: center center;
vertical-align: sub;
cursor: pointer;
}
.icon-download {
background-image: url("~assets/images/shangqi/img/download.png");
}
.icon-download2 {
background-image: url("~assets/images/shangqi/img/download2.png");
}
}
.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%;
}
}
}
.add-form-el-select {
/deep/ .el-select {
width: 210px;
}
}
.demo-drawer-content {
margin-top: 10px;
}
}
</style>
@@ -263,7 +263,7 @@ export default {
this.toProcessDetail('qbfzStep1',row)
}else if(prcType === '25'){
//企标制修订计划管控 1
this.toProcessDetail('qbzxdjhgkStep1',row)
this.toProcessDetail('qbzxdjhgkStep1-1',row)
}else if(prcType === '26'){
//企标制修订计划立项 1
this.toProcessDetail('qbzxdlxStep1',row)
+9
View File
@@ -2309,6 +2309,15 @@ const routes = [
title: '企标制修订计划管控流程'
}
},
{
path: '/qbzxdjhgkStep1-1',
name: 'qbzxdjhgkStep1-1',
component: () => import('@/pages/processCenter/pages/creatProcess/qbzxdjhgk/step1-1.vue'),
meta: {
requireAuth: true,
title: '企标制修订计划管控流程'
}
},
{
path: '/qbzxdjhgkStep2',
name: 'qbzxdjhgkStep2',