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

This commit is contained in:
super_liu
2021-07-08 22:35:18 +08:00
33 changed files with 3119 additions and 2964 deletions
+1 -1
View File
@@ -20,7 +20,7 @@
box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.2) inset;
}
.el-table__fixed {
height:auto !important; // 让固定列的高自适应,且设置!important覆盖ele-ui的默认样式
//height:auto !important; // 让固定列的高自适应,且设置!important覆盖ele-ui的默认样式
bottom:17px; // 固定列默认设置了定位, position: absolute;top: 0;left: 0;只需要再设置一下bottom的值,让固定列和父元素的底部出现距离即可
position: absolute;
top: 0;
+5
View File
@@ -305,6 +305,11 @@ export default {
path: '/menuManage',
menuId: '82665e94d406c6fc0d1f627e5880230b'
},
{
title: '链接管理',
path: '/linkManage',
menuId: 'd3ff92078c53a4d9d1f1a94450fee91e'
},
// // {
// // title: '保密管理',
// // path: '/convertDocView'
+420
View File
@@ -0,0 +1,420 @@
<!-- 配置管理 - 链接管理 -->
<template>
<div id="post-manage">
<!-- 头部操作按钮-->
<div class="action-bar">
<el-button type="primary"
class="common-button-primary add-button"
@click="addLink"
v-btn-permission="'980cb239683de9e29ee5335cec98e5b4'"
size="mini">新增</el-button>
<!-- <el-button type="primary"-->
<!-- class="common-button-primary add-button"-->
<!-- @click="linkOrder"-->
<!-- v-btn-permission="'779665b2e4bb20fc480cf9372a100f69'"-->
<!-- size="mini">顺序调整</el-button>-->
<el-button type="primary"
class="common-button-primary add-button"
@click="deleteAllLink"
v-btn-permission="'779665b2e4bb20fc480cf9372a100f69'"
size="mini">删除</el-button>
</div>
<!-- 表格-->
<div class="content">
<el-table
ref="multipleTable"
:data="linkList"
tooltip-effect="dark"
border
style="width: 100%; flex: auto;"
class="drag-table"
height="100%"
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="handleSelectionChange">
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="name"
label="链接名称"
width="220px">
</el-table-column>
<el-table-column
prop="url"
label="链接">
</el-table-column>
<el-table-column
prop="orderBy"
label="序号"
sortable
width="170px">
</el-table-column>
<el-table-column
label="操作"
width="50px">
<template slot-scope="scope">
<div @click.stop style="display: inline-block">
<el-dropdown trigger="click" @command="handleCommand">
<i class="iconfont">&#xe61e;</i>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item v-btn-permission="'0fbb849e244e07433a90180fb314ad10'" :command="[scope.row, '删除']">删除</el-dropdown-item>
<el-dropdown-item v-btn-permission="'fa0846d977aeef07e9cb7faf648f8f7f'" :command="[scope.row, '编辑']">编辑</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
</template>
</el-table-column>
</el-table>
</div>
<loading :loading="Loading">加载中...</loading>
<!-- 新增链接弹窗-->
<el-dialog
:title="dialogTitle"
:visible.sync="modalshowflag"
:wrapperClosable="false"
size="800px"
@close="resetForm"
>
<el-form
ref="sarStandardsInfoForm"
:model="sarStandardsInfoEO"
:rules="sarStandardsInfoRules"
class="label-input-form"
>
<el-form-item label="链接名称" prop="name" label-width="150px" class="add-form-item">
<el-input v-model="sarStandardsInfoEO.name"
placeholder="请输入链接名称"
clearable></el-input>
</el-form-item>
<el-form-item label="链接" prop="url" label-width="150px" class="add-form-item">
<el-input v-model="sarStandardsInfoEO.url"
placeholder="请输入链接"
clearable></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="demo-drawer-footer">
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="resetForm">取消</el-button>
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check" @click="submit">确定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default {
name: "linkManage",
data () {
return {
editId: '',
type: '', // 1为新增 2为编辑
dialogTitle: '',
submitLoading: false,
selectList: [],
data: [],
Loading: false,
modalshowflag: false,
sarStandardsInfoEO: {
name: '',
url: '',
// orderBy: ''
},
//新增链接未输入时提示
sarStandardsInfoRules: {
name: [
{ required: true, message: '请输入链接名称', trigger: 'blur' }
],
url: [
{ required: true, message: '请输入链接', trigger: 'blur' }
]
},
modalRole: false,
props: {
label: 'name',
children: 'children'
},
linkList: [
{
url: 'http://www.sac.gov.cn/',
name: '国家标准化管理委员会',
orderBy: '01'
},
{
url: 'http://std.samr.gov.cn/',
name: '全国标准公共服务平台',
orderBy: '02'
},
{
url: 'http://www.gb688.cn/bzgk/gb/gbMainQuery%E5%9B%BD%E5%AE%B6%E6%A0%87%E5%87%86%E5%85%A8%E6%96%87%E5%85%AC%E5%BC%80',
name: '国家标准全文公开',
orderBy: '03'
},
{
url: 'http://www.catarc.org.cn/',
name: '全国汽车标准化技术委员会',
orderBy: '04'
},
{
url: 'http://jtst.mot.gov.cn/news/',
name: '交通运输标准化信息平台',
orderBy: '05'
},
{
url: 'https://www.miit.gov.cn/index.html',
name: '中华人民共和国工业和信息化部',
orderBy: '06'
},
{
url: 'http://www.miit-eidc.org.cn/',
name: '工信部装备工业发展中心',
orderBy: '07'
},
{
url: 'http://www.mee.gov.cn/',
name: '中华人民共和国生态环境部',
orderBy: '08'
},
{
url: 'http://sthjj.beijing.gov.cn/',
name: '北京市生态环境局',
orderBy: '09'
},
{
url: 'http://www.tmri.cn/',
name: '公安部交通管理科学研究院',
orderBy: '10'
},
{
url: 'http://www.tbt-sps.gov.cn/page/cwtoz/Indexquery.action',
name: '中国WTO/TBT-SPS通报资讯网',
orderBy: '11'
},
{
url: 'http://www.samr.gov.cn/',
name: '国家市场监督管理总局',
orderBy: '12'
},
{
url: 'http://www.caam.org.cn/',
name: '中国汽车工业协会',
orderBy: '13'
},
{
url: 'http://www.sae-china.org/',
name: '汽车工程学会',
orderBy: '14'
},
{
url: 'http://csae.sae-china.org/',
name: 'CSAE汽车工程学会标准',
orderBy: '15'
},
{
url: 'http://www.ttbz.org.cn/',
name: '全国团体标准信息平台',
orderBy: '16'
},
{
url: 'http://www.autoinfo.org.cn/',
name: '中国汽车工业信息网',
orderBy: '17'
},
{
url: 'http://cv.ce.cn/',
name: '中国商用车辆网',
orderBy: '18'
},
{
url: 'http://www.cnspv.cn/',
name: '中国专用汽车网',
orderBy: '19'
},
{
url: 'http://scjgj.beijing.gov.cn/bsfw/bmfw/bzhzl/',
name: '北京市市场监督管理局',
orderBy: '20'
},
{
url: 'http://www.unece.org/',
name: '欧盟经济委员会',
orderBy: '21'
},
{
url: 'https://eur-lex.europa.eu',
name: '欧盟',
orderBy: '22'
},
{
url: 'http://ec.europa.eu',
name: '欧共体',
orderBy: '23'
},
{
url: 'https://www.iso.org',
name: 'ISO',
orderBy: '24'
},
{
url: 'https://www.interregs.net/',
name: 'InterRegs',
orderBy: '25'
}
]
}
},
methods: {
//头部新增按钮
addLink () {
this.type = 1
this.dialogTitle = '新增链接'
this.modalshowflag = true
},
// //头部顺序调整按钮
// linkOrder () {
// this.$http.post('sarUrl/tsUrl/order',{
// urlId: this.sarStandardsInfoEO.url
// })
// },
//头部删除按钮
deleteAllLink(row) {
if (this.selectList.length === 0) {
this.$message.warning('请选择要删除的链接')
} else {
this.modalRole = true
// this.nodeList = this.selectList[0].idList
this.$http.delete('sarUrl/tsUrl/deleteBatch', {
id: this.selectList.id
}, {}, res => {
if (res.ok) {
this.$message.success('删除成功')
this.getLink()
}
})
}
},
//弹窗关闭操作
resetForm () {
this.$refs['sarStandardsInfoForm'].resetFields();
this.modalshowflag = false
},
//弹窗确认操作
submit () {
this.$refs['sarStandardsInfoForm'].validate((valid) => {
if (valid) {
if (this.type === 1) {
this.$http.post('sarUrl/tsUrl/add', {
name: this.sarStandardsInfoEO.name,
url: this.sarStandardsInfoEO.url,
}, {
_this: this,
loading: 'Loading'
}, res=> {
if (res.ok) {
this.$message.success('新增成功')
this.modalshowflag = false
this.getLink()
} else {
this.$message.warning(res.message)
}
})
} else {
this.$http.put('sarUrl/tsUrl/edit', {
id: this.editId,
name: this.sarStandardsInfoEO.name,
url: this.sarStandardsInfoEO.url,
}, {
_this: this,
loading: 'Loading'
}, res=> {
if (res.ok) {
this.$message.success('修改成功')
this.modalshowflag = false
this.getLink()
} else {
this.$message.warning(res.message)
}
})
}
} else {
return false;
}
});
},
//表格中操作列
handleCommand (command) {
switch (command[1]) {
case '删除':
this.deleteLink(command[0])
break
case '编辑':
this.editLink(command[0])
break
}
},
//表格中操作列删除操作弹窗
deleteLink (row) {
this.$http.delete('sarUrl/tsUrl/delete', {
id: row.id
}, {}, res => {
if (res.ok) {
this.$message.success('删除成功')
this.getLink()
}
})
},
//表格中操作列编辑操作弹窗
editLink (row) {
this.type = 2
this.editId = row.id
this.sarStandardsInfoEO.name = row.name
this.sarStandardsInfoEO.url = row.url
this.sarStandardsInfoEO.orderBy = row.orderBy
this.dialogTitle = '修改链接'
this.modalshowflag = true
},
//多选框选择
handleSelectionChange (val) {
this.selectList = val
},
// 获取链接数据
getLink () {
this.$http.get('sarUrl/tsUrl', {}, {
_this: this,
loading: 'Loading'
}, res=> {
this.data = res.data
console.log(data);
})
},
},
mounted() {
this.getLink();
}
}
</script>
<style lang="less" scoped>
@import '~@/assets/styles/mixins';
#post-manage {
height: 100%;
.content {
height: calc(~'100% - 53px')
}
.filter-tree {
height: calc(~'100% - 50px')
}
}
</style>
+20 -5
View File
@@ -5,6 +5,9 @@
<li v-for="(link, index) in linkList" :key="index">
<a @click="openLinkUrl(link.newWebSite)" v-html="link.webName"></a>
</li>
<li>
<router-link to="/linkManage">更多链接></router-link>
</li>
</ul>
</div>
</template>
@@ -41,16 +44,18 @@ export default {
newWebSite: 'http://www.mee.gov.cn/',
webName: '中华人民共和国生态环境部'
},
{
newWebSite: '',
webName: '更多链接>'
}
// {
// newWebSite: '',
// webName: '更多链接>'
// }
]
}
},
computed: {},
watch: {},
mounted() {},
mounted() {
this.getLink();
},
methods: {
// 跳转链接
openLinkUrl (linkUri) {
@@ -62,7 +67,17 @@ export default {
window.open('https://' + linkUri)
}
},
getLink () {
this.$http.get('sarUrl/tsUrl', {}, {
_this: this,
loading: 'Loading'
}, res=> {
this.data = res.data
console.log(data);
})
}
},
}
</script>
+33 -10
View File
@@ -3,15 +3,11 @@
<div class="nav-menu">
<div class="lattice">
<div class="menu-wrap">
<enter-card label="高级检索" path="/advancedSearch"></enter-card>
<enter-card label="个人中心" path="/collection"></enter-card>
<enter-card label="统计图表" path="/"></enter-card>
<enter-card label="国内法规" path="/domesticStandardsAndRegulations"></enter-card>
<enter-card label="国外法规" path="/foreignStandardsAndRegulations"></enter-card>
<enter-card label="标准清单" path="/accessStandardsAndRegulations"></enter-card>
<enter-card label="国内外政策" path="/"></enter-card>
<enter-card label="企业标准" path="/"></enter-card>
<enter-card label="标准预警" path="/standardWarning"></enter-card>
<enter-card v-for="(item, index) in list"
:key="index"
:label="item.label"
:path="item.path"
:class="list.length === 1 ? 'wx-card1' : (list.length == 2 ? 'wx-card2' :'')"></enter-card>
</div>
</div>
</div>
@@ -25,12 +21,32 @@
mixins: [],
data() {
return {
list: []
}
},
computed: {},
watch: {},
mounted() {},
mounted() {
this.getData()
},
methods: {
getData (){
this.$http.get('/sarPersonalCenter/sar-user-personal-menu/getList',
{
userId: this.$store.getters.userInfo.userId
}, {_this: this}, res => {
if (res.ok) {
res.data.records.forEach( item => {
if (item.state == 1) {
var json = {}
json.label = item.menuName
json.path = item.menuUrl
this.list.push(json)
}
})
}
})
},
toPage() {
this.$router.push(this.path)
}
@@ -42,6 +58,7 @@
.nav-menu {
.lattice {
.menu-wrap {
height: 324px;
display: flex;
flex-wrap: wrap;
justify-content:space-between;
@@ -55,6 +72,12 @@
width: 32%;
margin: 0 0 10px 0;
}
.wx-card1 {
width: 100%;
}
.wx-card2 {
width: 49%;
}
.menu-item {
flex: 1;
line-height: 88px;
+120 -2
View File
@@ -7,7 +7,7 @@
</div>
<ul>
<li v-for="item in toDoTaskList" :key="item.id" class="time-title">
<a>{{ item.prcName }}</a>
<a @click="dealWith(item)">{{ item.prcName }}</a>
</li>
</ul>
</div>
@@ -48,7 +48,125 @@ export default {
},
toPage() {
this.$router.push(this.path)
}
},
dealWith (row) { // 办理
// this.setHandleInfo(JSON.stringify(row))
const prcType = row.prcType
switch(prcType) {
case '1':
if (row.taskInfo === '标准法规业务经理审批') {
this.$router.push({
name: 'bzrkStep2',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}else if (row.taskInfo === '责任人会签'){
this.$router.push({
name: 'bzrkStep3',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}else if (row.taskInfo === '申请人修订'){
this.$router.push({
name: 'bzrkStep4',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
case '2':
if (row.taskInfo === '责任对接人选择责任人') {
this.$router.push({
name: 'bzdyStep2',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
} else if (row.taskInfo === '责任人上传调研结果') {
this.$router.push({
name: 'bzdyStep3',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
break;
//标准清单更新/发布流程
case'4' :
if (row.taskInfo === '进行会签,填写意见') {
this.$router.push({
name: 'bzqdfbStep2',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
} else if (row.taskInfo === '根据会签意见修订') {
this.$router.push({
name: 'bzqdfbStep3',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}else if (row.taskInfo === '业务经理审批') {
this.$router.push({
name: 'bzqdfbStep4',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
break;
//项目合规评估流程
case '5' :
if(row.taskInfo === ''){
this.$router.push({
name: '',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
}
},
},
}
</script>
+12 -12
View File
@@ -21,21 +21,21 @@
class="home-tabs"
@tab-click="handleTabClick"
>
<el-tab-pane label="外部会议资料" name="conferenceMaterials">
<conference-materials></conference-materials>
</el-tab-pane>
<el-tab-pane label="会议通知" name="noticeOfMeeting">
<notice-of-meeting></notice-of-meeting>
</el-tab-pane>
<!-- <el-tab-pane label="外部会议资料" name="conferenceMaterials">-->
<!-- <conference-materials></conference-materials>-->
<!-- </el-tab-pane>-->
<!-- <el-tab-pane label="会议通知" name="noticeOfMeeting">-->
<!-- <notice-of-meeting></notice-of-meeting>-->
<!-- </el-tab-pane>-->
<el-tab-pane label="标准征求意见" name="solicitOpinions">
<solicitOpinions></solicitOpinions>
</el-tab-pane>
<el-tab-pane label="标准发布" name="release">
<release></release>
</el-tab-pane>
<el-tab-pane label="外部资讯" name="realTimeInfo">
<realTimeInfo></realTimeInfo>
</el-tab-pane>
<!-- <el-tab-pane label="标准发布" name="release">-->
<!-- <release></release>-->
<!-- </el-tab-pane>-->
<!-- <el-tab-pane label="外部资讯" name="realTimeInfo">-->
<!-- <realTimeInfo></realTimeInfo>-->
<!-- </el-tab-pane>-->
</el-tabs>
</div>
</div>
+7 -7
View File
@@ -31,8 +31,8 @@
</table-tools-bar>
<div class="content">
<div class="action-bar">
<el-button size="mini" v-btn-permission="'HS9BVNTNX2PNRRWL42AW'" @click="contrastStandFile" style="width:77px; height:32px;">比对</el-button>
<el-button size="mini" v-btn-permission="'Z9SMGAUX2JA3X3CTVVCP'" @click="batchDelete"><i class="iconfont">&#xe61b;</i>批量删除</el-button>
<el-button size="mini" v-btn-permission="''" @click="contrastStandFile" style="width:77px; height:32px;">比对</el-button>
<el-button size="mini" v-btn-permission="''" @click="batchDelete"><i class="iconfont">&#xe61b;</i>批量删除</el-button>
</div>
<div class="table-wrap">
<div style="position: absolute;height: calc(100% - 10px);width: 100%;">
@@ -120,19 +120,19 @@
<el-dropdown trigger="click" @command="handleCommand">
<i class="iconfont">&#xe61e;</i>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item v-btn-permission="'C6P4Z2E7MJ5RBTYCS554'" :command="[scope.row, '查看']">查看</el-dropdown-item>
<el-dropdown-item v-btn-permission="'Z9SMGAUX2JA3X3CTVVCP'" :command="[scope.row, '删除']">删除</el-dropdown-item>
<el-dropdown-item v-btn-permission="'WEJNHYG4J5ETSA9VFJWP'" :command="[scope.row, '分享']">分享</el-dropdown-item>
<el-dropdown-item v-btn-permission="''" :command="[scope.row, '查看']">查看</el-dropdown-item>
<el-dropdown-item v-btn-permission="''" :command="[scope.row, '删除']">删除</el-dropdown-item>
<el-dropdown-item v-btn-permission="''" :command="[scope.row, '分享']">分享</el-dropdown-item>
<el-dropdown-item
v-if="scope.row.collectBtn"
v-btn-permission="'UGBLFYXKA78BHHJSNSER'"
v-btn-permission="''"
:command="[scope.row, '收藏']"
>
收藏
</el-dropdown-item>
<el-dropdown-item
v-else
v-btn-permission="'UGBLFYXKA78BHHJSNSER'"
v-btn-permission="''"
:command="[scope.row, '取消收藏']"
>
取消收藏
@@ -6,23 +6,19 @@
<el-transfer
:data="data"
v-model="value"
:titles="['可选模块','个人模块']"
:titles="['可选模块','个人展示模块']"
@change="handleChange"
@left-check-change="selectedChange"
@right-check-change="selectedChange"
filterable>
</el-transfer>
<div class="btn-group">
<!-- <div class="button-wrapper">-->
<!-- <el-button type="primary" size="small" class="searchAngNewBtn" @click="reloadMockData(1)">{{$t('m.moveUp')}}</el-button>-->
<!-- <el-button type="primary" size="small" class="searchAngNewBtn" @click="reloadMockData(2)" style="margin-left: 0.5rem;">{{$t('m.moveDown')}}</el-button>-->
<!-- </div>-->
</div>
</div>
</div>
<el-divider></el-divider>
<div class="footer">
<el-button type="primary" size="small" class="searchAngNewBtn" v-btn-permission="'NQDDVW8JW3EUVAEXZH3F'" @click="savePersonal">保存修改</el-button>
<el-button type="primary" size="small" class="searchAngNewBtn" @click="savePersonal">保存修改</el-button>
</div>
</div>
</template>
@@ -47,47 +43,40 @@ export default {
listStyle: {
width: '5rem',
height: '8rem'
}
},
oldData: []
}
},
methods: {
// 右侧列表元素变化时触发
handleChange (newTargetKeys, direction, moveKeys) {
this.targetKeys = newTargetKeys
this.numData = []
if (newTargetKeys.length > 9) {
this.$message.warning('个人展示模块最多仅能展示9个')
}
if (direction === 'left') {
this.oldData.forEach( item => {
moveKeys.forEach( items => {
if (items === item.id) {
item.state = 0
}
})
})
} else if (direction === 'right'){
this.oldData.forEach( item => {
moveKeys.forEach( items => {
if (items === item.id) {
item.state = 1
}
})
})
}
this.targetKeys = newTargetKeys
this.numData = []
},
selectedChange (sourceSelectedKeys, targetSelectedKeys) {
this.numData = sourceSelectedKeys
this.sourceSelectedKeys = targetSelectedKeys
},
renderPersonal (item) {
return item.label
},
// 上移,下移
reloadMockData (flag) {
if (this.numData.length > 1 || this.numData.length === 0) {
this.$message({
message: '选择个人板块一条板块进行上移下移操作',
type: 'warning'
})
} else {
// numData : 选中的值
let num = this.targetKeys.indexOf(this.numData[0])
if (flag === 1) {
// 1表示上移
if (num > 0) {
this.value.splice(num, 1)
this.value.splice(num - 1, 0, this.numData[0])
}
} else {
// 2表示下移
this.targetKeys.splice(num, 1)
this.targetKeys.splice(num + 1, 0, this.numData[0])
// targetKeys 变了
// this.data = JSON.stringify(this.targetKeys)
}
}
},
savePersonal () {
if (this.targetKeys.length === 0) {
this.$message({
@@ -95,10 +84,14 @@ export default {
type: 'warning'
})
return
} else if (this.targetKeys.length > 9) {
this.$message.warning('个人展示模块最多仅能展示9个')
return
}
this.$http.post('person/personModuleUser/insertModule',
this.$http.postData('sarPersonalCenter/sar-user-personal-menu/update',
{
moduleIds: this.targetKeys
sarUserPersonalMenus: this.oldData,
userId: this.$store.getters.userInfo.userId
}, {
_this: this
}, res => {
@@ -113,16 +106,14 @@ export default {
},
// 获取模块
selectPersonConf () {
this.$http.get('person/personModule/queryByList',
this.$http.get('/sarPersonalCenter/sar-user-personal-menu/getList',
{
userId: this.$store.getters.userInfo.userId
}, {_this: this}, res => {
res.data.map((item) => {
if (item.moduleName === '首页') {
res.data.records.map((item) => {
if (item.menuName === '首页') {
this.selected.push(item)
} else if (item.moduleName === '待办任务') {
this.selected.push(item)
} else if (item.flag === '0') {
} else if (item.state == 1) {
this.selected.push(item)
}
})
@@ -132,16 +123,17 @@ export default {
}
// 左侧数据会筛选出右侧数据进行显示
var j
for (j = 0; j < res.data.length; j++) {
for (j = 0; j < res.data.records.length; j++) {
let moduleLabel = {}
moduleLabel = res.data[j].moduleName
moduleLabel = res.data.records[j].menuName
let moduleid = {}
moduleid = res.data[j].id
moduleid = res.data.records[j].id
this.data.push({
label: moduleLabel,
key: moduleid,
disabled: moduleLabel === '首页' || moduleLabel === '待办任务'
disabled: moduleLabel === '首页'
})
this.oldData = JSON.parse(JSON.stringify(res.data.records))
}
this.value = this.targetKeys
}, e => {
@@ -260,16 +260,16 @@ export default {
},
roleFormRules: {
dockUserName: [
{ required: true, message: '请输入调研标题', trigger: 'change' },
{ required: true, message: '请选择责任部门对接人', trigger: 'change' },
],
ministerUserName: [
{ required: true, message: '请输入调研标题', trigger: 'change' },
{ required: true, message: '请选择标准法规部部长', trigger: 'change' },
],
directorUserName: [
{ required: true, message: '请输入调研标题', trigger: 'change' },
{ required: true, message: '请选择技术管理中心主任', trigger: 'change' },
],
presidentUserName: [
{ required: true, message: '请输入调研标题', trigger: 'change' },
{ required: true, message: '请选择工程研究院院长', trigger: 'change' },
]
},
fileUrl: 'api/att/attFile/upload',
@@ -7,7 +7,7 @@
</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 class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">人员信息</div>
</div>
<div class="content" v-if="active == '1'">
<div style="flex: auto; overflow: auto">
@@ -15,7 +15,9 @@
<template slot="title">基础信息</template>
</process-title>
<el-form
ref="qdfbForm"
:model="listForm"
:rules="formRules"
class="label-input-form prc-content-border"
label-width="150px"
>
@@ -51,9 +53,9 @@
clearable
></el-input>
</el-form-item>
<el-form-item label="附件" prop="enclosure" class="add-form-item form-item-disabled">
<el-form-item label="附件" prop="fileId" class="add-form-item form-item-disabled">
<el-upload
v-if="listForm.enclosure == 'null' || this.listForm.enclosure== 'undefined' || this.listForm.enclosure == '' "
v-if="listForm.fileId == null || this.listForm.fileId== 'undefined' || this.listForm.fileId == '' "
:action="uploadFileListPath"
show-file-list
:file-list="fileInfoList"
@@ -69,11 +71,11 @@
</el-upload>
<el-input
v-else
v-model="listForm.enclosure"
v-model="listForm.fileId"
placeholder=""
></el-input>
</el-form-item>
<el-form-item label="会签" prop="sign" class="add-form-item form-item-disabled">
<el-form-item label="会签" prop="sign" class="add-form-item form-item-disabled">
<el-radio-group v-model="signFlag" @change="selectSign">
<el-radio label="1"></el-radio>
<el-radio label="2"></el-radio>
@@ -94,8 +96,9 @@
<el-table
:data="dataList"
border
ref="selection"
height="49%"
style="width: 100%"
style="width: 100%;"
@selection-change="selectStandChange"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}">
@@ -110,8 +113,11 @@
width="180px"
label="标准号">
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}</a>
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
@@ -127,13 +133,11 @@
</el-table-column>
<el-table-column
prop="xcxssrq"
sortable
label="新车型实施日期">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zccssrq"
sortable
label="在产车实施日期">
</el-table-column>
<el-table-column
@@ -145,7 +149,7 @@
</el-table>
</div>
</div>
<div class="content" v-if="active === '2'">
<div class="content" v-show="active === '2'">
<div class="block" style="padding-top: 20px;">
<el-timeline>
<el-form
@@ -164,25 +168,27 @@
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="选择责任人进行会签" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
<el-timeline-item timestamp="选择会签责任人,填写意见" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="dockUserName" style="margin-bottom: 0">
<h4>填写会签意见</h4>
<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 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-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>
<el-input v-model="roleForm.ministerUserName" placeholder="选择标准/政策法规工程师"
@click.native="choiceZRR('ministerUser', '选择标准法规部部长', roleForm.ministerUser)"></el-input>
</div>
</el-form-item>
</el-card>
@@ -193,7 +199,8 @@
<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>
<el-input v-model="roleForm.directorUserName" placeholder="选择业务经理"
@click.native="choiceZRR('directorUser', '选择技术管理中心主任', roleForm.directorUser)"></el-input>
</div>
</el-form-item>
</el-card>
@@ -455,7 +462,6 @@
@pageSizeChange="pageSizeChange"
/>
</div>
</div>
<div class="demo-drawer-footer">
<el-button size="mini" @click="closeDrawer">取消</el-button>
@@ -469,62 +475,75 @@
size="900px"
custom-class="demo-drawer"
>
<el-table
:data="standardData"
tooltip-effect="dark"
style="width: 100%"
border
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
<div class="demo-drawer-content">
<div style="position: absolute;bottom: 48px;top:60px;left: 0;right: 0">
<div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0">
<el-table
:data="standardData"
tooltip-effect="dark"
style="width: 100%"
border
ref="table"
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>
<el-table-column
prop="content"
label="标准号"
>
</el-table-column>
<el-table-column
prop="deptName"
label="中文名称"
>
</el-table-column>
<el-table-column
prop="deptName"
label="英文名称"
>
</el-table-column>
<el-table-column
prop="deptName"
label="发布日期"
>
</el-table-column>
<el-table-column
prop="deptName"
label="新车型实施日期"
>
</el-table-column>
<el-table-column
prop="deptName"
label="在产车实施日期"
>
</el-table-column>
<el-table-column
prop="deptName"
label="适用车型"
>
</el-table-column>
<el-table-column
prop="deptName"
label="文本状态"
>
</el-table-column>
</el-table>
@selection-change="selectThree"
>
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="code"
fixed="left"
label="标准号">
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
label="标准名称"
>
</el-table-column>
<el-table-column
prop="issueTime"
label="发布日期">
</el-table-column>
<el-table-column
prop="xcxssrq"
label="新车型实施日期">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zccssrq"
label="在产车实施日期">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="textStatus"
label="文本状态">
</el-table-column>
</el-table>
</div>
<pagination
:page="pageNo"
:pageSize="pageSizeNo"
:total="totalNo"
@pageChange="pageChangeNo"
@pageSizeChange="pageSizeChangeNo"
/>
</div>
</div>
<div class="demo-drawer-footer">
<el-button size="mini" @click="cancelStand">取消</el-button>
<el-button type="primary" size="mini" @click="okStand">添加</el-button>
</div>
</el-drawer>
<ProcessFooter
@@ -536,7 +555,7 @@
@submit="handleSubmit"
>
</ProcessFooter>
<!-- 选择责任人-->
<!-- 选择责任人-->
<el-drawer
:title="drawerTitle"
:visible.sync="modalshowflag"
@@ -559,7 +578,9 @@
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-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>
@@ -582,43 +603,53 @@ export default {
},
data() {
return {
standList: [], //新添加的标准
modalshowflag: false, // drawer开关
drawerTitle: '', //drawer标题
drawerTitle: "", //drawer标题
nodeList: [],
defaultProps: {
children: 'children',
label: 'name'
children: "children",
label: "name"
},
roleForm: {
startUserName: this.$store.getters.userInfo.account,
startUserName: this.$store.getters.userInfo.userName,
startUser: this.$store.getters.userInfo.id,
dockUser: '',
responUserList: '',
ministerUser: '',
directorUser: '',
presidentUser: '',
dockUserName: '',
responUserListName: '',
ministerUserName: '',
directorUserName: '',
presidentUserName: ''
dockUser: "",
responUserList: "",
ministerUser: "",
directorUser: "",
presidentUser: "",
dockUserName: "",
responUserListName: "",
ministerUserName: "",
directorUserName: "",
presidentUserName: ""
},
formRules: {
listType: [
{ required: true, message: "请选择清单类型", trigger: "blur" }
],
listName: [
{ required: true, message: "请填写清单名称", trigger: "change" }
]
},
roleFormRules: {
dockUserName: [
{ required: true, message: '请选择会签责任人', trigger: 'blur' },
],
// dockUserName: [
// { required: true, message: "请选择会签责任人", trigger: "blur" }
// ],
ministerUserName: [
{ required: true, message: '请选择修订责任人', trigger: 'blur' },
{ required: true, message: "请选择修订责任人", trigger: "blur" }
],
directorUserName: [
{ required: true, message: '请选择审批责任人', trigger: 'blur' },
],
{ required: true, message: "请选择审批责任人", trigger: "blur" }
]
},
dataList: [],//清单里的标准数据
sarAccessListDatas: [], //国家地区清单表格
uploadFileListPath: 'api/att/attFile/upload', // 上传的地址
uploadFileListPath: "api/att/attFile/upload", // 上传的地址
fileInfoList: [], // 上传的附件
standardData: [], //添加标准数据
standardData1: [], //添加标准数据
ListModel: false, //选择清单抽屉状态
standModel: false, // 选择标准抽屉状态
active: "1",
@@ -633,15 +664,18 @@ export default {
page: 1,
total: 0,
pageSize: this.$store.getters.userInfo.configContent,
pageNo: 1,
totalNo: 0,
pageSizeNo: this.$store.getters.userInfo.configContent,
listForm: {
listType: "", //区分是哪个清单
listName: "", //清单名称
applyRegion: "", //适用区域
descriptionList: "", //清单说明
enclosure: "", //附件
fileId: "", //附件
standId: "", //选择的清单的id
signFlag: "1", //是否会签 1为会签 2为不会签
inforlist:"" , //用来存放标准列表的标准id
inforlist: "", //用来存放标准列表的标准id
dataList: [{
code: "", //标准号
standName: "", //标准名称
@@ -663,24 +697,24 @@ export default {
};
},
methods: {
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
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
this.modalshowflag = false;
},
cancleUserInfo () {
this.modalshowflag = false
cancleUserInfo() {
this.modalshowflag = false;
},
//tab发生变化
handleTabs(name) {
@@ -689,21 +723,21 @@ export default {
choiceShow() {
this.ListModel = 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]
// }
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];
}
},
//判断当前是否会签
selectSign (type) {
if(type ==='1'){
this.listForm.signFlag = 1
}else if(type == '2'){
this.listForm.signFlag = 2
selectSign(type) {
if (type === "1") {
this.listForm.signFlag = 1;
} else if (type == "2") {
this.listForm.signFlag = 2;
}
},
// //判断当前选中的是哪个清单
@@ -746,13 +780,13 @@ export default {
});
}
},
//点击新增事件
//点击添加事件
addList() {
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", "", {
_this: this
}, res => {
console.log(res);
this.standardData = res.data.list;
this.totalNo = res.data.pageCount
}, e => {
});
this.standModel = true;
@@ -786,62 +820,74 @@ export default {
},
//保存事件
handleSave() {
this.saveLoading = true
let _formData = new FormData()
_formData.append('createUser', this.$store.getters.userInfo.userId)
_formData.append('createUserName', this.$store.getters.userInfo.uName)
_formData.append('prcType', this.$route.query.type)
_formData.append('json', JSON.stringify({
this.saveLoading = true;
let _formData = new FormData();
_formData.append("createUser", this.$store.getters.userInfo.userId);
_formData.append("createUserName", this.$store.getters.userInfo.uName);
_formData.append("prcType", this.$route.query.type);
_formData.append("json", JSON.stringify({
prcForm: this.prcForm,
sarAccessInfoList: this.sarAccessInfoList,
sarAccessInfoListADMIN: this.sarAccessInfoListADMIN,
bzqdForm: this.bzqdForm,
listInfo: this.listInfo,
id: this.id
}))
}));
saveTaskFirst(_formData).then(res => {
this.saveLoading = false
this.$message.success('保存成功')
this.saveLoading = false;
this.$message.success("保存成功");
}).catch(e => {
this.saveLoading = false
})
this.saveLoading = false;
});
},
//提交事件
handleSubmit() {
let json = this.listForm
json.zrUserId = this.$store.getters.userInfo.userId
json.jlUserId = this.$store.getters.userInfo.userId
json.applyUpdUserId = this.$store.getters.userInfo.userId
json.approvalOpinion = ''
json.prcCreateUser = this.$store.getters.userInfo.userId
json.prcCreateUserName = this.$store.getters.userInfo.account
json.standName = this.listForm.listName
json.standId = this.listForm.standId
this.$http.get('lawss/activiti/startProcess' , {type: '4'}, {
_this: this
}, res => {
if(res.ok){
this.$http.post('lawss/activiti/completeTask',{
taskIds: res.data,
userId : this.$store.getters.userInfo.userId,
json: JSON.stringify(json)
},{
_this: this
}, res => {
if(res.success) {
this.$message.success(res.message)
this.$router.push('/processCenter')
}
})
}
})
let json = this.listForm;
json.zrUserId = this.$store.getters.userInfo.userId;
json.jlUserId = this.$store.getters.userInfo.userId;
json.applyUpdUserId = this.$store.getters.userInfo.userId;
json.approvalOpinion = "";
json.prcCreateUser = this.$store.getters.userInfo.userId;
json.prcCreateUserName = this.$store.getters.userInfo.account;
json.standName = this.listForm.listName;
json.standId = this.listForm.standId;
this.$refs["qdfbForm"].validate((valid) => {
if (valid) {
this.$refs["Form"].validate((valid) => {
if (valid) {
this.$http.get("lawss/activiti/startProcess", { type: "4" }, {
_this: this
}, res => {
if (res.ok) {
this.$http.post("lawss/activiti/completeTask", {
taskIds: res.data,
userId: this.$store.getters.userInfo.userId,
json: JSON.stringify(json)
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
});
}
});
} else {
return this.$message.warning("请完善人员信息");
}
});
} else {
return this.$message.warning("请完善基础信息");
}
});
},
// 删除上传的文件
delFileInfo (file, fileList) {
delFileInfo(file, fileList) {
// this.fileInfoList = fileList
},
// 上传文件成功回调
uploadBackSuccess (res, file, fileList) {
uploadBackSuccess(res, file, fileList) {
// if (res.ok) {
// this.fileInfoList = fileList
// this.fileInfoList[this.fileInfoList.length - 1].id = res.data.id
@@ -852,13 +898,41 @@ export default {
// }
},
//上传之前的钩子
beforeUpload () {
beforeUpload() {
},
//选择标准取消事件
//选择清单取消事件
closeDrawer() {
this.ListModel = false;
},
//添加标准取消事件
cancelStand() {
this.standModel = false;
},
//添加标准确定事件
okStand() {
let _this = this;
if (this.standList.length < 1) {
_this.$message.warning("请选择需要添加进清单的数据");
} else {
_this.standList.map(item => {
let newStand = false;
for (let itemKey of _this.dataList) {
if (item.id == itemKey.id) {
newStand = true;
break;
}
}
if (newStand) {
_this.$message.warning("请勿重复添加数据");
} else {
_this.dataList.push(item);
}
});
this.standardData = []
_this.standModel = false;
}
},
//选择清单确定事件
OkDrawer() {
if (this.selectedList.length === 1) {
@@ -870,27 +944,28 @@ export default {
for (let i = 0; i < this.selectedList.length; i++) {
bringData.push(deposit.get(this.selectedList[i]));
}
this.listForm.standId = bringData[0].id
this.listForm.standId = bringData[0].id;
this.listForm.listName = bringData[0].detailedListName;
this.listForm.applyRegion = bringData[0].applicationScope;
this.listForm.descriptionList = bringData[0].remark;
this.listForm.enclosure = bringData[0].detailedListName;
this.listForm.fileId = bringData[0].fileId;
this.ListModel = false;
this.$http.get('sarLawsAttrDetailedList/sar-laws-attr-detailed-list/selectLawsById', {id: bringData[0].id}, {
this.$http.get("sarLawsAttrDetailedList/sar-laws-attr-detailed-list/selectLawsById", { id: bringData[0].id }, {
_this: this
}, res => {
this.dataList = res.data
this.listForm.dataList = res.data
let formId = ""
this.dataList.forEach(item => {
if(this.dataList.length !== 0){
formId += ','
formId += item.id
}
})
this.listForm.inforlist = formId
if(res.data==null){
res.data=[]
}
this.dataList = res.data;
console.log(res.data);
this.listForm.dataList = res.data;
let formId = []
this.dataList.map(item => {
formId.push(item.id)
});
this.listForm.inforlist = formId.join(',');
}, e => {
})
});
} else if (this.selectedList.length > 1) {
this.$message.warning("只能选择一条数据进行带入");
} else {
@@ -903,6 +978,7 @@ export default {
for (let i = 0; i < data.length; i++) {
this.selectedList.push(data[i].id);
}
console.log(this.selectedList);
},
//标准表格选择框改变
selectStandChange(data) {
@@ -911,34 +987,45 @@ export default {
this.selectList.push(data[i].id);
}
},
selectThree() {
//添加标准select的改变
selectThree(data) {
this.standList = data;
},
choiceZRR (type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.type = type
this.drawerTitle = title
this.modalshowflag = true
choiceZRR(type, title, id) {
this.nodeList = [];
this.nodeList.push(id);
this.type = type;
this.drawerTitle = title;
this.modalshowflag = true;
},
getTree () {
// this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
// this.treeData = res.data
// })
getTree() {
this.$http.get("SarInstitution/institution/institutionAndUser", {}, {}, res => {
this.treeData = res.data;
});
},
pageChange(page) {
this.page = page;
this.searchData();
this.selectionList();
},
pageSizeChange(pageSize) {
this.pageSize = this.$store.getters.userInfo.configContent;
this.searchData();
}
this.selectionList();
},
pageChangeNo(page){
this.page = page
this.addList()
},
pageSizeChangeNo(pageSize){
this.pageSizeNo = this.$store.getters.userInfo.configContent;
this.addList()
},
},
computed: {},
mounted() {
this.selectionList()
this.selectionList();
this.selectSign();
this.getTree()
this.getTree();
for (let i = 0; i < this.dataList.length; i++) {
this.standMap.set(this.dataList[i].id, this.dataList[i]);
}
@@ -53,11 +53,16 @@
clearable
></el-input>
</el-form-item>
<el-form-item label="附件" prop="enclosure" class="add-form-item form-item-disabled">
<el-form-item label="附件" prop="fileId" class="add-form-item form-item-disabled">
<el-input
v-if="listForm.fileId == null || this.listForm.fileId== 'undefined' || this.listForm.fileId == '' "
placeholder="暂无数据"
>
</el-input>
<el-input
disabled
v-model="listForm.enclosure"
placeholder="暂无数据"
v-else
v-model="listForm.fileId"
placeholder=""
></el-input>
</el-form-item>
</el-col>
@@ -352,7 +357,6 @@ export default {
*/
getFormFieldList (item) {
this.$nextTick(() => {
console.log(item);
this.listForm = JSON.parse(JSON.stringify(item))
this.listForm.prcNum = this.prcNum
this.listForm.prcName = this.prcName
@@ -51,9 +51,9 @@
clearable
></el-input>
</el-form-item>
<el-form-item label="附件" prop="enclosure" class="add-form-item form-item-disabled">
<el-form-item label="附件" prop="fileId" class="add-form-item form-item-disabled">
<el-upload
v-if="listForm.enclosure == 'null' || this.listForm.enclosure== 'undefined' || this.listForm.enclosure == '' "
v-if="listForm.fileId == null || this.listForm.fileId== 'undefined' || this.listForm.fileId == '' "
:action="uploadFileListPath"
show-file-list
:file-list="fileInfoList"
@@ -69,7 +69,7 @@
</el-upload>
<el-input
v-else
v-model="listForm.enclosure"
v-model="listForm.fileId"
placeholder=""
></el-input>
</el-form-item>
@@ -215,62 +215,75 @@
size="900px"
custom-class="demo-drawer"
>
<el-table
:data="standardData"
tooltip-effect="dark"
style="width: 100%"
border
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
<div class="demo-drawer-content">
<div style="position: absolute;bottom: 48px;top:60px;left: 0;right: 0">
<div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0">
<el-table
:data="standardData"
tooltip-effect="dark"
style="width: 100%"
border
ref="table"
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>
<el-table-column
prop="content"
label="标准号"
>
</el-table-column>
<el-table-column
prop="deptName"
label="中文名称"
>
</el-table-column>
<el-table-column
prop="deptName"
label="英文名称"
>
</el-table-column>
<el-table-column
prop="deptName"
label="发布日期"
>
</el-table-column>
<el-table-column
prop="deptName"
label="新车型实施日期"
>
</el-table-column>
<el-table-column
prop="deptName"
label="在产车实施日期"
>
</el-table-column>
<el-table-column
prop="deptName"
label="适用车型"
>
</el-table-column>
<el-table-column
prop="deptName"
label="文本状态"
>
</el-table-column>
</el-table>
@selection-change="selectThree"
>
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="code"
fixed="left"
label="标准号">
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
label="标准名称"
>
</el-table-column>
<el-table-column
prop="issueTime"
label="发布日期">
</el-table-column>
<el-table-column
prop="xcxssrq"
label="新车型实施日期">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zccssrq"
label="在产车实施日期">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="textStatus"
label="文本状态">
</el-table-column>
</el-table>
</div>
<pagination
:page="pageNo"
:pageSize="pageSizeNo"
:total="totalNo"
@pageChange="pageChangeNo"
@pageSizeChange="pageSizeChangeNo"
/>
</div>
</div>
<div class="demo-drawer-footer">
<el-button size="mini" @click="cancelStand">取消</el-button>
<el-button type="primary" size="mini" @click="okStand">添加</el-button>
</div>
</el-drawer>
<ProcessFooter
@@ -301,6 +314,7 @@ export default {
data() {
return {
detailData: [],
standList: [], //新添加的标准
// 当前流程类型(1待办/2已办)
processType: 1,
loading: false,
@@ -323,6 +337,9 @@ export default {
page: 1,
total: 0,
pageSize: this.$store.getters.userInfo.configContent,
pageNo: 1,
totalNo: 0,
pageSizeNo: this.$store.getters.userInfo.configContent,
listForm: {
listName: "", //清单名称
applyRegion: "", //适用区域
@@ -368,16 +385,49 @@ export default {
handleTabs(name) {
this.active = name;
},
//点击新增事件
//点击添加事件
addList() {
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", "", {
_this: this
}, res => {
this.standardData = res.data.list;
this.totalNo = res.data.pageCount
}, e => {
});
this.standModel = true;
},
//添加标准select的改变
selectThree(data) {
this.standList = data;
},
//添加标准取消事件
cancelStand() {
this.standModel = false;
},
//添加标准确定事件
okStand() {
let _this = this;
if (this.standList.length < 1) {
_this.$message.warning("请选择需要添加进清单的数据");
} else {
_this.standList.map(item => {
let newStand = false;
for (let itemKey of _this.dataList) {
if (item.id == itemKey.id) {
newStand = true;
break;
}
}
if (newStand) {
_this.$message.warning("请勿重复添加数据");
} else {
_this.dataList.push(item);
}
});
this.standardData = []
_this.standModel = false;
}
},
// 点击批量删除事件
deleteList() {
if (this.selectList.length < 1) {
@@ -407,18 +457,18 @@ export default {
},
// 删除上传的文件
delFileInfo (file, fileList) {
// this.fileInfoList = fileList
this.fileInfoList = fileList
},
// 上传文件成功回调
uploadBackSuccess (res, file, fileList) {
// if (res.ok) {
// this.fileInfoList = fileList
// this.fileInfoList[this.fileInfoList.length - 1].id = res.data.id
// this.$message.success('上传成功')
// } else {
// this.$message.error(res.message)
// fileList.pop()
// }
if (res.ok) {
this.fileInfoList = fileList
this.fileInfoList[this.fileInfoList.length - 1].id = res.data.id
this.$message.success('上传成功')
} else {
this.$message.error(res.message)
fileList.pop()
}
},
//上传之前的钩子
beforeUpload () {
@@ -492,9 +542,6 @@ export default {
for (let i = 0; i < data.length; i++) {
this.selectList.push(data[i].id);
}
},
selectThree() {
},
pageChange(page) {
this.page = page;
@@ -503,7 +550,16 @@ export default {
pageSizeChange(pageSize) {
this.pageSize = this.$store.getters.userInfo.configContent;
this.searchData();
}
},
pageChangeNo(page){
this.page = page
this.addList()
},
pageSizeChangeNo(pageSize){
this.pageSizeNo = this.$store.getters.userInfo.configContent;
this.addList()
},
},
computed: {
listNoDataText () {
@@ -53,11 +53,17 @@
clearable
></el-input>
</el-form-item>
<el-form-item label="附件" prop="enclosure" class="add-form-item form-item-disabled">
<el-form-item label="附件" prop="fileId" class="add-form-item form-item-disabled">
<el-input
disabled
v-model="listForm.enclosure"
v-if="listForm.fileId == null || this.listForm.fileId== 'undefined' || this.listForm.fileId == '' "
v-model="listForm.fileId"
placeholder="暂无数据"
>
</el-input>
<el-input
v-else
v-model="listForm.fileId"
placeholder=""
></el-input>
</el-form-item>
</el-col>
@@ -7,13 +7,14 @@
</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 class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">人员信息</div>
</div>
<div class="content" v-if="active === '1'">
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto;">
<el-form
ref="bzzqyjForm"
:model="form"
:rules="formRules"
class="label-input-form"
label-width="210px"
>
@@ -27,25 +28,29 @@
<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-input
disabled
v-model="form.cid"
placeholder="请输入标准编号"
clearable
></el-input>
</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-input
disabled
v-model="form.cname"
placeholder="请输入标准名称"
clearable
></el-input>
</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="请选择结束日期">
disabled
v-model="form.endTime"
type="date"
placeholder="请选择结束日期">
</el-date-picker>
</el-form-item>
</el-col>
@@ -53,13 +58,27 @@
</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>
<div class="content" v-if="active === '2'">
<div class="content" v-show="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>
@@ -67,66 +86,66 @@
<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="流程发起人"/>
<el-input v-model="roleForm.startUserName" placeholder="流程发起人" disabled/>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="选择责任人" placement="top" :color="roleForm.dockUser ? '#66b1ff' : ''">
<el-timeline-item timestamp="指派责任人" placement="top" :color="roleForm.dockUserList ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="dockUserName" style="margin-bottom: 0">
<h4>责任对接人</h4>
<el-form-item prop="dockUserList" 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.dockUserList" style="display: none;"/>
<el-input
v-model="roleForm.dockUserName"
placeholder="选择责任人"
@click.native="choiceZRR('dockUser', '选择责任人', roleForm.dockUser)">
v-model="roleForm.dockUserListName"
placeholder="选择责任部门对接人"
@click.native="choiceZRRS">
</el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="填写意见" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
<el-timeline-item timestamp="审核征求意见" placement="top" :color="roleForm.ministerUser ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="mainUserName" style="margin-bottom: 0">
<h4>责任人</h4>
<el-form-item prop="ministerUser" 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.ministerUser" style="display: none;"/>
<el-input
v-model="roleForm.mainUserName"
placeholder="选择责任人·"
@click.native="choiceZRR('mainUser', '选择责任人', roleForm.mainUser)"
v-model="roleForm.ministerUserName"
placeholder="选择标准法规部部长·"
@click.native="choiceZRR('ministerUser', '选择标准法规部部长', roleForm.ministerUser)"
/>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="意见汇总并发起会签" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
<el-timeline-item timestamp="审定征求意见" placement="top" :color="roleForm.directorUser ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="engineerUserName" style="margin-bottom: 0">
<h4>标准法规工程师</h4>
<el-form-item prop="directorUser" 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.directorUser" style="display: none;"/>
<el-input
v-model="roleForm.engineerUserName"
placeholder="选择标准法规工程师"
@click.native="choiceZRR('engineerUser', '选择标准法规工程师', roleForm.engineerUser)"
v-model="roleForm.directorUserName"
placeholder="选择技术管理中心主任"
@click.native="choiceZRR('directorUser', '选择技术管理中心主任', roleForm.directorUser)"
/>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="审核" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
<el-timeline-item timestamp="批准征求意见" placement="top" :color="roleForm.presidentUser ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="checkUserName" style="margin-bottom: 0">
<h4>责任对接人标准法规部门负责人</h4>
<el-form-item prop="presidentUser" 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.presidentUser" style="display: none;"/>
<el-input
v-model="roleForm.checkUserName"
placeholder="选择责任对接人,标准法规部门负责人"
@click.native="choiceZRR('checkUser', '选择责任对接人,标准法规部门负责人', roleForm.checkUserName)"
v-model="roleForm.presidentUserName"
placeholder="选择工程研究总院院长"
@click.native="choiceZRR('presidentUser', '选择工程研究总院院长', roleForm.presidentUser)"
/>
</div>
</el-form-item>
@@ -152,42 +171,43 @@
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">
<!-- 顶部工具栏 -->
<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="table-wrap">
<div style="position: absolute;height: calc(100% - 10px);width: 100%;">
<el-table
@@ -216,6 +236,57 @@
</div>
</div>
</el-drawer>
<el-drawer
:title="drawerTitle"
:visible.sync="modalshowflag"
:wrapperClosable="false"
size="800px">
<el-tree
v-if="modalshowflag"
node-key="id"
style="height: 100%; overflow: auto;"
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>
<el-drawer
title="选择责任部门对接人"
:visible.sync="modalshowflag2"
:wrapperClosable="false"
size="800px">
<el-tree
v-if="modalshowflag2"
style="height: 100%; overflow: auto;"
node-key="id"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList2"
highlight-current
check-strictly
default-expand-all
:expand-on-click-node="false"
show-checkbox
ref="tree2">
</el-tree>
<div id="roleFormButton2" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo2">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo2">取消</el-button>
</div>
</el-drawer>
</div>
</template>
@@ -229,6 +300,7 @@ export default {
name: "bzzqyjStep1",
data() {
return {
commentText: '',
textarea: '', // 意见
title: '', // 新增抽屉标题
listModel: false, // 新增抽屉开关
@@ -241,6 +313,17 @@ export default {
endTime: '', // 结束日期
cname: '', // 名称
},
formRules: {
cid: [
{ required: true, message: '请输入标准编号', trigger: 'change' },
],
endTime: [
{ required: true, message: '请输入标准结束日期', trigger: 'change' },
],
cname: [
{ required: true, message: '请输入标准名称', trigger: 'change' },
],
},
// 标准征求意见数据可库
standCommonlySearch: {
categorg: '',
@@ -259,15 +342,41 @@ export default {
roleForm: {
startUserName: this.$store.getters.userInfo.userName,
startUser: this.$store.getters.userInfo.userId,
dockUser: '',
dockUserName: '',
mainUser: '',
mainUserName: '',
engineerUser: '',
engineerUserName: '',
checkUser: '',
checkUserName: '',
}
dockUserList: '',
dockUserListName: '',
ministerUser: '',
ministerUserName: '',
directorUser: '',
directorUserName: '',
presidentUser: '',
presidentUserName: '',
},
roleFormRules: {
dockUserList: [
{ required: true, message: '请选择责任部门对接人', trigger: 'change' },
],
ministerUser: [
{ required: true, message: '请选择标准法规部部长', trigger: 'change' },
],
directorUser: [
{ required: true, message: '请选择技术管理中心主任', trigger: 'change' },
],
presidentUser: [
{ required: true, message: '请选择工程研究院院长', trigger: 'change' },
]
},
treeData: [],
nodeList: [],
nodeList2: [],
type: '',
drawerTitle: '',
modalshowflag: false,
modalshowflag2: false,
defaultProps: {
children: 'children',
label: 'name'
},
roleRow: {},
}
},
components: {
@@ -276,6 +385,7 @@ export default {
ProcessTitle
},
mounted () {
this.getTree()
this.sarStandCompareHis()
this.tableHeight = $('.content').height() - 44
window.onresize = () => {
@@ -287,7 +397,6 @@ export default {
this.title = '标准征求意见库'
this.listModel = true
},
/** 标准征求意见库方法*
* **********************************************/
// 清空
@@ -348,7 +457,6 @@ export default {
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;
@@ -360,18 +468,107 @@ export default {
}
},
/*** **********************************************/
/** 流程节点负责人的选择 *****************************/
choiceZRR() {
// this.choice
choiceZRR (type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.type = type
this.drawerTitle = title
this.modalshowflag = true
},
getTree () {
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
this.treeData = res.data
})
},
saveUserInfo () {
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
},
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]
}
},
choiceZRRS () {
this.nodeList2 = []
if ( this.roleForm.dockUserList.length > 0) {
this.nodeList2 = this.roleForm.dockUserList.split(',')
}
this.modalshowflag2 = true
},
saveUserInfo2 () {
var idList = ''
var nameList = ''
this.$refs.tree2.getCheckedNodes().concat(this.$refs.tree2.getHalfCheckedNodes()).forEach( item => {
if (nameList.length > 0) {
nameList += ','
idList += ','
}
idList += item.id
nameList += item.name
})
this.roleForm.dockUserList = idList
this.roleForm.dockUserListName = nameList
this.modalshowflag2 = false
},
cancleUserInfo2 () {
this.modalshowflag2 = false
},
handleTabs(name) {
this.active = name
},
// 流程也的提交按钮和保存按钮操作
handleSave() {},
handleSubmit() {}
handleSubmit() {
this.$refs['bzzqyjForm'].validate((valid) => {
if (valid) {
this.$refs['Form'].validate((valid) => {
if (valid) {
this.$http.get('lawss/activiti/startProcess', {
type: '3'
}, {}, res => {
if (res.ok) {
var json = Object.assign(this.form, this.roleForm)
json.commentText = this.commentText
this.$http.post('lawss/activiti/completeTask', {
json: JSON.stringify(json),
taskId: res.data,
userId: this.$store.getters.userInfo.userId
}, {}, res => {
if (res.success) {
this.$message.success('流程发起成功')
this.$router.push('/processCenter')
}
})
} else {
this.$message.warning('流程启动失败')
}
})
} else {
return this.$message.warning('请完善人员信息')
}
})
} else {
return this.$message.warning('请完善基础信息')
}
})
}
}
}
</script>
@@ -412,7 +609,7 @@ export default {
display: flex;
flex-direction: column;
justify-content: space-between;
height: calc(~'100% - 103px');
height: calc(~'100% - 107px');
overflow: auto;
}
.standardForComments {
@@ -1,13 +1,300 @@
<template>
<div class="bzdyStep2">
<!-- 标准调研流程-->
<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="bzzqyjForm"
: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="24">
<el-form-item label="标准编号" prop="cid" class="add-form-item form-item-disabled">
<el-input
disabled
v-model="form.cid"
placeholder="请输入标准编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="标准名称" prop="cname" class="add-form-item form-item-disabled">
<el-input
disabled
v-model="form.cname"
placeholder="请输入标准名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="征求意见结束日期" prop="endTime" class="add-form-item form-item-disabled">
<el-date-picker
disabled
v-model="form.endTime"
type="date"
placeholder="请选择结束日期">
</el-date-picker>
</el-form-item>
<el-form-item label="责任人" prop="responUserList" class="add-form-item form-item-disabled">
<el-input
v-model="form.responUserList"
style="display: none;"
clearable
></el-input>
<el-input v-model="form.responUserListName" placeholder="请选择责任人" @click.native="choiceZRR"></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
:submitLoading="isSubmit"
:saveLoading="saveLoading"
@save="handleSave"
@submit="handleSubmit"
>
</ProcessFooter>
<el-drawer
title="选择责任人"
:visible.sync="modalshowflag"
:wrapperClosable="false"
size="800px">
<el-tree
v-if="modalshowflag"
style="height: 100%; overflow: auto;"
node-key="id"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
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>
export default {
name: "step2"
}
import ProcessHeader from '../../components/ProcessHeader'
import ProcessFooter from '../../components/ProcessFooter'
import ProcessTitle from '../../components/ProcessTitle'
import {inboundLiaisonDetail,processCreateStand} from 'api/process'
export default {
name: "bzzqyjStep2",
data() {
return {
commentText: '',
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId,
roleRow: {},
nodeList: [],
type: '',
defaultProps: {
children: 'children',
label: 'name'
},
treeData: [], // 人员数据
modalshowflag: false, // drawer开关
drawerTitle: '', //drawer标题
textarea: '', // 意见
ListModel: false, // 新增编辑抽屉开关
active: '1', // 默认显示
isSubmit: false,
saveLoading: false,
form: {
cid: '', // 编号
endTime: '', // 结束日期
cname: '', // 名称
responUserList: '',
responUserListName: ''
},
formRules: {
responUserList: [
{ required: true, message: '请选择责任人', trigger: 'change' },
]
},
json: {}
}
},
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle
},
methods: {
saveUserInfo () {
var idList = ''
var nameList = ''
this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes()).forEach( item => {
if (nameList.length > 0) {
nameList += ','
idList += ','
}
idList += item.id
nameList += item.name
})
this.form.responUserList = idList
this.form.responUserListName = nameList
this.modalshowflag = false
},
cancleUserInfo () {
this.modalshowflag = false
},
choiceZRR () {
this.nodeList = []
if (this.form.responUserList.length > 0) {
this.nodeList = this.form.responUserList.split(',')
}
this.modalshowflag = true
},
getTree () {
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
this.treeData = res.data
})
},
handleTabs(name) {
this.active = name
},
handleSave() {},
handleSubmit() {
this.$refs['bzzqyjForm'].validate((valid) => {
if (valid) {
var json = this.json
json.commentText = this.commentText
json.responUserList = this.form.responUserList
json.responUserListName = this.form.responUserListName
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 {
return 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.cid = data.cid
this.form.endTime = data.endTime
this.form.cname = data.cname
this.json = data
}).catch(e => {
})
})
},
},
mounted () {
this.getTree()
this.getData()
}
}
</script>
<style scoped>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.bzdyStep2 {
/deep/.el-drawer__container {
.prc-content-border {
border: none;
padding: 0 20px 0;
}
}
.fileClass {
cursor: pointer;
}
.fileClass:hover{
color: #0c91e5;
}
position: relative;
height: 100%;
.headerTabs {
height: 52px;
display: flex;
align-items: center;
position: absolute;
top: 0;
right: 10px;
.headerTabsItem {
border: 1px solid #c1c1c1;
padding: 0 5px;
height: 30px;
line-height: 30px;
cursor: pointer;
}
.active {
border: 1px solid #E6A23C;
color: #fff;
background: #E6A23C;
}
}
.content {
display: flex;
flex-direction: column;
justify-content: space-between;
height: calc(~'100% - 103px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
</style>
@@ -198,7 +198,7 @@
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectThree"
@selection-change="selectedChange"
>
<el-table-column type="selection" width="55" align="center"/>
<el-table-column prop="standId" label="标准号/标准名称"/>
@@ -316,6 +316,9 @@ export default {
ProcessFooter,
ProcessTitle
},
mounted () {
this.getTree()
},
methods: {
//点击新增事件
addList() {
@@ -367,27 +370,15 @@ export default {
//未符合项整合确定事件
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.dataList = this.selectedList
this.ListModel = false;
} else {
this.$message.warning("请选择至少一条数据进行带入");
}
},
selectThree() {},
selectedChange(val) {
this.selectedList = val
},
handleTabs(name) {
this.active = name
},
@@ -6,7 +6,6 @@
</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;">
@@ -16,18 +15,20 @@
<el-form :modal="dataList" inline class="label-input-form">
<el-form-item label="标准号/标准名称" class="search-item">
<el-input v-model="dataList.standId"
size="small"
placeholder="请输入"
clearable
:maxlength="100"></el-input>
</el-form-item>
<el-form-item label="项目名称" class="search-item">
<el-input v-model="dataList.productName"
size="small"
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-form-item label="责任部门" class="search-item">
<el-input v-model="dataList.responsibleUnit" v-show="false"/>
<el-popover
placement="bottom"
popper-class="user-dept-popper"
@@ -35,6 +36,7 @@
:value="false"
>
<el-input
size="small"
slot="reference"
v-model="dataList.responseUnitShow"
placeholder="根据责任部门查找"
@@ -60,7 +62,7 @@
class="common-button-primary"
size="mini"
v-btn-permission="'b3aaea6d18f5871b68825d3783eb736a'"
@click="getTableByPage('dataList')">
@click="getTableByPage">
查询
</el-button>
</el-form-item>
@@ -104,7 +106,12 @@
<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>
<el-input
v-model="scope.row.dutyPeople"
size="mini"
placeholder="请输入内容"
@click.native="choiceDuty"
/>
</span>
<span v-else>{{scope.row.dutyPeople}}</span>
</template>
@@ -126,74 +133,6 @@
</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
@@ -272,13 +211,6 @@ export default {
dutyEngineer: ''
}],
clearSelection: false,
selectedList: [], //未整改项的选择框
roleForm: {
startUserName: this.$store.getters.userInfo.userName,
startUser: this.$store.getters.userInfo.userId,
},
roleFormRules: {
},
nodeList: [],
drawerTitle: '', //drawer标题
modalshowflag: false, // drawer开关
@@ -340,22 +272,6 @@ export default {
},
]
},
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() {
@@ -398,14 +314,6 @@ export default {
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) {
@@ -429,27 +337,15 @@ export default {
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() {
this.getData()
},
// 清空 查询条件
clearAllSearch (search = true) {
@@ -513,19 +409,6 @@ export default {
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>
@@ -6,7 +6,6 @@
</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;">
@@ -15,16 +14,20 @@
</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-input
size="small"
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-input
size="small"
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" />
@@ -35,6 +38,7 @@
:value="false"
>
<el-input
size="small"
slot="reference"
v-model="dataList.responseUnitShow"
placeholder="根据责任部门查找"
@@ -81,7 +85,6 @@
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="条款号"/>
@@ -89,9 +92,21 @@
<el-table-column prop="planCloseTime" label="整改完成时间"/>
<el-table-column prop="responsibleUnit" label="责任部门"/>
<el-table-column prop="dutyEngineer" label="责任工程师"/>
<el-table-column label="选择责任人">
<el-table-column label="选择责任人" prop="dutyPeople" width="200">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="selectPeople(scope.row)">选择责任人</el-button>
<div style="display: inline;">
<el-input
class="input-button"
style="width: 60%"
:disabled="true"
v-model="scope.row.dutyPeople"
size="mini"
placeholder="请选择责任人"
/>
</div>
<div style="display: inline">
<el-button size="mini" type="primary" @click="selectPeople(scope.row)">选择</el-button>
</div>
</template>
</el-table-column>
</el-table>
@@ -111,74 +126,6 @@
</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
@@ -246,7 +193,8 @@ export default {
itemsName: '1',
planCloseTime: '1',
responsibleUnit: '1',
dutyEngineer: '1'
dutyEngineer: '1',
dutyPeople: '13123'
},{
standId: '',
productName: '',
@@ -254,30 +202,14 @@ export default {
itemsName: '',
planCloseTime: '',
responsibleUnit: '',
dutyEngineer: ''
dutyEngineer: '',
dutyPeople: ''
}],
// 当前页数
pageNo: 1,
total: 0,
myLoading: false,
newDataList: [],
// 责任部门
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开关
@@ -294,26 +226,13 @@ export default {
ProcessTitle
},
created() {
this.getTree()
},
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) {
// 选择责任人的按钮操作
selectPeople(val) {
this.newDataList = val
this.nodeList = []
this.modalshowflag = true
},
handleTabs(name) {
@@ -331,14 +250,6 @@ export default {
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) {
@@ -350,26 +261,15 @@ export default {
},
// 流程节点负责人抽屉保存按钮
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
}
// 选择责任人时input框内值
this.newDataList.dutyPeople = this.roleRow.name
this.modalshowflag = false
},
// 流程节点负责人抽屉取消按钮
cancleUserInfo () {
this.modalshowflag = false
},
//未整改项抽屉中的查询按钮
//查询按钮
getTableByPage() {
},
// 清空 查询条件
@@ -434,19 +334,6 @@ export default {
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>
@@ -6,7 +6,6 @@
</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;">
@@ -15,16 +14,20 @@
</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-input
size="small"
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-input
size="small"
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" />
@@ -35,6 +38,7 @@
:value="false"
>
<el-input
size="small"
slot="reference"
v-model="dataList.responseUnitShow"
placeholder="根据责任部门查找"
@@ -87,11 +91,27 @@
<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 prop="dutyPeople" 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
v-model="fileText"
ref="uploadFile"up
:action="uploadPath"
class="upload-demo"
:http-request="handleUpload"
:on-success="handleOnsuccess"
:on-error="handleOnError"
:before-upload="handleBeforeUpload"
:before-remove="handleBeforeRemove"
:on-remove="handleOnRemove"
:on-exceed="handleExceed"
:limit="10"
:file-list="uploadFileList"
list-type="picture"
:auto-upload="true"
>
<el-button type="text">上传佐证材料</el-button>
</el-upload>
</template>
</el-table-column>
@@ -112,74 +132,6 @@
</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
@@ -189,32 +141,6 @@
@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>
@@ -247,7 +173,8 @@ export default {
itemsName: '1',
planCloseTime: '1',
responsibleUnit: '1',
dutyEngineer: '1'
dutyEngineer: '1',
dutyPeople: '13123'
},{
standId: '',
productName: '',
@@ -255,38 +182,19 @@ export default {
itemsName: '',
planCloseTime: '',
responsibleUnit: '',
dutyEngineer: ''
dutyEngineer: '',
dutyPeople: '13123'
}],
// 当前页数
pageNo: 1,
total: 0,
myLoading: false,
// 上传路径
uploadPath: 'api/att/attFile/upload',
// 上传文件所储存的数组
uploadFileList: [],
// 责任部门
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: {
@@ -297,78 +205,36 @@ export default {
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
},
/************ 上传佐证材料 *****************/
// 上传材料
handleUpload() {},
// 文件上传成功
handleOnsuccess(res, file) {
this.$message.success('上传成功!')
console.log(file)
},
// 文件上传失败后回调
handleOnError(res, file) {},
// 文件上传限制条件
handleBeforeUpload() {},
// 移除上传的文件
handleBeforeRemove() {},
handleOnRemove() {},
// 文件超过限制数量提示
handleExceed() {
this.$message.error(``)
},
/************ ********* *****************/
// 保存按钮
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() {
},
@@ -434,19 +300,6 @@ export default {
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>
@@ -6,7 +6,6 @@
</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;">
@@ -15,16 +14,20 @@
</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-input
size="small"
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-input
size="small"
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" />
@@ -35,6 +38,7 @@
:value="false"
>
<el-input
size="small"
slot="reference"
v-model="dataList.responseUnitShow"
placeholder="根据责任部门查找"
@@ -108,74 +112,6 @@
</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
@@ -185,32 +121,6 @@
@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>
@@ -259,34 +169,9 @@ export default {
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: {
@@ -297,80 +182,13 @@ export default {
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() {
},
@@ -436,19 +254,6 @@ export default {
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,677 @@
<!--项目合规评估流程 xmpgStep1-->
<template>
<div class="xmpg-step1">
<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">
<process-title>
<template slot="title">基础信息</template>
</process-title>
<el-form
:model="listForm"
:rules="formRules"
class="label-input-form prc-content-border"
label-width="150px"
>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="选择标准" prop="orgName" class="add-form-item form-item-disabled">
<el-button size="mini" type="primary" style="margin-left: 10px;" @click="choiceShow">选择已拆分标准</el-button>
</el-form-item>
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.standNumber"
placeholder="请输入标准编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.standName"
placeholder="请输入标准名称"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<process-title>
<template slot="title">填写信息</template>
</process-title>
<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="addList">批量删除</el-button>
</div>
</div>
<el-table
:data="dataList"
border
ref="selection"
height="49%"
style="width: 100%;"
@selection-change="selectStandChange"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}">
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="productLine"
label="产品线">
</el-table-column>
<el-table-column
prop="projectManager"
label="产品线责任人">
</el-table-column>
<el-table-column
prop="ministerUser"
label="分发责任人">
<template>
<el-input
placeholder="请选择分发责任人"
v-model="ffzrr"
@click.native="choiceZRR('ministerUser', '请选择分发责任人', roleForm.ministerUser)"
>
</el-input>
</template>
</el-table-column>
</el-table>
</div>
</div>
<div class="content" v-show="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-form>
</el-timeline>
</div>
</div>
<!-- 选择已拆分标准抽屉-->
<el-drawer
title="选择已拆分标准"
:visible.sync="ListModel"
size="900px"
custom-class="demo-drawer"
>
<div class="demo-drawer-content">
<div style="position: absolute;bottom: 48px;top:60px;left: 0;right: 0">
<div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0">
<el-table
:data="sarAccessListDatas"
tooltip-effect="dark"
style="width: 100%"
border
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectListChange"
ref="selection"
>
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="code"
fixed="left"
label="标准号">
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
label="标准名称"
>
</el-table-column>
<el-table-column
prop="issueTime"
label="发布日期">
</el-table-column>
<el-table-column
prop="xcxssrq"
label="新车型实施日期">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zccssrq"
label="在产车实施日期">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="textStatus"
label="文本状态">
</el-table-column>
</el-table>
</div>
<pagination
:page="page"
:pageSize="pageSize"
:total="total"
@pageChange="pageChange"
@pageSizeChange="pageSizeChange"
/>
</div>
</div>
<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>
<!-- 添加抽屉-->
<el-drawer
title="添加产品线"
:visible.sync="standModel"
size="900px"
custom-class="demo-drawer"
>
<div class="demo-drawer-content">
<div style="position: absolute;bottom: 48px;top:60px;left: 0;right: 0">
<div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0">
<el-table
:data="productData"
tooltip-effect="dark"
style="width: 100%"
border
ref="table"
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>
<el-table-column
prop="productLine"
label="产品线">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="projectManager"
label="产品线责任人">
</el-table-column>
</el-table>
</div>
<pagination
:page="pageNo"
:pageSize="pageSizeNo"
:total="totalNo"
@pageChange="pageChangeNo"
@pageSizeChange="pageSizeChangeNo"
/>
</div>
</div>
<div class="demo-drawer-footer">
<el-button size="mini" @click="cancelStand">取消</el-button>
<el-button type="primary" size="mini" @click="okStand">添加</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 { saveTaskFirst } from "api/process";
export default {
name: "xmpgStep1",
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle
},
data() {
return {
ffzrr:'',
active: "1",
standModel: false,
sarAccessListDatas: [],
productData:[], //添加抽屉的数据
standList: [], //新添加的标准
modalshowflag: false, // drawer开关
drawerTitle: "", //drawer标题
nodeList: [],
defaultProps: {
children: "children",
label: "name"
},
roleForm: {
startUserName: this.$store.getters.userInfo.userName,
startUser: this.$store.getters.userInfo.id,
dockUser: "",
responUserList: "",
ministerUser: "",
directorUser: "",
presidentUser: "",
dockUserName: "",
responUserListName: "",
ministerUserName: "",
directorUserName: "",
presidentUserName: ""
},
formRules: {
listType: [
{ required: true, message: "请选择清单类型", trigger: "blur" }
],
listName: [
{ required: true, message: "请填写清单名称", trigger: "change" }
]
},
roleFormRules: {
// dockUserName: [
// { required: true, message: "请选择会签责任人", trigger: "blur" }
// ],
ministerUserName: [
{ required: true, message: "请选择修订责任人", trigger: "blur" }
],
directorUserName: [
{ required: true, message: "请选择审批责任人", trigger: "blur" }
]
},
ListModel: false, //选择拆分标准抽屉状态
isSubmit: false,
saveLoading: false,
selectedList: [], //拆分标准的选择框
dataList:[],
page: 1,
total: 0,
pageSize: this.$store.getters.userInfo.configContent,
pageNo: 1,
totalNo: 0,
pageSizeNo: this.$store.getters.userInfo.configContent,
product: new Map(),
listForm: {
standNumber: "", //标准编号
standName: "",//标准名称
dataList: [{
projectLine: '', //产品线
projectManager:'',//产品线责任人
ffzrr: '', //分发责任人
id: "",
sarStandProjectLibraries: [],
}]
},
choiceForm: {}, //选择标准清单列表
};
},
methods: {
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;
},
//tab发生变化
handleTabs(name) {
this.active = name;
},
choiceShow() {
this.ListModel = 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];
}
},
//导入功能
leading() {
},
//点击新增事件
addList() {
this.standModel = true;
},
//取消添加事件
cancelStand() {
this.standModel = false
},
//确认添加事件
okStand() {
if(this.standList.length >= 1){
this.dataList = this.standList
this.listForm.dataList = this.standList
this.standModel = false
}else{
this.$message.warning('请选择一条数据进行添加')
}
},
//保存事件
handleSave() {
this.saveLoading = true;
let _formData = new FormData();
_formData.append("createUser", this.$store.getters.userInfo.userId);
_formData.append("createUserName", this.$store.getters.userInfo.uName);
_formData.append("prcType", this.$route.query.type);
_formData.append("json", JSON.stringify({
prcForm: this.prcForm,
sarAccessInfoList: this.sarAccessInfoList,
sarAccessInfoListADMIN: this.sarAccessInfoListADMIN,
bzqdForm: this.bzqdForm,
listInfo: this.listInfo,
id: this.id
}));
saveTaskFirst(_formData).then(res => {
this.saveLoading = false;
this.$message.success("保存成功");
}).catch(e => {
this.saveLoading = false;
});
},
//提交事件
handleSubmit() {
let json = this.listForm;
json.zrUserId = this.$store.getters.userInfo.userId;
json.jlUserId = this.$store.getters.userInfo.userId;
json.applyUpdUserId = this.$store.getters.userInfo.userId;
json.approvalOpinion = "";
json.prcCreateUser = this.$store.getters.userInfo.userId;
json.prcCreateUserName = this.$store.getters.userInfo.account;
json.standName = this.listForm.listName;
json.standId = this.listForm.standId;
this.$http.get("lawss/activiti/startProcess", { type: "5" }, {
_this: this
}, res => {
if (res.ok) {
this.$http.post("lawss/activiti/completeTask", {
taskIds: res.data,
userId: this.$store.getters.userInfo.userId,
json: JSON.stringify(json)
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
});
}
});
},
//选择拆分标准取消事件
closeDrawer() {
this.ListModel = false;
},
//选择拆分标准确定事件
OkDrawer() {
if(this.selectedList.length == 1){
this.listForm.standNumber = this.selectedList[0].standNumber
this.listForm.standName = this.selectedList[0].standName
this.ListModel = false
}else if(this.selectedList.length > 1){
this.$message.warning('您只能选择一条数据进行带入')
}else{
this.$message.warning('请选择一条数据带入')
}
},
//选择拆分标准选择框改变
selectListChange(data) {
this.selectedList = data;
},
//标准表格选择框改变
selectStandChange(data) {
this.selectList = [];
for (let i = 0; i < data.length; i++) {
this.selectList.push(data[i].id);
}
},
//添加产品线select的改变
selectThree(data) {
this.standList = data;
},
choiceZRR(type, title, id) {
this.nodeList = [];
this.nodeList.push(id);
this.type = type;
this.drawerTitle = title;
this.modalshowflag = true;
},
getTree() {
this.$http.get("SarInstitution/institution/institutionAndUser", {}, {}, res => {
this.treeData = res.data;
});
},
pageChange(page) {
this.page = page;
},
pageSizeChange(pageSize) {
this.pageSize = this.$store.getters.userInfo.configContent;
},
pageChangeNo(page) {
this.pageNO = page;
},
pageSizeChangeNo(pageSize) {
this.pageSizeNo = this.$store.getters.userInfo.configContent;
},
//获取产品线数据
getProductData() {
this.$http.get('sarStandProjectLibrary/queryProjectManager','',{
_this: this
}, res => {
this.productData = res.data
// this.totalNo = res.data
}, e => {
})
},
//获取标准数据
getStandData() {
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage','',{
_this: this
}, res => {
this. sarAccessListDatas = res.data.list
this.total = res.pageCount
}, e => {
})
},
},
computed: {},
mounted() {
this.getTree();
this.getProductData()
this.getStandData()
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.xmpg-step1 {
/deep/ .el-drawer__container {
.prc-content-border {
border: none;
padding: 0 20px 0;
}
}
.choiceBtn {
.el-button--primary {
width: 150px;
}
}
position: relative;
height: 100%;
.headerTabs {
height: 52px;
display: flex;
align-items: center;
position: absolute;
top: 0;
right: 10px;
.headerTabsItem {
border: 1px solid #c1c1c1;
padding: 0 5px;
height: 30px;
line-height: 30px;
cursor: pointer;
}
.active {
border: 1px solid #E6A23C;
color: #fff;
background: #E6A23C;
}
}
.content {
display: flex;
flex-direction: column;
justify-content: space-between;
height: calc(~'100% - 103px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
.accessStandardsAndRegulations {
height: 100%;
}
}
}
.demo-drawer-content {
margin-top: 10px;
}
}
</style>
@@ -1,225 +0,0 @@
<template>
<div class="zqyjStep1">
<!-- 标准征求意见流程-->
<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="qbkwForm"
: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="12">
<el-form-item label="标准编号" prop="title" class="add-form-item form-item-disabled">
<el-select v-model="form.encodes" 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="title" class="add-form-item form-item-disabled">
<el-select v-model="form.names" 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="year" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.year"
type="year"
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-timeline-item timestamp="发起流程" placement="top" :color="user1 ? '#66b1ff' : ''">
<el-card>
<h4>流程发起人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="user1" placeholder="流程发起人"></el-input>
</div>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="选择责任人" placement="top" :color="user2 ? '#66b1ff' : ''">
<el-card>
<h4>责任对接人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="user2" placeholder="选择责任人">
</el-input>
</div>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="填写意见" placement="top" :color="user3 ? '#66b1ff' : ''">
<el-card>
<h4>责任人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="user3" placeholder="责任人"></el-input>
</div>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="意见汇总并发起会签" placement="top" :color="user4 ? '#66b1ff' : ''">
<el-card>
<h4>标准法规工程师</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="user4" placeholder="标准法规工程师"></el-input>
</div>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="审核" placement="top" :color="user5 ? '#66b1ff' : ''">
<el-card>
<h4>责任对接人标准法规部部门负责人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="user5" placeholder="责任对接人,标准法规部部门负责人"></el-input>
</div>
</el-card>
</el-timeline-item>
</el-timeline>
</div>
</div>
<ProcessFooter
show-save
show-submit
:submitLoading="isSubmit"
:saveLoading="saveLoading"
@save="handleSave"
@submit="handleSubmit"
>
</ProcessFooter>
</div>
</template>
<script>
import ProcessHeader from '../../components/ProcessHeader'
import ProcessFooter from '../../components/ProcessFooter'
import ProcessTitle from '../../components/ProcessTitle'
export default {
name: "zqyjStep1",
data() {
return {
textarea: '', // 意见
title: '', // 新增编辑抽屉标题
ListModel: false, // 新增编辑抽屉开关
active: '1', // 默认显示
isSubmit: false,
saveLoading: false,
form: {
encodes: '', // 编号
year: '', // 结束日期
names: '', // 名称
},
data: [], // 标准列表数据
ListForm: {}, // 新增数据
user1: '',
user2: '',
user3: '',
user4: '',
user5: '',
}
},
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle
},
methods: {
closeDrawer() {
this.ListModel = false
},
OkDrawer() {
this.ListModel = false
var item = {
remarks: '123'
}
this.data.push(item)
},
addList() {
this.title = '新增标准'
this.ListModel = true
},
handleTabs(name) {
this.active = name
},
handleSave() {},
handleSubmit() {}
},
mounted () {}
}
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.zqyjStep1 {
/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;
.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>
@@ -10,7 +10,8 @@
<div class="process-name" @click="handleCreateProcess('4')">标准需求(翻译)申请流程</div>
<div class="process-name" @click="handleCreateProcess('5')">标准发放申请流程</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('8')">未符合项整改流程</div>
</div>
</div>
<div v-if="zcgllc">
@@ -85,13 +86,17 @@ export default {
})
break
case '7':
//项目评估流程
this.$router.push({
name: 'xmpgStep1'
})
break
case '8':
//未符合项整改流程
this.$router.push({
name:'wfhxzgStep1'
})
break
case '8':
break
case '9':
break
case '10':
@@ -252,6 +252,7 @@ export default {
}
})
}
break
case '2':
if (row.taskInfo === '责任对接人选择责任人') {
this.$router.push({
@@ -343,43 +344,59 @@ export default {
})
}
break;
break
case '3':
if (row.taskInfo === '责任对接人选择责任人') {
this.$router.push({
name: 'bzzqyjStep2',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
break
//标准清单更新/发布流程
case'4' :
if (row.taskInfo === '进行会签,填写意见') {
this.$router.push({
name: 'bzqdfbStep2',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
} else if (row.taskInfo === '根据会签意见修订') {
this.$router.push({
name: 'bzqdfbStep3',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}else if (row.taskInfo === '业务经理审批') {
this.$router.push({
name: 'bzqdfbStep4',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
break;
case'4' :
if (row.taskInfo === '进行会签,填写意见') {
this.$router.push({
name: 'bzqdfbStep2',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
} else if (row.taskInfo === '根据会签意见修订') {
this.$router.push({
name: 'bzqdfbStep3',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}else if (row.taskInfo === '业务经理审批') {
this.$router.push({
name: 'bzqdfbStep4',
query: {
taskIds: row.taskIds,
prcId: row.prcId,
prcNum: row.prcNum,
prcName: row.prcName,
prcType: row.prcType
}
})
}
break;
break
//项目合规评估流程
case '5' :
if(row.taskInfo === ''){
@@ -394,6 +411,7 @@ export default {
}
})
}
break
}
},
@@ -189,14 +189,14 @@
<div class="standards-drawer-table standards-drawer-table-one" v-if="!showTableFlag">
<el-table
v-show="!isListType"
ref="searchTable"
@selection-change="sarAccessInfoSearchSelect"
:data="sarAccessInfoSearchList"
style="width: 100%"
border
height="300px"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="sarAccessInfoSearchSelect"
ref="searchTable"
>
<el-table-column
type="selection"
@@ -253,7 +253,7 @@
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="accessSarTypeSelect"
ref="searchTable"
ref="accessTypeSelect"
>
<el-table-column
type="selection"
@@ -293,15 +293,6 @@
<div class="list-entry">
<el-divider content-position="left">清单条目</el-divider>
<div class="action-bar">
<el-button
class="common-button-default"
size="small" @click="moveUp" v-if="!disabledFlag"
>上移</el-button>
<el-button
class="common-button-default"
size="small" @click="moveDown"
v-if="!disabledFlag"
>下移</el-button>
<el-button
class="common-button-default export-button"
size="mini" @click="exportAccessInfo('apart')"
@@ -315,6 +306,7 @@
><i class="iconfont">&#xe61b;</i>删除</el-button>
</div>
<el-table
ref="entryTable"
:data="sarAccessInfoList"
class="un-select"
style="width: 100%"
@@ -322,7 +314,6 @@
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="sarAccessInfoSelect"
ref="entryTable"
>
<el-table-column
type="selection"
@@ -366,6 +357,22 @@
width="120px"
label="文本状态">
</el-table-column>
<el-table-column>
<template slot-scope="scope">
<el-button
class="common-button-default"
type="primary"
size="small" @click="moveUp(scope.$index, scope.row)"
v-if="!disabledFlag"
>上移</el-button>
<el-button
class="common-button-default"
type="danger"
size="small" @click="moveDown(scope.$index, scope.row)"
v-if="!disabledFlag"
>下移</el-button>
</template>
</el-table-column>
</el-table>
</div>
<div class="footer">
@@ -1011,73 +1018,45 @@ export default {
})
if(addList > -1){
this.$message.warning('请勿添加重复数据')
} else(
this.$refs.accessTypeSelect.clearSelection()
this.$refs.entryTable.clearSelection()
this.$refs.searchTable.clearSelection()
} else{
this.sarAccessInfoList.push(item)
)
this.$refs.accessTypeSelect.clearSelection()
this.$refs.entryTable.clearSelection()
this.$refs.searchTable.clearSelection()
}
})
this.selectedAccInfoSearchList = []
this.$refs.entryTable.clearSelection()
this.$refs.searchTable.clearSelection()
} else {
this.$message.error('请选中需要添加到 清单条目 的(标准号/政策编号)')
}
},
// 上移 事件
moveUp () {
// i 全部对象数组的下标
// s 选中对象数组的下标
let sarAccessInfoListArry = JSON.parse(JSON.stringify(this.sarAccessInfoListArry))
if (sarAccessInfoListArry.length === 1) {
//数组交换下标
console.log('s', sarAccessInfoListArry);
console.log('i',this.sarAccessInfoList);
for (var s in sarAccessInfoListArry) {
for (var i in this.sarAccessInfoList) {
if (sarAccessInfoListArry[s].resId === this.sarAccessInfoList[i].resId) {
if (Number(i) !== 0) {
let tempOption = this.sarAccessInfoList[i - 1]
this.$set(this.sarAccessInfoList, i - 1, this.sarAccessInfoList[i])
this.$set(this.sarAccessInfoList, i, tempOption)
// this.sarAccessInfoListArry = []
return
} else {
this.$message.error('数据已经是第一个,请选择其他数据上移!')
}
}
}
}
} else if (this.sarAccessInfoListArry.length === 0) {
this.$message.error('请选择需要移动的数据!')
} else {
this.$message.error('请选择单一数据进行移动!')
}
moveUp (index, row) {
if (index === 0) {
this.$message({
message: '已经是列表中第一个素材!',
type: 'warning'
})
} else {
let temp = this.sarAccessInfoList[index - 1]
this.$set(this.sarAccessInfoList, index - 1, this.sarAccessInfoList[index])
this.$set(this.sarAccessInfoList, index, temp)
}
},
// 下移事件
moveDown () {
// y 全部对象数组的下标
// t 选中对象数组的下标
if (this.sarAccessInfoListArry.length === 1) {
for (var t in this.sarAccessInfoListArry) {
for (var y in this.sarAccessInfoList) {
if (this.sarAccessInfoListArry[t].resId === this.sarAccessInfoList[y].resId) {
var ass = this.sarAccessInfoList.length - 1
if (Number(y) !== Number(ass)) {
var s = parseInt(y) + 1
var tempOption = this.sarAccessInfoList[parseInt(s)]
this.$set(this.sarAccessInfoList, parseInt(s), this.sarAccessInfoList[parseInt(y)])
this.$set(this.sarAccessInfoList, parseInt(y), tempOption)
return
} else {
this.$message.error('数据已经是最后一个,请选择其他数据进行移动!')
}
}
}
}
} else if (this.sarAccessInfoListArry.length === 0) {
this.$message.error('请选择需要移动的数据!')
} else {
this.$message.error('请选择单一数据进行移动!')
}
moveDown (index) {
if (index === (this.sarAccessInfoList.length - 1)) {
this.$message({
message: '已经是列表中最后一个素材!',
type: 'warning'
})
} else {
let i = this.sarAccessInfoList[index + 1]
this.$set(this.sarAccessInfoList, index + 1, this.sarAccessInfoList[index])
this.$set(this.sarAccessInfoList, index, i)
}
},
// 点击清单条目导入按钮事件
importmodalFlags () {
@@ -1122,6 +1101,10 @@ export default {
// 清单条目 table select事件
sarAccessInfoSelect (selectData) {
this.sarAccessInfoListArry = selectData
let sarAccessInfoListArryId = []
for(let i=0; i<this.selectData.length; i++){
}
},
// 点击取消按钮 返回事件
backCancal () {
@@ -1192,8 +1175,6 @@ export default {
_this: this
}, res =>{
this.sarAccessInfoSearchList = res.data.list
this.$nextTick(() => {
})
}, e => {
})
@@ -1203,12 +1184,9 @@ export default {
return row.isRelateAccess === '1'
},
// 数据搜索 table select事件
sarAccessInfoSearchSelect (selectData) {
this.selectedAccInfoSearchList = selectData
this.selectSearch = []
for(let i = 0; i <selectData.length; i++) {
this.selectSearch.push(selectData[i].id)
}
sarAccessInfoSearchSelect (val) {
this.selectedAccInfoSearchList = val
console.log(val)
},
// 数据搜索 清单类型 table select事件
accessSarTypeSelect (selectData) {
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -127,11 +127,11 @@
size="mini"
@click="deleteStandFromKind(2)"
v-btn-permission="'5aedea192a77b14c364f19bdcee3513a'"><i class="iconfont">&#xe611;</i>移除标准</el-button>
<el-button class="common-button-default"
size="mini"
:loading="searching"
@click="uploadImportModal(1)"
v-btn-permission="'86a8f92390bb4dcd7f1c2176c183c943'"><i class="iconfont">&#xe825;</i>模板下载</el-button>
<!-- <el-button class="common-button-default"-->
<!-- size="mini"-->
<!-- :loading="searching"-->
<!-- @click="uploadImportModal(1)"-->
<!-- v-btn-permission="'86a8f92390bb4dcd7f1c2176c183c943'"><i class="iconfont">&#xe825;</i>模板下载</el-button>-->
<el-button class="common-button-default"
size="mini"
@click="configurationStandard"
@@ -3,7 +3,7 @@
<div id="enterBSysRevPlanManaLib" class="v-class">
<div class="search-area">
<div class="left">
<el-form :modal="condition" :inline="true" class="label-input-form" @keyup.enter.native="handleSearchByCondition">
<el-form :modal="condition" :inline="true" class="lab-form" @keyup.enter.native="handleSearchByCondition">
<el-form-item label="计划状态" class="search-item">
<el-select
v-model="condition.planStatus"
@@ -6,7 +6,7 @@
<el-form inline :model="localProTableSearch" class="label-input-form" @keyup.enter.native="getLocalProductTableBtn">
<el-form-item label="项目编号" class="search-item">
<el-input
v-model="localProTableSearch.productName"
v-model="localProTableSearch.projectNumber"
placeholder="根据项目编号查找"
:maxlength="100"
clearable
@@ -22,12 +22,12 @@
</el-form-item>
<el-form-item label="项目分类" class="search-item">
<el-select
v-model="projectLibrarySearch.projectSort"
v-model="projectLibrarySearch.projectClassification"
placeholder="请选择项目类别"
>
<el-option
v-for="opt in productTypeOptions"
:value="opt.value"
:value="opt.label"
:key="opt.value"
:label="opt.label"
>{{ opt.label}}</el-option>
@@ -38,7 +38,7 @@
<el-option
v-for="opr in xmztOptions"
:key="opr.value"
:value="opr.value"
:value="opr.label"
:label="opr.label"
></el-option>
</el-select>
@@ -66,6 +66,21 @@
v-btn-permission="'e5ca15122f554414e6365eb09efac5c4'"
@click="selectMoreBtn"
><i class="iconfont">&#xe7a5;</i>高级查询</el-button>
</el-form-item>
</el-form>
</div>
@@ -144,9 +159,18 @@
align="center"
>
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="productLine"
label="产品线"
min-width="120"
align="center"
>
</el-table-column>
<el-table-column
prop="projectStartDate"
label="项目计划开始日期"
:formatter="dateFormat"
min-width="120"
width="160"
align="center"
@@ -156,6 +180,7 @@
<el-table-column
prop="projectEndDate"
label="项目计划完成日期"
:formatter="dateFormat"
min-width="120"
width="160"
align="center"
@@ -201,14 +226,8 @@
@pageSizeChange="pageSizeChange"></pagination>
<loading :loading="loading">数据获取中</loading>
</div>
<AdvancedQuery
:isAdvancedSearch.sync="isAdvancedSearch"
:twoOptions="twoOptions"
:threeOptions="threeOptions"
@twoSelectChange="twoSelectChange"
@getDomesticStandardTableBtn="getStandardTableBtn"
></AdvancedQuery>
</div>
</template>
<script>
import DatePickerGroup from './components/DatePickerGroup'
@@ -216,6 +235,7 @@ import OrgTree from '@/components/CustomFormComponents/OrgTree'
import eventHub from '@/common/eventHub'
import ProjectRelatedPersonnel from '@/components/CustomFormComponents/ProjectRelatedPersonnel'
import {dateFormat} from '@/common/date/index'
import moment from 'moment'
function checkFD (rules, value, callback) {
this.value = value
let arr = []
@@ -253,16 +273,21 @@ export default {
//查询3类
projectLibrarySearch: {
projectName: '',
projectSort: '',
projectClassification: '',
projectStatus: '',
},
//查询3类
projectLibrarySearchDefault: {
projectName: '',
projectClassification: '',
projectStatus: '',
},
// 查询条件
localProTableSearch: {
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
validFlag: 0,
prodectCode: '',
projectNumber:'',
productSet: '',
productName: '',
productBrand: '',
@@ -273,7 +298,7 @@ export default {
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
validFlag: 0,
prodectCode: '',
projectNumber:'',
productSet: '',
productName: '',
productBrand: '',
@@ -679,11 +704,20 @@ export default {
* @author zmf
* @date 2021/3/8
*/
//时间格式化
dateFormat(row, column) {
var date = row[column.property];
if (date == undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD");
},
selectMoreBtn () {
this.isAdvancedSearch = true
this.threeOptions = []
},
twoSelectChange (val, obj) {
console.log('twoSelectChange')
if (val === 'product_type') {
this.threeOptions = this.productTypeOptions
} else if (val === 'product_brand') {
@@ -700,13 +734,6 @@ export default {
}]
}
},
// 高级检索搜索
getStandardTableBtn (advancedSearch) {
this.localProTableSearch = {...this.localProTableSearchDefault}
this.localProTableSearch.page = 1
this.localProTableSearch.advanceSearchVOStr = JSON.stringify(advancedSearch) || ''
this.getLocalProductTable()
},
// 编辑项目相关人员回显选中人员数据
relatePersonTreeShow () {
let checkedArr = this.localProEO.relatePerson ? this.localProEO.relatePerson.split(',') : []
@@ -925,6 +952,7 @@ export default {
// 清空条件查询
clearAllSearch () {
this.localProTableSearch = {...this.localProTableSearchDefault}
this.projectLibrarySearch = {...this.projectLibrarySearchDefault}
this.localProTableSearch.page = 1
this.getLocalProductTable()
},
@@ -1029,7 +1057,6 @@ export default {
this.$refs['addLocalProductForm'].validate((valid, fields) => {
if (valid) {
const formData = this.resolveTime(this.localProEO)
console.log(formData)
if (formData.energyKind != null && (formData.energyKind instanceof Array)) {
formData.energyKind = formData.energyKind.join(',') // 能源种类
}
@@ -1129,13 +1156,14 @@ export default {
this.localProTableSearch.dataType = this.insideTabsActiveName
this.SarExportSearchEo = this.localProTableSearch
this.$http.get('sarStandProjectLibrary/queryProject',{
projectName: this.projectLibrarySearch.projectName,
projectClassification: this.projectLibrarySearch.projectSort,
projectStatus: this.projectLibrarySearch.projectStatus
// projectName: this.projectLibrarySearch.projectName,
// projectClassification: this.projectLibrarySearch.projectSort,
// projectStatus: this.projectLibrarySearch.projectStatus
...this.localProTableSearch,
...this.projectLibrarySearch,
},{
_this: this, loading: 'loading'
}, res => {
// console.log(res.data)
if (this.localProTableSearch.prodectCode === 'Maintenance') {
this.localProTableList = res.data.Maintenance.records
}
+22 -11
View File
@@ -276,13 +276,22 @@ const routes = [
title: '标准清单发布/更新流程'
}
},
{
path: '/xmpgStep1',
name: 'xmpgStep1',
component: () => import('@/pages/processCenter/pages/creatProcess/xmpg/step1.vue'),
meta: {
requireAuth: true,
title: '项目合规评估流程'
}
},
{
path: '/wfhxzgStep1',
name: 'wfhxzgStep1',
name: 'wfhxzgStep2',
component: () => import('@/pages/processCenter/pages/creatProcess/wfhxzg/step1.vue'),
meta: {
requireAuth: true,
title: '未符合项整改流程'
title: '未符合项整改发布/更新流程'
}
},
{
@@ -492,15 +501,6 @@ const routes = [
title: '标准调研流程'
}
},
{
path: '/zqyjStep1',
name: 'zqyjStep1',
component: () => import('@/pages/processCenter/pages/creatProcess/zqyj/step1.vue'),
meta: {
requireAuth: true,
title: '标准征求意见流程'
}
},
]
},
// 本地工具
@@ -1170,6 +1170,17 @@ const routes = [
menuId: '7MWCQK6NNH'
}
},
{
path: '/linkManage',
name: 'linkManage',
component: () =>
import('@/pages/config/pages/linkManage/index'),
meta: {
requireAuth: true,
title: '链接管理',
menuId: 'd3ff92078c53a4d9d1f1a94450fee91e'
}
},
{
path: '/roleManage',
name: 'RoleManage',
+6 -5
View File
@@ -7,6 +7,7 @@
// const devIp = '39.98.140.126'
// const devInterfacePORT = '10005'
const devIp = '192.168.10.248'
const devIp = '192.168.10.30'
const devInterfacePORT = '9999'
// 云端端口号
const DEV_CLOUD_RES_INTERFACE_PORT = '7777'
@@ -22,11 +23,11 @@ const theme = 'theme-one' // 主题(theme-one浅蓝色,theme-two深蓝色)
const processPort = '17210'
/*****************************************************************
<<<<<<<<< 主题修改 >>>>>>>>>
<<<<<<<<< 主题修改 >>>>>>>>>
1. 主题分为theme-one,theme-two两种
2. 修改assets/styles/style.less文件,注释theme-one/theme-two
3. 将上方theme改为theme-one/theme-two
1. 主题分为theme-one,theme-two两种
2. 修改assets/styles/style.less文件,注释theme-one/theme-two
3. 将上方theme改为theme-one/theme-two
*****************************************************************/
// 生产环境配置
@@ -51,4 +52,4 @@ module.exports = {
enterprise: enterprise, // GQ广汽 SJZX数据中心
theme: theme, // 主题
processInterfaceURL: `http://${serverIP}:${processPort}/bat-wkflow`
}
}