Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
zhutianqi
2021-11-17 16:22:19 +08:00
24 changed files with 3162 additions and 183 deletions
+6 -6
View File
@@ -6647,15 +6647,15 @@ var PDFPageView = function () {
//cover.innerText = userInfo.uName + "," + userInfo.workNum;
var defaultSettings = {
watermark_txt: msg,
watermark_x: 0,//水印起始位置x轴坐标
watermark_x: 50,//水印起始位置x轴坐标
watermark_y: 0,//水印起始位置Y轴坐标
watermark_rows: 10,//水印行数
watermark_cols: 10,//水印列数
watermark_x_space: 100,//水印x轴间隔
watermark_y_space: 200,//水印y轴间隔
watermark_cols: 3,//水印列数
watermark_x_space: 30,//水印x轴间隔
watermark_y_space: 100,//水印y轴间隔
watermark_color: 'rgba(192, 192, 192)',//水印字体颜色
watermark_alpha: 0.4,//水印透明度
watermark_fontsize: '56px',//水印字体大小
watermark_alpha: 0.3,//水印透明度
watermark_fontsize: '50px',//水印字体大小
watermark_font: '微软雅黑',//水印字体
watermark_width: 120,//水印宽度
watermark_height: 80,//水印长度
+119 -11
View File
@@ -1,5 +1,7 @@
import axios from '@/common/axiosV2'
/** 协会费用信息统计接口 */
// 获取所有统计数据
export function statisticsAll (data) {
return axios({
@@ -12,7 +14,7 @@ export function statisticsAll (data) {
export function queryStatistics (data) {
return axios({
url: 'api/wgdCensusZ/wgd-assoc-cost/queryAllAssocCosts',
method: 'post',
method: 'get',
params: data
})
}
@@ -21,7 +23,7 @@ export function queryStatistics (data) {
export function queryStatistics (data) {
return axios({
url: 'api/wgdCensusZ/wgd-assoc-cost/getAssocCostById',
method: 'post',
method: 'get',
params: data
})
}
@@ -30,7 +32,7 @@ export function queryStatistics (data) {
export function statisticsEdit (data) {
return axios({
url: 'api/wgdCensusZ/wgd-assoc-cost/modAssocCost',
method: 'post',
method: 'put',
params: data
})
}
@@ -42,18 +44,124 @@ export function statisticsAdd (data) {
params: data
})
}
// 单个数据删除
export function delOnlyOne (data) {
return axios({
url: 'api/wgdCensusZ/wgd-assoc-cost/delAssocCost',
method: 'get',
params: data
})
}
// 多数据删除
export function delMore (data) {
return axios({
url: 'api/wgdCensusZ/wgd-assoc-cost/delAssocCosts',
method: 'delete',
params: data
})
}
/** 参会费用信息统计 */
// 查询
export function meetAll (data) {
return axios({
url: 'api/wgdCensusZ/wgd-meet-cost/queryAllMeetCosts',
method: 'get',
params: data
})
}
// 编辑
export function meetEdit (data) {
return axios({
url: 'api/wgdCensusZ/wgd-meet-cost/modMeetCost',
method: 'put',
params: data
})
}
// 新增
export function meetAdd (data) {
return axios({
url: 'api/wgdCensusZ/wgd-meet-cost/addMeetCost',
method: 'post',
params: data
})
}
// 删除
export function meetDel (data) {
return axios({
url: 'api/wgdCensusZ/wgd-meet-cost/delMeetCosts',
method: 'delete',
params: data
})
}
/** 参与外部标准制修订费用统计 */
// 数据查询
export function reviseAll (data) {
return axios({
url: 'api/wgdCensusZ/wgd-ex-revise-cost/queryAllExReviseCosts',
method: 'get',
params: data
})
}
// 编辑
export function reviseEdit (data) {
return axios({
url: 'api/wgdCensusZ/wgd-ex-revise-cost/modExReviseCost',
method: 'put',
params: data
})
}
// 新增
export function reviseAdd (data) {
return axios({
url: 'api/wgdCensusZ/wgd-ex-revise-cost/addExReviseCost',
method: 'post',
params: data
})
}
export function reviseDel (data) {
return axios({
url: 'api/wgdCensusZ/wgd-ex-revise-cost/delExReviseCosts',
method: 'delete',
params: data
})
}
/** 采购费用信息统计接口 */
// 查询
export function CgfysAll (data) {
return axios({
url: 'api/wgdCensusLeo/wgd-cgfy/queryAllCgfys',
method: 'get',
params: data
})
}
/*// 查询详情
export function CgfyDetail(data) {
return axios({
url: 'api/wgdCensusLeo/wgd-cgfy/getCgfyById',
method: 'get',
params: data
})
}*/
// 编辑接口
export function CgfysEdit (data) {
return axios({
url: 'api/wgdCensusLeo/wgd-cgfy/modCgfy',
method: 'get',
params: data
})
}
// 新增接口
export function CgfysAdd (data) {
return axios({
url: 'api/wgdCensusLeo/wgd-cgfy/addCgfy',
method: 'get',
params: data
})
}
// 单条删除
export function CgfysDelOne (data) {
return axios({
url: 'api/wgdCensusLeo/wgd-cgfy/delCgfy',
method: 'get',
params: data
})
}
// 批量删除
export function CgfysDelMore (data) {
return axios({
url: 'api/wgdCensusLeo/wgd-cgfy/delCgfys',
method: 'get',
params: data
})
@@ -16,7 +16,7 @@
class="label-input-form"
label-width="210px"
>
<div style="flex: auto; overflow: auto;" v-show="active === '1'">
<div style="flex: auto;" v-show="active === '1'">
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
@@ -49,14 +49,14 @@
<el-radio label="2"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item v-show="verifySarStandard" label="标准年份" prop="standYear" class="add-form-item form-item-disabled">
<el-form-item v-if="verifySarStandard" label="标准年份" prop="standYear" class="add-form-item form-item-disabled">
<el-input
v-model.number="form.standYear"
placeholder="请输入标准标准年份"
clearable
></el-input>
</el-form-item>
<el-form-item v-show="verifySarStandard" label="文本状态" prop="textStatus" class="add-form-item form-item-disabled">
<el-form-item v-if="verifySarStandard" label="文本状态" prop="textStatus" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.textStatus" placeholder="请选择文本状态">
<el-option
v-for="item in standStateOptions"
@@ -67,7 +67,7 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item v-show="verifySarStandard" label="标准发布日期" prop="issueTime" class="add-form-item form-item-disabled">
<el-form-item v-if="verifySarStandard" label="标准发布日期" prop="issueTime" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.issueTime"
type="date"
@@ -89,7 +89,7 @@
</el-select>
</el-form-item>
<el-form-item label="标准类别" prop="standSort" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.standSort" placeholder="请选择标准类别">
<el-select :popper-append-to-body="false" filterable v-model="form.standSort" placeholder="请选择标准类别">
<el-option
v-for="item in standSortOptions"
placeholder="请选择"
@@ -126,13 +126,13 @@
根据类别编号中英文名称查询
</el-button>
</el-form-item>
<el-form-item v-show="verifySarStandard" label="是否纳入认证清单" prop="isRelateAccess" class="add-form-item form-item-disabled">
<el-form-item v-if="verifySarStandard" label="是否纳入认证清单" prop="isRelateAccess" class="add-form-item form-item-disabled">
<el-radio-group v-model="form.isRelateAccess">
<el-radio label="1"></el-radio>
<el-radio label="2"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item v-show="verifySarStandard && form.standInData === '0' " label="标准体系" prop="standSystem" class="add-form-item form-item-disabled">
<el-form-item v-if="verifySarStandard && form.standInData === '0' " label="标准体系" prop="standSystem" class="add-form-item form-item-disabled">
<el-input v-model="form.standSystem" placeholder="选择标准体系" @click.native="choiceZRR1('standSystem', '标准体系', form.standSystem)"></el-input>
<tree-select-new
:key="key"
@@ -145,7 +145,7 @@
:defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys"
:nodeKey="nodeKey" @popoverHide="popoverHide" @popoverHideCancel="popoverHideCancel"></tree-select-new>
</el-form-item>
<el-form-item v-show="verifySarStandard && form.standInData === '1'" label="标签" prop="gxhbq" class="add-form-item form-item-disabled">
<el-form-item v-if="verifySarStandard && form.standInData === '1'" label="标签" prop="gxhbq" class="add-form-item form-item-disabled">
<el-input
v-model="form.gxhbq"
placeholder="请输入标签"
@@ -1478,7 +1478,7 @@
],
standYear: [
{ required: true, message: '请输入标准年份'},
{ type: 'number', message: '年标准年份必须为数字值'}
// { type: 'number', message: '年标准年份必须为数字值'}
],
standName: [
{ required: true, message: '请输入标准中文名称', trigger: 'blur' },
@@ -1496,7 +1496,7 @@
]
,
issueTime: [
{ required: true, message: '请选择标准发布日期', trigger: 'change' }
{ required: false, message: '请选择标准发布日期', trigger: 'change' }
],
qcdw: [
{ required: true, message: '请选择起草单位', validator: validateQcdw, trigger: 'change' }
@@ -1474,7 +1474,7 @@ export default {
{ required: true, message: '请选择文本状态', trigger: 'change' }
],
issueTime: [
{ required: true, message: '请选择标准发布日期', trigger: 'change' }
{ required: false, message: '请选择标准发布日期', trigger: 'change' }
],
qcdw: [
{ required: true, message: '请选择起草单位', trigger: 'change' }
@@ -496,7 +496,7 @@ export default {
this.getStandDataBtn()
this.ListModel = true;
},
//企业标准查询this.standardSearch,
//企业标准查询
getStandDataBtn(){
this.$http.get('lawss/sarBussionessStand/getSarBussionStandPage',{
standCode: this.standardSearch.standCode,
@@ -570,7 +570,7 @@ export default {
_formData.append('prcType', '23')
_formData.append('json', JSON.stringify({
roleForm: this.roleForm,
qbfsForm: this.qbfsForm,
qbfsForm: this.standardSearch,
commentText: this.commentText
}))
saveTaskFirst(_formData).then(res => {
@@ -589,9 +589,9 @@ export default {
this.$refs['roleForm'].validate((valid) => {
if (valid) {
this.isSubmit = true
this.qbfsForm.commentText = this.commentText
var json = Object.assign(this.qbfsForm, this.roleForm)
this.$http.get('lawss/activiti/startProcess', {type: '23'}, {
this.standardSearch.commentText = this.commentText
var json = Object.assign(this.standardSearch, this.roleForm)
this.$http.get('lawss/activiti/startProcess', {type: '24'}, {
_this: this
}, res => {
if (res.ok) {
@@ -624,8 +624,8 @@ export default {
this.$refs['roleForm'].validate((valid) => {
if (valid) {
this.isSubmit = true
this.qbfsForm.commentText = this.commentText
var json = Object.assign(this.qbfsForm, this.roleForm)
this.standardSearch.commentText = this.commentText
var json = Object.assign(this.standardSearch, this.roleForm)
this.$http.post('lawss/activiti/completeTask', {
taskIds: res.data,
userId : this.$store.getters.userInfo.userId,
@@ -22,18 +22,18 @@
>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="企标编号" prop="entNumber" class="add-form-item form-item-disabled">
<el-form-item label="企标编号" prop="standCode" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.entNumber"
v-model="qbfsForm.standCode"
placeholder="请输入企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="中文名称" prop="cnName" class="add-form-item form-item-disabled">
<el-form-item label="中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.cnName"
v-model="qbfsForm.standName"
placeholder="请输入中文名称"
clearable
></el-input>
@@ -309,11 +309,29 @@ export default {
},
//流程驳回
beforeBack(){
this.isSubmit = true
this.qbfsForm.passFlag = '1'
this.qbfsForm.commentText = this.commentText
let json = JSON.stringify(this.qbfsForm);
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json,
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message)
this.$router.push('/processCenter')
}
this.isSubmit = false
}, e => {
});
},
//流程提交
handleSubmit(){
this.isSubmit = true
this.qbfsForm.passFlag = '0'
this.qbfsForm.commentText = this.commentText
let json = JSON.stringify(this.qbfsForm);
this.$http.post('lawss/activiti/completeTask', {
@@ -22,18 +22,18 @@
>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="企标编号" prop="entNumber" class="add-form-item form-item-disabled">
<el-form-item label="企标编号" prop="standCode" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.entNumber"
v-model="qbfsForm.standCode"
placeholder="请输入企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="中文名称" prop="cnName" class="add-form-item form-item-disabled">
<el-form-item label="中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.cnName"
v-model="qbfsForm.standName"
placeholder="请输入中文名称"
clearable
></el-input>
@@ -191,14 +191,12 @@
</div>
</div>
<ProcessFooter
show-back
show-transfer
show-submit
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@back="beforeBack"
@transfer="handleTransfer"
@submit="handleSubmit"
>
@@ -250,8 +248,8 @@ export default {
modalshowflag: false, // drawer开关
loading: false,
qbfsForm:{
entNumber: '',
cnName: '',
standCode: '',
standName: '',
enName: '',
entCategory: '',
replaceNumber: '',
@@ -268,8 +266,8 @@ export default {
jgUser: ""
},
formRules: {
jgUser: [
{required: true, message: "请选择工作组成员", trigger: "change"}
reviewComments: [
{required: true, message: "请输入评审意见", trigger: "change"}
],
},
}
@@ -323,23 +321,31 @@ export default {
},
//流程提交
handleSubmit(){
this.isSubmit = true
this.qbfsForm.commentText = this.commentText
let json = JSON.stringify(this.qbfsForm);
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json,
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message)
this.$router.push('/processCenter')
this.$refs['qbfsForm'].validate((valid) => {
if(valid){
this.isSubmit = true
this.qbfsForm.commentText = this.commentText
this.qbfsForm.presentPeople = this.$store.getters.userInfo.userName
this.qbfsForm.presentPeopleId = this.$store.getters.userInfo.userId
let json = JSON.stringify(this.qbfsForm);
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json,
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message)
this.$router.push('/processCenter')
}
this.isSubmit = false
}, e => {
});
}else{
this.$message.warning('请完善基础信息')
}
this.isSubmit = false
}, e => {
});
})
},
//转办事件
handleTransfer(){
@@ -0,0 +1,577 @@
<template>
<div class="qbfz-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>
<process-title>
<template slot="title">基础信息</template>
</process-title>
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto">
<el-form
ref="qbfsForm"
:model="qbfsForm"
:rules="formRules"
class="label-input-form prc-content-border"
label-width="150px"
>
<div v-if="foldFormFlag">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="企标编号" prop="standCode" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.standCode"
placeholder="请输入企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.standName"
placeholder="请输入中文名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="企标类别" prop="entCategory" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.entCategory"
placeholder="请输入企标类别"
clearable
></el-input>
</el-form-item>
<el-form-item label="代替企标编号" prop="replaceNumber" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.replaceNumber"
placeholder="请输入代替企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="废止理由" prop="abolishCause" class="add-form-item form-item-disabled">
<el-input
readonly
type="textarea"
v-model="qbfsForm.abolishCause"
placeholder="请输入废止理由"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="英文名称" prop="enName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.enName"
placeholder="请输入英文名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="被代替企标编号" prop="replacedNumber" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.replacedNumber"
placeholder="请输入被代替企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="发布日期" prop="releaseDate" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.releaseDate"
placeholder="请输入发布日期"
clearable
></el-input>
</el-form-item>
<el-form-item label="实施日期" prop="implementDate" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.implementDate"
placeholder="请输入实施日期"
clearable
></el-input>
</el-form-item>
<el-form-item label="下一步状态" prop="nextStatus" class="add-form-item ">
<el-select v-model="qbfsForm.nextStatus" placeholder="请选择下一步状态">
<el-option
v-for="item in associationOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
<el-button style="width: 100%" :icon="foldFormFlag ? 'el-icon-caret-top' : 'el-icon-caret-bottom'"
@click="foldForm">{{ foldFormFlag ? "隐藏基础信息" : "展开基础信息" }}
</el-button>
<process-title>
<template slot="title">审核信息</template>
</process-title>
<el-table
:data="dataList"
border
height="52%"
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>
<el-table-column
prop="opinion"
align="center"
label="审核意见">
</el-table-column>
<el-table-column
prop="people"
align="center"
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-show="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"
>
</el-table-column>
<el-table-column
prop="assignee"
label="任务受理人"
align="center"
>
</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-transfer
show-submit
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@submit="handleSubmit"
>
</ProcessFooter>
<!-- 福田全公司选人解决方案 -->
<Role-tree
check-box
:is-title="drawerTitle"
:is-visible.sync="drawerModal"
@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 { changeAssigneeNew, inboundLiaisonDetail, saveTaskFirst } from "api/process";
export default {
name: "qbfzStep4",
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle
},
data() {
return {
active: "1",
isTransfer: false,
isSubmit: false,
saveLoading: false,
drawerModal: false,
drawerTitle: "",
nodeList: [],
fileList: [],
commentText: "",
dataList: [],
detailData: [],
loading: false,
foldFormFlag: true,
qbfsForm: {
entNumber: "",
cnName: "",
enName: "",
entCategory: "",
replaceNumber: "",
replacedNumber: "",
releaseDate: "",
implementDate: "",
reviewDate: "",
nextStatus: ""
},
formRules: {
nextStatus: [
{ required: true, message: "请选择下一步状态", trigger: "change" }
]
},
associationOptions: [{
value: "修订",
label: "修订"
}, {
value: "废止",
label: "废止"
}, {
value: "有效",
label: "有效"
}]
};
},
mounted() {
this.processTable();
this.getData();
},
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() {
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.$nextTick(() => {
this.qbfsForm = JSON.parse(JSON.stringify(item));
let res = item.res ? item.res.substring(1, item.res.lastIndexOf("]")) : "";
res = res.split(",");
this.dataList = [];
res.forEach(item => {
this.dataList.push({
opinion: item.split("-")[1],
people: item.split("-")[0]
});
});
});
},
//流程提交
handleSubmit() {
this.$refs['qbfsForm'].validate((valid) => {
if (valid) {
this.isSubmit = true;
this.qbfsForm.commentText = this.commentText;
this.qbfsForm.dataList = this.dataList;
let json = JSON.stringify(this.qbfsForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
}else{
this.$message.warning('请完善基础信息')
}
})
},
handleTabs(name) {
this.active = name;
},
foldForm() {
this.foldFormFlag = !this.foldFormFlag;
},
//转办事件
handleTransfer() {
this.drawerModal = true;
this.drawerTitle = "转办处理人";
this.selectPeople = row;
},
//确认转办
checkedRole(data) {
this.assigneeNewLoading = true;
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false;
if (res.success) {
this.drawerModal = false;
this.$message.success("调整成功");
this.$router.push("/processCenter");
this.processNum();
} else {
this.$message.warning(res.message);
}
});
},
// 请求转换流程图
processNum(row) {
axios.request({
url: "/api/lawss/activiti/getImg?_t=" + new Date().getTime(),
responseType: "blob",
method: "get",
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data);
});
},
/**
* @Description: 点击下载
*/
downloadFile(attId) {
if (attId != null && attId !== "") {
window.location.href = "/api/att/attFile/downloadFileForSar?fileId=" + attId;
} else {
this.$message.error("请选择要下载的文件");
}
},
downloadFileByWater(attId, fileSuffix) {
let fileExtension = fileSuffix.substring(fileSuffix.lastIndexOf(".") + 1);
if (fileExtension !== "pdf" && fileExtension !== "PDF") {
this.$message.error("水印下载仅支持PDF,pdf格式文件");
} else {
if (attId != null && attId !== "") {
window.location.href = "/api/att/attFile/downloadFileForSarWaterMark?fileId=" + attId;
} else {
this.$message.error("请选择要下载的文件");
}
}
}
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.qbfz-step4 {
/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>
@@ -0,0 +1,602 @@
<template>
<div class="qbfz-step5">
<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>
<process-title>
<template slot="title">基础信息</template>
</process-title>
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto">
<el-form
ref="qbfsForm"
:model="qbfsForm"
:rules="formRules"
class="label-input-form prc-content-border"
label-width="150px"
>
<div v-if="foldFormFlag">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="企标编号" prop="standCode" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.standCode"
placeholder="请输入企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.standName"
placeholder="请输入中文名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="企标类别" prop="entCategory" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.entCategory"
placeholder="请输入企标类别"
clearable
></el-input>
</el-form-item>
<el-form-item label="代替企标编号" prop="replaceNumber" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.replaceNumber"
placeholder="请输入代替企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="废止理由" prop="abolishCause" class="add-form-item form-item-disabled">
<el-input
readonly
type="textarea"
v-model="qbfsForm.abolishCause"
placeholder="请输入废止理由"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="英文名称" prop="enName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.enName"
placeholder="请输入英文名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="被代替企标编号" prop="replacedNumber" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.replacedNumber"
placeholder="请输入被代替企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="发布日期" prop="releaseDate" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.releaseDate"
placeholder="请输入发布日期"
clearable
></el-input>
</el-form-item>
<el-form-item label="实施日期" prop="implementDate" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.implementDate"
placeholder="请输入实施日期"
clearable
></el-input>
</el-form-item>
<el-form-item label="下一步状态" prop="nextStatus" class="add-form-item ">
<el-select v-model="qbfsForm.nextStatus" disabled placeholder="请选择下一步状态">
<el-option
v-for="item in associationOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
<el-button style="width: 100%" :icon="foldFormFlag ? 'el-icon-caret-top' : 'el-icon-caret-bottom'"
@click="foldForm">{{ foldFormFlag ? "隐藏基础信息" : "展开基础信息" }}
</el-button>
<process-title>
<template slot="title">审核信息</template>
</process-title>
<el-table
:data="dataList"
border
height="52%"
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>
<el-table-column
prop="opinion"
align="center"
label="审核意见">
</el-table-column>
<el-table-column
prop="people"
align="center"
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-show="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"
>
</el-table-column>
<el-table-column
prop="assignee"
label="任务受理人"
align="center"
>
</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-transfer
show-submit
show-back
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@back="beforeBack"
@transfer="handleTransfer"
@submit="handleSubmit"
>
</ProcessFooter>
<!-- 福田全公司选人解决方案 -->
<Role-tree
check-box
:is-title="drawerTitle"
:is-visible.sync="drawerModal"
@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 { changeAssigneeNew, inboundLiaisonDetail, saveTaskFirst } from "api/process";
export default {
name: "qbfzStep5",
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle
},
data() {
return {
active: "1",
isTransfer: false,
isSubmit: false,
saveLoading: false,
drawerModal: false,
drawerTitle: "",
nodeList: [],
fileList: [],
commentText: "",
dataList: [],
detailData: [],
loading: false,
foldFormFlag: true,
qbfsForm: {
entNumber: "",
cnName: "",
enName: "",
entCategory: "",
replaceNumber: "",
replacedNumber: "",
releaseDate: "",
implementDate: "",
reviewDate: "",
nextStatus: ""
},
formRules: {
nextStatus: [
{ required: true, message: "请选择下一步状态", trigger: "change" }
]
},
associationOptions: [{
value: "修订",
label: "修订"
}, {
value: "废止",
label: "废止"
}, {
value: "有效",
label: "有效"
}]
};
},
mounted() {
this.processTable();
this.getData();
},
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() {
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.$nextTick(() => {
this.qbfsForm = JSON.parse(JSON.stringify(item));
let res = item.res ? item.res.substring(1, item.res.lastIndexOf("]")) : "";
res = res.split(",");
this.dataList = [];
res.forEach(item => {
this.dataList.push({
opinion: item.split("-")[1],
people: item.split("-")[0]
});
});
});
},
//流程驳回
beforeBack(){
this.isSubmit = true;
this.qbfsForm.commentText = this.commentText;
this.qbfsForm.bzFlag = '1'
this.qbfsForm.dataList = this.dataList;
let json = JSON.stringify(this.qbfsForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
},
//流程提交
handleSubmit() {
this.$refs['qbfsForm'].validate((valid) => {
if (valid) {
this.isSubmit = true;
this.qbfsForm.commentText = this.commentText;
this.qbfsForm.bzFlag = '0'
this.qbfsForm.dataList = this.dataList;
let json = JSON.stringify(this.qbfsForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
}else{
this.$message.warning('请完善基础信息')
}
})
},
handleTabs(name) {
this.active = name;
},
foldForm() {
this.foldFormFlag = !this.foldFormFlag;
},
//转办事件
handleTransfer() {
this.drawerModal = true;
this.drawerTitle = "转办处理人";
this.selectPeople = row;
},
//确认转办
checkedRole(data) {
this.assigneeNewLoading = true;
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false;
if (res.success) {
this.drawerModal = false;
this.$message.success("调整成功");
this.$router.push("/processCenter");
this.processNum();
} else {
this.$message.warning(res.message);
}
});
},
// 请求转换流程图
processNum(row) {
axios.request({
url: "/api/lawss/activiti/getImg?_t=" + new Date().getTime(),
responseType: "blob",
method: "get",
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data);
});
},
/**
* @Description: 点击下载
*/
downloadFile(attId) {
if (attId != null && attId !== "") {
window.location.href = "/api/att/attFile/downloadFileForSar?fileId=" + attId;
} else {
this.$message.error("请选择要下载的文件");
}
},
downloadFileByWater(attId, fileSuffix) {
let fileExtension = fileSuffix.substring(fileSuffix.lastIndexOf(".") + 1);
if (fileExtension !== "pdf" && fileExtension !== "PDF") {
this.$message.error("水印下载仅支持PDF,pdf格式文件");
} else {
if (attId != null && attId !== "") {
window.location.href = "/api/att/attFile/downloadFileForSarWaterMark?fileId=" + attId;
} else {
this.$message.error("请选择要下载的文件");
}
}
}
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.qbfz-step5 {
/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>
@@ -0,0 +1,602 @@
<template>
<div class="qbfz-step6">
<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>
<process-title>
<template slot="title">基础信息</template>
</process-title>
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto">
<el-form
ref="qbfsForm"
:model="qbfsForm"
:rules="formRules"
class="label-input-form prc-content-border"
label-width="150px"
>
<div v-if="foldFormFlag">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="企标编号" prop="standCode" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.standCode"
placeholder="请输入企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.standName"
placeholder="请输入中文名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="企标类别" prop="entCategory" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.entCategory"
placeholder="请输入企标类别"
clearable
></el-input>
</el-form-item>
<el-form-item label="代替企标编号" prop="replaceNumber" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.replaceNumber"
placeholder="请输入代替企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="废止理由" prop="abolishCause" class="add-form-item form-item-disabled">
<el-input
readonly
type="textarea"
v-model="qbfsForm.abolishCause"
placeholder="请输入废止理由"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="英文名称" prop="enName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.enName"
placeholder="请输入英文名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="被代替企标编号" prop="replacedNumber" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.replacedNumber"
placeholder="请输入被代替企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="发布日期" prop="releaseDate" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.releaseDate"
placeholder="请输入发布日期"
clearable
></el-input>
</el-form-item>
<el-form-item label="实施日期" prop="implementDate" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.implementDate"
placeholder="请输入实施日期"
clearable
></el-input>
</el-form-item>
<el-form-item label="下一步状态" prop="nextStatus" class="add-form-item ">
<el-select v-model="qbfsForm.nextStatus" disabled placeholder="请选择下一步状态">
<el-option
v-for="item in associationOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
<el-button style="width: 100%" :icon="foldFormFlag ? 'el-icon-caret-top' : 'el-icon-caret-bottom'"
@click="foldForm">{{ foldFormFlag ? "隐藏基础信息" : "展开基础信息" }}
</el-button>
<process-title>
<template slot="title">审核信息</template>
</process-title>
<el-table
:data="dataList"
border
height="52%"
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>
<el-table-column
prop="opinion"
align="center"
label="审核意见">
</el-table-column>
<el-table-column
prop="people"
align="center"
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-show="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"
>
</el-table-column>
<el-table-column
prop="assignee"
label="任务受理人"
align="center"
>
</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-transfer
show-submit
show-back
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@back="beforeBack"
@transfer="handleTransfer"
@submit="handleSubmit"
>
</ProcessFooter>
<!-- 福田全公司选人解决方案 -->
<Role-tree
check-box
:is-title="drawerTitle"
:is-visible.sync="drawerModal"
@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 { changeAssigneeNew, inboundLiaisonDetail, saveTaskFirst } from "api/process";
export default {
name: "qbfzStep6",
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle
},
data() {
return {
active: "1",
isTransfer: false,
isSubmit: false,
saveLoading: false,
drawerModal: false,
drawerTitle: "",
nodeList: [],
fileList: [],
commentText: "",
dataList: [],
detailData: [],
loading: false,
foldFormFlag: true,
qbfsForm: {
entNumber: "",
cnName: "",
enName: "",
entCategory: "",
replaceNumber: "",
replacedNumber: "",
releaseDate: "",
implementDate: "",
reviewDate: "",
nextStatus: ""
},
formRules: {
nextStatus: [
{ required: true, message: "请选择下一步状态", trigger: "change" }
]
},
associationOptions: [{
value: "修订",
label: "修订"
}, {
value: "废止",
label: "废止"
}, {
value: "有效",
label: "有效"
}]
};
},
mounted() {
this.processTable();
this.getData();
},
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() {
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.$nextTick(() => {
this.qbfsForm = JSON.parse(JSON.stringify(item));
let res = item.res ? item.res.substring(1, item.res.lastIndexOf("]")) : "";
res = res.split(",");
this.dataList = [];
res.forEach(item => {
this.dataList.push({
opinion: item.split("-")[1],
people: item.split("-")[0]
});
});
});
},
//流程驳回
beforeBack(){
this.isSubmit = true;
this.qbfsForm.commentText = this.commentText;
this.qbfsForm.sdFlag = '1'
this.qbfsForm.dataList = this.dataList;
let json = JSON.stringify(this.qbfsForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
},
//流程提交
handleSubmit() {
this.$refs['qbfsForm'].validate((valid) => {
if (valid) {
this.isSubmit = true;
this.qbfsForm.commentText = this.commentText;
this.qbfsForm.sdFlag = '0'
this.qbfsForm.dataList = this.dataList;
let json = JSON.stringify(this.qbfsForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
}else{
this.$message.warning('请完善基础信息')
}
})
},
handleTabs(name) {
this.active = name;
},
foldForm() {
this.foldFormFlag = !this.foldFormFlag;
},
//转办事件
handleTransfer() {
this.drawerModal = true;
this.drawerTitle = "转办处理人";
this.selectPeople = row;
},
//确认转办
checkedRole(data) {
this.assigneeNewLoading = true;
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false;
if (res.success) {
this.drawerModal = false;
this.$message.success("调整成功");
this.$router.push("/processCenter");
this.processNum();
} else {
this.$message.warning(res.message);
}
});
},
// 请求转换流程图
processNum(row) {
axios.request({
url: "/api/lawss/activiti/getImg?_t=" + new Date().getTime(),
responseType: "blob",
method: "get",
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data);
});
},
/**
* @Description: 点击下载
*/
downloadFile(attId) {
if (attId != null && attId !== "") {
window.location.href = "/api/att/attFile/downloadFileForSar?fileId=" + attId;
} else {
this.$message.error("请选择要下载的文件");
}
},
downloadFileByWater(attId, fileSuffix) {
let fileExtension = fileSuffix.substring(fileSuffix.lastIndexOf(".") + 1);
if (fileExtension !== "pdf" && fileExtension !== "PDF") {
this.$message.error("水印下载仅支持PDF,pdf格式文件");
} else {
if (attId != null && attId !== "") {
window.location.href = "/api/att/attFile/downloadFileForSarWaterMark?fileId=" + attId;
} else {
this.$message.error("请选择要下载的文件");
}
}
}
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.qbfz-step6 {
/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>
@@ -0,0 +1,602 @@
<template>
<div class="qbfz-step7">
<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>
<process-title>
<template slot="title">基础信息</template>
</process-title>
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto">
<el-form
ref="qbfsForm"
:model="qbfsForm"
:rules="formRules"
class="label-input-form prc-content-border"
label-width="150px"
>
<div v-if="foldFormFlag">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="企标编号" prop="standCode" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.standCode"
placeholder="请输入企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.standName"
placeholder="请输入中文名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="企标类别" prop="entCategory" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.entCategory"
placeholder="请输入企标类别"
clearable
></el-input>
</el-form-item>
<el-form-item label="代替企标编号" prop="replaceNumber" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.replaceNumber"
placeholder="请输入代替企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="废止理由" prop="abolishCause" class="add-form-item form-item-disabled">
<el-input
readonly
type="textarea"
v-model="qbfsForm.abolishCause"
placeholder="请输入废止理由"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="英文名称" prop="enName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.enName"
placeholder="请输入英文名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="被代替企标编号" prop="replacedNumber" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.replacedNumber"
placeholder="请输入被代替企标编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="发布日期" prop="releaseDate" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.releaseDate"
placeholder="请输入发布日期"
clearable
></el-input>
</el-form-item>
<el-form-item label="实施日期" prop="implementDate" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="qbfsForm.implementDate"
placeholder="请输入实施日期"
clearable
></el-input>
</el-form-item>
<el-form-item label="下一步状态" prop="nextStatus" class="add-form-item ">
<el-select v-model="qbfsForm.nextStatus" disabled placeholder="请选择下一步状态">
<el-option
v-for="item in associationOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
<el-button style="width: 100%" :icon="foldFormFlag ? 'el-icon-caret-top' : 'el-icon-caret-bottom'"
@click="foldForm">{{ foldFormFlag ? "隐藏基础信息" : "展开基础信息" }}
</el-button>
<process-title>
<template slot="title">审核信息</template>
</process-title>
<el-table
:data="dataList"
border
height="52%"
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>
<el-table-column
prop="opinion"
align="center"
label="审核意见">
</el-table-column>
<el-table-column
prop="people"
align="center"
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-show="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"
>
</el-table-column>
<el-table-column
prop="assignee"
label="任务受理人"
align="center"
>
</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-transfer
show-submit
show-back
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@back="beforeBack"
@transfer="handleTransfer"
@submit="handleSubmit"
>
</ProcessFooter>
<!-- 福田全公司选人解决方案 -->
<Role-tree
check-box
:is-title="drawerTitle"
:is-visible.sync="drawerModal"
@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 { changeAssigneeNew, inboundLiaisonDetail, saveTaskFirst } from "api/process";
export default {
name: "qbfzStep7",
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle
},
data() {
return {
active: "1",
isTransfer: false,
isSubmit: false,
saveLoading: false,
drawerModal: false,
drawerTitle: "",
nodeList: [],
fileList: [],
commentText: "",
dataList: [],
detailData: [],
loading: false,
foldFormFlag: true,
qbfsForm: {
entNumber: "",
cnName: "",
enName: "",
entCategory: "",
replaceNumber: "",
replacedNumber: "",
releaseDate: "",
implementDate: "",
reviewDate: "",
nextStatus: ""
},
formRules: {
nextStatus: [
{ required: true, message: "请选择下一步状态", trigger: "change" }
]
},
associationOptions: [{
value: "修订",
label: "修订"
}, {
value: "废止",
label: "废止"
}, {
value: "有效",
label: "有效"
}]
};
},
mounted() {
this.processTable();
this.getData();
},
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() {
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.$nextTick(() => {
this.qbfsForm = JSON.parse(JSON.stringify(item));
let res = item.res ? item.res.substring(1, item.res.lastIndexOf("]")) : "";
res = res.split(",");
this.dataList = [];
res.forEach(item => {
this.dataList.push({
opinion: item.split("-")[1],
people: item.split("-")[0]
});
});
});
},
//流程驳回
beforeBack(){
this.isSubmit = true;
this.qbfsForm.commentText = this.commentText;
this.qbfsForm.bafzFlag = '1'
this.qbfsForm.dataList = this.dataList;
let json = JSON.stringify(this.qbfsForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
},
//流程提交
handleSubmit() {
this.$refs['qbfsForm'].validate((valid) => {
if (valid) {
this.isSubmit = true;
this.qbfsForm.commentText = this.commentText;
this.qbfsForm.bafzFlag = '0'
this.qbfsForm.dataList = this.dataList;
let json = JSON.stringify(this.qbfsForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.$route.query.taskIds,
userId: this.$store.getters.userInfo.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
}else{
this.$message.warning('请完善基础信息')
}
})
},
handleTabs(name) {
this.active = name;
},
foldForm() {
this.foldFormFlag = !this.foldFormFlag;
},
//转办事件
handleTransfer() {
this.drawerModal = true;
this.drawerTitle = "转办处理人";
this.selectPeople = row;
},
//确认转办
checkedRole(data) {
this.assigneeNewLoading = true;
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false;
if (res.success) {
this.drawerModal = false;
this.$message.success("调整成功");
this.$router.push("/processCenter");
this.processNum();
} else {
this.$message.warning(res.message);
}
});
},
// 请求转换流程图
processNum(row) {
axios.request({
url: "/api/lawss/activiti/getImg?_t=" + new Date().getTime(),
responseType: "blob",
method: "get",
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data);
});
},
/**
* @Description: 点击下载
*/
downloadFile(attId) {
if (attId != null && attId !== "") {
window.location.href = "/api/att/attFile/downloadFileForSar?fileId=" + attId;
} else {
this.$message.error("请选择要下载的文件");
}
},
downloadFileByWater(attId, fileSuffix) {
let fileExtension = fileSuffix.substring(fileSuffix.lastIndexOf(".") + 1);
if (fileExtension !== "pdf" && fileExtension !== "PDF") {
this.$message.error("水印下载仅支持PDF,pdf格式文件");
} else {
if (attId != null && attId !== "") {
window.location.href = "/api/att/attFile/downloadFileForSarWaterMark?fileId=" + attId;
} else {
this.$message.error("请选择要下载的文件");
}
}
}
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.qbfz-step7 {
/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>
@@ -71,10 +71,15 @@
prop="implTime"
sortable="custom"
align="center"
width="120"
width="155"
label="实施日期">
<template slot-scope="scope">
<el-input style="margin: 10px 0;" v-model="scope.row.implTime"></el-input>
<el-date-picker
v-model="scope.row.implTime"
style="width: 130px"
type="date"
placeholder="选择日期">
</el-date-picker>
</template>
</el-table-column>
<el-table-column
@@ -111,10 +116,16 @@
prop="sopTime"
sortable="custom"
align="center"
width="120"
width="155"
label="SOP时间">
<template slot-scope="scope">
<el-input style="margin: 10px 0;" v-model="scope.row.sopTime"></el-input>
<el-date-picker
value-format="yyyy-MM-dd"
v-model="scope.row.sopTime"
style="width: 130px"
type="date"
placeholder="选择日期">
</el-date-picker>
</template>
</el-table-column>
<el-table-column
@@ -107,6 +107,18 @@
width="400"
label="SOP时间超过法规时限的空档期的业务应对方案">
</el-table-column>
<el-table-column
prop="isRisk"
align="center"
width="120"
label="是否是风险项">
<template slot-scope="scope">
<el-select style="margin: 10px 0;" v-model="scope.row.isRisk" size="small" placeholder="请选择">
<el-option label="是" value="1"></el-option>
<el-option label="否" value="0"></el-option>
</el-select>
</template>
</el-table-column>
</el-table>
</div>
<!--这个div是产品规划部信息-->
@@ -431,8 +443,12 @@ export default {
handleSubmit() {
this.$refs["zdrzbzORzchgxxmscForm"].validate((valid) => {
if (valid) {
let infoTableDatas = []
infoTableDatas = JSON.stringify(this.infoTableDatas)
this.isSubmit = true;
localStorage.setItem('infoTableDatas', JSON.stringify(this.infoTableDatas))
var json = this.json;
json.infoTableDatas = infoTableDatas
json.commentText = this.commentText;
json.responUserList = this.form.responUserList;
json.responUserListName = this.form.responUserListName;
@@ -107,6 +107,12 @@
width="400"
label="SOP时间超过法规时限的空档期的业务应对方案">
</el-table-column>
<el-table-column
prop="isRiskShow"
align="center"
width="120"
label="是否是风险项">
</el-table-column>
</el-table>
</div>
<!--这个div是产品规划部信息-->
@@ -487,7 +493,14 @@ export default {
}
let data = JSON.parse(res.mesg)
this.infoTableDatas = JSON.parse(data.infoTableDatas)
this.form.cid = data.cid
console.log('490',this.infoTableDatas)
for (let i = 0; i < this.infoTableDatas.length; i++) {
if (this.infoTableDatas[i].isRisk === "1"){
this.infoTableDatas[i].isRiskShow = '是'
}else {
this.infoTableDatas[i].isRiskShow = '否'
}
}
this.form.endTime = data.endTime
this.form.cname = data.cname
this.form.fjList = data.fjList
@@ -107,6 +107,12 @@
width="400"
label="SOP时间超过法规时限的空档期的业务应对方案">
</el-table-column>
<el-table-column
prop="isRiskShow"
align="center"
width="120"
label="是否是风险项">
</el-table-column>
</el-table>
</div>
<!--这个div是产品规划部信息-->
@@ -434,11 +440,25 @@ export default {
this.$refs["zdrzbzORzchgxxmscForm"].validate((valid) => {
if (valid) {
this.isSubmit = true;
let infoTableDatas = []
infoTableDatas = JSON.stringify(this.infoTableDatas)
localStorage.setItem('infoTableDatas', JSON.stringify(this.infoTableDatas))
var json = this.json;
json.feedbackDept = this.feedbackDept
console.log('448',json.feedbackDept)
json.commentText = this.commentText;
json.infoTableDatas = infoTableDatas
json.responUserList = this.form.responUserList;
json.responUserListName = this.form.responUserListName;
json.introduce = false;
this.$http.postData("policy/activiti/enterIssue",{
json: JSON.stringify(json),
taskId: this.taskIds,
userId: this.$store.getters.userInfo.userId
},{},res=> {
console.log('455',res)
this.isSubmit = false;
});
this.$http.post("lawss/activiti/completeTask", {
json: JSON.stringify(json),
taskId: this.taskIds,
@@ -487,7 +507,14 @@ export default {
}
let data = JSON.parse(res.mesg)
this.infoTableDatas = JSON.parse(data.infoTableDatas)
this.form.cid = data.cid
console.log('490',data)
for (let i = 0; i < this.infoTableDatas.length; i++) {
if (this.infoTableDatas[i].isRisk === "1"){
this.infoTableDatas[i].isRiskShow = '是'
}else {
this.infoTableDatas[i].isRiskShow = '否'
}
}
this.form.endTime = data.endTime
this.form.cname = data.cname
this.form.fjList = data.fjList
@@ -1075,7 +1075,7 @@ export default {
}
})
}
else if(row.taskInfo === '法规认证部副总监批准'){
else if(row.taskInfo === '法规认证部副总监审定'){
this.$router.push({
name: 'zdrzbzORzchgxxmscStep9',
query: {
@@ -1570,6 +1570,76 @@ export default {
})
}
break
case '24':
if (row.taskInfo === '标准法规部部长审核') {
this.$router.push({
name: 'qbfzStep2',
query:{
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
} else if(row.taskInfo === '会签并填写意见') {
this.$router.push({
name: 'qbfzStep3',
query:{
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
} else if(row.taskInfo === '起草人修改标准状态') {
this.$router.push({
name: 'qbfzStep4',
query:{
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
} else if(row.taskInfo === '标准法规部部长审核1') {
this.$router.push({
name: 'qbfzStep5',
query:{
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
else if(row.taskInfo === '审定责任人审定') {
this.$router.push({
name: 'qbfzStep6',
query:{
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}else if(row.taskInfo === '批准负责人批准') {
this.$router.push({
name: 'qbfzStep7',
query:{
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
break
}
},
...mapMutations(['setProcess', 'setHandleInfo']),
@@ -4,22 +4,28 @@
<!-- 第一第二行表单 -->
<el-form :inline="true" :model="formQuery">
<el-form-item label="标准号">
<el-input v-model="formQuery.standardId" size="small" placeholder="请输入标准号"></el-input>
<el-input v-model="formQuery.proId" size="small" placeholder="请输入标准号"></el-input>
</el-form-item>
<el-form-item label="标准名称">
<el-input v-model="formQuery.standardName" size="small" placeholder="请输入标准名称"></el-input>
<el-input v-model="formQuery.proName" size="small" placeholder="请输入标准名称"></el-input>
</el-form-item>
<el-form-item label="项目代号">
<el-input v-model="formQuery.codeNum" size="small" placeholder="根据项目代号搜索">
</el-input>
<el-form-item label="项目类型">
<el-select v-model="formQuery.type" size="small" placeholder="请选择类型">
<el-option
v-for="item in typeOptions"
:key="item.value"
:label="item.label"
:value="item.label">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" size="small" @click="">查询</el-button>
<el-button type="primary" size="small" @click="dataQuery">查询</el-button>
<el-button type="" size="small" @click="resetForm('formQuery')">清空</el-button>
</el-form-item>
<el-divider/>
<div style="float: left;">
<el-button type="primary" size="small" @click="drawer1 = true">新增</el-button>
<el-button type="primary" size="small" @click="tableAdd">新增</el-button>
<el-button type="primary" size="small" @click="dialogVisible1 = true">导入</el-button>
<el-button type="primary" size="small" @click="dialogVisible2 = true">导出</el-button>
<el-button type="danger" size="small" @click="deleteDetail" icon="el-icon-delete">批量删除</el-button>
@@ -59,18 +65,18 @@
</el-table-column>
<el-table-column
align="center"
prop="num"
prop="proId"
label="项目编号">
</el-table-column>
<el-table-column
align="center"
prop="name"
prop="proName"
label="项目名称">
</el-table-column>
<el-table-column
align="center"
prop="costList"
prop="costOutlay"
label="费用列支项">
</el-table-column>
<el-table-column
@@ -109,22 +115,26 @@
:title="drawerTitle"
:visible.sync="drawerTable">
<div style="margin: 10px;height: inherit">
<el-form label-width="150px" ref="formShowData" :model="formShowData" :rules="formRules">
<el-form label-width="100px" ref="formShowData" :model="formShowData" :rules="formRules">
<el-form-item label="类型">
<el-select v-model="formShowData.type" type="text" placeholder="请填写">
<el-option label="1" value="one"></el-option>
<el-option label="2" value="two"></el-option>
<el-option
v-for="item in typeOptions"
:key="item.value"
:label="item.label"
:value="item.label">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="项目编号">
<el-input v-model="formShowData.num" type="text" placeholder="请填写"></el-input>
<el-input v-model="formShowData.proId" type="text" placeholder="请填写"></el-input>
</el-form-item>
<el-form-item label="项目名称">
<el-input v-model="formShowData.name" type="text" placeholder="请填写">
<el-input v-model="formShowData.proName" type="text" placeholder="请填写">
</el-input>
</el-form-item>
<el-form-item label="费用列支项">
<el-input v-model="formShowData.costList" placeholder="请选择">
<el-input v-model="formShowData.costOutlay" placeholder="请选择">
</el-input>
</el-form-item>
<el-form-item label="费用支出">
@@ -134,8 +144,8 @@
</el-form>
</div>
<div class="demo-drawer-footer">
<el-button size="small" @click="dialogVisible2 = false">取消</el-button>
<el-button size="small" type="primary" @click="submit()">提交</el-button>
<el-button size="small" @click="drawerTable = false">取消</el-button>
<el-button size="small" type="primary" :loading="submitLoading" @click="submit()">提交</el-button>
</div>
</el-drawer>
@@ -155,15 +165,16 @@
</template>
<script>
import { reviseAll, reviseEdit, reviseAdd, reviseDel } from '@/api/statisticsApi'
export default {
name: "child3",
data() {
return {
loading: false,
formQuery: {
standardNum: '',
standardName: '',
codeNum: '',
proId: '',
proName: '',
type: '',
current: 1,
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
@@ -173,16 +184,23 @@ export default {
multipleSelection: [],
formShowData: {
id: '',
type: '',
num: '',
name: '',
costList: '',
proId: '',
proName: '',
costOutlay: '',
cost: ''
},
drawerTable: false,
drawerTitle: '',
formRules: {},
submitLoading: false,
typeOptions: [
{ label: '类型1', value: '0' },
{ label: '类型2', value: '1' },
{ label: '类型3', value: '2' },
]
}
},
@@ -191,17 +209,103 @@ export default {
},
methods: {
/** 查询数据 */
getTableData() {
reviseAll(this.formQuery).then(res=>{
this.tableData = res.data.list
this.tableTotal = res.data.count
})
},
handleSelectionChange(val) {
this.multipleSelection = val;
},
//新增方法
tableAdd() {
this.drawerTitle = '新增'
this.formShowData = {}
this.drawerTable = true
},
// 提交按钮
submit() {
this.$refs['formShowData'].validate((valid) => {
if (valid) {
this.submitLoading = true
if (this.drawerTitle === '新增') {
reviseAdd(this.formShowData).then(res=>{
if (res.ok) {
this.$message.success('新增成功')
this.submitLoading = false
this.getTableData()
} else {
this.$message.warning('新增失败')
this.submitLoading = false
}
this.drawerTable = false
}, e => {
})
} else {
reviseEdit(this.formShowData).then(res => {
if (res.ok) {
this.$message.success('编辑成功')
this.submitLoading = false
this.getTableData()
} else {
this.$message.warning('编辑失败')
this.submitLoading = false
}
this.drawerTable = false
},e => {
})
}
}
})
},
//删除方法
deleteDetail() {
if (this.multipleSelection.length > 0) {
let msgIds = []
for (let i = 0; i < this.multipleSelection.length; i++) {
let msgId = this.multipleSelection[i].id
msgIds.push(msgId)
}
let delId = {
ids: msgIds.join(',')
}
this.$confirm('确定删除这些数据?', '提示', {
confirmButtonText: this.$t('m.determine'),
cancelButtonText: this.$t('m.cancel'),
type: 'warning',
confirmButtonClass: 'common-button-primary',
roundButton: true
}).then(() => {
reviseDel(delId).then(res => {
if (res.ok) {
this.$message.success('删除成功')
this.pageNo = 1
this.multipleSelection = []
this.getTableData()
} else {
this.$message.warning('删除失败')
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
} else {
this.$message.warning('请选择一条数据进行删除')
}
},
// 查询
dataQuery() {
this.getTableData()
},
//清空
resetForm() {
this.formQuery = {}
this.getTableData()
},
// 列表更多按钮
handleCommand(command) {
@@ -210,13 +314,49 @@ export default {
this.editRowOne(command[0]);
break;
case "删除":
this.deleteRowOne("delOne", command[0].id);
this.deleteRowOne(command[0].id);
break;
}
},
editRowOne() {
editRowOne(item) {
this.drawerTitle = '编辑'
this.formShowData = {
id: item.id,
type: item.type,
proId: item.proId,
proName: item.proName,
costOutlay: item.costOutlay,
cost: item.cost
}
this.drawerTable = true
},
deleteRowOne() {
deleteRowOne(res) {
let delId = {
ids: res
}
this.$confirm('确定删除这些数据?', '提示', {
confirmButtonText: this.$t('m.determine'),
cancelButtonText: this.$t('m.cancel'),
type: 'warning',
confirmButtonClass: 'common-button-primary',
roundButton: true
}).then(() => {
reviseDel(delId).then(res => {
if (res.ok) {
this.$message.success('删除成功')
this.pageNo = 1
this.multipleSelection = ''
this.getTableData()
} else {
this.$message.warning('删除失败')
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
/** 分页 */
pageChange(page) {
@@ -3,23 +3,39 @@
<div id="attendCost" class="child2">
<!-- 第一第二行表单 -->
<el-form :inline="true" :model="formQuery" class="demo-form-inline">
<el-form-item label="标准类型">
<el-input v-model="formQuery.type" size="small" placeholder="请输入标准类型"></el-input>
<el-form-item label="主办单位">
<el-input v-model="formQuery.unit" size="small" placeholder="请输入主办单位"></el-input>
</el-form-item>
<el-form-item label="标准代号">
<el-input v-model="formQuery.num" size="small" placeholder="请输入标准代号"></el-input>
<el-form-item label="会议名称">
<el-input v-model="formQuery.meetName" size="small" placeholder="请输入会议名称"></el-input>
</el-form-item>
<el-form-item label="标准名称">
<el-input v-model="formQuery.name" size="small" placeholder="请输入标准名称">
</el-input>
<el-form-item label="费用列支">
<el-select size="small" v-model="formQuery.costOutlay">
<el-option
v-for="item in costOptions"
:key="item.value"
:label="item.label"
:value="item.label">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="会议时间">
<el-date-picker
size="small"
v-model="formQuery.meetTime"
type="datetime"
format="yyyy-MM-dd HH:mm:ss"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="选择日期">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" size="small" onclick="">查询</el-button>
<el-button type="primary" size="small" @click="queryData">查询</el-button>
<el-button type="" size="small" @click="resetForm('formQuery')">清空</el-button>
</el-form-item>
<el-divider/>
<div style="float: left">
<el-button type="primary" size="small" @click="drawer1 = true">新增</el-button>
<el-button type="primary" size="small" @click="tableAdd">新增</el-button>
<el-button type="primary" size="small" @click="dialogVisible1 = true">导入</el-button>
<el-button type="primary" size="small" @click="dialogVisible2 = true">导出</el-button>
<el-button type="danger" size="small" @click="deleteDetail" icon="el-icon-delete">批量删除</el-button>
@@ -47,52 +63,41 @@
align="center"
type="index"
width="50"
label="序号"
>
label="序号">
</el-table-column>
<el-table-column
align="center"
prop="holdUnit"
label="主办单位"
>
prop="unit"
label="主办单位">
</el-table-column>
<el-table-column
align="center"
prop="meetingName"
label="会议名称"
>
prop="meetName"
label="会议名称">
</el-table-column>
<el-table-column
align="center"
prop="meetingTime"
label="会议时间"
>
prop="meetTime"
label="会议时间">
<template slot-scope="scope">
{{ scope.row.meetTime ? $moment(scope.row.meetTime).format("YYYY-MM-DD HH:mm:ss") : '' }}
</template>
</el-table-column>
<el-table-column
align="center"
prop="costStandard"
label="会费标准"
>
prop="payStandard"
label="会费标准">
</el-table-column>
<el-table-column
align="center"
prop="reality"
label="实际发生"
>
prop="payReality"
label="实际发生">
</el-table-column>
<el-table-column
align="center"
prop="costList"
label="费用列支"
>
prop="costOutlay"
label="费用列支">
</el-table-column>
<el-table-column label="操作" align="center" width="50" fixed="right">
<template slot-scope="scope">
@@ -125,37 +130,42 @@
:title="drawerTitle"
:visible.sync="drawerTable">
<div style="margin: 10px;height: inherit">
<el-form label-width="150px" ref="formShowData" :model="formShowData" :rules="formRules">
<el-form label-width="100px" ref="formShowData" :model="formShowData" :rules="formRules">
<el-form-item label="主办单位">
<el-select v-model="formShowData.holdUnit" type="text" placeholder="请填写">
<el-select v-model="formShowData.unit" type="text" placeholder="请填写">
<el-option label="1" value="one"></el-option>
<el-option label="2" value="two"></el-option>
</el-select>
</el-form-item>
<el-form-item label="会议名称">
<el-input v-model="formShowData.meetingName" type="text" placeholder="请填写"></el-input>
<el-input v-model="formShowData.meetName" type="text" placeholder="请填写"></el-input>
</el-form-item>
<el-form-item label="会议时间">
<el-input v-model="formShowData.meetingTime" type="text" placeholder="请填写">
</el-input>
<el-date-picker
v-model="formShowData.meetTime"
type="datetime"
format="yyyy-MM-dd HH:mm:ss"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="选择日期时间">
</el-date-picker>
</el-form-item>
<el-form-item label="会费标准">
<el-input v-model="formShowData.costStandard" type="text" placeholder="请填写">
<el-input v-model="formShowData.payStandard" type="text" placeholder="请填写">
</el-input>
</el-form-item>
<el-form-item label="实际发生">
<el-input v-model="formShowData.reality" placeholder="请选择">
<el-input v-model="formShowData.payReality" placeholder="请选择">
</el-input>
</el-form-item>
<el-form-item label="费用列支">
<el-input v-model="formShowData.costList" placeholder="请选择">
<el-input v-model="formShowData.costOutlay" placeholder="请选择">
</el-input>
</el-form-item>
</el-form>
</div>
<div class="demo-drawer-footer">
<el-button size="small" @click="dialogVisible2 = false">取消</el-button>
<el-button size="small" type="primary" @click="submit()">提交</el-button>
<el-button size="small" @click="drawerTable = false">取消</el-button>
<el-button size="small" type="primary" :loading="submitLoading" @click="submit()">提交</el-button>
</div>
</el-drawer>
@@ -198,19 +208,21 @@
</template>
<script>
import { meetAll, meetEdit, meetAdd, meetDel } from '@/api/statisticsApi'
export default {
name: "child2",
data() {
return {
loading: false,
formQuery: {
type: '',
num: '',
name: '',
unit: '',
meetName: '',
meetTime: '',
current: 1,
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
},
submitLoading: false,
tableTotal: 0,
tableData: [],
multipleSelection: [],
@@ -218,7 +230,20 @@ export default {
drawerTable: false,
drawerTitle: '',
formRules: {},
formShowData: {}
formShowData: {
id: '',
unit: '',
meetName: '',
meetTime: '',
payStandard: '',
payReality: '',
costOutlay: ''
},
costOptions: [
{ label: '列支1', value: '0' },
{ label: '列支2', value: '1' },
{ label: '列支2', value: '3' },
]
}
},
@@ -227,17 +252,102 @@ export default {
},
methods: {
getTableData () {
meetAll(this.formQuery).then(res=>{
this.tableData = res.data.list
this.tableTotal = res.data.count
})
},
handleSelectionChange(val) {
this.multipleSelection = val;
},
//新增方法
tableAdd() {
this.drawerTitle = '新增'
this.formShowData = {}
this.drawerTable = true
},
submit() {
this.$refs['formShowData'].validate((valid) => {
if (valid) {
this.submitLoading = true
if (this.drawerTitle === '新增') {
meetAdd(this.formShowData).then(res=>{
if (res.ok) {
this.$message.success('新增成功')
this.submitLoading = false
this.getTableData()
} else {
this.$message.warning('新增失败')
this.submitLoading = false
}
this.drawerTable = false
}, e => {
})
} else {
console.log(this.formShowData.meetTime)
meetEdit(this.formShowData).then(res => {
if (res.ok) {
this.$message.success('编辑成功')
this.submitLoading = false
this.getTableData()
} else {
this.$message.warning('编辑失败')
this.submitLoading = false
}
this.drawerTable = false
},e => {
})
}
}
})
},
//删除方法
deleteDetail() {
if (this.multipleSelection.length > 0) {
let msgIds = []
for (let i = 0; i < this.multipleSelection.length; i++) {
let msgId = this.multipleSelection[i].id
msgIds.push(msgId)
}
let delId = {
ids: msgIds.join(',')
}
this.$confirm('确定删除这些数据?', '提示', {
confirmButtonText: this.$t('m.determine'),
cancelButtonText: this.$t('m.cancel'),
type: 'warning',
confirmButtonClass: 'common-button-primary',
roundButton: true
}).then(() => {
meetDel(delId).then(res => {
if (res.ok) {
this.$message.success('删除成功')
this.pageNo = 1
this.multipleSelection = []
this.getTableData()
} else {
this.$message.warning('删除失败')
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
} else {
this.$message.warning('请选择一条数据进行删除')
}
},
// 查询
queryData() {
this.getTableData()
},
//清空
resetForm() {
this.formQuery = {}
this.getTableData()
},
// 列表更多按钮
@@ -247,12 +357,51 @@ export default {
this.editRowOne(command[0]);
break;
case "删除":
this.deleteRowOne("delOne", command[0].id);
this.deleteRowOne(command[0].id);
break;
}
},
editRowOne() {},
deleteRowOne() {},
editRowOne(item) {
this.drawerTitle = '编辑'
this.formShowData = {
id: item.id,
unit: item.unit,
meetName: item.meetName,
meetTime: this.$moment(item.meetTime).format('YYYY-MM-DD HH:mm:ss'),
payStandard: item.payStandard,
payReality: item.payReality,
costOutlay: item.costOutlay
}
this.drawerTable = true
},
deleteRowOne(res) {
let delId = {
ids: res
}
this.$confirm('确定删除这些数据?', '提示', {
confirmButtonText: this.$t('m.determine'),
cancelButtonText: this.$t('m.cancel'),
type: 'warning',
confirmButtonClass: 'common-button-primary',
roundButton: true
}).then(() => {
meetDel(delId).then(res => {
if (res.ok) {
this.$message.success('删除成功')
this.pageNo = 1
this.multipleSelection = ''
this.getTableData()
} else {
this.$message.warning('删除失败')
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
/** 分页 */
pageChange(page) {
this.formQuery.page = page
@@ -23,6 +23,7 @@
<el-button type="primary" size="small" @click="queryForm">查询</el-button>
<el-button type="" size="small" @click="resetForm('formQuery')">清空</el-button>
</el-form-item>
<el-divider/>
<div style="float: left">
<el-button type="primary" size="small" @click="formDataAdd">新增</el-button>
<el-button type="primary" size="small" @click="dialogVisible1 = true">导入</el-button>
@@ -164,8 +165,7 @@
<script>
import {
statisticsAll,statisticsAdd,
statisticsEdit, delOnlyOne,
delMore,queryStatistics } from '@/api/statisticsApi'
statisticsEdit, delMore,queryStatistics } from '@/api/statisticsApi'
export default {
name: "child1",
@@ -241,6 +241,7 @@ export default {
this.getTableData()
} else {
this.$message.warning('新增失败')
this.submitLoading = false
}
this.drawerTable = false
}, e => {
@@ -253,6 +254,7 @@ export default {
this.getTableData()
} else {
this.$message.warning('编辑失败')
this.submitLoading = false
}
this.drawerTable = false
},e => {
@@ -284,7 +286,7 @@ export default {
if (res.ok) {
this.$message.success('删除成功')
this.pageNo = 1
this.multipleSelection = ''
this.multipleSelection = []
this.getTableData()
} else {
this.$message.warning('删除失败')
@@ -327,7 +329,7 @@ export default {
this.editRowOne(command[0]);
break;
case "删除":
this.deleteRowOne("delOne", command[0].id);
this.deleteRowOne(command[0].id);
break;
}
},
@@ -349,7 +351,7 @@ export default {
// 行内删除
deleteRowOne(val) {
let delId = {
id: val
ids: val
}
this.$confirm('确定删除这些数据?', '提示', {
confirmButtonText: this.$t('m.determine'),
@@ -358,7 +360,7 @@ export default {
confirmButtonClass: 'common-button-primary',
roundButton: true
}).then(() => {
delOnlyOne(delId).then(res => {
delMore(delId).then(res => {
if (res.ok) {
this.$message.success('删除成功')
this.pageNo = 1
@@ -192,7 +192,7 @@
</el-table-column>
<el-table-column
label="标准号"
width="120"
width="150"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" class="table-jump" style="color: #F56C6C"
@@ -212,7 +212,7 @@
show-overflow-tooltip
prop="standName"
label="标准名称"
width="350"
min-width="300"
>
<template slot-scope="scope">
<a v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" @click="handlePreview(scope.row)" class="table-jump" style="color: #F56C6C">{{ scope.row.standName }}</a>
@@ -222,7 +222,7 @@
<el-table-column
prop="issueTime"
sortable="custom"
width="150"
width="120"
label="发布日期">
<template slot-scope="scope">
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ formatIssueDate(scope.row.issueTime) }}</span>
@@ -232,7 +232,7 @@
<el-table-column
prop="SSRQ"
sortable="custom"
width="150"
width="120"
label="实施日期">
<template slot-scope="scope">
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
@@ -2311,7 +2311,7 @@ export default {
],
standYear: [
{required: true, message: '标准年份不能为空', trigger: 'change'},
{validator: this.verify.testNumberCode, trigger: 'change'},
// {validator: this.verify.testNumberCode, trigger: 'change'},
{type: 'string', max: 100, message: '标准年份不能超过100个字符', trigger: 'change'}
],
standName: [
@@ -2358,7 +2358,7 @@ export default {
{type: 'string', max: 500, message: '文本说明要不能超过500个字符', trigger: 'blur'}
],
issueTime: [
{required: true, message: '发布日期不能为空', trigger: 'change'}
{required: false, message: '发布日期不能为空', trigger: 'change'}
]
},
// 代替标准号
@@ -4934,7 +4934,7 @@ export default {
rules[item.attrField] = rule
}
})
rules.issueTime = [{required: true, message: '发布日期不能为空', trigger: 'change'}]
rules.issueTime = [{required: false, message: '发布日期不能为空', trigger: 'change'}]
// this.rules = rules
// rules.standState = [{required: true, message: '标准状态不能为空', trigger: 'change'}]
this.$set(this, 'sarStandardsInfoRules', rules)
@@ -301,7 +301,7 @@
<el-table-column
show-overflow-tooltip
label="企标编号"
width="120"
width="150"
>
<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>-->
@@ -314,7 +314,7 @@
show-overflow-tooltip
prop="standName"
label="中文名称"
width="350"
min-width="300"
>
<template slot-scope="scope">
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
@@ -326,7 +326,7 @@
show-overflow-tooltip
prop="standEnName"
label="英文名称"
width="350"
min-width="300"
>
<template slot-scope="scope">
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
@@ -338,7 +338,7 @@
prop="issueTime"
label="发布日期"
sortable
width="150"
width="120"
>
<template slot-scope="scope">
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
@@ -350,7 +350,7 @@
prop="putTime"
label="实施日期"
sortable
width="150"
width="120"
>
<template slot-scope="scope">
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
@@ -200,7 +200,7 @@
<el-table-column
show-overflow-tooltip
label="政策编号"
width="120"
width="150"
>
<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>-->
@@ -213,7 +213,7 @@
show-overflow-tooltip
prop="lawsName"
label="中文名称"
width="350"
min-width="300"
>
<template slot-scope="scope">
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsName }}</a>
@@ -225,7 +225,7 @@
show-overflow-tooltip
prop="lawsEnName"
label="英文名称"
width="350"
min-width="300"
>
<template slot-scope="scope">
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsEnName }}</a>
@@ -237,7 +237,7 @@
prop="issueTime"
label="发文日期"
sortable
width="150"
width="120"
>
<template slot-scope="scope">
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
@@ -189,7 +189,7 @@
</el-table-column>
<el-table-column
label="标准号"
width="120"
width="150"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{
@@ -211,7 +211,7 @@
show-overflow-tooltip
prop="standName"
label="标准名称"
width="350"
min-width="300"
>
<template slot-scope="scope">
<a v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{
@@ -228,7 +228,7 @@
<el-table-column
prop="issueTime"
sortable="custom"
width="150"
width="120"
label="发布日期">
<template slot-scope="scope">
<div v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">
@@ -245,7 +245,7 @@
<el-table-column
prop="SSRQ"
sortable="custom"
width="150"
width="120"
label="实施日期">
<template slot-scope="scope">
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
@@ -2129,7 +2129,7 @@ export default {
],
standYear: [
{required: true, message: '标准年份不能为空', trigger: 'change'},
{validator: this.verify.testNumberCode, trigger: 'change'},
// {validator: this.verify.testNumberCode, trigger: 'change'},
{type: 'string', max: 100, message: '标准年份不能超过100个字符', trigger: 'change'}
],
standName: [
@@ -2151,7 +2151,7 @@ export default {
{required: false, message: '重要度不能为空', trigger: 'change'}
],
issueTime: [
{required: true, message: '发布日期不能为空', trigger: 'change'}
{required: false, message: '发布日期不能为空', trigger: 'change'}
]
},
sarStandardsInfoRules: {
@@ -2180,7 +2180,7 @@ export default {
{type: 'string', max: 1000, message: '文本说明不能超过1000个字符', trigger: 'change'}
],
issueTime: [
{required: true, message: '发布日期不能为空', trigger: 'change'}
{required: false, message: '发布日期不能为空', trigger: 'change'}
]
},
//
@@ -4642,7 +4642,7 @@ export default {
}
})
// rules.standState = [{required: true, message: '', trigger: 'change'}]
rules.issueTime = [{required: true, message: '发布日期不能为空', trigger: 'change'}]
rules.issueTime = [{required: false, message: '发布日期不能为空', trigger: 'change'}]
this.$set(this, 'sarStandardsInfoRules', rules)
this.$nextTick(() => {
this.$refs.sarStandardsInfoForm.clearValidate()
+36
View File
@@ -1476,6 +1476,42 @@ const routes = [
title: '企标废止流程'
}
},
{
path: '/qbfzStep4',
name: 'qbfzStep4',
component: () => import('@/pages/processCenter/pages/creatProcess/qbfz/step4.vue'),
meta: {
requireAuth: true,
title: '企标废止流程'
}
},
{
path: '/qbfzStep5',
name: 'qbfzStep5',
component: () => import('@/pages/processCenter/pages/creatProcess/qbfz/step5.vue'),
meta: {
requireAuth: true,
title: '企标废止流程'
}
},
{
path: '/qbfzStep6',
name: 'qbfzStep6',
component: () => import('@/pages/processCenter/pages/creatProcess/qbfz/step6.vue'),
meta: {
requireAuth: true,
title: '企标废止流程'
}
},
{
path: '/qbfzStep7',
name: 'qbfzStep7',
component: () => import('@/pages/processCenter/pages/creatProcess/qbfz/step7.vue'),
meta: {
requireAuth: true,
title: '企标废止流程'
}
},
//企标制修订计划管控流程
{
path: '/qbzxdjhgkStep1',