未符合项整改流程
This commit is contained in:
@@ -0,0 +1,26 @@
|
|||||||
|
import axios from '@/common/axiosV2'
|
||||||
|
|
||||||
|
// 查询未整改项列表接口
|
||||||
|
export function standUnqualified (data) {
|
||||||
|
return axios({
|
||||||
|
url: '/api/sarStandUnqualified/sar-stand-unqualified',
|
||||||
|
method: 'get',
|
||||||
|
params: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// 人员菜单列表获取
|
||||||
|
export function roleTreeData (data) {
|
||||||
|
return axios({
|
||||||
|
url: '/api/SarInstitution/institution/institutionAndUser',
|
||||||
|
method: 'get',
|
||||||
|
params: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// 上传文件
|
||||||
|
export function uploadFileText (data) {
|
||||||
|
return axios({
|
||||||
|
url: 'api/att/attFile/upload',
|
||||||
|
method: 'get',
|
||||||
|
params: data
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -54,7 +54,7 @@
|
|||||||
<div class="block" style="padding-top: 20px;">
|
<div class="block" style="padding-top: 20px;">
|
||||||
<el-timeline>
|
<el-timeline>
|
||||||
<el-form
|
<el-form
|
||||||
ref="Form"
|
ref="roleForm"
|
||||||
:model="roleForm"
|
:model="roleForm"
|
||||||
:rules="roleFormRules"
|
:rules="roleFormRules"
|
||||||
class="label-input-form">
|
class="label-input-form">
|
||||||
@@ -81,39 +81,6 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-timeline-item>
|
</el-timeline-item>
|
||||||
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
|
||||||
<el-card>
|
|
||||||
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
|
||||||
<h4>分发责任人</h4>
|
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
|
||||||
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
|
||||||
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
|
||||||
</div>
|
|
||||||
</el-form-item>
|
|
||||||
</el-card>
|
|
||||||
</el-timeline-item>
|
|
||||||
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
|
||||||
<el-card>
|
|
||||||
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
|
||||||
<h4>负责人</h4>
|
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
|
||||||
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
|
||||||
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
|
||||||
</div>
|
|
||||||
</el-form-item>
|
|
||||||
</el-card>
|
|
||||||
</el-timeline-item>
|
|
||||||
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
|
||||||
<el-card>
|
|
||||||
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
|
||||||
<h4>分发责任人</h4>
|
|
||||||
<div style="margin-top: 10px;width: 300px;">
|
|
||||||
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
|
||||||
<el-input v-model="roleForm.presidentUserName" placeholder="选择分发负责人" @click.native="choiceZRR('presidentUser', '选择分发负责人', roleForm.presidentUser)"></el-input>
|
|
||||||
</div>
|
|
||||||
</el-form-item>
|
|
||||||
</el-card>
|
|
||||||
</el-timeline-item>
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-timeline>
|
</el-timeline>
|
||||||
</div>
|
</div>
|
||||||
@@ -127,21 +94,23 @@
|
|||||||
>
|
>
|
||||||
<div class="search-area">
|
<div class="search-area">
|
||||||
<div class="content-top">
|
<div class="content-top">
|
||||||
<el-form :modal="nonConformitySearch" inline class="label-input-form">
|
<el-form :modal="queryUnqualidiedData" inline class="label-input-form">
|
||||||
<el-form-item label="标准号/标准名称" class="search-item">
|
<el-form-item label="标准号/标准名称" class="search-item">
|
||||||
<el-input v-model="nonConformitySearch.standId"
|
<el-input
|
||||||
placeholder="请输入"
|
v-model="queryUnqualidiedData.standId"
|
||||||
clearable
|
placeholder="请输入"
|
||||||
:maxlength="100"></el-input>
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="项目名称" class="search-item">
|
<el-form-item label="项目名称" class="search-item">
|
||||||
<el-input v-model="nonConformitySearch.productName"
|
<el-input
|
||||||
placeholder="请输入"
|
v-model="queryUnqualidiedData.productName"
|
||||||
clearable
|
placeholder="请输入"
|
||||||
:maxlength="100"></el-input>
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="责任部门" class="search-item">
|
<el-form-item label="责任部门" class="search-item">
|
||||||
<el-input v-model="nonConformitySearch.responsibleUnit" v-show="false" />
|
<el-input v-model="queryUnqualidiedData.responsibleUnit" v-show="false" />
|
||||||
<el-popover
|
<el-popover
|
||||||
placement="bottom"
|
placement="bottom"
|
||||||
popper-class="user-dept-popper"
|
popper-class="user-dept-popper"
|
||||||
@@ -150,7 +119,7 @@
|
|||||||
>
|
>
|
||||||
<el-input
|
<el-input
|
||||||
slot="reference"
|
slot="reference"
|
||||||
v-model="nonConformitySearch.responseUnitShow"
|
v-model="queryUnqualidiedData.responseUnitShow"
|
||||||
placeholder="根据责任部门查找"
|
placeholder="根据责任部门查找"
|
||||||
readonly
|
readonly
|
||||||
clearable
|
clearable
|
||||||
@@ -257,19 +226,15 @@ import ProcessHeader from '../../components/ProcessHeader'
|
|||||||
import ProcessFooter from '../../components/ProcessFooter'
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
import ProcessTitle from '../../components/ProcessTitle'
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
import {interfaceUrl} from "@/sysConfig";
|
import {interfaceUrl} from "@/sysConfig";
|
||||||
|
import { startProcess, completeTask } from '@/api/process.js'
|
||||||
|
import { standUnqualified } from '@/api/unqualProcess.js'
|
||||||
export default {
|
export default {
|
||||||
name: "step1",
|
name: "wfhxzgStep1",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
textarea: '', // 意见
|
textarea: '', // 意见
|
||||||
title: '', // 新增编辑抽屉标题
|
title: '', // 新增编辑抽屉标题
|
||||||
ListModel: false, // 新增编辑抽屉开关
|
ListModel: false, // 新增编辑抽屉开关
|
||||||
nonConformitySearch: {
|
|
||||||
standId: '', // 标准号/名称
|
|
||||||
productName: '', // 项目名称
|
|
||||||
responsibleUnit: '' // 责任部门
|
|
||||||
},
|
|
||||||
active: '1', // 默认显示
|
active: '1', // 默认显示
|
||||||
isSubmit: false,
|
isSubmit: false,
|
||||||
saveLoading: false,
|
saveLoading: false,
|
||||||
@@ -280,11 +245,26 @@ export default {
|
|||||||
itemsName: '',
|
itemsName: '',
|
||||||
planCloseTime: '',
|
planCloseTime: '',
|
||||||
responsibleUnit: '',
|
responsibleUnit: '',
|
||||||
dutyEngineer: ''
|
dutyEngineer: '',
|
||||||
|
dutyPeopleInfo: '',
|
||||||
|
dutyPeople: '',
|
||||||
|
fileText: '',
|
||||||
|
fileTextId: '',
|
||||||
|
fileTextPath: ''
|
||||||
}],
|
}],
|
||||||
// 责任部门
|
// 责任部门
|
||||||
zNodesSItem: [],
|
zNodesSItem: [],
|
||||||
standModel: false,
|
standModel: false,
|
||||||
|
// 查询未符合项整改数据库数据
|
||||||
|
queryUnqualidiedData: {
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
total: 0,
|
||||||
|
closeState: '1',
|
||||||
|
standId: '', // 标准号/名称
|
||||||
|
productName: '', // 项目名称
|
||||||
|
responsibleUnit: '' // 责任部门
|
||||||
|
},
|
||||||
unqualidiedData: [{
|
unqualidiedData: [{
|
||||||
standId: '',
|
standId: '',
|
||||||
productName: '',
|
productName: '',
|
||||||
@@ -292,14 +272,24 @@ export default {
|
|||||||
itemsName: '',
|
itemsName: '',
|
||||||
planCloseTime: '',
|
planCloseTime: '',
|
||||||
responsibleUnit: '',
|
responsibleUnit: '',
|
||||||
dutyEngineer: ''
|
dutyEngineer: '',
|
||||||
|
dutyPeopleInfo: '',
|
||||||
|
dutyPeopleInfoId: '',
|
||||||
|
dutyPeople: '',
|
||||||
|
dutyPeopleId: '',
|
||||||
|
fileText: '',
|
||||||
|
fileTextId: '',
|
||||||
|
fileTextPath: ''
|
||||||
}],
|
}],
|
||||||
selectedList: [], //未整改项的选择框
|
selectedList: [], //未整改项的选择框
|
||||||
roleForm: {
|
roleForm: {
|
||||||
startUserName: this.$store.getters.userInfo.userName,
|
startUserName: this.$store.getters.userInfo.userName,
|
||||||
startUser: this.$store.getters.userInfo.userId,
|
startUser: this.$store.getters.userInfo.userId,
|
||||||
|
dockUserName: '',
|
||||||
|
dockUser: ''
|
||||||
},
|
},
|
||||||
roleFormRules: {
|
roleFormRules: {
|
||||||
|
dockUserName: [{ required: true, message: "请选择标准法规工程师", trigger: ['blur', 'change']}]
|
||||||
},
|
},
|
||||||
nodeList: [],
|
nodeList: [],
|
||||||
drawerTitle: '', //drawer标题
|
drawerTitle: '', //drawer标题
|
||||||
@@ -309,6 +299,7 @@ export default {
|
|||||||
children: 'children',
|
children: 'children',
|
||||||
label: 'name'
|
label: 'name'
|
||||||
},
|
},
|
||||||
|
taskID: '',
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
@@ -318,21 +309,32 @@ export default {
|
|||||||
},
|
},
|
||||||
mounted () {
|
mounted () {
|
||||||
this.getTree()
|
this.getTree()
|
||||||
|
this.getJsonData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getJsonData() {
|
||||||
|
const params = {
|
||||||
|
type: '8'
|
||||||
|
}
|
||||||
|
startProcess(params).then(res => {
|
||||||
|
this.taskID = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
//点击新增事件
|
//点击新增事件
|
||||||
addList() {
|
addList() {
|
||||||
this.$http.get("sarStandUnqualified/sar-stand-unqualified", "", {
|
standUnqualified(this.queryUnqualidiedData).then(res => {
|
||||||
...this.nonConformitySearch,
|
|
||||||
current: this.pageNo,
|
|
||||||
size: this.$store.getters.userInfo.configContent
|
|
||||||
}, {
|
|
||||||
_this: this
|
|
||||||
}, res => {
|
|
||||||
this.unqualidiedData = res.data.records
|
this.unqualidiedData = res.data.records
|
||||||
|
this.unqualidiedData.forEach(item => {
|
||||||
|
this.$set(item,'dutyPeopleInfo','')
|
||||||
|
this.$set(item,'dutyPeople','')
|
||||||
|
this.$set(item,'dutyPeopleInfoId','')
|
||||||
|
this.$set(item,'dutyPeopleId','')
|
||||||
|
this.$set(item,'fileText','')
|
||||||
|
this.$set(item,'fileTextId','')
|
||||||
|
this.$set(item,'fileTextPath','')
|
||||||
|
})
|
||||||
this.total = res.data.total
|
this.total = res.data.total
|
||||||
}, e => {
|
})
|
||||||
});
|
|
||||||
this.standModel = true;
|
this.standModel = true;
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -371,7 +373,7 @@ export default {
|
|||||||
OkDrawer() {
|
OkDrawer() {
|
||||||
if (this.selectedList.length !== 0) {
|
if (this.selectedList.length !== 0) {
|
||||||
this.dataList = this.selectedList
|
this.dataList = this.selectedList
|
||||||
this.ListModel = false;
|
this.standModel = false;
|
||||||
} else {
|
} else {
|
||||||
this.$message.warning("请选择至少一条数据进行带入");
|
this.$message.warning("请选择至少一条数据进行带入");
|
||||||
}
|
}
|
||||||
@@ -386,12 +388,40 @@ export default {
|
|||||||
// 保存按钮
|
// 保存按钮
|
||||||
handleSave() {},
|
handleSave() {},
|
||||||
// 提交按钮
|
// 提交按钮
|
||||||
handleSubmit() {},
|
handleSubmit() {
|
||||||
|
let json = {
|
||||||
|
startUser: this.$store.getters.userInfo.userId,
|
||||||
|
engineer: this.roleForm.dockUser,
|
||||||
|
standardInfoList: this.dataList,
|
||||||
|
}
|
||||||
|
if (this.dataList[0].standId === '') {
|
||||||
|
this.$message.warning('请选择基础信息进行添加')
|
||||||
|
} else {
|
||||||
|
if (this.roleForm.dockUserName === '') {
|
||||||
|
this.$message.warning('请选择基础信息进行添加')
|
||||||
|
} else {
|
||||||
|
this.$refs['roleForm'].validate((valid) => {
|
||||||
|
if (valid) {
|
||||||
|
const params = new FormData();
|
||||||
|
params.set('json', JSON.stringify(json))
|
||||||
|
params.set('userId', this.$store.getters.userInfo.userId)
|
||||||
|
params.set('taskIds', this.taskID)
|
||||||
|
completeTask(params).then(res => {
|
||||||
|
if(res.success === true) {
|
||||||
|
this.$message.success('提交成功')
|
||||||
|
this.$router.push("/processCenter");
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
// 获取流程节点数据
|
// 获取流程节点数据
|
||||||
getTree () {
|
getTree () {
|
||||||
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||||
this.treeData = res.data
|
this.treeData = res.data
|
||||||
|
console.log(res.data)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 流程阶段负责人选择
|
// 流程阶段负责人选择
|
||||||
@@ -413,19 +443,8 @@ export default {
|
|||||||
},
|
},
|
||||||
// 流程节点负责人抽屉保存按钮
|
// 流程节点负责人抽屉保存按钮
|
||||||
saveUserInfo () {
|
saveUserInfo () {
|
||||||
if (this.type === 'dockUser') {
|
this.roleForm.dockUser = this.roleRow.id
|
||||||
this.roleForm.dockUser = this.roleRow.id
|
this.roleForm.dockUserName = this.roleRow.name
|
||||||
this.roleForm.dockUserName = this.roleRow.name
|
|
||||||
} else if (this.type === 'ministerUser') {
|
|
||||||
this.roleForm.ministerUser = this.roleRow.id
|
|
||||||
this.roleForm.ministerUserName = this.roleRow.name
|
|
||||||
} else if (this.type === 'directorUser') {
|
|
||||||
this.roleForm.directorUser = this.roleRow.id
|
|
||||||
this.roleForm.directorUserName = this.roleRow.name
|
|
||||||
} else if (this.type === 'presidentUser') {
|
|
||||||
this.roleForm.presidentUser = this.roleRow.id
|
|
||||||
this.roleForm.presidentUserName = this.roleRow.name
|
|
||||||
}
|
|
||||||
this.modalshowflag = false
|
this.modalshowflag = false
|
||||||
},
|
},
|
||||||
// 流程节点负责人抽屉取消按钮
|
// 流程节点负责人抽屉取消按钮
|
||||||
@@ -438,7 +457,7 @@ export default {
|
|||||||
},
|
},
|
||||||
// 清空 查询条件
|
// 清空 查询条件
|
||||||
clearAllSearch (search = true) {
|
clearAllSearch (search = true) {
|
||||||
this.nonConformitySearch = {
|
this.queryUnqualidiedData = {
|
||||||
standId: '',
|
standId: '',
|
||||||
productName: '',
|
productName: '',
|
||||||
responsibleUnit: ''
|
responsibleUnit: ''
|
||||||
|
|||||||
@@ -90,7 +90,7 @@
|
|||||||
:data="dataList"
|
:data="dataList"
|
||||||
border
|
border
|
||||||
ref="multipleTable"
|
ref="multipleTable"
|
||||||
@select="handleSelectionChange"
|
@selection-change="handleSelectionChange"
|
||||||
height="49%"
|
height="49%"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
@@ -103,17 +103,17 @@
|
|||||||
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||||
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||||
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
||||||
<el-table-column label="选择分发责任人" prop="dutyPeople">
|
<el-table-column label="选择分发责任人" prop="dutyPeopleInfo">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="scope.row.show">
|
<span v-if="scope.row.show">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="scope.row.dutyPeople"
|
v-model="scope.row.dutyPeopleInfo"
|
||||||
size="mini"
|
size="mini"
|
||||||
placeholder="请输入内容"
|
placeholder="请输入内容"
|
||||||
@click.native="choiceDuty"
|
@click.native="choiceDuty"
|
||||||
/>
|
/>
|
||||||
</span>
|
</span>
|
||||||
<span v-else>{{scope.row.dutyPeople}}</span>
|
<span v-else>{{scope.row.dutyPeopleInfo}}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@@ -175,15 +175,18 @@
|
|||||||
import ProcessHeader from '../../components/ProcessHeader'
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
import ProcessFooter from '../../components/ProcessFooter'
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
import ProcessTitle from '../../components/ProcessTitle'
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
import {interfaceUrl} from "@/sysConfig";
|
import { roleTreeData } from "@/api/unqualProcess.js"
|
||||||
|
import {completeTask, inboundLiaisonDetail} from "@/api/process.js"
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "step2",
|
name: "wfhxzgStep2",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
textarea: '', // 意见
|
textarea: '', // 意见
|
||||||
title: '', // 新增编辑抽屉标题
|
title: '', // 新增编辑抽屉标题
|
||||||
ListModel: false, // 新增编辑抽屉开关
|
ListModel: false, // 新增编辑抽屉开关
|
||||||
|
taskIds: this.$route.query.taskIds,
|
||||||
|
pId: this.$route.query.prcId,
|
||||||
nonConformitySearch: {
|
nonConformitySearch: {
|
||||||
standId: '', // 标准号/名称
|
standId: '', // 标准号/名称
|
||||||
productName: '', // 项目名称
|
productName: '', // 项目名称
|
||||||
@@ -193,6 +196,8 @@ export default {
|
|||||||
isSubmit: false,
|
isSubmit: false,
|
||||||
saveLoading: false,
|
saveLoading: false,
|
||||||
dataList: [],
|
dataList: [],
|
||||||
|
endDataList: [],
|
||||||
|
lastDataList: [],
|
||||||
// 新增选择分发责任人数组
|
// 新增选择分发责任人数组
|
||||||
multipleSelection: [],
|
multipleSelection: [],
|
||||||
// 当前页数
|
// 当前页数
|
||||||
@@ -214,6 +219,15 @@ export default {
|
|||||||
nodeList: [],
|
nodeList: [],
|
||||||
drawerTitle: '', //drawer标题
|
drawerTitle: '', //drawer标题
|
||||||
modalshowflag: false, // drawer开关
|
modalshowflag: false, // drawer开关
|
||||||
|
roleForm: {
|
||||||
|
dutyUserInfo: [],
|
||||||
|
dutyUserInfoName: [],
|
||||||
|
dutyPeopleInfo: '',
|
||||||
|
dutyPeople: ''
|
||||||
|
},
|
||||||
|
props: { label: 'name', children: 'children', value: 'id', multiple: true, disabled: false },
|
||||||
|
dutyUserCaseData: [],
|
||||||
|
roleFormRules: {},
|
||||||
treeData: [], // 人员数据
|
treeData: [], // 人员数据
|
||||||
defaultProps: {
|
defaultProps: {
|
||||||
children: 'children',
|
children: 'children',
|
||||||
@@ -232,47 +246,20 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getData() {
|
getData() {
|
||||||
this.dataList = [
|
const params = {
|
||||||
{
|
taskIds: this.taskIds,
|
||||||
standId: '1',
|
pId: this.pId,
|
||||||
productName: '1',
|
}
|
||||||
itemsNum: '1',
|
inboundLiaisonDetail(params).then(res => {
|
||||||
itemsName: '1',
|
const processForm = JSON.parse(res.mesg)
|
||||||
planCloseTime: '1',
|
this.getFormFieldList(processForm)
|
||||||
responsibleUnit: '1',
|
})
|
||||||
dutyEngineer: '1',
|
},
|
||||||
dutyPeople: '',
|
getFormFieldList (item) {
|
||||||
},{
|
this.$nextTick(() => {
|
||||||
standId: '332',
|
this.dataList = JSON.parse(JSON.stringify(item)).standardInfoList
|
||||||
productName: '333',
|
})
|
||||||
itemsNum: '33',
|
|
||||||
itemsName: '33',
|
|
||||||
planCloseTime: '33',
|
|
||||||
responsibleUnit: '33',
|
|
||||||
dutyEngineer: '33',
|
|
||||||
dutyPeople: ''
|
|
||||||
},{
|
|
||||||
standId: '312`',
|
|
||||||
productName: '31312',
|
|
||||||
itemsNum: '31`2',
|
|
||||||
itemsName: '312`1`',
|
|
||||||
planCloseTime: '321`3`2',
|
|
||||||
responsibleUnit: '312`123`',
|
|
||||||
dutyEngineer: '312123',
|
|
||||||
dutyPeople: '121'
|
|
||||||
},{
|
|
||||||
standId: '32123',
|
|
||||||
productName: '32132',
|
|
||||||
itemsNum: '312321',
|
|
||||||
itemsName: '3123',
|
|
||||||
planCloseTime: '3123',
|
|
||||||
responsibleUnit: '3123',
|
|
||||||
dutyEngineer: '3123',
|
|
||||||
dutyPeople: ''
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 批量选择分发责任人
|
// 批量选择分发责任人
|
||||||
dutyEngineerList() {
|
dutyEngineerList() {
|
||||||
if (this.multipleSelection.length === 0) {
|
if (this.multipleSelection.length === 0) {
|
||||||
@@ -287,12 +274,12 @@ export default {
|
|||||||
// 选择勾选项的集合
|
// 选择勾选项的集合
|
||||||
handleSelectionChange(value) {
|
handleSelectionChange(value) {
|
||||||
this.multipleSelection = value
|
this.multipleSelection = value
|
||||||
console.log(value)
|
|
||||||
},
|
},
|
||||||
// 选择分发责任人时
|
// 选择分发责任人时
|
||||||
choiceDuty(type, title, id) {
|
choiceDuty(type, title, id) {
|
||||||
this.nodeList = []
|
this.nodeList = []
|
||||||
this.nodeList.push(id)
|
this.nodeList.push(id)
|
||||||
|
this.type = type
|
||||||
this.drawerTitle = title
|
this.drawerTitle = title
|
||||||
this.modalshowflag = true
|
this.modalshowflag = true
|
||||||
},
|
},
|
||||||
@@ -306,37 +293,91 @@ export default {
|
|||||||
// 保存按钮
|
// 保存按钮
|
||||||
handleSave() {},
|
handleSave() {},
|
||||||
// 提交按钮
|
// 提交按钮
|
||||||
handleSubmit() {},
|
handleSubmit() {
|
||||||
|
let zqa = new Map();
|
||||||
|
for (let lastDataListElement of this.lastDataList) {
|
||||||
|
let a = zqa.get(lastDataListElement.dutyPeopleInfoId)
|
||||||
|
if( a == null){
|
||||||
|
a = {
|
||||||
|
id: lastDataListElement.dutyPeopleInfoId,
|
||||||
|
name: lastDataListElement.dutyPeopleInfo,
|
||||||
|
standardInfoList: []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
a.standardInfoList.push(lastDataListElement);
|
||||||
|
zqa.set(a.id, a);
|
||||||
|
}
|
||||||
|
let list = [];
|
||||||
|
for(let item of zqa) {
|
||||||
|
list.push(item[1])
|
||||||
|
}
|
||||||
|
let json = {
|
||||||
|
dockUserList: list,
|
||||||
|
// engineer: this.$store.getters.userInfo.userId,
|
||||||
|
// standardInfoList: list[0].standardInfoList,
|
||||||
|
}
|
||||||
|
console.log(json)
|
||||||
|
let flag=false
|
||||||
|
this.dataList.forEach(item => {
|
||||||
|
if (item.dutyPeopleInfo === '') {
|
||||||
|
this.$message.warning('请选择分发负责人填入')
|
||||||
|
flag=true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if(flag)return;
|
||||||
|
const params = new FormData();
|
||||||
|
params.set('json', JSON.stringify(json))
|
||||||
|
params.set('userId', this.$store.getters.userInfo.userId)
|
||||||
|
params.set('taskIds', this.taskIds)
|
||||||
|
completeTask(params).then(res => {
|
||||||
|
if(res.success === true) {
|
||||||
|
this.$message.success('提交成功')
|
||||||
|
this.$router.push("/processCenter");
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 流程阶段负责人选择
|
||||||
|
choiceZRR (type, title, id) {
|
||||||
|
this.nodeList = []
|
||||||
|
this.nodeList.push(id)
|
||||||
|
this.type = type
|
||||||
|
this.drawerTitle = title
|
||||||
|
this.modalshowflag = true
|
||||||
|
},
|
||||||
// 获取流程节点数据
|
// 获取流程节点数据
|
||||||
getTree () {
|
getTree () {
|
||||||
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
roleTreeData().then(res => {
|
||||||
this.treeData = res.data
|
this.treeData = res.data
|
||||||
|
this.dutyUserCaseData = res.data
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
drawerCheck (data) {
|
drawerCheck (data) {
|
||||||
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
||||||
if(getlist.length == 1) {
|
if(getlist.length !== 0) {
|
||||||
this.roleRow = getlist[0]
|
this.roleRow = getlist
|
||||||
}else {
|
}else {
|
||||||
this.$refs.tree.setCheckedKeys([data.id]);
|
this.$refs.tree.setCheckedKeys([data.id]);
|
||||||
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
|
this.roleRow = this.$refs.tree.getCheckedNodes()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 流程节点负责人抽屉保存按钮
|
// 流程节点负责人抽屉保存按钮
|
||||||
saveUserInfo () {
|
saveUserInfo () {
|
||||||
// 选取负责人时的操作
|
// 选取负责人时的操作
|
||||||
for (let i = 0; i < this.multipleSelection.length; i++ ) {
|
for (let i = 0; i < this.multipleSelection.length; i++ ) {
|
||||||
this.multipleSelection[i].dutyPeople = this.roleRow.name
|
this.multipleSelection[i].dutyPeopleInfo = this.roleRow[0].name
|
||||||
for (let b = 0; b < this.multipleSelection.length; b++) {
|
this.multipleSelection[i].dutyPeopleInfoId = this.roleRow[0].id
|
||||||
this.multipleSelection[b].dutyPeople = this.multipleSelection[i].dutyPeople
|
for (let b = 0; b < this.multipleSelection.length; b++) {
|
||||||
this.dataList.forEach(val=> {
|
this.dataList[b].dutyPeopleInfo = this.multipleSelection[i].dutyPeopleInfo
|
||||||
val.show = false
|
this.dataList[b].dutyPeopleInfoId = this.multipleSelection[i].dutyPeopleInfoId
|
||||||
})
|
this.dataList.forEach(val=> {
|
||||||
}
|
val.show = false
|
||||||
this.multipleSelection = []
|
})
|
||||||
|
}
|
||||||
|
this.lastDataList = this.dataList
|
||||||
this.$refs.multipleTable.clearSelection();
|
this.$refs.multipleTable.clearSelection();
|
||||||
}
|
}
|
||||||
|
this.roleForm.dutyUserInfoName = this.roleRow.name
|
||||||
this.modalshowflag = false
|
this.modalshowflag = false
|
||||||
},
|
},
|
||||||
// 流程节点负责人抽屉取消按钮
|
// 流程节点负责人抽屉取消按钮
|
||||||
|
|||||||
@@ -168,10 +168,10 @@
|
|||||||
import ProcessHeader from '../../components/ProcessHeader'
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
import ProcessFooter from '../../components/ProcessFooter'
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
import ProcessTitle from '../../components/ProcessTitle'
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
import {interfaceUrl} from "@/sysConfig";
|
import {completeTask, inboundLiaisonDetail} from "@/api/process.js";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "step3",
|
name: "wfhxzgStep3",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
textarea: '', // 意见
|
textarea: '', // 意见
|
||||||
@@ -185,26 +185,9 @@ export default {
|
|||||||
active: '1', // 默认显示
|
active: '1', // 默认显示
|
||||||
isSubmit: false,
|
isSubmit: false,
|
||||||
saveLoading: false,
|
saveLoading: false,
|
||||||
dataList: [
|
taskIds: this.$route.query.taskIds,
|
||||||
{
|
pId: this.$route.query.prcId,
|
||||||
standId: '1',
|
dataList: [],
|
||||||
productName: '1',
|
|
||||||
itemsNum: '1',
|
|
||||||
itemsName: '1',
|
|
||||||
planCloseTime: '1',
|
|
||||||
responsibleUnit: '1',
|
|
||||||
dutyEngineer: '1',
|
|
||||||
dutyPeople: '13123'
|
|
||||||
},{
|
|
||||||
standId: '',
|
|
||||||
productName: '',
|
|
||||||
itemsNum: '',
|
|
||||||
itemsName: '',
|
|
||||||
planCloseTime: '',
|
|
||||||
responsibleUnit: '',
|
|
||||||
dutyEngineer: '',
|
|
||||||
dutyPeople: ''
|
|
||||||
}],
|
|
||||||
newDataList: [],
|
newDataList: [],
|
||||||
|
|
||||||
// 责任部门
|
// 责任部门
|
||||||
@@ -226,9 +209,30 @@ export default {
|
|||||||
ProcessTitle
|
ProcessTitle
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
this.getData()
|
||||||
this.getTree()
|
this.getTree()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getData() {
|
||||||
|
const params = {
|
||||||
|
taskIds: this.taskIds,
|
||||||
|
pId: this.pId,
|
||||||
|
}
|
||||||
|
inboundLiaisonDetail(params).then(res => {
|
||||||
|
const processForm = JSON.parse(res.mesg)
|
||||||
|
this.getFormFieldList(processForm)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getFormFieldList (item) {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
let fileData = JSON.parse(JSON.stringify(item)).dockUserList
|
||||||
|
for (let i = 0; i<fileData.length; i++) {
|
||||||
|
if (fileData[i].name === this.$store.getters.userInfo.userName) {
|
||||||
|
this.dataList = fileData[i].standardInfoList
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
// 选择责任人的按钮操作
|
// 选择责任人的按钮操作
|
||||||
selectPeople(val) {
|
selectPeople(val) {
|
||||||
this.newDataList = val
|
this.newDataList = val
|
||||||
@@ -242,7 +246,47 @@ export default {
|
|||||||
// 保存按钮
|
// 保存按钮
|
||||||
handleSave() {},
|
handleSave() {},
|
||||||
// 提交按钮
|
// 提交按钮
|
||||||
handleSubmit() {},
|
handleSubmit() {
|
||||||
|
let zqa = new Map();
|
||||||
|
for (let lastDataListElement of this.lastDataList) {
|
||||||
|
let a = zqa.get(lastDataListElement.dutyPeopleId)
|
||||||
|
if( a == null){
|
||||||
|
a = {
|
||||||
|
id: lastDataListElement.dutyPeopleId,
|
||||||
|
name: lastDataListElement.dutyPeople,
|
||||||
|
standardInfoList: []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
a.standardInfoList.push(lastDataListElement);
|
||||||
|
zqa.set(a.id, a);
|
||||||
|
}
|
||||||
|
let list = [];
|
||||||
|
for(let item of zqa) {
|
||||||
|
list.push(item[1])
|
||||||
|
}
|
||||||
|
let json = {
|
||||||
|
responUserList: list,
|
||||||
|
actionFlag: 0
|
||||||
|
}
|
||||||
|
let flag=false
|
||||||
|
this.dataList.forEach(item => {
|
||||||
|
if (item.dutyPeople === '') {
|
||||||
|
this.$message.warning('请选择负责人填入')
|
||||||
|
flag=true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if(flag)return;
|
||||||
|
const params = new FormData();
|
||||||
|
params.set('json', JSON.stringify(json))
|
||||||
|
params.set('userId', this.$store.getters.userInfo.userId)
|
||||||
|
params.set('taskIds', this.taskIds)
|
||||||
|
completeTask(params).then(res => {
|
||||||
|
if (res.success === true) {
|
||||||
|
this.$message.success('提交成功')
|
||||||
|
this.$router.push("/processCenter");
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
// 获取流程节点数据
|
// 获取流程节点数据
|
||||||
getTree () {
|
getTree () {
|
||||||
@@ -263,6 +307,9 @@ export default {
|
|||||||
saveUserInfo () {
|
saveUserInfo () {
|
||||||
// 选择责任人时input框内值
|
// 选择责任人时input框内值
|
||||||
this.newDataList.dutyPeople = this.roleRow.name
|
this.newDataList.dutyPeople = this.roleRow.name
|
||||||
|
this.newDataList.dutyPeopleId = this.roleRow.id
|
||||||
|
this.lastDataList = this.dataList
|
||||||
|
console.log(this.dataList)
|
||||||
this.modalshowflag = false
|
this.modalshowflag = false
|
||||||
},
|
},
|
||||||
// 流程节点负责人抽屉取消按钮
|
// 流程节点负责人抽屉取消按钮
|
||||||
|
|||||||
@@ -92,27 +92,28 @@
|
|||||||
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||||
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||||
<el-table-column prop="dutyPeople" label="负责人"/>
|
<el-table-column prop="dutyPeople" label="负责人"/>
|
||||||
<el-table-column label="佐证材料">
|
<el-table-column label="佐证材料" prop="info.fileText" show-overflow-tooltip width="150">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-upload
|
<div style="display: inline;">
|
||||||
v-model="fileText"
|
<el-input
|
||||||
ref="uploadFile"up
|
disabled
|
||||||
:action="uploadPath"
|
style="display: none"
|
||||||
class="upload-demo"
|
v-model="scope.row.fileText"
|
||||||
:http-request="handleUpload"
|
clearable
|
||||||
:on-success="handleOnsuccess"
|
/>
|
||||||
:on-error="handleOnError"
|
<div v-if="scope.row.fileText" type="primary" @click="fileUpload(scope.row)" class="fileClass">
|
||||||
:before-upload="handleBeforeUpload"
|
{{ scope.row.fileText }}
|
||||||
:before-remove="handleBeforeRemove"
|
</div>
|
||||||
:on-remove="handleOnRemove"
|
<div v-else>
|
||||||
:on-exceed="handleExceed"
|
<el-button
|
||||||
:limit="10"
|
type="primary"
|
||||||
:file-list="uploadFileList"
|
class="common-button-primary"
|
||||||
list-type="picture"
|
@click="fileUpload(scope.row)"
|
||||||
:auto-upload="true"
|
size="mini">
|
||||||
>
|
点击上传
|
||||||
<el-button type="text">上传佐证材料</el-button>
|
</el-button>
|
||||||
</el-upload>
|
</div>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@@ -141,6 +142,24 @@
|
|||||||
@submit="handleSubmit"
|
@submit="handleSubmit"
|
||||||
>
|
>
|
||||||
</ProcessFooter>
|
</ProcessFooter>
|
||||||
|
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
|
||||||
|
<el-upload
|
||||||
|
multiple
|
||||||
|
drag
|
||||||
|
:action="uploadPath"
|
||||||
|
ref="importfile"
|
||||||
|
name="file"
|
||||||
|
accept=".ZIP, .zip, .docx, .DOCX, .xls, .xlsx"
|
||||||
|
:before-upload="handleBeforeUpload"
|
||||||
|
:on-success="handleOnsuccess"
|
||||||
|
:show-file-list="false"
|
||||||
|
>
|
||||||
|
<div style="padding: 20px 0">
|
||||||
|
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||||
|
<p>点击或拖拽上传文件</p>
|
||||||
|
</div>
|
||||||
|
</el-upload>
|
||||||
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -149,9 +168,10 @@ import ProcessHeader from '../../components/ProcessHeader'
|
|||||||
import ProcessFooter from '../../components/ProcessFooter'
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
import ProcessTitle from '../../components/ProcessTitle'
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
import {interfaceUrl} from "@/sysConfig";
|
import {interfaceUrl} from "@/sysConfig";
|
||||||
|
import {inboundLiaisonDetail, completeTask} from "@/api/process"
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "step4",
|
name: "wfhxzgStep4",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
textarea: '', // 意见
|
textarea: '', // 意见
|
||||||
@@ -165,34 +185,17 @@ export default {
|
|||||||
active: '1', // 默认显示
|
active: '1', // 默认显示
|
||||||
isSubmit: false,
|
isSubmit: false,
|
||||||
saveLoading: false,
|
saveLoading: false,
|
||||||
dataList: [
|
dataList: [],
|
||||||
{
|
taskIds: this.$route.query.taskIds,
|
||||||
standId: '1',
|
pId: this.$route.query.prcId,
|
||||||
productName: '1',
|
|
||||||
itemsNum: '1',
|
|
||||||
itemsName: '1',
|
|
||||||
planCloseTime: '1',
|
|
||||||
responsibleUnit: '1',
|
|
||||||
dutyEngineer: '1',
|
|
||||||
dutyPeople: '13123'
|
|
||||||
},{
|
|
||||||
standId: '',
|
|
||||||
productName: '',
|
|
||||||
itemsNum: '',
|
|
||||||
itemsName: '',
|
|
||||||
planCloseTime: '',
|
|
||||||
responsibleUnit: '',
|
|
||||||
dutyEngineer: '',
|
|
||||||
dutyPeople: '13123'
|
|
||||||
}],
|
|
||||||
// 当前页数
|
// 当前页数
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
total: 0,
|
total: 0,
|
||||||
myLoading: false,
|
myLoading: false,
|
||||||
// 上传路径
|
// 上传路径
|
||||||
uploadPath: 'api/att/attFile/upload',
|
uploadPath: 'api/att/attFile/upload',
|
||||||
// 上传文件所储存的数组
|
fileMadel: false,
|
||||||
uploadFileList: [],
|
newDataList: [],
|
||||||
// 责任部门
|
// 责任部门
|
||||||
zNodesSItem: [],
|
zNodesSItem: [],
|
||||||
}
|
}
|
||||||
@@ -203,25 +206,84 @@ export default {
|
|||||||
ProcessTitle
|
ProcessTitle
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
this.getData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getData() {
|
||||||
|
const params = {
|
||||||
|
taskIds: this.taskIds,
|
||||||
|
pId: this.pId,
|
||||||
|
}
|
||||||
|
inboundLiaisonDetail(params).then(res => {
|
||||||
|
const processForm = JSON.parse(res.mesg)
|
||||||
|
this.getFormFieldList(processForm)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getFormFieldList (item) {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
console.log(item)
|
||||||
|
|
||||||
|
this.dataList = [JSON.parse(JSON.stringify(item.responUserInfo.info))]
|
||||||
|
console.log(this.dataList)
|
||||||
|
/*for (let i = 0; i<fileData.length; i++) {
|
||||||
|
if (fileData[i].name === this.$store.getters.userInfo.userName) {
|
||||||
|
this.dataList = fileData[i].standardInfoList
|
||||||
|
console.log(this.dataList)
|
||||||
|
}
|
||||||
|
}*/
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
handleTabs(name) {
|
handleTabs(name) {
|
||||||
this.active = name
|
this.active = name
|
||||||
},
|
},
|
||||||
/************ 上传佐证材料 *****************/
|
/************ 上传佐证材料 *****************/
|
||||||
// 上传材料
|
fileUpload (val) {
|
||||||
handleUpload() {},
|
this.newDataList = val
|
||||||
|
this.fileMadel = true
|
||||||
|
},
|
||||||
// 文件上传成功
|
// 文件上传成功
|
||||||
handleOnsuccess(res, file) {
|
handleOnsuccess(res, file, fileList) {
|
||||||
this.$message.success('上传成功!')
|
if (res.ok) {
|
||||||
console.log(file)
|
this.fileMadel = false
|
||||||
|
this.newDataList.fileText = res.data.name
|
||||||
|
this.newDataList.fileTextId = res.data.id
|
||||||
|
this.newDataList.fileTextPath = res.data.filePath
|
||||||
|
console.log(this.dataList)
|
||||||
|
this.$message({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: 'success'
|
||||||
|
})
|
||||||
|
}
|
||||||
},
|
},
|
||||||
// 文件上传失败后回调
|
// 文件上传失败后回调
|
||||||
handleOnError(res, file) {},
|
handleOnError(res, file) {},
|
||||||
// 文件上传限制条件
|
// 文件上传限制条件
|
||||||
handleBeforeUpload() {},
|
handleBeforeUpload(file) {
|
||||||
|
var filename = file.name
|
||||||
|
var index1 = filename.lastIndexOf('.')
|
||||||
|
var index2 = filename.length
|
||||||
|
var fileSuffix = filename.substring(index1, index2)
|
||||||
|
// const fileSuffix = file.name.split('.')[1] // 后缀名
|
||||||
|
// 判断上传文件格式
|
||||||
|
if (fileSuffix === '.ZIP' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.zip' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.spinShow = false
|
||||||
|
this.$message.error('文件' + file.name + '格式不正确,请上传ZIP/DOCX或XLS文件')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
// 判断文件上传大小
|
||||||
|
// eslint-disable-next-line no-unreachable
|
||||||
|
if (file.size / 1024 / 1024 <= 200) {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
// 移除上传的文件
|
// 移除上传的文件
|
||||||
handleBeforeRemove() {},
|
handleBeforeRemove() {},
|
||||||
handleOnRemove() {},
|
handleOnRemove() {},
|
||||||
@@ -233,7 +295,32 @@ export default {
|
|||||||
// 保存按钮
|
// 保存按钮
|
||||||
handleSave() {},
|
handleSave() {},
|
||||||
// 提交按钮
|
// 提交按钮
|
||||||
handleSubmit() {},
|
handleSubmit() {
|
||||||
|
let flag=false
|
||||||
|
this.dataList.forEach(item => {
|
||||||
|
if (item.fileText === '') {
|
||||||
|
this.$message.warning('请选择佐证材料进行上传')
|
||||||
|
flag=true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if(flag)return;
|
||||||
|
let fileDataList = this.dataList
|
||||||
|
let json = {
|
||||||
|
info: { fileDataList },
|
||||||
|
username: this.$store.getters.userInfo.userName
|
||||||
|
}
|
||||||
|
console.log(json)
|
||||||
|
const params = new FormData();
|
||||||
|
params.set('json', JSON.stringify(json))
|
||||||
|
params.set('userId', this.$store.getters.userInfo.userId)
|
||||||
|
params.set('taskIds', this.taskIds)
|
||||||
|
completeTask(params).then(res => {
|
||||||
|
if(res.success === true) {
|
||||||
|
this.$message.success('提交成功')
|
||||||
|
this.$router.push("/processCenter");
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
//未整改项抽屉中的查询按钮
|
//未整改项抽屉中的查询按钮
|
||||||
getTableByPage() {
|
getTableByPage() {
|
||||||
|
|||||||
@@ -106,19 +106,21 @@
|
|||||||
:rows="3"
|
:rows="3"
|
||||||
resize="none"
|
resize="none"
|
||||||
placeholder="请输入意见"
|
placeholder="请输入意见"
|
||||||
v-model="textarea">
|
v-model="commentText">
|
||||||
</el-input>
|
</el-input>
|
||||||
</div>
|
</div>
|
||||||
</el-collapse-item>
|
</el-collapse-item>
|
||||||
</el-collapse>
|
</el-collapse>
|
||||||
</div>
|
</div>
|
||||||
<ProcessFooter
|
<ProcessFooter
|
||||||
show-back
|
|
||||||
show-submit
|
show-submit
|
||||||
|
show-back
|
||||||
|
approval
|
||||||
|
@back="handleSubmitNo"
|
||||||
:submitLoading="isSubmit"
|
:submitLoading="isSubmit"
|
||||||
:backLoading="backLoading"
|
:saveLoading="saveLoading"
|
||||||
@back="handleDataBack"
|
|
||||||
@submit="handleSubmit"
|
@submit="handleSubmit"
|
||||||
|
submitBTNText="同意"
|
||||||
>
|
>
|
||||||
</ProcessFooter>
|
</ProcessFooter>
|
||||||
</div>
|
</div>
|
||||||
@@ -129,13 +131,15 @@ import ProcessHeader from '../../components/ProcessHeader'
|
|||||||
import ProcessFooter from '../../components/ProcessFooter'
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
import ProcessTitle from '../../components/ProcessTitle'
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
import {interfaceUrl} from "@/sysConfig";
|
import {interfaceUrl} from "@/sysConfig";
|
||||||
|
import {inboundLiaisonDetail} from "@/api/process";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "step5",
|
name: "wfhxzgStep5",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
textarea: '', // 意见
|
commentText: '',
|
||||||
title: '', // 新增编辑抽屉标题
|
title: '', // 新增编辑抽屉标题
|
||||||
|
saveLoading: false,
|
||||||
ListModel: false, // 新增编辑抽屉开关
|
ListModel: false, // 新增编辑抽屉开关
|
||||||
nonConformitySearch: {
|
nonConformitySearch: {
|
||||||
standId: '', // 标准号/名称
|
standId: '', // 标准号/名称
|
||||||
@@ -145,24 +149,10 @@ export default {
|
|||||||
active: '1', // 默认显示
|
active: '1', // 默认显示
|
||||||
isSubmit: false,
|
isSubmit: false,
|
||||||
backLoading: false,
|
backLoading: false,
|
||||||
dataList: [
|
dataList: [],
|
||||||
{
|
json: {},
|
||||||
standId: '1',
|
taskIds: this.$route.query.taskIds,
|
||||||
productName: '1',
|
pId: this.$route.query.prcId,
|
||||||
itemsNum: '1',
|
|
||||||
itemsName: '1',
|
|
||||||
planCloseTime: '1',
|
|
||||||
responsibleUnit: '1',
|
|
||||||
dutyEngineer: '1'
|
|
||||||
},{
|
|
||||||
standId: '',
|
|
||||||
productName: '',
|
|
||||||
itemsNum: '',
|
|
||||||
itemsName: '',
|
|
||||||
planCloseTime: '',
|
|
||||||
responsibleUnit: '',
|
|
||||||
dutyEngineer: ''
|
|
||||||
}],
|
|
||||||
// 当前页数
|
// 当前页数
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
total: 0,
|
total: 0,
|
||||||
@@ -180,15 +170,66 @@ export default {
|
|||||||
ProcessTitle
|
ProcessTitle
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
this.getData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getData() {
|
||||||
|
const params = {
|
||||||
|
taskIds: this.taskIds,
|
||||||
|
pId: this.pId,
|
||||||
|
}
|
||||||
|
inboundLiaisonDetail(params).then(res => {
|
||||||
|
const processForm = JSON.parse(res.mesg)
|
||||||
|
this.getFormFieldList(processForm)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getFormFieldList (item) {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
console.log(item)
|
||||||
|
this.dataList = JSON.parse(JSON.stringify(item)).info.fileDataList
|
||||||
|
console.log(this.dataList)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
handleTabs(name) {
|
handleTabs(name) {
|
||||||
this.active = name
|
this.active = name
|
||||||
},
|
},
|
||||||
|
|
||||||
// 提交按钮
|
// 提交按钮
|
||||||
handleSubmit() {},
|
handleSubmit() {
|
||||||
|
var json = this.json
|
||||||
|
json.actionFlag = 0
|
||||||
|
json.commentText = this.commentText
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskId: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('提交成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleSubmitNo() {
|
||||||
|
if (this.commentText) {
|
||||||
|
var json = this.json
|
||||||
|
json.actionFlag = 1
|
||||||
|
json.commentText = this.commentText
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskId: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('驳回成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message.warning('请输入反馈意见')
|
||||||
|
}
|
||||||
|
},
|
||||||
//未整改项抽屉中的查询按钮
|
//未整改项抽屉中的查询按钮
|
||||||
getTableByPage() {
|
getTableByPage() {
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -472,7 +472,6 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
break
|
break
|
||||||
//项目合规评估流程
|
//项目合规评估流程
|
||||||
case '5' :
|
case '5' :
|
||||||
@@ -500,7 +499,54 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
break
|
break
|
||||||
|
//未符合项整改流程
|
||||||
|
case '8' :
|
||||||
|
if(row.taskInfo === '下发至标准法规工程师'){
|
||||||
|
this.$router.push({
|
||||||
|
name: 'wfhxzgStep2',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else if (row.taskInfo === '确认+选择责任人') {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'wfhxzgStep3',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}else if (row.taskInfo === '上传佐证材料填写信息') {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'wfhxzgStep4',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}else {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'wfhxzgStep5',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
break
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
...mapMutations(['setProcess', 'setHandleInfo']),
|
...mapMutations(['setProcess', 'setHandleInfo']),
|
||||||
|
|||||||
+2
-2
@@ -341,7 +341,7 @@ const routes = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/wfhxzgStep1',
|
path: '/wfhxzgStep1',
|
||||||
name: 'wfhxzgStep2',
|
name: 'wfhxzgStep1',
|
||||||
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step1.vue'),
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step1.vue'),
|
||||||
meta: {
|
meta: {
|
||||||
requireAuth: true,
|
requireAuth: true,
|
||||||
@@ -1699,7 +1699,7 @@ router.beforeEach((to, from, next) => {
|
|||||||
// if (processCenter) {
|
// if (processCenter) {
|
||||||
// if (to.meta.process) {
|
// if (to.meta.process) {
|
||||||
// if (store.getters.getHandleInfo.prcType === to.meta.process.prcType &&
|
// if (store.getters.getHandleInfo.prcType === to.meta.process.prcType &&
|
||||||
// (store.getters.getHandleInfo.taskInfo === to.meta.process.taskInfo ||
|
// (store.getters.getHandleInfo. === to.meta.process.taskInfo ||
|
||||||
// (to.meta.process.taskInfo.__proto__.constructor === Array && to.meta.process.taskInfo.includes(store.getters.getHandleInfo.taskInfo)))) {
|
// (to.meta.process.taskInfo.__proto__.constructor === Array && to.meta.process.taskInfo.includes(store.getters.getHandleInfo.taskInfo)))) {
|
||||||
// next()
|
// next()
|
||||||
// } else {
|
// } else {
|
||||||
|
|||||||
Reference in New Issue
Block a user