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.replaceLawsNumForm.quoteIdList = ''
}
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', this.replaceLawsNumForm, {
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPageByWk1', this.replaceLawsNumForm, {
_this: this,
loading: 'replaceLoading'
}, res => {
+1
View File
@@ -112,6 +112,7 @@ export default {
},
saveUserInfo() {
let arr = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
this.filterText = ''
this.isVisible2 = false
this.$emit('checkedRole', arr)
},
+4 -2
View File
@@ -88,6 +88,8 @@
}
</script>
<style scoped>
<style lang="less" scoped>
.phoneHistortTable{
height: 100%;
}
</style>
+182 -70
View File
@@ -1,11 +1,11 @@
<template>
<div class="roleTree">
<el-drawer
:title="isTitle"
:visible.sync="isVisible2"
:wrapperClosable="false"
@close="handleTreeDrawerCancel"
size="400px">
:title="isTitle"
:visible.sync="visible"
:wrapperClosable="false"
@close="handleTreeDrawerCancel"
size="460px">
<el-form
ref="attributeEO"
class="label-input-form"
@@ -20,51 +20,67 @@
></el-input>
</el-form-item>
</el-form>
<el-tree
v-if="open1 && isVisible2"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree tree-line"
icon-class="icon-tree"
@check-change="checkChange"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
@check="drawerCheck"
:expand-on-click-node="true"
show-checkbox
ref="tree"
:load="loadNode"
lazy>
<div class="divTree">
<el-tree
v-if="open1 && isVisible"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree tree-line"
icon-class="icon-tree"
@check-change="checkChange"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList2"
highlight-current
check-strictly
@check="drawerCheck"
:expand-on-click-node="true"
show-checkbox
ref="tree"
:load="loadNode"
lazy>
<span class="custom-tree-node" slot-scope="{ node, data }">
<span :class="node.disabled ? 'is-show' : 'is-leaf-none'"></span>
<span> {{ node.label }} </span>
</span>
</el-tree>
<el-tree
v-if="!open1 && isVisible2"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree tree-line"
icon-class="icon-tree"
:data="treeData1"
:props="defaultProps"
@check-change="checkChange2"
:default-checked-keys="nodeList"
highlight-current
check-strictly
@check="drawerCheck"
:expand-on-click-node="true"
default-expand-all
show-checkbox
ref="tree">
</el-tree>
<el-tree
v-if="!open1 && isVisible"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree tree-line"
icon-class="icon-tree"
:data="treeData1"
:props="defaultProps"
@check-change="checkChange2"
:default-checked-keys="nodeList2"
highlight-current
check-strictly
@check="drawerCheck"
:expand-on-click-node="true"
default-expand-all
show-checkbox
ref="tree">
<span class="custom-tree-node" slot-scope="{ node, data }">
<span :class="node.disabled ? 'is-show' : 'is-leaf-none'"></span>
<span> {{ node.label }} </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">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
@@ -108,8 +124,10 @@
},
data () {
return {
visible: false,
nodeList2: [],
delList: [],
roleList: [],
isVisible2: false,
filterText: '',
defaultProps: {
children: 'children',
@@ -128,6 +146,43 @@
}
},
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) {
if (val.length) {
this.open1 = false
@@ -146,11 +201,17 @@
if (this.checkBox) {
} else {
if (type) {
this.nodeList.push(row.id)
this.nodeList2.push(row.id)
this.delList.push(row)
} else {
for (let a = 0; a < this.nodeList.length; a ++) {
if (row.id === this.nodeList[a]) {
this.nodeList.splice(a, 1)
for (let a = 0; a < this.nodeList2.length; a ++) {
if (row.id === this.nodeList2[a]) {
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) {
} else {
if (type) {
this.nodeList.push(row.id)
this.nodeList2.push(row.id)
this.delList.push(row)
} else {
for (let a = 0; a < this.nodeList.length; a ++) {
if (row.id === this.nodeList[a]) {
this.nodeList.splice(a, 1)
for (let a = 0; a < this.nodeList2.length; a++) {
if (row.id === this.nodeList2[a]) {
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 () {
this.filterText = ''
this.isVisible2 = false
this.open1 = true
this.visible = false
},
saveUserInfo () {
if (this.checkBox) {
this.isVisible2 = false
this.$emit('checkedRole', this.roleList)
this.nodeList2 = []
this.$emit('update:isVisible', false)
} else {
if (this.nodeList.length > 0 && this.nodeList[0].length !== 0) {
if (this.nodeList2.length > 0 && this.nodeList2[0].length !== 0) {
let ids = ''
this.nodeList.forEach(item => {
this.nodeList2.forEach(item => {
if (ids.length > 0) {
ids += ','
ids += item
@@ -196,12 +263,14 @@
}, {
_this: this
}, res => {
this.isVisible2 = false
this.$emit('checkedRole', res)
this.nodeList2 = []
this.$emit('update:isVisible', false)
})
} else {
this.isVisible2 = false
this.$emit('checkedRole', this.roleList)
this.nodeList2 = []
this.$emit('update:isVisible', false)
}
}
this.open1 = true
@@ -214,19 +283,14 @@
this.$refs.tree.setCheckedKeys([])
this.$refs.tree.setCheckedKeys([data.id])
this.roleList = [data]
this.delList = [data]
} else if (getlist.length === 0) {
this.roleList = [{}]
this.delList = []
} else if (getlist.length === 1) {
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 { // 多选
this.roleList = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes())
}
@@ -255,11 +319,36 @@
},
watch: {
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)
},
}
},
mounted () {
this.getTree()
@@ -268,7 +357,30 @@
</script>
<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;
position: relative;
background: url('~@/assets/images/shangqi/img/tree-add.png');
@@ -9,6 +9,9 @@
<el-tab-pane label="工作组" name="workgroup">
<workgroup></workgroup>
</el-tab-pane>
<el-tab-pane label="技术委员会" name="committee">
<committee></committee>
</el-tab-pane>
</el-tabs>
</div>
</div>
@@ -16,11 +19,13 @@
<script>
import workgroup from "@/pages/config/pages/mechanismManage/pages/workgroup";
import mechanism from "@/pages/config/pages/mechanismManage/pages/mechanism";
import committee from "@/pages/config/pages/mechanismManage/pages/committee"
export default {
name: 'MechanismManage',
components: {
workgroup,
mechanism,
committee
},
data () {
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'
}, res => {
if (res.ok) {
this.total = res.data.total
this.data = res.data.records
this.total = res.data.total;
res.data.records.forEach(item => {
item.account = "(" + item.account + ")" + item.accountName;
});
this.data = res.data.records;
}
})
},
@@ -902,7 +902,7 @@
</el-drawer>
<!-- 更新LOG -->
<el-dialog
title="更新LOG"
title="更新记录"
:visible.sync="relateDialog"
width="60%"
class="relateClass"
@@ -2529,7 +2529,7 @@ export default {
this.$message.error('水印下载仅支持PDF,pdf格式文件')
} else {
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 {
this.$message.error('请选择要下载的文件')
}
+2 -2
View File
@@ -14,7 +14,7 @@
<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-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="statusClick">符合性状态</el-button>
<put-question-button
@@ -647,7 +647,7 @@
<!-- 更新LOG -->
<el-dialog
title="更新LOG"
title="更新记录"
:visible.sync="relateDialog"
width="60%"
class="relateClass"
@@ -22,7 +22,7 @@
<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-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>
@@ -525,7 +525,7 @@
</el-drawer>
<!-- 更新LOG -->
<el-dialog
title="更新LOG"
title="更新记录"
:visible.sync="relateDialog"
width="60%"
class="relateClass"
@@ -1625,7 +1625,7 @@ export default {
this.$message.error('水印下载仅支持PDF,pdf格式文件')
} else {
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 {
this.$message.error('请选择要下载的文件')
}
@@ -70,8 +70,8 @@
<template v-if="child.value && child.value.length > 0"
v-for="(file, fileIndex) in child1Func(child.value)">
<!-- 单个文件时-->
<span v-if="child.value && child.value.length > 0 && child.value.length === 1">
<a style="font-size: 16px;color: #409EFF;cursor: pointer;margin-left: -60px"
<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;"
@click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{ file.oldFileName }}</a>
<i
@@ -90,7 +90,7 @@
</span>
<!-- 多个文件时-->
<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"
@click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{ file.oldFileName }}</a>
@@ -324,7 +324,7 @@
<p class="modular-content-p-val">
<span v-for="(item, index) in child.value.split(',')" :key="index">
<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>
</p>
</template>
@@ -343,7 +343,7 @@
<template v-else>
<span v-for="(item, index) in child.value.split(',')" :key="index">
<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>
</template>
</div>
@@ -397,7 +397,7 @@
>
<!--发布稿、增补件单独设置下载权限-->
<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
}}</a>
<i
@@ -415,7 +415,7 @@
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
</template>
<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
}}</a>
<i
@@ -456,7 +456,7 @@
<p class="modular-content-p-val">
<span v-for="(item, index) in child.value.split(',')" :key="index">
<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>
</p>
</template>
@@ -466,7 +466,7 @@
<p class="modular-content-p-val" v-if="child.value">
<span v-for="(item, index) in child.value.split(',')" :key="index">
<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>
</p>
<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'
|| child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA'
|| 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
}}</a>
<i
@@ -517,7 +517,7 @@
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
</template>
<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
}}</a>
<i
@@ -641,7 +641,7 @@
<p class="modular-content-p-val">
<span v-for="(item, index) in child.value.split(',')" :key="index">
<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>
</p>
</template>
@@ -651,7 +651,7 @@
<p class="modular-content-p-val" v-if="child.value">
<span v-for="(item, index) in child.value.split(',')" :key="index">
<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>
</p>
<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>-->
<!--发布稿、增补件单独设置下载权限-->
<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
}}</a>
<i
@@ -702,7 +702,7 @@
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
</template>
<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
}}</a>
<i
@@ -1461,7 +1461,7 @@
</el-dialog>
<!-- 更新LOG -->
<el-dialog
title="更新LOG"
title="更新记录"
:visible.sync="relateDialog"
class="relateClass"
width="60%"
@@ -3229,12 +3229,13 @@ export default {
window.open(routeUrl.href, '_blank')
},
searchSarStandItems() {
this.standItemSearch.page = 1
this.page7 = 1
this.selectSarStandItems()
},
// 清空搜索框
clearAllSearch() {
// 标准条款搜索
this.page7 = 1
this.standItemSearch.responsibleUnit = ''
this.standItemSearch.orgName = ''
this.standItemSearch.parts = ''
@@ -3872,7 +3873,17 @@ export default {
<style lang="less" scoped>
@import '~@/assets/styles/mixins';
@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 {
margin-left: 250px;
}
+2 -2
View File
@@ -12,7 +12,7 @@
<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-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="comparisonDialogOpen">比对</el-button>
</div>
@@ -656,7 +656,7 @@
</el-drawer>
<!-- 更新LOG -->
<el-dialog
title="更新LOG"
title="更新记录"
:visible.sync="relateDialog"
class="relateClass"
width="60%"
@@ -238,7 +238,7 @@ export default {
prcType: row.prcType
}
})
}else if (row.taskInfo === '批准'){
}else if (row.taskInfo === '培训'){
this.$router.push({
name: 'bussLibrary11',
query: {
@@ -1674,7 +1674,7 @@ export default {
prcType: row.prcType
}
})
}else if(row.taskInfo === '企标制修订计划整改') {
}else if(row.taskInfo === '重新起草') {
this.$router.push({
name: 'qbzxdjhgkStep1',
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>
</template>
</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">
<div @click.stop style="display: inline-block">
<el-dropdown trigger="click" @command="handleCommand">
@@ -108,13 +108,13 @@
</el-table-column>
</el-table>
</div>
<loading :loading="loading">{{$t('m.getting')}}……</loading>
<loading :loading="loading">正在获取中……</loading>
<pagination :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
</div>
</div>
<!-- 分享 -->
<el-drawer
:title="$t('m.sharingStandards')"
title="分享标准"
:visible.sync="drawerModal"
size="300px"
@close="drawerModal = false"
@@ -128,8 +128,8 @@
style="padding: 0 15px">
</dept-tree>
<div class="demo-drawer-footer">
<el-button style="margin-right: 8px" @click="drawerModal = false">{{$t('m.cancel')}}</el-button>
<el-button type="primary" @click="shareStandardBt">{{$t('m.push')}}</el-button>
<el-button style="margin-right: 8px" @click="drawerModal = false">取消</el-button>
<el-button type="primary" @click="shareStandardBt">推送</el-button>
</div>
</el-drawer>
<!-- 内容简介-->
@@ -169,7 +169,7 @@
</div>
</div>
<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>
</el-drawer>
<!-- 编辑条目 -->
@@ -273,7 +273,7 @@
<div style="border:1px dashed #999;margin-bottom:20px;padding:10px">
<el-row type="flex" class="row-bg" justify="space-between">
<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-row>
<div v-for="(item, index) in itemsContentList" :key="index">
@@ -296,9 +296,9 @@
</div>
</el-col>
<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" v-if="item.type === 'TABLE'" class="updateContentBtn" icon="el-icon-edit" @click="editContentInfo(item, index)">{{$t('m.update')}}</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-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)">修改</el-button>
<el-button size="mini" class="updateContentBtn" icon="el-icon-minus" @click="removeContentInfo(index, item.id)">删除</el-button>
</el-col>
</el-row>
</div>
@@ -306,8 +306,8 @@
</el-form>
</div>
<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-check" type="primary" @click="updateItemInfo" :loading="isSubmit">{{$t('m.submit')}}</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">提交</el-button>
</div>
</el-drawer>
<!-- 查看属性 -->
@@ -480,7 +480,7 @@
</el-drawer>
<!--编辑条款内容-->
<el-drawer
:title="$t('m.editTerms')"
title="编辑条款内容"
:wrapperClosable="false"
:visible.sync="editItemsContentModel"
size="800px"
@@ -491,7 +491,7 @@
<div class="otherStandardDetails-drawer-content">
<el-row>
<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-row>
<div v-for="(item, index) in itemsContentList" :key="index">
@@ -521,37 +521,37 @@
</div>
</el-col>
<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-remove" @click="removeContentInfo(index, item.id)">{{$t('m.delete')}}</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)">删除</el-button>
</el-col>
</el-row>
</div>
</div>
</div>
<div class="demo-drawer-footer">
<el-button style="margin-right: 8px" @click="editItemsContentModel = false">{{$t('m.cancel')}}</el-button>
<el-button type="primary" @click="updateItemInfo('content')" :loading="isSubmit">{{$t('m.save')}}</el-button>
<el-button style="margin-right: 8px" @click="editItemsContentModel = false">取消</el-button>
<el-button type="primary" @click="updateItemInfo('content')" :loading="isSubmit">保存</el-button>
</div>
</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-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 :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 :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-row>
<div slot="footer">
<el-button size="small" @click="chooseAddTypeModel = false">{{$t('m.cancel')}}</el-button>
<el-button size="small" type="primary" @click="addContentInfo">{{$t('m.sure')}}</el-button>
<el-button size="small" @click="chooseAddTypeModel = false">取消</el-button>
<el-button size="small" type="primary" @click="addContentInfo">确定</el-button>
</div>
</el-dialog>
<el-dialog :visible.sync="showUploadModelFlag" :title="$t('m.uploadPictures')" width="700px">
<el-dialog :visible.sync="showUploadModelFlag" title="上传图片" width="700px">
<el-upload
:action="importImgUrl"
ref="importImg"
@@ -561,25 +561,25 @@
:before-upload="imgBeforeUpload"
:show-file-list="showUploadlist"
: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-dialog>
<el-dialog :visible.sync="showTableModelFlag" :title="$t('m.tableProperties')" width="700px">
<el-dialog :visible.sync="showTableModelFlag" title="表格属性" width="700px">
<el-row>
<el-col :span="16">
<span>{{$t('m.numberOfRows')}}:</span>
<el-input class="updateContentInput" v-model.trim="rowCount" placeholder="$t('m.pleaseEnterAPositiveInteger')" clearable :maxlength="2"></el-input>
<span>行数:</span>
<el-input class="updateContentInput" v-model.trim="rowCount" placeholder="请输入正整数" clearable :maxlength="2"></el-input>
</el-col>
</el-row>
<el-row>
<el-col :span="16">
<span>{{$t('m.numberOfColumns')}}</span>
<el-input class="updateContentInput" v-model.trim="colCount" :placeholder="$t('m.pleaseEnterAPositiveInteger')" clearable :maxlength="2"></el-input>
<span>列数</span>
<el-input class="updateContentInput" v-model.trim="colCount" placeholder="请输入正整数" clearable :maxlength="2"></el-input>
</el-col>
</el-row>
<div slot="footer">
<el-button size="mini" @click="showTableModelFlag = false">{{$t('m.cancel')}}</el-button>
<el-button size="mini" type="primary" @click="addTableInfo">{{$t('m.sure')}}</el-button>
<el-button size="mini" @click="showTableModelFlag = false">取消</el-button>
<el-button size="mini" type="primary" @click="addTableInfo">确定</el-button>
</div>
</el-dialog>
<!-- 树结构添加树组织-->
@@ -607,44 +607,44 @@
<el-button class="common-button-default" icon="el-icon-close" @click="menuModalFlag = false">取消</el-button>
</div>
</el-dialog>
<el-dialog :title="$t('m.confirmDeletion')" width="300px" :visible.sync="deleteMenuModal">
<el-dialog title="确认删除" width="300px" :visible.sync="deleteMenuModal">
<p>该节点下有记录,是否删除?</p>
<div slot="footer">
<el-button size="mini" @click="deleteMenuModal = false">{{$t('m.cancel')}}</el-button>
<el-button type="primary" size="mini" @click="sureDeleteSarMenu">{{$t('m.sure')}}</el-button>
<el-button size="mini" @click="deleteMenuModal = false">取消</el-button>
<el-button type="primary" size="mini" @click="sureDeleteSarMenu">确定</el-button>
</div>
</el-dialog>
<el-dialog :title="$t('m.confirmDeletion')" width="300px" :visible.sync="deleteItemsModal">
<el-dialog title="确认删除" width="300px" :visible.sync="deleteItemsModal">
<p>选择条款关联节点下包含子节点,是否全部删除?</p>
<div slot="footer" class="demo-drawer-footer">
<el-button class="common-button-default" @click="deleteItemsModal = false">{{$t('m.cancel')}}</el-button>
<el-button calss="common-button-primary" type="primary" @click="batchDeleteItem">{{$t('m.sure')}}</el-button>
<el-button class="common-button-default" @click="deleteItemsModal = false">取消</el-button>
<el-button calss="common-button-primary" type="primary" @click="batchDeleteItem">确定</el-button>
</div>
</el-dialog>
<el-dialog :visible.sync="importModalshowflagtemp" :title="$t('m.importFile')" width="400px">
<el-upload
:multiple="false"
drag
show-file-list
:on-success="uploadSuccess"
:on-remove="removeOneFile"
:action="importImgUrl"
:file-list="defaultFilesList"
accept=".PDF, .doc, .docx, .ppt, .pptx"
:before-upload="editBeforeUpload"
name="file"
ref="importFileAboutLaws"
>
<div style="padding: 20px 0">
<i class="el-icon-upload" style="color: #3399ff; font-size: 52px;"></i>
<p>点击或拖拽上传文件</p>
</div>
</el-upload>
</el-dialog>
<el-dialog :title="$t('m.showPictures')" width="600px" style="height: 800px;" :visible.sync="showImg">
<!-- <el-dialog :visible.sync="importModalshowflagtemp" :title="$t('m.importFile')" width="400px">-->
<!-- <el-upload-->
<!-- :multiple="false"-->
<!-- drag-->
<!-- show-file-list-->
<!-- :on-success="uploadSuccess"-->
<!-- :on-remove="removeOneFile"-->
<!-- :action="importImgUrl"-->
<!-- :file-list="defaultFilesList"-->
<!-- accept=".PDF, .doc, .docx, .ppt, .pptx"-->
<!-- :before-upload="editBeforeUpload"-->
<!-- name="file"-->
<!-- ref="importFileAboutLaws"-->
<!-- >-->
<!-- <div style="padding: 20px 0">-->
<!-- <i class="el-icon-upload" style="color: #3399ff; font-size: 52px;"></i>-->
<!-- <p>点击或拖拽上传文件</p>-->
<!-- </div>-->
<!-- </el-upload>-->
<!-- </el-dialog>-->
<el-dialog title="展示图片" width="600px" style="height: 800px;" :visible.sync="showImg">
<div v-html="preImgContent" class="preImgStyle"></div>
</el-dialog>
<el-dialog :visible.sync="importModalshowflag" :title="$t('m.importFile')" width="400px">
<el-dialog :visible.sync="importModalshowflag" title="导入文件" width="400px">
<el-upload
multiple
:action="importExcelUrl"
@@ -667,18 +667,18 @@
<span>{{ importForm.content }}</span>
</div>
<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>
</el-dialog>
<!-- 修改模态框 -->
<el-drawer
:visible.sync="editInfoModal"
:title="$t('m.modifyInformation')"
title="修改信息"
size="700px">
<UEditor :content="ueContent" :config="config" ref="ueditor" @editor-onChange="uEditorChange"></UEditor>
<div class="demo-drawer-footer">
<el-button size="mini" @click="editInfoModal = false">{{$t('m.cancel')}}</el-button>
<el-button size="mini" type="primary" @click="editInfoModalSave">{{$t('m.save')}}</el-button>
<el-button size="mini" @click="editInfoModal = false">取消</el-button>
<el-button size="mini" type="primary" @click="editInfoModalSave">保存</el-button>
</div>
</el-drawer>
<!--内容简介-->
@@ -1289,7 +1289,7 @@ export default {
this.selectSarMenu = JSON.parse(JSON.stringify(treeNode))
if (undefined !== this.selectSarMenu.id) { // 当前有选中节点
if (name === 'newMenu') {
this.menuModalTitle = this.$t('m.newContents')
this.menuModalTitle = '新增目录'
this.menuModalFlag = true
this.menuAddOrUpdateFlag = 1
this.sarMenu.infoId = this.infoId
@@ -1299,7 +1299,7 @@ export default {
})
} else if (name === 'editMenu') {
this.menuAddOrUpdateFlag = 2
this.menuModalTitle = this.$t('m.editDirectory')
this.menuModalTitle = '编辑目录'
this.menuModalFlag = true
this.$nextTick(() => {
this.$refs.addMenuForm.resetFields()
+12 -12
View File
@@ -354,9 +354,9 @@ export default {
let yy = new Date().getFullYear();
let mm = new Date().getMonth() + 1;
let dd = new Date().getDate();
if (mm < 10) {
mm = this.padding0(mm, 2)
}
// if (mm < 10) {
// mm = this.padding0(mm, 2)
// }
if (dd < 10) {
dd = this.padding0(dd, 2)
}
@@ -443,9 +443,9 @@ export default {
let yy = new Date().getFullYear();
let mm = new Date().getMonth() + 1;
let dd = new Date().getDate();
if (mm < 10) {
mm = this.padding0(mm, 2)
}
// if (mm < 10) {
// mm = this.padding0(mm, 2)
// }
this.formData.month = mm + '月'
if (dd < 10) {
dd = this.padding0(dd, 2)
@@ -800,12 +800,12 @@ export default {
let yy = new Date().getFullYear();
let mm = new Date().getMonth() + 1;
let dd = new Date().getDate();
if (mm < 10) {
mm = this.padding0(mm, 2)
}
if (dd < 10) {
dd = this.padding0(dd, 2)
}
// if (mm < 10) {
// mm = this.padding0(mm, 2)
// }
// if (dd < 10) {
// dd = this.padding0(dd, 2)
// }
this.nowDate = yy + '-' + mm + '-' + dd
this.formData.year = yy + '年'
this.formData.month = mm + '月'
@@ -1076,6 +1076,7 @@ export default {
// 修改成表格样式后,选择项勾选改变
standSelectChange(data) {
this.selectTableData = [];
this.selectTableDatas = []
for (let i = 0; i < data.length; i++) {
this.selectTableData.push(data[i].id);
this.selectTableDatas.push(data[i])
+7 -7
View File
@@ -3,7 +3,7 @@
<div id="dynamicInformation" class="dynamic-information v-class">
<div class="dynamic-content">
<!-- 实施预警 -->
<div class="dynamic" style="overflow-y: auto;">
<div class="dynamic">
<div class="container">
<!-- <el-tabs v-model="activeName" @tab-click="handleClick">-->
<!-- <el-tab-pane label="标准预警" name="STANDARD">-->
@@ -689,11 +689,11 @@ export default {
this.$http.get('sys/EarlyWarning/ChangePermissions', {
id: row.id,
}, {}, res => {
this.pageConfig.page = 1
this.pageConfig.newPolicyPage = 1
this.pageConfig.oldPolicyPage = 1
this.searchBtnClick()
this.getEarlyDate()
this.pageConfig.page = 1
this.pageConfig.newPolicyPage = 1
this.pageConfig.oldPolicyPage = 1
this.searchBtnClick()
this.getEarlyDate()
}
)
}).catch(() => {
@@ -1049,7 +1049,7 @@ export default {
.content {
padding-bottom: 10px;
height: calc(~'100% - 7%');
height: calc(~'100% - 25%') ;
/deep/ .el-button--mini {
padding: 5px 7px;
@@ -121,7 +121,7 @@ export default {
for (var i = 0; i < this.selected.length; i++) {
this.targetKeys.push(this.selected[i].id)
}
// 左侧数据会筛选出右侧数据进行显示
// 左侧数据会筛选出右侧数据进行显示
var j
for (j = 0; j < res.data.records.length; j++) {
let moduleLabel = {}
@@ -169,14 +169,14 @@
show-overflow-tooltip
align="center">
</el-table-column>
<el-table-column
v-if="sarType === 'FOREIGN' && form.itemsNum1"
prop="changePoint"
width="150"
label="相对于国行标差异点"
show-overflow-tooltip
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- v-if="sarType === 'FOREIGN' && form.itemsNum1"-->
<!-- prop="changePoint"-->
<!-- width="150"-->
<!-- label="相对于国行标差异点"-->
<!-- show-overflow-tooltip-->
<!-- align="center">-->
<!-- </el-table-column>-->
<el-table-column
label="操作"
width="240"
@@ -411,8 +411,8 @@
<div style="margin: 10px 5px;">比对条款: {{ plForm.itemsNum }}</div>
<div style="margin: 10px 5px 5px;">相似度: {{ similarityDegree }}</div>
<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="rightData" 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="line-height: 20px;margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div>
</div>
</div>
</div>
@@ -220,14 +220,14 @@
show-overflow-tooltip
align="center">
</el-table-column>
<el-table-column
v-show="sarType === 'FOREIGN' && form.itemsNum1"
prop="changePoint"
width="150"
label="相对于国行标差异点"
show-overflow-tooltip
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- v-show="sarType === 'FOREIGN' && form.itemsNum1"-->
<!-- prop="changePoint"-->
<!-- width="150"-->
<!-- label="相对于国行标差异点"-->
<!-- show-overflow-tooltip-->
<!-- align="center">-->
<!-- </el-table-column>-->
<el-table-column
label="责任人"
width="170"
@@ -170,14 +170,14 @@
show-overflow-tooltip
align="center">
</el-table-column>
<el-table-column
v-if="sarType === 'FOREIGN' && form.itemsNum1"
prop="changePoint"
width="150"
label="相对于国行标差异点"
show-overflow-tooltip
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- v-if="sarType === 'FOREIGN' && form.itemsNum1"-->
<!-- prop="changePoint"-->
<!-- width="150"-->
<!-- label="相对于国行标差异点"-->
<!-- show-overflow-tooltip-->
<!-- align="center">-->
<!-- </el-table-column>-->
<el-table-column
label="责任人"
width="170"
@@ -419,8 +419,8 @@
<div style="margin: 10px 5px;">比对条款: {{ plForm.itemsNum }}</div>
<div style="margin: 10px 5px 5px;">相似度: {{ similarityDegree }}</div>
<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="rightData" 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="line-height: 20px;margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div>
</div>
</div>
</div>
@@ -154,14 +154,14 @@
show-overflow-tooltip
align="center">
</el-table-column>
<el-table-column
v-if="sarType === 'FOREIGN' && form.itemsNum1"
prop="changePoint"
width="150"
label="相对于国行标差异点"
show-overflow-tooltip
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- v-if="sarType === 'FOREIGN' && form.itemsNum1"-->
<!-- prop="changePoint"-->
<!-- width="150"-->
<!-- label="相对于国行标差异点"-->
<!-- show-overflow-tooltip-->
<!-- align="center">-->
<!-- </el-table-column>-->
<el-table-column
label="责任人"
width="170"
@@ -169,14 +169,14 @@
show-overflow-tooltip
align="center">
</el-table-column>
<el-table-column
v-if="sarType === 'FOREIGN' && form.itemsNum1"
prop="changePoint"
width="150"
label="相对于国行标差异点"
show-overflow-tooltip
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- v-if="sarType === 'FOREIGN' && form.itemsNum1"-->
<!-- prop="changePoint"-->
<!-- width="150"-->
<!-- label="相对于国行标差异点"-->
<!-- show-overflow-tooltip-->
<!-- align="center">-->
<!-- </el-table-column>-->
<el-table-column
prop="complianceRequir"
width="150"
@@ -378,8 +378,8 @@
<div style="margin: 10px 5px;">比对条款: {{ editForm.itemsNum }}</div>
<div style="margin: 10px 5px 5px;">相似度: {{ similarityDegree }}</div>
<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="rightData" 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="line-height: 20px;margin: 5px; border: 1px solid #ccc; border-radius: 5px; padding: 5px; width: 50%; overflow: auto;"></div>
</div>
</div>
</div>
@@ -163,14 +163,14 @@
show-overflow-tooltip
align="center">
</el-table-column>
<el-table-column
v-show="sarType === 'FOREIGN' && form.itemsNum1"
prop="changePoint"
width="150"
label="相对于国行标差异点"
show-overflow-tooltip
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- v-show="sarType === 'FOREIGN' && form.itemsNum1"-->
<!-- prop="changePoint"-->
<!-- width="150"-->
<!-- label="相对于国行标差异点"-->
<!-- show-overflow-tooltip-->
<!-- align="center">-->
<!-- </el-table-column>-->
<el-table-column
prop="complianceRequir"
width="150"
@@ -163,14 +163,14 @@
show-overflow-tooltip
align="center">
</el-table-column>
<el-table-column
v-show="sarType === 'FOREIGN' && form.itemsNum1"
prop="changePoint"
width="150"
label="相对于国行标差异点"
show-overflow-tooltip
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- v-show="sarType === 'FOREIGN' && form.itemsNum1"-->
<!-- prop="changePoint"-->
<!-- width="150"-->
<!-- label="相对于国行标差异点"-->
<!-- show-overflow-tooltip-->
<!-- align="center">-->
<!-- </el-table-column>-->
<el-table-column
prop="complianceRequir"
width="150"
@@ -163,14 +163,14 @@
show-overflow-tooltip
align="center">
</el-table-column>
<el-table-column
v-show="sarType === 'FOREIGN' && form.itemsNum1"
prop="changePoint"
width="150"
label="相对于国行标差异点"
show-overflow-tooltip
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- v-show="sarType === 'FOREIGN' && form.itemsNum1"-->
<!-- prop="changePoint"-->
<!-- width="150"-->
<!-- label="相对于国行标差异点"-->
<!-- show-overflow-tooltip-->
<!-- align="center">-->
<!-- </el-table-column>-->
<el-table-column
prop="complianceRequir"
width="150"
@@ -148,12 +148,14 @@
</template>
</el-table-column>
<el-table-column
v-if="!changePoint"
prop="technicalRequir"
align="center"
width="200px"
label="核心技术要求/变化点">
</el-table-column>
<el-table-column
v-if="changePoint"
prop="changePoint"
align="center"
width="200px"
@@ -200,12 +200,14 @@
</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"
@@ -193,12 +193,14 @@
</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"
@@ -202,12 +202,14 @@
</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"
@@ -202,12 +202,14 @@
</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"
@@ -202,12 +202,14 @@
</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"
@@ -1456,6 +1456,7 @@ export default {
callback()
}
return {
gdType: '', //归档位置的赋值
standTypeModel: 'INLAND',
submitType: '',
nodeList3: [],
@@ -2223,6 +2224,7 @@ export default {
switch (status) {
// 新增
case 1:
this.gdType = '新增'
this.selectedList = []
this.standardCheckedList = []
this.standardDrawer = false
@@ -2231,6 +2233,7 @@ export default {
break
// 带入(确认)
case 2:
this.gdType = '带入'
if (this.standardCheckedList.length === 1) {
this.$http.get('sarStandardsInfo/sar-standards-info/getStandInfoUpdateById', {id: this.standardCheckedList[0].id}, {
_this: this
@@ -2368,7 +2371,7 @@ export default {
}, {}, res => {
if (res.ok) {
this.treeListOptions = res.data
if(bringData.standNumber){
if(this.gdType === '带入'){
this.$http.get('sarStandardsInfo/sar-standards-info/getStandMenuId', {
standId: bringData.id,
}, {}, reson => {
@@ -2388,6 +2391,20 @@ export default {
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>
</div>
<div>
<el-collapse accordion v-model="activeName">
<el-collapse-item title="审批意见" name="1">
<el-collapse accordion>
<el-collapse-item title="审批意见">
<div style="margin: 10px 0;">
<el-form
ref="formTongGuo"
:model="formTongGuo"
:rules="rules">
<!-- <el-form-item-->
<!-- prop="approvalOpinion"-->
<!-- >-->
<!-- <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>
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
@@ -805,11 +788,11 @@
</template>
<script>
import ProcessHeader from '../../components/ProcessHeader'
import ProcessFooter from '../../components/ProcessFooter'
import ProcessTitle from '../../components/ProcessTitle'
import {inboundLiaisonDetail, processCreateStand, changeAssigneeNew } from 'api/process'
import TreeSelect from '@/components/treeSelect/treeSelect.vue';
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import { changeAssigneeNew, inboundLiaisonDetail, processCreateStand } from "api/process";
import TreeSelect from "@/components/treeSelect/treeSelect.vue";
import CusTomDataPickerGroup
from "@/pages/regulatoryRepository/localProductsOrProjectLibrary/components/DatePickerGroup";
@@ -834,22 +817,23 @@ export default {
drawerModal: false,
drawerTitle: '',
nodeList: [],
selectPeople: '',
xgdFileId: '',
fbgbjbdFileId: '',
bpgFileId: '',
ssgFileId: '',
zqyjgFileId: '',
jdwjFileId: '',
kwjFileId: '',
glwjFileId: '',
caFileId: '',
zbjbdFileId: '',
selectPeople: "",
xgdFileId: "",
fbgbjbdFileId: "",
bpgFileId: "",
ssgFileId: "",
zqyjgFileId: "",
jdwjFileId: "",
kwjFileId: "",
glwjFileId: "",
caFileId: "",
commentText: "",
zbjbdFileId: "",
rules: {
commentText: [{required: true, message: '请输入意见', trigger: 'blur'}],
approvalOpinion: [{required: true, message: '请选择审批意见', trigger: 'change'}]
commentText: [{ required: true, message: "请输入意见", trigger: "blur" }],
approvalOpinion: [{ required: true, message: "请选择审批意见", trigger: "change" }]
},
activeName: '1',
activeName: "1",
// 当前流程类型(1待办/2已办)
processType: 1,
detailData: [],
@@ -1224,76 +1208,77 @@ export default {
},
handleSave() {
},
//流程驳回按钮
handle1() {
this.formTongGuo.approvalOpinion = 1
this.handleSubmit()
if (this.commentText) {
this.formTongGuo.approvalOpinion = 1;
this.handleSubmit();
} else {
this.$message.warning("请填写审批意见");
}
},
//流程提交按钮
handle2() {
this.formTongGuo.approvalOpinion = 0
this.handleSubmit()
this.formTongGuo.approvalOpinion = 0;
this.handleSubmit();
},
handleSubmit() {
this.getRule()
const val = this.form.country;
if (val !== '' && val !== null && typeof (val) !== 'undefined') {
if (val !== "" && val !== null && typeof (val) !== "undefined") {
if (val instanceof Array) {
this.form.country = val.join(",");
} else {
this.form.country = val
this.form.country = val;
}
} else if (val === '') {
this.form.country = []
} else if (val === "") {
this.form.country = [];
}
this.$refs['formTongGuo'].validate((valid) => {
if (valid) {
this.isSubmit = true
this.form.commentText = this.formTongGuo.commentText
this.form.approvalOpinion = this.formTongGuo.approvalOpinion
console.log(this.form)
if (this.form.syrz.length === 0) {
this.form.syrz = ''
this.isSubmit = true;
this.form.commentText = this.commentText;
this.form.approvalOpinion = this.formTongGuo.approvalOpinion;
console.log(this.form);
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-input
v-model="form.standName"
disabled
placeholder="请输入标准中文名称"
clearable
></el-input>
@@ -510,6 +511,7 @@
<el-tooltip v-if="form.dtbjh" effect="dark" :content=form.dtbjh placement="top-start">
<el-input
v-model="form.dtbjh"
disabled
placeholder="请输入代替标准号"
clearable
></el-input>
@@ -517,6 +519,7 @@
<el-input
v-else
v-model="form.dtbjh"
disabled
placeholder="请输入代替标准号"
clearable
></el-input>
@@ -547,6 +550,7 @@
<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-input
disabled
v-model="form.bfbdtbzh"
placeholder="请输入部分代替标准号"
clearable
@@ -554,6 +558,7 @@
</el-tooltip>
<el-input
v-else
disabled
v-model="form.bfbdtbzh"
placeholder="请输入部分代替标准号"
clearable
@@ -563,6 +568,7 @@
<el-tooltip v-if="form.cbbh" effect="dark" :content=form.cbbh placement="top-start">
<el-input
v-model="form.cbbh"
disabled
placeholder="请输入采标编号"
clearable
></el-input>
@@ -570,6 +576,7 @@
<el-input
v-else
v-model="form.cbbh"
disabled
placeholder="请输入采标编号"
clearable
></el-input>
@@ -578,12 +585,14 @@
<el-tooltip v-if="form.yybj" effect="dark" :content=form.yybj placement="top-start">
<el-input
v-model="form.yybj"
disabled
placeholder="请输入引用标准"
clearable
></el-input>
</el-tooltip>
<el-input
v-else
disabled
v-model="form.yybj"
placeholder="请输入引用标准"
clearable
@@ -1186,10 +1195,10 @@ export default {
},
handleSubmit() {
this.isSubmit = true
this.form.submitType = this.submitType
this.form.commentText = this.commentText
this.form.approvalOpinion = this.approvalOpinion
const json = JSON.stringify(this.form);
json.submitType = this.submitType
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds,
userId : this.userId,
@@ -10,7 +10,7 @@
<div class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
<!-- <div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">审批历史</div>-->
</div>
<div class="content" v-if="active === '1'">
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto;">
<el-form
ref="form"
@@ -875,10 +875,11 @@
:lazy=true
:multiple=true
:check-strictly=true
:show-checkBox=true
:modalShowFlag="modalShowFlag4"
:drawerTitle="drawerTitle"
:url="url"
:type="'TRUCK'"
:show-checkBox="showCheckBox"
:urlChild="urlChild"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel" @popoverHideCancel="popoverHideModelCancel"></tree-select-module>
@@ -895,6 +896,7 @@
:drawerTitle="drawerTitle"
:url="url"
:type="'CAR'"
:show-checkBox="showCheckBox"
:urlChild="urlChild"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel2" @popoverHideCancel="popoverHideModelCancel2"></tree-select-module>
@@ -1258,7 +1260,7 @@
</el-collapse>
</div>
</div>
<div class="content" v-if="active === '2'">
<div class="content" v-show="active === '2'">
<div class="block" style="padding-top: 20px;">
<el-timeline>
<el-timeline-item timestamp="发起流程" placement="top" :color="user1 ? '#66b1ff' : ''">
@@ -1305,7 +1307,7 @@
</el-timeline>
</div>
</div>
<div class="content" v-if="active === '3'">
<div class="content" v-show="active === '3'">
<div class="flow-list">
<el-table
height="100%"
@@ -1596,6 +1598,7 @@ export default {
commentText: '', // 意见
title: '', // 新增编辑抽屉标题
ListModel: false, // 新增编辑抽屉开关
showCheckBox: true, // 树形控件是否展示多选框
active: '1', // 默认显示
isSubmit: false,
saveLoading: false,
@@ -1988,11 +1991,19 @@ export default {
this.modalShowFlag4 = true
this.url = ''
this.urlChild = ''
this.url = "sarModelTree/list"
this.url = "sarModelTree/listByType"
this.urlChild = "sarModelTree/childByList"
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) {
this.drawerTitle = title
this.getListTree(this.form)
@@ -2801,10 +2812,10 @@ export default {
if (res.ok) {
this.fileInfoHandle();
this.isSubmit = true
this.form.submitType = this.submitType
this.form.commentText = this.commentText
this.form.approvalOpinion = this.approvalOpinion
const json = JSON.stringify(this.form);
json.submitType = this.submitType
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds,
userId: this.userId,
@@ -2829,10 +2840,10 @@ export default {
} else {
this.fileInfoHandle();
this.isSubmit = true
this.form.submitType = this.submitType
this.form.commentText = this.commentText
this.form.approvalOpinion = this.approvalOpinion
const json = JSON.stringify(this.form);
json.submitType = this.submitType
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds,
userId: this.userId,
@@ -52,6 +52,7 @@
<el-tooltip v-if="form.standName" effect="dark" :content=form.standName placement="top-start">
<el-input
v-model="form.standName"
disabled
placeholder="请输入标准中文名称"
clearable
></el-input>
@@ -468,12 +469,14 @@
<el-tooltip v-if="form.dtbjh" effect="dark" :content=form.dtbjh placement="top-start">
<el-input
v-model="form.dtbjh"
disabled
placeholder="请输入代替标准号"
clearable
></el-input>
</el-tooltip>
<el-input
v-else
disabled
v-model="form.dtbjh"
placeholder="请输入代替标准号"
clearable
@@ -507,12 +510,14 @@
<el-tooltip v-if="form.bfbdtbzh" effect="dark" :content=form.bfbdtbzh placement="top-start">
<el-input
v-model="form.bfbdtbzh"
disabled
placeholder="请输入部分代替标准号"
clearable
></el-input>
</el-tooltip>
<el-input
v-else
disabled
v-model="form.bfbdtbzh"
placeholder="请输入部分代替标准号"
clearable
@@ -522,6 +527,7 @@
<el-tooltip v-if="form.cbbh" effect="dark" :content=form.cbbh placement="top-start">
<el-input
v-model="form.cbbh"
disabled
placeholder="请输入采标编号"
clearable
></el-input>
@@ -529,6 +535,7 @@
<el-input
v-else
v-model="form.cbbh"
disabled
placeholder="请输入采标编号"
clearable
></el-input>
@@ -537,6 +544,7 @@
<el-tooltip v-if="form.yybj" effect="dark" :content=form.yybj placement="top-start">
<el-input
v-model="form.yybj"
disabled
placeholder="请输入引用标准"
clearable
></el-input>
@@ -544,6 +552,7 @@
<el-input
v-else
v-model="form.yybj"
disabled
placeholder="请输入引用标准"
clearable
></el-input>
@@ -470,7 +470,7 @@
query: {
standId: this.standId,
attId: this.form.fjList[0].attId,
fileType: this.form.fjList[0].standFileClassify,
fileType: this.form.textType,
}
});
window.open(routeData.href, '_blank')
@@ -511,7 +511,7 @@ export default {
query: {
standId: this.standId,
attId: this.form.fjList[0].attId,
fileType: this.form.fjList[0].standFileClassify,
fileType: this.form.textType,
}
});
window.open(routeData.href, '_blank')
@@ -786,7 +786,7 @@ export default {
_this: this
}, res => {
this.workData = res.data.records;
this.total = res.data.total;
this.totalNo = res.data.total;
}, e => {
});
},
@@ -275,6 +275,7 @@ export default {
},
data() {
return {
submitFlag: '',
toggleType: '5',
comFlag: 1,
active: "1",
@@ -338,7 +339,8 @@ export default {
if(this.taskId){
this.approvalFlag = true
this.processTable()
this.getData();
//被驳回时调用
this.getHistoryData()
}
},
methods: {
@@ -355,16 +357,6 @@ export default {
}, 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() {
this.formLoading = true
this.showFlag = false
@@ -375,11 +367,29 @@ export default {
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: 动态表单读取
*/
getFormFieldList(item) {
let type = item.qbfsForm.type
console.log(item);
let type = item.type || item.qbfsForm.type
this.$nextTick(() => {
switch (type){
case '1':
@@ -398,18 +408,18 @@ export default {
this.comName = "establish"
break
}
this.qbfsForm = item.qbfsForm;
this.qbfsForm = item.qbfsForm || item;
this.formLoading = false;
this.roleForm.dockUser = item.roleForm.dockUser;
this.roleForm.dockUserName = item.roleForm.dockUserName;
this.roleForm.countersigner = item.roleForm.countersigner;
this.roleForm.countersignerName = item.roleForm.countersignerName;
this.roleForm.approver = item.roleForm.approver;
this.roleForm.approverName = item.roleForm.approverName;
this.roleForm.engineer = item.roleForm.engineer;
this.roleForm.engineerName = item.roleForm.engineerName;
this.roleForm.examine = item.roleForm.examine;
this.roleForm.examineName = item.roleForm.examineName;
this.roleForm.dockUser = item.dockUser || item.roleForm.dockUser;
this.roleForm.dockUserName = item.dockUserName || item.roleForm.dockUserName;
this.roleForm.countersigner = item.countersigner || item.roleForm.countersigner;
this.roleForm.countersignerName = item.countersignerName || item.roleForm.countersignerName;
this.roleForm.approver = item.approver ||item.roleForm.approver;
this.roleForm.approverName = item.approverName || item.roleForm.approverName;
this.roleForm.engineer = item.engineer || item.roleForm.engineer;
this.roleForm.engineerName = item.engineerName || item.roleForm.engineerName;
this.roleForm.examine = item.examine || item.roleForm.examine;
this.roleForm.examineName = item.examineName || item.roleForm.examineName;
});
},
handleTabs(name) {
@@ -531,6 +531,7 @@ export default {
this.$http.postData('importWkExcel/importData', _formData,{
_this: this
}, res => {
console.log(res);
if(res.ok){
if(res.data.length){
this.qblx_pageData.qblxData = res.data
@@ -539,7 +540,7 @@ export default {
this.$message.warning('请勿上传为空的文件')
}
}else{
this.$confirm(res.message, "提示", {
this.$confirm(res.data, "提示", {
confirmButtonText: "确认",
confirmButtonClass: "common-button-primary",
cancelButtonText: "取消",
@@ -436,9 +436,9 @@ export default {
bpnId: this.$route.query.bpnId
}).then(res => {
let mes = JSON.parse(res.mes);
this.dataList = mes.dataList;
this.roleForm = mes.roleForm;
this.commentText = mes.commentText;
this.dataList = mes.dataList || mes.json.standardInfoList;
this.roleForm = mes.roleForm || mes.json.roleForm;
this.commentText = mes.commentText || mes.json.commentText;
});
},
//点击新增事件
@@ -609,6 +609,7 @@ export default {
this.$message.warning('请完善人员信息')
} else {
if(!this.submitFlag){
console.log('第一次提交');
this.$refs['roleForm'].validate((valid) => {
if (valid) {
this.isSubmit = true
@@ -647,6 +648,7 @@ export default {
}
})
}else{
console.log('修改后提交');
this.$refs["roleForm"].validate((valid) => {
if (valid) {
let specialJson = {
@@ -87,6 +87,7 @@
</el-table-column>
<el-table-column
align="center"
width="180"
label="标准号"
>
<template slot-scope="scope">
@@ -40,7 +40,7 @@
@selection-change="selectStandChange">
<el-table-column align="center" type="selection" width="55">
</el-table-column>
<el-table-column label="标准号" prop="standNumber">
<el-table-column label="标准号" width="180" prop="standNumber">
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump"
@click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber
@@ -38,14 +38,6 @@
clearable
></el-input>
</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-row>
</el-form>
@@ -105,6 +97,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template>
</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
prop="ssrq"
width="190px"
@@ -123,13 +125,6 @@
width="190px"
label="在产车实施日期">
</el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table>
<div>
<el-collapse accordion>
@@ -42,15 +42,6 @@
clearable
></el-input>
</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-date-picker
:picker-options="pickerOptions"
@@ -125,6 +116,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template>
</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
prop="ssrq"
width="190px"
@@ -143,13 +144,6 @@
width="190px"
label="在产车实施日期">
</el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table>
<el-collapse accordion>
<el-collapse-item title="回执说明">
@@ -242,6 +236,41 @@
<div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0">
<div class="left">
<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-input
v-model="projectSearch.projectNumber"
@@ -259,7 +288,7 @@
type="primary"
class="common-button-primary"
size="small"
v-btn-permission=""
v-btn-permission="'072efe80c5459dd47fedd2d14f59ff7f'"
@click="getProjectDataBtn">
查询
</el-button>
@@ -268,7 +297,7 @@
<el-button
class="common-button-default"
size="small"
v-btn-permission=""
v-btn-permission="'3480a13964a18e000196e4d5bc6ef117'"
@click="clearSearch">清空
</el-button>
</el-form-item>
@@ -326,141 +355,6 @@
<el-button type="primary" size="mini" @click="OkProject">带入</el-button>
</div>
</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
title="添加标准"
@@ -935,10 +829,16 @@ export default {
carType: "",
detailedListName: ""
},
managementHostName: [], //管理主体名称下拉框
developmentHostName: [], //开发主体名称下拉框
categoryName: [], //项目细分类下拉框
//项目检索条件
projectSearch: {
projectNumber: "",
projectName: ""
projectName: "",
managementHostName: "", //管理主体
developmentHostName: "", //开发主体
categoryName: "" //项目细分类
},
qdform: {
projectId:"",
@@ -963,9 +863,6 @@ export default {
projectNumber: [
{ type: "string", required: true, message: "请输入项目编号", trigger: "change" }
],
detailedListName: [
{ required: true, message: "请输入清单名称", trigger: "change" }
],
endTime: [
{required: true, message: '请输入截止时间', trigger: 'change'},
],
@@ -982,6 +879,32 @@ export default {
};
},
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) {
const momentDate = this.$moment(str)
if (momentDate.isValid()) {
@@ -1232,6 +1155,7 @@ export default {
this.qdform.projectNumber = this.selectProject[0].projectNumber;
this.qdform.projectName = this.selectProject[0].projectName;
this.qdform.projectId = this.selectProject[0].id;
this.getStandData(this.qdform.projectId)
this.projectModel = false;
}
@@ -1309,7 +1233,7 @@ export default {
},
//查询清单下的标准
getStandData(id) {
this.$http.get("sarLawsAttrDetailedList/sar-laws-attr-detailed-list/selectLawsById", {
this.$http.get("sarStandProjectLibrary/queryStandInfoNew", {
id: id,
page: 1,
Size: 100
@@ -1473,6 +1397,7 @@ export default {
},
},
mounted() {
this.optionsChange()
if(this.$route.query.bpnId){
this.bpnId = this.$route.query.bpnId
queryTaskFirst({
@@ -38,14 +38,6 @@
clearable
></el-input>
</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-row>
</el-form>
@@ -111,6 +103,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template>
</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
prop="ssrq"
width="190px"
@@ -129,13 +131,6 @@
width="190px"
label="在产车实施日期">
</el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table>
<div>
<el-collapse accordion>
@@ -38,14 +38,6 @@
clearable
></el-input>
</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-row>
</el-form>
@@ -111,6 +103,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template>
</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
prop="ssrq"
width="190px"
@@ -129,13 +131,6 @@
width="190px"
label="在产车实施日期">
</el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table>
<div>
<el-collapse accordion>
@@ -38,14 +38,6 @@
clearable
></el-input>
</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-row>
</el-form>
@@ -105,6 +97,16 @@
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
</template>
</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
prop="ssrq"
width="190px"
@@ -123,13 +125,6 @@
width="190px"
label="在产车实施日期">
</el-table-column>
<el-table-column
prop="zrbm"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
</el-table>
<div>
<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%"
border
@selection-change="selectStandChange"
height="55%"
height="100%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column
prop="productLine"
align="center"
width="200"
label="产品线">
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="projectNumber"
align="center"
width="200"
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
prop="projectName"
min-width="300"
:show-overflow-tooltip="true"
align="center"
width="200"
prop="projectName"
label="项目名称">
</el-table-column>
<el-table-column
prop="itemNum"
prop="itemsNum"
align="center"
width="200"
label="条款号">
@@ -170,34 +176,41 @@
label="条款名称">
</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"
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"
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"
@@ -208,7 +221,6 @@
<el-table-column
align="center"
width="160"
prop="researchNonCompliance"
label="不合规">
<el-table-column
prop="noCompliance"
@@ -225,25 +237,19 @@
<el-table-column
prop="completionTime"
align="center"
width="120"
width="140"
label="完成时间">
<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>
</el-table-column>
</el-table-column>
<el-table-column
align="center"
width="150"
prop="implementer"
label="落实人">
</el-table-column>
<el-table-column
align="center"
width="150"
prop="distributePerson"
label="责任人">
</el-table-column>
width="180"
label="评估人"
/>
</el-table>
<el-collapse accordion>
<el-collapse-item title="审批意见">
@@ -294,7 +300,7 @@ import axios from "axios";
import ProcessHeader from "process/components/ProcessHeader";
export default {
name: "phoneXmpgStep6",
name: "phoneBzpgStep6",
components: {
ProcessHeader,
ProcessFooter,
@@ -498,40 +504,56 @@ export default {
/**
* @description: 动态表单读取
*/
getFormFieldList (item) {
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.dataList = item.dataList
this.listForm.id = item.step3DTOS[0].id
this.listForm.standName = item.step3DTOS[0].standName
this.listForm.standNumber = item.step3DTOS[0].standNumber
this.listForm.qualityEngineerName = item.step3DTOS[0].qualityEngineerName
this.listForm.certifiedEngineerName = item.step3DTOS[0].certifiedEngineerName
})
this.listForm = JSON.parse(JSON.stringify(item));
if (item.form === undefined) {
this.fileType = item.fileType
this.listForm.prcNum = this.prcNum
this.listForm.prcName = this.prcName
this.listForm['id'] = item.id
this.dataList = item.dataList
} else {
this.listForm = item.form;
this.dataList = item.form.dataList;
}
});
},
//驳回事件
beforeBack () {
if(!this.commentText){
this.$message.warning('请填写审批意见')
} else {
this.listForm.fenFlag = '2'
this.handleSubmit()
}
this.$message.warning('请填写审批意见')
}else{
this.listForm.dataList = this.dataList
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() {
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.passFlag = '0'
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,
@@ -545,9 +567,7 @@ export default {
}
this.isSubmit = false
}, e => {
});
},
//标准表格选择框改变
selectStandChange(data) {
@@ -2,7 +2,7 @@
<div class="phoneXmpgStep7 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">标准合规评估流程</template>
<template slot="proNode">标准法规部领导审批</template>
<template slot="proNode">审定</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
@@ -129,36 +129,51 @@
<ProcessTitle>
<template slot="title">填写信息</template>
</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
ref="multipleTable"
:data="dataList"
:data="dataList.filter(item =>{return item.projectName === projectName})"
tooltip-effect="dark"
style="width: 100%"
border
@selection-change="selectStandChange"
height="55%"
height="100%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column
prop="productLine"
align="center"
width="200"
label="产品线">
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="projectNumber"
align="center"
width="200"
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
prop="projectName"
min-width="300"
:show-overflow-tooltip="true"
align="center"
width="200"
prop="projectName"
label="项目名称">
</el-table-column>
<el-table-column
prop="itemNum"
prop="itemsNum"
align="center"
width="200"
label="条款号">
@@ -170,34 +185,41 @@
label="条款名称">
</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"
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"
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"
@@ -208,7 +230,6 @@
<el-table-column
align="center"
width="160"
prop="researchNonCompliance"
label="不合规">
<el-table-column
prop="noCompliance"
@@ -225,25 +246,19 @@
<el-table-column
prop="completionTime"
align="center"
width="120"
width="140"
label="完成时间">
<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>
</el-table-column>
</el-table-column>
<el-table-column
align="center"
width="150"
prop="implementer"
label="落实人">
</el-table-column>
<el-table-column
align="center"
width="150"
prop="distributePerson"
label="责任人">
</el-table-column>
width="180"
label="评估人"
/>
</el-table>
<el-collapse accordion>
<el-collapse-item title="审批意见">
@@ -264,14 +279,12 @@
</div>
<ProcessFooter
show-transfer
show-back
show-submit
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit"
>
</ProcessFooter>
@@ -294,7 +307,7 @@ import axios from "axios";
import ProcessHeader from "process/components/ProcessHeader";
export default {
name: "phoneXmpgStep7",
name: "phoneBzpgStep7",
components: {
ProcessHeader,
ProcessFooter,
@@ -304,7 +317,9 @@ export default {
data() {
return {
phoneshowflag: false,
activeName: '',
phoneRoleList: [],
projectTabName: [],
phoneDrawerTitle: '',
//折叠的标志,true为折叠,false为不折叠
foldFormFlag: false,
@@ -388,6 +403,9 @@ export default {
};
},
methods: {
handleClick(tab) {
this.projectName = tab.name
},
//折叠/展开基础信息方法
foldForm() {
this.foldFormFlag = !this.foldFormFlag
@@ -498,36 +516,34 @@ export default {
/**
* @description: 动态表单读取
*/
getFormFieldList (item) {
getFormFieldList(item) {
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item))
this.listForm.prcNum = this.prcNum
this.listForm.prcName = this.prcName
this.listForm.id = item.id
this.dataList = item.dataList
})
},
//驳回事件
beforeBack () {
if(!this.commentText){
this.$message.warning('请填写审批意见')
} else {
this.listForm.fenFlag = '2'
this.handleSubmit()
}
this.listForm = JSON.parse(JSON.stringify(item));
if (item.form === undefined) {
this.fileType = item.fileType
this.listForm.prcNum = this.prcNum
this.listForm.prcName = this.prcName
this.listForm['id'] = item.id
this.dataList = item.dataList
item.dataList.forEach(item => {
if(!this.projectTabName.includes(item.projectName)){
this.projectTabName.push(item.projectName)
}
})
this.projectName = this.activeName = this.projectTabName[Object.keys(this.projectTabName)[0]]
} else {
this.listForm = item.form;
this.dataList = item.form.dataList;
}
});
},
//提交事件
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.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.isSubmit = true
this.$http.post('lawss/activiti/completeTask', {
taskIds: this.taskIds,
userId: this.userId,
@@ -541,7 +557,6 @@ export default {
}
this.isSubmit = false
}, e => {
});
},
@@ -1,8 +1,8 @@
<template>
<div class="phoneXmpgStep2 phoneBox">
<div class="phoneXmpgStep7 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">标准合规评估流程</template>
<template slot="proNode">业务经理审批</template>
<template slot="proNode">批准</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
@@ -129,39 +129,136 @@
<ProcessTitle>
<template slot="title">填写信息</template>
</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
:data="dataList"
ref="multipleTable"
:data="dataList.filter(item =>{return item.projectName === projectName})"
tooltip-effect="dark"
style="width: 100%"
border
ref="selection"
height="100%"
style="width: 100%;"
@selection-change="selectStandChange"
height="100%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}">
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column
prop="productLine"
min-width="150"
align="center"
label="产品线">
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="productLine"
min-width="200"
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="项目名称">
</el-table-column>
<el-table-column
prop="uname"
min-width="150"
prop="itemsNum"
align="center"
label="产品线责任人">
width="200"
label="条款号">
</el-table-column>
<el-table-column
prop="distributePerson"
min-width="150"
prop="itemsName"
width="200"
align="center"
label="分发责任人">
label="条款名称">
</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-collapse accordion>
<el-collapse-item title="审批意见">
@@ -182,14 +279,12 @@
</div>
<ProcessFooter
show-transfer
show-back
show-submit
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit"
>
</ProcessFooter>
@@ -212,7 +307,7 @@ import axios from "axios";
import ProcessHeader from "process/components/ProcessHeader";
export default {
name: "phoneXmpgStep2",
name: "phoneBzpgStep8",
components: {
ProcessHeader,
ProcessFooter,
@@ -222,7 +317,9 @@ export default {
data() {
return {
phoneshowflag: false,
activeName: '',
phoneRoleList: [],
projectTabName: [],
phoneDrawerTitle: '',
//折叠的标志,true为折叠,false为不折叠
foldFormFlag: false,
@@ -306,6 +403,9 @@ export default {
};
},
methods: {
handleClick(tab) {
this.projectName = tab.name
},
//折叠/展开基础信息方法
foldForm() {
this.foldFormFlag = !this.foldFormFlag
@@ -416,30 +516,32 @@ export default {
/**
* @description: 动态表单读取
*/
getFormFieldList (item) {
getFormFieldList(item) {
this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item))
this.listForm.prcNum = this.prcNum
this.listForm.prcName = this.prcName
this.listForm['id'] = item.id
this.listForm.dataList = item.dataList
this.dataList = item.dataList
this.dataList.distributePerson = item.dataList[0].distributePerson
this.listForm.breakdownList = item.breakdownList
})
},
//驳回事件
beforeBack () {
if(this.commentText === null || this.commentText === undefined || this.commentText === ''){
this.$message.warning('请填写审批意见')
}else{
this.listForm.passFlag = '1'
this.handleSubmit()
}
this.listForm = JSON.parse(JSON.stringify(item));
if (item.form === undefined) {
this.fileType = item.fileType
this.listForm.prcNum = this.prcNum
this.listForm.prcName = this.prcName
this.listForm['id'] = item.id
this.dataList = item.dataList
item.dataList.forEach(item => {
if(!this.projectTabName.includes(item.projectName)){
this.projectTabName.push(item.projectName)
}
})
this.projectName = this.activeName = this.projectTabName[Object.keys(this.projectTabName)[0]]
} else {
this.listForm = item.form;
this.dataList = item.form.dataList;
}
});
},
//提交事件
handleSubmit() {
this.listForm.commentText = this.commentText
this.listForm.dataList = this.dataList
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.isSubmit = true
this.$http.post('lawss/activiti/completeTask', {
@@ -491,7 +593,7 @@ export default {
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.phoneXmpgStep2 {
.phoneXmpgStep7 {
/deep/.van-dialog__content {
min-height: 300px;
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">
<ProcessHeaderPhone toggle>
<template slot="proName">项目合规评估流程</template>
<template slot="proNode">分发负责人审批</template>
<template slot="proNode">产品工程经理审核</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
@@ -167,6 +167,12 @@
</template>
</el-table-column>
</el-table-column>
<el-table-column
prop="remarks"
align="center"
width="200"
label="不涉及理由">
</el-table-column>
<el-table-column
align="center"
width="150"
@@ -223,7 +229,7 @@ import ProcessTitle from "../../components/ProcessTitle";
import { inboundLiaisonDetail, queryDetail ,changeAssigneeNew } from "api/process";
export default {
name: "phoneXmpg2Step12",
name: "phoneXmpgStep4",
components: {
ProcessTitle,
ProcessHeader,
@@ -422,31 +428,36 @@ export default {
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)
this.dataList = item.dataList;
this.dataList.forEach(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, "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);
let index = dataListChildren.findIndex(item => {
return item.people
})
dataChildren.forEach((item,index) => {
dataListChildren = dataListChildren.concat(item)
})
dataListChildren = this.dataList.concat(dataListChildren)
this.dataList = dataListChildren
if(index > -1){
dataListChildren.splice(index, 1)
}
this.dataList = dataListChildren;
this.total = this.dataList.length;
});
},
+197 -270
View File
@@ -1,8 +1,8 @@
<template>
<div class="phoneXmpgStep5 phoneBox">
<div class="phoneXmpg2Step12 phoneBox">
<ProcessHeaderPhone toggle>
<template slot="proName">标准合规评估流程</template>
<template slot="proNode">分发负责人审批</template>
<template slot="proName">项目合规评估流程</template>
<template slot="proNode">批准</template>
</ProcessHeaderPhone>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
@@ -22,50 +22,20 @@
<div class="prc-content-border" v-if="foldFormFlag === false">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
class="input-jump"
v-model="listForm.standNumber"
placeholder="请输入标准编号"
readonly
@click.native="handlePreview(listForm)"
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</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
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="--"
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
@@ -77,48 +47,20 @@
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.standNumber"
placeholder="请输入标准编号"
readonly
@click.native="handlePreview(listForm)"
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
disabled
clearable
></el-input>
</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
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="--"
v-model="listForm.projectName"
placeholder="请输入项目名称"
disabled
clearable
></el-input>
</el-form-item>
</el-col>
@@ -135,30 +77,35 @@
tooltip-effect="dark"
style="width: 100%"
border
@selection-change="selectStandChange"
height="55%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold'}">
<el-table-column
prop="productLine"
prop="standEnName"
label="标准编号"
width="180"
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
prop="projectNumber"
prop="standName"
width="180"
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
prop="projectName"
align="center"
width="200"
label="项目名称">
</el-table-column>
<el-table-column
prop="itemNum"
prop="itemsNum"
align="center"
width="200"
label="条款号">
@@ -169,18 +116,6 @@
align="center"
label="条款名称">
</el-table-column>
<el-table-column
prop="technicalRequir"
align="center"
width="250"
label="核心技术要求/变化点">
</el-table-column>
<el-table-column
prop="changePoint"
width="250"
align="center"
label="基于上一版本差异">
</el-table-column>
<el-table-column
prop="xCXSSRQ"
width="200"
@@ -233,10 +168,10 @@
</el-table-column>
</el-table-column>
<el-table-column
prop="remarks"
align="center"
width="150"
prop="implementer"
label="落实人">
width="200"
label="不涉及理由">
</el-table-column>
<el-table-column
align="center"
@@ -245,6 +180,7 @@
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;">
@@ -263,15 +199,13 @@
<Phone-histort-table :prc-num="$route.query.prcNum"></Phone-histort-table>
</div>
<ProcessFooter
show-transfer
show-back
show-submit
show-transfer
:transfer-loading="isTransfer"
:submitLoading="isSubmit"
:saveLoading="saveLoading"
:approval="true"
@transfer="handleTransfer"
@back="beforeBack"
@submit="handleSubmit"
>
</ProcessFooter>
@@ -287,113 +221,74 @@
<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";
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: "phoneXmpgStep5",
components: {
ProcessTitle,
ProcessHeader,
ProcessFooter,
ProcessHeaderPhone,
ProcessTitle
ProcessFooter
},
data() {
return {
phoneshowflag: false,
phoneRoleList: [],
phoneDrawerTitle: '',
//折叠的标志,true为折叠,false为不折叠
tableIndex: 0,
itemLists: [],
foldFormFlag: false,
total: 0,
currentPage: 1,
pageSize: 20,
nodeList:[],
isTransfer: false,
drawerTitle:'',
isTransfer: false,
// 调整处理人抽屉状态
drawerModal: false,
detailData: [],
active: "1",
loading: false,
// 当前流程类型(1待办/2已办)
processType: 1,
loading: false,
dataList: [],//清单里的标准数据
active: "1",
userId:this.$store.getters.userInfo.userId,
taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId,
listType: "country", //选择的清单类型
isSubmit: false,
saveLoading: false,
tabValue: "listOfCountries",
selectedList: [], //选择清单的选择框
selectList: [], //选择标准的选择框
bringData: [],
commentText: "", //填写会签意见
page: 1,
total: 0,
pageSize: this.$store.getters.userInfo.configContent,
//表单的数据
listForm: {
passFlag: " ", //空为审批通过 1 为驳回
standNumber: "", //标准编号
standName: "",//标准名称
certifiedEngineer: "", //认证工程师
qualityEngineer: "", //质量工程师
certifiedEngineerName: "", //认证工程师
qualityEngineerName: "", //质量工程师
breakdownList: [{
applyArctic: "",
busStandCover: "",
claimType: "",
id: "",
itemsName: "",
itemsNum: "",
responsibleUnit: "", //责任部门
responsibleEngineer: "", //责任工程师
standId: "",
svpps: ""
}],
dataList: [{
projectLine: "", //产品线
uname: "",//产品线责任人
projectManager:"",// 产品线责任人id
distributePerson: "", //分发责任人
distributePersonId: "", //分发责任人id
id: "",
sarStandProjectLibraries: [{
projectManager: '',
projectLevel: '',
projectNumber: '',
projectEndDate: '',
currentNode: '',
projectGroup: '',
productLine: '',
projectClassification: '',
projectStatus: '',
projectStartDate: '',
id: '',
projectName: '',
projectPlatfor: ''
}]
}]
ffFlag: " ", //1审批通过 其他为驳回
projectNumber: "", //项目编号
projectName: "", //项目名称
dataList: [], //项目下的标准数据
breakdownList: [] //标准下的分解单数据
},
choiceForm: {}, //选择标准清单列表
countryOptions: [], //适用区域下拉框数据
user1: "",
user2: "",
user3: "",
user4: "",
user5: "",
standMap: new Map()
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
},
//确认转办
checkedRole (data) {
checkedTransferRole (data) {
this.assigneeNewLoading = true
changeAssigneeNew({
taskId: this.$route.query.taskIds, // 任务id
@@ -454,33 +349,59 @@ export default {
})
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) {
let routeUrl = this.$router.resolve({
name: "OtherStandardDetails",
params: {
id: item.id,
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({
@@ -488,51 +409,74 @@ export default {
pId: this.pId
}).then(res => {
if (res) {
const processForm = JSON.parse(res.mesg)
this.getFormFieldList(processForm)
const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm);
}
}).catch(e => {
})
})
});
});
},
/**
* @description: 动态表单读取
*/
getFormFieldList (item) {
//动态表单读取
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.dataList = item.dataList
this.listForm.standName = item.standName
this.listForm.standNumber = item.standNumber
this.listForm.id = item.id
this.listForm.qualityEngineerName = item.qualityEngineerName
this.listForm.certifiedEngineerName = item.certifiedEngineerName
this.listForm.responsibleUnit = item.responsibleUnit
this.listForm.responsibleEngineer = item.responsibleEngineer
})
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.dataList = item.dataList;
this.dataList.forEach(item =>{
if(item.children){
item.children.forEach(items =>{
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 () {
if(!this.commentText){
this.$message.warning('请填写审批意见')
}else{
this.listForm.applyUpdUserId = this.dataList[0].distributePersonId
beforeBack() {
if (!this.commentText) {
this.$message.warning("请填写审批意见");
} else {
this.listForm.dlFlag = "2";
this.listForm.commentText = this.commentText;
this.listForm.dataList = this.dataList
this.listForm.fenFlag = '1'
const json = JSON.stringify(this.listForm);
this.$http.post('lawss/activiti/completeTask', {
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message)
this.$router.push('/processCenter')
this.$message.success(res.message);
this.$router.push("/processCenter");
}
}, e => {
});
@@ -540,62 +484,45 @@ export default {
},
//提交事件
handleSubmit() {
this.listForm.applyUpdUserId = this.dataList[0].distributePersonId
this.listForm.dataList = this.dataList
this.listForm.fenFlag = '2'
this.isSubmit = true;
this.listForm.dlFlag = "1";
this.listForm.commentText = this.commentText;
const json = JSON.stringify(this.listForm);
this.isSubmit = true
this.$http.post('lawss/activiti/completeTask', {
this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds,
userId: this.userId,
json: json,
json: json
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message)
this.$router.push('/processCenter')
this.$message.success(res.message);
this.$router.push("/processCenter");
}
this.isSubmit = false
this.isSubmit = false;
}, e => {
});
},
//标准表格选择框改变
selectStandChange(data) {
this.selectList = [];
for (let i = 0; i < data.length; i++) {
this.selectList.push(data[i].id);
}
// 分页
handleCurrentChange(currentPage) {
this.currentPage = currentPage;
},
selectThree() {
},
pageChange(page) {
this.page = page;
this.searchData();
},
pageSizeChange(pageSize) {
this.pageSize = this.$store.getters.userInfo.configContent;
this.searchData();
}
},
computed: {
listNoDataText () {
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
},
listNoDataText() {
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
}
},
mounted() {
this.processTable()
this.getData()
this.processTable();
this.getData();
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/phone';
.phoneXmpgStep5 {
.phoneXmpg2Step12 {
/deep/.van-dialog__content {
min-height: 300px;
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"-->
<!--&gt;办理任务</el-button>-->
<!--临时屏蔽 end-->
<el-button
class="common-button-default"
round
@click="urgeRow"
>催办</el-button>
<!-- <el-button-->
<!-- class="common-button-default"-->
<!-- round-->
<!-- @click="urgeRow"-->
<!-- >催办</el-button>-->
</div>
<div class="flow-list">
<el-table
@@ -452,7 +452,7 @@ export default {
prcType: row.prcType
}
})
}else if (row.taskInfo === '批准'){
}else if (row.taskInfo === '培训'){
this.$router.push({
name: 'bussLibrary11',
query: {
@@ -2184,7 +2184,7 @@ export default {
prcType: row.prcType
}
})
}else if(row.taskInfo === '企标制修订计划整改') {
}else if(row.taskInfo === '重新起草') {
this.$router.push({
name: 'qbzxdjhgkStep1',
query:{
@@ -421,7 +421,7 @@ export default {
verifySarStandard: true,
}
})
}else if (mes.taskInfo === '批准'){
}else if (mes.taskInfo === '培训'){
this.$router.push({
name: 'bussLibrary11',
query: {
@@ -214,7 +214,7 @@
</el-dialog>
<!-- 更新LOG -->
<el-dialog
title="更新LOG"
title="更新记录"
:visible.sync="relateDialog"
class="relateClass"
width="60%"
@@ -115,9 +115,10 @@
v-btn-permission="'d38fea2d0d992615f9e1c4dfb6dc76f3'"
@click="clearAllSearch('standCommonlySearch')">清空
</el-button>
<el-button size="mini" type="primary" class="common-button-primary"
v-btn-permission="'c9cb749aacefc52347f1250d0f98272a'" @click="selectMoreBtn"><i
class="iconfont">&#xe7a5;</i>高级检索
<el-button size="mini" type="primary" class="common-button-default"
v-btn-permission="'c9cb749aacefc52347f1250d0f98272a'" @click="selectMoreBtn">
<!-- <i class="iconfont">&#xe7a5;</i>-->
高级检索
</el-button>
</el-form-item>
</el-form>
@@ -345,29 +346,28 @@
label="收藏" align="center" width="50px"
>
<template slot-scope="scope">
<div
v-if="isPermission('cac1eb379eb8e3b987cbb2e4599adb50,247cebaefa7cf1683092af160af11502,dbaf9df2990a595c8abea28e68b1a681') == 1"
@command="handleCommand"
>
<el-button type="text" v-btn-permission="'cac1eb379eb8e3b987cbb2e4599adb50'"
v-if="scope.row.collectBtn"
@click="handleCommand([scope.row, '收藏'])"
>收藏
</el-button>
<el-button type="text" v-btn-permission="'cac1eb379eb8e3b987cbb2e4599adb50'"
v-else
@click="handleCommand([scope.row, '取消收藏'])"
>取消收藏
</el-button>
<el-button type="text" @click="handleCommand([scope.row, '编辑'])"
v-btn-permission="'247cebaefa7cf1683092af160af11502'">编辑
</el-button>
<el-button type="text" @click="handleCommand([scope.row, '删除']) "
v-btn-permission="'dbaf9df2990a595c8abea28e68b1a681'">删除
</el-button>
</div>
<div v-else>
<!-- <div-->
<!-- v-if="isPermission('cac1eb379eb8e3b987cbb2e4599adb50,247cebaefa7cf1683092af160af11502,dbaf9df2990a595c8abea28e68b1a681') == 1"-->
<!-- @command="handleCommand"-->
<!-- >-->
<!-- <el-button type="text" v-btn-permission="'cac1eb379eb8e3b987cbb2e4599adb50'"-->
<!-- v-if="scope.row.collectBtn"-->
<!-- @click="handleCommand([scope.row, '收藏'])"-->
<!-- >收藏-->
<!-- </el-button>-->
<!-- <el-button type="text" v-btn-permission="'cac1eb379eb8e3b987cbb2e4599adb50'"-->
<!-- v-else-->
<!-- @click="handleCommand([scope.row, '取消收藏'])"-->
<!-- >取消收藏-->
<!-- </el-button>-->
<!-- <el-button type="text" @click="handleCommand([scope.row, '编辑'])"-->
<!-- v-btn-permission="'247cebaefa7cf1683092af160af11502'">编辑-->
<!-- </el-button>-->
<!-- <el-button type="text" @click="handleCommand([scope.row, '删除']) "-->
<!-- v-btn-permission="'dbaf9df2990a595c8abea28e68b1a681'">删除-->
<!-- </el-button>-->
<!-- </div>-->
<div>
<div @click.stop style="display: inline-block">
<!-- <i class="iconfont">&#xe61e;</i>-->
<el-button title="收藏" class="collection-btn" icon="el-icon-star-off"
@@ -597,8 +597,9 @@
prop="CYCVPPSBM"
label-width="150px"
class="add-form-item"
label="关联模块--乘用车VPPS编码"
title="关联模块--乘用车VPPS编码"
>
<template slot="label">关联模块--乘用车VPPS编码</template>
<el-input v-model="sarStandardsInfoEO.CYCVPPSBM" placeholder="选择乘用车VPPS编码"
clearable
@click.native="choiceZRR2('cycvppsbm', '乘用车VPPS', sarStandardsInfoEO.cycvppsbm)"></el-input>
@@ -606,11 +607,12 @@
</template>
<template v-else-if="field.attrField === 'KCCVPPSBM'">
<el-form-item
title="关联模块--卡车VPPS编码"
label="关联模块--卡车VPPS编码"
prop="KCCVPPSBM"
label-width="150px"
class="add-form-item"
>
<template slot="label">关联模块--卡车VPPS编码</template>
<el-input v-model="sarStandardsInfoEO.KCCVPPSBM" placeholder="选择卡车VPPS编码"
clearable
@click.native="choiceZRR3('kccvppsbm', '卡车VPPS', sarStandardsInfoEO.kccvppsbm)"></el-input>
@@ -656,15 +658,16 @@
prop="DYBXH"
label-width="150px"
class="add-form-item"
label="模块结构单元变型号(卡车)"
title="模块结构单元变型号(卡车)"
>
<template slot="label">模块结构单元变型号(卡车)</template>
<el-input v-model="sarStandardsInfoEO.DYBXH" placeholder="选择模块结构单元变型号(卡车)"
clearable
@click.native="choiceZRR4('TRUCK', '模块结构单元', sarStandardsInfoEO.dybxh)"></el-input>
</el-form-item>
</template>
<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
v-if="sarStandardsInfoEO.DYBXH === '' || sarStandardsInfoEO.DYBXH === undefined"
v-model="sarStandardsInfoEO.DYMC = ''"
@@ -684,15 +687,16 @@
prop="DYBXHCAR"
label-width="150px"
class="add-form-item"
label="模块结构单元变型号(乘用车)"
title="模块结构单元变型号(乘用车)"
>
<template slot="label">模块结构单元变型号(乘用车)</template>
<el-input v-model="sarStandardsInfoEO.DYBXHCAR" placeholder="选择模块结构单元变型号(乘用车)"
clearable
@click.native="choiceZRR5('CAR', '模块结构单元(乘用车)', sarStandardsInfoEO.dybxhcar)"></el-input>
</el-form-item>
</template>
<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
v-if="sarStandardsInfoEO.DYBXHCAR === '' || sarStandardsInfoEO.DYBXHCAR === undefined"
v-model="sarStandardsInfoEO.DYMCCAR = ''"
@@ -2059,9 +2063,9 @@
<Role-tree
:is-title="drawerTitle"
:is-visible.sync="modalShowRoleFlag"
@checkedRole="checkedRole2"
:nodeList="nodeList2"
></Role-tree>
@checkedRole="checkedRole2"
/>
<Role-tree
is-title="选择人员信息"
:is-visible.sync="modalshowflagRole"
@@ -4600,6 +4604,9 @@ export default {
formData.endIssueTime = formData.issueTime ? formData.issueTime[1] : null
formData.issueTime = null
this.loading = true
if(formData.CLLX){
formData.applyArctic = formData.CLLX.join(',')
}
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', formData, {
_this: this, loading: 'loading'
}, res => {
@@ -4660,7 +4667,6 @@ export default {
}
}
this.configStandList = res.data.list
console.log(this.configStandList);
this.configTotal = res.data.count
this.selectConfigStand = []
}, e => {
@@ -5816,9 +5822,20 @@ export default {
this.$set(this.textStatusMap, item.value, item.label)
})
},
choiceZRRS(type, title, id) {
this.nodeList = []
this.nodeList.push(id)
choiceZRRS(type, title, nameId) {
this.nodeList2 = []
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.drawerTitle = title
this.modalShowRoleFlag = true
@@ -5890,7 +5907,6 @@ export default {
} else if (this.drawerTitle === '查询责任部门') {
this.advanceSearchMapping['ZRBM'] = nameList
}
},
},
computed: {
@@ -111,7 +111,8 @@
@click="clearAllSearch('standCommonlySearch')">清空
</el-button>
<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-form-item>
</el-form>
@@ -334,30 +335,27 @@
</el-table-column>
<el-table-column fixed="right" v-if="isPermission('f9745194958bc9ed3ee5127459795dbc,e8d690904ee1895dd0d17d9c794fbcd7,b299fa5edb3f3f35badb2adb6bda9f2e')>0" label="收藏" align="center" width="50">
<template slot-scope="scope">
<div v-if="isPermission('f9745194958bc9ed3ee5127459795dbc,e8d690904ee1895dd0d17d9c794fbcd7,b299fa5edb3f3f35badb2adb6bda9f2e') == 1"
@command="handleCommand"
>
<el-button type="text" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'"
v-if="scope.row.collectBtn"
@click="handleCommand([scope.row, '收藏'])"
>收藏
</el-button>
<el-button type="text" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'"
v-else
@click="handleCommand([scope.row, '取消收藏'])"
>取消收藏
</el-button>
<el-button type="text" @click="handleCommand([scope.row, '编辑'])"
v-btn-permission="'e8d690904ee1895dd0d17d9c794fbcd7'">编辑
</el-button>
<el-button type="text" @click="handleCommand([scope.row, '删除']) "
v-btn-permission="'b299fa5edb3f3f35badb2adb6bda9f2e'">删除
</el-button>
</div>
<div v-else>
<!-- <div v-if="isPermission('f9745194958bc9ed3ee5127459795dbc,e8d690904ee1895dd0d17d9c794fbcd7,b299fa5edb3f3f35badb2adb6bda9f2e') == 1"-->
<!-- @command="handleCommand"-->
<!-- >-->
<!-- <el-button type="text" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'"-->
<!-- v-if="scope.row.collectBtn"-->
<!-- @click="handleCommand([scope.row, '收藏'])"-->
<!-- >收藏-->
<!-- </el-button>-->
<!-- <el-button type="text" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'"-->
<!-- v-else-->
<!-- @click="handleCommand([scope.row, '取消收藏'])"-->
<!-- >取消收藏-->
<!-- </el-button>-->
<!-- <el-button type="text" @click="handleCommand([scope.row, '编辑'])"-->
<!-- v-btn-permission="'e8d690904ee1895dd0d17d9c794fbcd7'">编辑-->
<!-- </el-button>-->
<!-- <el-button type="text" @click="handleCommand([scope.row, '删除']) "-->
<!-- v-btn-permission="'b299fa5edb3f3f35badb2adb6bda9f2e'">删除-->
<!-- </el-button>-->
<!-- </div>-->
<div>
<div @click.stop style="display: inline-block">
<el-button title="收藏" class="collection-btn" icon="el-icon-star-off" v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'"
v-if="scope.row.collectBtn"
@@ -370,9 +368,7 @@
>
</el-button>
</div>
</div>
</template>
@@ -387,7 +383,7 @@
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px">
<el-form :inline="true" class="label-input-form search-area">
<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>
<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-if="field.attrField === 'DTBJH' || field.attrField === 'YYBJ' || field.attrField === 'BYYBJ' || field.attrField === 'CBBH' || field.attrField === 'DXBZ'">
<custom-input-for-standards
:config="field"
v-model="sarStandardsInfoEO[field.attrField]"
:disabled="formdisableflag"
@@ -119,18 +119,6 @@
align="center"
label="责任工程师">
</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
prop="actualCloseTime"
width="130"
@@ -194,12 +182,6 @@
<el-form-item class="add-form-item" label="责任工程师:">
<div class="seeItem">{{historySeeForm.dutyEngineer}}</div>
</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="要求关闭时间:">
<div class="seeItem">{{historySeeForm.actualCloseTime ? historySeeForm.actualCloseTime.substring(0, 11) : '-'}}</div>
</el-form-item>
+94 -104
View File
@@ -2416,119 +2416,59 @@ const routes = [
}
},
{
path: '/phoneXmpgStep2',
name: 'phoneXmpgStep2',
component: () => import('@/pages/processCenter/pages/phone/xmpg/step2.vue'),
path: '/phoneBzpgStep2',
name: 'phoneBzpgStep2',
component: () => import('@/pages/processCenter/pages/phone/bzpg/step2.vue'),
meta: {
isBoolean: true,
requireAuth: true,
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',
name: 'phoneXmpgStep5',
component: () => import('@/pages/processCenter/pages/phone/xmpg/step5.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '标准合规评估流程'
}
},
{
path: '/phoneXmpgStep6',
name: 'phoneXmpgStep6',
component: () => import('@/pages/processCenter/pages/phone/xmpg/step6.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '标准合规评估流程'
}
},
{
path: '/phoneXmpgStep7',
name: 'phoneXmpgStep7',
component: () => import('@/pages/processCenter/pages/phone/xmpg/step7.vue'),
meta: {
isBoolean: true,
requireAuth: true,
title: '标准合规评估流程'
}
},
{
path: '/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'),
component: () => import('process/phone/xmpg/step5.vue'),
meta: {
isBoolean: true,
requireAuth: true,
@@ -2835,6 +2775,56 @@ const routes = [
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: '企标制修订流程及企业标准库流程'
}
},
]
},