合并冲突

This commit is contained in:
宋伟佳
2021-07-08 21:10:45 +08:00
18 changed files with 1679 additions and 1068 deletions
+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>
@@ -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,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>
@@ -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,7 +306,7 @@
><i class="iconfont">&#xe61b;</i>删除</el-button>
</div>
<el-table
ref="entryTable"
ref="entryTable"
:data="sarAccessInfoList"
class="un-select"
style="width: 100%"
@@ -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 () {
@@ -1205,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) {
@@ -238,7 +238,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"
@@ -278,15 +278,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')"
@@ -351,6 +342,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">
@@ -996,9 +1003,15 @@ 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()
@@ -1008,60 +1021,28 @@ export default {
}
},
// 上移 事件
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('请选择需要移动的数据!')
moveUp (index, row) {
if (index === 0) {
this.$message({
message: '已经是列表中第一个素材!',
type: 'warning'
})
} else {
this.$message.error('请选择单一数据进行移动!')
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('请选择需要移动的数据!')
moveDown (index) {
if (index === (this.sarAccessInfoList.length - 1)) {
this.$message({
message: '已经是列表中最后一个素材!',
type: 'warning'
})
} else {
this.$message.error('请选择单一数据进行移动!')
let i = this.sarAccessInfoList[index + 1]
this.$set(this.sarAccessInfoList, index + 1, this.sarAccessInfoList[index])
this.$set(this.sarAccessInfoList, index, i)
}
},
// 点击清单条目导入按钮事件
@@ -1188,12 +1169,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
@@ -101,11 +101,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"
@@ -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
}
+11
View File
@@ -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',
+5 -4
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
*****************************************************************/
// 生产环境配置