Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
@@ -137,6 +137,15 @@ export function queryTaskFirst (data) {
|
||||
params: data
|
||||
})
|
||||
}
|
||||
|
||||
// 草稿删除
|
||||
export function taskDel (data) {
|
||||
return axios({
|
||||
url: '/api/lawss/activiti/delCG',
|
||||
method: 'post',
|
||||
params: data
|
||||
})
|
||||
}
|
||||
// 整改流程 详情查询nonconformity
|
||||
export function getNonconformity (data) {
|
||||
return axios({
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
<template>
|
||||
<div class="attribute-custom v-class">
|
||||
<div class="action-bar1">
|
||||
<el-button class="common-button-primary add-button" size="mini" v-btn-permission="''" type="primary" @click="showAddModel"><i class="el-icon-plus"></i>新增</el-button>
|
||||
<el-button class="common-button-default" size="mini" v-btn-permission="''" @click="showDisplayLocationDialog" >展示区域管理</el-button>
|
||||
<el-button class="common-button-primary add-button" style="margin-right: 5px" size="mini" v-btn-permission="''" type="primary" @click="showAddModel">新增</el-button>
|
||||
<el-button class="common-button-default" size="small" v-btn-permission="''" @click="showDisplayLocationDialog" >展示区域管理</el-button>
|
||||
</div>
|
||||
<loading :loading="attributeDataLoading">数据处理中</loading>
|
||||
<div class="content">
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
<template>
|
||||
<div class="attribute-custom v-class">
|
||||
<div class="action-bar1">
|
||||
<el-button class="common-button-primary add-button" size="mini" type="primary" v-btn-permission="''" @click="showAddModel"><i class="el-icon-plus"></i>新增</el-button>
|
||||
<el-button class="common-button-default" size="mini" @click="showDisplayLocationDialog" v-btn-permission="''">展示区域管理</el-button>
|
||||
<el-button class="common-button-primary add-button" style="margin-right: 5px" size="mini" type="primary" v-btn-permission="''" @click="showAddModel">新增</el-button>
|
||||
<el-button class="common-button-default" size="small" @click="showDisplayLocationDialog" v-btn-permission="''">展示区域管理</el-button>
|
||||
</div>
|
||||
<loading :loading="attributeDataLoading">数据处理中</loading>
|
||||
<div class="content">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<template>
|
||||
<div class="attribute-custom v-class">
|
||||
<div class="action-bar1">
|
||||
<el-button size="mini" style="margin-right: 5px" class="common-button-primary add-button" type="primary" @click="showAddModel"><i class="el-icon-plus"></i>新增</el-button>
|
||||
<el-button size="mini" style="margin-right: 5px" class="common-button-primary add-button" type="primary" @click="showAddModel">新增</el-button>
|
||||
<el-button size="small" class="common-button-default" @click="showDisplayLocationDialog">展示区域管理</el-button>
|
||||
</div>
|
||||
<loading :loading="attributeDataLoading">数据处理中</loading>
|
||||
|
||||
@@ -52,14 +52,14 @@
|
||||
prop="name"
|
||||
label="链接名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
<!-- <el-table-column
|
||||
prop="icon"
|
||||
label="链接图标">
|
||||
<template slot-scope="scope">
|
||||
<img v-if="scope.row.icon !== ''" style="height: 50px;width: 50px" :src="scope.row.icon">
|
||||
<span v-else>{{ '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>-->
|
||||
<el-table-column
|
||||
prop="url"
|
||||
show-overflow-tooltip
|
||||
@@ -121,7 +121,7 @@
|
||||
show-word-limit
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="链接图标" prop="icon" label-width="150px" class="add-form-item">
|
||||
<!-- <el-form-item label="链接图标" prop="icon" label-width="150px" class="add-form-item">
|
||||
<el-upload
|
||||
v-model="sarStandardsInfoEO.icon"
|
||||
class="upload-demo"
|
||||
@@ -133,7 +133,7 @@
|
||||
<img width="100%" v-if="imageUrl" :src="imageUrl" class="avatar">
|
||||
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
</el-form-item>-->
|
||||
<el-form-item label="链接" prop="url" label-width="150px" class="add-form-item">
|
||||
<el-input
|
||||
v-model="sarStandardsInfoEO.url"
|
||||
@@ -145,7 +145,7 @@
|
||||
</el-form>
|
||||
<span slot="footer" class="demo-drawer-footer">
|
||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="resetForm">取消</el-button>
|
||||
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check" @click="submit">确定</el-button>
|
||||
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check" :loading="subLoading" @click="submit">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
@@ -203,6 +203,7 @@ export default {
|
||||
|
||||
imageUrl: '',
|
||||
uploadUrl: 'api/att/attFile/upload',
|
||||
subLoading: false
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -351,6 +352,7 @@ export default {
|
||||
submit() {
|
||||
this.$refs['sarStandardsInfoForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
this.subLoading = true
|
||||
if (this.type === 1) {
|
||||
this.$http.postData('sarUrl/tsUrl/add', {
|
||||
...this.sarStandardsInfoEO,
|
||||
@@ -360,12 +362,14 @@ export default {
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('新增成功')
|
||||
this.subLoading = false
|
||||
this.modalshowflag = false
|
||||
this.imageUrl = ''
|
||||
this.linkListFirst = []
|
||||
this.getLink()
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
this.subLoading = false
|
||||
}
|
||||
})
|
||||
} else {
|
||||
@@ -382,11 +386,13 @@ export default {
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('修改成功')
|
||||
this.subLoading = false
|
||||
this.modalshowflag = false
|
||||
this.linkListFirst = []
|
||||
this.getLink()
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
this.subLoading = false
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -52,14 +52,14 @@
|
||||
prop="name"
|
||||
label="链接名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
<!-- <el-table-column
|
||||
prop="icon"
|
||||
label="链接图标">
|
||||
<template slot-scope="scope">
|
||||
<img v-if="scope.row.icon !== ''" style="height: 50px;width: 50px" :src="scope.row.icon">
|
||||
<span v-else>{{ '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>-->
|
||||
<el-table-column
|
||||
prop="url"
|
||||
show-overflow-tooltip
|
||||
@@ -121,7 +121,7 @@
|
||||
show-word-limit
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="链接图标" prop="icon" label-width="150px" class="add-form-item">
|
||||
<!-- <el-form-item label="链接图标" prop="icon" label-width="150px" class="add-form-item">
|
||||
<el-upload
|
||||
v-model="sarStandardsInfoEO.icon"
|
||||
class="avatar-uploader"
|
||||
@@ -132,7 +132,7 @@
|
||||
<img v-if="imageUrl" :src="imageUrl" class="avatar">
|
||||
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
</el-form-item>-->
|
||||
<el-form-item label="链接" prop="url" label-width="150px" class="add-form-item">
|
||||
<el-input
|
||||
v-model="sarStandardsInfoEO.url"
|
||||
@@ -144,7 +144,7 @@
|
||||
</el-form>
|
||||
<span slot="footer" class="demo-drawer-footer">
|
||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="resetForm">取消</el-button>
|
||||
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check" @click="submit">确定</el-button>
|
||||
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check" :loading="subLoading" @click="submit">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
@@ -203,7 +203,8 @@ export default {
|
||||
|
||||
imageUrl: '',
|
||||
uploadUrl: 'api/att/attFile/upload',
|
||||
verifyImg: ''
|
||||
verifyImg: '',
|
||||
subLoading: false
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -353,6 +354,7 @@ export default {
|
||||
submit() {
|
||||
this.$refs['sarStandardsInfoForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
this.subLoading = true
|
||||
if (this.type === 1) {
|
||||
this.$http.postData('sarUrl/tsUrl/add', {
|
||||
...this.sarStandardsInfoEO,
|
||||
@@ -362,11 +364,13 @@ export default {
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('新增成功')
|
||||
this.subLoading = false
|
||||
this.modalshowflag = false
|
||||
this.linkListSecond = []
|
||||
this.getLink()
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
this.subLoading = false
|
||||
}
|
||||
})
|
||||
} else {
|
||||
@@ -382,11 +386,13 @@ export default {
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('修改成功')
|
||||
this.subLoading = false
|
||||
this.modalshowflag = false
|
||||
this.linkListSecond = []
|
||||
this.getLink()
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
this.subLoading = false
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
class="common-button-primary add-button"
|
||||
@click="Add"
|
||||
size="mini">新增</el-button>
|
||||
<el-button type="primary"
|
||||
<el-button type="danger"
|
||||
class="common-button-primary add-button"
|
||||
@click="deleteList"
|
||||
size="mini">删除</el-button>
|
||||
|
||||
@@ -52,10 +52,10 @@
|
||||
size="mini"
|
||||
@click="showAddModel(1, null)"
|
||||
v-btn-permission="''"
|
||||
><i class="el-icon-plus"></i>新增</el-button
|
||||
>新增</el-button
|
||||
>
|
||||
<el-button @click="deleteAttr" size="mini" class="common-button-default" v-btn-permission=""
|
||||
><i class="iconfont"></i>删除</el-button
|
||||
<el-button @click="deleteAttr" size="mini" type="danger" class="common-button-default" v-btn-permission=""
|
||||
>删除</el-button
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<el-row>
|
||||
<span v-for="(item, index) in linkListFirst" :key="index">
|
||||
<el-col :span="4">
|
||||
<img
|
||||
<!-- <img
|
||||
style="height: 10px;width: 10px;margin-bottom: 3px"
|
||||
:src="item.icon"
|
||||
v-if="index < 5">
|
||||
v-if="index < 5">-->
|
||||
<a v-if="index < 5" style="color: #0068B7;cursor: pointer" @click="openLinkUrl(item.url)" target="_blank">
|
||||
<a v-if="item.name.length > 8"> {{ item.name.slice(0, 8) + '...' }}</a>
|
||||
<a v-else>{{ item.name }}</a>
|
||||
@@ -29,10 +29,10 @@
|
||||
<el-row style="margin-bottom: 10px;">
|
||||
<span v-for="(item, index) in linkListSecond" :key="index">
|
||||
<el-col :span="4">
|
||||
<img
|
||||
<!-- <img
|
||||
style="height: 10px;width: 10px;margin-bottom: 3px"
|
||||
:src="item.icon"
|
||||
v-if="index < 5">
|
||||
v-if="index < 5">-->
|
||||
<a v-if="index < 5" style="color: #0068B7;cursor: pointer" @click="openLinkUrl(item.url)" target="_blank">
|
||||
<a v-if="item.name.length > 8"> {{ item.name.slice(0, 8) + '...' }}</a>
|
||||
<a v-else>{{ item.name }}</a>
|
||||
|
||||
@@ -8,12 +8,12 @@
|
||||
<div class="date-picker" style="display: inline">
|
||||
<span class="item">
|
||||
<el-select v-model="formData.year" @change="handleDate">
|
||||
<el-option v-for="item in year" :value="item">{{ item }}</el-option>
|
||||
<el-option v-for="(item, index) in year" :value="item" :key="index">{{ item }}</el-option>
|
||||
</el-select>
|
||||
</span>
|
||||
<span class="item">
|
||||
<el-select v-model="formData.month" @change="handleDate">
|
||||
<el-option v-for="item in month" :value="item">{{ item }}</el-option>
|
||||
<el-option v-for="(item, index) in month" :value="item" :key="index">{{ item }}</el-option>
|
||||
</el-select>
|
||||
</span>
|
||||
</div>
|
||||
@@ -56,7 +56,7 @@
|
||||
</div>
|
||||
<div style="text-align: center;font-weight: bold;color: #99999a">暂无会议</div>
|
||||
</span>
|
||||
<el-card class="card_info" v-else v-for="item in todayData" :value="item">
|
||||
<el-card class="card_info" v-else v-for="(item, index) in todayData" :value="item" :key="index">
|
||||
<span v-for="res in item.attend" :key="res.fillPeopleId">
|
||||
<el-tag v-if="userId === res.fillPeopleId" type="success" size="mini">会议</el-tag>
|
||||
<el-tag v-else type="warning" size="mini">会议</el-tag>
|
||||
|
||||
@@ -10,6 +10,9 @@
|
||||
<el-button size="mini" @click="delData" v-btn-permission="'ef6262d0bf66a25633e903d76a93e579'"
|
||||
><i class="iconfont"></i>删除</el-button
|
||||
>
|
||||
<el-button size="mini" @click="editOcrRecord" v-btn-permission="'ef6262d0bf66a25633e903d76a93e579'"
|
||||
><i class="iconfont"></i>编辑</el-button
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content">
|
||||
@@ -100,26 +103,17 @@
|
||||
width="120"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" width="50" fixed="right">
|
||||
<el-table-column label="操作" align="center" width="150" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<div @click.stop style="display: inline-block">
|
||||
<el-dropdown trigger="click" @command="handleCommand">
|
||||
<i class="iconfont"></i>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item :command="[scope.row, '获取文件']" v-btn-permission="'018cb58e72025fc43a9bfe1bde00c14a'"
|
||||
>获取文件</el-dropdown-item
|
||||
>
|
||||
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'14bdb937d168478e65b139214e982a8c'"
|
||||
>编辑</el-dropdown-item
|
||||
>
|
||||
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'74cffbebad841dbe2e0597792e5aba3f'"
|
||||
>删除</el-dropdown-item
|
||||
>
|
||||
<!-- <el-dropdown-item :command="[scope.row, '在线编辑']" v-btn-permission=""
|
||||
>在线编辑</el-dropdown-item
|
||||
>-->
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
<el-button
|
||||
:disabled="scope.row.resultContent === '转换中'"
|
||||
v-btn-permission="'018cb58e72025fc43a9bfe1bde00c14a'"
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
@click="downloadFile(scope.row)"
|
||||
>获取文件</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -165,12 +159,14 @@
|
||||
<el-button
|
||||
v-if="uploadFilesdfEo.fileName === ''"
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
>{{ $t("m.upload")+' PDF'}}</el-button>
|
||||
<div v-else>
|
||||
<el-input readonly v-model="uploadFilesdfEo.fileName" class="bead-input" style="width: 62%;margin-right: 14px"></el-input>
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
>{{ $t("m.upload")+' PDF'}}</el-button>
|
||||
</div>
|
||||
@@ -719,6 +715,7 @@ export default {
|
||||
components: {},
|
||||
data() {
|
||||
return {
|
||||
selectTableDatas: [],
|
||||
textStatusMap: {}, // 文本状态id与name对应
|
||||
lawInfoTable:[],
|
||||
lawInfoTableLoading: true,
|
||||
@@ -784,184 +781,7 @@ export default {
|
||||
{ required: true, message: '文件不能为空', trigger: 'change' }
|
||||
]
|
||||
},
|
||||
options: [
|
||||
// {
|
||||
// value: "STAND_FILE",
|
||||
// label: "标准文本",
|
||||
// },
|
||||
// {
|
||||
// value: "DRAFT_FILE",
|
||||
// label: "草案",
|
||||
// },
|
||||
// {
|
||||
// value: "OPINION_FILE",
|
||||
// label: "征求意见稿",
|
||||
// },
|
||||
// {
|
||||
// value: "SENT_SCREEN_FILE",
|
||||
// label: "送审稿",
|
||||
// },
|
||||
// {
|
||||
// value: "APPROVAL_FILE",
|
||||
// label: "报批稿",
|
||||
// },
|
||||
// {
|
||||
// value: "RELEVANCE_FILE",
|
||||
// label: "关联文件",
|
||||
// },
|
||||
],
|
||||
/* standRecoColumn: [
|
||||
{
|
||||
type: 'selection',
|
||||
width: 60,
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: '序号',
|
||||
type: 'index',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: '资料类型',
|
||||
key: 'fileType',
|
||||
align: 'center',
|
||||
render: (h, params) => {
|
||||
let texts
|
||||
if (params.row.fileType === '1') {
|
||||
texts = '国内标准法规'
|
||||
} else if (params.row.fileType === '2') {
|
||||
texts = '海外标准法规'
|
||||
} else if (params.row.fileType === '3') {
|
||||
texts = '政策'
|
||||
} else if (params.row.fileType === '4') {
|
||||
texts = '企业标准'
|
||||
} else {
|
||||
texts = '标准'
|
||||
}
|
||||
return h('div', {
|
||||
class: {
|
||||
'text-overflow-hidden': true
|
||||
},
|
||||
attrs: {
|
||||
title: texts
|
||||
}
|
||||
}, texts)
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '标准号/政策号',
|
||||
key: 'standNumber',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: '标准名称/政策名称',
|
||||
key: 'standName',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: '文本状态',
|
||||
key: 'fileStatus',
|
||||
align: 'center',
|
||||
render: (h, params) => {
|
||||
let texts
|
||||
if (params.row.fileType === 'STAND_FILE') {
|
||||
texts = '标准文本'
|
||||
} else if (params.row.fileType === 'DRAFT_FILE') {
|
||||
texts = '草案'
|
||||
} else if (params.row.fileType === 'OPINION_FILE') {
|
||||
texts = '征求意见稿'
|
||||
} else if (params.row.fileType === 'SENT_SCREEN_FILE') {
|
||||
texts = '送审稿'
|
||||
} else if (params.row.fileType === 'APPROVAL_FILE') {
|
||||
texts = '报批稿'
|
||||
} else if (params.row.fileType === 'RELEVANCE_FILE') {
|
||||
texts = '关联文件'
|
||||
}
|
||||
return h('div', {
|
||||
class: {
|
||||
'text-overflow-hidden': true
|
||||
},
|
||||
attrs: {
|
||||
title: texts
|
||||
}
|
||||
}, texts)
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '转换结果',
|
||||
key: 'resultContent',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: '消耗时间',
|
||||
key: 'spendTime',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
key: 'action',
|
||||
width: 200,
|
||||
align: 'center',
|
||||
render: (h, params) => {
|
||||
return h('div', [
|
||||
h('Button', {
|
||||
props: {
|
||||
type: 'primary',
|
||||
size: 'small'
|
||||
},
|
||||
style: {
|
||||
marginRight: '5px'
|
||||
},
|
||||
on: {
|
||||
click: () => {
|
||||
this.downloadFile(params.row)
|
||||
}
|
||||
}
|
||||
}, '获取文件'),
|
||||
h('Button', {
|
||||
props: {
|
||||
type: 'warning',
|
||||
size: 'small'
|
||||
},
|
||||
style: {
|
||||
marginRight: '5px'
|
||||
},
|
||||
on: {
|
||||
click: () => {
|
||||
this.editOcrRecord(params.row)
|
||||
}
|
||||
}
|
||||
}, '编辑'),
|
||||
h('Dropdown', {
|
||||
props: {
|
||||
trigger: 'click'
|
||||
},
|
||||
on: {
|
||||
'on-click': (value) => {}
|
||||
}
|
||||
}, [
|
||||
h('Button', {
|
||||
props: {
|
||||
type: 'primary',
|
||||
size: 'small'
|
||||
}
|
||||
}, '更多'),
|
||||
h('DropdownMenu', {
|
||||
slot: 'list'
|
||||
},
|
||||
this.dropdownItems.map(function (type) {
|
||||
return h('DropdownItem', {
|
||||
props: {
|
||||
name: type.val
|
||||
}
|
||||
}, type.val)
|
||||
})
|
||||
)
|
||||
])
|
||||
])
|
||||
}
|
||||
}
|
||||
],*/
|
||||
options: [],
|
||||
modalType: "",
|
||||
standRecoList: [],
|
||||
selectTableData: [],
|
||||
@@ -1237,6 +1057,7 @@ export default {
|
||||
this.selectTableData = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectTableData.push(data[i].id);
|
||||
this.selectTableDatas.push(data[i])
|
||||
}
|
||||
},
|
||||
// 上传
|
||||
@@ -1326,28 +1147,32 @@ export default {
|
||||
this.$refs["importFileAboutStand"].clearFiles();
|
||||
},
|
||||
// 编辑
|
||||
editOcrRecord(row) {
|
||||
console.log('575',row)
|
||||
this.modalType = "2";
|
||||
this.title = "编辑信息";
|
||||
this.btnName = "保存";
|
||||
this.uploadFilesdfEo.fileName = row.fileName
|
||||
this.uploadModal = true;
|
||||
this.uploadFilesdfEo.standNumber = JSON.parse(
|
||||
JSON.stringify(row)
|
||||
).standNumber;
|
||||
this.uploadFilesdfEo.standName = JSON.parse(
|
||||
JSON.stringify(row)
|
||||
).standName;
|
||||
// this.uploadFilesdfEo.fileType = JSON.parse(JSON.stringify(row)).fileType
|
||||
this.options.map((item) => {
|
||||
if (item.attrName === JSON.parse(JSON.stringify(row)).fileType) {
|
||||
this.uploadFilesdfEo.fileType = item.attrName;
|
||||
}
|
||||
});
|
||||
this.uploadFilesdfEo.id = JSON.parse(JSON.stringify(row)).id;
|
||||
this.uploadFilesdfEo.attId = "";
|
||||
this.defaultFileList = [];
|
||||
editOcrRecord() {
|
||||
if (this.selectTableDatas.length === 1) {
|
||||
let row = this.selectTableDatas[0]
|
||||
this.modalType = "2";
|
||||
this.title = "编辑信息";
|
||||
this.btnName = "保存";
|
||||
this.uploadFilesdfEo.fileName = row.fileName
|
||||
this.uploadModal = true;
|
||||
this.uploadFilesdfEo.standNumber = JSON.parse(
|
||||
JSON.stringify(row)
|
||||
).standNumber;
|
||||
this.uploadFilesdfEo.standName = JSON.parse(
|
||||
JSON.stringify(row)
|
||||
).standName;
|
||||
// this.uploadFilesdfEo.fileType = JSON.parse(JSON.stringify(row)).fileType
|
||||
this.options.map((item) => {
|
||||
if (item.attrName === JSON.parse(JSON.stringify(row)).fileType) {
|
||||
this.uploadFilesdfEo.fileType = item.attrName;
|
||||
}
|
||||
});
|
||||
this.uploadFilesdfEo.id = JSON.parse(JSON.stringify(row)).id;
|
||||
this.uploadFilesdfEo.attId = "";
|
||||
this.defaultFileList = [];
|
||||
} else {
|
||||
this.$message.warning('请选择一条数据进行编辑')
|
||||
}
|
||||
},
|
||||
// 提交
|
||||
uploadSave() {
|
||||
@@ -1519,7 +1344,7 @@ export default {
|
||||
(res) => {
|
||||
if (res.ok) {
|
||||
this.standRecoList = res.data.list;
|
||||
this.total = res.data.list.length;
|
||||
this.total = res.data.count
|
||||
}
|
||||
},
|
||||
e => {}
|
||||
@@ -1533,7 +1358,6 @@ export default {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.options = res.data
|
||||
console.log(this.options);
|
||||
})
|
||||
this.getTableData();
|
||||
},
|
||||
|
||||
@@ -269,6 +269,9 @@ export default {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
phoneClick () {
|
||||
this.$router.push('/phoneBzrhStep2')
|
||||
},
|
||||
processTable() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
|
||||
@@ -292,6 +292,9 @@ export default {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
phoneClick () {
|
||||
this.$router.push('/phoneBzrhStep4')
|
||||
},
|
||||
// 右上标签页面切换
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
|
||||
@@ -303,6 +303,11 @@ export default {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
phoneClick () {
|
||||
if (this.taskInfo !== '标准法规工程师汇总修订完毕') {
|
||||
this.$router.push('/phoneBzrhStep6')
|
||||
}
|
||||
},
|
||||
// 右上标签页面切换
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
|
||||
@@ -274,6 +274,9 @@ export default {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
phoneClick () {
|
||||
this.$router.push('/phoneBzhhStep2')
|
||||
},
|
||||
// 右上标签页面切换
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
|
||||
@@ -241,6 +241,9 @@ export default {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
phoneClick () {
|
||||
this.$router.push('/phoneBzchStep2')
|
||||
},
|
||||
// 右上标签页面切换
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
|
||||
@@ -246,6 +246,9 @@ export default {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
phoneClick () {
|
||||
this.$router.push('/phoneBzchStep4')
|
||||
},
|
||||
// 右上标签页面切换
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
|
||||
@@ -260,6 +260,11 @@ export default {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
phoneClick () {
|
||||
if (this.taskInfo !== '标准法规工程师修订完毕') {
|
||||
this.$router.push('/phoneBzchStep6')
|
||||
}
|
||||
},
|
||||
// 右上标签页面切换
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
|
||||
@@ -121,7 +121,7 @@
|
||||
v-model="qbfsForm.jgUser"
|
||||
placeholder="请选择工作组成员"
|
||||
clearable
|
||||
@click.native="choiceZRR(null,'jgUser', '选择工作组成员', roleForm.jgUser)"
|
||||
@click.native="choiceZRRS"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -235,7 +235,7 @@
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="modalshowflag"
|
||||
@checkedRole="checkedRole"
|
||||
:nodeList="nodeList"
|
||||
:nodeList="nodeList2"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
@@ -260,6 +260,7 @@ export default {
|
||||
commentText: '',
|
||||
detailData: [],
|
||||
nodeList: [],
|
||||
nodeList2: [],
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
isTransfer: false,
|
||||
@@ -396,14 +397,12 @@ export default {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
choiceZRR(scope, type, title, id) {
|
||||
if (scope != null) {
|
||||
this.dsadadadsada = scope.$index;
|
||||
choiceZRRS() {
|
||||
this.drawerTitle = '请选择工作组成员'
|
||||
this.nodeList2 = [];
|
||||
if (this.qbfsForm.jgUserId) {
|
||||
this.nodeList2 = this.qbfsForm.jgUserId.split(",");
|
||||
}
|
||||
this.nodeList = [];
|
||||
this.nodeList.push(id);
|
||||
this.type = type;
|
||||
this.drawerTitle = title;
|
||||
this.modalshowflag = true;
|
||||
},
|
||||
checkedRole(data) {
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="qbfz-step7">
|
||||
<ProcessHeader toggle>
|
||||
<template slot="proName">企标废止流程</template>
|
||||
<template slot="proNode">标准法规部部长审核</template>
|
||||
<template slot="proNode">批准负责人批准</template>
|
||||
</ProcessHeader>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="qbfz-step6">
|
||||
<ProcessHeader toggle>
|
||||
<template slot="proName">企标废止流程</template>
|
||||
<template slot="proNode">标准法规部部长审核</template>
|
||||
<template slot="proNode">审定责任人审核</template>
|
||||
</ProcessHeader>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="qbfz-step7">
|
||||
<ProcessHeader toggle>
|
||||
<template slot="proName">企标废止流程</template>
|
||||
<template slot="proNode">标准法规部部长审核</template>
|
||||
<template slot="proNode">批准负责人批准</template>
|
||||
</ProcessHeader>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
|
||||
@@ -235,9 +235,6 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
phoneClick () {
|
||||
this.$router.push('/phoneWfhxStep4')
|
||||
},
|
||||
processTable() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
|
||||
@@ -225,6 +225,9 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
phoneClick () {
|
||||
this.$router.push('/phoneWfhxStep5')
|
||||
},
|
||||
queryFile(row) {
|
||||
this.fileTextList = row.fileText
|
||||
this.fileMadel = true
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
</process-title>
|
||||
<el-collapse-transition>
|
||||
<el-form
|
||||
v-if="foldFormFlag === false"
|
||||
v-if="foldFormFlag === false"
|
||||
:model="listForm"
|
||||
class="label-input-form prc-content-border"
|
||||
label-width="150px"
|
||||
|
||||
@@ -0,0 +1,442 @@
|
||||
<template>
|
||||
<div class="phoneBzdyStep8 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">标准调研流程</template>
|
||||
<template slot="proNode">技术管理中心主任审批</template>
|
||||
</ProcessHeaderPhone>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div style="overflow: auto;">
|
||||
<el-form
|
||||
ref="qbkwForm"
|
||||
:model="form"
|
||||
:rules="formRules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-collapse-transition>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="调研标题" prop="title" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.title"
|
||||
placeholder="请输入调研标题"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="完成时间" prop="date" class="add-form-item form-item-disabled">
|
||||
<el-date-picker
|
||||
disabled
|
||||
v-model="form.date"
|
||||
type="date"
|
||||
placeholder="请选择完成时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="汇总调研结果" prop="hzfileId" class="add-form-item form-item-disabled">
|
||||
<div v-if="form.hzfileName" @click="updateFile(form.hzfileId)" class="fileClass">
|
||||
{{ form.hzfileName }}
|
||||
</div>
|
||||
<div v-else>
|
||||
- -
|
||||
</div>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="审核意见" prop="textsh" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="form.textsh"-->
|
||||
<!-- placeholder="请输入审核意见"-->
|
||||
<!-- clearable-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-collapse-transition>
|
||||
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
|
||||
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">拆分信息</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
:data="tableData"
|
||||
tooltip-effect="dark"
|
||||
class="drag-table"
|
||||
style="width: 100%; flex: auto;"
|
||||
border
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
ref="selection"
|
||||
>
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="责任人"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="文件"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div @click="updateFile(scope.row.fileId)" class="fileClass">
|
||||
{{scope.row.fileName}}
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<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 class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="170"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="120"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="120"
|
||||
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"
|
||||
width="120"
|
||||
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="审批意见"
|
||||
width="200"
|
||||
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>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
submitBTNText="同意"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process'
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
name: "phoneBzdyStep8",
|
||||
data() {
|
||||
return {
|
||||
drawerModal: false,
|
||||
foldFormFlag: false,
|
||||
histortData: [],
|
||||
commentText: '',
|
||||
tableData: [],
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
title: '', // 调研标题
|
||||
date: '', // 完成时间
|
||||
hzfileId: '',
|
||||
hzfileName: '',
|
||||
textsh: ''
|
||||
},
|
||||
formRules: {
|
||||
textsh: [
|
||||
{ required: true, message: '请输入审核意见', trigger: 'blur' },
|
||||
]
|
||||
},
|
||||
json: {},
|
||||
fileUrl: 'api/att/attFile/upload',
|
||||
fileMadel: false,
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeaderPhone,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} 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 => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
getHistoryData () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
}, {}, res => {
|
||||
this.histortData = res
|
||||
}, e => {})
|
||||
},
|
||||
updateFile (fileId) {
|
||||
window.location.href = '/api/att/attFile/downloadFile?fileId=' + fileId
|
||||
},
|
||||
// 导入按钮 上传之前的钩子
|
||||
beginImportFile (file) {
|
||||
var filename = file.name
|
||||
var index1 = filename.lastIndexOf('.')
|
||||
var index2 = filename.length
|
||||
var fileSuffix = filename.substring(index1, index2)
|
||||
// const fileSuffix = file.name.split('.')[1] // 后缀名
|
||||
// 判断上传文件格式
|
||||
if (fileSuffix === '.ppt' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.PPT' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||
return true
|
||||
} else {
|
||||
this.spinShow = false
|
||||
this.$message.error('文件' + file.name + '格式不正确,请上传PPT,DOCX,XLS文件')
|
||||
return false
|
||||
}
|
||||
// 判断文件上传大小
|
||||
// eslint-disable-next-line no-unreachable
|
||||
if (file.size / 1024 / 1024 <= 200) {
|
||||
return true
|
||||
} else {
|
||||
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||
return false
|
||||
}
|
||||
return true
|
||||
},
|
||||
// 导入标准数据成功后执行
|
||||
importFileSuccess (response, file) {
|
||||
if (response.ok) {
|
||||
this.fileMadel = false
|
||||
this.form.hzfileId = response.data.id
|
||||
this.form.hzfileName = response.data.name
|
||||
this.$message({
|
||||
showClose: true,
|
||||
message: response.message,
|
||||
type: 'success'
|
||||
})
|
||||
}
|
||||
},
|
||||
fileUpload () {
|
||||
this.fileMadel = true
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
handleSave() {},
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
var json = this.json
|
||||
json.actionFlag = 0
|
||||
json.commentText = this.commentText
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskIds: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('提交成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
},
|
||||
handleSubmitNo() {
|
||||
if (this.commentText) {
|
||||
this.isSubmit = true
|
||||
var json = this.json
|
||||
json.commentText = this.commentText
|
||||
json.actionFlag = 1
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskIds: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('驳回成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请输入反馈意见')
|
||||
}
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
let data = JSON.parse(res.mesg)
|
||||
this.form.title = data.title || data.form.title
|
||||
this.form.date = data.date || data.form.date
|
||||
this.json = data || data.form
|
||||
this.tableData = data.responUserList || data.form.responUserList
|
||||
this.form.hzfileId = data.hzfileId || data.form.hzfileId
|
||||
this.form.hzfileName = data.hzfileName || data.form.hzfileName
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
},
|
||||
mounted () {
|
||||
this.getHistoryData()
|
||||
this.getData()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneBzdyStep8 {
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
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 {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,442 @@
|
||||
<template>
|
||||
<div class="phoneBzdyStep9 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">标准调研流程</template>
|
||||
<template slot="proNode">责任部门对接人及标准法规部部长审核</template>
|
||||
</ProcessHeaderPhone>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div style="overflow: auto;">
|
||||
<el-form
|
||||
ref="qbkwForm"
|
||||
:model="form"
|
||||
:rules="formRules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-collapse-transition>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="调研标题" prop="title" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.title"
|
||||
placeholder="请输入调研标题"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="完成时间" prop="date" class="add-form-item form-item-disabled">
|
||||
<el-date-picker
|
||||
disabled
|
||||
v-model="form.date"
|
||||
type="date"
|
||||
placeholder="请选择完成时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="汇总调研结果" prop="hzfileId" class="add-form-item form-item-disabled">
|
||||
<div v-if="form.hzfileName" @click="updateFile(form.hzfileId)" class="fileClass">
|
||||
{{ form.hzfileName }}
|
||||
</div>
|
||||
<div v-else>
|
||||
- -
|
||||
</div>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="审核意见" prop="textsh" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="form.textsh"-->
|
||||
<!-- placeholder="请输入审核意见"-->
|
||||
<!-- clearable-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-collapse-transition>
|
||||
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
|
||||
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">拆分信息</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
:data="tableData"
|
||||
tooltip-effect="dark"
|
||||
class="drag-table"
|
||||
style="width: 100%; flex: auto;"
|
||||
border
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
ref="selection"
|
||||
>
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="责任人"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="文件"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div @click="updateFile(scope.row.fileId)" class="fileClass">
|
||||
{{scope.row.fileName}}
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<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 class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="170"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="120"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="120"
|
||||
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"
|
||||
width="120"
|
||||
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="审批意见"
|
||||
width="200"
|
||||
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>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
submitBTNText="同意"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process'
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
name: "phoneBzdyStep9",
|
||||
data() {
|
||||
return {
|
||||
drawerModal: false,
|
||||
foldFormFlag: false,
|
||||
histortData: [],
|
||||
commentText: '',
|
||||
tableData: [],
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
title: '', // 调研标题
|
||||
date: '', // 完成时间
|
||||
hzfileId: '',
|
||||
hzfileName: '',
|
||||
textsh: ''
|
||||
},
|
||||
formRules: {
|
||||
textsh: [
|
||||
{ required: true, message: '请输入审核意见', trigger: 'blur' },
|
||||
]
|
||||
},
|
||||
json: {},
|
||||
fileUrl: 'api/att/attFile/upload',
|
||||
fileMadel: false,
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeaderPhone,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} 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 => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
getHistoryData () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
}, {}, res => {
|
||||
this.histortData = res
|
||||
}, e => {})
|
||||
},
|
||||
updateFile (fileId) {
|
||||
window.location.href = '/api/att/attFile/downloadFile?fileId=' + fileId
|
||||
},
|
||||
// 导入按钮 上传之前的钩子
|
||||
beginImportFile (file) {
|
||||
var filename = file.name
|
||||
var index1 = filename.lastIndexOf('.')
|
||||
var index2 = filename.length
|
||||
var fileSuffix = filename.substring(index1, index2)
|
||||
// const fileSuffix = file.name.split('.')[1] // 后缀名
|
||||
// 判断上传文件格式
|
||||
if (fileSuffix === '.ppt' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.PPT' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||
return true
|
||||
} else {
|
||||
this.spinShow = false
|
||||
this.$message.error('文件' + file.name + '格式不正确,请上传PPT,DOCX,XLS文件')
|
||||
return false
|
||||
}
|
||||
// 判断文件上传大小
|
||||
// eslint-disable-next-line no-unreachable
|
||||
if (file.size / 1024 / 1024 <= 200) {
|
||||
return true
|
||||
} else {
|
||||
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||
return false
|
||||
}
|
||||
return true
|
||||
},
|
||||
// 导入标准数据成功后执行
|
||||
importFileSuccess (response, file) {
|
||||
if (response.ok) {
|
||||
this.fileMadel = false
|
||||
this.form.hzfileId = response.data.id
|
||||
this.form.hzfileName = response.data.name
|
||||
this.$message({
|
||||
showClose: true,
|
||||
message: response.message,
|
||||
type: 'success'
|
||||
})
|
||||
}
|
||||
},
|
||||
fileUpload () {
|
||||
this.fileMadel = true
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
handleSave() {},
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
var json = this.json
|
||||
json.actionFlag = 0
|
||||
json.commentText = this.commentText
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskIds: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('提交成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
},
|
||||
handleSubmitNo() {
|
||||
if (this.commentText) {
|
||||
this.isSubmit = true
|
||||
var json = this.json
|
||||
json.commentText = this.commentText
|
||||
json.actionFlag = 1
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskIds: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('驳回成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请输入反馈意见')
|
||||
}
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
let data = JSON.parse(res.mesg)
|
||||
this.form.title = data.title || data.form.title
|
||||
this.form.date = data.date || data.form.date
|
||||
this.json = data || data.form
|
||||
this.tableData = data.responUserList || data.form.responUserList
|
||||
this.form.hzfileId = data.hzfileId || data.form.hzfileId
|
||||
this.form.hzfileName = data.hzfileName || data.form.hzfileName
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
},
|
||||
mounted () {
|
||||
this.getHistoryData()
|
||||
this.getData()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneBzdyStep9 {
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
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 {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,623 @@
|
||||
<!--标准法规清单发布 - 业务经理审批-->
|
||||
<template>
|
||||
<div class="phoneBzqdfbStep4 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">标准清单发布/更新流程</template>
|
||||
<template slot="proNode">业务经理审批</template>
|
||||
</ProcessHeaderPhone>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-show="active == '1'">
|
||||
<div style="flex: auto; overflow: auto">
|
||||
<process-title>
|
||||
<template slot="title">基础信息</template>
|
||||
</process-title>
|
||||
<el-form
|
||||
:model="listForm"
|
||||
class="label-input-form prc-content-border"
|
||||
label-width="150px"
|
||||
>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="清单名称" prop="listName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.listName"
|
||||
placeholder="请输入清单名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="清单说明" prop="descriptionList" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="listForm.descriptionList"
|
||||
placeholder="请输入清单说明"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="附件" prop="fileName" class="add-form-item form-item-disabled">
|
||||
<div class="file-box" v-if="fileList.length > 0">
|
||||
<p v-for="item in fileList"
|
||||
:key="item.id"> {{ item.name }}
|
||||
<i
|
||||
title="下载"
|
||||
@click="downloadFile(item.id)"
|
||||
class="icon-download"
|
||||
v-btn-permission="''"
|
||||
/>
|
||||
<i
|
||||
title="下载带水印"
|
||||
@click="downloadFileByWater(item.id, item.name)"
|
||||
class="icon-download2"
|
||||
v-btn-permission="''"
|
||||
/>
|
||||
</p>
|
||||
</div>
|
||||
<div v-else>
|
||||
暂无数据
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<process-title>
|
||||
<template slot="title">填写信息</template>
|
||||
</process-title>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
tooltip-effect="dark"
|
||||
height="60%"
|
||||
style="width: 100%"
|
||||
@selection-change="selectStandChange"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
prop="code"
|
||||
min-width="160"
|
||||
align="center"
|
||||
label="标准号">
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standYear" class="table-jump"
|
||||
@click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{
|
||||
scope.row.standNumber
|
||||
}}-{{ scope.row.standYear }}</a>
|
||||
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{
|
||||
scope.row.standSortShow }}
|
||||
{{ scope.row.standNumber }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
align="center"
|
||||
width="260px"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
min-width="80"
|
||||
label="发布日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="XCXSSRQ"
|
||||
min-width="130"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.XCXSSRQ ? $moment(scope.row.XCXSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="ZCCSSRQ"
|
||||
min-width="130"
|
||||
align="center"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ZCCSSRQ ? $moment(scope.row.ZCCSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="textStatus"
|
||||
width="100px"
|
||||
align="center"
|
||||
label="文本状态">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
|
||||
</template>
|
||||
</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'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
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="完成时间"
|
||||
width="130"
|
||||
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="流程信息"
|
||||
width="130"
|
||||
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>
|
||||
</div>
|
||||
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:transfer-loading="isTransfer"
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
:approval="true"
|
||||
@transfer="handleTransfer"
|
||||
@back="beforeBack"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<!-- 福田全公司选人解决方案 -->
|
||||
<Role-tree
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedRole"
|
||||
:nodeList="nodeList"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { inboundLiaisonDetail ,changeAssigneeNew} from "api/process";
|
||||
|
||||
export default {
|
||||
name: "phoneBzqdfbStep4",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessHeaderPhone,
|
||||
ProcessTitle
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
nodeList:[],
|
||||
isTransfer: false,
|
||||
drawerTitle:'',
|
||||
// 调整处理人抽屉状态
|
||||
drawerModal: false,
|
||||
detailData: [],
|
||||
// 当前流程类型(1待办/2已办)
|
||||
processType: 1,
|
||||
loading: false,
|
||||
dataList: [],//清单里的标准数据
|
||||
approvalOpinion: "", // 通过0/驳回1
|
||||
active: "1",
|
||||
listType: "country", //选择的清单类型
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
tabValue: "listOfCountries",
|
||||
selectedList: [], //选择清单的选择框
|
||||
selectList: [], //选择标准的选择框
|
||||
bringData: [],
|
||||
commentText: "", //填写会签意见
|
||||
fileList:[],
|
||||
page: 1,
|
||||
total: 0,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
listForm: {
|
||||
fileIds: '',
|
||||
listType: "", //区分是哪个清单
|
||||
listName: "", //清单名称
|
||||
descriptionList: "", //清单说明
|
||||
enclosure: "", //附件
|
||||
signFlag: "1", //是否会签 1为会签 2为不会签
|
||||
approvalOpinion: "", // 通过/驳回
|
||||
dataList: [{
|
||||
standNumber: "", //标准号
|
||||
cnName: "", //中文名称
|
||||
enName: "", //英文名称
|
||||
isSubTime: "", //发布日期
|
||||
newCarTime: "", //新车型实施日期
|
||||
oldCarTime: "", //在产车实施日期
|
||||
applyCar: "", //适用车型
|
||||
textState: "", //文本状态
|
||||
id: ""
|
||||
}]
|
||||
},
|
||||
choiceForm: {}, //选择标准清单列表
|
||||
// countryOptions: [], //适用区域下拉框数据
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
signFlag: "1", //是否会签 1为会签 2为不会签
|
||||
user1: "",
|
||||
user2: "",
|
||||
user3: "",
|
||||
user4: "",
|
||||
user5: "",
|
||||
standMap: new Map(),
|
||||
textStatusMap: {}// 文本状态id与name对应
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
//确认转办
|
||||
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)
|
||||
})
|
||||
},
|
||||
//转办事件
|
||||
handleTransfer(){
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
this.selectPeople = row
|
||||
},
|
||||
processTable() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : "",
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
// loading: "loading",
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
//tab发生变化
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
choiceShow() {
|
||||
this.ListModel = true;
|
||||
},
|
||||
// 点击查看
|
||||
handlePreview(item) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
name: "OtherStandardDetails",
|
||||
params: {
|
||||
id: item.id,
|
||||
pageType: "INLAND_STAND"
|
||||
}
|
||||
});
|
||||
window.open(routeUrl.href, "_blank");
|
||||
},
|
||||
//保存事件
|
||||
handleSave() {
|
||||
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg);
|
||||
this.getFormFieldList(processForm);
|
||||
}
|
||||
}).catch(e => {
|
||||
});
|
||||
});
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList(item) {
|
||||
this.$nextTick(() => {
|
||||
this.listForm = JSON.parse(JSON.stringify(item));
|
||||
this.listForm.prcNum = this.prcNum;
|
||||
this.listForm.prcName = this.prcName;
|
||||
this.listForm["id"] = item.id;
|
||||
this.listForm.dataList = item.dataList;
|
||||
this.dataList = item.dataList;
|
||||
this.listForm.applyUpdUserId = item.applyUpdUserId;
|
||||
this.listForm.jlUserId = item.jlUserId;
|
||||
this.listForm.zrUserId = item.zrUserId;
|
||||
let filesId = []
|
||||
item.fileName.forEach(itemIds =>{
|
||||
filesId.push(itemIds.id)
|
||||
})
|
||||
this.listForm.fileId = filesId.join(',')
|
||||
item.fileName.forEach(itemId => {
|
||||
this.fileIds = itemId.id
|
||||
this.getFileInfo();
|
||||
})
|
||||
});
|
||||
},
|
||||
// 请求上传的文件信息
|
||||
getFileInfo() {
|
||||
this.$http.get("att/attFile/getMultiFileInfos", {
|
||||
fileIds: this.fileIds
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.$nextTick(() => {
|
||||
res.data.map(item => {
|
||||
// 赋值要回显的上传文件内容
|
||||
this.fileList.push({
|
||||
name: item.oldFileName,
|
||||
uid: item.uid,
|
||||
status: item.status,
|
||||
id: item.id
|
||||
});
|
||||
});
|
||||
});
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
/**
|
||||
* @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("请选择要下载的文件");
|
||||
}
|
||||
}
|
||||
},
|
||||
// 驳回事件
|
||||
beforeBack() {
|
||||
if(!this.commentText){
|
||||
this.$message.warning('请填写审批意见')
|
||||
}else{
|
||||
this.listForm.approvalOpinion = "1";
|
||||
this.saveLoading = true
|
||||
this.listForm.commentText = this.commentText;
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message);
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.saveLoading = false
|
||||
});
|
||||
}/**/
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
this.listForm.commentText = this.commentText;
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message);
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false
|
||||
});
|
||||
},
|
||||
//选择标准取消事件
|
||||
closeDrawer() {
|
||||
this.ListModel = false;
|
||||
},
|
||||
//标准表格选择框改变
|
||||
selectStandChange(data) {
|
||||
this.selectList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectList.push(data[i].id);
|
||||
}
|
||||
},
|
||||
selectThree() {
|
||||
|
||||
},
|
||||
pageChange(page) {
|
||||
this.page = page;
|
||||
this.searchData();
|
||||
},
|
||||
pageSizeChange(pageSize) {
|
||||
this.pageSize = this.$store.getters.userInfo.configContent;
|
||||
this.searchData();
|
||||
},
|
||||
// 将文本状态的id与name对应
|
||||
setMap(data) {
|
||||
data.forEach(item => {
|
||||
this.$set(this.textStatusMap, item.value, item.label);
|
||||
});
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
listNoDataText() {
|
||||
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
//从数据库中查询下拉框数据
|
||||
this.$http.get("sys/dictype/getDicTypeListCode", {}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.countryOptions = res.data.COUNTRY;
|
||||
this.standStateOptions = res.data.WBZTCLASS; // 文本状态
|
||||
this.setMap(this.standStateOptions);
|
||||
});
|
||||
this.getData();
|
||||
this.processTable();
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneBzqdfbStep4 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
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 {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '3'">
|
||||
<div class="flow-list">
|
||||
<div style="flex: auto;">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
@@ -73,7 +73,8 @@
|
||||
border
|
||||
row-key="id"
|
||||
:no-data-text="listNoDataText"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
|
||||
@@ -0,0 +1,575 @@
|
||||
<template>
|
||||
<div class="phoneXmpgStep2 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">标准合规评估流程</template>
|
||||
<template slot="proNode">业务经理审批</template>
|
||||
</ProcessHeaderPhone>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div style="overflow: auto;">
|
||||
<el-form
|
||||
:model="listForm"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-collapse-transition>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
class="input-jump"
|
||||
v-model="listForm.standNumber"
|
||||
placeholder="请输入标准编号"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
class="input-jump"
|
||||
v-model="listForm.standName"
|
||||
placeholder="请输入标准名称"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="请选择认证工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="请选择质量工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-collapse-transition>
|
||||
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
|
||||
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.standNumber"
|
||||
placeholder="请输入标准编号"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.standName"
|
||||
placeholder="请输入标准名称"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="请选择认证工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="请选择质量工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">填写信息</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
ref="selection"
|
||||
height="100%"
|
||||
style="width: 100%;"
|
||||
@selection-change="selectStandChange"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
prop="productLine"
|
||||
min-width="150"
|
||||
align="center"
|
||||
label="产品线">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="productLine"
|
||||
min-width="200"
|
||||
align="center"
|
||||
label="项目名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="uname"
|
||||
min-width="150"
|
||||
align="center"
|
||||
label="产品线责任人">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="distributePerson"
|
||||
min-width="150"
|
||||
align="center"
|
||||
label="分发责任人">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<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 class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
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="完成时间"
|
||||
width="130"
|
||||
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="流程信息"
|
||||
width="130"
|
||||
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>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:transfer-loading="isTransfer"
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
:approval="true"
|
||||
@transfer="handleTransfer"
|
||||
@back="beforeBack"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process'
|
||||
import axios from "axios";
|
||||
import ProcessHeader from "process/components/ProcessHeader";
|
||||
|
||||
export default {
|
||||
name: "phoneXmpgStep2",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessHeaderPhone,
|
||||
ProcessTitle
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//折叠的标志,true为折叠,false为不折叠
|
||||
foldFormFlag: false,
|
||||
nodeList:[],
|
||||
isTransfer: false,
|
||||
drawerTitle:'',
|
||||
// 调整处理人抽屉状态
|
||||
drawerModal: false,
|
||||
detailData: [],
|
||||
// 当前流程类型(1待办/2已办)
|
||||
processType: 1,
|
||||
loading: false,
|
||||
dataList: [],//清单里的标准数据
|
||||
active: "1",
|
||||
userId:this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
listType: "country", //选择的清单类型
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
tabValue: "listOfCountries",
|
||||
selectedList: [], //选择清单的选择框
|
||||
selectList: [], //选择标准的选择框
|
||||
bringData: [],
|
||||
commentText: "", //填写会签意见
|
||||
page: 1,
|
||||
total: 0,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
listForm: {
|
||||
passFlag: " ", //空为审批通过 1 为驳回
|
||||
standNumber: "", //标准编号
|
||||
standName: "",//标准名称
|
||||
certifiedEngineer: "", //认证工程师
|
||||
qualityEngineer: "", //质量工程师
|
||||
certifiedEngineerName: "", //认证工程师
|
||||
qualityEngineerName: "", //质量工程师
|
||||
breakdownList: [{
|
||||
applyArctic: "",
|
||||
busStandCover: "",
|
||||
claimType: "",
|
||||
id: "",
|
||||
itemsName: "",
|
||||
itemsNum: "",
|
||||
responsibleUnit: "", //责任部门
|
||||
responsibleEngineer: "", //责任工程师
|
||||
standId: "",
|
||||
svpps: ""
|
||||
}],
|
||||
dataList: [{
|
||||
projectLine: "", //产品线
|
||||
uname: "",//产品线责任人
|
||||
projectManager:"",// 产品线责任人id
|
||||
distributePerson: "", //分发责任人
|
||||
distributePersonId: "", //分发责任人id
|
||||
id: "",
|
||||
sarStandProjectLibraries: [{
|
||||
projectManager: '',
|
||||
projectLevel: '',
|
||||
projectNumber: '',
|
||||
projectEndDate: '',
|
||||
currentNode: '',
|
||||
projectGroup: '',
|
||||
productLine: '',
|
||||
projectClassification: '',
|
||||
projectStatus: '',
|
||||
projectStartDate: '',
|
||||
id: '',
|
||||
projectName: '',
|
||||
projectPlatfor: ''
|
||||
}]
|
||||
}]
|
||||
},
|
||||
choiceForm: {}, //选择标准清单列表
|
||||
countryOptions: [], //适用区域下拉框数据
|
||||
user1: "",
|
||||
user2: "",
|
||||
user3: "",
|
||||
user4: "",
|
||||
user5: "",
|
||||
standMap: new Map()
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
//折叠/展开基础信息方法
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
//确认转办
|
||||
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)
|
||||
})
|
||||
},
|
||||
//转办事件
|
||||
handleTransfer(){
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
this.selectPeople = row
|
||||
},
|
||||
processTable () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : '',
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: 'loading',
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res
|
||||
}, e => {})
|
||||
},
|
||||
//tab发生变化
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
// 点击查看
|
||||
handlePreview(item) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
name: "OtherStandardDetails",
|
||||
params: {
|
||||
id: item.id,
|
||||
pageType: "INLAND_STAND"
|
||||
}
|
||||
});
|
||||
window.open(routeUrl.href, "_blank");
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg)
|
||||
this.getFormFieldList(processForm)
|
||||
}
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList (item) {
|
||||
this.$nextTick(() => {
|
||||
this.listForm = JSON.parse(JSON.stringify(item))
|
||||
this.listForm.prcNum = this.prcNum
|
||||
this.listForm.prcName = this.prcName
|
||||
this.listForm['id'] = item.id
|
||||
this.listForm.dataList = item.dataList
|
||||
this.dataList = item.dataList
|
||||
this.dataList.distributePerson = item.dataList[0].distributePerson
|
||||
this.listForm.breakdownList = item.breakdownList
|
||||
})
|
||||
},
|
||||
//驳回事件
|
||||
beforeBack () {
|
||||
if(this.commentText === null || this.commentText === undefined || this.commentText === ''){
|
||||
this.$message.warning('请填写审批意见')
|
||||
}else{
|
||||
this.listForm.passFlag = '1'
|
||||
this.handleSubmit()
|
||||
}
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.listForm.commentText = this.commentText
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.isSubmit = true
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json,
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
}, e => {
|
||||
});
|
||||
|
||||
},
|
||||
//标准表格选择框改变
|
||||
selectStandChange(data) {
|
||||
this.selectList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectList.push(data[i].id);
|
||||
}
|
||||
},
|
||||
selectThree() {
|
||||
|
||||
},
|
||||
pageChange(page) {
|
||||
this.page = page;
|
||||
this.searchData();
|
||||
},
|
||||
pageSizeChange(pageSize) {
|
||||
this.pageSize = this.$store.getters.userInfo.configContent;
|
||||
this.searchData();
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
listNoDataText () {
|
||||
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.processTable()
|
||||
this.getData()
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneXmpgStep2 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
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 {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,679 @@
|
||||
<template>
|
||||
<div class="phoneXmpgStep5 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">标准合规评估流程</template>
|
||||
<template slot="proNode">分发负责人审批</template>
|
||||
</ProcessHeaderPhone>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div style="overflow: auto;">
|
||||
<el-form
|
||||
:model="listForm"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-collapse-transition>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
class="input-jump"
|
||||
v-model="listForm.standNumber"
|
||||
placeholder="请输入标准编号"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
class="input-jump"
|
||||
v-model="listForm.standName"
|
||||
placeholder="请输入标准名称"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="请选择认证工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="请选择质量工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-collapse-transition>
|
||||
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
|
||||
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.standNumber"
|
||||
placeholder="请输入标准编号"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.standName"
|
||||
placeholder="请输入标准名称"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="请选择认证工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="请选择质量工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">填写信息</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="dataList"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
@selection-change="selectStandChange"
|
||||
height="55%"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
|
||||
<el-table-column
|
||||
prop="productLine"
|
||||
align="center"
|
||||
width="200"
|
||||
label="产品线">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="projectNumber"
|
||||
align="center"
|
||||
width="200"
|
||||
label="项目编号">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="projectName"
|
||||
align="center"
|
||||
width="200"
|
||||
label="项目名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itemNum"
|
||||
align="center"
|
||||
width="200"
|
||||
label="条款号">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itemsName"
|
||||
width="200"
|
||||
align="center"
|
||||
label="条款名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="technicalRequir"
|
||||
align="center"
|
||||
width="250"
|
||||
label="核心技术要求/变化点">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changePoint"
|
||||
width="250"
|
||||
align="center"
|
||||
label="基于上一版本差异">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xCXSSRQ"
|
||||
width="200"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zCCSSRQ"
|
||||
width="200"
|
||||
align="center"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="complianceReasons"
|
||||
align="center"
|
||||
width="160"
|
||||
label="合规">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="160"
|
||||
prop="researchNonCompliance"
|
||||
label="不合规">
|
||||
<el-table-column
|
||||
prop="noCompliance"
|
||||
align="center"
|
||||
width="170"
|
||||
label="不合规项目">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="countermeasures"
|
||||
align="center"
|
||||
width="160"
|
||||
label="应对措施">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completionTime"
|
||||
align="center"
|
||||
width="120"
|
||||
label="完成时间">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="150"
|
||||
prop="implementer"
|
||||
label="落实人">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="150"
|
||||
prop="distributePerson"
|
||||
label="责任人">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<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 class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
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="完成时间"
|
||||
width="130"
|
||||
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="流程信息"
|
||||
width="130"
|
||||
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>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:transfer-loading="isTransfer"
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
:approval="true"
|
||||
@transfer="handleTransfer"
|
||||
@back="beforeBack"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process'
|
||||
import axios from "axios";
|
||||
import ProcessHeader from "process/components/ProcessHeader";
|
||||
|
||||
export default {
|
||||
name: "phoneXmpgStep5",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessHeaderPhone,
|
||||
ProcessTitle
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//折叠的标志,true为折叠,false为不折叠
|
||||
foldFormFlag: false,
|
||||
nodeList:[],
|
||||
isTransfer: false,
|
||||
drawerTitle:'',
|
||||
// 调整处理人抽屉状态
|
||||
drawerModal: false,
|
||||
detailData: [],
|
||||
// 当前流程类型(1待办/2已办)
|
||||
processType: 1,
|
||||
loading: false,
|
||||
dataList: [],//清单里的标准数据
|
||||
active: "1",
|
||||
userId:this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
listType: "country", //选择的清单类型
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
tabValue: "listOfCountries",
|
||||
selectedList: [], //选择清单的选择框
|
||||
selectList: [], //选择标准的选择框
|
||||
bringData: [],
|
||||
commentText: "", //填写会签意见
|
||||
page: 1,
|
||||
total: 0,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
listForm: {
|
||||
passFlag: " ", //空为审批通过 1 为驳回
|
||||
standNumber: "", //标准编号
|
||||
standName: "",//标准名称
|
||||
certifiedEngineer: "", //认证工程师
|
||||
qualityEngineer: "", //质量工程师
|
||||
certifiedEngineerName: "", //认证工程师
|
||||
qualityEngineerName: "", //质量工程师
|
||||
breakdownList: [{
|
||||
applyArctic: "",
|
||||
busStandCover: "",
|
||||
claimType: "",
|
||||
id: "",
|
||||
itemsName: "",
|
||||
itemsNum: "",
|
||||
responsibleUnit: "", //责任部门
|
||||
responsibleEngineer: "", //责任工程师
|
||||
standId: "",
|
||||
svpps: ""
|
||||
}],
|
||||
dataList: [{
|
||||
projectLine: "", //产品线
|
||||
uname: "",//产品线责任人
|
||||
projectManager:"",// 产品线责任人id
|
||||
distributePerson: "", //分发责任人
|
||||
distributePersonId: "", //分发责任人id
|
||||
id: "",
|
||||
sarStandProjectLibraries: [{
|
||||
projectManager: '',
|
||||
projectLevel: '',
|
||||
projectNumber: '',
|
||||
projectEndDate: '',
|
||||
currentNode: '',
|
||||
projectGroup: '',
|
||||
productLine: '',
|
||||
projectClassification: '',
|
||||
projectStatus: '',
|
||||
projectStartDate: '',
|
||||
id: '',
|
||||
projectName: '',
|
||||
projectPlatfor: ''
|
||||
}]
|
||||
}]
|
||||
},
|
||||
choiceForm: {}, //选择标准清单列表
|
||||
countryOptions: [], //适用区域下拉框数据
|
||||
user1: "",
|
||||
user2: "",
|
||||
user3: "",
|
||||
user4: "",
|
||||
user5: "",
|
||||
standMap: new Map()
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
//折叠/展开基础信息方法
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
//确认转办
|
||||
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)
|
||||
})
|
||||
},
|
||||
//转办事件
|
||||
handleTransfer(){
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
this.selectPeople = row
|
||||
},
|
||||
processTable () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : '',
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: 'loading',
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res
|
||||
}, e => {})
|
||||
},
|
||||
//tab发生变化
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
// 点击查看
|
||||
handlePreview(item) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
name: "OtherStandardDetails",
|
||||
params: {
|
||||
id: item.id,
|
||||
pageType: "INLAND_STAND"
|
||||
}
|
||||
});
|
||||
window.open(routeUrl.href, "_blank");
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg)
|
||||
this.getFormFieldList(processForm)
|
||||
}
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList (item) {
|
||||
this.$nextTick(() => {
|
||||
this.listForm = JSON.parse(JSON.stringify(item))
|
||||
this.listForm.prcNum = this.prcNum
|
||||
this.listForm.prcName = this.prcName
|
||||
this.dataList = item.dataList
|
||||
this.listForm.standName = item.standName
|
||||
this.listForm.standNumber = item.standNumber
|
||||
this.listForm.id = item.id
|
||||
this.listForm.qualityEngineerName = item.qualityEngineerName
|
||||
this.listForm.certifiedEngineerName = item.certifiedEngineerName
|
||||
this.listForm.responsibleUnit = item.responsibleUnit
|
||||
this.listForm.responsibleEngineer = item.responsibleEngineer
|
||||
})
|
||||
},
|
||||
//驳回事件
|
||||
beforeBack () {
|
||||
if(!this.commentText){
|
||||
this.$message.warning('请填写审批意见')
|
||||
}else{
|
||||
this.listForm.applyUpdUserId = this.dataList[0].distributePersonId
|
||||
this.listForm.commentText = this.commentText;
|
||||
this.listForm.dataList = this.dataList
|
||||
this.listForm.fenFlag = '1'
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json,
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
}, e => {
|
||||
});
|
||||
}
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.listForm.applyUpdUserId = this.dataList[0].distributePersonId
|
||||
this.listForm.dataList = this.dataList
|
||||
this.listForm.fenFlag = '2'
|
||||
this.listForm.commentText = this.commentText;
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.isSubmit = true
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json,
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
}, e => {
|
||||
});
|
||||
|
||||
},
|
||||
//标准表格选择框改变
|
||||
selectStandChange(data) {
|
||||
this.selectList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectList.push(data[i].id);
|
||||
}
|
||||
},
|
||||
selectThree() {
|
||||
|
||||
},
|
||||
pageChange(page) {
|
||||
this.page = page;
|
||||
this.searchData();
|
||||
},
|
||||
pageSizeChange(pageSize) {
|
||||
this.pageSize = this.$store.getters.userInfo.configContent;
|
||||
this.searchData();
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
listNoDataText () {
|
||||
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.processTable()
|
||||
this.getData()
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneXmpgStep5 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
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 {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,666 @@
|
||||
<template>
|
||||
<div class="phoneXmpgStep6 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">标准合规评估流程</template>
|
||||
<template slot="proNode">产品线责任人审批</template>
|
||||
</ProcessHeaderPhone>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div style="overflow: auto;">
|
||||
<el-form
|
||||
:model="listForm"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-collapse-transition>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
class="input-jump"
|
||||
v-model="listForm.standNumber"
|
||||
placeholder="请输入标准编号"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
class="input-jump"
|
||||
v-model="listForm.standName"
|
||||
placeholder="请输入标准名称"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="请选择认证工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="请选择质量工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-collapse-transition>
|
||||
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
|
||||
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.standNumber"
|
||||
placeholder="请输入标准编号"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.standName"
|
||||
placeholder="请输入标准名称"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="请选择认证工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="请选择质量工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">填写信息</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="dataList"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
@selection-change="selectStandChange"
|
||||
height="55%"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
|
||||
<el-table-column
|
||||
prop="productLine"
|
||||
align="center"
|
||||
width="200"
|
||||
label="产品线">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="projectNumber"
|
||||
align="center"
|
||||
width="200"
|
||||
label="项目编号">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="projectName"
|
||||
align="center"
|
||||
width="200"
|
||||
label="项目名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itemNum"
|
||||
align="center"
|
||||
width="200"
|
||||
label="条款号">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itemsName"
|
||||
width="200"
|
||||
align="center"
|
||||
label="条款名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="technicalRequir"
|
||||
align="center"
|
||||
width="250"
|
||||
label="核心技术要求/变化点">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changePoint"
|
||||
width="250"
|
||||
align="center"
|
||||
label="基于上一版本差异">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xCXSSRQ"
|
||||
width="200"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zCCSSRQ"
|
||||
width="200"
|
||||
align="center"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="complianceReasons"
|
||||
align="center"
|
||||
width="160"
|
||||
label="合规">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="160"
|
||||
prop="researchNonCompliance"
|
||||
label="不合规">
|
||||
<el-table-column
|
||||
prop="noCompliance"
|
||||
align="center"
|
||||
width="170"
|
||||
label="不合规项目">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="countermeasures"
|
||||
align="center"
|
||||
width="160"
|
||||
label="应对措施">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completionTime"
|
||||
align="center"
|
||||
width="120"
|
||||
label="完成时间">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="150"
|
||||
prop="implementer"
|
||||
label="落实人">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="150"
|
||||
prop="distributePerson"
|
||||
label="责任人">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<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 class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
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="完成时间"
|
||||
width="130"
|
||||
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="流程信息"
|
||||
width="130"
|
||||
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>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:transfer-loading="isTransfer"
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
:approval="true"
|
||||
@transfer="handleTransfer"
|
||||
@back="beforeBack"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process'
|
||||
import axios from "axios";
|
||||
import ProcessHeader from "process/components/ProcessHeader";
|
||||
|
||||
export default {
|
||||
name: "phoneXmpgStep6",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessHeaderPhone,
|
||||
ProcessTitle
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//折叠的标志,true为折叠,false为不折叠
|
||||
foldFormFlag: false,
|
||||
nodeList:[],
|
||||
isTransfer: false,
|
||||
drawerTitle:'',
|
||||
// 调整处理人抽屉状态
|
||||
drawerModal: false,
|
||||
detailData: [],
|
||||
// 当前流程类型(1待办/2已办)
|
||||
processType: 1,
|
||||
loading: false,
|
||||
dataList: [],//清单里的标准数据
|
||||
active: "1",
|
||||
userId:this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
listType: "country", //选择的清单类型
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
tabValue: "listOfCountries",
|
||||
selectedList: [], //选择清单的选择框
|
||||
selectList: [], //选择标准的选择框
|
||||
bringData: [],
|
||||
commentText: "", //填写会签意见
|
||||
page: 1,
|
||||
total: 0,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
listForm: {
|
||||
passFlag: " ", //空为审批通过 1 为驳回
|
||||
standNumber: "", //标准编号
|
||||
standName: "",//标准名称
|
||||
certifiedEngineer: "", //认证工程师
|
||||
qualityEngineer: "", //质量工程师
|
||||
certifiedEngineerName: "", //认证工程师
|
||||
qualityEngineerName: "", //质量工程师
|
||||
breakdownList: [{
|
||||
applyArctic: "",
|
||||
busStandCover: "",
|
||||
claimType: "",
|
||||
id: "",
|
||||
itemsName: "",
|
||||
itemsNum: "",
|
||||
responsibleUnit: "", //责任部门
|
||||
responsibleEngineer: "", //责任工程师
|
||||
standId: "",
|
||||
svpps: ""
|
||||
}],
|
||||
dataList: [{
|
||||
projectLine: "", //产品线
|
||||
uname: "",//产品线责任人
|
||||
projectManager:"",// 产品线责任人id
|
||||
distributePerson: "", //分发责任人
|
||||
distributePersonId: "", //分发责任人id
|
||||
id: "",
|
||||
sarStandProjectLibraries: [{
|
||||
projectManager: '',
|
||||
projectLevel: '',
|
||||
projectNumber: '',
|
||||
projectEndDate: '',
|
||||
currentNode: '',
|
||||
projectGroup: '',
|
||||
productLine: '',
|
||||
projectClassification: '',
|
||||
projectStatus: '',
|
||||
projectStartDate: '',
|
||||
id: '',
|
||||
projectName: '',
|
||||
projectPlatfor: ''
|
||||
}]
|
||||
}]
|
||||
},
|
||||
choiceForm: {}, //选择标准清单列表
|
||||
countryOptions: [], //适用区域下拉框数据
|
||||
user1: "",
|
||||
user2: "",
|
||||
user3: "",
|
||||
user4: "",
|
||||
user5: "",
|
||||
standMap: new Map()
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
//折叠/展开基础信息方法
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
//确认转办
|
||||
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)
|
||||
})
|
||||
},
|
||||
//转办事件
|
||||
handleTransfer(){
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
this.selectPeople = row
|
||||
},
|
||||
processTable () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : '',
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: 'loading',
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res
|
||||
}, e => {})
|
||||
},
|
||||
//tab发生变化
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
// 点击查看
|
||||
handlePreview(item) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
name: "OtherStandardDetails",
|
||||
params: {
|
||||
id: item.id,
|
||||
pageType: "INLAND_STAND"
|
||||
}
|
||||
});
|
||||
window.open(routeUrl.href, "_blank");
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg)
|
||||
this.getFormFieldList(processForm)
|
||||
}
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList (item) {
|
||||
this.$nextTick(() => {
|
||||
this.listForm = JSON.parse(JSON.stringify(item))
|
||||
this.listForm.prcNum = this.prcNum
|
||||
this.listForm.prcName = this.prcName
|
||||
this.dataList = item.dataList
|
||||
this.listForm.id = item.step3DTOS[0].id
|
||||
this.listForm.standName = item.step3DTOS[0].standName
|
||||
this.listForm.standNumber = item.step3DTOS[0].standNumber
|
||||
this.listForm.qualityEngineerName = item.step3DTOS[0].qualityEngineerName
|
||||
this.listForm.certifiedEngineerName = item.step3DTOS[0].certifiedEngineerName
|
||||
})
|
||||
},
|
||||
//驳回事件
|
||||
beforeBack () {
|
||||
if(!this.commentText){
|
||||
this.$message.warning('请填写审批意见')
|
||||
} else {
|
||||
this.listForm.fenFlag = '2'
|
||||
this.handleSubmit()
|
||||
}
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
this.listForm.prcCreateUser = this.$store.getters.userInfo.userId;
|
||||
this.listForm.applyUpdUserId = this.$store.getters.userInfo.userId;
|
||||
this.listForm.prcCreateUserName = this.$store.getters.userInfo.account;
|
||||
this.listForm.zrUserId = this.$store.getters.userInfo.userId ;
|
||||
this.listForm.commentText = this.commentText;
|
||||
this.listForm.standId = this.listForm.standId;
|
||||
this.listForm.fenFlag = "1";
|
||||
this.listForm.dataList = this.dataList
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json,
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
}, e => {
|
||||
|
||||
});
|
||||
|
||||
},
|
||||
//标准表格选择框改变
|
||||
selectStandChange(data) {
|
||||
this.selectList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectList.push(data[i].id);
|
||||
}
|
||||
},
|
||||
selectThree() {
|
||||
|
||||
},
|
||||
pageChange(page) {
|
||||
this.page = page;
|
||||
this.searchData();
|
||||
},
|
||||
pageSizeChange(pageSize) {
|
||||
this.pageSize = this.$store.getters.userInfo.configContent;
|
||||
this.searchData();
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
listNoDataText () {
|
||||
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.processTable()
|
||||
this.getData()
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneXmpgStep6 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
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 {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,662 @@
|
||||
<template>
|
||||
<div class="phoneXmpgStep7 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">标准合规评估流程</template>
|
||||
<template slot="proNode">标准法规部领导审批</template>
|
||||
</ProcessHeaderPhone>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div style="overflow: auto;">
|
||||
<el-form
|
||||
:model="listForm"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-collapse-transition>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
class="input-jump"
|
||||
v-model="listForm.standNumber"
|
||||
placeholder="请输入标准编号"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
class="input-jump"
|
||||
v-model="listForm.standName"
|
||||
placeholder="请输入标准名称"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="请选择认证工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="请选择质量工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-collapse-transition>
|
||||
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
|
||||
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.standNumber"
|
||||
placeholder="请输入标准编号"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="listForm.standName"
|
||||
placeholder="请输入标准名称"
|
||||
readonly
|
||||
@click.native="handlePreview(listForm)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="请选择认证工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.certifiedEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="请选择质量工程师"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="listForm.qualityEngineerName"
|
||||
placeholder="--"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">填写信息</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="dataList"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
@selection-change="selectStandChange"
|
||||
height="55%"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
|
||||
<el-table-column
|
||||
prop="productLine"
|
||||
align="center"
|
||||
width="200"
|
||||
label="产品线">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="projectNumber"
|
||||
align="center"
|
||||
width="200"
|
||||
label="项目编号">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="projectName"
|
||||
align="center"
|
||||
width="200"
|
||||
label="项目名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itemNum"
|
||||
align="center"
|
||||
width="200"
|
||||
label="条款号">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itemsName"
|
||||
width="200"
|
||||
align="center"
|
||||
label="条款名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="technicalRequir"
|
||||
align="center"
|
||||
width="250"
|
||||
label="核心技术要求/变化点">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changePoint"
|
||||
width="250"
|
||||
align="center"
|
||||
label="基于上一版本差异">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xCXSSRQ"
|
||||
width="200"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zCCSSRQ"
|
||||
width="200"
|
||||
align="center"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="complianceReasons"
|
||||
align="center"
|
||||
width="160"
|
||||
label="合规">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="160"
|
||||
prop="researchNonCompliance"
|
||||
label="不合规">
|
||||
<el-table-column
|
||||
prop="noCompliance"
|
||||
align="center"
|
||||
width="170"
|
||||
label="不合规项目">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="countermeasures"
|
||||
align="center"
|
||||
width="160"
|
||||
label="应对措施">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completionTime"
|
||||
align="center"
|
||||
width="120"
|
||||
label="完成时间">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="150"
|
||||
prop="implementer"
|
||||
label="落实人">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="150"
|
||||
prop="distributePerson"
|
||||
label="责任人">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<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 class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
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="完成时间"
|
||||
width="130"
|
||||
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="流程信息"
|
||||
width="130"
|
||||
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>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:transfer-loading="isTransfer"
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
:approval="true"
|
||||
@transfer="handleTransfer"
|
||||
@back="beforeBack"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process'
|
||||
import axios from "axios";
|
||||
import ProcessHeader from "process/components/ProcessHeader";
|
||||
|
||||
export default {
|
||||
name: "phoneXmpgStep7",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessHeaderPhone,
|
||||
ProcessTitle
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//折叠的标志,true为折叠,false为不折叠
|
||||
foldFormFlag: false,
|
||||
nodeList:[],
|
||||
isTransfer: false,
|
||||
drawerTitle:'',
|
||||
// 调整处理人抽屉状态
|
||||
drawerModal: false,
|
||||
detailData: [],
|
||||
// 当前流程类型(1待办/2已办)
|
||||
processType: 1,
|
||||
loading: false,
|
||||
dataList: [],//清单里的标准数据
|
||||
active: "1",
|
||||
userId:this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
listType: "country", //选择的清单类型
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
tabValue: "listOfCountries",
|
||||
selectedList: [], //选择清单的选择框
|
||||
selectList: [], //选择标准的选择框
|
||||
bringData: [],
|
||||
commentText: "", //填写会签意见
|
||||
page: 1,
|
||||
total: 0,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
listForm: {
|
||||
passFlag: " ", //空为审批通过 1 为驳回
|
||||
standNumber: "", //标准编号
|
||||
standName: "",//标准名称
|
||||
certifiedEngineer: "", //认证工程师
|
||||
qualityEngineer: "", //质量工程师
|
||||
certifiedEngineerName: "", //认证工程师
|
||||
qualityEngineerName: "", //质量工程师
|
||||
breakdownList: [{
|
||||
applyArctic: "",
|
||||
busStandCover: "",
|
||||
claimType: "",
|
||||
id: "",
|
||||
itemsName: "",
|
||||
itemsNum: "",
|
||||
responsibleUnit: "", //责任部门
|
||||
responsibleEngineer: "", //责任工程师
|
||||
standId: "",
|
||||
svpps: ""
|
||||
}],
|
||||
dataList: [{
|
||||
projectLine: "", //产品线
|
||||
uname: "",//产品线责任人
|
||||
projectManager:"",// 产品线责任人id
|
||||
distributePerson: "", //分发责任人
|
||||
distributePersonId: "", //分发责任人id
|
||||
id: "",
|
||||
sarStandProjectLibraries: [{
|
||||
projectManager: '',
|
||||
projectLevel: '',
|
||||
projectNumber: '',
|
||||
projectEndDate: '',
|
||||
currentNode: '',
|
||||
projectGroup: '',
|
||||
productLine: '',
|
||||
projectClassification: '',
|
||||
projectStatus: '',
|
||||
projectStartDate: '',
|
||||
id: '',
|
||||
projectName: '',
|
||||
projectPlatfor: ''
|
||||
}]
|
||||
}]
|
||||
},
|
||||
choiceForm: {}, //选择标准清单列表
|
||||
countryOptions: [], //适用区域下拉框数据
|
||||
user1: "",
|
||||
user2: "",
|
||||
user3: "",
|
||||
user4: "",
|
||||
user5: "",
|
||||
standMap: new Map()
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
//折叠/展开基础信息方法
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
//确认转办
|
||||
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)
|
||||
})
|
||||
},
|
||||
//转办事件
|
||||
handleTransfer(){
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
this.selectPeople = row
|
||||
},
|
||||
processTable () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : '',
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: 'loading',
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res
|
||||
}, e => {})
|
||||
},
|
||||
//tab发生变化
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
// 点击查看
|
||||
handlePreview(item) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
name: "OtherStandardDetails",
|
||||
params: {
|
||||
id: item.id,
|
||||
pageType: "INLAND_STAND"
|
||||
}
|
||||
});
|
||||
window.open(routeUrl.href, "_blank");
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg)
|
||||
this.getFormFieldList(processForm)
|
||||
}
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList (item) {
|
||||
this.$nextTick(() => {
|
||||
this.listForm = JSON.parse(JSON.stringify(item))
|
||||
this.listForm.prcNum = this.prcNum
|
||||
this.listForm.prcName = this.prcName
|
||||
this.listForm.id = item.id
|
||||
this.dataList = item.dataList
|
||||
})
|
||||
},
|
||||
//驳回事件
|
||||
beforeBack () {
|
||||
if(!this.commentText){
|
||||
this.$message.warning('请填写审批意见')
|
||||
} else {
|
||||
this.listForm.fenFlag = '2'
|
||||
this.handleSubmit()
|
||||
}
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
this.listForm.prcCreateUser = this.$store.getters.userInfo.userId;
|
||||
this.listForm.applyUpdUserId = this.$store.getters.userInfo.userId;
|
||||
this.listForm.prcCreateUserName = this.$store.getters.userInfo.account;
|
||||
this.listForm.zrUserId = this.$store.getters.userInfo.userId ;
|
||||
this.listForm.commentText = this.commentText;
|
||||
this.listForm.standId = this.listForm.standId;
|
||||
this.listForm.fenFlag = "1";
|
||||
this.listForm.dataList = this.dataList
|
||||
const json = JSON.stringify(this.listForm);
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json,
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
}, e => {
|
||||
|
||||
});
|
||||
|
||||
},
|
||||
//标准表格选择框改变
|
||||
selectStandChange(data) {
|
||||
this.selectList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectList.push(data[i].id);
|
||||
}
|
||||
},
|
||||
selectThree() {
|
||||
|
||||
},
|
||||
pageChange(page) {
|
||||
this.page = page;
|
||||
this.searchData();
|
||||
},
|
||||
pageSizeChange(pageSize) {
|
||||
this.pageSize = this.$store.getters.userInfo.configContent;
|
||||
this.searchData();
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
listNoDataText () {
|
||||
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.processTable()
|
||||
this.getData()
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneXmpgStep7 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
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 {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -44,6 +44,7 @@
|
||||
class="common-button-default"
|
||||
size="mini"
|
||||
@click="resetSelect">清空</el-button>
|
||||
<el-button size="mini" type="danger" @click="dataDel">删除</el-button>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div class="search-area-item">
|
||||
@@ -115,16 +116,17 @@
|
||||
<span>{{ scope.row.overTime ? $moment(scope.row.overTime).format('YYYY-MM-DD HH:mm:ss') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :label="$t('m.operation')" align="center" width="50">
|
||||
<el-table-column :label="$t('m.operation')" align="center" width="80">
|
||||
<template slot-scope="scope">
|
||||
<div @click.stop style="display: inline-block">
|
||||
<el-button size="mini" type="primary" @click="dealWith(scope.row)">办理</el-button>
|
||||
<!-- <div @click.stop style="display: inline-block">
|
||||
<el-dropdown trigger="click" @command="handleCommand">
|
||||
<i class="iconfont"></i>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item :command="[scope.row, '办理']">办理</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
</div>-->
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -144,6 +146,7 @@
|
||||
<script>
|
||||
import {mapMutations, mapActions} from 'vuex'
|
||||
import ProcessMixin from '../../../components/ProcessMixin'
|
||||
import { taskDel } from '@/api/process.js'
|
||||
export default {
|
||||
name: 'ProcessCenter',
|
||||
mixins: [ProcessMixin],
|
||||
@@ -181,7 +184,7 @@ export default {
|
||||
size: parseInt(this.$store.getters.userInfo.configContent),
|
||||
userId: this.$store.getters.userInfo.usid || this.$store.getters.userInfo.userId,
|
||||
prcName: this.searchForm.prcName,
|
||||
prcType: parseInt(this.searchForm.prcType) || ''
|
||||
prcType: this.searchForm.prcType
|
||||
},
|
||||
{
|
||||
loading: 'loading',
|
||||
@@ -198,6 +201,45 @@ export default {
|
||||
handleSelectionChange (selected) { // 待办流程列表选中事件
|
||||
this.processListSelect = selected
|
||||
},
|
||||
|
||||
/** 删除按钮 */
|
||||
dataDel() {
|
||||
if (this.processListSelect.length > 0) {
|
||||
let msgIds = []
|
||||
for (let i = 0; i < this.processListSelect.length; i++) {
|
||||
let msgId = this.processListSelect[i].id
|
||||
msgIds.push(msgId)
|
||||
}
|
||||
let delId = {
|
||||
id: msgIds.join(',')
|
||||
}
|
||||
this.$confirm('确定删除这些数据?', '提示', {
|
||||
confirmButtonText: this.$t('m.determine'),
|
||||
cancelButtonText: this.$t('m.cancel'),
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: true
|
||||
}).then(() => {
|
||||
taskDel(delId).then(res => {
|
||||
if (res === 'success') {
|
||||
this.$message.success('删除成功')
|
||||
this.pageNo = 1
|
||||
this.processListSelect = []
|
||||
this.queryProcess()
|
||||
} else {
|
||||
this.$message.warning('删除失败')
|
||||
}
|
||||
})
|
||||
}).catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消删除'
|
||||
})
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请选择一条数据进行删除')
|
||||
}
|
||||
},
|
||||
pageChange (pageNo) { // 页码改变
|
||||
this.pageNo = pageNo
|
||||
this.queryProcess()
|
||||
|
||||
@@ -20,10 +20,10 @@
|
||||
<el-divider/>
|
||||
<div style="float: left">
|
||||
<el-button type="primary" size="small" @click="dataAdd">新增</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>
|
||||
<el-button type="primary" size="small" onclick="">模板下载</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">批量删除</el-button>
|
||||
<!-- <el-button type="primary" size="small" onclick="">模板下载</el-button>-->
|
||||
</div>
|
||||
</el-form>
|
||||
<el-divider/>
|
||||
|
||||
@@ -19,10 +19,10 @@
|
||||
<el-divider/>
|
||||
<div style="float: left">
|
||||
<el-button type="primary" size="small" @click="dataAdd">新增</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>
|
||||
<el-button type="primary" size="small" onclick="">模板下载</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">批量删除</el-button>
|
||||
<!-- <el-button type="primary" size="small" onclick="">模板下载</el-button>-->
|
||||
</div>
|
||||
</el-form>
|
||||
<el-divider/>
|
||||
|
||||
@@ -26,10 +26,10 @@
|
||||
<el-divider/>
|
||||
<div style="float: left;">
|
||||
<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>
|
||||
<el-button type="primary" size="small" onclick="">模板下载</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">批量删除</el-button>
|
||||
<!-- <el-button type="primary" size="small" onclick="">模板下载</el-button>-->
|
||||
</div>
|
||||
</el-form>
|
||||
<el-divider/>
|
||||
|
||||
@@ -20,10 +20,10 @@
|
||||
<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>
|
||||
<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>
|
||||
<el-button type="primary" size="small" onclick="">模板下载</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">批量删除</el-button>
|
||||
<!-- <el-button type="primary" size="small" onclick="">模板下载</el-button>-->
|
||||
</div>
|
||||
</el-form>
|
||||
<el-divider/>
|
||||
|
||||
@@ -37,10 +37,10 @@
|
||||
<el-divider/>
|
||||
<div style="float: left">
|
||||
<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>
|
||||
<el-button type="primary" size="small" onclick="">模板下载</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">批量删除</el-button>
|
||||
<!-- <el-button type="primary" size="small" onclick="">模板下载</el-button>-->
|
||||
</div>
|
||||
</el-form>
|
||||
<el-divider/>
|
||||
|
||||
@@ -26,10 +26,10 @@
|
||||
<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>
|
||||
<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>
|
||||
<el-button type="primary" size="small" onclick="">模板下载</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">批量删除</el-button>
|
||||
<!-- <el-button type="primary" size="small" onclick="">模板下载</el-button>-->
|
||||
</div>
|
||||
</el-form>
|
||||
<el-divider/>
|
||||
|
||||
@@ -19,10 +19,10 @@
|
||||
<el-divider/>
|
||||
<div style="float: left">
|
||||
<el-button type="primary" size="small" @click="dataAdd">新增</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>
|
||||
<el-button type="primary" size="small" onclick="">模板下载</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">批量删除</el-button>
|
||||
<!-- <el-button type="primary" size="small" onclick="">模板下载</el-button>-->
|
||||
</div>
|
||||
</el-form>
|
||||
<el-divider/>
|
||||
|
||||
+1
-27
@@ -18,7 +18,7 @@
|
||||
:indent="0"
|
||||
:props="props"
|
||||
:data="treeList"
|
||||
default-expanded-keys="['3']"
|
||||
:default-expanded-keys="['3']"
|
||||
highlight-current
|
||||
@node-click="treeClick"
|
||||
:filter-node-method="filterNode">
|
||||
@@ -404,11 +404,8 @@
|
||||
v-btn-permission="'a7a38a95ea374695fc3128037f6feccf'">删除
|
||||
</el-button>
|
||||
</div>
|
||||
|
||||
<div v-else>
|
||||
|
||||
<div @click.stop style="display: inline-block">
|
||||
<el-dropdown trigger="click" @command="handleCommand">
|
||||
<el-button title="收藏" class="collection-btn" icon="el-icon-star-off" v-btn-permission="'d9730d984627af948053df56a2db7997'"
|
||||
v-if="scope.row.collectBtn"
|
||||
@click="handleCommand([scope.row, '收藏'])"
|
||||
@@ -419,29 +416,6 @@
|
||||
@click="handleCommand([scope.row, '取消收藏'])"
|
||||
>
|
||||
</el-button>
|
||||
<!-- <i class="iconfont"></i>-->
|
||||
<!-- <el-dropdown-menu slot="dropdown">-->
|
||||
<!-- <el-dropdown-item-->
|
||||
<!-- v-if="scope.row.collectBtn"-->
|
||||
<!-- :command="[scope.row, '收藏']"-->
|
||||
<!-- v-btn-permission="'d9730d984627af948053df56a2db7997'"-->
|
||||
<!-- >-->
|
||||
<!-- 收藏-->
|
||||
<!-- </el-dropdown-item>-->
|
||||
<!-- <el-dropdown-item-->
|
||||
<!-- v-else-->
|
||||
<!-- :command="[scope.row, '取消收藏']"-->
|
||||
<!-- v-btn-permission="'d9730d984627af948053df56a2db7997'"-->
|
||||
<!-- >-->
|
||||
<!-- 取消收藏-->
|
||||
<!-- </el-dropdown-item>-->
|
||||
<!-- <el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'dd4ea796dab7a01b105ba657b1968a84'">编辑</el-dropdown-item>-->
|
||||
<!-- <!– <el-dropdown-item :command="[scope.row, '分享']" v-btn-permission="'ESPMBSD4ZP'">分享</el-dropdown-item>–>-->
|
||||
<!-- <!– <el-dropdown-item :command="[scope.row, '授权']" v-btn-permission="'CWBPST294ZH7HSKD4452'" v-if="scope.row.attrInfoMap && scope.row.attrInfoMap.QBMJ === 'ACF675Z88W'">授权</el-dropdown-item>–>-->
|
||||
<!-- <el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'a7a38a95ea374695fc3128037f6feccf'">删除</el-dropdown-item>-->
|
||||
<!-- <!– <el-dropdown-item :command="[scope.row, '流程']">流程</el-dropdown-item>–>-->
|
||||
<!-- </el-dropdown-menu>-->
|
||||
</el-dropdown>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -1248,6 +1248,26 @@ const routes = [
|
||||
title: '标准调研流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzdyStep8',
|
||||
name: 'phoneBzdyStep8',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzdy/step8.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '标准调研流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzdyStep9',
|
||||
name: 'phoneBzdyStep9',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzdy/step9.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '标准调研流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzdyStep1-9',
|
||||
name: 'bzdyStep1-9',
|
||||
@@ -1756,6 +1776,16 @@ const routes = [
|
||||
title: '外部标准化协会入会流程(选择代表)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzrhStep2',
|
||||
name: 'phoneBzrhStep2',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzhHd-rh/step2.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '外部标准化协会入会流程(选择代表)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzrhStep3',
|
||||
name: 'bzrhStep3',
|
||||
@@ -1774,6 +1804,16 @@ const routes = [
|
||||
title: '外部标准化协会入会流程(责任负责人审批)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzrhStep4',
|
||||
name: 'phoneBzrhStep4',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzhHd-rh/step4.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '外部标准化协会入会流程(责任负责人审批)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzrhStep5',
|
||||
name: 'bzrhStep5',
|
||||
@@ -1792,6 +1832,16 @@ const routes = [
|
||||
title: '外部标准化协会入会流程(审批)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzrhStep6',
|
||||
name: 'phoneBzrhStep6',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzhHd-rh/step6.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '外部标准化协会入会流程(审批)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzrhStep6-1',
|
||||
name: 'bzrhStep6-1',
|
||||
@@ -1821,6 +1871,16 @@ const routes = [
|
||||
title: '外部标准化协会参会流程(选择入会代表)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzchStep2',
|
||||
name: 'phoneBzchStep2',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzhHd-ch/step2.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '外部标准化协会参会流程(选择入会代表)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzchStep3',
|
||||
name: 'bzchStep3',
|
||||
@@ -1839,6 +1899,16 @@ const routes = [
|
||||
title: '外部标准化协会参会流程(审批)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzchStep4',
|
||||
name: 'phoneBzchStep4',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzhHd-ch/step4.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '外部标准化协会参会流程(审批)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzchStep5',
|
||||
name: 'bzchStep5',
|
||||
@@ -1857,6 +1927,16 @@ const routes = [
|
||||
title: '外部标准化协会参会流程(审定)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzchStep6',
|
||||
name: 'phoneBzchStep6',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzhHd-ch/step6.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '外部标准化协会参会流程(审定)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzchStep6-1',
|
||||
name: 'bzchStep6-1',
|
||||
@@ -1884,6 +1964,16 @@ const routes = [
|
||||
title: '外部标准化会后管理流程(审批)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzhhStep2',
|
||||
name: 'phoneBzhhStep2',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzhHd-hh/step2.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '外部标准化会后管理流程(审批)'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzjdStep4',
|
||||
name: 'phoneBzjdStep4',
|
||||
@@ -1894,6 +1984,56 @@ const routes = [
|
||||
title: '标准解读流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzqdfbStep4',
|
||||
name: 'phoneBzqdfbStep4',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzqdfb/step4.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '标准清单发布/更新流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneXmpgStep2',
|
||||
name: 'phoneXmpgStep2',
|
||||
component: () => import('@/pages/processCenter/pages/phone/xmpg/step2.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '标准合规评估流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneXmpgStep5',
|
||||
name: 'phoneXmpgStep5',
|
||||
component: () => import('@/pages/processCenter/pages/phone/xmpg/step5.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '标准合规评估流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneXmpgStep6',
|
||||
name: 'phoneXmpgStep6',
|
||||
component: () => import('@/pages/processCenter/pages/phone/xmpg/step6.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '标准合规评估流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneXmpgStep7',
|
||||
name: 'phoneXmpgStep7',
|
||||
component: () => import('@/pages/processCenter/pages/phone/xmpg/step7.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '标准合规评估流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneWfhxStep5',
|
||||
name: 'phoneWfhxStep5',
|
||||
|
||||
Reference in New Issue
Block a user