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

This commit is contained in:
庄新伟
2022-03-15 13:33:38 +08:00
79 changed files with 14863 additions and 4908 deletions
@@ -254,7 +254,7 @@ export default {
this.quoteIdList1 = [] this.quoteIdList1 = []
this.replaceLawsNumForm.quoteIdList = '' this.replaceLawsNumForm.quoteIdList = ''
} }
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', this.replaceLawsNumForm, { this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPageByWk1', this.replaceLawsNumForm, {
_this: this, _this: this,
loading: 'replaceLoading' loading: 'replaceLoading'
}, res => { }, res => {
+1
View File
@@ -112,6 +112,7 @@ export default {
}, },
saveUserInfo() { saveUserInfo() {
let arr = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes()); let arr = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
this.filterText = ''
this.isVisible2 = false this.isVisible2 = false
this.$emit('checkedRole', arr) this.$emit('checkedRole', arr)
}, },
+4 -2
View File
@@ -88,6 +88,8 @@
} }
</script> </script>
<style scoped> <style lang="less" scoped>
.phoneHistortTable{
height: 100%;
}
</style> </style>
+182 -70
View File
@@ -1,11 +1,11 @@
<template> <template>
<div class="roleTree"> <div class="roleTree">
<el-drawer <el-drawer
:title="isTitle" :title="isTitle"
:visible.sync="isVisible2" :visible.sync="visible"
:wrapperClosable="false" :wrapperClosable="false"
@close="handleTreeDrawerCancel" @close="handleTreeDrawerCancel"
size="400px"> size="460px">
<el-form <el-form
ref="attributeEO" ref="attributeEO"
class="label-input-form" class="label-input-form"
@@ -20,51 +20,67 @@
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-tree <div class="divTree">
v-if="open1 && isVisible2" <el-tree
node-key="id" v-if="open1 && isVisible"
style="height: 100%; overflow: auto;" node-key="id"
class="filter-tree tree-line" style="height: 100%; overflow: auto;"
icon-class="icon-tree" class="filter-tree tree-line"
@check-change="checkChange" icon-class="icon-tree"
:data="treeData" @check-change="checkChange"
:props="defaultProps" :data="treeData"
:default-checked-keys="nodeList" :props="defaultProps"
highlight-current :default-checked-keys="nodeList2"
check-strictly highlight-current
@check="drawerCheck" check-strictly
:expand-on-click-node="true" @check="drawerCheck"
show-checkbox :expand-on-click-node="true"
ref="tree" show-checkbox
:load="loadNode" ref="tree"
lazy> :load="loadNode"
lazy>
<span class="custom-tree-node" slot-scope="{ node, data }"> <span class="custom-tree-node" slot-scope="{ node, data }">
<span :class="node.disabled ? 'is-show' : 'is-leaf-none'"></span> <span :class="node.disabled ? 'is-show' : 'is-leaf-none'"></span>
<span> {{ node.label }} </span> <span> {{ node.label }} </span>
</span> </span>
</el-tree> </el-tree>
<el-tree <el-tree
v-if="!open1 && isVisible2" v-if="!open1 && isVisible"
node-key="id" node-key="id"
style="height: 100%; overflow: auto;" style="height: 100%; overflow: auto;"
class="filter-tree tree-line" class="filter-tree tree-line"
icon-class="icon-tree" icon-class="icon-tree"
:data="treeData1" :data="treeData1"
:props="defaultProps" :props="defaultProps"
@check-change="checkChange2" @check-change="checkChange2"
:default-checked-keys="nodeList" :default-checked-keys="nodeList2"
highlight-current highlight-current
check-strictly check-strictly
@check="drawerCheck" @check="drawerCheck"
:expand-on-click-node="true" :expand-on-click-node="true"
default-expand-all default-expand-all
show-checkbox show-checkbox
ref="tree"> ref="tree">
<span class="custom-tree-node" slot-scope="{ node, data }"> <span class="custom-tree-node" slot-scope="{ node, data }">
<span :class="node.disabled ? 'is-show' : 'is-leaf-none'"></span> <span :class="node.disabled ? 'is-show' : 'is-leaf-none'"></span>
<span> {{ node.label }} </span> <span> {{ node.label }} </span>
</span> </span>
</el-tree> </el-tree>
</div>
<div class="divDel">
<div class="divDel_title">已选中人员</div>
<div class="divDel_box">
<el-tag
v-for="tag in delList"
:key="tag.id"
size="mini"
@close="handleClose(tag)"
closable>
{{tag.name}}
</el-tag>
<el-tag v-show="delList.length > 0 && !checkBox" type="danger" closable size="mini" @close="handleCloseAll()">全部删除</el-tag>
</div>
</div>
<div id="roleFormButton" class="demo-drawer-footer"> <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>
@@ -108,8 +124,10 @@
}, },
data () { data () {
return { return {
visible: false,
nodeList2: [],
delList: [],
roleList: [], roleList: [],
isVisible2: false,
filterText: '', filterText: '',
defaultProps: { defaultProps: {
children: 'children', children: 'children',
@@ -128,6 +146,43 @@
} }
}, },
methods: { methods: {
handleClose (tag) {
let arr = []
for (let a = 0; a < this.delList.length; a++) {
if (tag.id === this.delList[a].id) {
this.delList.splice(a, 1)
}
}
this.delList.map(item => {
arr.push(item)
})
this.$refs.tree.setCheckedKeys(arr);
for (let b = 0; b < this.nodeList2.length; b++) {
if (tag.id === this.nodeList2[b]) {
this.nodeList2.splice(b, 1)
}
}
},
handleCloseAll () {
this.$msgbox({
title: '提示',
message: '是否删除当前选中人员',
showCancelButton: true,
confirmButtonText: '确定',
cancelButtonText: '取消',
}).then(() => {
this.delList = []
this.nodeList2 = []
this.roleList = []
this.$refs.tree.setCheckedKeys([]);
}).catch(() => {
this.$message({
type: 'info',
message: '取消删除'
});
}
)
},
changeInput:debounce(function (val) { changeInput:debounce(function (val) {
if (val.length) { if (val.length) {
this.open1 = false this.open1 = false
@@ -146,11 +201,17 @@
if (this.checkBox) { if (this.checkBox) {
} else { } else {
if (type) { if (type) {
this.nodeList.push(row.id) this.nodeList2.push(row.id)
this.delList.push(row)
} else { } else {
for (let a = 0; a < this.nodeList.length; a ++) { for (let a = 0; a < this.nodeList2.length; a ++) {
if (row.id === this.nodeList[a]) { if (row.id === this.nodeList2[a]) {
this.nodeList.splice(a, 1) this.nodeList2.splice(a, 1)
}
}
for (let b = 0; b < this.delList.length; b++) {
if (row.id === this.delList[b].id) {
this.delList.splice(b, 1)
} }
} }
} }
@@ -160,30 +221,36 @@
if (this.checkBox) { if (this.checkBox) {
} else { } else {
if (type) { if (type) {
this.nodeList.push(row.id) this.nodeList2.push(row.id)
this.delList.push(row)
} else { } else {
for (let a = 0; a < this.nodeList.length; a ++) { for (let a = 0; a < this.nodeList2.length; a++) {
if (row.id === this.nodeList[a]) { if (row.id === this.nodeList2[a]) {
this.nodeList.splice(a, 1) this.nodeList2.splice(a, 1)
}
}
for (let b = 0; b < this.delList.length; b++) {
if (row.id === this.delList[b].id) {
this.delList.splice(b, 1)
} }
} }
} }
} }
}, },
handleTreeDrawerCancel () { handleTreeDrawerCancel () {
this.filterText = '' this.filterText = ''
this.isVisible2 = false
this.open1 = true this.open1 = true
this.visible = false
}, },
saveUserInfo () { saveUserInfo () {
if (this.checkBox) { if (this.checkBox) {
this.isVisible2 = false
this.$emit('checkedRole', this.roleList) this.$emit('checkedRole', this.roleList)
this.nodeList2 = []
this.$emit('update:isVisible', false)
} else { } else {
if (this.nodeList.length > 0 && this.nodeList[0].length !== 0) { if (this.nodeList2.length > 0 && this.nodeList2[0].length !== 0) {
let ids = '' let ids = ''
this.nodeList.forEach(item => { this.nodeList2.forEach(item => {
if (ids.length > 0) { if (ids.length > 0) {
ids += ',' ids += ','
ids += item ids += item
@@ -196,12 +263,14 @@
}, { }, {
_this: this _this: this
}, res => { }, res => {
this.isVisible2 = false
this.$emit('checkedRole', res) this.$emit('checkedRole', res)
this.nodeList2 = []
this.$emit('update:isVisible', false)
}) })
} else { } else {
this.isVisible2 = false
this.$emit('checkedRole', this.roleList) this.$emit('checkedRole', this.roleList)
this.nodeList2 = []
this.$emit('update:isVisible', false)
} }
} }
this.open1 = true this.open1 = true
@@ -214,19 +283,14 @@
this.$refs.tree.setCheckedKeys([]) this.$refs.tree.setCheckedKeys([])
this.$refs.tree.setCheckedKeys([data.id]) this.$refs.tree.setCheckedKeys([data.id])
this.roleList = [data] this.roleList = [data]
this.delList = [data]
} else if (getlist.length === 0) { } else if (getlist.length === 0) {
this.roleList = [{}] this.roleList = [{}]
this.delList = []
} else if (getlist.length === 1) { } else if (getlist.length === 1) {
this.roleList = [data] this.roleList = [data]
this.delList = [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]
// }
// this.roleList = [this.roleRow]
} else { // 多选 } else { // 多选
this.roleList = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes()) this.roleList = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes())
} }
@@ -255,11 +319,36 @@
}, },
watch: { watch: {
isVisible (val) { isVisible (val) {
this.isVisible2 = val this.visible = val
if (val) {
this.nodeList2 = this.nodeList
if (this.nodeList2.length && this.nodeList2[0].length) {
let ids = ''
this.nodeList2.forEach(item => {
if (ids.length) {
ids += ','
ids += item
} else {
ids = item
}
})
this.$http.get('SarInstitution/institution/getNextById', {
ids: ids
}, {
_this: this
}, res => {
this.delList = res
})
} else {
this.delList = []
}
} else {
this.delList = []
}
}, },
isVisible2 (val) { visible(val) {
this.$emit('update:isVisible', val) this.$emit('update:isVisible', val)
}, }
}, },
mounted () { mounted () {
this.getTree() this.getTree()
@@ -268,7 +357,30 @@
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
/deep/ .icon-tree { .divTree {
overflow: auto;
height: calc(~'100% - 300px');
}
.divDel {
border-top: 1px solid #000;
height: 300px;
.divDel_title {
margin: 10px;
}
.divDel_box {
height: 266px;
padding: 0px 0 10px;
display: flex;
flex-wrap: wrap;
overflow: auto;
margin: 10px;
align-content: flex-start;
span {
margin: 0px 5px 5px 0;
}
}
}
/deep/ .icon-tree {
margin: 0 5px 0 10px; margin: 0 5px 0 10px;
position: relative; position: relative;
background: url('~@/assets/images/shangqi/img/tree-add.png'); background: url('~@/assets/images/shangqi/img/tree-add.png');
@@ -9,6 +9,9 @@
<el-tab-pane label="工作组" name="workgroup"> <el-tab-pane label="工作组" name="workgroup">
<workgroup></workgroup> <workgroup></workgroup>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="技术委员会" name="committee">
<committee></committee>
</el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
</div> </div>
@@ -16,11 +19,13 @@
<script> <script>
import workgroup from "@/pages/config/pages/mechanismManage/pages/workgroup"; import workgroup from "@/pages/config/pages/mechanismManage/pages/workgroup";
import mechanism from "@/pages/config/pages/mechanismManage/pages/mechanism"; import mechanism from "@/pages/config/pages/mechanismManage/pages/mechanism";
import committee from "@/pages/config/pages/mechanismManage/pages/committee"
export default { export default {
name: 'MechanismManage', name: 'MechanismManage',
components: { components: {
workgroup, workgroup,
mechanism, mechanism,
committee
}, },
data () { data () {
return { return {
@@ -0,0 +1,407 @@
<template>
<div id="committee">
<div class="committee-content">
<div class="search-area">
<el-form :model="committeeSearch" inline class="label-input-form">
<el-form-item label="委员会名称" class="search-item">
<el-input v-model="committeeSearch.committeeName"
placeholder="请输入委员会名称"
>
</el-input>
</el-form-item>
<el-form-item label="" class="search-item btn-box">
<el-button class="common-button-primary" type="primary" size="mini" @click="search"
v-btn-permission="">查询
</el-button>
</el-form-item>
<el-form-item label="" class="search-item btn-box">
<el-button class="common-button-default" @click="resetSelect" size="mini"
v-btn-permission="">清空
</el-button>
</el-form-item>
</el-form>
</div>
<div class="table-content">
<div class="table-button">
<el-button type="primary" size="mini"
class="common-button-primary" @click="committeeAdd">
新增
</el-button>
<el-button type="primary" size="mini"
class="common-button-primary" @click="committeeEdit">
编辑
</el-button>
<el-button type="primary" size="mini"
class="common-button-primary" @click="committeeDel">
批量删除
</el-button>
</div>
<el-table
ref="committee"
tooltip-effect="dark"
style="width: 100%; flex: auto;"
:data="committeeData"
@selection-change="committeeChange"
border
class="drag-table"
height="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="committeeName"
align="center"
label="委员会名称"
>
</el-table-column>
<el-table-column
prop="committeeDirectorName"
label="主任"
align="center"
>
</el-table-column>
<el-table-column
prop="committeeSecretaryName"
align="center"
label="秘书长">
</el-table-column>
<el-table-column
prop="committor"
align="center"
label="委员">
</el-table-column>
</el-table>
<loading :loading="Loading">加载中...</loading>
<pagination :page="page" :total="total" :pageSize="pageSize" @pageChange="pageChange"
@pageSizeChange="pageSizeChange"></pagination>
</div>
<el-dialog
:title="dialogTitle"
:visible.sync="addModel"
:wrapperClosable="false"
@close="cancelModel"
width="800px"
>
<div class="myDialog">
<el-form
ref="addForm"
:model="addForm"
:rules="addFormRules"
class="label-input-form"
>
<el-form-item label="委员会名称" prop="committeeName" label-width="100px" class="add-form-item">
<el-input v-model="addForm.committeeName"
placeholder="请输入委员会名称"
clearable></el-input>
</el-form-item>
<el-form-item label="主任" prop="committeeDirector" label-width="100px" class="add-form-item">
<el-input
v-model="addForm.committeeDirectorName"
placeholder="请选择主任"
@click.native="choiceZRR('committeeDirector', '选择主任', addForm.committeeDirector)"
/>
</el-form-item>
<el-form-item label="秘书长" prop="committeeSecretary" label-width="100px" class="add-form-item">
<el-input v-model="addForm.committeeSecretaryName"
placeholder="请选择秘书长"
@click.native="choiceZRR('committeeSecretary', '选择秘书长', addForm.committeeSecretary)"
clearable></el-input>
</el-form-item>
<el-form-item label="委员" prop="committor" label-width="100px" class="add-form-item">
<el-input v-model="addForm.committor"
placeholder="请选择委员"
@click.native="choiceZRRS"
clearable></el-input>
</el-form-item>
</el-form>
</div>
<div slot="footer">
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancelModel">取消</el-button>
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="addOk">确定
</el-button>
</div>
</el-dialog>
<!-- 单选人-->
<Role-tree
check-box
:is-title="drawerTitle"
:is-visible.sync="modalshowflag"
@checkedRole="drawerCheck"
:nodeList="nodeList"
></Role-tree>
<!-- 多选择人-->
<Role-tree
is-title="选择委员"
:is-visible.sync="modalshowflag2"
@checkedRole="drawerCheck2"
:nodeList="nodeList2"
></Role-tree>
</div>
</div>
</template>
<script>
export default {
name: "committee",
data() {
return {
nodeList: [],
nodeList2: [],
drawerTitle: "",
modalshowflag: false,
modalshowflag2: false,
Loading: false, //加载loading
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
total: 0,
committeeSearch: {
committeeName: "", //委员会名称
},
addForm: {
committeeName: "", //委员会名称
committeeDirector: "", //主任
committeeDirectorName: "", //主任
committeeSecretary: "", //秘书长
committeeSecretaryName: "", //秘书长
committor: "", //委员
committeeIds: "" //委员
},
addFormRules: {
committeeName: [
{ required: true, message: "请输入委员会名称", trigger: "blur" }
],
committeeDirectorName: [
{ required: true, message: "请填写主任", trigger: "blur" }
],
committeeSecretaryName: [
{ required: true, message: "请填写秘书长", trigger: "blur" }
],
committor: [
{ required: true, message: "请填写委员", trigger: "blur" }
]
},
committeeData: [],
dialogTitle: "", //新增/编辑框的title
addModel: false,
committeeChangeList: []
};
},
mounted() {
//获取委员会数据
this.getCommittee();
},
methods: {
getCommittee() {
this.$http.get("wgCommittee/wg-committee/page", {
...this.committeeSearch,
page: this.page,
pageSize: this.pageSize
}, {
_this: this
}, res => {
this.committeeData = res.data.records;
this.total = res.data.total;
});
},
//查询
search() {
this.page = 1
this.getCommittee();
},
//清空
resetSelect() {
this.committeeSearch = {
committeeName: "", //委员会名称
};
this.getCommittee();
},
//新增
committeeAdd() {
this.dialogTitle = "新增";
this.addModel = true;
},
//编辑
committeeEdit() {
if (!this.committeeChangeList.length) {
this.$message.warning("请至少选择一条数据进行编辑");
} else if (this.committeeChangeList.length > 1) {
this.$message.warning("您只能选择一条数据进行编辑");
} else {
this.dialogTitle = "编辑";
this.addModel = true;
this.addForm.id = this.committeeChangeList[0].id;
this.addForm.committeer = this.committeeChangeList[0].committeer;
this.addForm.committeeName = this.committeeChangeList[0].committeeName;
this.addForm.committor = this.committeeChangeList[0].committor;
this.addForm.committeeIds = this.committeeChangeList[0].committorId;
this.addForm.committeeDirector = this.committeeChangeList[0].committeeDirector;
this.addForm.committeeDirectorName = this.committeeChangeList[0].committeeDirectorName;
this.addForm.committeeSecretary = this.committeeChangeList[0].committeeSecretary;
this.addForm.committeeSecretaryName = this.committeeChangeList[0].committeeSecretaryName;
}
},
//批量删除
committeeDel() {
if (this.committeeChangeList.length) {
this.$confirm("您确认删除这些数据?", "提示", {
confirmButtonText: "确认",
confirmButtonClass: "common-button-primary",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
if(this.committeeChangeList.length === 1){
let ids = this.committeeChangeList[0].id
this.$http.delete('wgCommittee/wg-committee/deleteBatch',{
id: ids,
}, {
_this: this
}, res => {
if(res.ok){
this.$message.success('删除成功')
this.getCommittee()
}
this.$refs.committee.clearSelection()
})
}else{
let ids = ''
this.committeeChangeList.forEach(item => {
ids += item.id
ids += ','
})
this.$http.delete('wgCommittee/wg-committee/deleteBatch',{
id: ids,
}, {
_this: this
}, res => {
if(res.ok){
this.$message.success('删除成功')
this.getCommittee()
}
this.$refs.committee.clearSelection()
})
}
}).catch(() => {
});
} else {
this.$message.warning("请至少选择一条数据进行删除");
}
},
//取消新增
cancelModel() {
this.addModel = false;
},
//确定新增
addOk() {
this.$refs["addForm"].validate((valid) => {
if (valid) {
if (this.dialogTitle === "新增") {
this.$http.post("wgCommittee/wg-committee/insert", {
...this.addForm
}, {
_this: this
}, res => {
if(res.ok){
this.getCommittee();
this.addModel = false;
}
});
} else {
this.$http.put("wgCommittee/wg-committee/update", {
...this.addForm
}, { _this: this },
res => {
if(res.ok){
this.getCommittee();
this.addModel = false;
}
});
}
} else {
this.$message.warning("请填写完整信息");
}
});
},
//表格数据勾选变化
committeeChange(data) {
this.committeeChangeList = data;
},
pageChange(page) {
this.page = page;
this.getCommittee();
},
pageSizeChange(pageSize) {
this.pageSize = pageSize;
this.getCommittee();
},
/** 单选人员选择 */
choiceZRR(type, title, id) {
this.nodeList = [];
this.nodeList.push(id);
this.type = type;
this.drawerTitle = title;
this.modalshowflag = true;
},
/**单选人员选择确定 **/
drawerCheck(data) {
if (this.type === "committeeDirector") {
this.addForm.committeeDirector = data[0].id;
this.addForm.committeeDirectorName = data[0].name;
} else if (this.type === "committeeSecretary") {
this.addForm.committeeSecretary = data[0].id;
this.addForm.committeeSecretaryName = data[0].name;
}
this.modalshowflag = false;
},
//多选人员
choiceZRRS() {
this.nodeList2 = [];
if (this.addForm.committeeIds.length > 0) {
this.nodeList2 = this.addForm.committeeIds.split(",");
}
this.modalshowflag2 = true;
},
drawerCheck2(data) {
let idList = "", nameList = "";
data.forEach(item => {
if (nameList.length > 0) {
nameList += ",";
idList += ",";
}
idList += item.id;
nameList += item.name;
});
this.addForm.committeeIds = idList;
this.addForm.committor = nameList;
}
}
};
</script>
<style lang="less" scoped>
#committee {
height: 100%;
width: 100%;
.committee-content {
.table-content {
width: 100%;
height: 68.5vh;
.table-button {
margin: 10px;
}
}
}
}
</style>
@@ -167,8 +167,11 @@
loading: 'dataLoading' loading: 'dataLoading'
}, res => { }, res => {
if (res.ok) { if (res.ok) {
this.total = res.data.total this.total = res.data.total;
this.data = res.data.records res.data.records.forEach(item => {
item.account = "(" + item.account + ")" + item.accountName;
});
this.data = res.data.records;
} }
}) })
}, },
@@ -902,7 +902,7 @@
</el-drawer> </el-drawer>
<!-- 更新LOG --> <!-- 更新LOG -->
<el-dialog <el-dialog
title="更新LOG" title="更新记录"
:visible.sync="relateDialog" :visible.sync="relateDialog"
width="60%" width="60%"
class="relateClass" class="relateClass"
@@ -2529,7 +2529,7 @@ export default {
this.$message.error('水印下载仅支持PDF,pdf格式文件') this.$message.error('水印下载仅支持PDF,pdf格式文件')
} else { } else {
if (attId != null && attId !== '') { if (attId != null && attId !== '') {
window.location.href = '/api/att/attFile/downloadFileForSarWaterMark?fileId=' + attId window.location.href = '/api/att/attFile/downloadFileForSarWaterMark?fileId=' + attId + '&userId=' + this.$store.getters.userInfo.userId
} else { } else {
this.$message.error('请选择要下载的文件') this.$message.error('请选择要下载的文件')
} }
+2 -2
View File
@@ -14,7 +14,7 @@
<div class="modular-header-btn"> <div class="modular-header-btn">
<el-button v-if="SarLawsInfoEO.collectId" @click="collectClick(SarLawsInfoEO.collectId)" title="取消收藏" class="collection-btn" icon="icon-collection" :loading="isSubmit"></el-button> <el-button v-if="SarLawsInfoEO.collectId" @click="collectClick(SarLawsInfoEO.collectId)" title="取消收藏" class="collection-btn" icon="icon-collection" :loading="isSubmit"></el-button>
<el-button v-else @click="collectClick()" title="收藏" class="collection-btn" icon="el-icon-star-off" :loading="isSubmit"></el-button> <el-button v-else @click="collectClick()" title="收藏" class="collection-btn" icon="el-icon-star-off" :loading="isSubmit"></el-button>
<el-button class="relation-btn" icon="icon-relation" @click="relateEvent()">更新LOG</el-button> <el-button class="relation-btn" icon="icon-relation" @click="relateEvent()">更新记录</el-button>
<el-button class="relation-btn" @click="knowledgeSharing">知识点分享</el-button> <el-button class="relation-btn" @click="knowledgeSharing">知识点分享</el-button>
<el-button class="relation-btn" @click="statusClick">符合性状态</el-button> <el-button class="relation-btn" @click="statusClick">符合性状态</el-button>
<put-question-button <put-question-button
@@ -647,7 +647,7 @@
<!-- 更新LOG --> <!-- 更新LOG -->
<el-dialog <el-dialog
title="更新LOG" title="更新记录"
:visible.sync="relateDialog" :visible.sync="relateDialog"
width="60%" width="60%"
class="relateClass" class="relateClass"
@@ -22,7 +22,7 @@
<div class="modular-header-btn"> <div class="modular-header-btn">
<el-button v-if="sarStandardsInfoEO.collectId" @click="collectClick(sarStandardsInfoEO.collectId)" title="取消收藏" class="collection-btn" icon="el-icon-star-on" :loading="isSubmit"></el-button> <el-button v-if="sarStandardsInfoEO.collectId" @click="collectClick(sarStandardsInfoEO.collectId)" title="取消收藏" class="collection-btn" icon="el-icon-star-on" :loading="isSubmit"></el-button>
<el-button v-else @click="collectClick()" title="收藏" class="collection-btn" icon="el-icon-star-off" :loading="isSubmit"></el-button> <el-button v-else @click="collectClick()" title="收藏" class="collection-btn" icon="el-icon-star-off" :loading="isSubmit"></el-button>
<el-button class="relation-btn" icon="icon-relation" @click="relateEvent()">更新LOG</el-button> <el-button class="relation-btn" icon="icon-relation" @click="relateEvent()">更新记录</el-button>
</div> </div>
</div> </div>
</div> </div>
@@ -525,7 +525,7 @@
</el-drawer> </el-drawer>
<!-- 更新LOG --> <!-- 更新LOG -->
<el-dialog <el-dialog
title="更新LOG" title="更新记录"
:visible.sync="relateDialog" :visible.sync="relateDialog"
width="60%" width="60%"
class="relateClass" class="relateClass"
@@ -1625,7 +1625,7 @@ export default {
this.$message.error('水印下载仅支持PDF,pdf格式文件') this.$message.error('水印下载仅支持PDF,pdf格式文件')
} else { } else {
if (attId != null && attId !== '') { if (attId != null && attId !== '') {
window.location.href = '/api/att/attFile/downloadFileForSarWaterMark?fileId=' + attId window.location.href = '/api/att/attFile/downloadFileForSarWaterMark?fileId=' + attId + '&userId=' + this.$store.getters.userInfo.userId
} else { } else {
this.$message.error('请选择要下载的文件') this.$message.error('请选择要下载的文件')
} }
@@ -70,8 +70,8 @@
<template v-if="child.value && child.value.length > 0" <template v-if="child.value && child.value.length > 0"
v-for="(file, fileIndex) in child1Func(child.value)"> v-for="(file, fileIndex) in child1Func(child.value)">
<!-- 单个文件时--> <!-- 单个文件时-->
<span v-if="child.value && child.value.length > 0 && child.value.length === 1"> <span v-if="child.value && child.value.length > 0 && child.value.length === 1" style="display: flex; align-items: center;">
<a style="font-size: 16px;color: #409EFF;cursor: pointer;margin-left: -60px" <a style="font-size: 16px;color: #409EFF;cursor: pointer;"
@click="openFileInPdf(file.id, file.oldFileName)" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{ file.oldFileName }}</a> :title="file.oldFileName">{{ file.oldFileName }}</a>
<i <i
@@ -90,7 +90,7 @@
</span> </span>
<!-- 多个文件时--> <!-- 多个文件时-->
<div v-else-if="child.value && child.value.length > 0"> <div v-else-if="child.value && child.value.length > 0">
<span style="margin-left: 19%"> <span style="margin-left: 19%;display: flex; align-items: center;">
<a style="font-size: 16px;color: #409EFF;cursor: pointer" <a style="font-size: 16px;color: #409EFF;cursor: pointer"
@click="openFileInPdf(file.id, file.oldFileName)" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{ file.oldFileName }}</a> :title="file.oldFileName">{{ file.oldFileName }}</a>
@@ -324,7 +324,7 @@
<p class="modular-content-p-val"> <p class="modular-content-p-val">
<span v-for="(item, index) in child.value.split(',')" :key="index"> <span v-for="(item, index) in child.value.split(',')" :key="index">
<a @click="processCenterClick(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" <a @click="processCenterClick(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;"
class="span-line">{{ item }}</a> class="span-line" :title="item">{{ item }}</a>
</span> </span>
</p> </p>
</template> </template>
@@ -343,7 +343,7 @@
<template v-else> <template v-else>
<span v-for="(item, index) in child.value.split(',')" :key="index"> <span v-for="(item, index) in child.value.split(',')" :key="index">
<a @click="showReplaceStandInfo(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" <a @click="showReplaceStandInfo(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;"
class="span-line">{{ item }}</a> class="span-line" :title="item">{{ item }}</a>
</span> </span>
</template> </template>
</div> </div>
@@ -397,7 +397,7 @@
> >
<!--发布稿、增补件单独设置下载权限--> <!--发布稿、增补件单独设置下载权限-->
<template v-if="child.attrField === 'FBGBJBD' || child.attrField === 'ZBJBD'"> <template v-if="child.attrField === 'FBGBJBD' || child.attrField === 'ZBJBD'">
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank">{{ <a :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
<i <i
@@ -415,7 +415,7 @@
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>--> <!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
</template> </template>
<template v-else> <template v-else>
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank">{{ <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
<i <i
@@ -456,7 +456,7 @@
<p class="modular-content-p-val"> <p class="modular-content-p-val">
<span v-for="(item, index) in child.value.split(',')" :key="index"> <span v-for="(item, index) in child.value.split(',')" :key="index">
<a @click="processCenterClick(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" <a @click="processCenterClick(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;"
class="span-line">{{ item }}</a> class="span-line" :title="item">{{ item }}</a>
</span> </span>
</p> </p>
</template> </template>
@@ -466,7 +466,7 @@
<p class="modular-content-p-val" v-if="child.value"> <p class="modular-content-p-val" v-if="child.value">
<span v-for="(item, index) in child.value.split(',')" :key="index"> <span v-for="(item, index) in child.value.split(',')" :key="index">
<a @click="showReplaceStandInfo(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" <a @click="showReplaceStandInfo(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;"
class="span-line">{{ item }}</a> class="span-line" :title="item">{{ item }}</a>
</span> </span>
</p> </p>
<span class="modular-content-p-val" v-else>-</span> <span class="modular-content-p-val" v-else>-</span>
@@ -497,7 +497,7 @@
<template v-if="child.attrField === 'XGD' || child.attrField === 'FBGBJBD' || child.attrField === 'BPG' <template v-if="child.attrField === 'XGD' || child.attrField === 'FBGBJBD' || child.attrField === 'BPG'
|| child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA' || child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA'
|| child.attrField === 'JDWJ' || child.attrField === 'GLWJ'"> || child.attrField === 'JDWJ' || child.attrField === 'GLWJ'">
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank">{{ <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
<i <i
@@ -517,7 +517,7 @@
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>--> <!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
</template> </template>
<template v-else> <template v-else>
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank">{{ <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
<i <i
@@ -641,7 +641,7 @@
<p class="modular-content-p-val"> <p class="modular-content-p-val">
<span v-for="(item, index) in child.value.split(',')" :key="index"> <span v-for="(item, index) in child.value.split(',')" :key="index">
<a @click="processCenterClick(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" <a @click="processCenterClick(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;"
class="span-line">{{ item }}</a> class="span-line" :title="item">{{ item }}</a>
</span> </span>
</p> </p>
</template> </template>
@@ -651,7 +651,7 @@
<p class="modular-content-p-val" v-if="child.value"> <p class="modular-content-p-val" v-if="child.value">
<span v-for="(item, index) in child.value.split(',')" :key="index"> <span v-for="(item, index) in child.value.split(',')" :key="index">
<a @click="showReplaceStandInfo(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" <a @click="showReplaceStandInfo(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;"
class="span-line">{{ item }}</a> class="span-line" :title="item">{{ item }}</a>
</span> </span>
</p> </p>
<span class="modular-content-p-val" v-else>-</span> <span class="modular-content-p-val" v-else>-</span>
@@ -679,7 +679,7 @@
<!-- <span style="cursor: pointer;" @click="openFileInPdf(file.id, file.oldFileName)">|{{file.id}}|</span>--> <!-- <span style="cursor: pointer;" @click="openFileInPdf(file.id, file.oldFileName)">|{{file.id}}|</span>-->
<!--发布稿、增补件单独设置下载权限--> <!--发布稿、增补件单独设置下载权限-->
<template v-if="child.attrField === 'GLWJ'"> <template v-if="child.attrField === 'GLWJ'">
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank">{{ <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
<i <i
@@ -702,7 +702,7 @@
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>--> <!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
</template> </template>
<template v-else> <template v-else>
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank">{{ <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
<i <i
@@ -1461,7 +1461,7 @@
</el-dialog> </el-dialog>
<!-- 更新LOG --> <!-- 更新LOG -->
<el-dialog <el-dialog
title="更新LOG" title="更新记录"
:visible.sync="relateDialog" :visible.sync="relateDialog"
class="relateClass" class="relateClass"
width="60%" width="60%"
@@ -3229,12 +3229,13 @@ export default {
window.open(routeUrl.href, '_blank') window.open(routeUrl.href, '_blank')
}, },
searchSarStandItems() { searchSarStandItems() {
this.standItemSearch.page = 1 this.page7 = 1
this.selectSarStandItems() this.selectSarStandItems()
}, },
// 清空搜索框 // 清空搜索框
clearAllSearch() { clearAllSearch() {
// 标准条款搜索 // 标准条款搜索
this.page7 = 1
this.standItemSearch.responsibleUnit = '' this.standItemSearch.responsibleUnit = ''
this.standItemSearch.orgName = '' this.standItemSearch.orgName = ''
this.standItemSearch.parts = '' this.standItemSearch.parts = ''
@@ -3872,7 +3873,17 @@ export default {
<style lang="less" scoped> <style lang="less" scoped>
@import '~@/assets/styles/mixins'; @import '~@/assets/styles/mixins';
@import '~@/assets/styles/style'; @import '~@/assets/styles/style';
.files-title {
display: flex;
align-items: center;
a {
overflow: hidden;
text-overflow: ellipsis;
width: calc(~'100% - 40px');
white-space: nowrap;
display: block;
}
}
/deep/ .el-icon-circle-close:before { /deep/ .el-icon-circle-close:before {
margin-left: 250px; margin-left: 250px;
} }
+2 -2
View File
@@ -12,7 +12,7 @@
<div class="modular-header-btn"> <div class="modular-header-btn">
<el-button v-if="sarStandardsInfoEO.collectId" @click="collectClick(sarStandardsInfoEO.collectId)" title="取消收藏" class="collection-btn" icon="icon-collection" :loading="isSubmit"></el-button> <el-button v-if="sarStandardsInfoEO.collectId" @click="collectClick(sarStandardsInfoEO.collectId)" title="取消收藏" class="collection-btn" icon="icon-collection" :loading="isSubmit"></el-button>
<el-button v-else @click="collectClick()" title="收藏" class="collection-btn" icon="el-icon-star-off" :loading="isSubmit"></el-button> <el-button v-else @click="collectClick()" title="收藏" class="collection-btn" icon="el-icon-star-off" :loading="isSubmit"></el-button>
<el-button class="relation-btn" icon="icon-relation" @click="relateEvent()">更新LOG</el-button> <el-button class="relation-btn" icon="icon-relation" @click="relateEvent()">更新记录</el-button>
<el-button class="relation-btn" @click="knowledgeSharing">知识点分享</el-button> <el-button class="relation-btn" @click="knowledgeSharing">知识点分享</el-button>
<el-button class="relation-btn" @click="comparisonDialogOpen">比对</el-button> <el-button class="relation-btn" @click="comparisonDialogOpen">比对</el-button>
</div> </div>
@@ -656,7 +656,7 @@
</el-drawer> </el-drawer>
<!-- 更新LOG --> <!-- 更新LOG -->
<el-dialog <el-dialog
title="更新LOG" title="更新记录"
:visible.sync="relateDialog" :visible.sync="relateDialog"
class="relateClass" class="relateClass"
width="60%" width="60%"
@@ -238,7 +238,7 @@ export default {
prcType: row.prcType prcType: row.prcType
} }
}) })
}else if (row.taskInfo === '批准'){ }else if (row.taskInfo === '培训'){
this.$router.push({ this.$router.push({
name: 'bussLibrary11', name: 'bussLibrary11',
query: { query: {
@@ -1674,7 +1674,7 @@ export default {
prcType: row.prcType prcType: row.prcType
} }
}) })
}else if(row.taskInfo === '企标制修订计划整改') { }else if(row.taskInfo === '重新起草') {
this.$router.push({ this.$router.push({
name: 'qbzxdjhgkStep1', name: 'qbzxdjhgkStep1',
query: { query: {
@@ -90,7 +90,7 @@
<div class="itemsText" @click="itemsTextDialog(scope.row.itemsNum, scope.row.itermsConditions)">{{ scope.row.itermsConditions ? scope.row.itermsConditions.replace(/<.*?>/ig, ' ') : '' }}</div> <div class="itemsText" @click="itemsTextDialog(scope.row.itemsNum, scope.row.itermsConditions)">{{ scope.row.itermsConditions ? scope.row.itermsConditions.replace(/<.*?>/ig, ' ') : '' }}</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('m.operation')" align="center" width="50" :resizable="false" fixed="right"> <el-table-column label="操作" align="center" width="50" :resizable="false" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<div @click.stop style="display: inline-block"> <div @click.stop style="display: inline-block">
<el-dropdown trigger="click" @command="handleCommand"> <el-dropdown trigger="click" @command="handleCommand">
@@ -108,13 +108,13 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
<loading :loading="loading">{{$t('m.getting')}}……</loading> <loading :loading="loading">正在获取中……</loading>
<pagination :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination> <pagination :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
</div> </div>
</div> </div>
<!-- 分享 --> <!-- 分享 -->
<el-drawer <el-drawer
:title="$t('m.sharingStandards')" title="分享标准"
:visible.sync="drawerModal" :visible.sync="drawerModal"
size="300px" size="300px"
@close="drawerModal = false" @close="drawerModal = false"
@@ -128,8 +128,8 @@
style="padding: 0 15px"> style="padding: 0 15px">
</dept-tree> </dept-tree>
<div class="demo-drawer-footer"> <div class="demo-drawer-footer">
<el-button style="margin-right: 8px" @click="drawerModal = false">{{$t('m.cancel')}}</el-button> <el-button style="margin-right: 8px" @click="drawerModal = false">取消</el-button>
<el-button type="primary" @click="shareStandardBt">{{$t('m.push')}}</el-button> <el-button type="primary" @click="shareStandardBt">推送</el-button>
</div> </div>
</el-drawer> </el-drawer>
<!-- 内容简介--> <!-- 内容简介-->
@@ -169,7 +169,7 @@
</div> </div>
</div> </div>
<div class="demo-drawer-footer"> <div class="demo-drawer-footer">
<el-button icon="el-icon-close" size="mini" @click="cancleUpdateContent">{{$t('m.cancel')}}</el-button> <el-button icon="el-icon-close" size="mini" @click="cancleUpdateContent">取消</el-button>
</div> </div>
</el-drawer> </el-drawer>
<!-- 编辑条目 --> <!-- 编辑条目 -->
@@ -273,7 +273,7 @@
<div style="border:1px dashed #999;margin-bottom:20px;padding:10px"> <div style="border:1px dashed #999;margin-bottom:20px;padding:10px">
<el-row type="flex" class="row-bg" justify="space-between"> <el-row type="flex" class="row-bg" justify="space-between">
<el-col :span="6"> <el-col :span="6">
<el-button size="small" icon="el-icon-plus" @click="showAddContentInfo('noIndex')">{{$t('m.addTo')}}</el-button> <el-button size="small" icon="el-icon-plus" @click="showAddContentInfo('noIndex')">添加</el-button>
</el-col> </el-col>
</el-row> </el-row>
<div v-for="(item, index) in itemsContentList" :key="index"> <div v-for="(item, index) in itemsContentList" :key="index">
@@ -296,9 +296,9 @@
</div> </div>
</el-col> </el-col>
<el-col :span="item.type === 'TABLE' ? 8 : 6" style="display:flex;justify-content: flex-end;"> <el-col :span="item.type === 'TABLE' ? 8 : 6" style="display:flex;justify-content: flex-end;">
<el-button size="mini" class="updateContentBtn" icon="el-icon-plus" @click="showAddContentInfo(index)">{{$t('m.addTo')}}</el-button> <el-button size="mini" class="updateContentBtn" icon="el-icon-plus" @click="showAddContentInfo(index)">添加</el-button>
<el-button size="mini" v-if="item.type === 'TABLE'" class="updateContentBtn" icon="el-icon-edit" @click="editContentInfo(item, index)">{{$t('m.update')}}</el-button> <el-button size="mini" v-if="item.type === 'TABLE'" class="updateContentBtn" icon="el-icon-edit" @click="editContentInfo(item, index)">修改</el-button>
<el-button size="mini" class="updateContentBtn" icon="el-icon-minus" @click="removeContentInfo(index, item.id)">{{$t('m.delete')}}</el-button> <el-button size="mini" class="updateContentBtn" icon="el-icon-minus" @click="removeContentInfo(index, item.id)">删除</el-button>
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
@@ -306,8 +306,8 @@
</el-form> </el-form>
</div> </div>
<div class="demo-drawer-footer"> <div class="demo-drawer-footer">
<el-button size="mini" icon="el-icon-close" style="margin-right: 8px" @click="modalItemaddShowflag = false">{{$t('m.cancel')}}</el-button> <el-button size="mini" icon="el-icon-close" style="margin-right: 8px" @click="modalItemaddShowflag = false">取消</el-button>
<el-button size="mini" icon="el-icon-check" type="primary" @click="updateItemInfo" :loading="isSubmit">{{$t('m.submit')}}</el-button> <el-button size="mini" icon="el-icon-check" type="primary" @click="updateItemInfo" :loading="isSubmit">提交</el-button>
</div> </div>
</el-drawer> </el-drawer>
<!-- 查看属性 --> <!-- 查看属性 -->
@@ -480,7 +480,7 @@
</el-drawer> </el-drawer>
<!--编辑条款内容--> <!--编辑条款内容-->
<el-drawer <el-drawer
:title="$t('m.editTerms')" title="编辑条款内容"
:wrapperClosable="false" :wrapperClosable="false"
:visible.sync="editItemsContentModel" :visible.sync="editItemsContentModel"
size="800px" size="800px"
@@ -491,7 +491,7 @@
<div class="otherStandardDetails-drawer-content"> <div class="otherStandardDetails-drawer-content">
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-button icon="md-add" @click="showAddContentInfo('noIndex')">{{$t('m.addTo')}}</el-button> <el-button icon="md-add" @click="showAddContentInfo('noIndex')">添加</el-button>
</el-col> </el-col>
</el-row> </el-row>
<div v-for="(item, index) in itemsContentList" :key="index"> <div v-for="(item, index) in itemsContentList" :key="index">
@@ -521,37 +521,37 @@
</div> </div>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-button class="updateContentBtn" icon="md-add" @click="showAddContentInfo(index)">{{$t('m.addContent')}}</el-button> <el-button class="updateContentBtn" icon="md-add" @click="showAddContentInfo(index)">添加内容</el-button>
<el-button class="updateContentBtn" icon="md-remove" @click="removeContentInfo(index, item.id)">{{$t('m.delete')}}</el-button> <el-button class="updateContentBtn" icon="md-remove" @click="removeContentInfo(index, item.id)">删除</el-button>
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
</div> </div>
</div> </div>
<div class="demo-drawer-footer"> <div class="demo-drawer-footer">
<el-button style="margin-right: 8px" @click="editItemsContentModel = false">{{$t('m.cancel')}}</el-button> <el-button style="margin-right: 8px" @click="editItemsContentModel = false">取消</el-button>
<el-button type="primary" @click="updateItemInfo('content')" :loading="isSubmit">{{$t('m.save')}}</el-button> <el-button type="primary" @click="updateItemInfo('content')" :loading="isSubmit">保存</el-button>
</div> </div>
</el-drawer> </el-drawer>
<!-- 选择添加内容类型--> <!-- 选择添加内容类型-->
<el-dialog :visible.sync="chooseAddTypeModel" :title="$t('m.selectAddContentType')" width="700px" :show-close="false"> <el-dialog :visible.sync="chooseAddTypeModel" title="选择添加内容类型" width="700px" :show-close="false">
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-button icon="el-icon-plus" @click="chooseType('TEXT')" class="chooseBtn">{{$t('m.addText')}}</el-button> <el-button icon="el-icon-plus" @click="chooseType('TEXT')" class="chooseBtn">添加文本</el-button>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-button icon="el-icon-plus" @click="chooseType('IMG')" class="chooseBtn">{{$t('m.addPicture')}}</el-button> <el-button icon="el-icon-plus" @click="chooseType('IMG')" class="chooseBtn">添加图片</el-button>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-button icon="el-icon-plus" @click="chooseType('TABLE')">{{$t('m.addTable')}}</el-button> <el-button icon="el-icon-plus" @click="chooseType('TABLE')">添加表格</el-button>
</el-col> </el-col>
</el-row> </el-row>
<div slot="footer"> <div slot="footer">
<el-button size="small" @click="chooseAddTypeModel = false">{{$t('m.cancel')}}</el-button> <el-button size="small" @click="chooseAddTypeModel = false">取消</el-button>
<el-button size="small" type="primary" @click="addContentInfo">{{$t('m.sure')}}</el-button> <el-button size="small" type="primary" @click="addContentInfo">确定</el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog :visible.sync="showUploadModelFlag" :title="$t('m.uploadPictures')" width="700px"> <el-dialog :visible.sync="showUploadModelFlag" title="上传图片" width="700px">
<el-upload <el-upload
:action="importImgUrl" :action="importImgUrl"
ref="importImg" ref="importImg"
@@ -561,25 +561,25 @@
:before-upload="imgBeforeUpload" :before-upload="imgBeforeUpload"
:show-file-list="showUploadlist" :show-file-list="showUploadlist"
:file-list="defaultFileList"> :file-list="defaultFileList">
<el-button icon="el-icon-upload">{{$t('m.uploadPictures')}}</el-button> <el-button icon="el-icon-upload">上传图片</el-button>
</el-upload> </el-upload>
</el-dialog> </el-dialog>
<el-dialog :visible.sync="showTableModelFlag" :title="$t('m.tableProperties')" width="700px"> <el-dialog :visible.sync="showTableModelFlag" title="表格属性" width="700px">
<el-row> <el-row>
<el-col :span="16"> <el-col :span="16">
<span>{{$t('m.numberOfRows')}}:</span> <span>行数:</span>
<el-input class="updateContentInput" v-model.trim="rowCount" placeholder="$t('m.pleaseEnterAPositiveInteger')" clearable :maxlength="2"></el-input> <el-input class="updateContentInput" v-model.trim="rowCount" placeholder="请输入正整数" clearable :maxlength="2"></el-input>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="16"> <el-col :span="16">
<span>{{$t('m.numberOfColumns')}}</span> <span>列数</span>
<el-input class="updateContentInput" v-model.trim="colCount" :placeholder="$t('m.pleaseEnterAPositiveInteger')" clearable :maxlength="2"></el-input> <el-input class="updateContentInput" v-model.trim="colCount" placeholder="请输入正整数" clearable :maxlength="2"></el-input>
</el-col> </el-col>
</el-row> </el-row>
<div slot="footer"> <div slot="footer">
<el-button size="mini" @click="showTableModelFlag = false">{{$t('m.cancel')}}</el-button> <el-button size="mini" @click="showTableModelFlag = false">取消</el-button>
<el-button size="mini" type="primary" @click="addTableInfo">{{$t('m.sure')}}</el-button> <el-button size="mini" type="primary" @click="addTableInfo">确定</el-button>
</div> </div>
</el-dialog> </el-dialog>
<!-- 树结构添加树组织--> <!-- 树结构添加树组织-->
@@ -607,44 +607,44 @@
<el-button class="common-button-default" icon="el-icon-close" @click="menuModalFlag = false">取消</el-button> <el-button class="common-button-default" icon="el-icon-close" @click="menuModalFlag = false">取消</el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog :title="$t('m.confirmDeletion')" width="300px" :visible.sync="deleteMenuModal"> <el-dialog title="确认删除" width="300px" :visible.sync="deleteMenuModal">
<p>该节点下有记录,是否删除?</p> <p>该节点下有记录,是否删除?</p>
<div slot="footer"> <div slot="footer">
<el-button size="mini" @click="deleteMenuModal = false">{{$t('m.cancel')}}</el-button> <el-button size="mini" @click="deleteMenuModal = false">取消</el-button>
<el-button type="primary" size="mini" @click="sureDeleteSarMenu">{{$t('m.sure')}}</el-button> <el-button type="primary" size="mini" @click="sureDeleteSarMenu">确定</el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog :title="$t('m.confirmDeletion')" width="300px" :visible.sync="deleteItemsModal"> <el-dialog title="确认删除" width="300px" :visible.sync="deleteItemsModal">
<p>选择条款关联节点下包含子节点,是否全部删除?</p> <p>选择条款关联节点下包含子节点,是否全部删除?</p>
<div slot="footer" class="demo-drawer-footer"> <div slot="footer" class="demo-drawer-footer">
<el-button class="common-button-default" @click="deleteItemsModal = false">{{$t('m.cancel')}}</el-button> <el-button class="common-button-default" @click="deleteItemsModal = false">取消</el-button>
<el-button calss="common-button-primary" type="primary" @click="batchDeleteItem">{{$t('m.sure')}}</el-button> <el-button calss="common-button-primary" type="primary" @click="batchDeleteItem">确定</el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog :visible.sync="importModalshowflagtemp" :title="$t('m.importFile')" width="400px"> <!-- <el-dialog :visible.sync="importModalshowflagtemp" :title="$t('m.importFile')" width="400px">-->
<el-upload <!-- <el-upload-->
:multiple="false" <!-- :multiple="false"-->
drag <!-- drag-->
show-file-list <!-- show-file-list-->
:on-success="uploadSuccess" <!-- :on-success="uploadSuccess"-->
:on-remove="removeOneFile" <!-- :on-remove="removeOneFile"-->
:action="importImgUrl" <!-- :action="importImgUrl"-->
:file-list="defaultFilesList" <!-- :file-list="defaultFilesList"-->
accept=".PDF, .doc, .docx, .ppt, .pptx" <!-- accept=".PDF, .doc, .docx, .ppt, .pptx"-->
:before-upload="editBeforeUpload" <!-- :before-upload="editBeforeUpload"-->
name="file" <!-- name="file"-->
ref="importFileAboutLaws" <!-- ref="importFileAboutLaws"-->
> <!-- >-->
<div style="padding: 20px 0"> <!-- <div style="padding: 20px 0">-->
<i class="el-icon-upload" style="color: #3399ff; font-size: 52px;"></i> <!-- <i class="el-icon-upload" style="color: #3399ff; font-size: 52px;"></i>-->
<p>点击或拖拽上传文件</p> <!-- <p>点击或拖拽上传文件</p>-->
</div> <!-- </div>-->
</el-upload> <!-- </el-upload>-->
</el-dialog> <!-- </el-dialog>-->
<el-dialog :title="$t('m.showPictures')" width="600px" style="height: 800px;" :visible.sync="showImg"> <el-dialog title="展示图片" width="600px" style="height: 800px;" :visible.sync="showImg">
<div v-html="preImgContent" class="preImgStyle"></div> <div v-html="preImgContent" class="preImgStyle"></div>
</el-dialog> </el-dialog>
<el-dialog :visible.sync="importModalshowflag" :title="$t('m.importFile')" width="400px"> <el-dialog :visible.sync="importModalshowflag" title="导入文件" width="400px">
<el-upload <el-upload
multiple multiple
:action="importExcelUrl" :action="importExcelUrl"
@@ -667,18 +667,18 @@
<span>{{ importForm.content }}</span> <span>{{ importForm.content }}</span>
</div> </div>
<div slot="footer"> <div slot="footer">
<el-button type="primary" size="large" @click="importFailed = false">{{$t('m.confirm')}}</el-button> <el-button type="primary" size="large" @click="importFailed = false">确认</el-button>
</div> </div>
</el-dialog> </el-dialog>
<!-- 修改模态框 --> <!-- 修改模态框 -->
<el-drawer <el-drawer
:visible.sync="editInfoModal" :visible.sync="editInfoModal"
:title="$t('m.modifyInformation')" title="修改信息"
size="700px"> size="700px">
<UEditor :content="ueContent" :config="config" ref="ueditor" @editor-onChange="uEditorChange"></UEditor> <UEditor :content="ueContent" :config="config" ref="ueditor" @editor-onChange="uEditorChange"></UEditor>
<div class="demo-drawer-footer"> <div class="demo-drawer-footer">
<el-button size="mini" @click="editInfoModal = false">{{$t('m.cancel')}}</el-button> <el-button size="mini" @click="editInfoModal = false">取消</el-button>
<el-button size="mini" type="primary" @click="editInfoModalSave">{{$t('m.save')}}</el-button> <el-button size="mini" type="primary" @click="editInfoModalSave">保存</el-button>
</div> </div>
</el-drawer> </el-drawer>
<!--内容简介--> <!--内容简介-->
@@ -1289,7 +1289,7 @@ export default {
this.selectSarMenu = JSON.parse(JSON.stringify(treeNode)) this.selectSarMenu = JSON.parse(JSON.stringify(treeNode))
if (undefined !== this.selectSarMenu.id) { // 当前有选中节点 if (undefined !== this.selectSarMenu.id) { // 当前有选中节点
if (name === 'newMenu') { if (name === 'newMenu') {
this.menuModalTitle = this.$t('m.newContents') this.menuModalTitle = '新增目录'
this.menuModalFlag = true this.menuModalFlag = true
this.menuAddOrUpdateFlag = 1 this.menuAddOrUpdateFlag = 1
this.sarMenu.infoId = this.infoId this.sarMenu.infoId = this.infoId
@@ -1299,7 +1299,7 @@ export default {
}) })
} else if (name === 'editMenu') { } else if (name === 'editMenu') {
this.menuAddOrUpdateFlag = 2 this.menuAddOrUpdateFlag = 2
this.menuModalTitle = this.$t('m.editDirectory') this.menuModalTitle = '编辑目录'
this.menuModalFlag = true this.menuModalFlag = true
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.addMenuForm.resetFields() this.$refs.addMenuForm.resetFields()
+12 -12
View File
@@ -354,9 +354,9 @@ export default {
let yy = new Date().getFullYear(); let yy = new Date().getFullYear();
let mm = new Date().getMonth() + 1; let mm = new Date().getMonth() + 1;
let dd = new Date().getDate(); let dd = new Date().getDate();
if (mm < 10) { // if (mm < 10) {
mm = this.padding0(mm, 2) // mm = this.padding0(mm, 2)
} // }
if (dd < 10) { if (dd < 10) {
dd = this.padding0(dd, 2) dd = this.padding0(dd, 2)
} }
@@ -443,9 +443,9 @@ export default {
let yy = new Date().getFullYear(); let yy = new Date().getFullYear();
let mm = new Date().getMonth() + 1; let mm = new Date().getMonth() + 1;
let dd = new Date().getDate(); let dd = new Date().getDate();
if (mm < 10) { // if (mm < 10) {
mm = this.padding0(mm, 2) // mm = this.padding0(mm, 2)
} // }
this.formData.month = mm + '月' this.formData.month = mm + '月'
if (dd < 10) { if (dd < 10) {
dd = this.padding0(dd, 2) dd = this.padding0(dd, 2)
@@ -800,12 +800,12 @@ export default {
let yy = new Date().getFullYear(); let yy = new Date().getFullYear();
let mm = new Date().getMonth() + 1; let mm = new Date().getMonth() + 1;
let dd = new Date().getDate(); let dd = new Date().getDate();
if (mm < 10) { // if (mm < 10) {
mm = this.padding0(mm, 2) // mm = this.padding0(mm, 2)
} // }
if (dd < 10) { // if (dd < 10) {
dd = this.padding0(dd, 2) // dd = this.padding0(dd, 2)
} // }
this.nowDate = yy + '-' + mm + '-' + dd this.nowDate = yy + '-' + mm + '-' + dd
this.formData.year = yy + '年' this.formData.year = yy + '年'
this.formData.month = mm + '月' this.formData.month = mm + '月'
@@ -1076,6 +1076,7 @@ export default {
// 修改成表格样式后,选择项勾选改变 // 修改成表格样式后,选择项勾选改变
standSelectChange(data) { standSelectChange(data) {
this.selectTableData = []; this.selectTableData = [];
this.selectTableDatas = []
for (let i = 0; i < data.length; i++) { for (let i = 0; i < data.length; i++) {
this.selectTableData.push(data[i].id); this.selectTableData.push(data[i].id);
this.selectTableDatas.push(data[i]) this.selectTableDatas.push(data[i])
+7 -7
View File
@@ -3,7 +3,7 @@
<div id="dynamicInformation" class="dynamic-information v-class"> <div id="dynamicInformation" class="dynamic-information v-class">
<div class="dynamic-content"> <div class="dynamic-content">
<!-- 实施预警 --> <!-- 实施预警 -->
<div class="dynamic" style="overflow-y: auto;"> <div class="dynamic">
<div class="container"> <div class="container">
<!-- <el-tabs v-model="activeName" @tab-click="handleClick">--> <!-- <el-tabs v-model="activeName" @tab-click="handleClick">-->
<!-- <el-tab-pane label="标准预警" name="STANDARD">--> <!-- <el-tab-pane label="标准预警" name="STANDARD">-->
@@ -689,11 +689,11 @@ export default {
this.$http.get('sys/EarlyWarning/ChangePermissions', { this.$http.get('sys/EarlyWarning/ChangePermissions', {
id: row.id, id: row.id,
}, {}, res => { }, {}, res => {
this.pageConfig.page = 1 this.pageConfig.page = 1
this.pageConfig.newPolicyPage = 1 this.pageConfig.newPolicyPage = 1
this.pageConfig.oldPolicyPage = 1 this.pageConfig.oldPolicyPage = 1
this.searchBtnClick() this.searchBtnClick()
this.getEarlyDate() this.getEarlyDate()
} }
) )
}).catch(() => { }).catch(() => {
@@ -1049,7 +1049,7 @@ export default {
.content { .content {
padding-bottom: 10px; padding-bottom: 10px;
height: calc(~'100% - 7%'); height: calc(~'100% - 25%') ;
/deep/ .el-button--mini { /deep/ .el-button--mini {
padding: 5px 7px; padding: 5px 7px;
@@ -121,7 +121,7 @@ export default {
for (var i = 0; i < this.selected.length; i++) { for (var i = 0; i < this.selected.length; i++) {
this.targetKeys.push(this.selected[i].id) this.targetKeys.push(this.selected[i].id)
} }
// 左侧数据会筛选出右侧数据进行显示 // 左侧数据会筛选出右侧数据进行显示
var j var j
for (j = 0; j < res.data.records.length; j++) { for (j = 0; j < res.data.records.length; j++) {
let moduleLabel = {} let moduleLabel = {}
@@ -169,14 +169,14 @@
show-overflow-tooltip show-overflow-tooltip
align="center"> align="center">
</el-table-column> </el-table-column>
<el-table-column <!-- <el-table-column-->
v-if="sarType === 'FOREIGN' && form.itemsNum1" <!-- v-if="sarType === 'FOREIGN' && form.itemsNum1"-->
prop="changePoint" <!-- prop="changePoint"-->
width="150" <!-- width="150"-->
label="相对于国行标差异点" <!-- label="相对于国行标差异点"-->
show-overflow-tooltip <!-- show-overflow-tooltip-->
align="center"> <!-- align="center">-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column <el-table-column
label="操作" label="操作"
width="240" width="240"
@@ -411,8 +411,8 @@
<div style="margin: 10px 5px;">比对条款: {{ plForm.itemsNum }}</div> <div style="margin: 10px 5px;">比对条款: {{ plForm.itemsNum }}</div>
<div style="margin: 10px 5px 5px;">相似度: {{ similarityDegree }}</div> <div style="margin: 10px 5px 5px;">相似度: {{ similarityDegree }}</div>
<div style="overflow: auto;display: flex;" class="BDclass"> <div style="overflow: auto;display: flex;" class="BDclass">
<div v-html="leftData" style="margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div> <div v-html="leftData" style="line-height: 20px;margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div>
<div v-html="rightData" style="margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div> <div v-html="rightData" style="line-height: 20px;margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div>
</div> </div>
</div> </div>
</div> </div>
@@ -220,14 +220,14 @@
show-overflow-tooltip show-overflow-tooltip
align="center"> align="center">
</el-table-column> </el-table-column>
<el-table-column <!-- <el-table-column-->
v-show="sarType === 'FOREIGN' && form.itemsNum1" <!-- v-show="sarType === 'FOREIGN' && form.itemsNum1"-->
prop="changePoint" <!-- prop="changePoint"-->
width="150" <!-- width="150"-->
label="相对于国行标差异点" <!-- label="相对于国行标差异点"-->
show-overflow-tooltip <!-- show-overflow-tooltip-->
align="center"> <!-- align="center">-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column <el-table-column
label="责任人" label="责任人"
width="170" width="170"
@@ -170,14 +170,14 @@
show-overflow-tooltip show-overflow-tooltip
align="center"> align="center">
</el-table-column> </el-table-column>
<el-table-column <!-- <el-table-column-->
v-if="sarType === 'FOREIGN' && form.itemsNum1" <!-- v-if="sarType === 'FOREIGN' && form.itemsNum1"-->
prop="changePoint" <!-- prop="changePoint"-->
width="150" <!-- width="150"-->
label="相对于国行标差异点" <!-- label="相对于国行标差异点"-->
show-overflow-tooltip <!-- show-overflow-tooltip-->
align="center"> <!-- align="center">-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column <el-table-column
label="责任人" label="责任人"
width="170" width="170"
@@ -419,8 +419,8 @@
<div style="margin: 10px 5px;">比对条款: {{ plForm.itemsNum }}</div> <div style="margin: 10px 5px;">比对条款: {{ plForm.itemsNum }}</div>
<div style="margin: 10px 5px 5px;">相似度: {{ similarityDegree }}</div> <div style="margin: 10px 5px 5px;">相似度: {{ similarityDegree }}</div>
<div style="overflow: auto;display: flex;" class="BDclass"> <div style="overflow: auto;display: flex;" class="BDclass">
<div v-html="leftData" style="margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div> <div v-html="leftData" style="line-height: 20px;margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div>
<div v-html="rightData" style="margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div> <div v-html="rightData" style="line-height: 20px;margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div>
</div> </div>
</div> </div>
</div> </div>
@@ -154,14 +154,14 @@
show-overflow-tooltip show-overflow-tooltip
align="center"> align="center">
</el-table-column> </el-table-column>
<el-table-column <!-- <el-table-column-->
v-if="sarType === 'FOREIGN' && form.itemsNum1" <!-- v-if="sarType === 'FOREIGN' && form.itemsNum1"-->
prop="changePoint" <!-- prop="changePoint"-->
width="150" <!-- width="150"-->
label="相对于国行标差异点" <!-- label="相对于国行标差异点"-->
show-overflow-tooltip <!-- show-overflow-tooltip-->
align="center"> <!-- align="center">-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column <el-table-column
label="责任人" label="责任人"
width="170" width="170"
@@ -169,14 +169,14 @@
show-overflow-tooltip show-overflow-tooltip
align="center"> align="center">
</el-table-column> </el-table-column>
<el-table-column <!-- <el-table-column-->
v-if="sarType === 'FOREIGN' && form.itemsNum1" <!-- v-if="sarType === 'FOREIGN' && form.itemsNum1"-->
prop="changePoint" <!-- prop="changePoint"-->
width="150" <!-- width="150"-->
label="相对于国行标差异点" <!-- label="相对于国行标差异点"-->
show-overflow-tooltip <!-- show-overflow-tooltip-->
align="center"> <!-- align="center">-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column <el-table-column
prop="complianceRequir" prop="complianceRequir"
width="150" width="150"
@@ -378,8 +378,8 @@
<div style="margin: 10px 5px;">比对条款: {{ editForm.itemsNum }}</div> <div style="margin: 10px 5px;">比对条款: {{ editForm.itemsNum }}</div>
<div style="margin: 10px 5px 5px;">相似度: {{ similarityDegree }}</div> <div style="margin: 10px 5px 5px;">相似度: {{ similarityDegree }}</div>
<div style="overflow: auto;display: flex;" class="BDclass"> <div style="overflow: auto;display: flex;" class="BDclass">
<div v-html="leftData" style="margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div> <div v-html="leftData" style="line-height: 20px;margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div>
<div v-html="rightData" style="margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div> <div v-html="rightData" style="line-height: 20px;margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div>
</div> </div>
</div> </div>
</div> </div>
@@ -163,14 +163,14 @@
show-overflow-tooltip show-overflow-tooltip
align="center"> align="center">
</el-table-column> </el-table-column>
<el-table-column <!-- <el-table-column-->
v-show="sarType === 'FOREIGN' && form.itemsNum1" <!-- v-show="sarType === 'FOREIGN' && form.itemsNum1"-->
prop="changePoint" <!-- prop="changePoint"-->
width="150" <!-- width="150"-->
label="相对于国行标差异点" <!-- label="相对于国行标差异点"-->
show-overflow-tooltip <!-- show-overflow-tooltip-->
align="center"> <!-- align="center">-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column <el-table-column
prop="complianceRequir" prop="complianceRequir"
width="150" width="150"
@@ -163,14 +163,14 @@
show-overflow-tooltip show-overflow-tooltip
align="center"> align="center">
</el-table-column> </el-table-column>
<el-table-column <!-- <el-table-column-->
v-show="sarType === 'FOREIGN' && form.itemsNum1" <!-- v-show="sarType === 'FOREIGN' && form.itemsNum1"-->
prop="changePoint" <!-- prop="changePoint"-->
width="150" <!-- width="150"-->
label="相对于国行标差异点" <!-- label="相对于国行标差异点"-->
show-overflow-tooltip <!-- show-overflow-tooltip-->
align="center"> <!-- align="center">-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column <el-table-column
prop="complianceRequir" prop="complianceRequir"
width="150" width="150"
@@ -163,14 +163,14 @@
show-overflow-tooltip show-overflow-tooltip
align="center"> align="center">
</el-table-column> </el-table-column>
<el-table-column <!-- <el-table-column-->
v-show="sarType === 'FOREIGN' && form.itemsNum1" <!-- v-show="sarType === 'FOREIGN' && form.itemsNum1"-->
prop="changePoint" <!-- prop="changePoint"-->
width="150" <!-- width="150"-->
label="相对于国行标差异点" <!-- label="相对于国行标差异点"-->
show-overflow-tooltip <!-- show-overflow-tooltip-->
align="center"> <!-- align="center">-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column <el-table-column
prop="complianceRequir" prop="complianceRequir"
width="150" width="150"
@@ -148,12 +148,14 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="!changePoint"
prop="technicalRequir" prop="technicalRequir"
align="center" align="center"
width="200px" width="200px"
label="核心技术要求/变化点"> label="核心技术要求/变化点">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="changePoint"
prop="changePoint" prop="changePoint"
align="center" align="center"
width="200px" width="200px"
@@ -200,12 +200,14 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="!changePoint"
prop="technicalRequir" prop="technicalRequir"
align="center" align="center"
width="250" width="250"
label="核心技术要求/变化点"> label="核心技术要求/变化点">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="changePoint"
prop="changePoint" prop="changePoint"
width="250" width="250"
align="center" align="center"
@@ -193,12 +193,14 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="!changePoint"
prop="technicalRequir" prop="technicalRequir"
align="center" align="center"
width="250" width="250"
label="核心技术要求/变化点"> label="核心技术要求/变化点">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="changePoint"
prop="changePoint" prop="changePoint"
width="250" width="250"
align="center" align="center"
@@ -202,12 +202,14 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="!changePoint"
prop="technicalRequir" prop="technicalRequir"
align="center" align="center"
width="250" width="250"
label="核心技术要求/变化点"> label="核心技术要求/变化点">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="changePoint"
prop="changePoint" prop="changePoint"
width="250" width="250"
align="center" align="center"
@@ -202,12 +202,14 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="!changePoint"
prop="technicalRequir" prop="technicalRequir"
align="center" align="center"
width="250" width="250"
label="核心技术要求/变化点"> label="核心技术要求/变化点">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="changePoint"
prop="changePoint" prop="changePoint"
width="250" width="250"
align="center" align="center"
@@ -202,12 +202,14 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="!changePoint"
prop="technicalRequir" prop="technicalRequir"
align="center" align="center"
width="250" width="250"
label="核心技术要求/变化点"> label="核心技术要求/变化点">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="changePoint"
prop="changePoint" prop="changePoint"
width="250" width="250"
align="center" align="center"
@@ -1456,6 +1456,7 @@ export default {
callback() callback()
} }
return { return {
gdType: '', //归档位置的赋值
standTypeModel: 'INLAND', standTypeModel: 'INLAND',
submitType: '', submitType: '',
nodeList3: [], nodeList3: [],
@@ -2223,6 +2224,7 @@ export default {
switch (status) { switch (status) {
// 新增 // 新增
case 1: case 1:
this.gdType = '新增'
this.selectedList = [] this.selectedList = []
this.standardCheckedList = [] this.standardCheckedList = []
this.standardDrawer = false this.standardDrawer = false
@@ -2231,6 +2233,7 @@ export default {
break break
// 带入(确认) // 带入(确认)
case 2: case 2:
this.gdType = '带入'
if (this.standardCheckedList.length === 1) { if (this.standardCheckedList.length === 1) {
this.$http.get('sarStandardsInfo/sar-standards-info/getStandInfoUpdateById', {id: this.standardCheckedList[0].id}, { this.$http.get('sarStandardsInfo/sar-standards-info/getStandInfoUpdateById', {id: this.standardCheckedList[0].id}, {
_this: this _this: this
@@ -2368,7 +2371,7 @@ export default {
}, {}, res => { }, {}, res => {
if (res.ok) { if (res.ok) {
this.treeListOptions = res.data this.treeListOptions = res.data
if(bringData.standNumber){ if(this.gdType === '带入'){
this.$http.get('sarStandardsInfo/sar-standards-info/getStandMenuId', { this.$http.get('sarStandardsInfo/sar-standards-info/getStandMenuId', {
standId: bringData.id, standId: bringData.id,
}, {}, reson => { }, {}, reson => {
@@ -2388,6 +2391,20 @@ export default {
this.form.treeListId = treeListId this.form.treeListId = treeListId
} }
}) })
}else{
let treeList = ''
let treeListId = ''
reson.data.forEach(item=>{
this.treeCheckedKeys.push(item.menuId)
if (treeList.length > 0) {
treeList += ','
treeListId += ','
}
treeList += item.menuName
treeListId += item.menuId
})
this.form.treeListName = treeList
this.form.treeListId = treeListId
} }
} }
}) })
@@ -636,33 +636,16 @@
</el-form> </el-form>
</div> </div>
<div> <div>
<el-collapse accordion v-model="activeName"> <el-collapse accordion>
<el-collapse-item title="审批意见" name="1"> <el-collapse-item title="审批意见">
<div style="margin: 10px 0;"> <div style="margin: 10px 0;">
<el-form <el-input
ref="formTongGuo" type="textarea"
:model="formTongGuo" :rows="3"
:rules="rules"> resize="none"
<!-- <el-form-item--> placeholder="请输入意见"
<!-- prop="approvalOpinion"--> v-model="commentText">
<!-- >--> </el-input>
<!-- <el-select @change="getRule" v-model="formTongGuo.approvalOpinion" placeholder="请审批" style="margin-bottom: 20px;">-->
<!-- <el-option label="驳回" value="1"></el-option>-->
<!-- <el-option label="通过" value="0"></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item
prop="commentText"
>
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="formTongGuo.commentText">
</el-input>
</el-form-item>
</el-form>
</div> </div>
</el-collapse-item> </el-collapse-item>
</el-collapse> </el-collapse>
@@ -805,11 +788,11 @@
</template> </template>
<script> <script>
import ProcessHeader from '../../components/ProcessHeader' import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from '../../components/ProcessFooter' import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from '../../components/ProcessTitle' import ProcessTitle from "../../components/ProcessTitle";
import {inboundLiaisonDetail, processCreateStand, changeAssigneeNew } from 'api/process' import { changeAssigneeNew, inboundLiaisonDetail, processCreateStand } from "api/process";
import TreeSelect from '@/components/treeSelect/treeSelect.vue'; import TreeSelect from "@/components/treeSelect/treeSelect.vue";
import CusTomDataPickerGroup import CusTomDataPickerGroup
from "@/pages/regulatoryRepository/localProductsOrProjectLibrary/components/DatePickerGroup"; from "@/pages/regulatoryRepository/localProductsOrProjectLibrary/components/DatePickerGroup";
@@ -834,22 +817,23 @@ export default {
drawerModal: false, drawerModal: false,
drawerTitle: '', drawerTitle: '',
nodeList: [], nodeList: [],
selectPeople: '', selectPeople: "",
xgdFileId: '', xgdFileId: "",
fbgbjbdFileId: '', fbgbjbdFileId: "",
bpgFileId: '', bpgFileId: "",
ssgFileId: '', ssgFileId: "",
zqyjgFileId: '', zqyjgFileId: "",
jdwjFileId: '', jdwjFileId: "",
kwjFileId: '', kwjFileId: "",
glwjFileId: '', glwjFileId: "",
caFileId: '', caFileId: "",
zbjbdFileId: '', commentText: "",
zbjbdFileId: "",
rules: { rules: {
commentText: [{required: true, message: '请输入意见', trigger: 'blur'}], commentText: [{ required: true, message: "请输入意见", trigger: "blur" }],
approvalOpinion: [{required: true, message: '请选择审批意见', trigger: 'change'}] approvalOpinion: [{ required: true, message: "请选择审批意见", trigger: "change" }]
}, },
activeName: '1', activeName: "1",
// 当前流程类型(1待办/2已办) // 当前流程类型(1待办/2已办)
processType: 1, processType: 1,
detailData: [], detailData: [],
@@ -1224,76 +1208,77 @@ export default {
}, },
handleSave() { handleSave() {
}, },
//流程驳回按钮
handle1() { handle1() {
this.formTongGuo.approvalOpinion = 1 if (this.commentText) {
this.handleSubmit() this.formTongGuo.approvalOpinion = 1;
this.handleSubmit();
} else {
this.$message.warning("请填写审批意见");
}
}, },
//流程提交按钮
handle2() { handle2() {
this.formTongGuo.approvalOpinion = 0 this.formTongGuo.approvalOpinion = 0;
this.handleSubmit() this.handleSubmit();
}, },
handleSubmit() { handleSubmit() {
this.getRule()
const val = this.form.country; const val = this.form.country;
if (val !== '' && val !== null && typeof (val) !== 'undefined') { if (val !== "" && val !== null && typeof (val) !== "undefined") {
if (val instanceof Array) { if (val instanceof Array) {
this.form.country = val.join(","); this.form.country = val.join(",");
} else { } else {
this.form.country = val this.form.country = val;
} }
} else if (val === '') { } else if (val === "") {
this.form.country = [] this.form.country = [];
} }
this.$refs['formTongGuo'].validate((valid) => { this.isSubmit = true;
if (valid) { this.form.commentText = this.commentText;
this.isSubmit = true this.form.approvalOpinion = this.formTongGuo.approvalOpinion;
this.form.commentText = this.formTongGuo.commentText console.log(this.form);
this.form.approvalOpinion = this.formTongGuo.approvalOpinion if (this.form.syrz.length === 0) {
console.log(this.form) this.form.syrz = "";
if (this.form.syrz.length === 0) { }
this.form.syrz = '' if (this.form.nylx.length === 0) {
this.form.nylx = "";
}
if (this.form.zrbm.length === 0) {
this.form.zrbm = "";
}
if (this.form.qcdw.length === 0) {
this.form.qcdw = "";
}
if (this.form.cllx.length === 0) {
this.form.cllx = "";
}
if (this.form.sycpx.length === 0) {
this.form.sycpx = "";
}
if (this.form.zrgcs.length === 0) {
this.form.zrgcs = "";
}
this.form.menuIds = this.form.treeListId;
const json = JSON.stringify(this.form);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
if (this.formTongGuo.approvalOpinion == "1") {
this.$message.warning("驳回成功");
this.isSubmit = false;
this.formTongGuo.commentText = "";
// 流程提交之后,应该流转至待办任务页面
this.$router.push({ path: "/processCenter?tabsName=ProcessCenter" });
} else {
this.processCreateStand(json);
} }
if (this.form.nylx.length === 0) {
this.form.nylx = ''
}
if (this.form.zrbm.length === 0) {
this.form.zrbm = ''
}
if (this.form.qcdw.length === 0) {
this.form.qcdw = ''
}
if (this.form.cllx.length === 0) {
this.form.cllx = ''
}
if (this.form.sycpx.length === 0) {
this.form.sycpx = ''
}
if (this.form.zrgcs.length === 0) {
this.form.zrgcs = ''
}
this.form.menuIds = this.form.treeListId
const json = JSON.stringify(this.form);
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
if (this.formTongGuo.approvalOpinion == '1') {
this.$message.warning("驳回成功")
this.isSubmit = false
this.formTongGuo.commentText = ''
// 流程提交之后,应该流转至待办任务页面
this.$router.push({path: '/processCenter?tabsName=ProcessCenter'})
} else {
this.processCreateStand(json)
}
}
})
} }
}) });
}, },
/** /**
@@ -67,6 +67,7 @@
<el-tooltip v-if="form.standName" effect="dark" :content=form.standName placement="top-start"> <el-tooltip v-if="form.standName" effect="dark" :content=form.standName placement="top-start">
<el-input <el-input
v-model="form.standName" v-model="form.standName"
disabled
placeholder="请输入标准中文名称" placeholder="请输入标准中文名称"
clearable clearable
></el-input> ></el-input>
@@ -510,6 +511,7 @@
<el-tooltip v-if="form.dtbjh" effect="dark" :content=form.dtbjh placement="top-start"> <el-tooltip v-if="form.dtbjh" effect="dark" :content=form.dtbjh placement="top-start">
<el-input <el-input
v-model="form.dtbjh" v-model="form.dtbjh"
disabled
placeholder="请输入代替标准号" placeholder="请输入代替标准号"
clearable clearable
></el-input> ></el-input>
@@ -517,6 +519,7 @@
<el-input <el-input
v-else v-else
v-model="form.dtbjh" v-model="form.dtbjh"
disabled
placeholder="请输入代替标准号" placeholder="请输入代替标准号"
clearable clearable
></el-input> ></el-input>
@@ -547,6 +550,7 @@
<el-form-item label="部分代替标准号" prop="bfbdtbzh" class="add-form-item form-item-disabled"> <el-form-item label="部分代替标准号" prop="bfbdtbzh" class="add-form-item form-item-disabled">
<el-tooltip v-if="form.bfbdtbzh" effect="dark" :content=form.bfbdtbzh placement="top-start"> <el-tooltip v-if="form.bfbdtbzh" effect="dark" :content=form.bfbdtbzh placement="top-start">
<el-input <el-input
disabled
v-model="form.bfbdtbzh" v-model="form.bfbdtbzh"
placeholder="请输入部分代替标准号" placeholder="请输入部分代替标准号"
clearable clearable
@@ -554,6 +558,7 @@
</el-tooltip> </el-tooltip>
<el-input <el-input
v-else v-else
disabled
v-model="form.bfbdtbzh" v-model="form.bfbdtbzh"
placeholder="请输入部分代替标准号" placeholder="请输入部分代替标准号"
clearable clearable
@@ -563,6 +568,7 @@
<el-tooltip v-if="form.cbbh" effect="dark" :content=form.cbbh placement="top-start"> <el-tooltip v-if="form.cbbh" effect="dark" :content=form.cbbh placement="top-start">
<el-input <el-input
v-model="form.cbbh" v-model="form.cbbh"
disabled
placeholder="请输入采标编号" placeholder="请输入采标编号"
clearable clearable
></el-input> ></el-input>
@@ -570,6 +576,7 @@
<el-input <el-input
v-else v-else
v-model="form.cbbh" v-model="form.cbbh"
disabled
placeholder="请输入采标编号" placeholder="请输入采标编号"
clearable clearable
></el-input> ></el-input>
@@ -578,12 +585,14 @@
<el-tooltip v-if="form.yybj" effect="dark" :content=form.yybj placement="top-start"> <el-tooltip v-if="form.yybj" effect="dark" :content=form.yybj placement="top-start">
<el-input <el-input
v-model="form.yybj" v-model="form.yybj"
disabled
placeholder="请输入引用标准" placeholder="请输入引用标准"
clearable clearable
></el-input> ></el-input>
</el-tooltip> </el-tooltip>
<el-input <el-input
v-else v-else
disabled
v-model="form.yybj" v-model="form.yybj"
placeholder="请输入引用标准" placeholder="请输入引用标准"
clearable clearable
@@ -1186,10 +1195,10 @@ export default {
}, },
handleSubmit() { handleSubmit() {
this.isSubmit = true this.isSubmit = true
this.form.submitType = this.submitType
this.form.commentText = this.commentText this.form.commentText = this.commentText
this.form.approvalOpinion = this.approvalOpinion this.form.approvalOpinion = this.approvalOpinion
const json = JSON.stringify(this.form); const json = JSON.stringify(this.form);
json.submitType = this.submitType
this.$http.post('lawss/activiti/completeTask', { this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds, taskIds: this.taskIds,
userId : this.userId, userId : this.userId,
@@ -10,7 +10,7 @@
<div class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div> <div class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</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>
<div class="content" v-if="active === '1'"> <div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto;"> <div style="flex: auto; overflow: auto;">
<el-form <el-form
ref="form" ref="form"
@@ -875,10 +875,11 @@
:lazy=true :lazy=true
:multiple=true :multiple=true
:check-strictly=true :check-strictly=true
:show-checkBox=true
:modalShowFlag="modalShowFlag4" :modalShowFlag="modalShowFlag4"
:drawerTitle="drawerTitle" :drawerTitle="drawerTitle"
:url="url" :url="url"
:type="'TRUCK'"
:show-checkBox="showCheckBox"
:urlChild="urlChild" :urlChild="urlChild"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3" :defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel" @popoverHideCancel="popoverHideModelCancel"></tree-select-module> :nodeKey="nodeKeyModel" @popoverHide="popoverHideModel" @popoverHideCancel="popoverHideModelCancel"></tree-select-module>
@@ -895,6 +896,7 @@
:drawerTitle="drawerTitle" :drawerTitle="drawerTitle"
:url="url" :url="url"
:type="'CAR'" :type="'CAR'"
:show-checkBox="showCheckBox"
:urlChild="urlChild" :urlChild="urlChild"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3" :defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel2" @popoverHideCancel="popoverHideModelCancel2"></tree-select-module> :nodeKey="nodeKeyModel" @popoverHide="popoverHideModel2" @popoverHideCancel="popoverHideModelCancel2"></tree-select-module>
@@ -1258,7 +1260,7 @@
</el-collapse> </el-collapse>
</div> </div>
</div> </div>
<div class="content" v-if="active === '2'"> <div class="content" v-show="active === '2'">
<div class="block" style="padding-top: 20px;"> <div class="block" style="padding-top: 20px;">
<el-timeline> <el-timeline>
<el-timeline-item timestamp="发起流程" placement="top" :color="user1 ? '#66b1ff' : ''"> <el-timeline-item timestamp="发起流程" placement="top" :color="user1 ? '#66b1ff' : ''">
@@ -1305,7 +1307,7 @@
</el-timeline> </el-timeline>
</div> </div>
</div> </div>
<div class="content" v-if="active === '3'"> <div class="content" v-show="active === '3'">
<div class="flow-list"> <div class="flow-list">
<el-table <el-table
height="100%" height="100%"
@@ -1596,6 +1598,7 @@ export default {
commentText: '', // 意见 commentText: '', // 意见
title: '', // 新增编辑抽屉标题 title: '', // 新增编辑抽屉标题
ListModel: false, // 新增编辑抽屉开关 ListModel: false, // 新增编辑抽屉开关
showCheckBox: true, // 树形控件是否展示多选框
active: '1', // 默认显示 active: '1', // 默认显示
isSubmit: false, isSubmit: false,
saveLoading: false, saveLoading: false,
@@ -1988,11 +1991,19 @@ export default {
this.modalShowFlag4 = true this.modalShowFlag4 = true
this.url = '' this.url = ''
this.urlChild = '' this.urlChild = ''
this.url = "sarModelTree/list" this.url = "sarModelTree/listByType"
this.urlChild = "sarModelTree/childByList" this.urlChild = "sarModelTree/childByList"
this.key3++ this.key3++
}, },
choiceZRR5(type, title, id) {
this.drawerTitle = title
this.modalShowFlag5 = true
this.url = ''
this.urlChild = ''
this.url = "sarModelTree/listByType"
this.urlChild = "sarModelTree/childByList"
this.key4++
},
choiceTree(type, title, id) { choiceTree(type, title, id) {
this.drawerTitle = title this.drawerTitle = title
this.getListTree(this.form) this.getListTree(this.form)
@@ -2801,10 +2812,10 @@ export default {
if (res.ok) { if (res.ok) {
this.fileInfoHandle(); this.fileInfoHandle();
this.isSubmit = true this.isSubmit = true
this.form.submitType = this.submitType
this.form.commentText = this.commentText this.form.commentText = this.commentText
this.form.approvalOpinion = this.approvalOpinion this.form.approvalOpinion = this.approvalOpinion
const json = JSON.stringify(this.form); const json = JSON.stringify(this.form);
json.submitType = this.submitType
this.$http.post('lawss/activiti/completeTask', { this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds, taskIds: this.taskIds,
userId: this.userId, userId: this.userId,
@@ -2829,10 +2840,10 @@ export default {
} else { } else {
this.fileInfoHandle(); this.fileInfoHandle();
this.isSubmit = true this.isSubmit = true
this.form.submitType = this.submitType
this.form.commentText = this.commentText this.form.commentText = this.commentText
this.form.approvalOpinion = this.approvalOpinion this.form.approvalOpinion = this.approvalOpinion
const json = JSON.stringify(this.form); const json = JSON.stringify(this.form);
json.submitType = this.submitType
this.$http.post('lawss/activiti/completeTask', { this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds, taskIds: this.taskIds,
userId: this.userId, userId: this.userId,
@@ -52,6 +52,7 @@
<el-tooltip v-if="form.standName" effect="dark" :content=form.standName placement="top-start"> <el-tooltip v-if="form.standName" effect="dark" :content=form.standName placement="top-start">
<el-input <el-input
v-model="form.standName" v-model="form.standName"
disabled
placeholder="请输入标准中文名称" placeholder="请输入标准中文名称"
clearable clearable
></el-input> ></el-input>
@@ -468,12 +469,14 @@
<el-tooltip v-if="form.dtbjh" effect="dark" :content=form.dtbjh placement="top-start"> <el-tooltip v-if="form.dtbjh" effect="dark" :content=form.dtbjh placement="top-start">
<el-input <el-input
v-model="form.dtbjh" v-model="form.dtbjh"
disabled
placeholder="请输入代替标准号" placeholder="请输入代替标准号"
clearable clearable
></el-input> ></el-input>
</el-tooltip> </el-tooltip>
<el-input <el-input
v-else v-else
disabled
v-model="form.dtbjh" v-model="form.dtbjh"
placeholder="请输入代替标准号" placeholder="请输入代替标准号"
clearable clearable
@@ -507,12 +510,14 @@
<el-tooltip v-if="form.bfbdtbzh" effect="dark" :content=form.bfbdtbzh placement="top-start"> <el-tooltip v-if="form.bfbdtbzh" effect="dark" :content=form.bfbdtbzh placement="top-start">
<el-input <el-input
v-model="form.bfbdtbzh" v-model="form.bfbdtbzh"
disabled
placeholder="请输入部分代替标准号" placeholder="请输入部分代替标准号"
clearable clearable
></el-input> ></el-input>
</el-tooltip> </el-tooltip>
<el-input <el-input
v-else v-else
disabled
v-model="form.bfbdtbzh" v-model="form.bfbdtbzh"
placeholder="请输入部分代替标准号" placeholder="请输入部分代替标准号"
clearable clearable
@@ -522,6 +527,7 @@
<el-tooltip v-if="form.cbbh" effect="dark" :content=form.cbbh placement="top-start"> <el-tooltip v-if="form.cbbh" effect="dark" :content=form.cbbh placement="top-start">
<el-input <el-input
v-model="form.cbbh" v-model="form.cbbh"
disabled
placeholder="请输入采标编号" placeholder="请输入采标编号"
clearable clearable
></el-input> ></el-input>
@@ -529,6 +535,7 @@
<el-input <el-input
v-else v-else
v-model="form.cbbh" v-model="form.cbbh"
disabled
placeholder="请输入采标编号" placeholder="请输入采标编号"
clearable clearable
></el-input> ></el-input>
@@ -537,6 +544,7 @@
<el-tooltip v-if="form.yybj" effect="dark" :content=form.yybj placement="top-start"> <el-tooltip v-if="form.yybj" effect="dark" :content=form.yybj placement="top-start">
<el-input <el-input
v-model="form.yybj" v-model="form.yybj"
disabled
placeholder="请输入引用标准" placeholder="请输入引用标准"
clearable clearable
></el-input> ></el-input>
@@ -544,6 +552,7 @@
<el-input <el-input
v-else v-else
v-model="form.yybj" v-model="form.yybj"
disabled
placeholder="请输入引用标准" placeholder="请输入引用标准"
clearable clearable
></el-input> ></el-input>
@@ -470,7 +470,7 @@
query: { query: {
standId: this.standId, standId: this.standId,
attId: this.form.fjList[0].attId, attId: this.form.fjList[0].attId,
fileType: this.form.fjList[0].standFileClassify, fileType: this.form.textType,
} }
}); });
window.open(routeData.href, '_blank') window.open(routeData.href, '_blank')
@@ -511,7 +511,7 @@ export default {
query: { query: {
standId: this.standId, standId: this.standId,
attId: this.form.fjList[0].attId, attId: this.form.fjList[0].attId,
fileType: this.form.fjList[0].standFileClassify, fileType: this.form.textType,
} }
}); });
window.open(routeData.href, '_blank') window.open(routeData.href, '_blank')
@@ -786,7 +786,7 @@ export default {
_this: this _this: this
}, res => { }, res => {
this.workData = res.data.records; this.workData = res.data.records;
this.total = res.data.total; this.totalNo = res.data.total;
}, e => { }, e => {
}); });
}, },
@@ -275,6 +275,7 @@ export default {
}, },
data() { data() {
return { return {
submitFlag: '',
toggleType: '5', toggleType: '5',
comFlag: 1, comFlag: 1,
active: "1", active: "1",
@@ -338,7 +339,8 @@ export default {
if(this.taskId){ if(this.taskId){
this.approvalFlag = true this.approvalFlag = true
this.processTable() this.processTable()
this.getData(); //被驳回时调用
this.getHistoryData()
} }
}, },
methods: { methods: {
@@ -355,16 +357,6 @@ export default {
}, e => { }, e => {
}) })
}, },
getDatas(){
queryTaskFirst({
bpnId: this.$route.query.bpnId
}).then(res => {
let mes = JSON.parse(res.mes)
this.roleForm = mes.roleForm
this.qbfsForm = mes.qbfsForm
this.commentText = mes.commentText
});
},
getData() { getData() {
this.formLoading = true this.formLoading = true
this.showFlag = false this.showFlag = false
@@ -375,11 +367,29 @@ export default {
this.getFormFieldList(mes); this.getFormFieldList(mes);
}); });
}, },
getHistoryData() {
this.submitFlag = '重新起草'
this.showFlag = false
this.formLoading = true
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId,
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg)
this.getFormFieldList(processForm)
}
}).catch(e => {
})
})
},
/** /**
* @description: 动态表单读取 * @description: 动态表单读取
*/ */
getFormFieldList(item) { getFormFieldList(item) {
let type = item.qbfsForm.type console.log(item);
let type = item.type || item.qbfsForm.type
this.$nextTick(() => { this.$nextTick(() => {
switch (type){ switch (type){
case '1': case '1':
@@ -398,18 +408,18 @@ export default {
this.comName = "establish" this.comName = "establish"
break break
} }
this.qbfsForm = item.qbfsForm; this.qbfsForm = item.qbfsForm || item;
this.formLoading = false; this.formLoading = false;
this.roleForm.dockUser = item.roleForm.dockUser; this.roleForm.dockUser = item.dockUser || item.roleForm.dockUser;
this.roleForm.dockUserName = item.roleForm.dockUserName; this.roleForm.dockUserName = item.dockUserName || item.roleForm.dockUserName;
this.roleForm.countersigner = item.roleForm.countersigner; this.roleForm.countersigner = item.countersigner || item.roleForm.countersigner;
this.roleForm.countersignerName = item.roleForm.countersignerName; this.roleForm.countersignerName = item.countersignerName || item.roleForm.countersignerName;
this.roleForm.approver = item.roleForm.approver; this.roleForm.approver = item.approver ||item.roleForm.approver;
this.roleForm.approverName = item.roleForm.approverName; this.roleForm.approverName = item.approverName || item.roleForm.approverName;
this.roleForm.engineer = item.roleForm.engineer; this.roleForm.engineer = item.engineer || item.roleForm.engineer;
this.roleForm.engineerName = item.roleForm.engineerName; this.roleForm.engineerName = item.engineerName || item.roleForm.engineerName;
this.roleForm.examine = item.roleForm.examine; this.roleForm.examine = item.examine || item.roleForm.examine;
this.roleForm.examineName = item.roleForm.examineName; this.roleForm.examineName = item.examineName || item.roleForm.examineName;
}); });
}, },
handleTabs(name) { handleTabs(name) {
@@ -531,6 +531,7 @@ export default {
this.$http.postData('importWkExcel/importData', _formData,{ this.$http.postData('importWkExcel/importData', _formData,{
_this: this _this: this
}, res => { }, res => {
console.log(res);
if(res.ok){ if(res.ok){
if(res.data.length){ if(res.data.length){
this.qblx_pageData.qblxData = res.data this.qblx_pageData.qblxData = res.data
@@ -539,7 +540,7 @@ export default {
this.$message.warning('请勿上传为空的文件') this.$message.warning('请勿上传为空的文件')
} }
}else{ }else{
this.$confirm(res.message, "提示", { this.$confirm(res.data, "提示", {
confirmButtonText: "确认", confirmButtonText: "确认",
confirmButtonClass: "common-button-primary", confirmButtonClass: "common-button-primary",
cancelButtonText: "取消", cancelButtonText: "取消",
@@ -436,9 +436,9 @@ export default {
bpnId: this.$route.query.bpnId bpnId: this.$route.query.bpnId
}).then(res => { }).then(res => {
let mes = JSON.parse(res.mes); let mes = JSON.parse(res.mes);
this.dataList = mes.dataList; this.dataList = mes.dataList || mes.json.standardInfoList;
this.roleForm = mes.roleForm; this.roleForm = mes.roleForm || mes.json.roleForm;
this.commentText = mes.commentText; this.commentText = mes.commentText || mes.json.commentText;
}); });
}, },
//点击新增事件 //点击新增事件
@@ -609,6 +609,7 @@ export default {
this.$message.warning('请完善人员信息') this.$message.warning('请完善人员信息')
} else { } else {
if(!this.submitFlag){ if(!this.submitFlag){
console.log('第一次提交');
this.$refs['roleForm'].validate((valid) => { this.$refs['roleForm'].validate((valid) => {
if (valid) { if (valid) {
this.isSubmit = true this.isSubmit = true
@@ -647,6 +648,7 @@ export default {
} }
}) })
}else{ }else{
console.log('修改后提交');
this.$refs["roleForm"].validate((valid) => { this.$refs["roleForm"].validate((valid) => {
if (valid) { if (valid) {
let specialJson = { let specialJson = {
@@ -87,6 +87,7 @@
</el-table-column> </el-table-column>
<el-table-column <el-table-column
align="center" align="center"
width="180"
label="标准号" label="标准号"
> >
<template slot-scope="scope"> <template slot-scope="scope">
@@ -40,7 +40,7 @@
@selection-change="selectStandChange"> @selection-change="selectStandChange">
<el-table-column align="center" type="selection" width="55"> <el-table-column align="center" type="selection" width="55">
</el-table-column> </el-table-column>
<el-table-column label="标准号" prop="standNumber"> <el-table-column label="标准号" width="180" prop="standNumber">
<template slot-scope="scope"> <template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump" <a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber @click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber
@@ -38,14 +38,6 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="清单名称" prop="detailedListName" class="add-form-item form-item-disabled">
<el-input
v-model="qdform.detailedListName"
placeholder="请输入清单名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
@@ -105,6 +97,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a> <a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column
prop="textStatus"
label="标准状态"
align="center"
width="180px"
>
<template slot-scope="scope">
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
</template>
</el-table-column>
<el-table-column <el-table-column
prop="ssrq" prop="ssrq"
width="190px" width="190px"
@@ -123,13 +125,6 @@
width="190px" width="190px"
label="在产车实施日期"> label="在产车实施日期">
</el-table-column> </el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table> </el-table>
<div> <div>
<el-collapse accordion> <el-collapse accordion>
@@ -42,15 +42,6 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="清单名称" prop="detailedListName" class="add-form-item form-item-disabled" style="float: left">
<el-input
v-model="qdform.detailedListName"
placeholder="请输入清单名称"
disabled
clearable
></el-input>
</el-form-item>
<el-button size="mini" type="primary" style="margin-top: 1%;" @click="choiceList">选择清单</el-button>
<el-form-item label="截止日期" prop="endTime" class="add-form-item form-item-disabled"> <el-form-item label="截止日期" prop="endTime" class="add-form-item form-item-disabled">
<el-date-picker <el-date-picker
:picker-options="pickerOptions" :picker-options="pickerOptions"
@@ -125,6 +116,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a> <a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column
prop="textStatus"
label="标准状态"
align="center"
width="180px"
>
<template slot-scope="scope">
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
</template>
</el-table-column>
<el-table-column <el-table-column
prop="ssrq" prop="ssrq"
width="190px" width="190px"
@@ -143,13 +144,6 @@
width="190px" width="190px"
label="在产车实施日期"> label="在产车实施日期">
</el-table-column> </el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table> </el-table>
<el-collapse accordion> <el-collapse accordion>
<el-collapse-item title="回执说明"> <el-collapse-item title="回执说明">
@@ -242,6 +236,41 @@
<div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0"> <div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0">
<div class="left"> <div class="left">
<el-form :modal="projectSearch" :inline="true" class="label-input-form" style="margin-left:10px"> <el-form :modal="projectSearch" :inline="true" class="label-input-form" style="margin-left:10px">
<el-form-item label="管理主体" class="search-item search-item-last">
<el-select v-model="projectSearch.managementHostName"
@change="optionsChange(projectSearch)"
placeholder="请选择管理主体" filterable clearable>
<el-option
v-for="(item, index) in managementHostName"
:key="index"
:value="item"
:label="item"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="开发主体" class="search-item search-item-last">
<el-select v-model="projectSearch.developmentHostName" @change="optionsChange(projectSearch)" placeholder="请选择开发主体" filterable clearable>
<el-option
v-for="(item, index) in developmentHostName"
:key="index"
:value="item"
:label="item"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="项目细分类" class="search-item search-item-last">
<el-select v-model="projectSearch.categoryName" @change="optionsChange(projectSearch)" placeholder="请选择项目细分类" filterable clearable>
<el-option
v-for="(item, index) in categoryName"
:key="index"
:value="item"
:label="item"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="项目编号" class="search-item search-item-last"> <el-form-item label="项目编号" class="search-item search-item-last">
<el-input <el-input
v-model="projectSearch.projectNumber" v-model="projectSearch.projectNumber"
@@ -259,7 +288,7 @@
type="primary" type="primary"
class="common-button-primary" class="common-button-primary"
size="small" size="small"
v-btn-permission="" v-btn-permission="'072efe80c5459dd47fedd2d14f59ff7f'"
@click="getProjectDataBtn"> @click="getProjectDataBtn">
查询 查询
</el-button> </el-button>
@@ -268,7 +297,7 @@
<el-button <el-button
class="common-button-default" class="common-button-default"
size="small" size="small"
v-btn-permission="" v-btn-permission="'3480a13964a18e000196e4d5bc6ef117'"
@click="clearSearch">清空 @click="clearSearch">清空
</el-button> </el-button>
</el-form-item> </el-form-item>
@@ -326,141 +355,6 @@
<el-button type="primary" size="mini" @click="OkProject">带入</el-button> <el-button type="primary" size="mini" @click="OkProject">带入</el-button>
</div> </div>
</el-drawer> </el-drawer>
<!-- 选择清单弹窗-->
<el-drawer
title="选择清单"
:visible.sync="detailedListModel"
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">
<div class="left">
<el-form :modal="sarSarAccessEOSearch" :inline="true" class="label-input-form">
<el-form-item label="车型类别" prop="carType" label-width="100px" class="search-item">
<el-select
v-model="sarSarAccessEOSearch.carType"
placeholder="请选择"
filterable
size="small"
>
<el-option
v-for="item in energyKindOptions"
:value="item.value"
:key="item.value"
:label="item.label"
/>
</el-select>
</el-form-item>
<el-form-item label="清单名称" class="search-item search-item-last">
<el-input
v-model="sarSarAccessEOSearch.detailedListName"
placeholder="请输入清单名称"
></el-input>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
type="primary"
class="common-button-primary"
size="small"
@click="searchSarAccess">
查询
</el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
size="small"
@click="clearSearchAccess">清空
</el-button>
</el-form-item>
</el-form>
</div>
<el-table
:data="sarAccessListDatas"
tooltip-effect="dark"
style="width: 100%; padding: 0 3px"
border
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectListChange"
@select="handleSelectionChanges"
ref="listSelection"
>
<el-table-column
type="selection"
width="55"
align="center" />
<el-table-column
prop="carTypeShow"
label="车型类别"
align="center">
</el-table-column>
<el-table-column
prop="detailedListName"
label="清单名称"
align="center"
width="260px"
>
<!-- <template slot-scope="scope">-->
<!-- <a class="table-jump" @click.stop="showTable(scope.row)">{{ scope.row.detailedListName }}</a>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="detailedListState"
label="清单状态"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.detailedListState === '0'">未发布</span>
<span v-if="scope.row.detailedListState === '1'">已发布</span>
<span v-if="scope.row.detailedListState === '3'">审核中</span>
</template>
</el-table-column>
<el-table-column
prop="detailedListVision"
label="清单版本"
align="center">
<template slot-scope="scope">
<span
v-if="scope.row.detailedListVision != null && scope.row.detailedListVision !== ''">{{ scope.row.detailedListVision
}}</span>
</template>
</el-table-column>
<el-table-column
prop="updateTime"
label="更新时间"
align="center">
<template slot-scope="scope">
<div>
{{ scope.row.updateTime ? $moment(scope.row.updateTime).format("YYYY-MM-DD") : scope.row.updateTime
}}
</div>
</template>
</el-table-column>
<el-table-column
prop="updatePeople"
label="更新人"
align="center">
</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="closeDrawer">取消</el-button>
<el-button type="primary" size="mini" @click="OkDrawer">带入</el-button>
</div>
</el-drawer>
<!-- 添加标准抽屉--> <!-- 添加标准抽屉-->
<el-drawer <el-drawer
title="添加标准" title="添加标准"
@@ -935,10 +829,16 @@ export default {
carType: "", carType: "",
detailedListName: "" detailedListName: ""
}, },
managementHostName: [], //管理主体名称下拉框
developmentHostName: [], //开发主体名称下拉框
categoryName: [], //项目细分类下拉框
//项目检索条件
projectSearch: { projectSearch: {
projectNumber: "", projectNumber: "",
projectName: "" projectName: "",
managementHostName: "", //管理主体
developmentHostName: "", //开发主体
categoryName: "" //项目细分类
}, },
qdform: { qdform: {
projectId:"", projectId:"",
@@ -963,9 +863,6 @@ export default {
projectNumber: [ projectNumber: [
{ type: "string", required: true, message: "请输入项目编号", trigger: "change" } { type: "string", required: true, message: "请输入项目编号", trigger: "change" }
], ],
detailedListName: [
{ required: true, message: "请输入清单名称", trigger: "change" }
],
endTime: [ endTime: [
{required: true, message: '请输入截止时间', trigger: 'change'}, {required: true, message: '请输入截止时间', trigger: 'change'},
], ],
@@ -982,6 +879,32 @@ export default {
}; };
}, },
methods: { methods: {
optionsChange(){
/**
* 获取项目群筛选项的值
*/
this.$http.post("sarStandProjectLibrary/querySelect", {
...this.projectSearch
}, {
_this: this
}, res => {
res.data.managementHostList.forEach(item => {
if (item) {
this.managementHostName.push(item); //管理主体
}
});
res.data.developmentHostList.forEach(item => {
if (item) {
this.developmentHostName.push(item); //开发主体
}
});
res.data.categoryList.forEach(item => {
if (item) {
this.categoryName.push(item); //项目细分类
}
});
});
},
formatIssueDate(str) { formatIssueDate(str) {
const momentDate = this.$moment(str) const momentDate = this.$moment(str)
if (momentDate.isValid()) { if (momentDate.isValid()) {
@@ -1232,6 +1155,7 @@ export default {
this.qdform.projectNumber = this.selectProject[0].projectNumber; this.qdform.projectNumber = this.selectProject[0].projectNumber;
this.qdform.projectName = this.selectProject[0].projectName; this.qdform.projectName = this.selectProject[0].projectName;
this.qdform.projectId = this.selectProject[0].id; this.qdform.projectId = this.selectProject[0].id;
this.getStandData(this.qdform.projectId)
this.projectModel = false; this.projectModel = false;
} }
@@ -1309,7 +1233,7 @@ export default {
}, },
//查询清单下的标准 //查询清单下的标准
getStandData(id) { getStandData(id) {
this.$http.get("sarLawsAttrDetailedList/sar-laws-attr-detailed-list/selectLawsById", { this.$http.get("sarStandProjectLibrary/queryStandInfoNew", {
id: id, id: id,
page: 1, page: 1,
Size: 100 Size: 100
@@ -1473,6 +1397,7 @@ export default {
}, },
}, },
mounted() { mounted() {
this.optionsChange()
if(this.$route.query.bpnId){ if(this.$route.query.bpnId){
this.bpnId = this.$route.query.bpnId this.bpnId = this.$route.query.bpnId
queryTaskFirst({ queryTaskFirst({
@@ -38,14 +38,6 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="清单名称" prop="detailedListName" class="add-form-item form-item-disabled">
<el-input
v-model="qdform.detailedListName"
placeholder="请输入清单名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
@@ -111,6 +103,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a> <a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column
prop="textStatus"
label="标准状态"
align="center"
width="180px"
>
<template slot-scope="scope">
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
</template>
</el-table-column>
<el-table-column <el-table-column
prop="ssrq" prop="ssrq"
width="190px" width="190px"
@@ -129,13 +131,6 @@
width="190px" width="190px"
label="在产车实施日期"> label="在产车实施日期">
</el-table-column> </el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table> </el-table>
<div> <div>
<el-collapse accordion> <el-collapse accordion>
@@ -38,14 +38,6 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="清单名称" prop="detailedListName" class="add-form-item form-item-disabled">
<el-input
v-model="qdform.detailedListName"
placeholder="请输入清单名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
@@ -111,6 +103,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a> <a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column
prop="textStatus"
label="标准状态"
align="center"
width="180px"
>
<template slot-scope="scope">
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
</template>
</el-table-column>
<el-table-column <el-table-column
prop="ssrq" prop="ssrq"
width="190px" width="190px"
@@ -129,13 +131,6 @@
width="190px" width="190px"
label="在产车实施日期"> label="在产车实施日期">
</el-table-column> </el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table> </el-table>
<div> <div>
<el-collapse accordion> <el-collapse accordion>
@@ -38,14 +38,6 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="清单名称" prop="detailedListName" class="add-form-item form-item-disabled">
<el-input
v-model="qdform.detailedListName"
placeholder="请输入清单名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
@@ -105,6 +97,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a> <a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column
prop="textStatus"
label="标准状态"
align="center"
width="180px"
>
<template slot-scope="scope">
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
</template>
</el-table-column>
<el-table-column <el-table-column
prop="ssrq" prop="ssrq"
width="190px" width="190px"
@@ -123,13 +125,6 @@
width="190px" width="190px"
label="在产车实施日期"> label="在产车实施日期">
</el-table-column> </el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table> </el-table>
<div> <div>
<el-collapse accordion> <el-collapse accordion>
@@ -0,0 +1,393 @@
<template>
<div class="phoneXmpgStep2 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">标准合规评估流程</template>
<template slot="proNode">审核</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
</div>
<div class="content" v-show="active === '1'">
<div style="overflow: auto;">
<el-form
v-if="!foldFormFlag"
:model="listForm"
class="label-input-form prc-content-border"
label-width="210px"
>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
<el-input
class="input-jump"
v-model="listForm.standNumber"
placeholder="请输入标准编号"
readonly
@click.native="handlePreview(listForm)"
></el-input>
</el-form-item>
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
class="input-jump"
v-model="listForm.standName"
placeholder="请输入标准名称"
readonly
@click.native="handlePreview(listForm)"
></el-input>
</el-form-item>
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.certifiedEngineerName"
placeholder="请选择认证工程师"
></el-input>
</el-form-item>
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.certifiedEngineerName"
placeholder="--"
></el-input>
</el-form-item>
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.qualityEngineerName"
placeholder="请选择质量工程师"
></el-input>
</el-form-item>
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.qualityEngineerName"
placeholder="--"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
</div>
<ProcessTitle>
<template slot="title">填写信息</template>
</ProcessTitle>
<el-table
:data="dataList"
border
ref="selection"
height="100%"
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
align="center"
prop="projectGroup"
label="项目群"/>
<el-table-column
align="center"
prop="managementHostName"
label="管理主体"/>
<el-table-column
align="center"
prop="developmentHostName"
label="开发主体"/>
<el-table-column
align="center"
prop="categoryName"
label="项目细分类"/>
<el-table-column
align="center"
prop="projectGroupPeople"
label="项目群责任人">
</el-table-column>
<el-table-column
align="center"
prop="distributePerson"
label="分发责任人">
</el-table-column>
</el-table>
<el-collapse accordion>
<el-collapse-item title="审批意见">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<div class="content" v-show="active === '2'">
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div>
<ProcessFooter
show-transfer
show-back
show-submit
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit"
>
</ProcessFooter>
<phone-role
:role-title="drawerTitle"
:result-list="phoneRoleList"
:is-show-phone.sync="phoneshowflag"
@checkedRole="drawerCheck"
/>
</div>
</template>
<script>
import { Dialog } from 'vant';
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
import ProcessFooter from '../../components/ProcessFooter'
import ProcessTitle from '../../components/ProcessTitle'
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process'
import axios from "axios";
import ProcessHeader from "process/components/ProcessHeader";
export default {
name: "phoneBzpgStep2",
components: {
ProcessHeader,
ProcessFooter,
ProcessHeaderPhone,
ProcessTitle
},
data(){
return {
active: '1',
phoneRoleList: [],
phoneshowflag: false,
//折叠的标志,true为折叠,false为不折叠
foldFormFlag: false,
drawerModal: false,
loading: false,
isTransfer: false,
isSubmit: false,
saveLoading: false,
userId:this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId,
commentText: '',
drawerTitle: '',
listForm: {},
dataList: [],
detailData: [],
nodeList: [],
}
},
mounted() {
this.getData()
this.processTable()
},
methods: {
getData() {
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.taskIds,
pId: this.pId
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg)
this.getFormFieldList(processForm)
}
}).catch(e => {
})
})
},
/**
* @description: 动态表单读取
*/
getFormFieldList (item) {
console.log(item);
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item))
this.listForm.prcNum = this.prcNum
this.listForm.prcName = this.prcName
this.listForm['id'] = item.id
this.listForm.dataList = item.dataList
this.dataList = item.dataList
this.dataList.distributePerson = item.dataList[0].distributePerson
this.listForm.breakdownList = item.breakdownList
})
},
//tab发生变化
handleTabs(name) {
this.active = name;
},
//折叠/展开基础信息方法
foldForm() {
this.foldFormFlag = !this.foldFormFlag
},
// 点击查看
handlePreview(item) {
let routeUrl = this.$router.resolve({
name: "OtherStandardDetails",
params: {
id: item.id,
pageType: "INLAND_STAND"
}
});
window.open(routeUrl.href, "_blank");
},
//提交
handleSubmit(){
this.listForm.commentText = this.commentText
this.listForm.stepFlag = '0'
const json = JSON.stringify(this.listForm);
this.isSubmit = true
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds,
userId: this.userId,
json: json,
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message)
this.$router.push('/processCenter')
}
this.isSubmit = false
}, e => {
});
},
//驳回
beforeBack(){
if(!this.commentText){
this.$message.warning('请填写审批意见')
}else{
this.listForm.commentText = this.commentText
this.listForm.stepFlag = '1'
const json = JSON.stringify(this.listForm);
this.isSubmit = true
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds,
userId: this.userId,
json: json,
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message)
this.$router.push('/processCenter')
}
this.isSubmit = false
}, e => {
});
}
},
//确认转办
drawerCheck (data) {
this.roleTransfer = data
this.phoneRoleList = this.roleTransfer
this.turnLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res =>{
if (res.success) {
this.turnLoading = false
this.$message.success('调整成功')
this.$router.push("/processCenter")
} else {
this.$message.warning(res.message)
}
})
this.modalshowflag = false
},
// 请求转换流程图
processNum (row) {
axios.request({
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
responseType: 'blob',
method: 'get',
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data)
})
},
//转办按钮
handleTransfer(){
this.phoneshowflag = true
this.phoneRoleList = this.roleTransfer
this.phoneDrawerTitle = '转办处理人'
},
processTable () {
this.$http.get('lawss/activiti/get_list_by_instance', {
prcNum: this.$route.query.prcNum,
sortWord: this.shunxu ? this.paixu : '',
shunxu: this.shunxu
}, {
loading: 'loading',
_this: this
}, res => {
this.detailData = res
}, e => {})
},
},
computed: {
listNoDataText () {
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
},
},
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.phoneXmpgStep2 {
/deep/.van-dialog__content {
min-height: 300px;
padding: 10px;
}
.prc-content-border {
overflow: auto;
}
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
</style>
@@ -136,29 +136,35 @@
style="width: 100%" style="width: 100%"
border border
@selection-change="selectStandChange" @selection-change="selectStandChange"
height="55%" height="100%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', :header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}"> fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column <el-table-column
prop="productLine" type="selection"
align="center" width="55"
width="200" align="center">
label="产品线">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="projectNumber"
align="center" align="center"
width="200" min-width="180"
prop="projectGroup"
label="项目群">
</el-table-column>
<el-table-column
align="center"
min-width="180"
prop="projectNumber"
label="项目编号"> label="项目编号">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="projectName" min-width="300"
:show-overflow-tooltip="true"
align="center" align="center"
width="200" prop="projectName"
label="项目名称"> label="项目名称">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="itemNum" prop="itemsNum"
align="center" align="center"
width="200" width="200"
label="条款号"> label="条款号">
@@ -170,34 +176,41 @@
label="条款名称"> label="条款名称">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
label="条款内容"
width="200"
show-overflow-tooltip
align="center">
<template slot-scope="scope">
<el-button size="mini" type="primary" @click="itermsConditionsOpen(scope.row)" class="common-button-primary">
查看条款内容
</el-button>
</template>
</el-table-column>
<el-table-column
v-if="!changePoint"
prop="technicalRequir" prop="technicalRequir"
align="center" align="center"
width="250" width="250"
label="核心技术要求/变化点"> label="核心技术要求/变化点">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="changePoint"
prop="changePoint" prop="changePoint"
width="250" width="250"
align="center" align="center"
label="基于上一版本差异"> label="基于上一版本差异">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="xCXSSRQ" prop="xcxssrq"
width="200" width="200"
align="center" align="center"
label="新车型实施日期"> label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="zCCSSRQ" prop="zccssrq"
width="200" width="200"
align="center" align="center"
label="在产车实施日期"> label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="complianceReasons" prop="complianceReasons"
@@ -208,7 +221,6 @@
<el-table-column <el-table-column
align="center" align="center"
width="160" width="160"
prop="researchNonCompliance"
label="不合规"> label="不合规">
<el-table-column <el-table-column
prop="noCompliance" prop="noCompliance"
@@ -225,25 +237,19 @@
<el-table-column <el-table-column
prop="completionTime" prop="completionTime"
align="center" align="center"
width="120" width="140"
label="完成时间"> label="完成时间">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span> <span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format("YYYY-MM-DD") : "" }}</span>
</template> </template>
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
align="center"
width="150"
prop="implementer" prop="implementer"
label="落实人">
</el-table-column>
<el-table-column
align="center" align="center"
width="150" width="180"
prop="distributePerson" label="评估人"
label="责任人"> />
</el-table-column>
</el-table> </el-table>
<el-collapse accordion> <el-collapse accordion>
<el-collapse-item title="审批意见"> <el-collapse-item title="审批意见">
@@ -294,7 +300,7 @@ import axios from "axios";
import ProcessHeader from "process/components/ProcessHeader"; import ProcessHeader from "process/components/ProcessHeader";
export default { export default {
name: "phoneXmpgStep6", name: "phoneBzpgStep6",
components: { components: {
ProcessHeader, ProcessHeader,
ProcessFooter, ProcessFooter,
@@ -498,40 +504,56 @@ export default {
/** /**
* @description: 动态表单读取 * @description: 动态表单读取
*/ */
getFormFieldList (item) { getFormFieldList(item) {
console.log(item);
this.$nextTick(() => { this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item)) this.listForm = JSON.parse(JSON.stringify(item));
this.listForm.prcNum = this.prcNum if (item.form === undefined) {
this.listForm.prcName = this.prcName this.fileType = item.fileType
this.dataList = item.dataList this.listForm.prcNum = this.prcNum
this.listForm.id = item.step3DTOS[0].id this.listForm.prcName = this.prcName
this.listForm.standName = item.step3DTOS[0].standName this.listForm['id'] = item.id
this.listForm.standNumber = item.step3DTOS[0].standNumber this.dataList = item.dataList
this.listForm.qualityEngineerName = item.step3DTOS[0].qualityEngineerName } else {
this.listForm.certifiedEngineerName = item.step3DTOS[0].certifiedEngineerName this.listForm = item.form;
}) this.dataList = item.form.dataList;
}
});
}, },
//驳回事件 //驳回事件
beforeBack () { beforeBack () {
if(!this.commentText){ if(!this.commentText){
this.$message.warning('请填写审批意见') this.$message.warning('请填写审批意见')
} else { }else{
this.listForm.fenFlag = '2' this.listForm.dataList = this.dataList
this.handleSubmit() this.listForm.passFlag = '1'
} this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.isSubmit = true
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds,
userId: this.userId,
json: json,
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message)
this.$router.push('/processCenter')
}
this.isSubmit = false
}, e => {
});
}
}, },
//提交事件 //提交事件
handleSubmit() { handleSubmit() {
this.isSubmit = true
this.listForm.prcCreateUser = this.$store.getters.userInfo.userId;
this.listForm.applyUpdUserId = this.$store.getters.userInfo.userId;
this.listForm.prcCreateUserName = this.$store.getters.userInfo.account;
this.listForm.zrUserId = this.$store.getters.userInfo.userId ;
this.listForm.commentText = this.commentText;
this.listForm.standId = this.listForm.standId;
this.listForm.fenFlag = "1";
this.listForm.dataList = this.dataList this.listForm.dataList = this.dataList
this.listForm.passFlag = '0'
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm); const json = JSON.stringify(this.listForm);
this.isSubmit = true
this.$http.post('lawss/activiti/completeTask', { this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds, taskIds: this.taskIds,
userId: this.userId, userId: this.userId,
@@ -545,9 +567,7 @@ export default {
} }
this.isSubmit = false this.isSubmit = false
}, e => { }, e => {
}); });
}, },
//标准表格选择框改变 //标准表格选择框改变
selectStandChange(data) { selectStandChange(data) {
@@ -2,7 +2,7 @@
<div class="phoneXmpgStep7 phoneBox"> <div class="phoneXmpgStep7 phoneBox">
<ProcessHeaderPhone toggle> <ProcessHeaderPhone toggle>
<template slot="proName">标准合规评估流程</template> <template slot="proName">标准合规评估流程</template>
<template slot="proNode">标准法规部领导审批</template> <template slot="proNode">审定</template>
</ProcessHeaderPhone> </ProcessHeaderPhone>
<div class="headerTabs"> <div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div> <div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
@@ -129,36 +129,51 @@
<ProcessTitle> <ProcessTitle>
<template slot="title">填写信息</template> <template slot="title">填写信息</template>
</ProcessTitle> </ProcessTitle>
<el-tabs v-model="activeName" type="border-card" @tab-click="handleClick">
<el-tab-pane
v-for="(item, index) in projectTabName"
:key="index"
:label="item"
:value="item"
:name="item">
</el-tab-pane>
</el-tabs>
<el-table <el-table
ref="multipleTable" ref="multipleTable"
:data="dataList" :data="dataList.filter(item =>{return item.projectName === projectName})"
tooltip-effect="dark" tooltip-effect="dark"
style="width: 100%" style="width: 100%"
border border
@selection-change="selectStandChange" @selection-change="selectStandChange"
height="55%" height="100%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', :header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}"> fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column <el-table-column
prop="productLine" type="selection"
align="center" width="55"
width="200" align="center">
label="产品线">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="projectNumber"
align="center" align="center"
width="200" min-width="180"
prop="projectGroup"
label="项目群">
</el-table-column>
<el-table-column
align="center"
min-width="180"
prop="projectNumber"
label="项目编号"> label="项目编号">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="projectName" min-width="300"
:show-overflow-tooltip="true"
align="center" align="center"
width="200" prop="projectName"
label="项目名称"> label="项目名称">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="itemNum" prop="itemsNum"
align="center" align="center"
width="200" width="200"
label="条款号"> label="条款号">
@@ -170,34 +185,41 @@
label="条款名称"> label="条款名称">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
label="条款内容"
width="200"
show-overflow-tooltip
align="center">
<template slot-scope="scope">
<el-button size="mini" type="primary" @click="itermsConditionsOpen(scope.row)" class="common-button-primary">
查看条款内容
</el-button>
</template>
</el-table-column>
<el-table-column
v-if="!changePoint"
prop="technicalRequir" prop="technicalRequir"
align="center" align="center"
width="250" width="250"
label="核心技术要求/变化点"> label="核心技术要求/变化点">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
v-if="changePoint"
prop="changePoint" prop="changePoint"
width="250" width="250"
align="center" align="center"
label="基于上一版本差异"> label="基于上一版本差异">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="xCXSSRQ" prop="xcxssrq"
width="200" width="200"
align="center" align="center"
label="新车型实施日期"> label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="zCCSSRQ" prop="zccssrq"
width="200" width="200"
align="center" align="center"
label="在产车实施日期"> label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="complianceReasons" prop="complianceReasons"
@@ -208,7 +230,6 @@
<el-table-column <el-table-column
align="center" align="center"
width="160" width="160"
prop="researchNonCompliance"
label="不合规"> label="不合规">
<el-table-column <el-table-column
prop="noCompliance" prop="noCompliance"
@@ -225,25 +246,19 @@
<el-table-column <el-table-column
prop="completionTime" prop="completionTime"
align="center" align="center"
width="120" width="140"
label="完成时间"> label="完成时间">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span> <span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format("YYYY-MM-DD") : "" }}</span>
</template> </template>
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
align="center"
width="150"
prop="implementer" prop="implementer"
label="落实人">
</el-table-column>
<el-table-column
align="center" align="center"
width="150" width="180"
prop="distributePerson" label="评估人"
label="责任人"> />
</el-table-column>
</el-table> </el-table>
<el-collapse accordion> <el-collapse accordion>
<el-collapse-item title="审批意见"> <el-collapse-item title="审批意见">
@@ -264,14 +279,12 @@
</div> </div>
<ProcessFooter <ProcessFooter
show-transfer show-transfer
show-back
show-submit show-submit
:transfer-loading="isTransfer" :transfer-loading="isTransfer"
:submitLoading="isSubmit" :submitLoading="isSubmit"
:saveLoading="saveLoading" :saveLoading="saveLoading"
:approval="true" :approval="true"
@transfer="handleTransfer" @transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit" @submit="handleSubmit"
> >
</ProcessFooter> </ProcessFooter>
@@ -294,7 +307,7 @@ import axios from "axios";
import ProcessHeader from "process/components/ProcessHeader"; import ProcessHeader from "process/components/ProcessHeader";
export default { export default {
name: "phoneXmpgStep7", name: "phoneBzpgStep7",
components: { components: {
ProcessHeader, ProcessHeader,
ProcessFooter, ProcessFooter,
@@ -304,7 +317,9 @@ export default {
data() { data() {
return { return {
phoneshowflag: false, phoneshowflag: false,
activeName: '',
phoneRoleList: [], phoneRoleList: [],
projectTabName: [],
phoneDrawerTitle: '', phoneDrawerTitle: '',
//折叠的标志,true为折叠,false为不折叠 //折叠的标志,true为折叠,false为不折叠
foldFormFlag: false, foldFormFlag: false,
@@ -388,6 +403,9 @@ export default {
}; };
}, },
methods: { methods: {
handleClick(tab) {
this.projectName = tab.name
},
//折叠/展开基础信息方法 //折叠/展开基础信息方法
foldForm() { foldForm() {
this.foldFormFlag = !this.foldFormFlag this.foldFormFlag = !this.foldFormFlag
@@ -498,36 +516,34 @@ export default {
/** /**
* @description: 动态表单读取 * @description: 动态表单读取
*/ */
getFormFieldList (item) { getFormFieldList(item) {
this.$nextTick(() => { this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item)) this.listForm = JSON.parse(JSON.stringify(item));
this.listForm.prcNum = this.prcNum if (item.form === undefined) {
this.listForm.prcName = this.prcName this.fileType = item.fileType
this.listForm.id = item.id this.listForm.prcNum = this.prcNum
this.dataList = item.dataList this.listForm.prcName = this.prcName
}) this.listForm['id'] = item.id
}, this.dataList = item.dataList
//驳回事件 item.dataList.forEach(item => {
beforeBack () { if(!this.projectTabName.includes(item.projectName)){
if(!this.commentText){ this.projectTabName.push(item.projectName)
this.$message.warning('请填写审批意见') }
} else { })
this.listForm.fenFlag = '2' this.projectName = this.activeName = this.projectTabName[Object.keys(this.projectTabName)[0]]
this.handleSubmit() } else {
} this.listForm = item.form;
this.dataList = item.form.dataList;
}
});
}, },
//提交事件 //提交事件
handleSubmit() { handleSubmit() {
this.isSubmit = true
this.listForm.prcCreateUser = this.$store.getters.userInfo.userId;
this.listForm.applyUpdUserId = this.$store.getters.userInfo.userId;
this.listForm.prcCreateUserName = this.$store.getters.userInfo.account;
this.listForm.zrUserId = this.$store.getters.userInfo.userId ;
this.listForm.commentText = this.commentText;
this.listForm.standId = this.listForm.standId;
this.listForm.fenFlag = "1";
this.listForm.dataList = this.dataList this.listForm.dataList = this.dataList
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm); const json = JSON.stringify(this.listForm);
this.isSubmit = true
this.$http.post('lawss/activiti/completeTask', { this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds, taskIds: this.taskIds,
userId: this.userId, userId: this.userId,
@@ -541,7 +557,6 @@ export default {
} }
this.isSubmit = false this.isSubmit = false
}, e => { }, e => {
}); });
}, },
@@ -1,8 +1,8 @@
<template> <template>
<div class="phoneXmpgStep2 phoneBox"> <div class="phoneXmpgStep7 phoneBox">
<ProcessHeaderPhone toggle> <ProcessHeaderPhone toggle>
<template slot="proName">标准合规评估流程</template> <template slot="proName">标准合规评估流程</template>
<template slot="proNode">业务经理审批</template> <template slot="proNode">批准</template>
</ProcessHeaderPhone> </ProcessHeaderPhone>
<div class="headerTabs"> <div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div> <div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
@@ -129,39 +129,136 @@
<ProcessTitle> <ProcessTitle>
<template slot="title">填写信息</template> <template slot="title">填写信息</template>
</ProcessTitle> </ProcessTitle>
<el-tabs v-model="activeName" type="border-card" @tab-click="handleClick">
<el-tab-pane
v-for="(item, index) in projectTabName"
:key="index"
:label="item"
:value="item"
:name="item">
</el-tab-pane>
</el-tabs>
<el-table <el-table
:data="dataList" ref="multipleTable"
:data="dataList.filter(item =>{return item.projectName === projectName})"
tooltip-effect="dark"
style="width: 100%"
border border
ref="selection"
height="100%"
style="width: 100%;"
@selection-change="selectStandChange" @selection-change="selectStandChange"
height="100%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', :header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"> fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column <el-table-column
prop="productLine" type="selection"
min-width="150" width="55"
align="center" align="center">
label="产品线">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="productLine"
min-width="200"
align="center" align="center"
min-width="180"
prop="projectGroup"
label="项目群">
</el-table-column>
<el-table-column
align="center"
min-width="180"
prop="projectNumber"
label="项目编号">
</el-table-column>
<el-table-column
min-width="300"
:show-overflow-tooltip="true"
align="center"
prop="projectName"
label="项目名称"> label="项目名称">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="uname" prop="itemsNum"
min-width="150"
align="center" align="center"
label="产品线责任人"> width="200"
label="条款号">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="distributePerson" prop="itemsName"
min-width="150" width="200"
align="center" align="center"
label="分发责任人"> label="条款名称">
</el-table-column> </el-table-column>
<el-table-column
label="条款内容"
width="200"
show-overflow-tooltip
align="center">
<template slot-scope="scope">
<el-button size="mini" type="primary" @click="itermsConditionsOpen(scope.row)" class="common-button-primary">
查看条款内容
</el-button>
</template>
</el-table-column>
<el-table-column
v-if="!changePoint"
prop="technicalRequir"
align="center"
width="250"
label="核心技术要求/变化点">
</el-table-column>
<el-table-column
v-if="changePoint"
prop="changePoint"
width="250"
align="center"
label="基于上一版本差异">
</el-table-column>
<el-table-column
prop="xcxssrq"
width="200"
align="center"
label="新车型实施日期">
</el-table-column>
<el-table-column
prop="zccssrq"
width="200"
align="center"
label="在产车实施日期">
</el-table-column>
<el-table-column
prop="complianceReasons"
align="center"
width="160"
label="合规">
</el-table-column>
<el-table-column
align="center"
width="160"
label="不合规">
<el-table-column
prop="noCompliance"
align="center"
width="170"
label="不合规项目">
</el-table-column>
<el-table-column
prop="countermeasures"
align="center"
width="160"
label="应对措施">
</el-table-column>
<el-table-column
prop="completionTime"
align="center"
width="140"
label="完成时间">
<template slot-scope="scope">
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format("YYYY-MM-DD") : "" }}</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column
prop="implementer"
align="center"
width="180"
label="评估人"
/>
</el-table> </el-table>
<el-collapse accordion> <el-collapse accordion>
<el-collapse-item title="审批意见"> <el-collapse-item title="审批意见">
@@ -182,14 +279,12 @@
</div> </div>
<ProcessFooter <ProcessFooter
show-transfer show-transfer
show-back
show-submit show-submit
:transfer-loading="isTransfer" :transfer-loading="isTransfer"
:submitLoading="isSubmit" :submitLoading="isSubmit"
:saveLoading="saveLoading" :saveLoading="saveLoading"
:approval="true" :approval="true"
@transfer="handleTransfer" @transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit" @submit="handleSubmit"
> >
</ProcessFooter> </ProcessFooter>
@@ -212,7 +307,7 @@ import axios from "axios";
import ProcessHeader from "process/components/ProcessHeader"; import ProcessHeader from "process/components/ProcessHeader";
export default { export default {
name: "phoneXmpgStep2", name: "phoneBzpgStep8",
components: { components: {
ProcessHeader, ProcessHeader,
ProcessFooter, ProcessFooter,
@@ -222,7 +317,9 @@ export default {
data() { data() {
return { return {
phoneshowflag: false, phoneshowflag: false,
activeName: '',
phoneRoleList: [], phoneRoleList: [],
projectTabName: [],
phoneDrawerTitle: '', phoneDrawerTitle: '',
//折叠的标志,true为折叠,false为不折叠 //折叠的标志,true为折叠,false为不折叠
foldFormFlag: false, foldFormFlag: false,
@@ -306,6 +403,9 @@ export default {
}; };
}, },
methods: { methods: {
handleClick(tab) {
this.projectName = tab.name
},
//折叠/展开基础信息方法 //折叠/展开基础信息方法
foldForm() { foldForm() {
this.foldFormFlag = !this.foldFormFlag this.foldFormFlag = !this.foldFormFlag
@@ -416,30 +516,32 @@ export default {
/** /**
* @description: 动态表单读取 * @description: 动态表单读取
*/ */
getFormFieldList (item) { getFormFieldList(item) {
this.$nextTick(() => { this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item)) this.listForm = JSON.parse(JSON.stringify(item));
this.listForm.prcNum = this.prcNum if (item.form === undefined) {
this.listForm.prcName = this.prcName this.fileType = item.fileType
this.listForm['id'] = item.id this.listForm.prcNum = this.prcNum
this.listForm.dataList = item.dataList this.listForm.prcName = this.prcName
this.dataList = item.dataList this.listForm['id'] = item.id
this.dataList.distributePerson = item.dataList[0].distributePerson this.dataList = item.dataList
this.listForm.breakdownList = item.breakdownList item.dataList.forEach(item => {
}) if(!this.projectTabName.includes(item.projectName)){
}, this.projectTabName.push(item.projectName)
//驳回事件 }
beforeBack () { })
if(this.commentText === null || this.commentText === undefined || this.commentText === ''){ this.projectName = this.activeName = this.projectTabName[Object.keys(this.projectTabName)[0]]
this.$message.warning('请填写审批意见') } else {
}else{ this.listForm = item.form;
this.listForm.passFlag = '1' this.dataList = item.form.dataList;
this.handleSubmit() }
}
});
}, },
//提交事件 //提交事件
handleSubmit() { handleSubmit() {
this.listForm.commentText = this.commentText this.listForm.dataList = this.dataList
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm); const json = JSON.stringify(this.listForm);
this.isSubmit = true this.isSubmit = true
this.$http.post('lawss/activiti/completeTask', { this.$http.post('lawss/activiti/completeTask', {
@@ -491,7 +593,7 @@ export default {
<style lang="less" scoped> <style lang="less" scoped>
@import '~@/assets/styles/phone'; @import '~@/assets/styles/phone';
.phoneXmpgStep2 { .phoneXmpgStep7 {
/deep/.van-dialog__content { /deep/.van-dialog__content {
min-height: 300px; min-height: 300px;
padding: 10px; padding: 10px;
@@ -0,0 +1,993 @@
<template>
<form>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<div class="prc-content-border">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="企标类别" prop="standSort" class="add-form-item form-item-disabled">
<el-select v-model="form.standSort" filterable clearable>
<el-option
v-for="item in standSortOptions"
placeholder="请选择企标类别"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
v-model="form.standName"
placeholder="请输入中文名称"
clearable
></el-input>
</el-form-item>
<el-form-item v-show="fbNode" label="发布日期" prop="issueTime" class="add-form-item form-item-disabled">
<el-datePicker v-model="form.issueTime" :disabled="disabledState"
:editable="false"
></el-datePicker>
</el-form-item>
<el-form-item label="制修订类型" prop="reviseStatus" class="add-form-item form-item-disabled" >
<template>
<div style="padding-left: 10px; color: #666666;">{{ !form.reviseStatus || form.reviseStatus === ''? '' : (form.reviseStatus === '1'? '制定' : '修订') }}</div>
</template>
</el-form-item>
<!-- <el-form-item label="文本状态" prop="textStatusBuss" class="add-form-item form-item-disabled">-->
<!-- <el-select :popper-append-to-body="false" v-model="form.textStatusBuss" placeholder="请选择文本状态">-->
<!-- <el-option-->
<!-- v-for="item in standStateOptions"-->
<!-- placeholder="请选择"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-show="verifySarStandard" label="标准年份" prop="standYear" class="add-form-item form-item-disabled">-->
<!-- <el-input v-model="form.standYear"-->
<!-- placeholder="请输入标准年份"-->
<!-- clearable></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-show="verifySarStandard" label="复审日期" prop="FSRQBUSS" class="add-form-item form-item-disabled">-->
<!-- <el-datePicker v-model="form.FSRQBUSS"-->
<!-- :editable="false"-->
<!-- :disabled="true"-->
<!-- placeholder="请选择废止日期"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- clearable></el-datePicker>-->
<!-- </el-form-item>-->
</el-col>
<el-col :span="12">
<!-- <el-form-item label="国家/地区" prop="country" class="add-form-item form-item-disabled">-->
<!-- <el-select :popper-append-to-body="false" v-model="form.country" multiple placeholder="国家/地区">-->
<!-- <el-option-->
<!-- v-for="item in countryOptions"-->
<!-- placeholder="请选择"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="企标编号" prop="standNumber" class="add-form-item form-item-disabled">-->
<!-- <el-input-->
<!-- v-model="form.standNumber"-->
<!-- placeholder="请输入企标编号"-->
<!-- clearable-->
<!-- ></el-input>-->
<!-- </el-form-item>-->
<el-form-item v-show="fbNode" label="企业标准号" prop="standCode" class="add-form-item form-item-disabled">
<el-input
v-model="form.standCode" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<el-form-item label="英文名称" prop="standEnName" class="add-form-item form-item-disabled">
<el-input
v-model="form.standEnName"
placeholder="请输入英文名称"
clearable
></el-input>
</el-form-item>
<el-form-item v-show="verifySarStandard" label="企标实施日期" prop="putTime" class="add-form-item form-item-disabled">
<el-datePicker v-model="form.putTime"
:editable="false"
placeholder="请选择企标实施日期"
value-format="yyyy-MM-dd"
></el-datePicker>
</el-form-item>
<!-- <el-form-item v-show="verifySarStandard" label="发布日期" prop="issueTime" class="add-form-item form-item-disabled">-->
<!-- <el-datePicker v-model="form.issueTime"-->
<!-- :editable="false"-->
<!-- placeholder="请选择发布日期"></el-datePicker>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-show="verifySarStandard" label="废止日期" prop="FZRQBUSS" class="add-form-item form-item-disabled">-->
<!-- <el-datePicker v-model="form.FZRQBUSS"-->
<!-- :editable="false"-->
<!-- placeholder="请选择废止日期"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- clearable></el-datePicker>-->
<!-- </el-form-item>-->
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">过程稿件</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="发布稿" prop="FBGBUSSName" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.FBGBUSSName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in FBGBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('FBGBUSS')">
<i class="el-icon-upload"></i>
</el-button>
</div>
</div>
</el-form-item>
<el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.LSBBBUSSName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('LSBBBUSS')">
<i class="el-icon-upload"></i>
</el-button>
</div>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="编制说明" prop="BZSMBUSSName" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.BZSMBUSSName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in BZSMBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('BZSMBUSS')">
<i class="el-icon-upload"></i>
</el-button>
</div>
</div>
</el-form-item>
<el-form-item label="其他文件" prop="QTWJBUSSName" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.QTWJBUSSName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in QTWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('QTWJBUSS')">
<i class="el-icon-upload"></i>
</el-button>
</div>
</div>
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">适用范围</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="起草部门" prop="QCDW" class="add-form-item form-item-disabled">
<el-input
v-model="form.QCDW"
placeholder="选择起草部门"
readonly="readonly"
@click.native="choiceQCDW('QCDWId', '起草部门', form.QCDW)">
</el-input>
</el-form-item>
<el-form-item label="文件上传人员" prop="WJSCRYBUSSName" class="add-form-item form-item-disabled">
<el-input
v-model="form.WJSCRYBUSSName"
placeholder="请输入文件上传人员"
:disabled="true"
clearable
></el-input>
</el-form-item>
<el-form-item label="能源类型" prop="NYLXCLASS" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.NYLXCLASS" placeholder="请选择能源类型" multiple>
<el-option
v-for="item in categoryOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="关联模块--乘用车VPPS中文名称" title="关联模块--乘用车VPPS中文名称" class="add-form-item form-item-disabled">
<el-input v-model="form.CYCVPPSBMBUSS" readonly="readonly" placeholder="选择VPPS编码" @click.native="choiceZRR2('car', '乘用车VPPS编码', form.CYCVPPSBMBUSS,true)"></el-input>
</el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" title="关联模块--卡车VPPS编码" class="add-form-item form-item-disabled">
<el-input v-model="form.KCVPPSBMBUSS" readonly="readonly" placeholder="选择VPPS编码" @click.native="choiceZRR3('struck', '卡车VPPS编码', form.KCVPPSBMBUSS,false)"></el-input>
</el-form-item>
<el-form-item label="模块结构单元变型号" title="模块结构单元变型号" class="add-form-item form-item-disabled">
<el-input v-model="form.DYBXHBUSS" readonly="readonly" placeholder="选择模块结构单元变型号" @click.native="choiceZRR4('dybxhbuss', '模块结构单元', form.DYBXHBUSS,false)"></el-input>
</el-form-item>
<el-form-item label="体系类别" prop="TXLBBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.TXLBBUSS" placeholder="选择体系类别" clearable @click.native="choiceZRR1('TXLBBUSS', '体系类别', form.TXLBBUSS)"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="起草人" prop="QCRBUSS" class="add-form-item form-item-disabled">
<el-input
v-model="form.QCRBUSS"
placeholder="选择起草人"
readonly="readonly"
@click.native="choiceZRRList('QCRBUSS', '选择起草人', form.QCRBUSS)">
</el-input>
</el-form-item>
<el-form-item label="适用车型" prop="SYCXCLASS" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.SYCXCLASS" placeholder="请选择适用车型" multiple>
<el-option
v-for="item in applyArcticOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="适用产品线" prop="SYCPXCLASS" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.SYCPXCLASS" placeholder="请选择适用认证" multiple>
<el-option
v-for="item in sycpxOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="关联模块--乘用车vpps中文名称" prop="CYCVPPSCNBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.CYCVPPSCNBUSS" placeholder="请输入模块中文名称" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" prop="KCVPPSCNBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.KCVPPSCNBUSS" placeholder="关联模块--卡车VPPS编码" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="模块结构单元名称" prop="DYMCBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.DYMCBUSS" placeholder="模块结构单元名称" clearable :disabled="true"></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">关联信息</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item
label="代替企标编号"
prop="DTQBBHBUSS"
class="add-form-item form-item-disabled">
<el-input
v-model="form.DTQBBHBUSS"
placeholder="请输入代替标准号"
readonly="readonly"
clearable
></el-input>
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="position:absolute;top: 10px;right: 0;"
@click="selectLaws('DTQBBHBUSS'),config.attrName = '代替企标编号'"
>{{'手动查找'}}</el-button>
</el-form-item>
<el-form-item label="采用标准" prop="CYBZ" class="add-form-item form-item-disabled">
<el-input
v-model="form.CYBZ"
placeholder="请输入采用标准"
readonly="readonly"
clearable
></el-input>
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="position:absolute;top: 10px;right: 0;"
@click="selectLaws('CYBZ'),config.attrName = '采用标准'"
>{{'手动查找'}}</el-button>
</el-form-item>
<el-form-item label="引用标准" prop="YYBZ" class="add-form-item form-item-disabled">
<el-input
v-model="form.YYBZ"
placeholder="请输入引用标准"
readonly="readonly"
clearable
></el-input>
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="position:absolute;top: 10px;right: 0;"
@click="selectLaws('YYBZ'),config.attrName = '引用标准'"
>{{'手动查找'}}</el-button>
</el-form-item>
</el-col>
<el-col :span="12">
<!-- <el-form-item label="被代替企标编号" prop="BDTWJHLAWS" class="add-form-item form-item-disabled">-->
<!-- <el-input-->
<!-- v-model="form.BDTWJHLAWS"-->
<!-- placeholder="请输入被代替企标编号"-->
<!-- clearable-->
<!-- ></el-input>-->
<!-- <el-button-->
<!-- type="primary"-->
<!-- class="common-button-primary"-->
<!-- size="mini"-->
<!-- style="position:absolute;top: 10px;right: 0;"-->
<!-- @click="selectLaws('bfbdtbzh'),config.attrName = '被代替企标编号'"-->
<!-- >{{'手动查找'}}</el-button>-->
<!-- </el-form-item>-->
<el-form-item label="上传时间" prop="XCSJBUSS" class="add-form-item form-item-disabled">
<el-input
v-model="form.XCSJBUSS"
placeholder=""
clearable
:disabled="true"
></el-input>
</el-form-item>
<el-form-item label="采标程度" prop="CBCD" class="add-form-item form-item-disabled">
<el-select v-model="form.CBCD" filterable clearable
placeholder="请先选择采标程度"
>
<el-option
v-for="item in cbcdOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="关联文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.GLWJBUSSName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in GLWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('GLWJBUSS')">
<i class="el-icon-upload"></i>
</el-button>
</div>
</div>
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="opinionsShow">
<template slot="title">意见信息</template>
</ProcessTitle>
<div class="prc-content-border" v-show="opinionsShow">
<el-table
ref="selection"
tooltip-effect="dark"
style="width: 100%;margin-bottom: 20px;overflow-y:auto;height:auto;border-bottom: 1px solid #EBEEF5;"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
row-key="id"
:data="form.infoList"
border
default-expand-all>
<el-table-column
label="序号"
min-width="5%"
align="center">
<template slot-scope="scope">
{{scope.$index + 1}}
</template>
</el-table-column>
<el-table-column
prop="modelNum"
label="条款号"
min-width="8%"
align="center"
>
</el-table-column>
<el-table-column
prop="modelUpdBefore"
label="修改前"
align="center"
min-width="20%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.modelUpdBefore" :title="scope.row.modelUpdBefore" :disabled="scope.row.disabled" placeholder="请维护章节修改前内容" @blur="modelNameFunc1(scope.row)"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="modelUpdAfter"
label="修改后"
align="center"
min-width="20%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.modelUpdAfter" :title="scope.row.modelUpdAfter" :disabled="scope.row.disabled" placeholder="请维护章节修改后内容" @blur="modelNameFunc2(scope.row)"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="modelContent"
label="修改理由"
align="center"
min-width="20%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.modelContent" :disabled="scope.row.disabled" placeholder="请填写修改理由"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="zrDeptIdName"
label="提出部门"
align="center"
min-width="15%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.zrDeptIdName" disabled placeholder="请选择提出人自动带入部门"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="zrUserIdName"
label="责任人"
min-width="15%"
align="center">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.zrUserIdName" v-if="scope.row.pid === '0'" placeholder="请选择责任人" disabled />-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
label="意见是否采纳"
min-width="15%"
align="center">
<template slot-scope="scope">
{{filterOp(scope.row.opinionsAdopted)}}
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-select style="margin-left: -223px;" v-model="scope.row.opinionsAdopted" filterable clearable :disabled="disabledState">-->
<!-- <el-option-->
<!-- v-for="item in opinionsAdoptedOptions"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
</template>
</el-table-column>
<el-table-column
prop="opinionsAdoptedCont"
label="采纳理由"
align="center"
min-width="15%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.opinionsAdoptedCont" clearable placeholder="请选择提出人自动带入部门"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
</el-table>
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="汇总评审意见文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="summaryFileList.length > 0" v-for="(item,index) in summaryFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="opinionsShow">
<template slot="title">培训信息</template>
</ProcessTitle>
<div class="prc-content-border" v-show="opinionsShow">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="培训文件" prop="madelSubName" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.madelSubName"
clearable
></el-input>
<div style="display: flex;justify-content: left;margin-top: 5px;padding-left: 20px;">
<div style="width: 80%;">
<div v-for="(item,index) in madelSubList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span style="width: 20%;margin-left: 15px;">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-top: 6px; float: left;"
@click="fileUpload('madelSub')">
<i class="el-icon-upload"></i>
</el-button>
</div>
</div>
</el-form-item>
</el-col>
</el-row>
</div>
</form>
</template>
<script>
import { mapGetters } from 'vuex'
import ProcessTitle from '../../../components/ProcessTitle'
export default {
name: 'formEditList',
components: {
ProcessTitle,
},
props: {
formSub: {
type: Object,
required: true
},
FBGBUSSFileListSub: {
type: Array,
required: true
},
LSBBBUSSFileListSub: {
type: Array,
required: true
},
BZSMBUSSFileListSub: {
type: Array,
required: true
},
QTWJBUSSFileListSub: {
type: Array,
required: true
},
GLWJBUSSFileListSub: {
type: Array,
required: true
},
summaryFileListSub: {
type: Array,
required: false
},
madelSubListSub: {
type: Array,
required: false
},
disabledState: {
type: Boolean,
default: false
},
verifySarStandard: {
type: Boolean,
default: false
},
fbNode: {
type: Boolean,
default: false
},
fileMadelSub: {
type: Boolean,
default: false
},
opinionsShow: {
type: Boolean,
default: false
},
fbgDown: {
type: Boolean,
default: false
},
},
data () {
return {
fileId:'',
dialogVisible: false,
config: {
attrName : '',
},
replaceLawsNumModel: false,
replaceLawType: '',
sarBussionessLawsEO: {
replaceLawsNum: ''
},
// 代替标准号
replaceLawsNumForm: {
lawsNumber:'',
numberName:'',
lawsTextState:'',
dataSource: '',
standNumber: '', // 标准编号
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
total: 0,
standType: 'BUSINESS',
quoteIdList: '',
validFlag: '0',
menuId: 'nomenu'
},
replaceLawsNumRow: [], // 代替政策号 数组内容
replaceTotal: 0,
form:{},
fileList: [],
FBGBUSSFileList: [],
BZSMBUSSFileList: [],
LSBBBUSSFileList: [],
QTWJBUSSFileList: [],
GLWJBUSSFileList: [],
summaryFileList: [],
madelSubList: [],
countryOptions:[],//国家地区
standSortOptions: [], // 标准类别
standNatureOptions: [], // 标准性质
standStateOptions: [], // 文本状态
standSystemOptions: [], // 标准体系
busVppsOptions: [], // 车系体系架构
busVppsChildOptions: [], // 车系体系架构子集合
modelOptions: [], // 模块体系架构
modelChildOptions: [], // 模块体系架构子集合
applyArcticOptions: [], // 适用车型
gkglbmOptions: [], // 归口管理部门
categoryOptions: [], // 能源类型
applyAuthOptions: [], // 适用认证
cysdOptions: [], // 我司参与深度
cbcdOptions: [], // 采标程度
wssmrOptions: [], // 我司署名人
sycpxOptions: [], // 适用产品线
zrbmOptions: [], // 责任部门
zrgcsOptions: [], // 责任工程师
qcdwOption: [], // 起草单位
txlbOptions: [], // 体系类别
standSortConfigOptions: [], // 标准类别下拉框
adoptExtentOptions: [], // 采标程度下拉框
emergyKindOptions: [], // 能源种类下拉框
categoryConfigOptions: [], // 所属类别下拉框
assemClassOptions: [], // 总成分类下拉框
qcdwOptions:[],//起草单位下拉框
qcrOptions:[],//起草人下拉框
nylxOptions:[],//能源类型下拉框
syrzOptions:[],//适用认证下拉框
data: [], // 标准列表数据
ListForm: {}, // 新增数据
}
},
computed: {
...mapGetters(['userInfo'])
},
methods: {
filterOp(data){
if(!data){
return ""
}
const map = new Map();
map.set("1","采纳");
map.set("2","部分采纳");
map.set("3","不采纳");
return map.get(data)
},
choiceZRR1(type, title, id) {
this.$emit('formChoiceZRR1',type,title,id)
},
choiceZRR2(type, title, id,flag) {
this.$emit('formChoiceZRR2',type,title,id,flag)
},
choiceZRR3(type, title, id) {
this.$emit('formChoiceZRR3',type,title,id)
},
choiceZRR4(type, title, id) {
this.$emit('formChoiceZRR4',type,title,id)
},
choiceQCDW(type, title, id) {
this.$emit('formChoiceQCDW',type,title,id)
},
choiceZRRList (type, title, id) {
this.$emit('formChoiceZRRListCancel',type,title,id)
},
// 代替企标编号 请求数据
getReplaceLawsNumRow () {
this.$http.get('lawss/sarBussionessStand/getSarBussionStandPage', this.replaceLawsNumForm, {
_this: this,
loading: 'replaceLoading'
}, res => {
this.replaceLawsNumRow = res.data.list
this.replaceTotal = res.data.count
if (this.selectedListRep.length !== 0) {
this.selectedListRep.map((list) => {
this.replaceLawsNumRow.map((item) => {
if (list.id === item.id) {
item._checked = true
}
})
})
}
}, e => {
})
},
selectLaws (type) {
// if (this.standNumFlag === 1) {
// this.$refs.selections.selectAll(false)
// }
// this.sarBussionessLawsEO.replaceLawsNum = ''
this.replaceLawsNumModel = true
this.replaceLawType = ''
this.replaceLawType = type
this.$emit('formSelectLawsCancel', this.replaceLawsNumModel,this.replaceLawType);
},
fileUpload (type) {
// this.fileMadel = true;//此句应在最后执行,否则会有先显示没变换的的文件列表,在显示变换了的文件列表
const fileType = type;
switch (this.fileType){
case 'FBGBUSS':
this.fileList=this.FBGBUSSFileList
break;
case 'BZSMBUSS' :
this.fileList=this.BZSMBUSSFileList
break;
case 'LSBBBUSS':
this.fileList=this.LSBBBUSSFileList
break;
case 'QTWJBUSS':
this.fileList=this.QTWJBUSSFileList
break;
case 'GLWJBUSS':
this.fileList=this.GLWJBUSSFileList
break;
case 'madelSub':
this.fileList=this.madelSubList
break;
default : ;
}
this.fileMadel = true;
console.log(this.madelSubList)
this.$emit('formCancel', this.form, this.FBGBUSSFileList,this.LSBBBUSSFileList,this.BZSMBUSSFileList,this.QTWJBUSSFileList,this.GLWJBUSSFileList,this.fileMadel,this.fileList,fileType,this.madelSubList);
},
filePreview(){
this.$preview(this.fileId)
this.dialogVisible = false
},
down(){
window.location.href = '/api/att/attFile/downloadFileForSar?fileId=' + this.fileId
this.dialogVisible = false
},
// 文件预览及下载
handleFilePreview(file,type) {
let attId = ""
if(file && file.id){
attId = file.id
}else {
attId = file.response.data.id
}
if (type === 'down') {
if (attId) {
window.open('/api/att/attFile/downloadFileForSar?fileId=' + attId)
} else {
this.$message.warning('文件不存在,下载失败')
}
} else {
this.$preview(attId)
}
},
downloadFile (data) {
//文件id中出现了','字符,去除掉
window.location.href = '/api/att/attFile/downloadFileForSar?fileId=' + data.id
},
setMap(data){
data.forEach(item => {
this.$set(this.textStatusMap, item.value, item.label)
})
},
busVsFunc(){
this.$http.get('sarVppsTree/list', '', {
_this: this
}, res => {
this.busVppsOptions = []
this.busVppsOptions = res.data
})
},
modelFunc(){
this.$http.get('sarModelTree/list', '', {
_this: this
}, res => {
this.modelOptions = []
this.modelOptions = res.data
})
},
async getDataAsync(){
let res = await this.getDicTypeListCode()
console.log(res)
if(res && res.data){
this.countryOptions = res.data.COUNTRY
this.applyCountryOptions = res.data.COUNTRY
this.regionOptions = res.data.REGION // 区域
this.standStateOptions = res.data.BUSSSTATE
this.energyKindOptions = res.data.ENERGYTYPES
this.standGeneraOptions = res.data.BUSSBIGCLASS
this.standSubclassOptions = res.data.BUSSFINECLASS
this.standSortOptions = res.data.BUSSSTANDCLASS // 标准类别
this.standNatureOptions = res.data.SARPROPERTY // 标准性质
this.standStateOptions = res.data.TEXTSTATUSBUSS // 文本状态
this.standSystemOptions = res.data.TXLBBUSS // 标准体系
this.applyArcticOptions = res.data.ENERGYTYPES // 适用车型
this.categoryOptions = res.data.NYLXCLASS // 能源类型
this.applyAuthOptions = res.data.SYRZCLASS // 适用认证
this.cysdOptions = res.data.WSCYSD // 我司参与深度
this.zrgcsOptions = res.data.ZRGCSCLASS // 责任工程师
this.txlbOptions = res.data.TXLBCLASS // 体系类别
this.qcdwOptions = res.data.QCDW // 起草单位
this.qcrOptions = res.data.QCRBUSS // 起草人
this.nylxOptions = res.data.NYLXCLASS // 能源类型
this.syrzOptions = res.data.SYRZCLASS // 适用认证
this.sycpxOptions = res.data.SYCPXCLASS // 适用产品线
this.zrgcsOptions = res.data.ZRGCSCLASS // 责任工程师
this.zrbmOptions = res.data.ZRBMCLASS // 责任部门
this.gkglbmOptions=res.data.GKGLBM;//归口管理部门
this.cbcdOptions=res.data.DEGREESTANDARD;//采标程度
this.$emit('emitDataLoading',false)
}
},
getDicTypeListCode(res,json) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this
}, res => {
const history = res;
resolve(history)
})
})
},
},
mounted () {
if(this.formSub && this.formSub.standSort && this.formSub.standSort !== ''){
this.getDataAsync()
this.form = this.formSub
console.log(this.form)
this.FBGBUSSFileList= this.FBGBUSSFileListSub
this.BZSMBUSSFileList= this.BZSMBUSSFileListSub
this.LSBBBUSSFileList= this.LSBBBUSSFileListSub
this.QTWJBUSSFileList= this.QTWJBUSSFileListSub
this.GLWJBUSSFileList= this.GLWJBUSSFileListSub
this.summaryFileList= this.summaryFileListSub
this.madelSubList= this.madelSubListSub
}
},
watch: {
form: {
handler: function (val) {
if(val){
this.$emit('formCancel', this.form, this.FBGBUSSFileList,this.LSBBBUSSFileList,this.BZSMBUSSFileList,this.QTWJBUSSFileList,this.GLWJBUSSFileList,this.fileMadel,this.fileList,'',this.madelSubList);
}
},
deep: true //对象的深度验证
},
}
}
</script>
<style scoped>
</style>
@@ -0,0 +1,637 @@
<template>
<form>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<div class="prc-content-border">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="企标类别" prop="standSort" class="add-form-item form-item-disabled">
<el-select v-model="form.standSort" filterable clearable placeholder="" :disabled="disabledState" style="appearance: none">
<el-option
v-for="item in standSortOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
v-model="form.standName" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<el-form-item label="制修订类型" prop="reviseStatus" class="add-form-item form-item-disabled" >
<template>
<div style="padding-left: 10px; color: #666666;">{{ form.reviseStatus === ''? '' : (form.reviseStatus === '1'? '制定' : '修订') }}</div>
</template>
</el-form-item>
<!-- <el-form-item label="文本状态" prop="textStatusBuss" class="add-form-item form-item-disabled">-->
<!-- <el-select :popper-append-to-body="false" v-model="form.textStatusBuss" placeholder="" :disabled="disabledState">-->
<!-- <el-option-->
<!-- v-for="item in standStateOptions"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-show="verifySarStandard" label="复审日期" prop="FSRQBUSS" class="add-form-item form-item-disabled">-->
<!-- <el-datePicker v-model="form.FSRQBUSS"-->
<!-- :editable="false"-->
<!-- :disabled="true"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- clearable></el-datePicker>-->
<!-- </el-form-item>-->
</el-col>
<el-col :span="24">
<el-form-item v-show="verifySarStandard" label="企标实施日期" prop="putTime" class="add-form-item form-item-disabled">
<el-datePicker v-model="form.putTime" :disabled="disabledState"
:editable="false"></el-datePicker>
</el-form-item>
<el-form-item label="英文名称" prop="standEnName" class="add-form-item form-item-disabled">
<el-input
v-model="form.standEnName" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<!-- <el-form-item v-show="verifySarStandard" label="标准年份" prop="standYear" class="add-form-item form-item-disabled">-->
<!-- <el-input v-model="form.standYear" :disabled="disabledState"-->
<!-- clearable></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-show="verifySarStandard" label="发布日期" prop="issueTime" class="add-form-item form-item-disabled">-->
<!-- <el-datePicker v-model="form.issueTime" :disabled="disabledState"-->
<!-- :editable="false"-->
<!-- ></el-datePicker>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-show="verifySarStandard" label="废止日期" prop="FZRQBUSS" class="add-form-item form-item-disabled">-->
<!-- <el-datePicker v-model="form.FZRQBUSS" :disabled="disabledState"-->
<!-- :editable="false"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- clearable></el-datePicker>-->
<!-- </el-form-item>-->
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">过程稿件</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="发布稿" prop="FBGBUSSName" class="add-form-item form-item-disabled">
<div v-if="FBGBUSSFileList.length > 0" v-for="(item,index) in FBGBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</el-form-item>
<el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled">
<div v-if="LSBBBUSSFileList.length > 0" v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
<!-- <div v-if="LSBBBUSSFileList.length>0" v-for="(value,index) in this.LSBBBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
<!-- {{value.name}}-->
<!-- </div>-->
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="编制说明" prop="BZSMBUSSName" class="add-form-item form-item-disabled">
<div v-if="BZSMBUSSFileList.length > 0" v-for="(item,index) in BZSMBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</el-form-item>
<el-form-item label="其他文件" prop="QTWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="QTWJBUSSFileList.length > 0" v-for="(item,index) in QTWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
<!-- <div v-if="QTWJBUSSFileList.length>0" v-for="(value,index) in this.QTWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
<!-- {{value.name}}-->
<!-- </div>-->
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">适用范围</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="起草部门" prop="QCDW" class="add-form-item form-item-disabled">
<el-input v-model="form.QCDW" :disabled="disabledState" clearable></el-input>
</el-form-item>
<el-form-item label="文件上传人员" prop="WJSCRYBUSSName" class="add-form-item form-item-disabled">
<el-input
v-model="form.WJSCRYBUSSName"
:disabled="true"
clearable
></el-input>
</el-form-item>
<el-form-item label="能源类型" prop="NYLXCLASS" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.NYLXCLASS" placeholder="" :disabled="disabledState" multiple>
<el-option
v-for="item in categoryOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="关联模块--乘用车VPPS中文名称" title="关联模块--乘用车VPPS中文名称" class="add-form-item form-item-disabled">
<el-input v-model="form.CYCVPPSBMBUSS" :disabled="disabledState"></el-input>
</el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" title="关联模块--卡车VPPS编码" class="add-form-item form-item-disabled">
<el-input v-model="form.KCVPPSBMBUSS" :disabled="disabledState"></el-input>
</el-form-item>
<el-form-item label="模块结构单元变型号" title="模块结构单元变型号" class="add-form-item form-item-disabled">
<el-input v-model="form.DYBXHBUSS" :disabled="disabledState"></el-input>
</el-form-item>
<el-form-item label="体系类别" prop="TXLBBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.TXLBBUSS" :disabled="disabledState" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="起草人" prop="QCRBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.QCRBUSS" :title="form.QCRBUSS" :disabled="disabledState" clearable></el-input>
</el-form-item>
<el-form-item label="适用车型" prop="SYCXCLASS" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.SYCXCLASS" placeholder="" :disabled="disabledState" multiple>
<el-option
v-for="item in applyArcticOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="适用产品线" prop="SYCPXCLASS" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.SYCPXCLASS" placeholder="" :disabled="disabledState" multiple>
<el-option
v-for="item in sycpxOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="关联模块--乘用车vpps中文名称" prop="CYCVPPSCNBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.CYCVPPSCNBUSS" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" prop="KCVPPSCNBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.KCVPPSCNBUSS" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="模块结构单元名称" prop="DYMCBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.DYMCBUSS" clearable :disabled="true"></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">关联信息</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="代替企标编号" prop="DTQBBHBUSS" class="add-form-item form-item-disabled">
<el-input
v-model="form.DTQBBHBUSS" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<el-form-item label="采用标准" prop="CYBZ" class="add-form-item form-item-disabled">
<el-input
v-model="form.CYBZ" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<el-form-item label="引用标准" prop="YYBZ" class="add-form-item form-item-disabled">
<el-input
v-model="form.YYBZ" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<!-- <el-form-item label="被代替企标编号" prop="BDTWJHLAWS" class="add-form-item form-item-disabled">-->
<!-- <el-input-->
<!-- v-model="form.BDTWJHLAWS" :disabled="disabledState"-->
<!-- clearable-->
<!-- ></el-input>-->
<!-- </el-form-item>-->
<el-form-item label="上传时间" prop="XCSJBUSS" class="add-form-item form-item-disabled">
<el-input
v-model="form.XCSJBUSS"
clearable
:disabled="true"
></el-input>
</el-form-item>
<el-form-item label="采标程度" prop="CBCD" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false"
v-model="form.CBCD" placeholder="" :disabled="disabledState">
<el-option
v-for="item in cbcdOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="关联文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="GLWJBUSSFileList.length > 0" v-for="(item,index) in GLWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
<!-- <div v-if="GLWJBUSSFileList.length>0" v-for="(value,index) in this.GLWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
<!-- {{value.name}}-->
<!-- </div>-->
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="opinionsShow">
<template slot="title">意见信息</template>
</ProcessTitle>
<div class="prc-content-border" v-show="opinionsShow">
<el-table
ref="selection"
tooltip-effect="dark"
style="width: 100%;margin-bottom: 20px;overflow-y:auto;height:auto;border-bottom: 1px solid #EBEEF5;"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
row-key="id"
:data="form.infoList"
border
default-expand-all>
<el-table-column
label="序号"
min-width="10%"
align="center">
<template slot-scope="scope">
{{scope.$index + 1}}
</template>
</el-table-column>
<el-table-column
prop="modelNum"
label="条款号"
min-width="15%"
align="center"
>
</el-table-column>
<el-table-column
prop="modelUpdBefore"
label="修改前"
align="center"
min-width="25%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.modelUpdBefore" :title="scope.row.modelUpdBefore" :disabled="scope.row.disabled" placeholder="请维护章节修改前内容" @blur="modelNameFunc1(scope.row)"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="modelUpdAfter"
label="修改后"
align="center"
min-width="25%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.modelUpdAfter" :title="scope.row.modelUpdAfter" :disabled="scope.row.disabled" placeholder="请维护章节修改后内容" @blur="modelNameFunc2(scope.row)"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="modelContent"
label="修改理由"
align="center"
min-width="25%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.modelContent" :disabled="scope.row.disabled" placeholder="请填写修改理由"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="zrDeptIdName"
label="提出部门"
align="center"
min-width="20%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.zrDeptIdName" disabled placeholder="请选择提出人自动带入部门"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="zrUserIdName"
label="责任人"
min-width="20%"
align="center">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.zrUserIdName" v-if="scope.row.pid === '0'" placeholder="请选择责任人" disabled />-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
label="意见是否采纳"
min-width="20%"
align="center">
<template slot-scope="scope">
{{filterOp(scope.row.opinionsAdopted)}}
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-select style="margin-left: -223px;" v-model="scope.row.opinionsAdopted" filterable clearable :disabled="disabledState">-->
<!-- <el-option-->
<!-- v-for="item in opinionsAdoptedOptions"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
</template>
</el-table-column>
<el-table-column
prop="opinionsAdoptedCont"
label="采纳理由"
align="center"
min-width="20%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.opinionsAdoptedCont" clearable placeholder="请选择提出人自动带入部门"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
</el-table>
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="汇总评审意见文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="summaryFileList.length > 0" v-for="(item,index) in summaryFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</el-form-item>
</el-col>
</el-row>
</div>
</form>
</template>
<script>
import { mapGetters } from 'vuex'
import ProcessTitle from '../../../components/ProcessTitle'
export default {
name: 'formList',
components: {
ProcessTitle,
},
props: {
form: {
type: Object,
required: true
},
FBGBUSSFileList: {
type: Array,
required: true
},
LSBBBUSSFileList: {
type: Array,
required: true
},
BZSMBUSSFileList: {
type: Array,
required: true
},
QTWJBUSSFileList: {
type: Array,
required: true
},
GLWJBUSSFileList: {
type: Array,
required: true
},
summaryFileList: {
type: Array,
required: false
},
disabledState: {
type: Boolean,
default: false
},
verifySarStandard: {
type: Boolean,
default: false
},
opinionsShow: {
type: Boolean,
default: false
},
fileShow: {
type: Boolean,
default: false
},
},
filters: {
ellipsis (value) {
if (!value) return ''
if (value.length > 35) {
return value.slice(0,35) + '...'
}
return value
},
ellipsis22 (value) {
if (!value) return ''
if (value.length > 22) {
return value.slice(0,22) + '...'
}
return value
}
},
data () {
return {
opinionsAdoptedOptions:[
{value: '1',label: '采纳'},
{value: '2',label: '部分采纳'},
{value: '3',label: '不采纳'},
],
countryOptions:[],//国家地区
standSortOptions: [], // 标准类别
standNatureOptions: [], // 标准性质
standStateOptions: [], // 文本状态
standSystemOptions: [], // 标准体系
busVppsOptions: [], // 车系体系架构
busVppsChildOptions: [], // 车系体系架构子集合
modelOptions: [], // 模块体系架构
modelChildOptions: [], // 模块体系架构子集合
applyArcticOptions: [], // 适用车型
gkglbmOptions: [], // 归口管理部门
categoryOptions: [], // 能源类型
applyAuthOptions: [], // 适用认证
cysdOptions: [], // 我司参与深度
cbcdOptions: [], // 采标程度
wssmrOptions: [], // 我司署名人
sycpxOptions: [], // 适用产品线
zrbmOptions: [], // 责任部门
zrgcsOptions: [], // 责任工程师
qcdwOption: [], // 起草单位
txlbOptions: [], // 体系类别
standSortConfigOptions: [], // 标准类别下拉框
adoptExtentOptions: [], // 采标程度下拉框
emergyKindOptions: [], // 能源种类下拉框
categoryConfigOptions: [], // 所属类别下拉框
assemClassOptions: [], // 总成分类下拉框
qcdwOptions:[],//起草单位下拉框
qcrOptions:[],//起草人下拉框
nylxOptions:[],//能源类型下拉框
syrzOptions:[],//适用认证下拉框
data: [], // 标准列表数据
ListForm: {}, // 新增数据
}
},
computed: {
...mapGetters(['userInfo'])
},
methods: {
filterOp(data){
if(!data){
return ""
}
const map = new Map();
map.set("1","采纳");
map.set("2","部分采纳");
map.set("3","不采纳");
return map.get(data)
},
// 文件预览及下载
handleFilePreview(file,type) {
let attId = ""
if(file && file.id){
attId = file.id
}else {
attId = file.response.data.id
}
if (type === 'down') {
if (attId) {
window.open('/api/att/attFile/downloadFileForSar?fileId=' + attId)
} else {
this.$message.warning('文件不存在,下载失败')
}
} else {
this.$preview(attId)
}
},
downloadFile (data) {
//文件id中出现了','字符,去除掉
window.open('/api/att/attFile/downloadFileForSar?fileId=' + data.id)
},
setMap(data){
data.forEach(item => {
this.$set(this.textStatusMap, item.value, item.label)
})
},
busVsFunc(){
this.$http.get('sarVppsTree/list', '', {
_this: this
}, res => {
this.busVppsOptions = []
this.busVppsOptions = res.data
})
},
modelFunc(){
this.$http.get('sarModelTree/list', '', {
_this: this
}, res => {
this.modelOptions = []
this.modelOptions = res.data
})
},
async getDataAsync(){
let res = await this.getDicTypeListCode()
console.log(res)
if(res && res.data){
this.countryOptions = res.data.COUNTRY
this.applyCountryOptions = res.data.COUNTRY
this.regionOptions = res.data.REGION // 区域
this.standStateOptions = res.data.BUSSSTATE
this.energyKindOptions = res.data.ENERGYTYPES
this.standGeneraOptions = res.data.BUSSBIGCLASS
this.standSubclassOptions = res.data.BUSSFINECLASS
this.standSortOptions = res.data.BUSSSTANDCLASS // 标准类别
this.standNatureOptions = res.data.SARPROPERTY // 标准性质
this.standStateOptions = res.data.TEXTSTATUSBUSS // 文本状态
this.standSystemOptions = res.data.TXLBBUSS // 标准体系
this.applyArcticOptions = res.data.ENERGYTYPES // 适用车型
this.categoryOptions = res.data.NYLXCLASS // 能源类型
this.applyAuthOptions = res.data.SYRZCLASS // 适用认证
this.cysdOptions = res.data.WSCYSD // 我司参与深度
this.zrgcsOptions = res.data.ZRGCSCLASS // 责任工程师
this.txlbOptions = res.data.TXLBCLASS // 体系类别
this.qcdwOptions = res.data.QCDW // 起草单位
this.qcrOptions = res.data.QCRBUSS // 起草人
this.nylxOptions = res.data.NYLXCLASS // 能源类型
this.syrzOptions = res.data.SYRZCLASS // 适用认证
this.sycpxOptions = res.data.SYCPXCLASS // 适用产品线
this.zrgcsOptions = res.data.ZRGCSCLASS // 责任工程师
this.zrbmOptions = res.data.ZRBMCLASS // 责任部门
this.gkglbmOptions=res.data.GKGLBM;//归口管理部门
this.cbcdOptions=res.data.DEGREESTANDARD;//采标程度
this.$emit('emitDataLoading',false)
}
},
getDicTypeListCode(res,json) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this
}, res => {
const history = res;
resolve(history)
})
})
},
},
mounted () {
this.getDataAsync()
}
}
</script>
<style scoped>
</style>
@@ -0,0 +1,672 @@
<template>
<form>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<div class="prc-content-border">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="企标类别" prop="standSort" class="add-form-item form-item-disabled">
<el-select v-model="form.standSort" filterable clearable placeholder="" :disabled="disabledState" style="appearance: none">
<el-option
v-for="item in standSortOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="制修订类型" prop="reviseStatus" class="add-form-item form-item-disabled" >
<template>
<div style="padding-left: 10px; color: #666666;">{{ form.reviseStatus === ''? '' : (form.reviseStatus === '1'? '制定' : '修订') }}</div>
</template>
</el-form-item>
<el-form-item label="中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
v-model="form.standName" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<el-form-item label="英文名称" prop="standEnName" class="add-form-item form-item-disabled">
<el-input
v-model="form.standEnName" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<!-- <el-form-item label="文本状态" prop="textStatusBuss" class="add-form-item form-item-disabled">-->
<!-- <el-select :popper-append-to-body="false" v-model="form.textStatusBuss" placeholder="" :disabled="disabledState">-->
<!-- <el-option-->
<!-- v-for="item in standStateOptions"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-show="verifySarStandard" label="复审日期" prop="FSRQBUSS" class="add-form-item form-item-disabled">-->
<!-- <el-datePicker v-model="form.FSRQBUSS"-->
<!-- :editable="false"-->
<!-- :disabled="true"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- clearable></el-datePicker>-->
<!-- </el-form-item>-->
</el-col>
<el-col :span="12">
<el-form-item label="企业标准号" prop="standCode" class="add-form-item form-item-disabled">
<el-input
v-model="form.standCode" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<!-- <el-form-item label="国家/地区" prop="country" class="add-form-item form-item-disabled">-->
<!-- <el-select :popper-append-to-body="false" v-model="form.country" multiple placeholder="国家/地区">-->
<!-- <el-option-->
<!-- v-for="item in countryOptions"-->
<!-- placeholder="请选择"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="企标编号" prop="standNumber" class="add-form-item form-item-disabled">-->
<!-- <el-input-->
<!-- v-model="form.standNumber" :disabled="disabledState"-->
<!-- clearable-->
<!-- ></el-input>-->
<!-- </el-form-item>-->
<el-form-item v-show="verifySarStandard" label="企标实施日期" prop="putTime" class="add-form-item form-item-disabled">
<el-datePicker v-model="form.putTime" :disabled="disabledState"
:editable="false"></el-datePicker>
</el-form-item>
<el-form-item label="发布日期" prop="issueTime" class="add-form-item form-item-disabled">
<el-datePicker v-model="form.issueTime" :disabled="disabledState"
:editable="false"
></el-datePicker>
</el-form-item>
<!-- <el-form-item v-show="verifySarStandard" label="标准年份" prop="standYear" class="add-form-item form-item-disabled">-->
<!-- <el-input v-model="form.standYear" :disabled="disabledState"-->
<!-- clearable></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-show="verifySarStandard" label="发布日期" prop="issueTime" class="add-form-item form-item-disabled">-->
<!-- <el-datePicker v-model="form.issueTime" :disabled="disabledState"-->
<!-- :editable="false"-->
<!-- ></el-datePicker>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-show="verifySarStandard" label="废止日期" prop="FZRQBUSS" class="add-form-item form-item-disabled">-->
<!-- <el-datePicker v-model="form.FZRQBUSS" :disabled="disabledState"-->
<!-- :editable="false"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- clearable></el-datePicker>-->
<!-- </el-form-item>-->
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">过程稿件</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="发布稿" prop="FBGBUSSName" class="add-form-item form-item-disabled">
<div v-if="FBGBUSSFileList.length > 0" v-for="(item,index) in FBGBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
<!-- <div v-if="FBGBUSSFileList.length>0" v-for="(value,index) in this.FBGBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
<!-- {{value.name}}-->
<!-- </div>-->
</el-form-item>
<el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled">
<div v-if="LSBBBUSSFileList.length > 0" v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
<!-- <div v-if="LSBBBUSSFileList.length>0" v-for="(value,index) in this.LSBBBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
<!-- {{value.name}}-->
<!-- </div>-->
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="编制说明" prop="BZSMBUSSName" class="add-form-item form-item-disabled">
<div v-if="BZSMBUSSFileList.length > 0" v-for="(item,index) in BZSMBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
<!-- <div v-if="BZSMBUSSFileList.length>0" v-for="(value,index) in this.BZSMBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
<!-- {{value.name}}-->
<!-- </div>-->
</el-form-item>
<el-form-item label="其他文件" prop="QTWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="QTWJBUSSFileList.length > 0" v-for="(item,index) in QTWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
<!-- <div v-if="QTWJBUSSFileList.length>0" v-for="(value,index) in this.QTWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
<!-- {{value.name}}-->
<!-- </div>-->
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">适用范围</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="起草部门" prop="QCDW" class="add-form-item form-item-disabled">
<el-input v-model="form.QCDW" :disabled="disabledState" clearable></el-input>
</el-form-item>
<el-form-item label="文件上传人员" prop="WJSCRYBUSSName" class="add-form-item form-item-disabled">
<el-input
v-model="form.WJSCRYBUSSName"
:disabled="true"
clearable
></el-input>
</el-form-item>
<el-form-item label="能源类型" prop="NYLXCLASS" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.NYLXCLASS" placeholder="" :disabled="disabledState" multiple>
<el-option
v-for="item in categoryOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="关联模块--乘用车VPPS中文名称" title="关联模块--乘用车VPPS中文名称" class="add-form-item form-item-disabled">
<el-input v-model="form.CYCVPPSBMBUSS" :disabled="disabledState"></el-input>
</el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" title="关联模块--卡车VPPS编码" class="add-form-item form-item-disabled">
<el-input v-model="form.KCVPPSBMBUSS" :disabled="disabledState"></el-input>
</el-form-item>
<el-form-item label="模块结构单元变型号" title="模块结构单元变型号" class="add-form-item form-item-disabled">
<el-input v-model="form.DYBXHBUSS" :disabled="disabledState"></el-input>
</el-form-item>
<el-form-item label="体系类别" prop="TXLBBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.TXLBBUSS" :disabled="disabledState" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="起草人" prop="QCRBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.QCRBUSS" :title="form.QCRBUSS" :disabled="disabledState" clearable></el-input>
</el-form-item>
<el-form-item label="适用车型" prop="SYCXCLASS" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.SYCXCLASS" placeholder="" :disabled="disabledState" multiple>
<el-option
v-for="item in applyArcticOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="适用产品线" prop="SYCPXCLASS" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.SYCPXCLASS" placeholder="" :disabled="disabledState" multiple>
<el-option
v-for="item in sycpxOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="关联模块--乘用车vpps中文名称" prop="CYCVPPSCNBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.CYCVPPSCNBUSS" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" prop="KCVPPSCNBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.KCVPPSCNBUSS" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="模块结构单元名称" prop="DYMCBUSS" class="add-form-item form-item-disabled">
<el-input v-model="form.DYMCBUSS" clearable :disabled="true"></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">关联信息</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="代替企标编号" prop="DTQBBHBUSS" class="add-form-item form-item-disabled">
<el-input
v-model="form.DTQBBHBUSS" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<el-form-item label="采用标准" prop="CYBZ" class="add-form-item form-item-disabled">
<el-input
v-model="form.CYBZ" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
<el-form-item label="引用标准" prop="YYBZ" class="add-form-item form-item-disabled">
<el-input
v-model="form.YYBZ" :disabled="disabledState"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<!-- <el-form-item label="被代替企标编号" prop="BDTWJHLAWS" class="add-form-item form-item-disabled">-->
<!-- <el-input-->
<!-- v-model="form.BDTWJHLAWS" :disabled="disabledState"-->
<!-- clearable-->
<!-- ></el-input>-->
<!-- </el-form-item>-->
<el-form-item label="上传时间" prop="XCSJBUSS" class="add-form-item form-item-disabled">
<el-input
v-model="form.XCSJBUSS"
clearable
:disabled="true"
></el-input>
</el-form-item>
<el-form-item label="采标程度" prop="CBCD" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.CBCD" placeholder="" :disabled="disabledState">
<el-option
v-for="item in cbcdOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="关联文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="GLWJBUSSFileList.length > 0" v-for="(item,index) in GLWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
<!-- <div v-if="GLWJBUSSFileList.length>0" v-for="(value,index) in this.GLWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
<!-- {{value.name}}-->
<!-- </div>-->
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="opinionsShow">
<template slot="title">意见信息</template>
</ProcessTitle>
<div class="prc-content-border" v-show="opinionsShow">
<el-table
ref="selection"
tooltip-effect="dark"
style="width: 100%;margin-bottom: 20px;overflow-y:auto;height:auto;border-bottom: 1px solid #EBEEF5;"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
row-key="id"
:data="form.infoList"
border
default-expand-all>
<el-table-column
label="序号"
min-width="6%"
align="center">
<template slot-scope="scope">
{{scope.$index + 1}}
</template>
</el-table-column>
<el-table-column
prop="modelNum"
label="条款号"
min-width="8%"
align="center"
>
</el-table-column>
<el-table-column
prop="modelUpdBefore"
label="修改前"
align="center"
min-width="20%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.modelUpdBefore" :title="scope.row.modelUpdBefore" :disabled="scope.row.disabled" placeholder="请维护章节修改前内容" @blur="modelNameFunc1(scope.row)"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="modelUpdAfter"
label="修改后"
align="center"
min-width="20%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.modelUpdAfter" :title="scope.row.modelUpdAfter" :disabled="scope.row.disabled" placeholder="请维护章节修改后内容" @blur="modelNameFunc2(scope.row)"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="modelContent"
label="修改理由"
align="center"
min-width="20%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.modelContent" :disabled="scope.row.disabled" placeholder="请填写修改理由"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="zrDeptIdName"
label="提出部门"
align="center"
min-width="15%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.zrDeptIdName" disabled placeholder="请选择提出人自动带入部门"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
prop="zrUserIdName"
label="责任人"
min-width="14%"
align="center">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.zrUserIdName" v-if="scope.row.pid === '0'" placeholder="请选择责任人" disabled />-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
<el-table-column
label="意见是否采纳"
min-width="15%"
align="center">
<template slot-scope="scope">
{{filterOp(scope.row.opinionsAdopted)}}
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-select style="margin-left: -223px;" v-model="scope.row.opinionsAdopted" filterable clearable :disabled="disabledState">-->
<!-- <el-option-->
<!-- v-for="item in opinionsAdoptedOptions"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
</template>
</el-table-column>
<el-table-column
prop="opinionsAdoptedCont"
label="采纳理由"
align="center"
min-width="15%">
<!-- <template slot-scope="scope">-->
<!-- <el-form-item-->
<!-- style="margin-left: 0;margin-bottom:0;"-->
<!-- >-->
<!-- <el-input v-model="scope.row.opinionsAdoptedCont" clearable placeholder="请选择提出人自动带入部门"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
</el-table-column>
</el-table>
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="汇总评审意见文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="summaryFileList.length > 0" v-for="(item,index) in summaryFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="width: 80%;" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name | ellipsis22 }}</span>
<span style="width: 20%;margin-left: 15px;" v-if="item.id !== ''">
<el-button type="primary" size="mini" plain icon="el-icon-download" @click="handleFilePreview(item,'down')"></el-button>
</span>
</div>
</el-form-item>
</el-col>
</el-row>
</div>
</form>
</template>
<script>
import { mapGetters } from 'vuex'
import ProcessTitle from '../../../components/ProcessTitle'
export default {
name: 'formList',
components: {
ProcessTitle,
},
props: {
form: {
type: Object,
required: true
},
FBGBUSSFileList: {
type: Array,
required: true
},
LSBBBUSSFileList: {
type: Array,
required: true
},
BZSMBUSSFileList: {
type: Array,
required: true
},
QTWJBUSSFileList: {
type: Array,
required: true
},
GLWJBUSSFileList: {
type: Array,
required: true
},
summaryFileList: {
type: Array,
required: false
},
disabledState: {
type: Boolean,
default: false
},
verifySarStandard: {
type: Boolean,
default: false
},
opinionsShow: {
type: Boolean,
default: false
},
fileShow: {
type: Boolean,
default: false
},
},
filters: {
ellipsis (value) {
if (!value) return ''
if (value.length > 35) {
return value.slice(0,35) + '...'
}
return value
},
ellipsis22 (value) {
if (!value) return ''
if (value.length > 22) {
return value.slice(0,22) + '...'
}
return value
}
},
data () {
return {
opinionsAdoptedOptions:[
{value: '1',label: '采纳'},
{value: '2',label: '部分采纳'},
{value: '3',label: '不采纳'},
],
countryOptions:[],//国家地区
standSortOptions: [], // 标准类别
standNatureOptions: [], // 标准性质
standStateOptions: [], // 文本状态
standSystemOptions: [], // 标准体系
busVppsOptions: [], // 车系体系架构
busVppsChildOptions: [], // 车系体系架构子集合
modelOptions: [], // 模块体系架构
modelChildOptions: [], // 模块体系架构子集合
applyArcticOptions: [], // 适用车型
gkglbmOptions: [], // 归口管理部门
categoryOptions: [], // 能源类型
applyAuthOptions: [], // 适用认证
cysdOptions: [], // 我司参与深度
cbcdOptions: [], // 采标程度
wssmrOptions: [], // 我司署名人
sycpxOptions: [], // 适用产品线
zrbmOptions: [], // 责任部门
zrgcsOptions: [], // 责任工程师
qcdwOption: [], // 起草单位
txlbOptions: [], // 体系类别
standSortConfigOptions: [], // 标准类别下拉框
adoptExtentOptions: [], // 采标程度下拉框
emergyKindOptions: [], // 能源种类下拉框
categoryConfigOptions: [], // 所属类别下拉框
assemClassOptions: [], // 总成分类下拉框
qcdwOptions:[],//起草单位下拉框
qcrOptions:[],//起草人下拉框
nylxOptions:[],//能源类型下拉框
syrzOptions:[],//适用认证下拉框
data: [], // 标准列表数据
ListForm: {}, // 新增数据
}
},
computed: {
...mapGetters(['userInfo'])
},
methods: {
filterOp(data){
if(!data){
return ""
}
const map = new Map();
map.set("1","采纳");
map.set("2","部分采纳");
map.set("3","不采纳");
return map.get(data)
},
// 文件预览及下载
handleFilePreview(file,type) {
let attId = ""
if(file && file.id){
attId = file.id
}else {
attId = file.response.data.id
}
if (type === 'down') {
if (attId) {
window.open('/api/att/attFile/downloadFileForSar?fileId=' + attId)
} else {
this.$message.warning('文件不存在,下载失败')
}
} else {
this.$preview(attId)
}
},
downloadFile (data) {
//文件id中出现了','字符,去除掉
window.open('/api/att/attFile/downloadFileForSar?fileId=' + data.id)
},
setMap(data){
data.forEach(item => {
this.$set(this.textStatusMap, item.value, item.label)
})
},
busVsFunc(){
this.$http.get('sarVppsTree/list', '', {
_this: this
}, res => {
this.busVppsOptions = []
this.busVppsOptions = res.data
})
},
modelFunc(){
this.$http.get('sarModelTree/list', '', {
_this: this
}, res => {
this.modelOptions = []
this.modelOptions = res.data
})
},
async getDataAsync(){
let res = await this.getDicTypeListCode()
console.log(res)
if(res && res.data){
this.countryOptions = res.data.COUNTRY
this.applyCountryOptions = res.data.COUNTRY
this.regionOptions = res.data.REGION // 区域
this.standStateOptions = res.data.BUSSSTATE
this.energyKindOptions = res.data.ENERGYTYPES
this.standGeneraOptions = res.data.BUSSBIGCLASS
this.standSubclassOptions = res.data.BUSSFINECLASS
this.standSortOptions = res.data.BUSSSTANDCLASS // 标准类别
this.standNatureOptions = res.data.SARPROPERTY // 标准性质
this.standStateOptions = res.data.TEXTSTATUSBUSS // 文本状态
this.standSystemOptions = res.data.TXLBBUSS // 标准体系
this.applyArcticOptions = res.data.ENERGYTYPES // 适用车型
this.categoryOptions = res.data.NYLXCLASS // 能源类型
this.applyAuthOptions = res.data.SYRZCLASS // 适用认证
this.cysdOptions = res.data.WSCYSD // 我司参与深度
this.zrgcsOptions = res.data.ZRGCSCLASS // 责任工程师
this.txlbOptions = res.data.TXLBCLASS // 体系类别
this.qcdwOptions = res.data.QCDW // 起草单位
this.qcrOptions = res.data.QCRBUSS // 起草人
this.nylxOptions = res.data.NYLXCLASS // 能源类型
this.syrzOptions = res.data.SYRZCLASS // 适用认证
this.sycpxOptions = res.data.SYCPXCLASS // 适用产品线
this.zrgcsOptions = res.data.ZRGCSCLASS // 责任工程师
this.zrbmOptions = res.data.ZRBMCLASS // 责任部门
this.gkglbmOptions=res.data.GKGLBM;//归口管理部门
this.cbcdOptions=res.data.DEGREESTANDARD;//采标程度
this.$emit('emitDataLoading',false)
}
},
getDicTypeListCode(res,json) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this
}, res => {
const history = res;
resolve(history)
})
})
},
},
mounted () {
this.getDataAsync()
}
}
</script>
<style scoped>
</style>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -2,7 +2,7 @@
<div class="phoneXmpg2Step12 phoneBox"> <div class="phoneXmpg2Step12 phoneBox">
<ProcessHeaderPhone toggle> <ProcessHeaderPhone toggle>
<template slot="proName">项目合规评估流程</template> <template slot="proName">项目合规评估流程</template>
<template slot="proNode">分发负责人审批</template> <template slot="proNode">产品工程经理审核</template>
</ProcessHeaderPhone> </ProcessHeaderPhone>
<div class="headerTabs"> <div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div> <div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
@@ -167,6 +167,12 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
<el-table-column
prop="remarks"
align="center"
width="200"
label="不涉及理由">
</el-table-column>
<el-table-column <el-table-column
align="center" align="center"
width="150" width="150"
@@ -223,7 +229,7 @@ import ProcessTitle from "../../components/ProcessTitle";
import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process"; import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process";
export default { export default {
name: "phoneXmpg2Step12", name: "phoneXmpgStep4",
components: { components: {
ProcessTitle, ProcessTitle,
ProcessHeader, ProcessHeader,
@@ -422,31 +428,36 @@ export default {
this.listForm.prcName = this.prcName; this.listForm.prcName = this.prcName;
this.listForm["id"] = item.id; this.listForm["id"] = item.id;
this.listForm.dataList = item.dataList; this.listForm.dataList = item.dataList;
this.listForm.dataList.forEach(item => { this.dataList = item.dataList;
if(item.workPeople !== ''){ this.dataList.forEach(item =>{
this.dataList.push(item) if(item.children){
item.children.forEach(items =>{
dataChildren.push(items)
})
} }
item.children.forEach(items=> { })
if(items.key === item.standId){ this.dataList.forEach(item => {
dataChildren.forEach(items =>{
if (items.key === item.standId) {
this.$set(items, "standName", item.standName); this.$set(items, "standName", item.standName);
this.$set(items, "standEnName", item.standEnName); this.$set(items, "standEnName", item.standEnName);
this.$set(items, "standYear", item.standYear); this.$set(items, "standYear", item.standYear);
this.$set(items, "standSort", item.standSort); this.$set(items, "standSort", item.standSort);
this.$set(items, "standNumber", item.standNumber); this.$set(items, "standNumber", item.standNumber);
this.$set(items, "zccssrq", item.zccssrq);
this.$set(items, "xcxssrq", item.xcxssrq);
this.$set(items, "ssrq", item.ssrq);
} }
}) })
}) })
this.listForm.dataList.forEach(item => { dataChildren.forEach((item, index) => {
dataChildren.push(item.children) dataListChildren = dataListChildren.concat(item);
});
dataListChildren = this.dataList.concat(dataListChildren);
let index = dataListChildren.findIndex(item => {
return item.people
}) })
dataChildren.forEach((item,index) => { if(index > -1){
dataListChildren = dataListChildren.concat(item) dataListChildren.splice(index, 1)
}) }
dataListChildren = this.dataList.concat(dataListChildren) this.dataList = dataListChildren;
this.dataList = dataListChildren
this.total = this.dataList.length; this.total = this.dataList.length;
}); });
}, },
+197 -270
View File
@@ -1,8 +1,8 @@
<template> <template>
<div class="phoneXmpgStep5 phoneBox"> <div class="phoneXmpg2Step12 phoneBox">
<ProcessHeaderPhone toggle> <ProcessHeaderPhone toggle>
<template slot="proName">标准合规评估流程</template> <template slot="proName">项目合规评估流程</template>
<template slot="proNode">分发负责人审批</template> <template slot="proNode">批准</template>
</ProcessHeaderPhone> </ProcessHeaderPhone>
<div class="headerTabs"> <div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div> <div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
@@ -22,50 +22,20 @@
<div class="prc-content-border" v-if="foldFormFlag === false"> <div class="prc-content-border" v-if="foldFormFlag === false">
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled"> <el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input <el-input
class="input-jump" v-model="listForm.projectNumber"
v-model="listForm.standNumber" placeholder="请输入项目编号"
placeholder="请输入标准编号" disabled
readonly clearable
@click.native="handlePreview(listForm)"
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled"> <el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input <el-input
class="input-jump" v-model="listForm.projectName"
v-model="listForm.standName" placeholder="请输入项目名称"
placeholder="请输入标准名称" disabled
readonly clearable
@click.native="handlePreview(listForm)"
></el-input>
</el-form-item>
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.certifiedEngineerName"
placeholder="请选择认证工程师"
></el-input>
</el-form-item>
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.certifiedEngineerName"
placeholder="--"
></el-input>
</el-form-item>
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.qualityEngineerName"
placeholder="请选择质量工程师"
></el-input>
</el-form-item>
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.qualityEngineerName"
placeholder="--"
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -77,48 +47,20 @@
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none"> <div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled"> <el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input <el-input
v-model="listForm.standNumber" v-model="listForm.projectNumber"
placeholder="请输入标准编号" placeholder="请输入项目编号"
readonly disabled
@click.native="handlePreview(listForm)" clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="标准名称" prop="standName" class="add-form-item form-item-disabled"> <el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input <el-input
v-model="listForm.standName" v-model="listForm.projectName"
placeholder="请输入标准名称" placeholder="请输入项目名称"
readonly disabled
@click.native="handlePreview(listForm)" clearable
></el-input>
</el-form-item>
<el-form-item label="认证工程师" v-if="listForm.certifiedEngineerName !== ''" prop="certifiedEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.certifiedEngineerName"
placeholder="请选择认证工程师"
></el-input>
</el-form-item>
<el-form-item label="认证工程师" v-else prop="certifiedEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.certifiedEngineerName"
placeholder="--"
></el-input>
</el-form-item>
<el-form-item v-if="listForm.qualityEngineerName !== '' " label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.qualityEngineerName"
placeholder="请选择质量工程师"
></el-input>
</el-form-item>
<el-form-item v-else label="质量工程师" prop="qualityEngineerName" class="add-form-item form-item-disabled">
<el-input
readonly
v-model="listForm.qualityEngineerName"
placeholder="--"
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -135,30 +77,35 @@
tooltip-effect="dark" tooltip-effect="dark"
style="width: 100%" style="width: 100%"
border border
@selection-change="selectStandChange"
height="55%" height="55%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', :header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}"> fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column <el-table-column
prop="productLine" prop="standEnName"
label="标准编号"
width="180"
align="center" align="center"
width="200" >
label="产品线"> <template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSort }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="projectNumber" prop="standName"
width="180"
align="center" align="center"
width="200" label="标准名称"
label="项目编号"> >
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="projectName" prop="itemsNum"
align="center"
width="200"
label="项目名称">
</el-table-column>
<el-table-column
prop="itemNum"
align="center" align="center"
width="200" width="200"
label="条款号"> label="条款号">
@@ -169,18 +116,6 @@
align="center" align="center"
label="条款名称"> label="条款名称">
</el-table-column> </el-table-column>
<el-table-column
prop="technicalRequir"
align="center"
width="250"
label="核心技术要求/变化点">
</el-table-column>
<el-table-column
prop="changePoint"
width="250"
align="center"
label="基于上一版本差异">
</el-table-column>
<el-table-column <el-table-column
prop="xCXSSRQ" prop="xCXSSRQ"
width="200" width="200"
@@ -233,10 +168,10 @@
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="remarks"
align="center" align="center"
width="150" width="200"
prop="implementer" label="不涉及理由">
label="落实人">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
align="center" align="center"
@@ -245,6 +180,7 @@
label="责任人"> label="责任人">
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-button v-if="itemLists.length > 20 && tableIndex * 20 < itemLists.length" style="width: 100%; margin-top: 5px;" icon="el-icon-caret-bottom" @click="tableLoading">加载更多...</el-button>
<el-collapse accordion> <el-collapse accordion>
<el-collapse-item title="审批意见"> <el-collapse-item title="审批意见">
<div style="margin: 10px 0;"> <div style="margin: 10px 0;">
@@ -263,15 +199,13 @@
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table> <Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div> </div>
<ProcessFooter <ProcessFooter
show-transfer
show-back
show-submit show-submit
show-transfer
:transfer-loading="isTransfer" :transfer-loading="isTransfer"
:submitLoading="isSubmit" :submitLoading="isSubmit"
:saveLoading="saveLoading" :saveLoading="saveLoading"
:approval="true" :approval="true"
@transfer="handleTransfer" @transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit" @submit="handleSubmit"
> >
</ProcessFooter> </ProcessFooter>
@@ -287,113 +221,74 @@
<script> <script>
import { Dialog } from 'vant'; import { Dialog } from 'vant';
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone' import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
import ProcessFooter from '../../components/ProcessFooter' import ProcessHeader from "../../components/ProcessHeader";
import ProcessTitle from '../../components/ProcessTitle' import ProcessFooter from "../../components/ProcessFooter";
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process' import ProcessTitle from "../../components/ProcessTitle";
import axios from "axios"; import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process";
import ProcessHeader from "process/components/ProcessHeader";
export default { export default {
name: "phoneXmpgStep5", name: "phoneXmpgStep5",
components: { components: {
ProcessTitle,
ProcessHeader, ProcessHeader,
ProcessFooter,
ProcessHeaderPhone, ProcessHeaderPhone,
ProcessTitle ProcessFooter
}, },
data() { data() {
return { return {
phoneshowflag: false, phoneshowflag: false,
phoneRoleList: [], phoneRoleList: [],
phoneDrawerTitle: '', phoneDrawerTitle: '',
//折叠的标志,true为折叠,false为不折叠 tableIndex: 0,
itemLists: [],
foldFormFlag: false, foldFormFlag: false,
total: 0,
currentPage: 1,
pageSize: 20,
nodeList:[], nodeList:[],
isTransfer: false,
drawerTitle:'', drawerTitle:'',
isTransfer: false,
// 调整处理人抽屉状态 // 调整处理人抽屉状态
drawerModal: false, drawerModal: false,
detailData: [], active: "1",
loading: false,
// 当前流程类型(1待办/2已办) // 当前流程类型(1待办/2已办)
processType: 1, processType: 1,
loading: false,
dataList: [],//清单里的标准数据
active: "1",
userId:this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId,
listType: "country", //选择的清单类型
isSubmit: false, isSubmit: false,
saveLoading: false, saveLoading: false,
tabValue: "listOfCountries", //表单的数据
selectedList: [], //选择清单的选择框
selectList: [], //选择标准的选择框
bringData: [],
commentText: "", //填写会签意见
page: 1,
total: 0,
pageSize: this.$store.getters.userInfo.configContent,
listForm: { listForm: {
passFlag: " ", //空为审批通过 1 为驳回 ffFlag: " ", //1审批通过 其他为驳回
standNumber: "", //标准编号 projectNumber: "", //项目编号
standName: "",//标准名称 projectName: "", //项目名称
certifiedEngineer: "", //认证工程师 dataList: [], //项目下的标准数据
qualityEngineer: "", //质量工程师 breakdownList: [] //标准下的分解单数据
certifiedEngineerName: "", //认证工程师
qualityEngineerName: "", //质量工程师
breakdownList: [{
applyArctic: "",
busStandCover: "",
claimType: "",
id: "",
itemsName: "",
itemsNum: "",
responsibleUnit: "", //责任部门
responsibleEngineer: "", //责任工程师
standId: "",
svpps: ""
}],
dataList: [{
projectLine: "", //产品线
uname: "",//产品线责任人
projectManager:"",// 产品线责任人id
distributePerson: "", //分发责任人
distributePersonId: "", //分发责任人id
id: "",
sarStandProjectLibraries: [{
projectManager: '',
projectLevel: '',
projectNumber: '',
projectEndDate: '',
currentNode: '',
projectGroup: '',
productLine: '',
projectClassification: '',
projectStatus: '',
projectStartDate: '',
id: '',
projectName: '',
projectPlatfor: ''
}]
}]
}, },
choiceForm: {}, //选择标准清单列表 dataList: [], //展示的标准数据
countryOptions: [], //适用区域下拉框数据 commentText: "", //审批意见
user1: "", detailData: [],//流程历史数据
user2: "", userId: this.$store.getters.userInfo.userId,
user3: "", taskIds: this.$route.query.taskIds,
user4: "", pId: this.$route.query.prcId
user5: "",
standMap: new Map()
}; };
}, },
methods: { methods: {
tableLoading () {
this.tableIndex++
let index = this.tableIndex * 20
let endIndex = index + 20
if (this.tableIndex * 20 > this.itemLists.length) {
this.$message.warning('没有更多了')
}
let newData = this.itemLists.slice(index, endIndex)
this.itemList = this.itemList.concat(newData)
},
//折叠/展开基础信息方法 //折叠/展开基础信息方法
foldForm() { foldForm() {
this.foldFormFlag = !this.foldFormFlag this.foldFormFlag = !this.foldFormFlag
}, },
//确认转办 //确认转办
checkedRole (data) { checkedTransferRole (data) {
this.assigneeNewLoading = true this.assigneeNewLoading = true
changeAssigneeNew({ changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id taskId: this.$route.query.taskIds, // 任务id
@@ -454,33 +349,59 @@ export default {
}) })
this.modalshowflag = false this.modalshowflag = false
}, },
processTable () {
this.$http.get('lawss/activiti/get_list_by_instance', {
prcNum: this.$route.query.prcNum,
sortWord: this.shunxu ? this.paixu : '',
shunxu: this.shunxu
}, {
loading: 'loading',
_this: this
}, res => {
this.detailData = res
}, e => {})
},
//tab发生变化
handleTabs(name) {
this.active = name;
},
// 点击查看 // 点击查看
handlePreview(item) { handlePreview(item) {
let routeUrl = this.$router.resolve({ let routeUrl = this.$router.resolve({
name: "OtherStandardDetails", name: "OtherStandardDetails",
params: { params: {
id: item.id, id: item.standId,
pageType: "INLAND_STAND" pageType: "INLAND_STAND"
} }
}); });
window.open(routeUrl.href, "_blank"); window.open(routeUrl.href, "_blank");
}, },
//查询项目下的标准
getStandData() {
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", {
standType: this.standardSearch.standType,
standNumber: this.standardSearch.standNumber,
page: this.pageNo,
pageSize: this.pageSizeNo
}, {
_this: this
}, res => {
this.standardData = res.data.list;
this.standardData.forEach(item => {
if (item.attrInfoMap === null) {
this.$set(item, "ZCCSSRQ", "");
this.$set(item, "XCXSSRQ", "");
} else {
this.$set(item, "ZCCSSRQ", item.attrInfoMap.ZCCSSRQ);
this.$set(item, "XCXSSRQ", item.attrInfoMap.XCXSSRQ);
}
});
this.totalNo = res.data.count;
}, e => {
});
},
processTable() {
this.$http.get("lawss/activiti/get_list_by_instance", {
prcNum: this.$route.query.prcNum,
sortWord: this.shunxu ? this.paixu : "",
shunxu: this.shunxu
}, {
loading: "loading",
_this: this
}, res => {
this.detailData = res;
}, e => {
});
},
//tab改变
handleTabs(type) {
this.active = type;
},
//获取数据
getData() { getData() {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
inboundLiaisonDetail({ inboundLiaisonDetail({
@@ -488,51 +409,74 @@ export default {
pId: this.pId pId: this.pId
}).then(res => { }).then(res => {
if (res) { if (res) {
const processForm = JSON.parse(res.mesg) const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm) this.getFormFieldList(processForm);
} }
}).catch(e => { }).catch(e => {
}) });
}) });
}, },
/** //动态表单读取
* @description: 动态表单读取 getFormFieldList(item) {
*/ console.log(item);
getFormFieldList (item) {
this.$nextTick(() => { this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item)) this.listForm = JSON.parse(JSON.stringify(item));
this.listForm.prcNum = this.prcNum let dataChildren = []
this.listForm.prcName = this.prcName let dataListChildren = []
this.dataList = item.dataList this.listForm.prcNum = this.prcNum;
this.listForm.standName = item.standName this.listForm.prcName = this.prcName;
this.listForm.standNumber = item.standNumber this.listForm["id"] = item.id;
this.listForm.id = item.id this.dataList = item.dataList;
this.listForm.qualityEngineerName = item.qualityEngineerName this.dataList.forEach(item =>{
this.listForm.certifiedEngineerName = item.certifiedEngineerName if(item.children){
this.listForm.responsibleUnit = item.responsibleUnit item.children.forEach(items =>{
this.listForm.responsibleEngineer = item.responsibleEngineer dataChildren.push(items)
}) })
}
})
this.dataList.forEach(item => {
dataChildren.forEach(items =>{
if (items.key === item.standId) {
this.$set(items, "standName", item.standName);
this.$set(items, "standEnName", item.standEnName);
this.$set(items, "standYear", item.standYear);
this.$set(items, "standSort", item.standSort);
this.$set(items, "standNumber", item.standNumber);
}
})
})
dataChildren.forEach((item, index) => {
dataListChildren = dataListChildren.concat(item);
});
dataListChildren = this.dataList.concat(dataListChildren);
let newDataListChildren = []
dataListChildren.forEach(item => {
if(!item.people){
newDataListChildren.push(item)
}
})
this.dataList = newDataListChildren;
this.total = this.dataList.length;
});
}, },
//驳回事件 //驳回事件
beforeBack () { beforeBack() {
if(!this.commentText){ if (!this.commentText) {
this.$message.warning('请填写审批意见') this.$message.warning("请填写审批意见");
}else{ } else {
this.listForm.applyUpdUserId = this.dataList[0].distributePersonId this.listForm.dlFlag = "2";
this.listForm.commentText = this.commentText; this.listForm.commentText = this.commentText;
this.listForm.dataList = this.dataList
this.listForm.fenFlag = '1'
const json = JSON.stringify(this.listForm); const json = JSON.stringify(this.listForm);
this.$http.post('lawss/activiti/completeTask', { this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds, taskIds: this.taskIds,
userId: this.userId, userId: this.userId,
json: json, json: json
}, { }, {
_this: this _this: this
}, res => { }, res => {
if (res.success) { if (res.success) {
this.$message.success(res.message) this.$message.success(res.message);
this.$router.push('/processCenter') this.$router.push("/processCenter");
} }
}, e => { }, e => {
}); });
@@ -540,62 +484,45 @@ export default {
}, },
//提交事件 //提交事件
handleSubmit() { handleSubmit() {
this.listForm.applyUpdUserId = this.dataList[0].distributePersonId this.isSubmit = true;
this.listForm.dataList = this.dataList this.listForm.dlFlag = "1";
this.listForm.fenFlag = '2'
this.listForm.commentText = this.commentText; this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm); const json = JSON.stringify(this.listForm);
this.isSubmit = true this.$http.post("lawss/activiti/completeTask", {
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds, taskIds: this.taskIds,
userId: this.userId, userId: this.userId,
json: json, json: json
}, { }, {
_this: this _this: this
}, res => { }, res => {
if (res.success) { if (res.success) {
this.$message.success(res.message) this.$message.success(res.message);
this.$router.push('/processCenter') this.$router.push("/processCenter");
} }
this.isSubmit = false this.isSubmit = false;
}, e => { }, e => {
}); });
}, },
//标准表格选择框改变 // 分页
selectStandChange(data) { handleCurrentChange(currentPage) {
this.selectList = []; this.currentPage = currentPage;
for (let i = 0; i < data.length; i++) {
this.selectList.push(data[i].id);
}
}, },
selectThree() {
},
pageChange(page) {
this.page = page;
this.searchData();
},
pageSizeChange(pageSize) {
this.pageSize = this.$store.getters.userInfo.configContent;
this.searchData();
}
}, },
computed: { computed: {
listNoDataText () { listNoDataText() {
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程' return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}, }
}, },
mounted() { mounted() {
this.processTable() this.processTable();
this.getData() this.getData();
} }
}; };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
@import '~@/assets/styles/phone'; @import '~@/assets/styles/phone';
.phoneXmpgStep5 { .phoneXmpg2Step12 {
/deep/.van-dialog__content { /deep/.van-dialog__content {
min-height: 300px; min-height: 300px;
padding: 10px; padding: 10px;
@@ -1,550 +0,0 @@
<template>
<div class="phoneXmpg2Step10 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">项目合规评估流程</template>
<template slot="proNode">分发负责人审批</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
</div>
<div class="content" v-show="active === '1'">
<div style="overflow: auto;">
<el-form
:model="listForm"
class="label-input-form"
label-width="210px"
>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<el-collapse-transition>
<div class="prc-content-border" v-if="foldFormFlag === false">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-collapse-transition>
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</div>
<ProcessTitle>
<template slot="title">填写信息</template>
</ProcessTitle>
<el-table
ref="multipleTable"
:data="dataList"
tooltip-effect="dark"
style="width: 100%"
border
height="55%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column
prop="standEnName"
label="标准编号"
width="180"
align="center"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSort }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
width="180"
align="center"
label="标准名称"
>
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
</template>
</el-table-column>
<el-table-column
prop="itemsNum"
align="center"
width="200"
label="条款号">
</el-table-column>
<el-table-column
prop="itemsName"
width="200"
align="center"
label="条款名称">
</el-table-column>
<el-table-column
prop="xCXSSRQ"
width="200"
align="center"
label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="zCCSSRQ"
width="200"
align="center"
label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="complianceReasons"
align="center"
width="160"
label="合规">
</el-table-column>
<el-table-column
align="center"
width="160"
prop="researchNonCompliance"
label="不合规">
<el-table-column
prop="noCompliance"
align="center"
width="170"
label="不合规项目">
</el-table-column>
<el-table-column
prop="countermeasures"
align="center"
width="160"
label="应对措施">
</el-table-column>
<el-table-column
prop="completionTime"
align="center"
width="120"
label="完成时间">
<template slot-scope="scope">
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column
align="center"
width="150"
prop="distributePerson"
label="责任人">
</el-table-column>
</el-table>
<el-button v-if="itemLists.length > 20 && tableIndex * 20 < itemLists.length" style="width: 100%; margin-top: 5px;" icon="el-icon-caret-bottom" @click="tableLoading">加载更多...</el-button>
<el-collapse accordion>
<el-collapse-item title="审批意见">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<div class="content" v-show="active === '2'">
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div>
<ProcessFooter
show-back
show-submit
show-transfer
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit"
>
</ProcessFooter>
<phone-role
:role-title="drawerTitle"
:result-list="phoneRoleList"
:is-show-phone.sync="phoneshowflag"
@checkedRole="drawerCheck"
/>
</div>
</template>
<script>
import { Dialog } from 'vant';
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process";
export default {
name: "phoneXmpg2Step10",
components: {
ProcessTitle,
ProcessHeader,
ProcessHeaderPhone,
ProcessFooter
},
data() {
return {
phoneshowflag: false,
phoneRoleList: [],
phoneDrawerTitle: '',
tableIndex: 0,
itemLists: [],
foldFormFlag: false,
total: 0,
currentPage: 1,
pageSize: 20,
nodeList:[],
drawerTitle:'',
isTransfer: false,
// 调整处理人抽屉状态
drawerModal: false,
active: "1",
loading: false,
// 当前流程类型(1待办/2已办)
processType: 1,
isSubmit: false,
saveLoading: false,
//表单的数据
listForm: {
ffFlag: " ", //1审批通过 其他为驳回
projectNumber: "", //项目编号
projectName: "", //项目名称
dataList: [], //项目下的标准数据
breakdownList: [] //标准下的分解单数据
},
dataList: [], //展示的标准数据
commentText: "", //审批意见
detailData: [],//流程历史数据
userId: this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId
};
},
methods: {
tableLoading () {
this.tableIndex++
let index = this.tableIndex * 20
let endIndex = index + 20
if (this.tableIndex * 20 > this.itemLists.length) {
this.$message.warning('没有更多了')
}
let newData = this.itemLists.slice(index, endIndex)
this.itemList = this.itemList.concat(newData)
},
//折叠/展开基础信息方法
foldForm() {
this.foldFormFlag = !this.foldFormFlag
},
//确认转办
checkedTransferRole (data) {
this.assigneeNewLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false
if (res.success) {
this.drawerModal = false
this.$message.success('调整成功')
this.$router.push("/processCenter");
this.processNum()
} else {
this.$message.warning(res.message)
}
})
},
// 请求转换流程图
processNum (row) {
axios.request({
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
responseType: 'blob',
method: 'get',
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data)
})
},
//转办按钮
handleTransfer(){
this.phoneshowflag = true
this.phoneRoleList = this.roleTransfer
this.phoneDrawerTitle = '转办处理人'
},
//确认转办
drawerCheck (data) {
this.roleTransfer = data
this.phoneRoleList = this.roleTransfer
this.turnLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res =>{
if (res.success) {
this.turnLoading = false
this.$message.success('调整成功')
this.$router.push("/processCenter")
} else {
this.$message.warning(res.message)
}
})
this.modalshowflag = false
},
// 点击查看
handlePreview(item) {
let routeUrl = this.$router.resolve({
name: "OtherStandardDetails",
params: {
id: item.standId,
pageType: "INLAND_STAND"
}
});
window.open(routeUrl.href, "_blank");
},
//查询项目下的标准
getStandData() {
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", {
standType: this.standardSearch.standType,
standNumber: this.standardSearch.standNumber,
page: this.pageNo,
pageSize: this.pageSizeNo
}, {
_this: this
}, res => {
this.standardData = res.data.list;
this.standardData.forEach(item => {
if (item.attrInfoMap === null) {
this.$set(item, "ZCCSSRQ", "");
this.$set(item, "XCXSSRQ", "");
} else {
this.$set(item, "ZCCSSRQ", item.attrInfoMap.ZCCSSRQ);
this.$set(item, "XCXSSRQ", item.attrInfoMap.XCXSSRQ);
}
});
this.totalNo = res.data.count;
}, e => {
});
},
processTable() {
this.$http.get("lawss/activiti/get_list_by_instance", {
prcNum: this.$route.query.prcNum,
sortWord: this.shunxu ? this.paixu : "",
shunxu: this.shunxu
}, {
loading: "loading",
_this: this
}, res => {
this.detailData = res;
}, e => {
});
},
//tab改变
handleTabs(type) {
this.active = type;
},
//获取数据
getData() {
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.taskIds,
pId: this.pId
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm);
}
}).catch(e => {
});
});
},
//动态表单读取
getFormFieldList(item) {
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item));
let dataChildren = []
let dataListChildren = []
this.listForm.prcNum = this.prcNum;
this.listForm.prcName = this.prcName;
this.listForm["id"] = item.id;
this.listForm.dataList = item.dataList;
this.listForm.dataList.forEach(item => {
if(item.workPeople !== ''){
this.dataList.push(item)
}
item.children.forEach(items=> {
if(items.key === item.standId){
this.$set(items, "standName", item.standName);
this.$set(items, "standEnName", item.standEnName);
this.$set(items, "standYear", item.standYear);
this.$set(items, "standSort", item.standSort);
this.$set(items, "standNumber", item.standNumber);
this.$set(items, "zccssrq", item.zccssrq);
this.$set(items, "xcxssrq", item.xcxssrq);
this.$set(items, "ssrq", item.ssrq);
}
})
})
this.listForm.dataList.forEach(item => {
dataChildren.push(item.children)
})
dataChildren.forEach((item,index) => {
dataListChildren = dataListChildren.concat(item)
})
dataListChildren = this.dataList.concat(dataListChildren)
this.dataList = dataListChildren
this.total = this.dataList.length;
});
},
//驳回事件
beforeBack() {
if (!this.commentText) {
this.$message.warning("请填写审批意见");
} else {
this.listForm.bzFlag = "2";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
}, e => {
});
}
},
//提交事件
handleSubmit() {
this.isSubmit = true;
this.listForm.bzFlag = "1";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
},
// 分页
handleCurrentChange(currentPage) {
this.currentPage = currentPage;
},
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
},
mounted() {
this.processTable();
this.getData();
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.phoneXmpg2Step10 {
/deep/.van-dialog__content {
min-height: 300px;
padding: 10px;
}
.prc-content-border {
overflow: auto;
}
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
</style>
@@ -1,525 +0,0 @@
<template>
<div class="phoneXmpg2Step11 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">项目合规评估流程</template>
<template slot="proNode">分发负责人审批</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
</div>
<div class="content" v-show="active === '1'">
<div style="overflow: auto;">
<el-form
:model="listForm"
class="label-input-form"
label-width="210px"
>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<el-collapse-transition>
<div class="prc-content-border" v-if="foldFormFlag === false">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-collapse-transition>
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</div>
<ProcessTitle>
<template slot="title">填写信息</template>
</ProcessTitle>
<el-table
ref="multipleTable"
:data="dataList"
tooltip-effect="dark"
style="width: 100%"
border
height="55%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column
prop="standEnName"
label="标准编号"
width="180"
align="center"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSort }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
width="180"
align="center"
label="标准名称"
>
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
</template>
</el-table-column>
<el-table-column
prop="itemsNum"
align="center"
width="200"
label="条款号">
</el-table-column>
<el-table-column
prop="itemsName"
width="200"
align="center"
label="条款名称">
</el-table-column>
<el-table-column
prop="xCXSSRQ"
width="200"
align="center"
label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="zCCSSRQ"
width="200"
align="center"
label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="complianceReasons"
align="center"
width="160"
label="合规">
</el-table-column>
<el-table-column
align="center"
width="160"
prop="researchNonCompliance"
label="不合规">
<el-table-column
prop="noCompliance"
align="center"
width="170"
label="不合规项目">
</el-table-column>
<el-table-column
prop="countermeasures"
align="center"
width="160"
label="应对措施">
</el-table-column>
<el-table-column
prop="completionTime"
align="center"
width="120"
label="完成时间">
<template slot-scope="scope">
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column
align="center"
width="150"
prop="distributePerson"
label="责任人">
</el-table-column>
</el-table>
<el-button v-if="itemLists.length > 20 && tableIndex * 20 < itemLists.length" style="width: 100%; margin-top: 5px;" icon="el-icon-caret-bottom" @click="tableLoading">加载更多...</el-button>
<el-collapse accordion>
<el-collapse-item title="审批意见">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<div class="content" v-show="active === '2'">
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div>
<ProcessFooter
show-submit
show-transfer
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@submit="handleSubmit"
>
</ProcessFooter>
<phone-role
:role-title="drawerTitle"
:result-list="phoneRoleList"
:is-show-phone.sync="phoneshowflag"
@checkedRole="drawerCheck"
/>
</div>
</template>
<script>
import { Dialog } from 'vant';
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process";
export default {
name: "phoneXmpg2Step11",
components: {
ProcessTitle,
ProcessHeader,
ProcessHeaderPhone,
ProcessFooter
},
data() {
return {
phoneshowflag: false,
phoneRoleList: [],
phoneDrawerTitle: '',
tableIndex: 0,
itemLists: [],
foldFormFlag: false,
total: 0,
currentPage: 1,
pageSize: 20,
nodeList:[],
drawerTitle:'',
isTransfer: false,
// 调整处理人抽屉状态
drawerModal: false,
active: "1",
loading: false,
// 当前流程类型(1待办/2已办)
processType: 1,
isSubmit: false,
saveLoading: false,
//表单的数据
listForm: {
ffFlag: " ", //1审批通过 其他为驳回
projectNumber: "", //项目编号
projectName: "", //项目名称
dataList: [], //项目下的标准数据
breakdownList: [] //标准下的分解单数据
},
dataList: [], //展示的标准数据
commentText: "", //审批意见
detailData: [],//流程历史数据
userId: this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId
};
},
methods: {
tableLoading () {
this.tableIndex++
let index = this.tableIndex * 20
let endIndex = index + 20
if (this.tableIndex * 20 > this.itemLists.length) {
this.$message.warning('没有更多了')
}
let newData = this.itemLists.slice(index, endIndex)
this.itemList = this.itemList.concat(newData)
},
//折叠/展开基础信息方法
foldForm() {
this.foldFormFlag = !this.foldFormFlag
},
//确认转办
checkedTransferRole (data) {
this.assigneeNewLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false
if (res.success) {
this.drawerModal = false
this.$message.success('调整成功')
this.$router.push("/processCenter");
this.processNum()
} else {
this.$message.warning(res.message)
}
})
},
// 请求转换流程图
processNum (row) {
axios.request({
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
responseType: 'blob',
method: 'get',
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data)
})
},
//转办按钮
handleTransfer(){
this.phoneshowflag = true
this.phoneRoleList = this.roleTransfer
this.phoneDrawerTitle = '转办处理人'
},
//确认转办
drawerCheck (data) {
this.roleTransfer = data
this.phoneRoleList = this.roleTransfer
this.turnLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res =>{
if (res.success) {
this.turnLoading = false
this.$message.success('调整成功')
this.$router.push("/processCenter")
} else {
this.$message.warning(res.message)
}
})
this.modalshowflag = false
},
// 点击查看
handlePreview(item) {
let routeUrl = this.$router.resolve({
name: "OtherStandardDetails",
params: {
id: item.standId,
pageType: "INLAND_STAND"
}
});
window.open(routeUrl.href, "_blank");
},
//查询项目下的标准
getStandData() {
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", {
standType: this.standardSearch.standType,
standNumber: this.standardSearch.standNumber,
page: this.pageNo,
pageSize: this.pageSizeNo
}, {
_this: this
}, res => {
this.standardData = res.data.list;
this.standardData.forEach(item => {
if (item.attrInfoMap === null) {
this.$set(item, "ZCCSSRQ", "");
this.$set(item, "XCXSSRQ", "");
} else {
this.$set(item, "ZCCSSRQ", item.attrInfoMap.ZCCSSRQ);
this.$set(item, "XCXSSRQ", item.attrInfoMap.XCXSSRQ);
}
});
this.totalNo = res.data.count;
}, e => {
});
},
processTable() {
this.$http.get("lawss/activiti/get_list_by_instance", {
prcNum: this.$route.query.prcNum,
sortWord: this.shunxu ? this.paixu : "",
shunxu: this.shunxu
}, {
loading: "loading",
_this: this
}, res => {
this.detailData = res;
}, e => {
});
},
//tab改变
handleTabs(type) {
this.active = type;
},
//获取数据
getData() {
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.taskIds,
pId: this.pId
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm);
}
}).catch(e => {
});
});
},
//动态表单读取
getFormFieldList(item) {
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item));
let dataChildren = []
let dataListChildren = []
this.listForm.prcNum = this.prcNum;
this.listForm.prcName = this.prcName;
this.listForm["id"] = item.id;
this.listForm.dataList = item.dataList;
this.listForm.dataList.forEach(item => {
if(item.workPeople !== ''){
this.dataList.push(item)
}
item.children.forEach(items=> {
if(items.key === item.standId){
this.$set(items, "standName", item.standName);
this.$set(items, "standEnName", item.standEnName);
this.$set(items, "standYear", item.standYear);
this.$set(items, "standSort", item.standSort);
this.$set(items, "standNumber", item.standNumber);
this.$set(items, "zccssrq", item.zccssrq);
this.$set(items, "xcxssrq", item.xcxssrq);
this.$set(items, "ssrq", item.ssrq);
}
})
})
this.listForm.dataList.forEach(item => {
dataChildren.push(item.children)
})
dataChildren.forEach((item,index) => {
dataListChildren = dataListChildren.concat(item)
})
dataListChildren = this.dataList.concat(dataListChildren)
this.dataList = dataListChildren
this.total = this.dataList.length;
});
},
//提交事件
handleSubmit() {
this.isSubmit = true;
this.listForm.bzFlag = "1";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
},
// 分页
handleCurrentChange(currentPage) {
this.currentPage = currentPage;
},
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
},
mounted() {
this.processTable();
this.getData();
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.phoneXmpg2Step11 {
/deep/.van-dialog__content {
min-height: 300px;
padding: 10px;
}
.prc-content-border {
overflow: auto;
}
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
</style>
@@ -1,452 +0,0 @@
<template>
<div class="phoneXmpg2Step2 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">项目合规评估流程</template>
<template slot="proNode">业务经理审批</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
</div>
<div class="content" v-show="active === '1'">
<div style="overflow: auto;">
<el-form
:model="listForm"
class="label-input-form"
label-width="210px"
>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<el-collapse-transition>
<div class="prc-content-border" v-if="foldFormFlag === false">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-collapse-transition>
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</div>
<ProcessTitle>
<template slot="title">填写信息</template>
</ProcessTitle>
<el-table
:data="dataList"
border
ref="selection"
height="100%"
style="width: 100%; border:1px solid #ccc"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}">
<el-table-column
align="center"
min-width="160"
label="标准号"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSort }} {{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
min-width= "200"
align="center"
label="中文名称"
>
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
</template>
</el-table-column>
<el-table-column
prop="standEnName"
label="英文名称"
min-width= "200"
align="center"
>
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template>
</el-table-column>
<el-table-column
prop="ssrq"
width="150px"
align="center"
label="标准实施日期">
<template slot-scope="scope">
<span>{{ scope.row.ssrq ? $moment(scope.row.ssrq).format("YYYY-MM-DD") : "" }}</span>
</template>
</el-table-column>
<el-table-column
prop="xcxssrq"
align="center"
min-width="150"
label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xcxssrq ? $moment(scope.row.xcxssrq).format("YYYY-MM-DD") : "" }}</span>
</template>
</el-table-column>
<el-table-column
prop="zccssrq"
align="center"
width="150px"
label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zccssrq ? $moment(scope.row.zccssrq).format("YYYY-MM-DD") : "" }}</span>
</template>
</el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="140px"
>
</el-table-column>
</el-table>
<el-collapse accordion>
<el-collapse-item title="审批意见">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<div class="content" v-show="active === '2'">
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div>
<ProcessFooter
show-back
show-submit
show-transfer
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit"
>
</ProcessFooter>
<phone-role
:role-title="drawerTitle"
:result-list="phoneRoleList"
:is-show-phone.sync="phoneshowflag"
@checkedRole="drawerCheck"
/>
</div>
</template>
<script>
import { Dialog } from 'vant';
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process";
export default {
name: "phoneXmpg2Step2",
components: {
ProcessTitle,
ProcessHeader,
ProcessHeaderPhone,
ProcessFooter
},
data() {
return {
phoneshowflag: false,
phoneRoleList: [],
phoneDrawerTitle: '',
//折叠的标志,true为折叠,false为不折叠
foldFormFlag: false,
nodeList:[],
drawerTitle:'',
isTransfer: false,
// 调整处理人抽屉状态
drawerModal: false,
active: "1",
loading: false,
// 当前流程类型(1待办/2已办)
processType: 1,
isSubmit: false,
saveLoading: false,
//表单的数据
listForm: {
BZFlag: " ", //1审批通过 其他为驳回
projectNumber: "", //项目编号
projectName: "", //项目名称
dataList: [], //项目下的标准数据
breakdownList: [] //标准下的分解单数据
},
dataList: [], //展示的标准数据
commentText: "", //审批意见
detailData: [],//流程历史数据
userId: this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId
};
},
methods: {
//折叠/展开基础信息方法
foldForm() {
this.foldFormFlag = !this.foldFormFlag
},
//确认转办
checkedTransferRole (data) {
this.assigneeNewLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false
if (res.success) {
this.drawerModal = false
this.$message.success('调整成功')
this.$router.push("/processCenter");
this.processNum()
} else {
this.$message.warning(res.message)
}
})
},
// 请求转换流程图
processNum (row) {
axios.request({
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
responseType: 'blob',
method: 'get',
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data)
})
},
//转办按钮
handleTransfer(){
this.phoneshowflag = true
this.phoneRoleList = this.roleTransfer
this.phoneDrawerTitle = '转办处理人'
},
//确认转办
drawerCheck (data) {
this.roleTransfer = data
this.phoneRoleList = this.roleTransfer
this.turnLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res =>{
if (res.success) {
this.turnLoading = false
this.$message.success('调整成功')
this.$router.push("/processCenter")
} else {
this.$message.warning(res.message)
}
})
this.modalshowflag = false
},
processTable() {
this.$http.get("lawss/activiti/get_list_by_instance", {
prcNum: this.$route.query.prcNum,
sortWord: this.shunxu ? this.paixu : "",
shunxu: this.shunxu
}, {
loading: "loading",
_this: this
}, res => {
this.detailData = res;
}, e => {
});
},
//tab改变
handleTabs(type) {
this.active = type;
},
// 点击查看
handlePreview (item) {
let routeUrl = this.$router.resolve({
name: 'OtherStandardDetails',
params: {
id: item.standId,
pageType: 'INLAND_STAND'
}
})
window.open(routeUrl.href, '_blank')
},
//获取数据
getData() {
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.taskIds,
pId: this.pId
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm);
}
}).catch(e => {
});
});
},
//动态表单读取
getFormFieldList(item) {
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item));
this.listForm.prcNum = this.prcNum;
this.listForm.prcName = this.prcName;
this.listForm["id"] = item.id;
this.listForm.dataList = item.dataList;
this.dataList = item.dataList;
this.dataList.distributePerson = item.dataList[0].distributePerson;
this.listForm.breakdownList = item.breakdownList;
});
},
//驳回事件
beforeBack() {
if(this.commentText === null || this.commentText === undefined || this.commentText === ''){
this.$message.warning('审批意见不能为空')
}else{
this.listForm.BZFlag = "2";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
}, e => {
});
}
},
//提交事件
handleSubmit() {
this.isSubmit = true
this.listForm.BZFlag = "1";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false
}, e => {
});
}
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
},
mounted() {
this.processTable();
this.getData();
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.phoneXmpg2Step2 {
/deep/.van-dialog__content {
min-height: 300px;
padding: 10px;
}
.prc-content-border {
overflow: auto;
}
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
</style>
@@ -1,464 +0,0 @@
<template>
<div class="xmpg2-step3 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">项目合规评估流程-项目</template>
<template slot="proNode">工程经理进行转办</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
</div>
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto">
<process-title>
<template slot="title">基础信息</template>
</process-title>
<el-form
:model="listForm"
class="label-input-form prc-content-border"
label-width="150px"
>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
disabled
placeholder="请输入项目名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="架构经理" prop="jgUser" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.jgUserId"
style="display: none"
/>
<el-input
v-model="listForm.jgUser"
placeholder="请选择架构经理"
clearable
@click.native="choiceZRR"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<process-title>
<template slot="title">填写信息</template>
</process-title>
<el-table
:data="dataList"
border
ref="selection"
height="70%"
style="width: 100%; border:1px solid #ccc"
@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="standId"
align="center"
label="标准号"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSort }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
align="center"
label="中文名称"
>
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
</template>
</el-table-column>
<el-table-column
prop="standEnName"
label="英文名称"
align="center"
>
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template>
</el-table-column>
<el-table-column
prop="ssrq"
align="center"
label="标准实施日期">
</el-table-column>
<el-table-column
prop="xcxssrq"
width="190px"
align="center"
label="新车型实施日期">
</el-table-column>
<el-table-column
prop="zccssrq"
align="center"
width="190px"
label="在产车实施日期">
</el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
>
</el-table-column>
</el-table>
</div>
<div>
<el-collapse accordion>
<el-collapse-item title="回执说明">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
</div>
<div class="content" v-show="active === '3'">
<div class="flow-list" style="height: 100%">
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div>
</div>
<ProcessFooter
show-save
show-transfer
show-submit
:submitLoading="isSubmit"
:transfer-loading="isTransfer"
:saveLoading="saveLoading"
@save="handleSave"
@transfer="handleTransfer"
@submit="handleSubmit"
>
</ProcessFooter>
<phone-role
:role-title="drawerTitle"
:result-list="phoneRoleList"
:is-show-phone.sync="modalshowflag"
@checkedRole="drawerCheck"
/>
</div>
</template>
<script>
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import { inboundLiaisonDetail, saveTaskForPub ,changeAssigneeNew} from "api/process";
export default {
name: "phoneXmpg2Step3",
components: {
ProcessHeaderPhone,
ProcessTitle,
ProcessFooter
},
data() {
return {
isTransfer: false,
// 调整处理人抽屉状态
drawerModal: false,
active: "1",
loading: false,
// 当前流程类型(1待办/2已办)
processType: 1,
isSubmit: false,
saveLoading: false,
showColumn: true,
drawerTitle: "", //drawer标题
modalshowflag: false, // drawer开关
selectList: [],
treeData: [], // 人员数据
roleForm: {
jgUser: ""
},
nodeList: [],
defaultProps: {
children: "children",
label: "name"
},
//表单的数据
listForm: {
jgUserId: '',
projectNumber: "", //项目编号
projectName: "", //项目名称
jgUser: "", //架构经理
dataList: [], //项目下的标准数据
breakdownList: [] //标准下的分解单数据
},
dataList: [], //展示的标准数据
commentText: "", //审批意见
detailData: [], //流程历史数据
userId: this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId,
phoneRoleList: [],
};
},
methods: {
// 请求转换流程图
processNum (row) {
axios.request({
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
responseType: 'blob',
method: 'get',
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data)
})
},
//转办事件
handleTransfer(){
this.phoneRoleList = [],
this.modalshowflag = true
this.drawerTitle = '转办处理人'
},
// 点击查看
//查询项目下的标准
getStandData() {
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", {
standType: this.standardSearch.standType,
standNumber: this.standardSearch.standNumber,
page: this.pageNo,
pageSize: this.pageSizeNo
}, {
_this: this
}, res => {
this.standardData = res.data.list;
this.standardData.forEach(item => {
if (item.attrInfoMap === null) {
this.$set(item, "ZCCSSRQ", "");
this.$set(item, "XCXSSRQ", "");
} else {
this.$set(item, "ZCCSSRQ", item.attrInfoMap.ZCCSSRQ);
this.$set(item, "XCXSSRQ", item.attrInfoMap.XCXSSRQ);
}
});
this.totalNo = res.data.count;
}, e => {
});
},
//tab改变
handleTabs(type) {
this.active = type;
},
//获取数据
getData() {
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.taskIds,
pId: this.pId
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm);
}
}).catch(e => {
});
});
},
//动态表单读取
getFormFieldList(item) {
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item));
if (item.form === undefined) {
this.listForm.prcNum = this.prcNum;
this.listForm.prcName = this.prcName;
this.listForm["id"] = item.id;
this.listForm.dataList = item.dataList;
this.dataList = item.dataList;
this.dataList.forEach(item => {
if(item.zrbm === "[]"){
item.zrbm = ''
}
})
this.dataList.distributePerson = item.dataList[0].distributePerson;
this.listForm.breakdownList = item.breakdownList;
} else {
this.listForm = item.form
this.dataList = item.form.dataList
}
});
},
//保存事件
handleSave() {
this.saveLoading = true;
let _formData = new FormData();
_formData.append("id", this.bpnId || "");
_formData.append("prcType", "6");
_formData.append("taskIds", this.taskIds);
_formData.append("json", JSON.stringify({
form: this.listForm,
commentText: this.commentText
}));
saveTaskForPub(_formData).then(res => {
this.saveLoading = false;
this.$message.success("保存成功");
this.bpnId = res.result;
}).catch(e => {
this.saveLoading = false;
});
},
//提交事件
handleSubmit() {
if (!this.listForm.jgUser) {
this.$message.warning("请选择架构经理");
} else {
this.isSubmit = true;
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
}
},
choiceZRR() {
this.drawerTitle = '选择架构经理'
if (this.listForm.jgUserId.length > 0 ) {
this.phoneRoleList = this.listForm.jgUserId.split(',')
}
this.modalshowflag = true;
},
//标准表格选择框改变
selectStandChange(data) {
this.selectList = data;
},
drawerCheck(data) {
if (this.drawerTitle = '选择架构经理') {
if (data.length > 0) {
this.listForm.jgUserId = data[0].id
this.listForm.jgUser = data[0].name
}
} else {
if (data.length > 0) {
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false
if (res.success) {
this.$message.success('调整成功')
this.$router.push("/processCenter");
this.processNum()
} else {
this.$message.warning(res.message)
}
})
}
}
},
},
mounted() {
this.getData();
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.xmpg2-step3 {
/deep/ .el-drawer__container {
.prc-content-border {
border: none;
padding: 0 20px 0;
}
}
/deep/.van-dialog__content {
min-height: 300px;
padding: 10px;
}
.prc-content-border {
overflow: auto;
}
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.choiceBtn {
.el-button--primary {
width: 150px;
}
}
position: relative;
height: 100%;
.content {
display: flex;
flex-direction: column;
justify-content: space-between;
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,549 +0,0 @@
<template>
<div class="phoneXmpg2Step7 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">项目合规评估流程</template>
<template slot="proNode">分发负责人审批</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
</div>
<div class="content" v-show="active === '1'">
<div style="overflow: auto;">
<el-form
:model="listForm"
class="label-input-form"
label-width="210px"
>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<el-collapse-transition>
<div class="prc-content-border" v-if="foldFormFlag === false">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-collapse-transition>
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</div>
<ProcessTitle>
<template slot="title">填写信息</template>
</ProcessTitle>
<el-table
ref="multipleTable"
:data="dataList"
tooltip-effect="dark"
style="width: 100%"
border
height="55%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column
prop="standEnName"
label="标准编号"
width="180"
align="center"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSort }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
width="180"
align="center"
label="标准名称"
>
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
</template>
</el-table-column>
<el-table-column
prop="itemsNum"
align="center"
width="200"
label="条款号">
</el-table-column>
<el-table-column
prop="itemsName"
width="200"
align="center"
label="条款名称">
</el-table-column>
<el-table-column
prop="xCXSSRQ"
width="200"
align="center"
label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="zCCSSRQ"
width="200"
align="center"
label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="complianceReasons"
align="center"
width="160"
label="合规">
</el-table-column>
<el-table-column
align="center"
width="160"
prop="researchNonCompliance"
label="不合规">
<el-table-column
prop="noCompliance"
align="center"
width="170"
label="不合规项目">
</el-table-column>
<el-table-column
prop="countermeasures"
align="center"
width="160"
label="应对措施">
</el-table-column>
<el-table-column
prop="completionTime"
align="center"
width="120"
label="完成时间">
<template slot-scope="scope">
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column
align="center"
width="150"
prop="distributePerson"
label="责任人">
</el-table-column>
</el-table>
<el-button v-if="itemLists.length > 20 && tableIndex * 20 < itemLists.length" style="width: 100%; margin-top: 5px;" icon="el-icon-caret-bottom" @click="tableLoading">加载更多...</el-button>
<el-collapse accordion>
<el-collapse-item title="审批意见">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<div class="content" v-show="active === '2'">
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div>
<ProcessFooter
show-back
show-submit
show-transfer
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit"
>
</ProcessFooter>
<phone-role
:role-title="drawerTitle"
:result-list="phoneRoleList"
:is-show-phone.sync="phoneshowflag"
@checkedRole="drawerCheck"
/>
</div>
</template>
<script>
import { Dialog } from 'vant';
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process";
export default {
name: "phoneXmpg2Step7",
components: {
ProcessTitle,
ProcessHeader,
ProcessHeaderPhone,
ProcessFooter
},
data() {
return {
phoneshowflag: false,
phoneRoleList: [],
phoneDrawerTitle: '',
tableIndex: 0,
itemLists: [],
foldFormFlag: false,
total: 0,
currentPage: 1,
pageSize: 20,
nodeList:[],
drawerTitle:'',
isTransfer: false,
// 调整处理人抽屉状态
drawerModal: false,
active: "1",
loading: false,
// 当前流程类型(1待办/2已办)
processType: 1,
isSubmit: false,
saveLoading: false,
//表单的数据
listForm: {
ffFlag: " ", //1审批通过 其他为驳回
projectNumber: "", //项目编号
projectName: "", //项目名称
dataList: [], //项目下的标准数据
breakdownList: [] //标准下的分解单数据
},
dataList: [], //展示的标准数据
commentText: "", //审批意见
detailData: [],//流程历史数据
userId: this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId
};
},
methods: {
tableLoading () {
this.tableIndex++
let index = this.tableIndex * 20
let endIndex = index + 20
if (this.tableIndex * 20 > this.itemLists.length) {
this.$message.warning('没有更多了')
}
let newData = this.itemLists.slice(index, endIndex)
this.itemList = this.itemList.concat(newData)
},
//折叠/展开基础信息方法
foldForm() {
this.foldFormFlag = !this.foldFormFlag
},
//确认转办
checkedTransferRole (data) {
this.assigneeNewLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false
if (res.success) {
this.drawerModal = false
this.$message.success('调整成功')
this.$router.push("/processCenter");
this.processNum()
} else {
this.$message.warning(res.message)
}
})
},
// 请求转换流程图
processNum (row) {
axios.request({
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
responseType: 'blob',
method: 'get',
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data)
})
},
//转办按钮
handleTransfer(){
this.phoneshowflag = true
this.phoneRoleList = this.roleTransfer
this.phoneDrawerTitle = '转办处理人'
},
//确认转办
drawerCheck (data) {
this.roleTransfer = data
this.phoneRoleList = this.roleTransfer
this.turnLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res =>{
if (res.success) {
this.turnLoading = false
this.$message.success('调整成功')
this.$router.push("/processCenter")
} else {
this.$message.warning(res.message)
}
})
this.modalshowflag = false
},
// 点击查看
handlePreview(item) {
let routeUrl = this.$router.resolve({
name: "OtherStandardDetails",
params: {
id: item.standId,
pageType: "INLAND_STAND"
}
});
window.open(routeUrl.href, "_blank");
},
//查询项目下的标准
getStandData() {
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", {
standType: this.standardSearch.standType,
standNumber: this.standardSearch.standNumber,
page: this.pageNo,
pageSize: this.pageSizeNo
}, {
_this: this
}, res => {
this.standardData = res.data.list;
this.standardData.forEach(item => {
if (item.attrInfoMap === null) {
this.$set(item, "ZCCSSRQ", "");
this.$set(item, "XCXSSRQ", "");
} else {
this.$set(item, "ZCCSSRQ", item.attrInfoMap.ZCCSSRQ);
this.$set(item, "XCXSSRQ", item.attrInfoMap.XCXSSRQ);
}
});
this.totalNo = res.data.count;
}, e => {
});
},
processTable() {
this.$http.get("lawss/activiti/get_list_by_instance", {
prcNum: this.$route.query.prcNum,
sortWord: this.shunxu ? this.paixu : "",
shunxu: this.shunxu
}, {
loading: "loading",
_this: this
}, res => {
this.detailData = res;
}, e => {
});
},
//tab改变
handleTabs(type) {
this.active = type;
},
//获取数据
getData() {
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.taskIds,
pId: this.pId
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm);
}
}).catch(e => {
});
});
},
//动态表单读取
getFormFieldList(item) {
console.log(item);
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item));
let dataChildren = []
let dataListChildren = []
this.listForm.prcNum = this.prcNum;
this.listForm.prcName = this.prcName;
this.listForm["id"] = item.id;
this.listForm.dataList = item.dataList;
this.listForm.dataList.forEach(item => {
if(item.workPeople !== ''){
this.dataList.push(item)
}
item.children.forEach(items=> {
if(items.key === item.standId){
this.$set(items, "standName", item.standName);
this.$set(items, "standEnName", item.standEnName);
this.$set(items, "standYear", item.standYear);
this.$set(items, "standSort", item.standSort);
this.$set(items, "standNumber", item.standNumber);
this.$set(items, "zccssrq", item.zccssrq);
this.$set(items, "xcxssrq", item.xcxssrq);
this.$set(items, "ssrq", item.ssrq);
}
})
})
this.listForm.dataList.forEach(item => {
dataChildren.push(item.children)
})
dataChildren.forEach((item,index) => {
dataListChildren = dataListChildren.concat(item)
})
dataListChildren = this.dataList.concat(dataListChildren)
this.dataList = dataListChildren
});
},
//驳回事件
beforeBack() {
if (this.commentText === null || this.commentText === undefined || this.commentText === "") {
this.$message.warning("请填写审批意见");
} else {
this.listForm.ffFlag = "2";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
}, e => {
});
}
},
//提交事件
handleSubmit() {
this.isSubmit = true;
this.listForm.ffFlag = "1";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
});
},
// 分页
handleCurrentChange(currentPage) {
this.currentPage = currentPage;
},
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
},
mounted() {
this.processTable();
this.getData();
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.phoneXmpg2Step7 {
/deep/.van-dialog__content {
min-height: 300px;
padding: 10px;
}
.prc-content-border {
overflow: auto;
}
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
</style>
@@ -1,550 +0,0 @@
<template>
<div class="phoneXmpg2Step8 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">项目合规评估流程</template>
<template slot="proNode">分发负责人审批</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
</div>
<div class="content" v-show="active === '1'">
<div style="overflow: auto;">
<el-form
:model="listForm"
class="label-input-form"
label-width="210px"
>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<el-collapse-transition>
<div class="prc-content-border" v-if="foldFormFlag === false">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-collapse-transition>
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</div>
<ProcessTitle>
<template slot="title">填写信息</template>
</ProcessTitle>
<el-table
ref="multipleTable"
:data="dataList"
tooltip-effect="dark"
style="width: 100%"
border
height="55%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column
prop="standEnName"
label="标准编号"
width="180"
align="center"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSort }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
width="180"
align="center"
label="标准名称"
>
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
</template>
</el-table-column>
<el-table-column
prop="itemsNum"
align="center"
width="200"
label="条款号">
</el-table-column>
<el-table-column
prop="itemsName"
width="200"
align="center"
label="条款名称">
</el-table-column>
<el-table-column
prop="xCXSSRQ"
width="200"
align="center"
label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="zCCSSRQ"
width="200"
align="center"
label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="complianceReasons"
align="center"
width="160"
label="合规">
</el-table-column>
<el-table-column
align="center"
width="160"
prop="researchNonCompliance"
label="不合规">
<el-table-column
prop="noCompliance"
align="center"
width="170"
label="不合规项目">
</el-table-column>
<el-table-column
prop="countermeasures"
align="center"
width="160"
label="应对措施">
</el-table-column>
<el-table-column
prop="completionTime"
align="center"
width="120"
label="完成时间">
<template slot-scope="scope">
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column
align="center"
width="150"
prop="distributePerson"
label="责任人">
</el-table-column>
</el-table>
<el-button v-if="itemLists.length > 20 && tableIndex * 20 < itemLists.length" style="width: 100%; margin-top: 5px;" icon="el-icon-caret-bottom" @click="tableLoading">加载更多...</el-button>
<el-collapse accordion>
<el-collapse-item title="审批意见">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<div class="content" v-show="active === '2'">
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div>
<ProcessFooter
show-back
show-submit
show-transfer
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit"
>
</ProcessFooter>
<phone-role
:role-title="drawerTitle"
:result-list="phoneRoleList"
:is-show-phone.sync="phoneshowflag"
@checkedRole="drawerCheck"
/>
</div>
</template>
<script>
import { Dialog } from 'vant';
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process";
export default {
name: "phoneXmpg2Step8",
components: {
ProcessTitle,
ProcessHeader,
ProcessHeaderPhone,
ProcessFooter
},
data() {
return {
phoneshowflag: false,
phoneRoleList: [],
phoneDrawerTitle: '',
tableIndex: 0,
itemLists: [],
foldFormFlag: false,
total: 0,
currentPage: 1,
pageSize: 20,
nodeList:[],
drawerTitle:'',
isTransfer: false,
// 调整处理人抽屉状态
drawerModal: false,
active: "1",
loading: false,
// 当前流程类型(1待办/2已办)
processType: 1,
isSubmit: false,
saveLoading: false,
//表单的数据
listForm: {
ffFlag: " ", //1审批通过 其他为驳回
projectNumber: "", //项目编号
projectName: "", //项目名称
dataList: [], //项目下的标准数据
breakdownList: [] //标准下的分解单数据
},
dataList: [], //展示的标准数据
commentText: "", //审批意见
detailData: [],//流程历史数据
userId: this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId
};
},
methods: {
tableLoading () {
this.tableIndex++
let index = this.tableIndex * 20
let endIndex = index + 20
if (this.tableIndex * 20 > this.itemLists.length) {
this.$message.warning('没有更多了')
}
let newData = this.itemLists.slice(index, endIndex)
this.itemList = this.itemList.concat(newData)
},
//折叠/展开基础信息方法
foldForm() {
this.foldFormFlag = !this.foldFormFlag
},
//确认转办
checkedTransferRole (data) {
this.assigneeNewLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false
if (res.success) {
this.drawerModal = false
this.$message.success('调整成功')
this.$router.push("/processCenter");
this.processNum()
} else {
this.$message.warning(res.message)
}
})
},
// 请求转换流程图
processNum (row) {
axios.request({
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
responseType: 'blob',
method: 'get',
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data)
})
},
//转办按钮
handleTransfer(){
this.phoneshowflag = true
this.phoneRoleList = this.roleTransfer
this.phoneDrawerTitle = '转办处理人'
},
//确认转办
drawerCheck (data) {
this.roleTransfer = data
this.phoneRoleList = this.roleTransfer
this.turnLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res =>{
if (res.success) {
this.turnLoading = false
this.$message.success('调整成功')
this.$router.push("/processCenter")
} else {
this.$message.warning(res.message)
}
})
this.modalshowflag = false
},
// 点击查看
handlePreview(item) {
let routeUrl = this.$router.resolve({
name: "OtherStandardDetails",
params: {
id: item.standId,
pageType: "INLAND_STAND"
}
});
window.open(routeUrl.href, "_blank");
},
//查询项目下的标准
getStandData() {
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", {
standType: this.standardSearch.standType,
standNumber: this.standardSearch.standNumber,
page: this.pageNo,
pageSize: this.pageSizeNo
}, {
_this: this
}, res => {
this.standardData = res.data.list;
this.standardData.forEach(item => {
if (item.attrInfoMap === null) {
this.$set(item, "ZCCSSRQ", "");
this.$set(item, "XCXSSRQ", "");
} else {
this.$set(item, "ZCCSSRQ", item.attrInfoMap.ZCCSSRQ);
this.$set(item, "XCXSSRQ", item.attrInfoMap.XCXSSRQ);
}
});
this.totalNo = res.data.count;
}, e => {
});
},
processTable() {
this.$http.get("lawss/activiti/get_list_by_instance", {
prcNum: this.$route.query.prcNum,
sortWord: this.shunxu ? this.paixu : "",
shunxu: this.shunxu
}, {
loading: "loading",
_this: this
}, res => {
this.detailData = res;
}, e => {
});
},
//tab改变
handleTabs(type) {
this.active = type;
},
//获取数据
getData() {
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.taskIds,
pId: this.pId
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm);
}
}).catch(e => {
});
});
},
//动态表单读取
getFormFieldList(item) {
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item));
let dataChildren = []
let dataListChildren = []
this.listForm.prcNum = this.prcNum;
this.listForm.prcName = this.prcName;
this.listForm["id"] = item.id;
this.listForm.dataList = item.dataList;
this.listForm.dataList.forEach(item => {
if(item.workPeople !== ''){
this.dataList.push(item)
item.children.forEach(items=> {
if(items.key === item.standId){
this.$set(items, "standName", item.standName);
this.$set(items, "standEnName", item.standEnName);
this.$set(items, "standYear", item.standYear);
this.$set(items, "standSort", item.standSort);
this.$set(items, "standNumber", item.standNumber);
this.$set(items, "zccssrq", item.zccssrq);
this.$set(items, "xcxssrq", item.xcxssrq);
this.$set(items, "ssrq", item.ssrq);
}
})
}
})
this.listForm.dataList.forEach(item => {
dataChildren.push(item.children)
})
dataChildren.forEach((item,index) => {
dataListChildren = dataListChildren.concat(item)
})
dataListChildren = this.dataList.concat(dataListChildren)
this.dataList = dataListChildren
this.total = this.dataList.length;
});
},
//驳回事件
beforeBack() {
if(!this.commentText){
this.$message.warning('请填写审批意见')
}else{
this.listForm.jgFlag = "2";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
}, e => {
});
}
},
//提交事件
handleSubmit() {
this.isSubmit = true;
this.listForm.jgFlag = "1";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
},
// 分页
handleCurrentChange(currentPage) {
this.currentPage = currentPage;
},
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
},
mounted() {
this.processTable();
this.getData();
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.phoneXmpg2Step8 {
/deep/.van-dialog__content {
min-height: 300px;
padding: 10px;
}
.prc-content-border {
overflow: auto;
}
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
</style>
@@ -1,549 +0,0 @@
<template>
<div class="phoneXmpg2Step9 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">项目合规评估流程</template>
<template slot="proNode">分发负责人审批</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>
</div>
<div class="content" v-show="active === '1'">
<div style="overflow: auto;">
<el-form
:model="listForm"
class="label-input-form"
label-width="210px"
>
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<el-collapse-transition>
<div class="prc-content-border" v-if="foldFormFlag === false">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-collapse-transition>
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</div>
<ProcessTitle>
<template slot="title">填写信息</template>
</ProcessTitle>
<el-table
ref="multipleTable"
:data="dataList"
tooltip-effect="dark"
style="width: 100%"
border
height="55%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column
prop="standEnName"
label="标准编号"
width="180"
align="center"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber
}}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSort }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
width="180"
align="center"
label="标准名称"
>
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
</template>
</el-table-column>
<el-table-column
prop="itemsNum"
align="center"
width="200"
label="条款号">
</el-table-column>
<el-table-column
prop="itemsName"
width="200"
align="center"
label="条款名称">
</el-table-column>
<el-table-column
prop="xCXSSRQ"
width="200"
align="center"
label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xCXSSRQ ? $moment(scope.row.xCXSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="zCCSSRQ"
width="200"
align="center"
label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zCCSSRQ ? $moment(scope.row.zCCSSRQ).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column
prop="complianceReasons"
align="center"
width="160"
label="合规">
</el-table-column>
<el-table-column
align="center"
width="160"
prop="researchNonCompliance"
label="不合规">
<el-table-column
prop="noCompliance"
align="center"
width="170"
label="不合规项目">
</el-table-column>
<el-table-column
prop="countermeasures"
align="center"
width="160"
label="应对措施">
</el-table-column>
<el-table-column
prop="completionTime"
align="center"
width="120"
label="完成时间">
<template slot-scope="scope">
<span>{{ scope.row.completionTime ? $moment(scope.row.completionTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column
align="center"
width="150"
prop="distributePerson"
label="责任人">
</el-table-column>
</el-table>
<el-button v-if="itemLists.length > 20 && tableIndex * 20 < itemLists.length" style="width: 100%; margin-top: 5px;" icon="el-icon-caret-bottom" @click="tableLoading">加载更多...</el-button>
<el-collapse accordion>
<el-collapse-item title="审批意见">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<div class="content" v-show="active === '2'">
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div>
<ProcessFooter
show-back
show-submit
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit"
>
</ProcessFooter>
<phone-role
:role-title="drawerTitle"
:result-list="phoneRoleList"
:is-show-phone.sync="phoneshowflag"
@checkedRole="drawerCheck"
/>
</div>
</template>
<script>
import { Dialog } from 'vant';
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process";
export default {
name: "phoneXmpg2Step9",
components: {
ProcessTitle,
ProcessHeader,
ProcessHeaderPhone,
ProcessFooter
},
data() {
return {
phoneshowflag: false,
phoneRoleList: [],
phoneDrawerTitle: '',
tableIndex: 0,
itemLists: [],
foldFormFlag: false,
total: 0,
currentPage: 1,
pageSize: 20,
nodeList:[],
drawerTitle:'',
isTransfer: false,
// 调整处理人抽屉状态
drawerModal: false,
active: "1",
loading: false,
// 当前流程类型(1待办/2已办)
processType: 1,
isSubmit: false,
saveLoading: false,
//表单的数据
listForm: {
ffFlag: " ", //1审批通过 其他为驳回
projectNumber: "", //项目编号
projectName: "", //项目名称
dataList: [], //项目下的标准数据
breakdownList: [] //标准下的分解单数据
},
dataList: [], //展示的标准数据
commentText: "", //审批意见
detailData: [],//流程历史数据
userId: this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId
};
},
methods: {
tableLoading () {
this.tableIndex++
let index = this.tableIndex * 20
let endIndex = index + 20
if (this.tableIndex * 20 > this.itemLists.length) {
this.$message.warning('没有更多了')
}
let newData = this.itemLists.slice(index, endIndex)
this.itemList = this.itemList.concat(newData)
},
//折叠/展开基础信息方法
foldForm() {
this.foldFormFlag = !this.foldFormFlag
},
//确认转办
checkedTransferRole (data) {
this.assigneeNewLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res => {
this.isTransfer = false
if (res.success) {
this.drawerModal = false
this.$message.success('调整成功')
this.$router.push("/processCenter");
this.processNum()
} else {
this.$message.warning(res.message)
}
})
},
// 请求转换流程图
processNum (row) {
axios.request({
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
responseType: 'blob',
method: 'get',
params: {
prcNum: this.$route.query.prcNum
}
}).then(res => {
// let blob = new Blob([res.data], {type: 'image/jpg'})
// let url = window.URL.createObjectURL(res.data)
this.processStep = window.URL.createObjectURL(res.data)
})
},
//转办按钮
handleTransfer(){
this.phoneshowflag = true
this.phoneRoleList = this.roleTransfer
this.phoneDrawerTitle = '转办处理人'
},
//确认转办
drawerCheck (data) {
this.roleTransfer = data
this.phoneRoleList = this.roleTransfer
this.turnLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
assignee: data[0].id, // 被委托人
userId: this.$store.getters.userInfo.userId, // 委托人
pId: this.$route.query.prcId // 流程实例
}).then(res =>{
if (res.success) {
this.turnLoading = false
this.$message.success('调整成功')
this.$router.push("/processCenter")
} else {
this.$message.warning(res.message)
}
})
this.modalshowflag = false
},
// 点击查看
handlePreview(item) {
let routeUrl = this.$router.resolve({
name: "OtherStandardDetails",
params: {
id: item.standId,
pageType: "INLAND_STAND"
}
});
window.open(routeUrl.href, "_blank");
},
//查询项目下的标准
getStandData() {
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", {
standType: this.standardSearch.standType,
standNumber: this.standardSearch.standNumber,
page: this.pageNo,
pageSize: this.pageSizeNo
}, {
_this: this
}, res => {
this.standardData = res.data.list;
this.standardData.forEach(item => {
if (item.attrInfoMap === null) {
this.$set(item, "ZCCSSRQ", "");
this.$set(item, "XCXSSRQ", "");
} else {
this.$set(item, "ZCCSSRQ", item.attrInfoMap.ZCCSSRQ);
this.$set(item, "XCXSSRQ", item.attrInfoMap.XCXSSRQ);
}
});
this.totalNo = res.data.count;
}, e => {
});
},
processTable() {
this.$http.get("lawss/activiti/get_list_by_instance", {
prcNum: this.$route.query.prcNum,
sortWord: this.shunxu ? this.paixu : "",
shunxu: this.shunxu
}, {
loading: "loading",
_this: this
}, res => {
this.detailData = res;
}, e => {
});
},
//tab改变
handleTabs(type) {
this.active = type;
},
//获取数据
getData() {
return new Promise((resolve, reject) => {
inboundLiaisonDetail({
taskIds: this.taskIds,
pId: this.pId
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm);
}
}).catch(e => {
});
});
},
//动态表单读取
getFormFieldList(item) {
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item));
let dataChildren = []
let dataListChildren = []
this.listForm.prcNum = this.prcNum;
this.listForm.prcName = this.prcName;
this.listForm["id"] = item.id;
this.listForm.dataList = item.dataList;
this.listForm.dataList.forEach(item => {
if(item.workPeople !== ''){
this.dataList.push(item)
}
item.children.forEach(items=> {
if(items.key === item.standId){
this.$set(items, "standName", item.standName);
this.$set(items, "standEnName", item.standEnName);
this.$set(items, "standYear", item.standYear);
this.$set(items, "standSort", item.standSort);
this.$set(items, "standNumber", item.standNumber);
this.$set(items, "zccssrq", item.zccssrq);
this.$set(items, "xcxssrq", item.xcxssrq);
this.$set(items, "ssrq", item.ssrq);
}
})
})
this.listForm.dataList.forEach(item => {
dataChildren.push(item.children)
})
dataChildren.forEach((item,index) => {
dataListChildren = dataListChildren.concat(item)
})
dataListChildren = this.dataList.concat(dataListChildren)
this.dataList = dataListChildren
this.total = this.dataList.length;
});
},
//驳回事件
beforeBack() {
if (!this.commentText) {
this.$message.warning("请填写审批意见");
} else {
this.listForm.gcFlag = "2";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
}, e => {
});
}
},
//提交事件
handleSubmit() {
this.isSubmit = true;
this.listForm.gcFlag = "1";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false;
}, e => {
});
},
// 分页
handleCurrentChange(currentPage) {
this.currentPage = currentPage;
},
},
computed: {
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
},
mounted() {
this.processTable();
this.getData();
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.phoneXmpg2Step9 {
/deep/.van-dialog__content {
min-height: 300px;
padding: 10px;
}
.prc-content-border {
overflow: auto;
}
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
</style>
@@ -38,11 +38,11 @@
<!-- @click="handlingTasks"--> <!-- @click="handlingTasks"-->
<!--&gt;办理任务</el-button>--> <!--&gt;办理任务</el-button>-->
<!--临时屏蔽 end--> <!--临时屏蔽 end-->
<el-button <!-- <el-button-->
class="common-button-default" <!-- class="common-button-default"-->
round <!-- round-->
@click="urgeRow" <!-- @click="urgeRow"-->
>催办</el-button> <!-- >催办</el-button>-->
</div> </div>
<div class="flow-list"> <div class="flow-list">
<el-table <el-table
@@ -452,7 +452,7 @@ export default {
prcType: row.prcType prcType: row.prcType
} }
}) })
}else if (row.taskInfo === '批准'){ }else if (row.taskInfo === '培训'){
this.$router.push({ this.$router.push({
name: 'bussLibrary11', name: 'bussLibrary11',
query: { query: {
@@ -2184,7 +2184,7 @@ export default {
prcType: row.prcType prcType: row.prcType
} }
}) })
}else if(row.taskInfo === '企标制修订计划整改') { }else if(row.taskInfo === '重新起草') {
this.$router.push({ this.$router.push({
name: 'qbzxdjhgkStep1', name: 'qbzxdjhgkStep1',
query:{ query:{
@@ -421,7 +421,7 @@ export default {
verifySarStandard: true, verifySarStandard: true,
} }
}) })
}else if (mes.taskInfo === '批准'){ }else if (mes.taskInfo === '培训'){
this.$router.push({ this.$router.push({
name: 'bussLibrary11', name: 'bussLibrary11',
query: { query: {
@@ -214,7 +214,7 @@
</el-dialog> </el-dialog>
<!-- 更新LOG --> <!-- 更新LOG -->
<el-dialog <el-dialog
title="更新LOG" title="更新记录"
:visible.sync="relateDialog" :visible.sync="relateDialog"
class="relateClass" class="relateClass"
width="60%" width="60%"
@@ -115,9 +115,10 @@
v-btn-permission="'d38fea2d0d992615f9e1c4dfb6dc76f3'" v-btn-permission="'d38fea2d0d992615f9e1c4dfb6dc76f3'"
@click="clearAllSearch('standCommonlySearch')">清空 @click="clearAllSearch('standCommonlySearch')">清空
</el-button> </el-button>
<el-button size="mini" type="primary" class="common-button-primary" <el-button size="mini" type="primary" class="common-button-default"
v-btn-permission="'c9cb749aacefc52347f1250d0f98272a'" @click="selectMoreBtn"><i v-btn-permission="'c9cb749aacefc52347f1250d0f98272a'" @click="selectMoreBtn">
class="iconfont">&#xe7a5;</i>高级检索 <!-- <i class="iconfont">&#xe7a5;</i>-->
高级检索
</el-button> </el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -345,29 +346,28 @@
label="收藏" align="center" width="50px" label="收藏" align="center" width="50px"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<div <!-- <div-->
v-if="isPermission('cac1eb379eb8e3b987cbb2e4599adb50,247cebaefa7cf1683092af160af11502,dbaf9df2990a595c8abea28e68b1a681') == 1" <!-- v-if="isPermission('cac1eb379eb8e3b987cbb2e4599adb50,247cebaefa7cf1683092af160af11502,dbaf9df2990a595c8abea28e68b1a681') == 1"-->
@command="handleCommand" <!-- @command="handleCommand"-->
> <!-- >-->
<el-button type="text" v-btn-permission="'cac1eb379eb8e3b987cbb2e4599adb50'" <!-- <el-button type="text" v-btn-permission="'cac1eb379eb8e3b987cbb2e4599adb50'"-->
v-if="scope.row.collectBtn" <!-- v-if="scope.row.collectBtn"-->
@click="handleCommand([scope.row, '收藏'])" <!-- @click="handleCommand([scope.row, '收藏'])"-->
>收藏 <!-- >收藏-->
</el-button> <!-- </el-button>-->
<el-button type="text" v-btn-permission="'cac1eb379eb8e3b987cbb2e4599adb50'" <!-- <el-button type="text" v-btn-permission="'cac1eb379eb8e3b987cbb2e4599adb50'"-->
v-else <!-- v-else-->
@click="handleCommand([scope.row, '取消收藏'])" <!-- @click="handleCommand([scope.row, '取消收藏'])"-->
>取消收藏 <!-- >取消收藏-->
</el-button> <!-- </el-button>-->
<el-button type="text" @click="handleCommand([scope.row, '编辑'])" <!-- <el-button type="text" @click="handleCommand([scope.row, '编辑'])"-->
v-btn-permission="'247cebaefa7cf1683092af160af11502'">编辑 <!-- v-btn-permission="'247cebaefa7cf1683092af160af11502'">编辑-->
</el-button> <!-- </el-button>-->
<el-button type="text" @click="handleCommand([scope.row, '删除']) " <!-- <el-button type="text" @click="handleCommand([scope.row, '删除']) "-->
v-btn-permission="'dbaf9df2990a595c8abea28e68b1a681'">删除 <!-- v-btn-permission="'dbaf9df2990a595c8abea28e68b1a681'">删除-->
</el-button> <!-- </el-button>-->
</div> <!-- </div>-->
<div>
<div v-else>
<div @click.stop style="display: inline-block"> <div @click.stop style="display: inline-block">
<!-- <i class="iconfont">&#xe61e;</i>--> <!-- <i class="iconfont">&#xe61e;</i>-->
<el-button title="收藏" class="collection-btn" icon="el-icon-star-off" <el-button title="收藏" class="collection-btn" icon="el-icon-star-off"
@@ -597,8 +597,9 @@
prop="CYCVPPSBM" prop="CYCVPPSBM"
label-width="150px" label-width="150px"
class="add-form-item" class="add-form-item"
label="关联模块--乘用车VPPS编码"
title="关联模块--乘用车VPPS编码"
> >
<template slot="label">关联模块--乘用车VPPS编码</template>
<el-input v-model="sarStandardsInfoEO.CYCVPPSBM" placeholder="选择乘用车VPPS编码" <el-input v-model="sarStandardsInfoEO.CYCVPPSBM" placeholder="选择乘用车VPPS编码"
clearable clearable
@click.native="choiceZRR2('cycvppsbm', '乘用车VPPS', sarStandardsInfoEO.cycvppsbm)"></el-input> @click.native="choiceZRR2('cycvppsbm', '乘用车VPPS', sarStandardsInfoEO.cycvppsbm)"></el-input>
@@ -606,11 +607,12 @@
</template> </template>
<template v-else-if="field.attrField === 'KCCVPPSBM'"> <template v-else-if="field.attrField === 'KCCVPPSBM'">
<el-form-item <el-form-item
title="关联模块--卡车VPPS编码"
label="关联模块--卡车VPPS编码"
prop="KCCVPPSBM" prop="KCCVPPSBM"
label-width="150px" label-width="150px"
class="add-form-item" class="add-form-item"
> >
<template slot="label">关联模块--卡车VPPS编码</template>
<el-input v-model="sarStandardsInfoEO.KCCVPPSBM" placeholder="选择卡车VPPS编码" <el-input v-model="sarStandardsInfoEO.KCCVPPSBM" placeholder="选择卡车VPPS编码"
clearable clearable
@click.native="choiceZRR3('kccvppsbm', '卡车VPPS', sarStandardsInfoEO.kccvppsbm)"></el-input> @click.native="choiceZRR3('kccvppsbm', '卡车VPPS', sarStandardsInfoEO.kccvppsbm)"></el-input>
@@ -656,15 +658,16 @@
prop="DYBXH" prop="DYBXH"
label-width="150px" label-width="150px"
class="add-form-item" class="add-form-item"
label="模块结构单元变型号(卡车)"
title="模块结构单元变型号(卡车)"
> >
<template slot="label">模块结构单元变型号(卡车)</template>
<el-input v-model="sarStandardsInfoEO.DYBXH" placeholder="选择模块结构单元变型号(卡车)" <el-input v-model="sarStandardsInfoEO.DYBXH" placeholder="选择模块结构单元变型号(卡车)"
clearable clearable
@click.native="choiceZRR4('TRUCK', '模块结构单元', sarStandardsInfoEO.dybxh)"></el-input> @click.native="choiceZRR4('TRUCK', '模块结构单元', sarStandardsInfoEO.dybxh)"></el-input>
</el-form-item> </el-form-item>
</template> </template>
<template v-else-if="field.attrField === 'DYMC'"> <template v-else-if="field.attrField === 'DYMC'">
<el-form-item label="模块结构单元名称(卡车)" label-width="150px" prop="dymc" class="add-form-item"> <el-form-item label="模块结构单元名称(卡车)" title="模块结构单元名称(卡车)" label-width="150px" prop="dymc" class="add-form-item">
<el-input <el-input
v-if="sarStandardsInfoEO.DYBXH === '' || sarStandardsInfoEO.DYBXH === undefined" v-if="sarStandardsInfoEO.DYBXH === '' || sarStandardsInfoEO.DYBXH === undefined"
v-model="sarStandardsInfoEO.DYMC = ''" v-model="sarStandardsInfoEO.DYMC = ''"
@@ -684,15 +687,16 @@
prop="DYBXHCAR" prop="DYBXHCAR"
label-width="150px" label-width="150px"
class="add-form-item" class="add-form-item"
label="模块结构单元变型号(乘用车)"
title="模块结构单元变型号(乘用车)"
> >
<template slot="label">模块结构单元变型号(乘用车)</template>
<el-input v-model="sarStandardsInfoEO.DYBXHCAR" placeholder="选择模块结构单元变型号(乘用车)" <el-input v-model="sarStandardsInfoEO.DYBXHCAR" placeholder="选择模块结构单元变型号(乘用车)"
clearable clearable
@click.native="choiceZRR5('CAR', '模块结构单元(乘用车)', sarStandardsInfoEO.dybxhcar)"></el-input> @click.native="choiceZRR5('CAR', '模块结构单元(乘用车)', sarStandardsInfoEO.dybxhcar)"></el-input>
</el-form-item> </el-form-item>
</template> </template>
<template v-else-if="field.attrField === 'DYMCCAR'"> <template v-else-if="field.attrField === 'DYMCCAR'">
<el-form-item label="模块结构单元名称(乘用车)" label-width="150px" prop="dymccar" class="add-form-item"> <el-form-item label="模块结构单元名称(乘用车)" title="模块结构单元名称(乘用车)" label-width="150px" prop="dymccar" class="add-form-item">
<el-input <el-input
v-if="sarStandardsInfoEO.DYBXHCAR === '' || sarStandardsInfoEO.DYBXHCAR === undefined" v-if="sarStandardsInfoEO.DYBXHCAR === '' || sarStandardsInfoEO.DYBXHCAR === undefined"
v-model="sarStandardsInfoEO.DYMCCAR = ''" v-model="sarStandardsInfoEO.DYMCCAR = ''"
@@ -2059,9 +2063,9 @@
<Role-tree <Role-tree
:is-title="drawerTitle" :is-title="drawerTitle"
:is-visible.sync="modalShowRoleFlag" :is-visible.sync="modalShowRoleFlag"
@checkedRole="checkedRole2"
:nodeList="nodeList2" :nodeList="nodeList2"
></Role-tree> @checkedRole="checkedRole2"
/>
<Role-tree <Role-tree
is-title="选择人员信息" is-title="选择人员信息"
:is-visible.sync="modalshowflagRole" :is-visible.sync="modalshowflagRole"
@@ -4600,6 +4604,9 @@ export default {
formData.endIssueTime = formData.issueTime ? formData.issueTime[1] : null formData.endIssueTime = formData.issueTime ? formData.issueTime[1] : null
formData.issueTime = null formData.issueTime = null
this.loading = true this.loading = true
if(formData.CLLX){
formData.applyArctic = formData.CLLX.join(',')
}
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', formData, { this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', formData, {
_this: this, loading: 'loading' _this: this, loading: 'loading'
}, res => { }, res => {
@@ -4660,7 +4667,6 @@ export default {
} }
} }
this.configStandList = res.data.list this.configStandList = res.data.list
console.log(this.configStandList);
this.configTotal = res.data.count this.configTotal = res.data.count
this.selectConfigStand = [] this.selectConfigStand = []
}, e => { }, e => {
@@ -5816,9 +5822,20 @@ export default {
this.$set(this.textStatusMap, item.value, item.label) this.$set(this.textStatusMap, item.value, item.label)
}) })
}, },
choiceZRRS(type, title, id) { choiceZRRS(type, title, nameId) {
this.nodeList = [] this.nodeList2 = []
this.nodeList.push(id) if (nameId) {
let nameId1 = nameId.split(',')
let idList = []
nameId1.forEach(item => {
let a, b
a = item.substring(item.indexOf('(') +1)
b = a.substring(0, a.lastIndexOf(')'))
idList.push(b)
})
idList = idList.join(',')
this.nodeList2.push(idList)
}
this.userType = type this.userType = type
this.drawerTitle = title this.drawerTitle = title
this.modalShowRoleFlag = true this.modalShowRoleFlag = true
@@ -5890,7 +5907,6 @@ export default {
} else if (this.drawerTitle === '查询责任部门') { } else if (this.drawerTitle === '查询责任部门') {
this.advanceSearchMapping['ZRBM'] = nameList this.advanceSearchMapping['ZRBM'] = nameList
} }
}, },
}, },
computed: { computed: {
@@ -111,7 +111,8 @@
@click="clearAllSearch('standCommonlySearch')">清空 @click="clearAllSearch('standCommonlySearch')">清空
</el-button> </el-button>
<el-button type="primary" class="common-button-primary" size="mini" v-btn-permission="'cce80ba303858ee9943f17e93946c2ff'" @click="selectMoreBtn"> <el-button type="primary" class="common-button-primary" size="mini" v-btn-permission="'cce80ba303858ee9943f17e93946c2ff'" @click="selectMoreBtn">
<i class="iconfont">&#xe7a5;</i>高级查询 <!-- <i class="iconfont">&#xe7a5;</i>-->
高级检索
</el-button> </el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -334,30 +335,27 @@
</el-table-column> </el-table-column>
<el-table-column fixed="right" v-if="isPermission('f9745194958bc9ed3ee5127459795dbc,e8d690904ee1895dd0d17d9c794fbcd7,b299fa5edb3f3f35badb2adb6bda9f2e')>0" label="收藏" align="center" width="50"> <el-table-column fixed="right" v-if="isPermission('f9745194958bc9ed3ee5127459795dbc,e8d690904ee1895dd0d17d9c794fbcd7,b299fa5edb3f3f35badb2adb6bda9f2e')>0" label="收藏" align="center" width="50">
<template slot-scope="scope"> <template slot-scope="scope">
<!-- <div v-if="isPermission('f9745194958bc9ed3ee5127459795dbc,e8d690904ee1895dd0d17d9c794fbcd7,b299fa5edb3f3f35badb2adb6bda9f2e') == 1"-->
<div v-if="isPermission('f9745194958bc9ed3ee5127459795dbc,e8d690904ee1895dd0d17d9c794fbcd7,b299fa5edb3f3f35badb2adb6bda9f2e') == 1" <!-- @command="handleCommand"-->
@command="handleCommand" <!-- >-->
> <!-- <el-button type="text" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'"-->
<el-button type="text" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'" <!-- v-if="scope.row.collectBtn"-->
v-if="scope.row.collectBtn" <!-- @click="handleCommand([scope.row, '收藏'])"-->
@click="handleCommand([scope.row, '收藏'])" <!-- >收藏-->
>收藏 <!-- </el-button>-->
</el-button> <!-- <el-button type="text" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'"-->
<el-button type="text" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'" <!-- v-else-->
v-else <!-- @click="handleCommand([scope.row, '取消收藏'])"-->
@click="handleCommand([scope.row, '取消收藏'])" <!-- >取消收藏-->
>取消收藏 <!-- </el-button>-->
</el-button> <!-- <el-button type="text" @click="handleCommand([scope.row, '编辑'])"-->
<el-button type="text" @click="handleCommand([scope.row, '编辑'])" <!-- v-btn-permission="'e8d690904ee1895dd0d17d9c794fbcd7'">编辑-->
v-btn-permission="'e8d690904ee1895dd0d17d9c794fbcd7'">编辑 <!-- </el-button>-->
</el-button> <!-- <el-button type="text" @click="handleCommand([scope.row, '删除']) "-->
<el-button type="text" @click="handleCommand([scope.row, '删除']) " <!-- v-btn-permission="'b299fa5edb3f3f35badb2adb6bda9f2e'">删除-->
v-btn-permission="'b299fa5edb3f3f35badb2adb6bda9f2e'">删除 <!-- </el-button>-->
</el-button> <!-- </div>-->
</div> <div>
<div v-else>
<div @click.stop style="display: inline-block"> <div @click.stop style="display: inline-block">
<el-button title="收藏" class="collection-btn" icon="el-icon-star-off" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'" <el-button title="收藏" class="collection-btn" icon="el-icon-star-off" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'"
v-if="scope.row.collectBtn" v-if="scope.row.collectBtn"
@@ -370,9 +368,7 @@
> >
</el-button> </el-button>
</div> </div>
</div> </div>
</template> </template>
@@ -387,7 +383,7 @@
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px"> <el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px">
<el-form :inline="true" class="label-input-form search-area"> <el-form :inline="true" class="label-input-form search-area">
<el-form-item label="导出名称" class="search-item"> <el-form-item label="导出名称" class="search-item">
<el-input v-model="exportName" @keyup.native="btKeyUp" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/> <el-input v-model="exportName" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span slot="footer" class="demo-drawer-footer"> <span slot="footer" class="demo-drawer-footer">
@@ -1051,7 +1047,6 @@
<template v-else-if="field.attrType === 'INPUT_STR' && field.attrField !== 'XGLC' && field.attrField !== 'CHJL'"> <template v-else-if="field.attrType === 'INPUT_STR' && field.attrField !== 'XGLC' && field.attrField !== 'CHJL'">
<template v-if="field.attrField === 'DTBJH' || field.attrField === 'YYBJ' || field.attrField === 'BYYBJ' || field.attrField === 'CBBH' || field.attrField === 'DXBZ'"> <template v-if="field.attrField === 'DTBJH' || field.attrField === 'YYBJ' || field.attrField === 'BYYBJ' || field.attrField === 'CBBH' || field.attrField === 'DXBZ'">
<custom-input-for-standards <custom-input-for-standards
:config="field" :config="field"
v-model="sarStandardsInfoEO[field.attrField]" v-model="sarStandardsInfoEO[field.attrField]"
:disabled="formdisableflag" :disabled="formdisableflag"
@@ -119,18 +119,6 @@
align="center" align="center"
label="责任工程师"> label="责任工程师">
</el-table-column> </el-table-column>
<el-table-column
prop="authEngineer"
width="150"
align="center"
label="认证工程师">
</el-table-column>
<el-table-column
prop="qaEngineer"
width="150"
align="center"
label="质量工程师">
</el-table-column>
<el-table-column <el-table-column
prop="actualCloseTime" prop="actualCloseTime"
width="130" width="130"
@@ -194,12 +182,6 @@
<el-form-item class="add-form-item" label="责任工程师:"> <el-form-item class="add-form-item" label="责任工程师:">
<div class="seeItem">{{historySeeForm.dutyEngineer}}</div> <div class="seeItem">{{historySeeForm.dutyEngineer}}</div>
</el-form-item> </el-form-item>
<el-form-item class="add-form-item" label="认证工程师:">
<div class="seeItem">{{historySeeForm.authEngineer}}</div>
</el-form-item>
<el-form-item class="add-form-item" label="质量工程师:">
<div class="seeItem">{{historySeeForm.qaEngineer}}</div>
</el-form-item>
<el-form-item class="add-form-item" label="要求关闭时间:"> <el-form-item class="add-form-item" label="要求关闭时间:">
<div class="seeItem">{{historySeeForm.actualCloseTime ? historySeeForm.actualCloseTime.substring(0, 11) : '-'}}</div> <div class="seeItem">{{historySeeForm.actualCloseTime ? historySeeForm.actualCloseTime.substring(0, 11) : '-'}}</div>
</el-form-item> </el-form-item>
+94 -104
View File
@@ -2416,119 +2416,59 @@ const routes = [
} }
}, },
{ {
path: '/phoneXmpgStep2', path: '/phoneBzpgStep2',
name: 'phoneXmpgStep2', name: 'phoneBzpgStep2',
component: () => import('@/pages/processCenter/pages/phone/xmpg/step2.vue'), component: () => import('@/pages/processCenter/pages/phone/bzpg/step2.vue'),
meta: { meta: {
isBoolean: true, isBoolean: true,
requireAuth: true, requireAuth: true,
title: '标准合规评估流程' title: '标准合规评估流程'
} }
}, },
{
path: '/phoneBzpgStep6',
name: 'phoneBzpgStep6',
component: () => import('process/phone/bzpg/step6.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '标准合规评估流程'
}
},
{
path: '/phoneBzpgStep7',
name: 'phoneBzpgStep7',
component: () => import('@/pages/processCenter/pages/phone/bzpg/step7.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '标准合规评估流程'
}
},
{
path: '/phoneBzpgStep8',
name: 'phoneBzpgStep8',
component: () => import('@/pages/processCenter/pages/phone/bzpg/step8.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '标准合规评估流程'
}
},
{
path: '/phoneXmpgStep4',
name: 'phoneXmpgStep4',
component: () => import('@/pages/processCenter/pages/phone/xmpg/step4.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '项目合规评估流程'
}
},
{ {
path: '/phoneXmpgStep5', path: '/phoneXmpgStep5',
name: 'phoneXmpgStep5', name: 'phoneXmpgStep5',
component: () => import('@/pages/processCenter/pages/phone/xmpg/step5.vue'), component: () => import('process/phone/xmpg/step5.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '标准合规评估流程'
}
},
{
path: '/phoneXmpgStep6',
name: 'phoneXmpgStep6',
component: () => import('@/pages/processCenter/pages/phone/xmpg/step6.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '标准合规评估流程'
}
},
{
path: '/phoneXmpgStep7',
name: 'phoneXmpgStep7',
component: () => import('@/pages/processCenter/pages/phone/xmpg/step7.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '标准合规评估流程'
}
},
{
path: '/phoneXmpg2Step2',
name: 'phoneXmpg2Step2',
component: () => import('@/pages/processCenter/pages/phone/xmpg2/step2.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '项目合规评估流程'
}
},
{
path: '/phoneXmpg2Step3',
name: 'phoneXmpg2Step3',
component: () => import('@/pages/processCenter/pages/phone/xmpg2/step3.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '项目合规评估流程'
}
},
{
path: '/phoneXmpg2Step7',
name: 'phoneXmpg2Step7',
component: () => import('@/pages/processCenter/pages/phone/xmpg2/step7.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '项目合规评估流程'
}
},
{
path: '/phoneXmpg2Step8',
name: 'phoneXmpg2Step8',
component: () => import('@/pages/processCenter/pages/phone/xmpg2/step8.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '项目合规评估流程'
}
},
{
path: '/phoneXmpg2Step9',
name: 'phoneXmpg2Step9',
component: () => import('@/pages/processCenter/pages/phone/xmpg2/step9.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '项目合规评估流程'
}
},
{
path: '/phoneXmpg2Step10',
name: 'phoneXmpg2Step10',
component: () => import('@/pages/processCenter/pages/phone/xmpg2/step10.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '项目合规评估流程'
}
},
{
path: '/phoneXmpg2Step11',
name: 'phoneXmpg2Step11',
component: () => import('@/pages/processCenter/pages/phone/xmpg2/step11.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '项目合规评估流程'
}
},
{
path: '/phoneXmpg2Step12',
name: 'phoneXmpg2Step12',
component: () => import('@/pages/processCenter/pages/phone/xmpg2/step12.vue'),
meta: { meta: {
isBoolean: true, isBoolean: true,
requireAuth: true, requireAuth: true,
@@ -2835,6 +2775,56 @@ const routes = [
title: '标准入库流程' title: '标准入库流程'
} }
}, },
{
path: '/phoneBussLibrary4',
name: 'phoneBussLibrary4',
component: () => import('@/pages/processCenter/pages/phone/qbrk/step4.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '企标制修订流程及企业标准库流程'
}
},
{
path: '/phoneBussLibrary8',
name: 'phoneBussLibrary8',
component: () => import('@/pages/processCenter/pages/phone/qbrk/step8.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '企标制修订流程及企业标准库流程'
}
},
{
path: '/phoneBussLibrary10',
name: 'phoneBussLibrary10',
component: () => import('@/pages/processCenter/pages/phone/qbrk/step10.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '企标制修订流程及企业标准库流程'
}
},
{
path: '/phoneBussLibrary11',
name: 'phoneBussLibrary11',
component: () => import('@/pages/processCenter/pages/phone/qbrk/step11.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '企标制修订流程及企业标准库流程'
}
},
{
path: '/phoneBussLibrary13',
name: 'phoneBussLibrary13',
component: () => import('@/pages/processCenter/pages/phone/qbrk/step13.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '企标制修订流程及企业标准库流程'
}
},
] ]
}, },