合并冲突
This commit is contained in:
Generated
+105
-88
@@ -3619,6 +3619,23 @@
|
|||||||
"upath": "^1.1.1"
|
"upath": "^1.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"color-convert": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
|
||||||
|
"integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"color-name": "~1.1.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"color-name": {
|
||||||
|
"version": "1.1.4",
|
||||||
|
"resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
|
||||||
|
"integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
"commander": {
|
"commander": {
|
||||||
"version": "2.20.3",
|
"version": "2.20.3",
|
||||||
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
|
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
|
||||||
@@ -4564,6 +4581,94 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"vue-loader-v16": {
|
||||||
|
"version": "npm:vue-loader@16.3.0",
|
||||||
|
"resolved": "https://registry.nlark.com/vue-loader/download/vue-loader-16.3.0.tgz",
|
||||||
|
"integrity": "sha1-LxleS6D7DiY1ltaDDfF9Gjbok2w=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"chalk": "^4.1.0",
|
||||||
|
"hash-sum": "^2.0.0",
|
||||||
|
"loader-utils": "^2.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ansi-styles": {
|
||||||
|
"version": "4.3.0",
|
||||||
|
"resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1618995651629&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz",
|
||||||
|
"integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"color-convert": "^2.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"big.js": {
|
||||||
|
"version": "5.2.2",
|
||||||
|
"resolved": "https://registry.nlark.com/big.js/download/big.js-5.2.2.tgz",
|
||||||
|
"integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"chalk": {
|
||||||
|
"version": "4.1.1",
|
||||||
|
"resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.1.tgz",
|
||||||
|
"integrity": "sha1-yAs/qyi/Y3HmhjMl7uZ+YYt35q0=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-styles": "^4.1.0",
|
||||||
|
"supports-color": "^7.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"emojis-list": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npm.taobao.org/emojis-list/download/emojis-list-3.0.0.tgz",
|
||||||
|
"integrity": "sha1-VXBmIEatKeLpFucariYKvf9Pang=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"has-flag": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz",
|
||||||
|
"integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"json5": {
|
||||||
|
"version": "2.2.0",
|
||||||
|
"resolved": "https://registry.npm.taobao.org/json5/download/json5-2.2.0.tgz",
|
||||||
|
"integrity": "sha1-Lf7+cgxrpSXZ69kJlQ8FFTFsiaM=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"minimist": "^1.2.5"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"loader-utils": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-5MrOW4FtQloWa18JfhDNErNgZLA=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"big.js": "^5.2.2",
|
||||||
|
"emojis-list": "^3.0.0",
|
||||||
|
"json5": "^2.1.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"supports-color": {
|
||||||
|
"version": "7.2.0",
|
||||||
|
"resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1622293630895&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
|
||||||
|
"integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"has-flag": "^4.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"vue-style-loader": {
|
"vue-style-loader": {
|
||||||
"version": "4.1.2",
|
"version": "4.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz",
|
||||||
@@ -13517,94 +13622,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.22.4.tgz",
|
"resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.22.4.tgz",
|
||||||
"integrity": "sha512-XLI5s0AdqMP2Lf4I4CmdmOq8kjb5DDFGR77wAuxCfpEuYSfhTRyyx6MetgZMiL6Lxa0DasjBOiOcciU3NkL3/Q=="
|
"integrity": "sha512-XLI5s0AdqMP2Lf4I4CmdmOq8kjb5DDFGR77wAuxCfpEuYSfhTRyyx6MetgZMiL6Lxa0DasjBOiOcciU3NkL3/Q=="
|
||||||
},
|
},
|
||||||
"vue-loader-v16": {
|
|
||||||
"version": "npm:vue-loader@16.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.2.0.tgz",
|
|
||||||
"integrity": "sha512-TitGhqSQ61RJljMmhIGvfWzJ2zk9m1Qug049Ugml6QP3t0e95o0XJjk29roNEiPKJQBEi8Ord5hFuSuELzSp8Q==",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"chalk": "^4.1.0",
|
|
||||||
"hash-sum": "^2.0.0",
|
|
||||||
"loader-utils": "^2.0.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"ansi-styles": {
|
|
||||||
"version": "4.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
|
||||||
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"color-convert": "^2.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"chalk": {
|
|
||||||
"version": "4.1.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
|
|
||||||
"integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"ansi-styles": "^4.1.0",
|
|
||||||
"supports-color": "^7.1.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"color-convert": {
|
|
||||||
"version": "2.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
|
||||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"color-name": "~1.1.4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"color-name": {
|
|
||||||
"version": "1.1.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
|
||||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"has-flag": {
|
|
||||||
"version": "4.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
|
|
||||||
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"hash-sum": {
|
|
||||||
"version": "2.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz",
|
|
||||||
"integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"loader-utils": {
|
|
||||||
"version": "2.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
|
|
||||||
"integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"big.js": "^5.2.2",
|
|
||||||
"emojis-list": "^3.0.0",
|
|
||||||
"json5": "^2.1.2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"supports-color": {
|
|
||||||
"version": "7.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
|
|
||||||
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"has-flag": "^4.0.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"vue-router": {
|
"vue-router": {
|
||||||
"version": "3.4.0",
|
"version": "3.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.4.0.tgz",
|
||||||
|
|||||||
@@ -381,16 +381,25 @@ export default {
|
|||||||
},
|
},
|
||||||
goNuwPage (item) {
|
goNuwPage (item) {
|
||||||
this.$store.commit('setDetailMap', this.$route.path)
|
this.$store.commit('setDetailMap', this.$route.path)
|
||||||
this.$router.push({
|
const params = {
|
||||||
name: 'StandLawsAttrDetails',
|
id: item.id,
|
||||||
params: {
|
dictionaryName: item.dictionaryName,
|
||||||
id: item.id,
|
dictionType: item.dictionType,
|
||||||
dictionaryName: item.dictionaryName,
|
isRelate: item.isRelate,
|
||||||
dictionType: item.dictionType,
|
relateDicId: item.relateDicId
|
||||||
isRelate: item.isRelate,
|
}
|
||||||
relateDicId: item.relateDicId
|
if(item.dictionType && item.dictionType === 'TREE'){
|
||||||
}
|
this.$router.push({
|
||||||
})
|
name: 'standLawsAttrTreeDetails',
|
||||||
|
params: params
|
||||||
|
})
|
||||||
|
}else {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'StandLawsAttrDetails',
|
||||||
|
params: params
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
handleSelectone (data) {
|
handleSelectone (data) {
|
||||||
this.selectedList = []
|
this.selectedList = []
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -3,11 +3,11 @@
|
|||||||
<div class="to-do-list">
|
<div class="to-do-list">
|
||||||
<div>
|
<div>
|
||||||
<span class="task">待办任务</span>
|
<span class="task">待办任务</span>
|
||||||
<span class="more">MORE</span>
|
<div class="more" @click="togo">MORE</div>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li v-for="item in toDoTaskList" :key="item.id" class="time-title">
|
<li v-for="item in toDoTaskList" :key="item.id" class="time-title">
|
||||||
<a>{{ item.title }}</a>
|
<a>{{ item.prcName }}</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@@ -20,26 +20,36 @@ export default {
|
|||||||
mixins: [],
|
mixins: [],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
toDoTaskList: [
|
toDoTaskList: [],// 代办数据
|
||||||
{
|
total: 0,
|
||||||
id: 1,
|
pageNo: 1,
|
||||||
title: '标准制定流程1',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 2,
|
|
||||||
title: '标准制定流程2',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 3,
|
|
||||||
title: '标准制定流程3',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {},
|
mounted() {this.queryProcess()},
|
||||||
methods: {},
|
methods: {
|
||||||
|
togo () {
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
},
|
||||||
|
queryProcess () { // 查询待办流程
|
||||||
|
this.$http.postData('lawss/activiti/todoTaskList', {
|
||||||
|
current: this.pageNo,
|
||||||
|
size: parseInt(this.$store.getters.userInfo.configContent),
|
||||||
|
userId: this.$store.getters.userInfo.usid || this.$store.getters.userInfo.userId,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
loading: 'loading',
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.toDoTaskList = res.list
|
||||||
|
}, e => {
|
||||||
|
})
|
||||||
|
},
|
||||||
|
toPage() {
|
||||||
|
this.$router.push(this.path)
|
||||||
|
}
|
||||||
|
},
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -14,12 +14,12 @@
|
|||||||
size="mini"
|
size="mini"
|
||||||
type="primary"
|
type="primary"
|
||||||
class="common-button-primary"
|
class="common-button-primary"
|
||||||
v-btn-permission="'bcf0d05723689ced8f49fae7794ff0db'"
|
v-btn-permission="''"
|
||||||
@click="searchStandList">查询</el-button>
|
@click="searchStandList">查询</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
size="mini"
|
size="mini"
|
||||||
class="common-button-default"
|
class="common-button-default"
|
||||||
v-btn-permission="'0af780936b77df9905c988db9e90bee8'"
|
v-btn-permission="''"
|
||||||
@click="clearSearchStand">清空</el-button>
|
@click="clearSearchStand">清空</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
@@ -28,10 +28,10 @@
|
|||||||
</table-tools-bar>
|
</table-tools-bar>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="action-bar">
|
<div class="action-bar">
|
||||||
<el-button size="mini" @click="spiltStandFile" v-btn-permission="'633d92e841ab4d49fb57b48b45fd0db8'"><i class="iconfont"></i>拆分</el-button>
|
<el-button size="mini" @click="spiltStandFile" v-btn-permission="''"><i class="iconfont"></i>拆分</el-button>
|
||||||
<el-button size="mini" @click="clickButtonToUpload" v-btn-permission="'d7a62638bbbe81e375ea598acaf80593'"><i class="iconfont"></i>上传</el-button>
|
<el-button size="mini" @click="clickButtonToUpload" v-btn-permission="''"><i class="iconfont"></i>上传</el-button>
|
||||||
<el-button size="mini" @click="clickButtonToImport" v-btn-permission="'b8aaf61ad3c88f4c73e5af88ac9689c0'"><i class="iconfont"></i>导入拆分结果</el-button>
|
<el-button size="mini" @click="clickButtonToImport" v-btn-permission="''"><i class="iconfont"></i>导入拆分结果</el-button>
|
||||||
<el-button size="mini" @click="batchDelete" v-btn-permission="'e214975dcab66d2e27bf2ed9897f521c'"><i class="iconfont"></i>删除</el-button>
|
<el-button size="mini" @click="batchDelete" v-btn-permission="''"><i class="iconfont"></i>删除</el-button>
|
||||||
</div>
|
</div>
|
||||||
<div class="table-wrap">
|
<div class="table-wrap">
|
||||||
<div style="position: absolute;height: 100%;width: 100%;">
|
<div style="position: absolute;height: 100%;width: 100%;">
|
||||||
@@ -109,24 +109,24 @@
|
|||||||
<el-dropdown trigger="click" @command="handleCommand">
|
<el-dropdown trigger="click" @command="handleCommand">
|
||||||
<i class="iconfont"></i>
|
<i class="iconfont"></i>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
<el-dropdown-item :command="[scope.row, '查看']" v-btn-permission="'17ba4598eb411d6feed468a2e446a301'">查看</el-dropdown-item>
|
<el-dropdown-item :command="[scope.row, '查看']" v-btn-permission="''">查看</el-dropdown-item>
|
||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
v-if="scope.row.collectBtn"
|
v-if="scope.row.collectBtn"
|
||||||
:command="[scope.row, '收藏']"
|
:command="[scope.row, '收藏']"
|
||||||
v-btn-permission="'0d316a6ffcbefddd9caad6b4e180a7d7'"
|
v-btn-permission="''"
|
||||||
>
|
>
|
||||||
收藏
|
收藏
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
v-else
|
v-else
|
||||||
:command="[scope.row, '取消收藏']"
|
:command="[scope.row, '取消收藏']"
|
||||||
v-btn-permission="'7a92c8e3476202429a71ff18112469bc'"
|
v-btn-permission="''"
|
||||||
>
|
>
|
||||||
取消收藏
|
取消收藏
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item :command="[scope.row, '分享']" v-btn-permission="'b96444e5e022acfac7ca7de12dec5e13'">分享</el-dropdown-item>
|
<el-dropdown-item :command="[scope.row, '分享']" v-btn-permission="''">分享</el-dropdown-item>
|
||||||
<!-- <el-dropdown-item :command="[scope.row, '关联']">关联</el-dropdown-item>-->
|
<!-- <el-dropdown-item :command="[scope.row, '关联']">关联</el-dropdown-item>-->
|
||||||
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'10ba28487876990927f653a66e1eeb98'">删除</el-dropdown-item>
|
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="''">删除</el-dropdown-item>
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
</template>
|
</template>
|
||||||
@@ -852,7 +852,7 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
this.$http.get('lawss/sarStandardsInfo/getSarStandardsInfoPage', {
|
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', {
|
||||||
page: this.conditionForm.page,
|
page: this.conditionForm.page,
|
||||||
pageSize: this.conditionForm.pageSize,
|
pageSize: this.conditionForm.pageSize,
|
||||||
standNumber: this.conditionForm.numberName,
|
standNumber: this.conditionForm.numberName,
|
||||||
@@ -1166,7 +1166,7 @@ export default {
|
|||||||
splitEo.fileType = this.selectedSplitStandList[0].standFileClassify
|
splitEo.fileType = this.selectedSplitStandList[0].standFileClassify
|
||||||
splitEo.attId = this.selectedSplitStandList[0].attId
|
splitEo.attId = this.selectedSplitStandList[0].attId
|
||||||
splitEo.fileName = this.selectedSplitStandList[0].fileName
|
splitEo.fileName = this.selectedSplitStandList[0].fileName
|
||||||
this.$http.get('lawss/sarFileSplitInfo/fileSplit', splitEo, {
|
this.$http.postData('lawss/sarFileSplitInfo/fileSplit', splitEo, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
@@ -1312,7 +1312,7 @@ export default {
|
|||||||
this.percent = 0
|
this.percent = 0
|
||||||
this.speedModal = true
|
this.speedModal = true
|
||||||
this.speedProgress()
|
this.speedProgress()
|
||||||
this.$http.get('lawss/sarFileSplitInfo/fileSplit', this.uploadFilesplitEo, {
|
this.$http.postData('lawss/sarFileSplitInfo/fileSplit', this.uploadFilesplitEo, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
|
|||||||
@@ -4,10 +4,10 @@
|
|||||||
<div class="action-bar">
|
<div class="action-bar">
|
||||||
<div slot="left">
|
<div slot="left">
|
||||||
<!-- <el-button type="primary" @click="changeData">转化</Button>-->
|
<!-- <el-button type="primary" @click="changeData">转化</Button>-->
|
||||||
<el-button size="mini" @click="uploadPdf" v-btn-permission="'MFQVKD5T76BL5VVZC3U2'"
|
<el-button size="mini" @click="uploadPdf" v-btn-permission="''"
|
||||||
><i class="iconfont"></i>上传</el-button
|
><i class="iconfont"></i>上传</el-button
|
||||||
>
|
>
|
||||||
<el-button size="mini" @click="delData" v-btn-permission="'QJ2GMGUUE5ZZ9PL37BHM'"
|
<el-button size="mini" @click="delData" v-btn-permission="''"
|
||||||
><i class="iconfont"></i>删除</el-button
|
><i class="iconfont"></i>删除</el-button
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
@@ -106,16 +106,16 @@
|
|||||||
<el-dropdown trigger="click" @command="handleCommand">
|
<el-dropdown trigger="click" @command="handleCommand">
|
||||||
<i class="iconfont"></i>
|
<i class="iconfont"></i>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
<el-dropdown-item :command="[scope.row, '获取文件']" v-btn-permission="'RFGHJXQLEBEC37EWCPMQ'"
|
<el-dropdown-item :command="[scope.row, '获取文件']" v-btn-permission=""
|
||||||
>获取文件</el-dropdown-item
|
>获取文件</el-dropdown-item
|
||||||
>
|
>
|
||||||
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'4ZCETHNBRFJQH8J8Q3Y5'"
|
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission=""
|
||||||
>编辑</el-dropdown-item
|
>编辑</el-dropdown-item
|
||||||
>
|
>
|
||||||
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'QJ2GMGUUE5ZZ9PL37BHM'"
|
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission=""
|
||||||
>删除</el-dropdown-item
|
>删除</el-dropdown-item
|
||||||
>
|
>
|
||||||
<el-dropdown-item :command="[scope.row, '在线编辑']" v-btn-permission="'M93G5FCWKBBPU8GMQ4EF'"
|
<el-dropdown-item :command="[scope.row, '在线编辑']" v-btn-permission=""
|
||||||
>在线编辑</el-dropdown-item
|
>在线编辑</el-dropdown-item
|
||||||
>
|
>
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
@@ -508,7 +508,7 @@ export default {
|
|||||||
if (res.data.standName != null && res.data.standName !== "") {
|
if (res.data.standName != null && res.data.standName !== "") {
|
||||||
this.uploadFilesdfEo.standName = res.data.standName;
|
this.uploadFilesdfEo.standName = res.data.standName;
|
||||||
}
|
}
|
||||||
// this.uploadFilesdfEo.fileName = res.data.name
|
this.uploadFilesdfEo.fileName = res.data.name
|
||||||
// this.getTableData()
|
// this.getTableData()
|
||||||
this.defaultFileList.push(file);
|
this.defaultFileList.push(file);
|
||||||
this.$message({
|
this.$message({
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ export default {
|
|||||||
this.getMenu().then((menuList) => {
|
this.getMenu().then((menuList) => {
|
||||||
let hasHomeMenu = false
|
let hasHomeMenu = false
|
||||||
menuList.map((menuItem) => {
|
menuList.map((menuItem) => {
|
||||||
if (menuItem.id === 'G72J4WNFM8') {
|
if (menuItem.id === 'asdfadf') {
|
||||||
hasHomeMenu = true
|
hasHomeMenu = true
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -50,7 +50,7 @@
|
|||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
type="danger"
|
type="danger"
|
||||||
size="mini"
|
size="small"
|
||||||
class="common-button-danger"
|
class="common-button-danger"
|
||||||
@click="beforeBack"
|
@click="beforeBack"
|
||||||
:loading="isSubmit"
|
:loading="isSubmit"
|
||||||
|
|||||||
@@ -38,15 +38,22 @@
|
|||||||
placeholder="请选择完成时间">
|
placeholder="请选择完成时间">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="调研模板" prop="model" class="add-form-item form-item-disabled">
|
<el-form-item label="调研模板" prop="modelName" class="add-form-item form-item-disabled">
|
||||||
<div v-if="form.model">
|
<el-input
|
||||||
{{ form.model }}
|
disabled
|
||||||
|
style="display: none;"
|
||||||
|
v-model="form.modelName"
|
||||||
|
clearable
|
||||||
|
></el-input>
|
||||||
|
<div v-if="form.modelName" @click="fileUpload" class="fileClass">
|
||||||
|
{{ form.modelName }}
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
class="common-button-primary"
|
class="common-button-primary"
|
||||||
size="mini">
|
@click="fileUpload"
|
||||||
|
size="mini">
|
||||||
点击上传
|
点击上传
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
@@ -56,6 +63,19 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
</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 === '2'">
|
<div class="content" v-show="active === '2'">
|
||||||
<div class="block" style="padding-top: 20px;">
|
<div class="block" style="padding-top: 20px;">
|
||||||
@@ -160,6 +180,24 @@
|
|||||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
|
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
|
||||||
|
<el-upload
|
||||||
|
multiple
|
||||||
|
drag
|
||||||
|
:action="fileUrl"
|
||||||
|
ref="importfile"
|
||||||
|
name="file"
|
||||||
|
accept=".ZIP, .zip, .docx, .DOCX, .xls, .xlsx"
|
||||||
|
:before-upload="beginImportFile"
|
||||||
|
:on-success="importFileSuccess"
|
||||||
|
:show-file-list="false"
|
||||||
|
>
|
||||||
|
<div style="padding: 20px 0">
|
||||||
|
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||||
|
<p>点击或拖拽上传文件</p>
|
||||||
|
</div>
|
||||||
|
</el-upload>
|
||||||
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -172,6 +210,7 @@ export default {
|
|||||||
name: "bzdyStep1",
|
name: "bzdyStep1",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
commentText: '',
|
||||||
roleRow: {},
|
roleRow: {},
|
||||||
nodeList: [],
|
nodeList: [],
|
||||||
type: '',
|
type: '',
|
||||||
@@ -192,6 +231,7 @@ export default {
|
|||||||
title: '', // 调研标题
|
title: '', // 调研标题
|
||||||
date: '', // 完成时间
|
date: '', // 完成时间
|
||||||
model: '', // 上传模板
|
model: '', // 上传模板
|
||||||
|
modelName: ''
|
||||||
},
|
},
|
||||||
formRules: {
|
formRules: {
|
||||||
title: [
|
title: [
|
||||||
@@ -199,6 +239,9 @@ export default {
|
|||||||
],
|
],
|
||||||
date: [
|
date: [
|
||||||
{ type: 'date', required: true, message: '请选择完成时间', trigger: 'change' }
|
{ type: 'date', required: true, message: '请选择完成时间', trigger: 'change' }
|
||||||
|
],
|
||||||
|
modelName: [
|
||||||
|
{ required: true, message: '请上传调研结果', trigger: 'change' },
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
roleForm: {
|
roleForm: {
|
||||||
@@ -228,7 +271,9 @@ export default {
|
|||||||
presidentUserName: [
|
presidentUserName: [
|
||||||
{ required: true, message: '请输入调研标题', trigger: 'change' },
|
{ required: true, message: '请输入调研标题', trigger: 'change' },
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
fileUrl: 'api/att/attFile/upload',
|
||||||
|
fileMadel: false,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
@@ -237,6 +282,47 @@ export default {
|
|||||||
ProcessTitle
|
ProcessTitle
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 导入按钮 上传之前的钩子
|
||||||
|
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 === '.ZIP' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.zip' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.spinShow = false
|
||||||
|
this.$message.error('文件' + file.name + '格式不正确,请上传ZIP/DOCX或XLS文件')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
// 判断文件上传大小
|
||||||
|
// eslint-disable-next-line no-unreachable
|
||||||
|
if (file.size / 1024 / 1024 <= 200) {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
// 导入标准数据成功后执行
|
||||||
|
importFileSuccess (response, file) {
|
||||||
|
if (response.ok) {
|
||||||
|
this.fileMadel = false
|
||||||
|
this.form.model = response.data.id
|
||||||
|
this.form.modelName = response.data.name
|
||||||
|
this.$message({
|
||||||
|
showClose: true,
|
||||||
|
message: response.message,
|
||||||
|
type: 'success'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
fileUpload () {
|
||||||
|
this.fileMadel = true
|
||||||
|
},
|
||||||
saveUserInfo () {
|
saveUserInfo () {
|
||||||
if (this.type === 'dockUser') {
|
if (this.type === 'dockUser') {
|
||||||
this.roleForm.dockUser = this.roleRow.id
|
this.roleForm.dockUser = this.roleRow.id
|
||||||
@@ -291,6 +377,7 @@ export default {
|
|||||||
}, {}, res => {
|
}, {}, res => {
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
var json = Object.assign(this.form, this.roleForm)
|
var json = Object.assign(this.form, this.roleForm)
|
||||||
|
json.commentText = this.commentText
|
||||||
this.$http.post('lawss/activiti/completeTask', {
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
json: JSON.stringify(json),
|
json: JSON.stringify(json),
|
||||||
taskId: res.data,
|
taskId: res.data,
|
||||||
@@ -332,6 +419,12 @@ export default {
|
|||||||
}
|
}
|
||||||
position: relative;
|
position: relative;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
.fileClass {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.fileClass:hover{
|
||||||
|
color: #0c91e5;
|
||||||
|
}
|
||||||
.headerTabs {
|
.headerTabs {
|
||||||
height: 52px;
|
height: 52px;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -40,16 +40,11 @@
|
|||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="调研模板" prop="model" class="add-form-item form-item-disabled">
|
<el-form-item label="调研模板" prop="model" class="add-form-item form-item-disabled">
|
||||||
<div v-if="form.model">
|
<div v-if="form.model" class="fileClass" @click="updateFile">
|
||||||
{{ form.model }}
|
{{ form.modelName }}
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<el-button
|
- -
|
||||||
type="primary"
|
|
||||||
class="common-button-primary"
|
|
||||||
size="mini">
|
|
||||||
点击上传
|
|
||||||
</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="责任人" prop="responUserList" class="add-form-item form-item-disabled">
|
<el-form-item label="责任人" prop="responUserList" class="add-form-item form-item-disabled">
|
||||||
@@ -65,6 +60,19 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
</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>
|
||||||
<ProcessFooter
|
<ProcessFooter
|
||||||
show-save
|
show-save
|
||||||
@@ -113,6 +121,7 @@
|
|||||||
name: "bzdyStep2",
|
name: "bzdyStep2",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
commentText: '',
|
||||||
taskIds: this.$route.query.taskIds,
|
taskIds: this.$route.query.taskIds,
|
||||||
pId: this.$route.query.prcId,
|
pId: this.$route.query.prcId,
|
||||||
roleRow: {},
|
roleRow: {},
|
||||||
@@ -151,6 +160,9 @@
|
|||||||
ProcessTitle
|
ProcessTitle
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
updateFile () {
|
||||||
|
window.location.href = '/api/att/attFile/downloadFile?fileId=' + this.form.model
|
||||||
|
},
|
||||||
saveUserInfo () {
|
saveUserInfo () {
|
||||||
var idList = ''
|
var idList = ''
|
||||||
var nameList = ''
|
var nameList = ''
|
||||||
@@ -189,6 +201,7 @@
|
|||||||
this.$refs['qbkwForm'].validate((valid) => {
|
this.$refs['qbkwForm'].validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
var json = this.json
|
var json = this.json
|
||||||
|
json.commentText = this.commentText
|
||||||
json.responUserList = this.form.responUserList
|
json.responUserList = this.form.responUserList
|
||||||
json.responUserListName = this.form.responUserListName
|
json.responUserListName = this.form.responUserListName
|
||||||
this.$http.post('lawss/activiti/completeTask', {
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
@@ -216,6 +229,8 @@
|
|||||||
this.form.title = data.title
|
this.form.title = data.title
|
||||||
this.form.date = data.date
|
this.form.date = data.date
|
||||||
this.json = data
|
this.json = data
|
||||||
|
this.form.model = data.model
|
||||||
|
this.form.modelName = data.modelName
|
||||||
}).catch(e => {
|
}).catch(e => {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@@ -237,6 +252,12 @@
|
|||||||
padding: 0 20px 0;
|
padding: 0 20px 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.fileClass {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.fileClass:hover{
|
||||||
|
color: #0c91e5;
|
||||||
|
}
|
||||||
position: relative;
|
position: relative;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
.headerTabs {
|
.headerTabs {
|
||||||
|
|||||||
@@ -40,16 +40,11 @@
|
|||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="调研模板" prop="model" class="add-form-item form-item-disabled">
|
<el-form-item label="调研模板" prop="model" class="add-form-item form-item-disabled">
|
||||||
<div v-if="form.model">
|
<div v-if="form.model" class="fileClass" @click="updateFile">
|
||||||
{{ form.model }}
|
{{ form.modelName }}
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<el-button
|
- -
|
||||||
type="primary"
|
|
||||||
class="common-button-primary"
|
|
||||||
size="mini">
|
|
||||||
点击上传
|
|
||||||
</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="调研结果" prop="fileName" class="add-form-item form-item-disabled">
|
<el-form-item label="调研结果" prop="fileName" class="add-form-item form-item-disabled">
|
||||||
@@ -77,6 +72,19 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
</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>
|
||||||
<ProcessFooter
|
<ProcessFooter
|
||||||
show-save
|
show-save
|
||||||
@@ -118,6 +126,7 @@
|
|||||||
name: "bzdyStep3",
|
name: "bzdyStep3",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
commentText: '',
|
||||||
taskIds: this.$route.query.taskIds,
|
taskIds: this.$route.query.taskIds,
|
||||||
pId: this.$route.query.prcId,
|
pId: this.$route.query.prcId,
|
||||||
active: '1', // 默认显示
|
active: '1', // 默认显示
|
||||||
@@ -127,6 +136,7 @@
|
|||||||
title: '', // 调研标题
|
title: '', // 调研标题
|
||||||
date: '', // 完成时间
|
date: '', // 完成时间
|
||||||
model: '', // 上传模板
|
model: '', // 上传模板
|
||||||
|
modelName: '',
|
||||||
fileId: '',
|
fileId: '',
|
||||||
fileName: '',
|
fileName: '',
|
||||||
responUserList: '',
|
responUserList: '',
|
||||||
@@ -148,6 +158,9 @@
|
|||||||
ProcessTitle
|
ProcessTitle
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
updateFile () {
|
||||||
|
window.location.href = '/api/att/attFile/downloadFile?fileId=' + this.form.model
|
||||||
|
},
|
||||||
// 导入按钮 上传之前的钩子
|
// 导入按钮 上传之前的钩子
|
||||||
beginImportFile (file) {
|
beginImportFile (file) {
|
||||||
var filename = file.name
|
var filename = file.name
|
||||||
@@ -197,7 +210,9 @@
|
|||||||
this.$refs['qbkwForm'].validate((valid) => {
|
this.$refs['qbkwForm'].validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
var json = this.json
|
var json = this.json
|
||||||
|
json.commentText = this.commentText
|
||||||
json.fileId = this.form.fileId
|
json.fileId = this.form.fileId
|
||||||
|
json.fileName = this.form.fileName
|
||||||
this.$http.post('lawss/activiti/completeTask', {
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
json: JSON.stringify(json),
|
json: JSON.stringify(json),
|
||||||
taskId: this.taskIds,
|
taskId: this.taskIds,
|
||||||
@@ -223,6 +238,8 @@
|
|||||||
this.form.title = data.title
|
this.form.title = data.title
|
||||||
this.form.date = data.date
|
this.form.date = data.date
|
||||||
this.json = data
|
this.json = data
|
||||||
|
this.form.model = data.model
|
||||||
|
this.form.modelName = data.modelName
|
||||||
}).catch(e => {
|
}).catch(e => {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -0,0 +1,267 @@
|
|||||||
|
<template>
|
||||||
|
<div class="bzdyStep4">
|
||||||
|
<!-- 标准调研流程-->
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">标准调研流程</template>
|
||||||
|
<template slot="proNode">责任对接人审批</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-show="active === '1'">
|
||||||
|
<div style="flex: auto; overflow: auto;">
|
||||||
|
<el-form
|
||||||
|
ref="qbkwForm"
|
||||||
|
:model="form"
|
||||||
|
:rules="formRules"
|
||||||
|
class="label-input-form"
|
||||||
|
label-width="210px"
|
||||||
|
>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div class="prc-content-border">
|
||||||
|
<el-row :gutter="24">
|
||||||
|
<el-col :span="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="model" class="add-form-item form-item-disabled">
|
||||||
|
<div v-if="form.model" class="fileClass" @click="updateFile(form.model)">
|
||||||
|
{{ form.modelName }}
|
||||||
|
</div>
|
||||||
|
<div v-else>
|
||||||
|
- -
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="调研结果" prop="fileName" class="add-form-item form-item-disabled">
|
||||||
|
<div v-if="form.file" class="fileClass" @click="updateFile(form.file)">
|
||||||
|
{{ form.fileName }}
|
||||||
|
</div>
|
||||||
|
<div v-else>
|
||||||
|
- -
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
<!-- <el-form-item label="审批意见" prop="text" class="add-form-item form-item-disabled">-->
|
||||||
|
<!-- <el-input-->
|
||||||
|
<!-- v-model="form.text"-->
|
||||||
|
<!-- placeholder="请输入审批意见"-->
|
||||||
|
<!-- clearable-->
|
||||||
|
<!-- ></el-input>-->
|
||||||
|
<!-- </el-form-item>-->
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
|
</el-form>
|
||||||
|
</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>
|
||||||
|
<ProcessFooter
|
||||||
|
show-save
|
||||||
|
show-submit
|
||||||
|
show-back
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
approval
|
||||||
|
@back="handleSubmitNo"
|
||||||
|
@save="handleSave"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
submitBTNText="同意"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {inboundLiaisonDetail} from 'api/process'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "bzdyStep4",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
commentText: '',
|
||||||
|
taskIds: this.$route.query.taskIds,
|
||||||
|
pId: this.$route.query.prcId,
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
form: {
|
||||||
|
title: '', // 调研标题
|
||||||
|
date: '', // 完成时间
|
||||||
|
model: '', // 上传模板
|
||||||
|
modelName: '',
|
||||||
|
fileId: '',
|
||||||
|
fileName: '',
|
||||||
|
responUserList: '',
|
||||||
|
responUserListName: '',
|
||||||
|
text: ''
|
||||||
|
},
|
||||||
|
formRules: {
|
||||||
|
text: [
|
||||||
|
{ required: true, message: '请输入审批意见', trigger: 'blur' },
|
||||||
|
]
|
||||||
|
},
|
||||||
|
json: {},
|
||||||
|
fileUrl: 'api/att/attFile/upload',
|
||||||
|
fileMadel: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
updateFile (fileId) {
|
||||||
|
window.location.href = '/api/att/attFile/downloadFile?fileId=' + fileId
|
||||||
|
},
|
||||||
|
handleTabs(name) {
|
||||||
|
this.active = name
|
||||||
|
},
|
||||||
|
handleSave() {},
|
||||||
|
handleSubmit() { // 同意
|
||||||
|
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')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleSubmitNo() {
|
||||||
|
if (this.commentText) {
|
||||||
|
var json = this.json
|
||||||
|
json.actionFlag = 1
|
||||||
|
json.commentText = this.commentText
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskIds: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('驳回成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} 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
|
||||||
|
this.form.date = data.date
|
||||||
|
this.json = data
|
||||||
|
this.form.file = data.fileId
|
||||||
|
this.form.fileName = data.fileName
|
||||||
|
this.form.model = data.model
|
||||||
|
this.form.modelName = data.modelName
|
||||||
|
}).catch(e => {
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.bzdyStep4 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.fileClass {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.fileClass:hover{
|
||||||
|
color: #0c91e5;
|
||||||
|
}
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,335 @@
|
|||||||
|
<template>
|
||||||
|
<div class="bzdyStep5">
|
||||||
|
<!-- 标准调研流程-->
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">标准调研流程</template>
|
||||||
|
<template slot="proNode">汇总调研结果</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-show="active === '1'">
|
||||||
|
<div style="flex: auto; overflow: auto;">
|
||||||
|
<el-form
|
||||||
|
ref="qbkwForm"
|
||||||
|
:model="form"
|
||||||
|
:rules="formRules"
|
||||||
|
class="label-input-form"
|
||||||
|
label-width="210px"
|
||||||
|
>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div class="prc-content-border">
|
||||||
|
<el-row :gutter="24">
|
||||||
|
<el-col :span="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">
|
||||||
|
<el-input
|
||||||
|
disabled
|
||||||
|
style="display: none;"
|
||||||
|
v-model="form.hzfileId"
|
||||||
|
clearable
|
||||||
|
></el-input>
|
||||||
|
<div v-if="form.hzfileName" @click="fileUpload" class="fileClass">
|
||||||
|
{{ form.hzfileName }}
|
||||||
|
</div>
|
||||||
|
<div v-else>
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
class="common-button-primary"
|
||||||
|
@click="fileUpload"
|
||||||
|
size="mini">
|
||||||
|
点击上传
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
|
</el-form>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">调研信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div>
|
||||||
|
<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"
|
||||||
|
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.id)" class="fileClass">
|
||||||
|
{{scope.row.fileName}}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</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>
|
||||||
|
<ProcessFooter
|
||||||
|
show-save
|
||||||
|
show-submit
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@save="handleSave"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
|
||||||
|
<el-upload
|
||||||
|
multiple
|
||||||
|
drag
|
||||||
|
:action="fileUrl"
|
||||||
|
ref="importfile"
|
||||||
|
name="file"
|
||||||
|
accept=".ZIP, .zip, .docx, .DOCX, .xls, .xlsx"
|
||||||
|
:before-upload="beginImportFile"
|
||||||
|
:on-success="importFileSuccess"
|
||||||
|
:show-file-list="false"
|
||||||
|
>
|
||||||
|
<div style="padding: 20px 0">
|
||||||
|
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||||
|
<p>点击或拖拽上传文件</p>
|
||||||
|
</div>
|
||||||
|
</el-upload>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {inboundLiaisonDetail} from 'api/process'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "bzdyStep5",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
commentText: '',
|
||||||
|
tableData: [],
|
||||||
|
taskIds: this.$route.query.taskIds,
|
||||||
|
pId: this.$route.query.prcId,
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
form: {
|
||||||
|
title: '', // 调研标题
|
||||||
|
date: '', // 完成时间
|
||||||
|
hzfileId: '',
|
||||||
|
hzfileName: '',
|
||||||
|
},
|
||||||
|
formRules: {
|
||||||
|
hzfileId: [
|
||||||
|
{ required: true, message: '请上传汇总结果', trigger: 'change' },
|
||||||
|
]
|
||||||
|
},
|
||||||
|
json: {},
|
||||||
|
fileUrl: 'api/att/attFile/upload',
|
||||||
|
fileMadel: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
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 === '.ZIP' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.zip' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.spinShow = false
|
||||||
|
this.$message.error('文件' + file.name + '格式不正确,请上传ZIP/DOCX或XLS文件')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
// 判断文件上传大小
|
||||||
|
// eslint-disable-next-line no-unreachable
|
||||||
|
if (file.size / 1024 / 1024 <= 200) {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
// 导入标准数据成功后执行
|
||||||
|
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.$refs['qbkwForm'].validate((valid) => {
|
||||||
|
if (valid) {
|
||||||
|
var json = this.json
|
||||||
|
json.commentText = this.commentText
|
||||||
|
json.hzfileId = this.form.hzfileId
|
||||||
|
json.hzfileName = this.form.hzfileName
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskId: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('提交成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
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
|
||||||
|
this.form.date = data.date
|
||||||
|
this.json = data
|
||||||
|
this.tableData = data.responUserListMap
|
||||||
|
this.form.hzfileId = data.hzfileId
|
||||||
|
this.form.hzfileName = data.hzfileName
|
||||||
|
}).catch(e => {
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.bzdyStep5 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.fileClass {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.fileClass:hover{
|
||||||
|
color: #0c91e5;
|
||||||
|
}
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,347 @@
|
|||||||
|
<template>
|
||||||
|
<div class="bzdyStep6">
|
||||||
|
<!-- 标准调研流程-->
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">标准调研流程</template>
|
||||||
|
<template slot="proNode">责任人会签</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-show="active === '1'">
|
||||||
|
<div style="flex: auto; overflow: auto;">
|
||||||
|
<el-form
|
||||||
|
ref="qbkwForm"
|
||||||
|
:model="form"
|
||||||
|
:rules="formRules"
|
||||||
|
class="label-input-form"
|
||||||
|
label-width="210px"
|
||||||
|
>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div class="prc-content-border">
|
||||||
|
<el-row :gutter="24">
|
||||||
|
<el-col :span="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="texthq" class="add-form-item form-item-disabled">-->
|
||||||
|
<!-- <el-input-->
|
||||||
|
<!-- v-model="form.texthq"-->
|
||||||
|
<!-- placeholder="请输入审核意见"-->
|
||||||
|
<!-- clearable-->
|
||||||
|
<!-- ></el-input>-->
|
||||||
|
<!-- </el-form-item>-->
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
|
</el-form>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">调研信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div>
|
||||||
|
<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"
|
||||||
|
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.id)" class="fileClass">
|
||||||
|
{{scope.row.fileName}}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</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>
|
||||||
|
<ProcessFooter
|
||||||
|
show-submit
|
||||||
|
show-back
|
||||||
|
approval
|
||||||
|
@back="handleSubmitNo"
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
submitBTNText="同意"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
|
||||||
|
<el-upload
|
||||||
|
multiple
|
||||||
|
drag
|
||||||
|
:action="fileUrl"
|
||||||
|
ref="importfile"
|
||||||
|
name="file"
|
||||||
|
accept=".ZIP, .zip, .docx, .DOCX, .xls, .xlsx"
|
||||||
|
:before-upload="beginImportFile"
|
||||||
|
:on-success="importFileSuccess"
|
||||||
|
:show-file-list="false"
|
||||||
|
>
|
||||||
|
<div style="padding: 20px 0">
|
||||||
|
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||||
|
<p>点击或拖拽上传文件</p>
|
||||||
|
</div>
|
||||||
|
</el-upload>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {inboundLiaisonDetail} from 'api/process'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "bzdyStep6",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
commentText: '',
|
||||||
|
tableData: [],
|
||||||
|
taskIds: this.$route.query.taskIds,
|
||||||
|
pId: this.$route.query.prcId,
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
form: {
|
||||||
|
title: '', // 调研标题
|
||||||
|
date: '', // 完成时间
|
||||||
|
hzfileId: '',
|
||||||
|
hzfileName: '',
|
||||||
|
texthq: ''
|
||||||
|
},
|
||||||
|
formRules: {
|
||||||
|
texthq: [
|
||||||
|
{ required: true, message: '请输入审核意见', trigger: 'blur' },
|
||||||
|
]
|
||||||
|
},
|
||||||
|
json: {},
|
||||||
|
fileUrl: 'api/att/attFile/upload',
|
||||||
|
fileMadel: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
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 === '.ZIP' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.zip' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.spinShow = false
|
||||||
|
this.$message.error('文件' + file.name + '格式不正确,请上传ZIP/DOCX或XLS文件')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
// 判断文件上传大小
|
||||||
|
// eslint-disable-next-line no-unreachable
|
||||||
|
if (file.size / 1024 / 1024 <= 200) {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
// 导入标准数据成功后执行
|
||||||
|
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() {
|
||||||
|
var json = this.json
|
||||||
|
json.actionFlag = 0
|
||||||
|
json.commentText = this.commentText
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskId: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('提交成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleSubmitNo() {
|
||||||
|
if (this.commentText) {
|
||||||
|
var json = this.json
|
||||||
|
json.actionFlag = 1
|
||||||
|
json.commentText = this.commentText
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskId: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('驳回成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message.warning('请输入反馈意见')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
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
|
||||||
|
this.form.date = data.date
|
||||||
|
this.json = data
|
||||||
|
this.tableData = data.responUserListMap
|
||||||
|
this.form.hzfileName = data.hzfileName
|
||||||
|
this.form.hzfileId = data.hzfileId
|
||||||
|
}).catch(e => {
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.bzdyStep6 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.fileClass {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.fileClass:hover{
|
||||||
|
color: #0c91e5;
|
||||||
|
}
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,347 @@
|
|||||||
|
<template>
|
||||||
|
<div class="bzdyStep7">
|
||||||
|
<!-- 标准调研流程-->
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">标准调研流程</template>
|
||||||
|
<template slot="proNode">标准法规部部长审核</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-show="active === '1'">
|
||||||
|
<div style="flex: auto; overflow: auto;">
|
||||||
|
<el-form
|
||||||
|
ref="qbkwForm"
|
||||||
|
:model="form"
|
||||||
|
:rules="formRules"
|
||||||
|
class="label-input-form"
|
||||||
|
label-width="210px"
|
||||||
|
>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div class="prc-content-border">
|
||||||
|
<el-row :gutter="24">
|
||||||
|
<el-col :span="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-form>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">调研信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div>
|
||||||
|
<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"
|
||||||
|
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.id)" class="fileClass">
|
||||||
|
{{scope.row.fileName}}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</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>
|
||||||
|
<ProcessFooter
|
||||||
|
show-submit
|
||||||
|
show-back
|
||||||
|
approval
|
||||||
|
@back="handleSubmitNo"
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
submitBTNText="同意"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
|
||||||
|
<el-upload
|
||||||
|
multiple
|
||||||
|
drag
|
||||||
|
:action="fileUrl"
|
||||||
|
ref="importfile"
|
||||||
|
name="file"
|
||||||
|
accept=".ZIP, .zip, .docx, .DOCX, .xls, .xlsx"
|
||||||
|
:before-upload="beginImportFile"
|
||||||
|
:on-success="importFileSuccess"
|
||||||
|
:show-file-list="false"
|
||||||
|
>
|
||||||
|
<div style="padding: 20px 0">
|
||||||
|
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||||
|
<p>点击或拖拽上传文件</p>
|
||||||
|
</div>
|
||||||
|
</el-upload>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {inboundLiaisonDetail} from 'api/process'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "bzdyStep7",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
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: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
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 === '.ZIP' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.zip' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.spinShow = false
|
||||||
|
this.$message.error('文件' + file.name + '格式不正确,请上传ZIP/DOCX或XLS文件')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
// 判断文件上传大小
|
||||||
|
// eslint-disable-next-line no-unreachable
|
||||||
|
if (file.size / 1024 / 1024 <= 200) {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
// 导入标准数据成功后执行
|
||||||
|
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() {
|
||||||
|
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')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleSubmitNo() {
|
||||||
|
if (this.commentText) {
|
||||||
|
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')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} 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
|
||||||
|
this.form.date = data.date
|
||||||
|
this.json = data
|
||||||
|
this.tableData = data.responUserListMap
|
||||||
|
this.form.hzfileName = data.hzfileName
|
||||||
|
this.form.hzfileId = data.hzfileId
|
||||||
|
}).catch(e => {
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.bzdyStep7 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.fileClass {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.fileClass:hover{
|
||||||
|
color: #0c91e5;
|
||||||
|
}
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,347 @@
|
|||||||
|
<template>
|
||||||
|
<div class="bzdyStep7">
|
||||||
|
<!-- 标准调研流程-->
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">标准调研流程</template>
|
||||||
|
<template slot="proNode">技术委员会相关专委会主任/研究总院职能部门领导,技术管理中心主任审定</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-show="active === '1'">
|
||||||
|
<div style="flex: auto; overflow: auto;">
|
||||||
|
<el-form
|
||||||
|
ref="qbkwForm"
|
||||||
|
:model="form"
|
||||||
|
:rules="formRules"
|
||||||
|
class="label-input-form"
|
||||||
|
label-width="210px"
|
||||||
|
>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div class="prc-content-border">
|
||||||
|
<el-row :gutter="24">
|
||||||
|
<el-col :span="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="textsd" class="add-form-item form-item-disabled">-->
|
||||||
|
<!-- <el-input-->
|
||||||
|
<!-- v-model="form.textsd"-->
|
||||||
|
<!-- placeholder="请输入审定意见"-->
|
||||||
|
<!-- clearable-->
|
||||||
|
<!-- ></el-input>-->
|
||||||
|
<!-- </el-form-item>-->
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
|
</el-form>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">调研信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div>
|
||||||
|
<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"
|
||||||
|
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.id)" class="fileClass">
|
||||||
|
{{scope.row.fileName}}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</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>
|
||||||
|
<ProcessFooter
|
||||||
|
show-submit
|
||||||
|
show-back
|
||||||
|
approval
|
||||||
|
@back="handleSubmitNo"
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
submitBTNText="同意"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
|
||||||
|
<el-upload
|
||||||
|
multiple
|
||||||
|
drag
|
||||||
|
:action="fileUrl"
|
||||||
|
ref="importfile"
|
||||||
|
name="file"
|
||||||
|
accept=".ZIP, .zip, .docx, .DOCX, .xls, .xlsx"
|
||||||
|
:before-upload="beginImportFile"
|
||||||
|
:on-success="importFileSuccess"
|
||||||
|
:show-file-list="false"
|
||||||
|
>
|
||||||
|
<div style="padding: 20px 0">
|
||||||
|
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||||
|
<p>点击或拖拽上传文件</p>
|
||||||
|
</div>
|
||||||
|
</el-upload>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {inboundLiaisonDetail} from 'api/process'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "bzdyStep7",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
commentText: '',
|
||||||
|
tableData: [],
|
||||||
|
taskIds: this.$route.query.taskIds,
|
||||||
|
pId: this.$route.query.prcId,
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
form: {
|
||||||
|
title: '', // 调研标题
|
||||||
|
date: '', // 完成时间
|
||||||
|
hzfileId: '',
|
||||||
|
hzfileName: '',
|
||||||
|
textsd: ''
|
||||||
|
},
|
||||||
|
formRules: {
|
||||||
|
textsd: [
|
||||||
|
{ required: true, message: '请输入审定意见', trigger: 'blur' },
|
||||||
|
]
|
||||||
|
},
|
||||||
|
json: {},
|
||||||
|
fileUrl: 'api/att/attFile/upload',
|
||||||
|
fileMadel: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
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 === '.ZIP' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.zip' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.spinShow = false
|
||||||
|
this.$message.error('文件' + file.name + '格式不正确,请上传ZIP/DOCX或XLS文件')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
// 判断文件上传大小
|
||||||
|
// eslint-disable-next-line no-unreachable
|
||||||
|
if (file.size / 1024 / 1024 <= 200) {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
// 导入标准数据成功后执行
|
||||||
|
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() {
|
||||||
|
var json = this.json
|
||||||
|
json.actionFlag = 0
|
||||||
|
json.commentText = this.commentText
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskId: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('提交成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleSubmitNo() {
|
||||||
|
if (this.commentText) {
|
||||||
|
var json = this.json
|
||||||
|
json.commentText = this.commentText
|
||||||
|
json.actionFlag = 1
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskId: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('驳回成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message.warning('请输入反馈意见')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
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
|
||||||
|
this.form.date = data.date
|
||||||
|
this.json = data
|
||||||
|
this.tableData = data.responUserListMap
|
||||||
|
this.form.hzfileName = data.hzfileName
|
||||||
|
this.form.hzfileId = data.hzfileId
|
||||||
|
}).catch(e => {
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.bzdyStep7 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.fileClass {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.fileClass:hover{
|
||||||
|
color: #0c91e5;
|
||||||
|
}
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,347 @@
|
|||||||
|
<template>
|
||||||
|
<div class="bzdyStep7">
|
||||||
|
<!-- 标准调研流程-->
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">标准调研流程</template>
|
||||||
|
<template slot="proNode">责任对接人审批</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-show="active === '1'">
|
||||||
|
<div style="flex: auto; overflow: auto;">
|
||||||
|
<el-form
|
||||||
|
ref="qbkwForm"
|
||||||
|
:model="form"
|
||||||
|
:rules="formRules"
|
||||||
|
class="label-input-form"
|
||||||
|
label-width="210px"
|
||||||
|
>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div class="prc-content-border">
|
||||||
|
<el-row :gutter="24">
|
||||||
|
<el-col :span="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="textpz" class="add-form-item form-item-disabled">-->
|
||||||
|
<!-- <el-input-->
|
||||||
|
<!-- v-model="form.textpz"-->
|
||||||
|
<!-- placeholder="请输入批准意见"-->
|
||||||
|
<!-- clearable-->
|
||||||
|
<!-- ></el-input>-->
|
||||||
|
<!-- </el-form-item>-->
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
|
</el-form>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">调研信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div>
|
||||||
|
<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"
|
||||||
|
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.id)" class="fileClass">
|
||||||
|
{{scope.row.fileName}}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</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>
|
||||||
|
<ProcessFooter
|
||||||
|
show-submit
|
||||||
|
show-back
|
||||||
|
approval
|
||||||
|
@back="handleSubmitNo"
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
submitBTNText="同意"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
|
||||||
|
<el-upload
|
||||||
|
multiple
|
||||||
|
drag
|
||||||
|
:action="fileUrl"
|
||||||
|
ref="importfile"
|
||||||
|
name="file"
|
||||||
|
accept=".ZIP, .zip, .docx, .DOCX, .xls, .xlsx"
|
||||||
|
:before-upload="beginImportFile"
|
||||||
|
:on-success="importFileSuccess"
|
||||||
|
:show-file-list="false"
|
||||||
|
>
|
||||||
|
<div style="padding: 20px 0">
|
||||||
|
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||||
|
<p>点击或拖拽上传文件</p>
|
||||||
|
</div>
|
||||||
|
</el-upload>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {inboundLiaisonDetail} from 'api/process'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "bzdyStep7",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
commentText: '',
|
||||||
|
tableData: [],
|
||||||
|
taskIds: this.$route.query.taskIds,
|
||||||
|
pId: this.$route.query.prcId,
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
form: {
|
||||||
|
title: '', // 调研标题
|
||||||
|
date: '', // 完成时间
|
||||||
|
hzfileId: '',
|
||||||
|
hzfileName: '',
|
||||||
|
textpz: ''
|
||||||
|
},
|
||||||
|
formRules: {
|
||||||
|
textpz: [
|
||||||
|
{ required: true, message: '请输入审核意见', trigger: 'blur' },
|
||||||
|
]
|
||||||
|
},
|
||||||
|
json: {},
|
||||||
|
fileUrl: 'api/att/attFile/upload',
|
||||||
|
fileMadel: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
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 === '.ZIP' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.zip' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.spinShow = false
|
||||||
|
this.$message.error('文件' + file.name + '格式不正确,请上传ZIP/DOCX或XLS文件')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
// 判断文件上传大小
|
||||||
|
// eslint-disable-next-line no-unreachable
|
||||||
|
if (file.size / 1024 / 1024 <= 200) {
|
||||||
|
return true
|
||||||
|
} else {
|
||||||
|
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
// 导入标准数据成功后执行
|
||||||
|
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() {
|
||||||
|
var json = this.json
|
||||||
|
json.actionFlag = 0
|
||||||
|
json.commentText = this.commentText
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskId: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('提交成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleSubmitNo() {
|
||||||
|
if (this.commentText) {
|
||||||
|
var json = this.json
|
||||||
|
json.commentText = this.commentText
|
||||||
|
json.actionFlag = 1
|
||||||
|
this.$http.post('lawss/activiti/completeTask', {
|
||||||
|
json: JSON.stringify(json),
|
||||||
|
taskId: this.taskIds,
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}, {}, res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success('驳回成功')
|
||||||
|
this.$router.push('/processCenter')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message.warning('请输入反馈意见')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
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
|
||||||
|
this.form.date = data.date
|
||||||
|
this.json = data
|
||||||
|
this.tableData = data.responUserListMap
|
||||||
|
this.form.hzfileName = data.hzfileName
|
||||||
|
this.form.hzfileId = data.hzfileId
|
||||||
|
}).catch(e => {
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.bzdyStep7 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.fileClass {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.fileClass:hover{
|
||||||
|
color: #0c91e5;
|
||||||
|
}
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -553,21 +553,19 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
|
<el-collapse accordion>
|
||||||
<el-collapse accordion>
|
<el-collapse-item title="意见填写">
|
||||||
<el-collapse-item title="意见填写">
|
<div style="margin: 10px 0;">
|
||||||
<div style="margin: 10px 0;">
|
<el-input
|
||||||
<el-input
|
type="textarea"
|
||||||
type="textarea"
|
:rows="3"
|
||||||
:rows="3"
|
resize="none"
|
||||||
resize="none"
|
placeholder="请输入意见"
|
||||||
placeholder="请输入意见"
|
v-model="commentText">
|
||||||
v-model="commentText">
|
</el-input>
|
||||||
</el-input>
|
</div>
|
||||||
</div>
|
</el-collapse-item>
|
||||||
</el-collapse-item>
|
</el-collapse>
|
||||||
</el-collapse>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="content" v-if="active === '2'">
|
<div class="content" v-if="active === '2'">
|
||||||
<div class="block" style="padding-top: 20px;">
|
<div class="block" style="padding-top: 20px;">
|
||||||
|
|||||||
@@ -0,0 +1,451 @@
|
|||||||
|
<template>
|
||||||
|
<div class="bzzqyjStep1">
|
||||||
|
<!-- 标准征求意见流程-->
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">标准征求意见流程</template>
|
||||||
|
<template slot="proNode">申请人发起流程</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '1'">
|
||||||
|
<div style="flex: auto; overflow: auto;">
|
||||||
|
<el-form
|
||||||
|
ref="bzzqyjForm"
|
||||||
|
:model="form"
|
||||||
|
class="label-input-form"
|
||||||
|
label-width="210px"
|
||||||
|
>
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div class="prc-content-border">
|
||||||
|
<el-row :gutter="24">
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="选择征求意见" class="add-form-item form-item-disabled">
|
||||||
|
<div class="addButton">
|
||||||
|
<el-button size="small" type="primary" @click="addZqyjList">选择征求意见</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="标准编号" prop="cid" class="add-form-item form-item-disabled">
|
||||||
|
<el-select v-model="form.cid" placeholder="请选择标准编号">
|
||||||
|
<el-option label="GB 472726" value="1"></el-option>
|
||||||
|
<el-option label="GB/T 8453291" value="2"></el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="标准名称" prop="cname" class="add-form-item form-item-disabled">
|
||||||
|
<el-select v-model="form.cname" placeholder="请选择标准名称">
|
||||||
|
<el-option label="标准1" value="1"></el-option>
|
||||||
|
<el-option label="标准2" value="2"></el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="征求意见结束日期" prop="endTime" class="add-form-item form-item-disabled">
|
||||||
|
<el-date-picker
|
||||||
|
v-model="form.endTime"
|
||||||
|
type="date"
|
||||||
|
placeholder="请选择结束日期">
|
||||||
|
</el-date-picker>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '2'">
|
||||||
|
<div class="block" style="padding-top: 20px;">
|
||||||
|
<el-timeline>
|
||||||
|
<el-form
|
||||||
|
ref="Form"
|
||||||
|
:model="roleForm"
|
||||||
|
class="label-input-form">
|
||||||
|
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||||
|
<h4>流程发起人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.startUser" style="display: none;"/>
|
||||||
|
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"/>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="选择责任人" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||||
|
<h4>责任对接人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.dockUser" style="display: none;"/>
|
||||||
|
<el-input
|
||||||
|
v-model="roleForm.dockUserName"
|
||||||
|
placeholder="选择责任人"
|
||||||
|
@click.native="choiceZRR('dockUser', '选择责任人', roleForm.dockUser)">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="填写意见" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="mainUserName" style="margin-bottom: 0">
|
||||||
|
<h4>责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.mainUser" style="display: none;"/>
|
||||||
|
<el-input
|
||||||
|
v-model="roleForm.mainUserName"
|
||||||
|
placeholder="选择责任人·"
|
||||||
|
@click.native="choiceZRR('mainUser', '选择责任人', roleForm.mainUser)"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="意见汇总并发起会签" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="engineerUserName" style="margin-bottom: 0">
|
||||||
|
<h4>标准法规工程师</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.engineerUser" style="display: none;"/>
|
||||||
|
<el-input
|
||||||
|
v-model="roleForm.engineerUserName"
|
||||||
|
placeholder="选择标准法规工程师"
|
||||||
|
@click.native="choiceZRR('engineerUser', '选择标准法规工程师', roleForm.engineerUser)"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="审核" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="checkUserName" style="margin-bottom: 0">
|
||||||
|
<h4>责任对接人,标准法规部门负责人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.checkUser" style="display: none;"/>
|
||||||
|
<el-input
|
||||||
|
v-model="roleForm.checkUserName"
|
||||||
|
placeholder="选择责任对接人,标准法规部门负责人"
|
||||||
|
@click.native="choiceZRR('checkUser', '选择责任对接人,标准法规部门负责人', roleForm.checkUserName)"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
</el-form>
|
||||||
|
</el-timeline>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ProcessFooter
|
||||||
|
show-save
|
||||||
|
show-submit
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@save="handleSave"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-drawer
|
||||||
|
title="标准征求意见数据库"
|
||||||
|
:visible.sync="listModel"
|
||||||
|
size="900px"
|
||||||
|
custom-class="demo-drawer"
|
||||||
|
>
|
||||||
|
<div class="standardForComments">
|
||||||
|
<!-- 顶部工具栏 -->
|
||||||
|
<table-tools-bar>
|
||||||
|
<div slot="left">
|
||||||
|
<div class="search-area">
|
||||||
|
<el-form :model="standCommonlySearch" inline class="label-input-form">
|
||||||
|
<el-formItem label="类别" class="search-item">
|
||||||
|
<el-input v-model="standCommonlySearch.categorg" class="s-c-input" placeholder="标准/政策" clearable :maxlength="100"></el-input>
|
||||||
|
</el-formItem>
|
||||||
|
<el-formItem label="关键字" class="search-item">
|
||||||
|
<el-input v-model="standCommonlySearch.cname" class="s-c-input" placeholder="请输入关键字" clearable :maxlength="100"></el-input>
|
||||||
|
</el-formItem>
|
||||||
|
<el-formItem label="开始日期" class="search-item">
|
||||||
|
<el-datePicker v-model="standCommonlySearch.start" :editable="false"
|
||||||
|
placeholder="请选择开始日期"></el-datePicker>
|
||||||
|
</el-formItem>
|
||||||
|
<el-formItem label="结束日期" class="search-item">
|
||||||
|
<el-datePicker v-model="standCommonlySearch.end" :editable="false"
|
||||||
|
placeholder="请选择结束日期"></el-datePicker>
|
||||||
|
</el-formItem>
|
||||||
|
<el-formItem class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
class="common-button-primary"
|
||||||
|
|
||||||
|
@click="sarStandCompareHisInfo">查询</el-button>
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
size="mini"
|
||||||
|
@click="clearSearchStand">清空</el-button>
|
||||||
|
</el-formItem>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</table-tools-bar>
|
||||||
|
<div class="content">
|
||||||
|
<div class="table-wrap">
|
||||||
|
<div style="position: absolute;height: calc(100% - 10px);width: 100%;">
|
||||||
|
<el-table
|
||||||
|
ref="selection"
|
||||||
|
:data="standInfoList"
|
||||||
|
tooltip-effect="dark"
|
||||||
|
style="width: 100%;padding:0 0 20px 0;"
|
||||||
|
height="100%"
|
||||||
|
border
|
||||||
|
@selection-change="handleSelection"
|
||||||
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||||
|
<el-table-column type="selection" width="55" align="center"/>
|
||||||
|
<el-table-column prop="category" label="标准" align="center"/>
|
||||||
|
<el-table-column prop="cname" label="标准名称/政策名称" align="center"/>
|
||||||
|
<el-table-column prop="endTime" label="征求意见周期" align="center"/>
|
||||||
|
<el-table-column prop="startTime" label="上传时间" align="center"/>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<pagination :page="standCommonlySearch.page" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
||||||
|
<loading :loading="spinShow">数据加载中……</loading>
|
||||||
|
<div class="demo-drawer-footer">
|
||||||
|
<el-button size="mini" @click="closeDrawer">取消</el-button>
|
||||||
|
<el-button type="primary" size="mini" @click="enterDrawer">带入</el-button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "bzzqyjStep1",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
textarea: '', // 意见
|
||||||
|
title: '', // 新增抽屉标题
|
||||||
|
listModel: false, // 新增抽屉开关
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
// 基础信息form表单
|
||||||
|
form: {
|
||||||
|
cid: '', // 编号
|
||||||
|
endTime: '', // 结束日期
|
||||||
|
cname: '', // 名称
|
||||||
|
},
|
||||||
|
// 标准征求意见数据可库
|
||||||
|
standCommonlySearch: {
|
||||||
|
categorg: '',
|
||||||
|
cname: '',
|
||||||
|
start: '',
|
||||||
|
end: '',
|
||||||
|
page: 1,
|
||||||
|
size: this.$store.getters.userInfo.configContent
|
||||||
|
},
|
||||||
|
spinShow: false,
|
||||||
|
standInfoList: [],
|
||||||
|
tableHeight: null,
|
||||||
|
total: 0,
|
||||||
|
selectedList: [],
|
||||||
|
data: [],
|
||||||
|
roleForm: {
|
||||||
|
startUserName: this.$store.getters.userInfo.userName,
|
||||||
|
startUser: this.$store.getters.userInfo.userId,
|
||||||
|
dockUser: '',
|
||||||
|
dockUserName: '',
|
||||||
|
mainUser: '',
|
||||||
|
mainUserName: '',
|
||||||
|
engineerUser: '',
|
||||||
|
engineerUserName: '',
|
||||||
|
checkUser: '',
|
||||||
|
checkUserName: '',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.sarStandCompareHis()
|
||||||
|
this.tableHeight = $('.content').height() - 44
|
||||||
|
window.onresize = () => {
|
||||||
|
this.tableHeight = $('.content').height() - 44
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
addZqyjList() {
|
||||||
|
this.title = '标准征求意见库'
|
||||||
|
this.listModel = true
|
||||||
|
},
|
||||||
|
|
||||||
|
/** 标准征求意见库方法*
|
||||||
|
* **********************************************/
|
||||||
|
// 清空
|
||||||
|
clearSearchStand () {
|
||||||
|
this.standCommonlySearch.page = 1
|
||||||
|
this.standCommonlySearch.start = ''
|
||||||
|
this.standCommonlySearch.end = ''
|
||||||
|
this.standCommonlySearch.categorg = ''
|
||||||
|
this.standCommonlySearch.cname = ''
|
||||||
|
this.sarStandCompareHis()
|
||||||
|
},
|
||||||
|
// 搜索
|
||||||
|
sarStandCompareHisInfo() {
|
||||||
|
this.splitInfoPage = 1
|
||||||
|
this.sarStandCompareHis()
|
||||||
|
},
|
||||||
|
// 查询表格
|
||||||
|
sarStandCompareHis () {
|
||||||
|
this.spinShow = true
|
||||||
|
var form = this.standCommonlySearch
|
||||||
|
this.$http.get('slrs/sar-public-idea/SelectAllPage', form, {
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.standInfoList = res.data.records
|
||||||
|
this.total = res.data.total
|
||||||
|
this.spinShow = false
|
||||||
|
}, e => {
|
||||||
|
})
|
||||||
|
},
|
||||||
|
pageChange (page) {
|
||||||
|
this.standCommonlySearch.page = page
|
||||||
|
this.sarStandCompareHis()
|
||||||
|
},
|
||||||
|
// 分页每页显示数改变后方法
|
||||||
|
pageSizeChange (pageSize) {
|
||||||
|
this.$store.getters.userInfo.configContent = pageSize
|
||||||
|
this.standCommonlySearch.size = pageSize
|
||||||
|
this.sarStandCompareHis()
|
||||||
|
},
|
||||||
|
/** 选择带入数据的方法操作
|
||||||
|
* */
|
||||||
|
handleSelection(data) {
|
||||||
|
this.selectedList = [];
|
||||||
|
for (let i = 0; i < data.length; i++) {
|
||||||
|
this.selectedList.push(data[i].id);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
closeDrawer() {
|
||||||
|
this.listModel = false
|
||||||
|
},
|
||||||
|
enterDrawer() {
|
||||||
|
if (this.selectedList.length === 1) {
|
||||||
|
let deposit = new Map();
|
||||||
|
this.standInfoList.forEach(item => {
|
||||||
|
deposit.set(item.id, item);
|
||||||
|
});
|
||||||
|
let bringData = [];
|
||||||
|
for (let i = 0; i < this.selectedList.length; i++) {
|
||||||
|
bringData.push(deposit.get(this.selectedList[i]));
|
||||||
|
}
|
||||||
|
console.log(bringData)
|
||||||
|
this.form.cid = bringData[0].cid
|
||||||
|
this.form.cname = bringData[0].cname;
|
||||||
|
this.form.endTime = bringData[0].endTime;
|
||||||
|
this.listModel = false;
|
||||||
|
} else if (this.selectedList.length > 1) {
|
||||||
|
this.$message.warning("只能选择一条数据进行带入");
|
||||||
|
} else {
|
||||||
|
this.$message.warning("请选择一条数据进行带入");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
/*** **********************************************/
|
||||||
|
|
||||||
|
/** 流程节点负责人的选择 *****************************/
|
||||||
|
choiceZRR() {
|
||||||
|
// this.choice
|
||||||
|
},
|
||||||
|
|
||||||
|
handleTabs(name) {
|
||||||
|
this.active = name
|
||||||
|
},
|
||||||
|
// 流程也的提交按钮和保存按钮操作
|
||||||
|
handleSave() {},
|
||||||
|
handleSubmit() {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
@import '~@/assets/styles/mixins';
|
||||||
|
.bzzqyjStep1 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
.standardForComments {
|
||||||
|
height: 100%;
|
||||||
|
background: #fff;
|
||||||
|
.el-divider--horizontal {
|
||||||
|
display: block;
|
||||||
|
height: 1px;
|
||||||
|
width: 100%;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
flex-direction: column;
|
||||||
|
.action-bar {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
flex: auto;
|
||||||
|
overflow: hidden;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
.table-wrap {
|
||||||
|
flex: auto;
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
& > .pagination {
|
||||||
|
position: static;
|
||||||
|
/deep/.pagination-slot {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<template>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "step2"
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<template>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "step3"
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<template>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "step4"
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<template>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "step5"
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,525 @@
|
|||||||
|
<template>
|
||||||
|
<div class="wfhxzgStep1">
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">未符合项整改流程</template>
|
||||||
|
<template slot="proNode">申请人发起流程</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '1'">
|
||||||
|
<div style="flex: auto; overflow: auto;">
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<div class="tableTitle">
|
||||||
|
<div class="tableButton">
|
||||||
|
<el-button plain class="common-button-primary" size="mini" @click="addList">添加</el-button>
|
||||||
|
<el-button plain class="common-button-primary" size="mini" @click="deleteList">批量删除</el-button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<el-table
|
||||||
|
:data="dataList"
|
||||||
|
border
|
||||||
|
height="49%"
|
||||||
|
style="width: 100%"
|
||||||
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
|
fontWeight: 'bold', height: '48px'}">
|
||||||
|
<el-table-column type="selection" width="55" align="center"/>
|
||||||
|
<el-table-column prop="standId" label="标准号/标准名称"/>
|
||||||
|
<el-table-column prop="productName" label="项目名称"/>
|
||||||
|
<el-table-column prop="itemsNum" label="条款号"/>
|
||||||
|
<el-table-column prop="itemsName" label="条款名称"/>
|
||||||
|
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||||
|
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||||
|
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
<el-collapse accordion>
|
||||||
|
<el-collapse-item title="意见填写">
|
||||||
|
<div style="margin: 10px 0;">
|
||||||
|
<el-input
|
||||||
|
type="textarea"
|
||||||
|
:rows="3"
|
||||||
|
resize="none"
|
||||||
|
placeholder="请输入意见"
|
||||||
|
v-model="textarea">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-collapse-item>
|
||||||
|
</el-collapse>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '2'">
|
||||||
|
<div class="block" style="padding-top: 20px;">
|
||||||
|
<el-timeline>
|
||||||
|
<el-form
|
||||||
|
ref="Form"
|
||||||
|
:model="roleForm"
|
||||||
|
:rules="roleFormRules"
|
||||||
|
class="label-input-form">
|
||||||
|
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||||
|
<h4>流程发起人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||||
|
<h4>标准法规工程师</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||||
|
<h4>负责人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.presidentUserName" placeholder="选择分发负责人" @click.native="choiceZRR('presidentUser', '选择分发负责人', roleForm.presidentUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
</el-form>
|
||||||
|
</el-timeline>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 添加标准抽屉-->
|
||||||
|
<el-drawer
|
||||||
|
title="未符合项整改数据库"
|
||||||
|
:visible.sync="standModel"
|
||||||
|
size="900px"
|
||||||
|
custom-class="demo-drawer"
|
||||||
|
>
|
||||||
|
<div class="search-area">
|
||||||
|
<div class="content-top">
|
||||||
|
<el-form :modal="nonConformitySearch" inline class="label-input-form">
|
||||||
|
<el-form-item label="标准号/标准名称" class="search-item">
|
||||||
|
<el-input v-model="nonConformitySearch.standId"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="项目名称" class="search-item">
|
||||||
|
<el-input v-model="nonConformitySearch.productName"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="责任部门" class="search-item">
|
||||||
|
<el-input v-model="nonConformitySearch.responsibleUnit" v-show="false" />
|
||||||
|
<el-popover
|
||||||
|
placement="bottom"
|
||||||
|
popper-class="user-dept-popper"
|
||||||
|
trigger="click"
|
||||||
|
:value="false"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
slot="reference"
|
||||||
|
v-model="nonConformitySearch.responseUnitShow"
|
||||||
|
placeholder="根据责任部门查找"
|
||||||
|
readonly
|
||||||
|
clearable
|
||||||
|
id="searchResp"
|
||||||
|
/>
|
||||||
|
<div class="api">
|
||||||
|
<laws-tree
|
||||||
|
:zNodes="zNodesSItem"
|
||||||
|
treeDivId="zNodesSItemSearch"
|
||||||
|
deptSelect
|
||||||
|
showRMenu
|
||||||
|
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||||
|
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||||
|
</laws-tree>
|
||||||
|
</div>
|
||||||
|
</el-popover>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
class="common-button-primary"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||||
|
@click="getTableByPage('')">
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||||
|
@click="clearAllSearch">
|
||||||
|
清空
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<el-table
|
||||||
|
:data="unqualidiedData"
|
||||||
|
tooltip-effect="dark"
|
||||||
|
style="width: 100%"
|
||||||
|
border
|
||||||
|
height="100%"
|
||||||
|
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
|
||||||
|
fontWeight: 'bold', height: '48px'}"
|
||||||
|
@selection-change="selectThree"
|
||||||
|
>
|
||||||
|
<el-table-column type="selection" width="55" align="center"/>
|
||||||
|
<el-table-column prop="standId" label="标准号/标准名称"/>
|
||||||
|
<el-table-column prop="productName" label="项目名称"/>
|
||||||
|
<el-table-column prop="itemsNum" label="条款号"/>
|
||||||
|
<el-table-column prop="itemsName" label="条款名称"/>
|
||||||
|
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||||
|
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||||
|
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
||||||
|
</el-table>
|
||||||
|
<div class="demo-drawer-footer">
|
||||||
|
<el-button size="mini" @click="closeDrawer">取消</el-button>
|
||||||
|
<el-button type="primary" size="mini" @click="OkDrawer">带入</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
<ProcessFooter
|
||||||
|
show-save
|
||||||
|
show-submit
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@save="handleSave"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-drawer
|
||||||
|
:title="drawerTitle"
|
||||||
|
:visible.sync="modalshowflag"
|
||||||
|
:wrapperClosable="false"
|
||||||
|
size="800px">
|
||||||
|
<el-tree
|
||||||
|
v-if="modalshowflag"
|
||||||
|
style="height: 100%;"
|
||||||
|
node-key="id"
|
||||||
|
class="filter-tree"
|
||||||
|
:data="treeData"
|
||||||
|
:props="defaultProps"
|
||||||
|
:default-checked-keys="nodeList"
|
||||||
|
highlight-current
|
||||||
|
check-strictly
|
||||||
|
@check="drawerCheck"
|
||||||
|
default-expand-all
|
||||||
|
:expand-on-click-node="false"
|
||||||
|
show-checkbox
|
||||||
|
ref="tree">
|
||||||
|
</el-tree>
|
||||||
|
<div id="roleFormButton" class="demo-drawer-footer">
|
||||||
|
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
|
||||||
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {interfaceUrl} from "@/sysConfig";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "step1",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
textarea: '', // 意见
|
||||||
|
title: '', // 新增编辑抽屉标题
|
||||||
|
ListModel: false, // 新增编辑抽屉开关
|
||||||
|
nonConformitySearch: {
|
||||||
|
standId: '', // 标准号/名称
|
||||||
|
productName: '', // 项目名称
|
||||||
|
responsibleUnit: '' // 责任部门
|
||||||
|
},
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
dataList: [{
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
itemsNum: '',
|
||||||
|
itemsName: '',
|
||||||
|
planCloseTime: '',
|
||||||
|
responsibleUnit: '',
|
||||||
|
dutyEngineer: ''
|
||||||
|
}],
|
||||||
|
// 责任部门
|
||||||
|
zNodesSItem: [],
|
||||||
|
standModel: false,
|
||||||
|
unqualidiedData: [{
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
itemsNum: '',
|
||||||
|
itemsName: '',
|
||||||
|
planCloseTime: '',
|
||||||
|
responsibleUnit: '',
|
||||||
|
dutyEngineer: ''
|
||||||
|
}],
|
||||||
|
selectedList: [], //未整改项的选择框
|
||||||
|
roleForm: {
|
||||||
|
startUserName: this.$store.getters.userInfo.userName,
|
||||||
|
startUser: this.$store.getters.userInfo.userId,
|
||||||
|
},
|
||||||
|
roleFormRules: {
|
||||||
|
},
|
||||||
|
nodeList: [],
|
||||||
|
drawerTitle: '', //drawer标题
|
||||||
|
modalshowflag: false, // drawer开关
|
||||||
|
treeData: [], // 人员数据
|
||||||
|
defaultProps: {
|
||||||
|
children: 'children',
|
||||||
|
label: 'name'
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
//点击新增事件
|
||||||
|
addList() {
|
||||||
|
this.$http.get("sarStandUnqualified/sar-stand-unqualified", "", {
|
||||||
|
...this.nonConformitySearch,
|
||||||
|
current: this.pageNo,
|
||||||
|
size: this.$store.getters.userInfo.configContent
|
||||||
|
}, {
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.unqualidiedData = res.data.records
|
||||||
|
this.total = res.data.total
|
||||||
|
}, e => {
|
||||||
|
});
|
||||||
|
this.standModel = true;
|
||||||
|
},
|
||||||
|
|
||||||
|
// 点击批量删除事件
|
||||||
|
deleteList() {
|
||||||
|
if (this.selectList.length < 1) {
|
||||||
|
this.$message.warning("请选择一条数据进行删除");
|
||||||
|
} else {
|
||||||
|
this.$confirm("您确认删除这些数据?", "提示", {
|
||||||
|
confirmButtonText: "确认",
|
||||||
|
confirmButtonClass: "common-button-primary",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning"
|
||||||
|
}).then(() => {
|
||||||
|
let exits = [];
|
||||||
|
this.selectList.map(item => {
|
||||||
|
let index;
|
||||||
|
index = this.dataList.findIndex(items => {
|
||||||
|
return items.id = item;
|
||||||
|
});
|
||||||
|
if (index > -1) {
|
||||||
|
this.dataList.splice(index, 1);
|
||||||
|
}
|
||||||
|
exits.push(item);
|
||||||
|
});
|
||||||
|
this.selectList = [];
|
||||||
|
}).catch(() => {
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//选择标准取消事件
|
||||||
|
closeDrawer() {
|
||||||
|
this.ListModel = false;
|
||||||
|
},
|
||||||
|
//未符合项整合确定事件
|
||||||
|
OkDrawer() {
|
||||||
|
if (this.selectedList.length !== 0) {
|
||||||
|
let deposit = new Map();
|
||||||
|
this.unqualidiedData.forEach(item => {
|
||||||
|
deposit.set(item.id, item);
|
||||||
|
});
|
||||||
|
let bringData = [];
|
||||||
|
for (let i = 0; i < this.selectedList.length; i++) {
|
||||||
|
bringData.push(deposit.get(this.selectedList[i]));
|
||||||
|
}
|
||||||
|
this.dataList.standId = bringData[0].standId
|
||||||
|
this.dataList.productName = bringData[0].productName;
|
||||||
|
this.dataList.itemsNum = bringData[0].itemsNum;
|
||||||
|
this.dataList.itemsName = bringData[0].itemsName;
|
||||||
|
this.dataList.planCloseTime = bringData[0].planCloseTime;
|
||||||
|
this.dataList.responsibleUnit = bringData[0].responsibleUnit;
|
||||||
|
this.dataList.dutyEngineer = bringData[0].dutyEngineer;
|
||||||
|
this.ListModel = false;
|
||||||
|
} else {
|
||||||
|
this.$message.warning("请选择至少一条数据进行带入");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
selectThree() {},
|
||||||
|
handleTabs(name) {
|
||||||
|
this.active = name
|
||||||
|
},
|
||||||
|
|
||||||
|
// 保存按钮
|
||||||
|
handleSave() {},
|
||||||
|
// 提交按钮
|
||||||
|
handleSubmit() {},
|
||||||
|
|
||||||
|
// 获取流程节点数据
|
||||||
|
getTree () {
|
||||||
|
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||||
|
this.treeData = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 流程阶段负责人选择
|
||||||
|
choiceZRR (type, title, id) {
|
||||||
|
this.nodeList = []
|
||||||
|
this.nodeList.push(id)
|
||||||
|
this.type = type
|
||||||
|
this.drawerTitle = title
|
||||||
|
this.modalshowflag = true
|
||||||
|
},
|
||||||
|
drawerCheck (data) {
|
||||||
|
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
||||||
|
if(getlist.length == 1) {
|
||||||
|
this.roleRow = getlist[0]
|
||||||
|
}else {
|
||||||
|
this.$refs.tree.setCheckedKeys([data.id]);
|
||||||
|
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉保存按钮
|
||||||
|
saveUserInfo () {
|
||||||
|
if (this.type === 'dockUser') {
|
||||||
|
this.roleForm.dockUser = this.roleRow.id
|
||||||
|
this.roleForm.dockUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'ministerUser') {
|
||||||
|
this.roleForm.ministerUser = this.roleRow.id
|
||||||
|
this.roleForm.ministerUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'directorUser') {
|
||||||
|
this.roleForm.directorUser = this.roleRow.id
|
||||||
|
this.roleForm.directorUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'presidentUser') {
|
||||||
|
this.roleForm.presidentUser = this.roleRow.id
|
||||||
|
this.roleForm.presidentUserName = this.roleRow.name
|
||||||
|
}
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉取消按钮
|
||||||
|
cancleUserInfo () {
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
//未整改项抽屉中的查询按钮
|
||||||
|
getTableByPage() {
|
||||||
|
this.addList()
|
||||||
|
},
|
||||||
|
// 清空 查询条件
|
||||||
|
clearAllSearch (search = true) {
|
||||||
|
this.nonConformitySearch = {
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
responsibleUnit: ''
|
||||||
|
}
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
// 分页事件
|
||||||
|
pageChange (page) {
|
||||||
|
this.pageNo = page
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
pageSizeChange () {
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.wfhxzgStep1 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content-center {
|
||||||
|
padding: 10px 0px 10px 10px;
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,531 @@
|
|||||||
|
<template>
|
||||||
|
<div class="wfhxzgStep2">
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">未符合项整改流程</template>
|
||||||
|
<template slot="proNode">分发负责人流程</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '1'">
|
||||||
|
<div style="flex: auto;">
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<el-form :modal="dataList" inline class="label-input-form">
|
||||||
|
<el-form-item label="标准号/标准名称" class="search-item">
|
||||||
|
<el-input v-model="dataList.standId"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="项目名称" class="search-item">
|
||||||
|
<el-input v-model="dataList.productName"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="责任部门" class="search-item">
|
||||||
|
<el-input v-model="dataList.responsibleUnit" v-show="false" />
|
||||||
|
<el-popover
|
||||||
|
placement="bottom"
|
||||||
|
popper-class="user-dept-popper"
|
||||||
|
trigger="click"
|
||||||
|
:value="false"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
slot="reference"
|
||||||
|
v-model="dataList.responseUnitShow"
|
||||||
|
placeholder="根据责任部门查找"
|
||||||
|
readonly
|
||||||
|
clearable
|
||||||
|
id="searchResp"
|
||||||
|
/>
|
||||||
|
<div class="api">
|
||||||
|
<laws-tree
|
||||||
|
:zNodes="zNodesSItem"
|
||||||
|
treeDivId="zNodesSItemSearch"
|
||||||
|
deptSelect
|
||||||
|
showRMenu
|
||||||
|
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||||
|
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||||
|
</laws-tree>
|
||||||
|
</div>
|
||||||
|
</el-popover>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
class="common-button-primary"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||||
|
@click="getTableByPage('dataList')">
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||||
|
@click="clearAllSearch">
|
||||||
|
清空
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<div class="content-center">
|
||||||
|
<el-button
|
||||||
|
style="text-align: end"
|
||||||
|
class="common-button-default"
|
||||||
|
size="small"
|
||||||
|
type="primary"
|
||||||
|
@click="dutyEngineerList">
|
||||||
|
批量分发负责人
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
<el-table
|
||||||
|
:data="dataList"
|
||||||
|
border
|
||||||
|
ref="multipleTable"
|
||||||
|
@select="handleSelectionChange"
|
||||||
|
height="49%"
|
||||||
|
style="width: 100%"
|
||||||
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
|
fontWeight: 'bold', height: '48px'}">
|
||||||
|
<el-table-column type="selection" width="55" align="center"/>
|
||||||
|
<el-table-column prop="standId" label="标准号/标准名称"/>
|
||||||
|
<el-table-column prop="productName" label="项目名称"/>
|
||||||
|
<el-table-column prop="itemsNum" label="条款号"/>
|
||||||
|
<el-table-column prop="itemsName" label="条款名称"/>
|
||||||
|
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||||
|
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||||
|
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
||||||
|
<el-table-column label="选择分发责任人" prop="dutyPeople">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.show">
|
||||||
|
<el-input v-model="scope.row.dutyPeople" size="mini" placeholder="请输入内容" @click.native="choiceDuty"></el-input>
|
||||||
|
</span>
|
||||||
|
<span v-else>{{scope.row.dutyPeople}}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<!-- <pagination :page="pageNo" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"/>-->
|
||||||
|
</div>
|
||||||
|
<el-collapse accordion>
|
||||||
|
<el-collapse-item title="意见填写">
|
||||||
|
<div style="margin: 10px 0;">
|
||||||
|
<el-input
|
||||||
|
type="textarea"
|
||||||
|
:rows="3"
|
||||||
|
resize="none"
|
||||||
|
placeholder="请输入意见"
|
||||||
|
v-model="textarea">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-collapse-item>
|
||||||
|
</el-collapse>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '2'">
|
||||||
|
<div class="block" style="padding-top: 20px;">
|
||||||
|
<el-timeline>
|
||||||
|
<el-form
|
||||||
|
ref="Form"
|
||||||
|
:model="roleForm"
|
||||||
|
:rules="roleFormRules"
|
||||||
|
class="label-input-form">
|
||||||
|
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||||
|
<h4>流程发起人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||||
|
<h4>标准法规工程师</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||||
|
<h4>负责人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.presidentUserName" placeholder="选择分发负责人" @click.native="choiceZRR('presidentUser', '选择分发负责人', roleForm.presidentUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
</el-form>
|
||||||
|
</el-timeline>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ProcessFooter
|
||||||
|
show-save
|
||||||
|
show-submit
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@save="handleSave"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-drawer
|
||||||
|
:title="drawerTitle"
|
||||||
|
:visible.sync="modalshowflag"
|
||||||
|
:wrapperClosable="false"
|
||||||
|
size="800px">
|
||||||
|
<el-tree
|
||||||
|
v-if="modalshowflag"
|
||||||
|
style="height: 100%;"
|
||||||
|
node-key="id"
|
||||||
|
class="filter-tree"
|
||||||
|
:data="treeData"
|
||||||
|
:props="defaultProps"
|
||||||
|
:default-checked-keys="nodeList"
|
||||||
|
highlight-current
|
||||||
|
check-strictly
|
||||||
|
@check="drawerCheck"
|
||||||
|
default-expand-all
|
||||||
|
:expand-on-click-node="false"
|
||||||
|
show-checkbox
|
||||||
|
ref="tree">
|
||||||
|
</el-tree>
|
||||||
|
<div id="roleFormButton" class="demo-drawer-footer">
|
||||||
|
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
|
||||||
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {interfaceUrl} from "@/sysConfig";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "step2",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
textarea: '', // 意见
|
||||||
|
title: '', // 新增编辑抽屉标题
|
||||||
|
ListModel: false, // 新增编辑抽屉开关
|
||||||
|
nonConformitySearch: {
|
||||||
|
standId: '', // 标准号/名称
|
||||||
|
productName: '', // 项目名称
|
||||||
|
responsibleUnit: '' // 责任部门
|
||||||
|
},
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
dataList: [],
|
||||||
|
// 新增选择分发责任人数组
|
||||||
|
multipleSelection: [],
|
||||||
|
// 当前页数
|
||||||
|
pageNo: 1,
|
||||||
|
total: 0,
|
||||||
|
myLoading: false,
|
||||||
|
// 责任部门
|
||||||
|
zNodesSItem: [],
|
||||||
|
unqualidiedData: [{
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
itemsNum: '',
|
||||||
|
itemsName: '',
|
||||||
|
planCloseTime: '',
|
||||||
|
responsibleUnit: '',
|
||||||
|
dutyEngineer: ''
|
||||||
|
}],
|
||||||
|
clearSelection: false,
|
||||||
|
selectedList: [], //未整改项的选择框
|
||||||
|
roleForm: {
|
||||||
|
startUserName: this.$store.getters.userInfo.userName,
|
||||||
|
startUser: this.$store.getters.userInfo.userId,
|
||||||
|
},
|
||||||
|
roleFormRules: {
|
||||||
|
},
|
||||||
|
nodeList: [],
|
||||||
|
drawerTitle: '', //drawer标题
|
||||||
|
modalshowflag: false, // drawer开关
|
||||||
|
treeData: [], // 人员数据
|
||||||
|
defaultProps: {
|
||||||
|
children: 'children',
|
||||||
|
label: 'name'
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getData()
|
||||||
|
this.getTree()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getData() {
|
||||||
|
this.dataList = [
|
||||||
|
{
|
||||||
|
standId: '1',
|
||||||
|
productName: '1',
|
||||||
|
itemsNum: '1',
|
||||||
|
itemsName: '1',
|
||||||
|
planCloseTime: '1',
|
||||||
|
responsibleUnit: '1',
|
||||||
|
dutyEngineer: '1',
|
||||||
|
dutyPeople: '',
|
||||||
|
},{
|
||||||
|
standId: '332',
|
||||||
|
productName: '333',
|
||||||
|
itemsNum: '33',
|
||||||
|
itemsName: '33',
|
||||||
|
planCloseTime: '33',
|
||||||
|
responsibleUnit: '33',
|
||||||
|
dutyEngineer: '33',
|
||||||
|
dutyPeople: ''
|
||||||
|
},{
|
||||||
|
standId: '312`',
|
||||||
|
productName: '31312',
|
||||||
|
itemsNum: '31`2',
|
||||||
|
itemsName: '312`1`',
|
||||||
|
planCloseTime: '321`3`2',
|
||||||
|
responsibleUnit: '312`123`',
|
||||||
|
dutyEngineer: '312123',
|
||||||
|
dutyPeople: '121'
|
||||||
|
},{
|
||||||
|
standId: '32123',
|
||||||
|
productName: '32132',
|
||||||
|
itemsNum: '312321',
|
||||||
|
itemsName: '3123',
|
||||||
|
planCloseTime: '3123',
|
||||||
|
responsibleUnit: '3123',
|
||||||
|
dutyEngineer: '3123',
|
||||||
|
dutyPeople: ''
|
||||||
|
},
|
||||||
|
]
|
||||||
|
},
|
||||||
|
getList() {
|
||||||
|
this.myLoading.loadData = true
|
||||||
|
this.$http.get('sarStandUnqualified/sar-stand-unqualified', {
|
||||||
|
...this.nonConformitySearch,
|
||||||
|
current: this.pageNo,
|
||||||
|
size: this.$store.getters.userInfo.configContent
|
||||||
|
}, {
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.myLoading.loadData = false
|
||||||
|
this.nonList = res.data.records
|
||||||
|
this.total = res.data.total
|
||||||
|
}, e => {
|
||||||
|
this.myLoading.loadData = false
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 批量选择分发责任人
|
||||||
|
dutyEngineerList() {
|
||||||
|
if (this.multipleSelection.length === 0) {
|
||||||
|
this.$message.warning("请选择至少一条数据进行分发责任人");
|
||||||
|
} else {
|
||||||
|
this.multipleSelection.map((i, index)=> {
|
||||||
|
i.show = true
|
||||||
|
this.$set(this.dataList, i, index)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 选择勾选项的集合
|
||||||
|
handleSelectionChange(value) {
|
||||||
|
this.multipleSelection = value
|
||||||
|
console.log(value)
|
||||||
|
},
|
||||||
|
// 选择分发责任人时
|
||||||
|
choiceDuty(type, title, id) {
|
||||||
|
this.nodeList = []
|
||||||
|
this.nodeList.push(id)
|
||||||
|
this.drawerTitle = title
|
||||||
|
this.modalshowflag = true
|
||||||
|
},
|
||||||
|
selectPeople(row) {
|
||||||
|
this.modalshowflag = true
|
||||||
|
},
|
||||||
|
handleTabs(name) {
|
||||||
|
this.active = name
|
||||||
|
},
|
||||||
|
|
||||||
|
// 保存按钮
|
||||||
|
handleSave() {},
|
||||||
|
// 提交按钮
|
||||||
|
handleSubmit() {},
|
||||||
|
|
||||||
|
// 获取流程节点数据
|
||||||
|
getTree () {
|
||||||
|
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||||
|
this.treeData = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 流程阶段负责人选择
|
||||||
|
choiceZRR (type, title, id) {
|
||||||
|
this.nodeList = []
|
||||||
|
this.nodeList.push(id)
|
||||||
|
this.type = type
|
||||||
|
this.drawerTitle = title
|
||||||
|
this.modalshowflag = true
|
||||||
|
},
|
||||||
|
drawerCheck (data) {
|
||||||
|
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
||||||
|
if(getlist.length == 1) {
|
||||||
|
this.roleRow = getlist[0]
|
||||||
|
}else {
|
||||||
|
this.$refs.tree.setCheckedKeys([data.id]);
|
||||||
|
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉保存按钮
|
||||||
|
saveUserInfo () {
|
||||||
|
// 选取负责人时的操作
|
||||||
|
for (let i = 0; i < this.multipleSelection.length; i++ ) {
|
||||||
|
this.multipleSelection[i].dutyPeople = this.roleRow.name
|
||||||
|
for (let b = 0; b < this.multipleSelection.length; b++) {
|
||||||
|
this.multipleSelection[b].dutyPeople = this.multipleSelection[i].dutyPeople
|
||||||
|
this.dataList.forEach(val=> {
|
||||||
|
val.show = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
this.multipleSelection = []
|
||||||
|
this.$refs.multipleTable.clearSelection();
|
||||||
|
}
|
||||||
|
if (this.type === 'dockUser') {
|
||||||
|
this.roleForm.dockUser = this.roleRow.id
|
||||||
|
this.roleForm.dockUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'ministerUser') {
|
||||||
|
this.roleForm.ministerUser = this.roleRow.id
|
||||||
|
this.roleForm.ministerUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'directorUser') {
|
||||||
|
this.roleForm.directorUser = this.roleRow.id
|
||||||
|
this.roleForm.directorUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'presidentUser') {
|
||||||
|
this.roleForm.presidentUser = this.roleRow.id
|
||||||
|
this.roleForm.presidentUserName = this.roleRow.name
|
||||||
|
}
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉取消按钮
|
||||||
|
cancleUserInfo () {
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
//未整改项抽屉中的查询按钮
|
||||||
|
getTableByPage() {
|
||||||
|
},
|
||||||
|
// 清空 查询条件
|
||||||
|
clearAllSearch (search = true) {
|
||||||
|
this.nonConformitySearch = {
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
responsibleUnit: ''
|
||||||
|
}
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
// 分页事件
|
||||||
|
pageChange (page) {
|
||||||
|
this.pageNo = page
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
pageSizeChange () {
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.wfhxzgStep2 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content-center {
|
||||||
|
padding: 10px 0px 10px 10px;
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,452 @@
|
|||||||
|
<template>
|
||||||
|
<div class="wfhxzgStep3">
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">未符合项整改流程</template>
|
||||||
|
<template slot="proNode">确认负责人流程</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '1'">
|
||||||
|
<div style="flex: auto;">
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<el-form :modal="dataList" inline class="label-input-form">
|
||||||
|
<el-form-item label="标准号/标准名称" class="search-item">
|
||||||
|
<el-input v-model="dataList.standId"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="项目名称" class="search-item">
|
||||||
|
<el-input v-model="dataList.productName"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="责任部门" class="search-item">
|
||||||
|
<el-input v-model="dataList.responsibleUnit" v-show="false" />
|
||||||
|
<el-popover
|
||||||
|
placement="bottom"
|
||||||
|
popper-class="user-dept-popper"
|
||||||
|
trigger="click"
|
||||||
|
:value="false"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
slot="reference"
|
||||||
|
v-model="dataList.responseUnitShow"
|
||||||
|
placeholder="根据责任部门查找"
|
||||||
|
readonly
|
||||||
|
clearable
|
||||||
|
id="searchResp"
|
||||||
|
/>
|
||||||
|
<div class="api">
|
||||||
|
<laws-tree
|
||||||
|
:zNodes="zNodesSItem"
|
||||||
|
treeDivId="zNodesSItemSearch"
|
||||||
|
deptSelect
|
||||||
|
showRMenu
|
||||||
|
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||||
|
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||||
|
</laws-tree>
|
||||||
|
</div>
|
||||||
|
</el-popover>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
class="common-button-primary"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||||
|
@click="getTableByPage('dataList')">
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||||
|
@click="clearAllSearch">
|
||||||
|
清空
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<el-table
|
||||||
|
:data="dataList"
|
||||||
|
border
|
||||||
|
height="49%"
|
||||||
|
style="width: 100%"
|
||||||
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
|
fontWeight: 'bold', height: '48px'}">
|
||||||
|
<el-table-column type="selection" width="55" align="center"/>
|
||||||
|
<el-table-column prop="standId" label="标准号/标准名称"/>
|
||||||
|
<el-table-column prop="productName" label="项目名称"/>
|
||||||
|
<el-table-column prop="itemsNum" label="条款号"/>
|
||||||
|
<el-table-column prop="itemsName" label="条款名称"/>
|
||||||
|
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||||
|
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||||
|
<el-table-column prop="dutyEngineer" label="责任工程师"/>
|
||||||
|
<el-table-column label="选择责任人">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button type="primary" size="small" @click="selectPeople(scope.row)">选择责任人</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<!-- <pagination :page="pageNo" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"/>-->
|
||||||
|
</div>
|
||||||
|
<el-collapse accordion>
|
||||||
|
<el-collapse-item title="意见填写">
|
||||||
|
<div style="margin: 10px 0;">
|
||||||
|
<el-input
|
||||||
|
type="textarea"
|
||||||
|
:rows="3"
|
||||||
|
resize="none"
|
||||||
|
placeholder="请输入意见"
|
||||||
|
v-model="textarea">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-collapse-item>
|
||||||
|
</el-collapse>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '2'">
|
||||||
|
<div class="block" style="padding-top: 20px;">
|
||||||
|
<el-timeline>
|
||||||
|
<el-form
|
||||||
|
ref="Form"
|
||||||
|
:model="roleForm"
|
||||||
|
:rules="roleFormRules"
|
||||||
|
class="label-input-form">
|
||||||
|
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||||
|
<h4>流程发起人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||||
|
<h4>标准法规工程师</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||||
|
<h4>负责人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.presidentUserName" placeholder="选择负责人" @click.native="choiceZRR('presidentUser', '选择负责人', roleForm.presidentUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
</el-form>
|
||||||
|
</el-timeline>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ProcessFooter
|
||||||
|
show-save
|
||||||
|
show-submit
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@save="handleSave"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-drawer
|
||||||
|
:title="drawerTitle"
|
||||||
|
:visible.sync="modalshowflag"
|
||||||
|
:wrapperClosable="false"
|
||||||
|
size="800px">
|
||||||
|
<el-tree
|
||||||
|
v-if="modalshowflag"
|
||||||
|
style="height: 100%;"
|
||||||
|
node-key="id"
|
||||||
|
class="filter-tree"
|
||||||
|
:data="treeData"
|
||||||
|
:props="defaultProps"
|
||||||
|
:default-checked-keys="nodeList"
|
||||||
|
highlight-current
|
||||||
|
check-strictly
|
||||||
|
@check="drawerCheck"
|
||||||
|
default-expand-all
|
||||||
|
:expand-on-click-node="false"
|
||||||
|
show-checkbox
|
||||||
|
ref="tree">
|
||||||
|
</el-tree>
|
||||||
|
<div id="roleFormButton" class="demo-drawer-footer">
|
||||||
|
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
|
||||||
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {interfaceUrl} from "@/sysConfig";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "step3",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
textarea: '', // 意见
|
||||||
|
title: '', // 新增编辑抽屉标题
|
||||||
|
ListModel: false, // 新增编辑抽屉开关
|
||||||
|
nonConformitySearch: {
|
||||||
|
standId: '', // 标准号/名称
|
||||||
|
productName: '', // 项目名称
|
||||||
|
responsibleUnit: '' // 责任部门
|
||||||
|
},
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
dataList: [
|
||||||
|
{
|
||||||
|
standId: '1',
|
||||||
|
productName: '1',
|
||||||
|
itemsNum: '1',
|
||||||
|
itemsName: '1',
|
||||||
|
planCloseTime: '1',
|
||||||
|
responsibleUnit: '1',
|
||||||
|
dutyEngineer: '1'
|
||||||
|
},{
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
itemsNum: '',
|
||||||
|
itemsName: '',
|
||||||
|
planCloseTime: '',
|
||||||
|
responsibleUnit: '',
|
||||||
|
dutyEngineer: ''
|
||||||
|
}],
|
||||||
|
// 当前页数
|
||||||
|
pageNo: 1,
|
||||||
|
total: 0,
|
||||||
|
myLoading: false,
|
||||||
|
// 责任部门
|
||||||
|
zNodesSItem: [],
|
||||||
|
unqualidiedData: [{
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
itemsNum: '',
|
||||||
|
itemsName: '',
|
||||||
|
planCloseTime: '',
|
||||||
|
responsibleUnit: '',
|
||||||
|
dutyEngineer: ''
|
||||||
|
}],
|
||||||
|
selectedList: [], //未整改项的选择框
|
||||||
|
roleForm: {
|
||||||
|
startUserName: this.$store.getters.userInfo.userName,
|
||||||
|
startUser: this.$store.getters.userInfo.userId,
|
||||||
|
},
|
||||||
|
roleFormRules: {
|
||||||
|
},
|
||||||
|
nodeList: [],
|
||||||
|
drawerTitle: '', //drawer标题
|
||||||
|
modalshowflag: false, // drawer开关
|
||||||
|
treeData: [], // 人员数据
|
||||||
|
defaultProps: {
|
||||||
|
children: 'children',
|
||||||
|
label: 'name'
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getList() {
|
||||||
|
this.myLoading.loadData = true
|
||||||
|
this.$http.get('sarStandUnqualified/sar-stand-unqualified', {
|
||||||
|
...this.nonConformitySearch,
|
||||||
|
current: this.pageNo,
|
||||||
|
size: this.$store.getters.userInfo.configContent
|
||||||
|
}, {
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.myLoading.loadData = false
|
||||||
|
this.nonList = res.data.records
|
||||||
|
this.total = res.data.total
|
||||||
|
}, e => {
|
||||||
|
this.myLoading.loadData = false
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
selectPeople(row) {
|
||||||
|
this.modalshowflag = true
|
||||||
|
},
|
||||||
|
handleTabs(name) {
|
||||||
|
this.active = name
|
||||||
|
},
|
||||||
|
|
||||||
|
// 保存按钮
|
||||||
|
handleSave() {},
|
||||||
|
// 提交按钮
|
||||||
|
handleSubmit() {},
|
||||||
|
|
||||||
|
// 获取流程节点数据
|
||||||
|
getTree () {
|
||||||
|
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||||
|
this.treeData = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 流程阶段负责人选择
|
||||||
|
choiceZRR (type, title, id) {
|
||||||
|
this.nodeList = []
|
||||||
|
this.nodeList.push(id)
|
||||||
|
this.type = type
|
||||||
|
this.drawerTitle = title
|
||||||
|
this.modalshowflag = true
|
||||||
|
},
|
||||||
|
drawerCheck (data) {
|
||||||
|
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
||||||
|
if(getlist.length == 1) {
|
||||||
|
this.roleRow = getlist[0]
|
||||||
|
}else {
|
||||||
|
this.$refs.tree.setCheckedKeys([data.id]);
|
||||||
|
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉保存按钮
|
||||||
|
saveUserInfo () {
|
||||||
|
if (this.type === 'dockUser') {
|
||||||
|
this.roleForm.dockUser = this.roleRow.id
|
||||||
|
this.roleForm.dockUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'ministerUser') {
|
||||||
|
this.roleForm.ministerUser = this.roleRow.id
|
||||||
|
this.roleForm.ministerUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'directorUser') {
|
||||||
|
this.roleForm.directorUser = this.roleRow.id
|
||||||
|
this.roleForm.directorUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'presidentUser') {
|
||||||
|
this.roleForm.presidentUser = this.roleRow.id
|
||||||
|
this.roleForm.presidentUserName = this.roleRow.name
|
||||||
|
}
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉取消按钮
|
||||||
|
cancleUserInfo () {
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
//未整改项抽屉中的查询按钮
|
||||||
|
getTableByPage() {
|
||||||
|
},
|
||||||
|
// 清空 查询条件
|
||||||
|
clearAllSearch (search = true) {
|
||||||
|
this.nonConformitySearch = {
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
responsibleUnit: ''
|
||||||
|
}
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
// 分页事件
|
||||||
|
pageChange (page) {
|
||||||
|
this.pageNo = page
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
pageSizeChange () {
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.wfhxzgStep3 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content-center {
|
||||||
|
padding: 10px 0px 10px 10px;
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,452 @@
|
|||||||
|
<template>
|
||||||
|
<div class="wfhxzgStep4">
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">未符合项整改流程</template>
|
||||||
|
<template slot="proNode">负责人上传佐证</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '1'">
|
||||||
|
<div style="flex: auto;">
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<el-form :modal="dataList" inline class="label-input-form">
|
||||||
|
<el-form-item label="标准号/标准名称" class="search-item">
|
||||||
|
<el-input v-model="dataList.standId"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="项目名称" class="search-item">
|
||||||
|
<el-input v-model="dataList.productName"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="责任部门" class="search-item">
|
||||||
|
<el-input v-model="dataList.responsibleUnit" v-show="false" />
|
||||||
|
<el-popover
|
||||||
|
placement="bottom"
|
||||||
|
popper-class="user-dept-popper"
|
||||||
|
trigger="click"
|
||||||
|
:value="false"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
slot="reference"
|
||||||
|
v-model="dataList.responseUnitShow"
|
||||||
|
placeholder="根据责任部门查找"
|
||||||
|
readonly
|
||||||
|
clearable
|
||||||
|
id="searchResp"
|
||||||
|
/>
|
||||||
|
<div class="api">
|
||||||
|
<laws-tree
|
||||||
|
:zNodes="zNodesSItem"
|
||||||
|
treeDivId="zNodesSItemSearch"
|
||||||
|
deptSelect
|
||||||
|
showRMenu
|
||||||
|
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||||
|
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||||
|
</laws-tree>
|
||||||
|
</div>
|
||||||
|
</el-popover>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
class="common-button-primary"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||||
|
@click="getTableByPage('dataList')">
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||||
|
@click="clearAllSearch">
|
||||||
|
清空
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<el-table
|
||||||
|
:data="dataList"
|
||||||
|
border
|
||||||
|
height="49%"
|
||||||
|
style="width: 100%"
|
||||||
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
|
fontWeight: 'bold', height: '48px'}">
|
||||||
|
<el-table-column type="selection" width="55" align="center"/>
|
||||||
|
<el-table-column prop="productName" label="项目名称"/>
|
||||||
|
<el-table-column prop="itemsNum" label="条款号"/>
|
||||||
|
<el-table-column prop="itemsName" label="条款名称"/>
|
||||||
|
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||||
|
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||||
|
<el-table-column prop="duty" label="负责人"/>
|
||||||
|
<el-table-column label="佐证材料">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-upload>
|
||||||
|
<el-button type="primary" size="small" @click="uploadText(scope.row)">上传佐证材料</el-button>
|
||||||
|
</el-upload>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<!-- <pagination :page="pageNo" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"/>-->
|
||||||
|
</div>
|
||||||
|
<el-collapse accordion>
|
||||||
|
<el-collapse-item title="意见填写">
|
||||||
|
<div style="margin: 10px 0;">
|
||||||
|
<el-input
|
||||||
|
type="textarea"
|
||||||
|
:rows="3"
|
||||||
|
resize="none"
|
||||||
|
placeholder="请输入意见"
|
||||||
|
v-model="textarea">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-collapse-item>
|
||||||
|
</el-collapse>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '2'">
|
||||||
|
<div class="block" style="padding-top: 20px;">
|
||||||
|
<el-timeline>
|
||||||
|
<el-form
|
||||||
|
ref="Form"
|
||||||
|
:model="roleForm"
|
||||||
|
:rules="roleFormRules"
|
||||||
|
class="label-input-form">
|
||||||
|
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||||
|
<h4>流程发起人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||||
|
<h4>标准法规工程师</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||||
|
<h4>负责人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.presidentUserName" placeholder="选择分发负责人" @click.native="choiceZRR('presidentUser', '选择分发负责人', roleForm.presidentUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
</el-form>
|
||||||
|
</el-timeline>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ProcessFooter
|
||||||
|
show-save
|
||||||
|
show-submit
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:saveLoading="saveLoading"
|
||||||
|
@save="handleSave"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-drawer
|
||||||
|
:title="drawerTitle"
|
||||||
|
:visible.sync="modalshowflag"
|
||||||
|
:wrapperClosable="false"
|
||||||
|
size="800px">
|
||||||
|
<el-tree
|
||||||
|
v-if="modalshowflag"
|
||||||
|
style="height: 100%;"
|
||||||
|
node-key="id"
|
||||||
|
class="filter-tree"
|
||||||
|
:data="treeData"
|
||||||
|
:props="defaultProps"
|
||||||
|
:default-checked-keys="nodeList"
|
||||||
|
highlight-current
|
||||||
|
check-strictly
|
||||||
|
@check="drawerCheck"
|
||||||
|
default-expand-all
|
||||||
|
:expand-on-click-node="false"
|
||||||
|
show-checkbox
|
||||||
|
ref="tree">
|
||||||
|
</el-tree>
|
||||||
|
<div id="roleFormButton" class="demo-drawer-footer">
|
||||||
|
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
|
||||||
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {interfaceUrl} from "@/sysConfig";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "step4",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
textarea: '', // 意见
|
||||||
|
title: '', // 新增编辑抽屉标题
|
||||||
|
ListModel: false, // 新增编辑抽屉开关
|
||||||
|
nonConformitySearch: {
|
||||||
|
standId: '', // 标准号/名称
|
||||||
|
productName: '', // 项目名称
|
||||||
|
responsibleUnit: '' // 责任部门
|
||||||
|
},
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
saveLoading: false,
|
||||||
|
dataList: [
|
||||||
|
{
|
||||||
|
standId: '1',
|
||||||
|
productName: '1',
|
||||||
|
itemsNum: '1',
|
||||||
|
itemsName: '1',
|
||||||
|
planCloseTime: '1',
|
||||||
|
responsibleUnit: '1',
|
||||||
|
dutyEngineer: '1'
|
||||||
|
},{
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
itemsNum: '',
|
||||||
|
itemsName: '',
|
||||||
|
planCloseTime: '',
|
||||||
|
responsibleUnit: '',
|
||||||
|
dutyEngineer: ''
|
||||||
|
}],
|
||||||
|
// 当前页数
|
||||||
|
pageNo: 1,
|
||||||
|
total: 0,
|
||||||
|
myLoading: false,
|
||||||
|
// 责任部门
|
||||||
|
zNodesSItem: [],
|
||||||
|
unqualidiedData: [{
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
itemsNum: '',
|
||||||
|
itemsName: '',
|
||||||
|
planCloseTime: '',
|
||||||
|
responsibleUnit: '',
|
||||||
|
dutyEngineer: ''
|
||||||
|
}],
|
||||||
|
selectedList: [], //未整改项的选择框
|
||||||
|
roleForm: {
|
||||||
|
startUserName: this.$store.getters.userInfo.userName,
|
||||||
|
startUser: this.$store.getters.userInfo.userId,
|
||||||
|
},
|
||||||
|
roleFormRules: {
|
||||||
|
},
|
||||||
|
nodeList: [],
|
||||||
|
drawerTitle: '', //drawer标题
|
||||||
|
modalshowflag: false, // drawer开关
|
||||||
|
treeData: [], // 人员数据
|
||||||
|
defaultProps: {
|
||||||
|
children: 'children',
|
||||||
|
label: 'name'
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getList() {
|
||||||
|
this.myLoading.loadData = true
|
||||||
|
this.$http.get('sarStandUnqualified/sar-stand-unqualified', {
|
||||||
|
...this.nonConformitySearch,
|
||||||
|
current: this.pageNo,
|
||||||
|
size: this.$store.getters.userInfo.configContent
|
||||||
|
}, {
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.myLoading.loadData = false
|
||||||
|
this.nonList = res.data.records
|
||||||
|
this.total = res.data.total
|
||||||
|
}, e => {
|
||||||
|
this.myLoading.loadData = false
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
uploadText(row) {
|
||||||
|
},
|
||||||
|
handleTabs(name) {
|
||||||
|
this.active = name
|
||||||
|
},
|
||||||
|
|
||||||
|
// 保存按钮
|
||||||
|
handleSave() {},
|
||||||
|
// 提交按钮
|
||||||
|
handleSubmit() {},
|
||||||
|
|
||||||
|
// 获取流程节点数据
|
||||||
|
getTree () {
|
||||||
|
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||||
|
this.treeData = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 流程阶段负责人选择
|
||||||
|
choiceZRR (type, title, id) {
|
||||||
|
this.nodeList = []
|
||||||
|
this.nodeList.push(id)
|
||||||
|
this.type = type
|
||||||
|
this.drawerTitle = title
|
||||||
|
this.modalshowflag = true
|
||||||
|
},
|
||||||
|
drawerCheck (data) {
|
||||||
|
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
||||||
|
if(getlist.length == 1) {
|
||||||
|
this.roleRow = getlist[0]
|
||||||
|
}else {
|
||||||
|
this.$refs.tree.setCheckedKeys([data.id]);
|
||||||
|
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉保存按钮
|
||||||
|
saveUserInfo () {
|
||||||
|
if (this.type === 'dockUser') {
|
||||||
|
this.roleForm.dockUser = this.roleRow.id
|
||||||
|
this.roleForm.dockUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'ministerUser') {
|
||||||
|
this.roleForm.ministerUser = this.roleRow.id
|
||||||
|
this.roleForm.ministerUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'directorUser') {
|
||||||
|
this.roleForm.directorUser = this.roleRow.id
|
||||||
|
this.roleForm.directorUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'presidentUser') {
|
||||||
|
this.roleForm.presidentUser = this.roleRow.id
|
||||||
|
this.roleForm.presidentUserName = this.roleRow.name
|
||||||
|
}
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉取消按钮
|
||||||
|
cancleUserInfo () {
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
//未整改项抽屉中的查询按钮
|
||||||
|
getTableByPage() {
|
||||||
|
},
|
||||||
|
// 清空 查询条件
|
||||||
|
clearAllSearch (search = true) {
|
||||||
|
this.nonConformitySearch = {
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
responsibleUnit: ''
|
||||||
|
}
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
// 分页事件
|
||||||
|
pageChange (page) {
|
||||||
|
this.pageNo = page
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
pageSizeChange () {
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.wfhxzgStep4 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content-center {
|
||||||
|
padding: 10px 0px 10px 10px;
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,454 @@
|
|||||||
|
<template>
|
||||||
|
<div class="wfhxzgStep5">
|
||||||
|
<ProcessHeader toggle>
|
||||||
|
<template slot="proName">未符合项整改流程</template>
|
||||||
|
<template slot="proNode">分发负责人审核材料</template>
|
||||||
|
</ProcessHeader>
|
||||||
|
<div class="headerTabs">
|
||||||
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
|
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">流程信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '1'">
|
||||||
|
<div style="flex: auto;">
|
||||||
|
<ProcessTitle>
|
||||||
|
<template slot="title">基础信息</template>
|
||||||
|
</ProcessTitle>
|
||||||
|
<el-form :modal="dataList" inline class="label-input-form">
|
||||||
|
<el-form-item label="标准号/标准名称" class="search-item">
|
||||||
|
<el-input v-model="dataList.standId"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="项目名称" class="search-item">
|
||||||
|
<el-input v-model="dataList.productName"
|
||||||
|
placeholder="请输入"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="责任部门" class="search-item">
|
||||||
|
<el-input v-model="dataList.responsibleUnit" v-show="false" />
|
||||||
|
<el-popover
|
||||||
|
placement="bottom"
|
||||||
|
popper-class="user-dept-popper"
|
||||||
|
trigger="click"
|
||||||
|
:value="false"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
slot="reference"
|
||||||
|
v-model="dataList.responseUnitShow"
|
||||||
|
placeholder="根据责任部门查找"
|
||||||
|
readonly
|
||||||
|
clearable
|
||||||
|
id="searchResp"
|
||||||
|
/>
|
||||||
|
<div class="api">
|
||||||
|
<laws-tree
|
||||||
|
:zNodes="zNodesSItem"
|
||||||
|
treeDivId="zNodesSItemSearch"
|
||||||
|
deptSelect
|
||||||
|
showRMenu
|
||||||
|
@treeDblClick="(treeId, treeNode) => treeClickSearch(treeId, treeNode)"
|
||||||
|
class="ztree" style="width: 200px;height: 400px;overflow: auto">
|
||||||
|
</laws-tree>
|
||||||
|
</div>
|
||||||
|
</el-popover>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
class="common-button-primary"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
|
||||||
|
@click="getTableByPage('dataList')">
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
size="mini"
|
||||||
|
v-btn-permission="'5905d0743c3504799aee83ac9697f8c5'"
|
||||||
|
@click="clearAllSearch">
|
||||||
|
清空
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<el-table
|
||||||
|
:data="dataList"
|
||||||
|
border
|
||||||
|
height="49%"
|
||||||
|
style="width: 100%"
|
||||||
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
|
fontWeight: 'bold', height: '48px'}">
|
||||||
|
<el-table-column type="selection" width="55" align="center"/>
|
||||||
|
<el-table-column prop="productName" label="项目名称"/>
|
||||||
|
<el-table-column prop="itemsNum" label="条款号"/>
|
||||||
|
<el-table-column prop="itemsName" label="条款名称"/>
|
||||||
|
<el-table-column prop="planCloseTime" label="整改完成时间"/>
|
||||||
|
<el-table-column prop="responsibleUnit" label="责任部门"/>
|
||||||
|
<el-table-column prop="dutyEngineer" label="负责人"/>
|
||||||
|
<el-table-column label="佐证材料">
|
||||||
|
<div class="div-text">{{ 11 || '暂无数据' }}</div>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<!-- <pagination :page="pageNo" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"/>-->
|
||||||
|
</div>
|
||||||
|
<el-collapse accordion>
|
||||||
|
<el-collapse-item title="意见填写">
|
||||||
|
<div style="margin: 10px 0;">
|
||||||
|
<el-input
|
||||||
|
type="textarea"
|
||||||
|
:rows="3"
|
||||||
|
resize="none"
|
||||||
|
placeholder="请输入意见"
|
||||||
|
v-model="textarea">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-collapse-item>
|
||||||
|
</el-collapse>
|
||||||
|
</div>
|
||||||
|
<div class="content" v-if="active === '2'">
|
||||||
|
<div class="block" style="padding-top: 20px;">
|
||||||
|
<el-timeline>
|
||||||
|
<el-form
|
||||||
|
ref="Form"
|
||||||
|
:model="roleForm"
|
||||||
|
:rules="roleFormRules"
|
||||||
|
class="label-input-form">
|
||||||
|
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||||
|
<h4>流程发起人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.startUserName" placeholder="流程发起人"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="下发标准法规工程师" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="dockUserName" style="margin-bottom: 0">
|
||||||
|
<h4>标准法规工程师</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.dockUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.dockUserName" placeholder="选择标准法规工程师" @click.native="choiceZRR('dockUser', '选择标准法规工程师', roleForm.dockUser)">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="确认分发责任人" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="ministerUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.ministerUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.ministerUserName" placeholder="选择分发责任人" @click.native="choiceZRR('ministerUser', '选择分发责任人', roleForm.ministerUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="负责人上传材料" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="directorUserName" style="margin-bottom: 0">
|
||||||
|
<h4>负责人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.directorUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.directorUserName" placeholder="选择负责人" @click.native="choiceZRR('directorUser', '选择负责人', roleForm.directorUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
<el-timeline-item timestamp="批准人" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
|
||||||
|
<el-card>
|
||||||
|
<el-form-item prop="presidentUserName" style="margin-bottom: 0">
|
||||||
|
<h4>分发责任人</h4>
|
||||||
|
<div style="margin-top: 10px;width: 300px;">
|
||||||
|
<el-input v-model="roleForm.presidentUser" style="display: none;"></el-input>
|
||||||
|
<el-input v-model="roleForm.presidentUserName" placeholder="选择分发负责人" @click.native="choiceZRR('presidentUser', '选择分发负责人', roleForm.presidentUser)"></el-input>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-card>
|
||||||
|
</el-timeline-item>
|
||||||
|
</el-form>
|
||||||
|
</el-timeline>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ProcessFooter
|
||||||
|
show-back
|
||||||
|
show-submit
|
||||||
|
:submitLoading="isSubmit"
|
||||||
|
:backLoading="backLoading"
|
||||||
|
@back="handleDataBack"
|
||||||
|
@submit="handleSubmit"
|
||||||
|
>
|
||||||
|
</ProcessFooter>
|
||||||
|
<el-drawer
|
||||||
|
:title="drawerTitle"
|
||||||
|
:visible.sync="modalshowflag"
|
||||||
|
:wrapperClosable="false"
|
||||||
|
size="800px">
|
||||||
|
<el-tree
|
||||||
|
v-if="modalshowflag"
|
||||||
|
style="height: 100%;"
|
||||||
|
node-key="id"
|
||||||
|
class="filter-tree"
|
||||||
|
:data="treeData"
|
||||||
|
:props="defaultProps"
|
||||||
|
:default-checked-keys="nodeList"
|
||||||
|
highlight-current
|
||||||
|
check-strictly
|
||||||
|
@check="drawerCheck"
|
||||||
|
default-expand-all
|
||||||
|
:expand-on-click-node="false"
|
||||||
|
show-checkbox
|
||||||
|
ref="tree">
|
||||||
|
</el-tree>
|
||||||
|
<div id="roleFormButton" class="demo-drawer-footer">
|
||||||
|
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
|
||||||
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import ProcessHeader from '../../components/ProcessHeader'
|
||||||
|
import ProcessFooter from '../../components/ProcessFooter'
|
||||||
|
import ProcessTitle from '../../components/ProcessTitle'
|
||||||
|
import {interfaceUrl} from "@/sysConfig";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "step5",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
textarea: '', // 意见
|
||||||
|
title: '', // 新增编辑抽屉标题
|
||||||
|
ListModel: false, // 新增编辑抽屉开关
|
||||||
|
nonConformitySearch: {
|
||||||
|
standId: '', // 标准号/名称
|
||||||
|
productName: '', // 项目名称
|
||||||
|
responsibleUnit: '' // 责任部门
|
||||||
|
},
|
||||||
|
active: '1', // 默认显示
|
||||||
|
isSubmit: false,
|
||||||
|
backLoading: false,
|
||||||
|
dataList: [
|
||||||
|
{
|
||||||
|
standId: '1',
|
||||||
|
productName: '1',
|
||||||
|
itemsNum: '1',
|
||||||
|
itemsName: '1',
|
||||||
|
planCloseTime: '1',
|
||||||
|
responsibleUnit: '1',
|
||||||
|
dutyEngineer: '1'
|
||||||
|
},{
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
itemsNum: '',
|
||||||
|
itemsName: '',
|
||||||
|
planCloseTime: '',
|
||||||
|
responsibleUnit: '',
|
||||||
|
dutyEngineer: ''
|
||||||
|
}],
|
||||||
|
// 当前页数
|
||||||
|
pageNo: 1,
|
||||||
|
total: 0,
|
||||||
|
myLoading: false,
|
||||||
|
// 责任部门
|
||||||
|
zNodesSItem: [],
|
||||||
|
unqualidiedData: [{
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
itemsNum: '',
|
||||||
|
itemsName: '',
|
||||||
|
planCloseTime: '',
|
||||||
|
responsibleUnit: '',
|
||||||
|
dutyEngineer: ''
|
||||||
|
}],
|
||||||
|
selectedList: [], //未整改项的选择框
|
||||||
|
roleForm: {
|
||||||
|
startUserName: this.$store.getters.userInfo.userName,
|
||||||
|
startUser: this.$store.getters.userInfo.userId,
|
||||||
|
},
|
||||||
|
roleFormRules: {
|
||||||
|
},
|
||||||
|
// 驳回弹窗状态
|
||||||
|
backDialog: false,
|
||||||
|
|
||||||
|
|
||||||
|
nodeList: [],
|
||||||
|
drawerTitle: '', //drawer标题
|
||||||
|
modalshowflag: false, // drawer开关
|
||||||
|
treeData: [], // 人员数据
|
||||||
|
defaultProps: {
|
||||||
|
children: 'children',
|
||||||
|
label: 'name'
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ProcessHeader,
|
||||||
|
ProcessFooter,
|
||||||
|
ProcessTitle
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getList() {
|
||||||
|
this.myLoading.loadData = true
|
||||||
|
this.$http.get('sarStandUnqualified/sar-stand-unqualified', {
|
||||||
|
...this.nonConformitySearch,
|
||||||
|
current: this.pageNo,
|
||||||
|
size: this.$store.getters.userInfo.configContent
|
||||||
|
}, {
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.myLoading.loadData = false
|
||||||
|
this.nonList = res.data.records
|
||||||
|
this.total = res.data.total
|
||||||
|
}, e => {
|
||||||
|
this.myLoading.loadData = false
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 批准俺妞妞操作
|
||||||
|
handleBack() {
|
||||||
|
this.backDialog = true
|
||||||
|
},
|
||||||
|
handleSuccess() {},
|
||||||
|
handleTabs(name) {
|
||||||
|
this.active = name
|
||||||
|
},
|
||||||
|
|
||||||
|
// 保存按钮
|
||||||
|
handleSave() {},
|
||||||
|
// 提交按钮
|
||||||
|
handleSubmit() {},
|
||||||
|
|
||||||
|
// 获取流程节点数据
|
||||||
|
getTree () {
|
||||||
|
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
|
||||||
|
this.treeData = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 流程阶段负责人选择
|
||||||
|
choiceZRR (type, title, id) {
|
||||||
|
this.nodeList = []
|
||||||
|
this.nodeList.push(id)
|
||||||
|
this.type = type
|
||||||
|
this.drawerTitle = title
|
||||||
|
this.modalshowflag = true
|
||||||
|
},
|
||||||
|
drawerCheck (data) {
|
||||||
|
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
||||||
|
if(getlist.length == 1) {
|
||||||
|
this.roleRow = getlist[0]
|
||||||
|
}else {
|
||||||
|
this.$refs.tree.setCheckedKeys([data.id]);
|
||||||
|
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉保存按钮
|
||||||
|
saveUserInfo () {
|
||||||
|
if (this.type === 'dockUser') {
|
||||||
|
this.roleForm.dockUser = this.roleRow.id
|
||||||
|
this.roleForm.dockUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'ministerUser') {
|
||||||
|
this.roleForm.ministerUser = this.roleRow.id
|
||||||
|
this.roleForm.ministerUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'directorUser') {
|
||||||
|
this.roleForm.directorUser = this.roleRow.id
|
||||||
|
this.roleForm.directorUserName = this.roleRow.name
|
||||||
|
} else if (this.type === 'presidentUser') {
|
||||||
|
this.roleForm.presidentUser = this.roleRow.id
|
||||||
|
this.roleForm.presidentUserName = this.roleRow.name
|
||||||
|
}
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
// 流程节点负责人抽屉取消按钮
|
||||||
|
cancleUserInfo () {
|
||||||
|
this.modalshowflag = false
|
||||||
|
},
|
||||||
|
//未整改项抽屉中的查询按钮
|
||||||
|
getTableByPage() {
|
||||||
|
},
|
||||||
|
// 清空 查询条件
|
||||||
|
clearAllSearch (search = true) {
|
||||||
|
this.nonConformitySearch = {
|
||||||
|
standId: '',
|
||||||
|
productName: '',
|
||||||
|
responsibleUnit: ''
|
||||||
|
}
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
// 分页事件
|
||||||
|
pageChange (page) {
|
||||||
|
this.pageNo = page
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
pageSizeChange () {
|
||||||
|
this.getTableByPage()
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
@import '~@/assets/styles/style';
|
||||||
|
.wfhxzgStep5 {
|
||||||
|
/deep/.el-drawer__container {
|
||||||
|
.prc-content-border {
|
||||||
|
border: none;
|
||||||
|
padding: 0 20px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
.headerTabs {
|
||||||
|
height: 52px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10px;
|
||||||
|
.headerTabsItem {
|
||||||
|
border: 1px solid #c1c1c1;
|
||||||
|
padding: 0 5px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
border: 1px solid #E6A23C;
|
||||||
|
color: #fff;
|
||||||
|
background: #E6A23C;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content-center {
|
||||||
|
padding: 10px 0px 10px 10px;
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: calc(~'100% - 103px');
|
||||||
|
overflow: auto;
|
||||||
|
.tableTitle {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
position: relative;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
.tableButton {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -11,6 +11,7 @@
|
|||||||
<div class="process-name" @click="handleCreateProcess('5')">标准发放申请流程</div>
|
<div class="process-name" @click="handleCreateProcess('5')">标准发放申请流程</div>
|
||||||
<div class="process-name" @click="handleCreateProcess('6')">标准清单发布/更新流程</div>
|
<div class="process-name" @click="handleCreateProcess('6')">标准清单发布/更新流程</div>
|
||||||
<div class="process-name" @click="handleCreateProcess('7')">项目合规评估流程</div>
|
<div class="process-name" @click="handleCreateProcess('7')">项目合规评估流程</div>
|
||||||
|
<div class="process-name" @click="handleCreateProcess('7')">未符合项整改流程</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="zcgllc">
|
<div v-if="zcgllc">
|
||||||
@@ -63,7 +64,7 @@ export default {
|
|||||||
case '3':
|
case '3':
|
||||||
// 标准征求意见流程
|
// 标准征求意见流程
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name:'zqyjStep1'
|
name:'bzzqyjStep1'
|
||||||
})
|
})
|
||||||
break
|
break
|
||||||
case '4':
|
case '4':
|
||||||
@@ -91,6 +92,10 @@ export default {
|
|||||||
})
|
})
|
||||||
break
|
break
|
||||||
case '8':
|
case '8':
|
||||||
|
//未符合项整改流程
|
||||||
|
this.$router.push({
|
||||||
|
name:'wfhxzgStep1'
|
||||||
|
})
|
||||||
break
|
break
|
||||||
case '9':
|
case '9':
|
||||||
break
|
break
|
||||||
|
|||||||
@@ -275,6 +275,72 @@ export default {
|
|||||||
prcType: row.prcType
|
prcType: row.prcType
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
} else if (row.taskInfo === '责任对接人审批') {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'bzdyStep4',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else if (row.taskInfo === '标准法规工程师调研汇总'){
|
||||||
|
this.$router.push({
|
||||||
|
name: 'bzdyStep5',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else if (row.taskInfo === '责任人会签'){
|
||||||
|
this.$router.push({
|
||||||
|
name: 'bzdyStep6',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else if (row.taskInfo === '部长+对接人审核') {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'bzdyStep7',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else if (row.taskInfo.indexOf('工程研究总院院长') == 0 ) {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'bzdyStep9',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'bzdyStep8',
|
||||||
|
query: {
|
||||||
|
taskIds: row.taskIds,
|
||||||
|
prcId: row.prcId,
|
||||||
|
prcNum: row.prcNum,
|
||||||
|
prcName: row.prcName,
|
||||||
|
prcType: row.prcType
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
//标准清单更新/发布流程
|
//标准清单更新/发布流程
|
||||||
|
|||||||
@@ -76,12 +76,12 @@
|
|||||||
</div>
|
</div>
|
||||||
</table-tools-bar>
|
</table-tools-bar>
|
||||||
<div class="action-bar">
|
<div class="action-bar">
|
||||||
<el-button type="primary"
|
<!-- <el-button type="primary"-->
|
||||||
class="common-button-primary add-button"
|
<!-- class="common-button-primary add-button"-->
|
||||||
@click="addModal"
|
<!-- @click="addModal"-->
|
||||||
size="mini"
|
<!-- size="mini"-->
|
||||||
v-btn-permission="'57f40856850c95912be0760a082db0e0'"
|
<!-- v-btn-permission="'57f40856850c95912be0760a082db0e0'"-->
|
||||||
:disabled="addBtnDisabled"><i class="iconfont"></i>新增</el-button>
|
<!-- :disabled="addBtnDisabled"><i class="iconfont"></i>新增</el-button>-->
|
||||||
<el-button class="common-button-default in-button"
|
<el-button class="common-button-default in-button"
|
||||||
:loading="searching"
|
:loading="searching"
|
||||||
size="mini"
|
size="mini"
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ export default {
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
background-color: #FFFFFF;
|
background-color: #FFFFFF;
|
||||||
.non-content {
|
.non-content {
|
||||||
|
padding: 0 10px;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
/deep/ .el-tabs {
|
/deep/ .el-tabs {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -276,6 +276,15 @@ const routes = [
|
|||||||
title: '标准清单发布/更新流程'
|
title: '标准清单发布/更新流程'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep1',
|
||||||
|
name: 'wfhxzgStep1',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step1.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/xmpgStep1',
|
path: '/xmpgStep1',
|
||||||
name: 'xmpgStep1',
|
name: 'xmpgStep1',
|
||||||
@@ -285,6 +294,42 @@ const routes = [
|
|||||||
title: '项目合规评估流程'
|
title: '项目合规评估流程'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep2',
|
||||||
|
name: 'wfhxzgStep2',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step2.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改发布/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep3',
|
||||||
|
name: 'wfhxzgStep3',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step3.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep4',
|
||||||
|
name: 'wfhxzgStep4',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step4.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/wfhxzgStep5',
|
||||||
|
name: 'wfhxzgStep5',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step5.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '未符合项整改/更新流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/bzrkStep1',
|
path: '/bzrkStep1',
|
||||||
name: 'bzrkStep1',
|
name: 'bzrkStep1',
|
||||||
@@ -357,6 +402,105 @@ const routes = [
|
|||||||
title: '标准调研流程'
|
title: '标准调研流程'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/bzzqyjStep1',
|
||||||
|
name: 'bzzqyjStep1',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step1.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准征求意见流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzzqyjStep2',
|
||||||
|
name: 'bzzqyjStep2',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step2.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准征求意见流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzzqyjStep3',
|
||||||
|
name: 'bzzqyjStep3',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step3.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准征求意见流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzzqyjStep4',
|
||||||
|
name: 'bzzqyjStep4',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step4.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准征求意见流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzzqyjStep5',
|
||||||
|
name: 'bzzqyjStep5',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzzqyj/step5.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准调研流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzdyStep4',
|
||||||
|
name: 'bzdyStep4',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzdy/step4.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准调研流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzdyStep5',
|
||||||
|
name: 'bzdyStep5',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzdy/step5.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准调研流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzdyStep6',
|
||||||
|
name: 'bzdyStep6',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzdy/step6.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准调研流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzdyStep7',
|
||||||
|
name: 'bzdyStep7',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzdy/step7.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准调研流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzdyStep8',
|
||||||
|
name: 'bzdyStep8',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzdy/step8.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准调研流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/bzdyStep9',
|
||||||
|
name: 'bzdyStep9',
|
||||||
|
component: () => import('@/pages/processCenter/pages/creatProcess/bzdy/step9.vue'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
title: '标准调研流程'
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/zqyjStep1',
|
path: '/zqyjStep1',
|
||||||
name: 'zqyjStep1',
|
name: 'zqyjStep1',
|
||||||
@@ -991,6 +1135,17 @@ const routes = [
|
|||||||
title: '标准法规属性管理详情页'
|
title: '标准法规属性管理详情页'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/standLawsAttrTreeDetails/:id?/:dictionaryName?/:dictionType?/:isRelate?/:relateDicId?',
|
||||||
|
name: 'standLawsAttrTreeDetails',
|
||||||
|
component: () =>
|
||||||
|
import('@/pages/config/pages/standLawsAttrManage/pages/standLawsAttrTreeDetails'),
|
||||||
|
meta: {
|
||||||
|
requireAuth: true,
|
||||||
|
parentPath: '/standLawsAttrManage',
|
||||||
|
title: '标准法规属性管理详情页'
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/attributeCustom',
|
path: '/attributeCustom',
|
||||||
name: 'AttributeCustom',
|
name: 'AttributeCustom',
|
||||||
|
|||||||
@@ -22,11 +22,11 @@ const theme = 'theme-one' // 主题(theme-one浅蓝色,theme-two深蓝色)
|
|||||||
const processPort = '17210'
|
const processPort = '17210'
|
||||||
/*****************************************************************
|
/*****************************************************************
|
||||||
|
|
||||||
<<<<<<<<< 主题修改 >>>>>>>>>
|
<<<<<<<<< 主题修改 >>>>>>>>>
|
||||||
|
|
||||||
1. 主题分为theme-one,theme-two两种
|
1. 主题分为theme-one,theme-two两种
|
||||||
2. 修改assets/styles/style.less文件,注释theme-one/theme-two
|
2. 修改assets/styles/style.less文件,注释theme-one/theme-two
|
||||||
3. 将上方theme改为theme-one/theme-two
|
3. 将上方theme改为theme-one/theme-two
|
||||||
|
|
||||||
*****************************************************************/
|
*****************************************************************/
|
||||||
// 生产环境配置
|
// 生产环境配置
|
||||||
@@ -51,4 +51,4 @@ module.exports = {
|
|||||||
enterprise: enterprise, // GQ广汽 SJZX数据中心
|
enterprise: enterprise, // GQ广汽 SJZX数据中心
|
||||||
theme: theme, // 主题
|
theme: theme, // 主题
|
||||||
processInterfaceURL: `http://${serverIP}:${processPort}/bat-wkflow`
|
processInterfaceURL: `http://${serverIP}:${processPort}/bat-wkflow`
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user