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

This commit is contained in:
liuhuaizhi
2021-07-22 13:22:50 +08:00
40 changed files with 2319 additions and 940 deletions
+2
View File
@@ -17,3 +17,5 @@ npm run build
### Customize configuration ### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/). See [Configuration Reference](https://cli.vuejs.org/config/).
### test
+89 -106
View File
@@ -3619,23 +3619,6 @@
"upath": "^1.1.1" "upath": "^1.1.1"
} }
}, },
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
"integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
"dev": true,
"optional": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
"integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
"dev": true,
"optional": true
},
"commander": { "commander": {
"version": "2.20.3", "version": "2.20.3",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
@@ -4581,94 +4564,6 @@
} }
} }
}, },
"vue-loader-v16": {
"version": "npm:vue-loader@16.3.0",
"resolved": "https://registry.nlark.com/vue-loader/download/vue-loader-16.3.0.tgz",
"integrity": "sha1-LxleS6D7DiY1ltaDDfF9Gjbok2w=",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
},
"dependencies": {
"ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1618995651629&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz",
"integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
"dev": true,
"optional": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"big.js": {
"version": "5.2.2",
"resolved": "https://registry.nlark.com/big.js/download/big.js-5.2.2.tgz",
"integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=",
"dev": true,
"optional": true
},
"chalk": {
"version": "4.1.1",
"resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.1.tgz",
"integrity": "sha1-yAs/qyi/Y3HmhjMl7uZ+YYt35q0=",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"emojis-list": {
"version": "3.0.0",
"resolved": "https://registry.npm.taobao.org/emojis-list/download/emojis-list-3.0.0.tgz",
"integrity": "sha1-VXBmIEatKeLpFucariYKvf9Pang=",
"dev": true,
"optional": true
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz",
"integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
"dev": true,
"optional": true
},
"json5": {
"version": "2.2.0",
"resolved": "https://registry.npm.taobao.org/json5/download/json5-2.2.0.tgz",
"integrity": "sha1-Lf7+cgxrpSXZ69kJlQ8FFTFsiaM=",
"dev": true,
"optional": true,
"requires": {
"minimist": "^1.2.5"
}
},
"loader-utils": {
"version": "2.0.0",
"resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-2.0.0.tgz",
"integrity": "sha1-5MrOW4FtQloWa18JfhDNErNgZLA=",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
},
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1622293630895&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
"integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
"dev": true,
"optional": true,
"requires": {
"has-flag": "^4.0.0"
}
}
}
},
"vue-style-loader": { "vue-style-loader": {
"version": "4.1.2", "version": "4.1.2",
"resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz", "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz",
@@ -9313,7 +9208,7 @@
}, },
"image-size": { "image-size": {
"version": "0.5.5", "version": "0.5.5",
"resolved": "https://registry.nlark.com/image-size/download/image-size-0.5.5.tgz", "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz",
"integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=",
"dev": true, "dev": true,
"optional": true "optional": true
@@ -13622,6 +13517,94 @@
"resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.22.4.tgz", "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.22.4.tgz",
"integrity": "sha512-XLI5s0AdqMP2Lf4I4CmdmOq8kjb5DDFGR77wAuxCfpEuYSfhTRyyx6MetgZMiL6Lxa0DasjBOiOcciU3NkL3/Q==" "integrity": "sha512-XLI5s0AdqMP2Lf4I4CmdmOq8kjb5DDFGR77wAuxCfpEuYSfhTRyyx6MetgZMiL6Lxa0DasjBOiOcciU3NkL3/Q=="
}, },
"vue-loader-v16": {
"version": "npm:vue-loader@16.3.3",
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.3.3.tgz",
"integrity": "sha512-/1GzCuQ6MRORbC+leKTKoTGtpQt60bYe0gDGEextSteA2OM+v201FPha5jzmjQzVhRcwieZeUvezAtG5a/e5cw==",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
},
"dependencies": {
"ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"optional": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"chalk": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
"integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"optional": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true,
"optional": true
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true,
"optional": true
},
"hash-sum": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz",
"integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==",
"dev": true,
"optional": true
},
"loader-utils": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
"integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
},
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"optional": true,
"requires": {
"has-flag": "^4.0.0"
}
}
}
},
"vue-router": { "vue-router": {
"version": "3.4.0", "version": "3.4.0",
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.4.0.tgz", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.4.0.tgz",
+2
View File
@@ -21,6 +21,7 @@ import AdvancedQuery from './advancedQuery' // 高级查询
import GenerationNumber from './generationNumber' // 生成企标编号组件 import GenerationNumber from './generationNumber' // 生成企标编号组件
import RoleUserTree from './roleUserTree' // 根据部门和角色查询人员 import RoleUserTree from './roleUserTree' // 根据部门和角色查询人员
import DeptRoleTree from './deptRoleTree' // 根据部门查询角色 import DeptRoleTree from './deptRoleTree' // 根据部门查询角色
import RoleTree from './roleTree' // 查询所有机构及人员
import SQTree from './SQTree' import SQTree from './SQTree'
import OrgTable from './OrgTable' import OrgTable from './OrgTable'
@@ -46,6 +47,7 @@ const install = function (Vue) {
Vue.component('DeptRoleTree', DeptRoleTree) Vue.component('DeptRoleTree', DeptRoleTree)
Vue.component('SQTree', SQTree) Vue.component('SQTree', SQTree)
Vue.component('OrgTable', OrgTable) Vue.component('OrgTable', OrgTable)
Vue.component('RoleTree', RoleTree)
} }
export default { export default {
+5 -5
View File
@@ -125,11 +125,11 @@ export default {
// // // title: '本地产品/项目库', // // // title: '本地产品/项目库',
// // // path: '/localProductsOrProjectLibrary' // // // path: '/localProductsOrProjectLibrary'
// // // }, // // // },
// { {
// title: '企业标准库', title: '企业标准库',
// path: '/enterpriseStandardDatabase', path: '/enterpriseStandardDatabase',
// menuId: '3YVZP8R4TC' menuId: '01ed8f752748227777b3572d56ee9ab5'
// }, },
// { // {
// title: '企标制修订计划', // title: '企标制修订计划',
// path: '/enterBSysRevPlanManaLib', // path: '/enterBSysRevPlanManaLib',
+175
View File
@@ -0,0 +1,175 @@
<template>
<div class="roleTree">
<el-drawer
:title="isTitle"
:visible.sync="isVisible2"
:wrapperClosable="false"
@close="handleTreeDrawerCancel"
size="800px">
<el-form
ref="attributeEO"
class="label-input-form"
:inline="true"
>
<el-form-item class="form-item-disabled" style="margin: 10px;">
<el-input
v-model="filterText"
placeholder="请输入姓名"
></el-input>
</el-form-item>
</el-form>
<el-tree
v-if="open1 && isVisible2"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
@check="drawerCheck"
:expand-on-click-node="false"
show-checkbox
ref="tree"
:load="loadNode"
lazy>
</el-tree>
<el-tree
v-if="!open1 && isVisible2"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree"
:data="treeData1"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
@check="drawerCheck"
:expand-on-click-node="false"
default-expand-all
show-checkbox
ref="tree">
</el-tree>
<div id="roleFormButton" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="handleTreeDrawerCancel">取消</el-button>
</div>
<loading style="z-index: 2099;" :loading="treeLoading">导入中...</loading>
</el-drawer>
</div>
</template>
<script>
export default {
name: "roleTree",
props: {
checkBox: { // 单选/多选
type: Boolean,
default: false,
},
isTitle: { // 标题
type: String
},
isVisible: { // drawer开关
type: Boolean,
default: false,
},
nodeList: { // 回显
type: Array,
default: () => {
return []
}
}
},
data () {
return {
roleList: [],
isVisible2: false,
filterText: '',
defaultProps: {
children: 'children',
label: 'name'
},
treeData1: [],
treeData: [],
open1: true,
treeLoading: false,
roleRow: {}
}
},
methods: {
handleTreeDrawerCancel () {
this.filterText = ''
this.isVisible2 = false
},
saveUserInfo () {
this.isVisible2 = false
this.$emit('checkedRole', this.roleList)
},
drawerCheck (data) {
if (this.checkBox) {
// 单选判断
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())
}
},
loadNode(node, resolve) {
if (node.level === 0) {
return resolve(this.treeData);
}
this.getChildren(node, resolve)
},
getChildren (node, resolve) {
this.$http.get('SarInstitution/institution/getNext', {
institutionId: node.key
}, {}, res => {
resolve(res)
})
},
getTree () {
this.treeLoading = true
this.$http.get('SarInstitution/institution/getFirstInstitution', {}, {}, res=> {
this.treeData = res
this.treeLoading = false
})
}
},
watch: {
isVisible (val) {
this.isVisible2 = val
},
isVisible2 (val) {
this.$emit('update:isVisible', val)
},
filterText (val) {
if (val.length) {
this.open1 = false
this.treeLoading = true
this.$http.get('SarInstitution/institution/institutionAndUser', {
userName: val
}, {}, res => {
this.treeData1 = res.data
this.treeLoading = false
})
} else {
this.open1 = true
}
},
},
mounted () {
this.getTree()
}
}
</script>
<style scoped>
</style>
+270
View File
@@ -0,0 +1,270 @@
<template>
<el-drawer
class="org-tree"
:title="drawerTitle"
:visible.sync="modalShowFlag"
:size="width"
:append-to-body=true
:before-close="cancelUserInfo"
>
<el-tree class="common-tree" :style="style" ref="tree" :data="data" :props="defaultProps"
:load="loadNode"
:lazy="lazy"
:show-checkbox="multiple"
:node-key="nodeKey"
:check-strictly="checkStrictly"
:expand-on-click-node="false"
:default-checked-keys="defaultCheckedKeys"
:highlight-current="true"
@node-click="handleNodeClick"
@check-change="handleCheckChange"></el-tree>
<div id="roleFormButton" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancelUserInfo">取消</el-button>
</div>
</el-drawer>
</template>
<script>
export default {
name: "treeSelectNew",
props: {
// 树结构数据
data: {
type: Array,
default () {
return [];
}
},
url: {
type: String,
default () {
return "";
}
},
urlChild: {
type: String,
default () {
return "";
}
},
params: {
type: Object,
default () {
return {};
}
},
defaultProps: {
type: Object,
default () {
return {};
}
},
// 配置是否可多选
multiple: {
type: Boolean,
default () {
return false;
}
},
lazy: {
type: Boolean,
default () {
return false;
}
},
nodeKey: {
type: String,
default () {
return 'id';
}
},
// 显示复选框情况下,是否严格遵循父子不互相关联
checkStrictly: {
type: Boolean,
default () {
return false;
}
},
disabled: {
type: Boolean,
default () {
return false;
}
},
// 默认选中的节点key数组
checkedKeys: {
type: Array,
default () {
return [];
}
},
width: {
type: String,
default () {
return "";
}
},
drawerTitle:{
type: String,
default () {
return '';
}
},
// 配置是否展开
modalShowFlag: {
type: Boolean,
default () {
return false;
}
},
},
data () {
return {
nodeList: [],
defaultCheckedKeys: [],
isShowSelect: false, // 是否显示树状选择器
options: [],
selectedData: [], // 选中的节点
style: 'width:' + this.width + 'px;' + 'height:100%;',
selectStyle: 'width:100%;',
checkedIds: [],
checkedData: [],
};
},
created(){
},
mounted () {
if (this.checkedKeys.length > 0) {
if (this.multiple) {
this.defaultCheckedKeys = this.checkedKeys;
this.getChildByIDSList(this.defaultCheckedKeys);
// this.selectedData = this.checkedKeys.map((item) => {
// var node = this.$refs.tree.getNode(item);
// return node.label;
// });
} else {
const item = this.checkedKeys[0];
this.getChildByIDSList(item);
// this.$refs.tree.setCurrentKey(item);
// var node = this.$refs.tree.getNode(item);
// this.selectedData = node.label;
}
}
},
methods: {
loadNode(node, resolve) {
const that = this;
if (node.level === 0) {
that.loadTreeData(resolve);
}
if (node.level >= 1) {
setTimeout(() => {
this.getChildByList(node.data.id, resolve);
}, 500);
return resolve([]); // 加上这个,防止在该节点没有子节点时一直转圈的问题发生。
}
},
getChildByIDSList( _parentID) { // 获取子节点请求
let params = {ids : _parentID};
this.$http.get(this.urlChild, params, {
_this: this
}, res => {
if(res.data){
this.$emit('popoverHide', this.checkedIds, res.data,false);
}
})
},
getChildByList( _parentID,resolve) { // 获取子节点请求
let params = {ids : _parentID};
this.$http.get(this.urlChild, params, {
_this: this
}, res => {
if(res.data){
resolve(res.data);
}else {
return false;
}
})
},
loadTreeData(resolve) {
// 获取loadtreeData 就是父节点数据,getChildByList就是异步获取子节点数据
this.$http.get(this.url, '', {
_this: this
}, res => {
if(res.data){
resolve(res.data)
}else {
return false;
}
})
},
popoverHide () {
},
// 节点被点击时的回调,返回被点击的节点数据
handleNodeClick (data, node) {
if (!this.multiple) {
let tmpMap = {};
tmpMap.value = node.key;
tmpMap.label = node.label;
this.options = [];
this.options.push(tmpMap);
this.selectedData = node.label;
this.isShowSelect = !this.isShowSelect;
}
},
// 节点选中状态发生变化时的回调
handleCheckChange () {
var checkedKeys = this.$refs.tree.getCheckedKeys(); // 所有被选中的节点的 key 所组成的数组数据
this.options = checkedKeys.map((item) => {
var node = this.$refs.tree.getNode(item); // 所有被选中的节点对应的node
let tmpMap = {};
tmpMap.value = node.key;
tmpMap.label = node.label;
return tmpMap;
});
this.selectedData = this.options.map((item) => {
return item.label;
});
},
saveUserInfo () {
if (this.multiple) {
this.checkedIds = this.$refs.tree.getCheckedKeys(); // 所有被选中的节点的 key 所组成的数组数据
this.checkedData = this.$refs.tree.getCheckedNodes(); // 所有被选中的节点所组成的数组数据
} else {
this.checkedIds = this.$refs.tree.getCurrentKey();
this.checkedData = this.$refs.tree.getCurrentNode();
}
this.$emit('popoverHide', this.checkedIds, this.checkedData,false);
},
cancelUserInfo () {
this.$emit('popoverHide', this.checkedIds, this.checkedData,false);
},
},
watch: {
}
}
</script>
<style lang="less" scoped>
.el-drawer__body{
& > div:first-child{
display: flex;
flex: auto;
flex-direction: column;
}
}
::v-deep .el-drawer__header{
&>span:first-child{
outline: none!important;
}
}
::v-deep .el-drawer{
outline: none!important;
}
</style>
@@ -56,7 +56,7 @@
</p> </p>
<p><label style=" margin-right: 150px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p> <p><label style=" margin-right: 150px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
<p><label style=" margin-right: 76px;">是否纳入认证清单</label><span>{{sarStandardsInfoEO.isRelateAccess ? (sarStandardsInfoEO.isRelateAccess === '1' ? '是' : '否') : '-'}}</span></p> <p><label style=" margin-right: 76px;">是否纳入认证清单</label><span>{{sarStandardsInfoEO.isRelateAccess ? (sarStandardsInfoEO.isRelateAccess === '1' ? '是' : '否') : '-'}}</span></p>
<p v-if="saveStandType === 'INLAND_STAND'"><label style=" margin-right: 150px;">标准体系</label><span>{{ sarStandardsInfoEO.standSystemName || '-' }}</span></p> <p v-if="saveStandType === 'INLAND_STAND'"><label style=" margin-right: 150px;">标准体系</label><span>{{ sarStandardsInfoEO.standSystem || '-' }}</span></p>
<!-- <p><label>文本说明</label><span style="color: #999999">{{ sarStandardsInfoEO.synopsis || '-' }}</span></p>--> <!-- <p><label>文本说明</label><span style="color: #999999">{{ sarStandardsInfoEO.synopsis || '-' }}</span></p>-->
<!-- <p><label>重要度</label><span>{{ sarStandardsInfoEO.isRelateAccess === '1' ? 'A' : 'B'}}</span></p>--> <!-- <p><label>重要度</label><span>{{ sarStandardsInfoEO.isRelateAccess === '1' ? 'A' : 'B'}}</span></p>-->
<!-- <p><label>纳入标准法规清单的国家/地区</label><span>{{ sarStandardsInfoEO.accessCountry || '-' }}</span></p>--> <!-- <p><label>纳入标准法规清单的国家/地区</label><span>{{ sarStandardsInfoEO.accessCountry || '-' }}</span></p>-->
@@ -189,12 +189,12 @@
/> />
<span class="time-text">上传时间{{ dateFormat(file.modifyTime) }}</span> <span class="time-text">上传时间{{ dateFormat(file.modifyTime) }}</span>
</template> </template>
<el-button
@click="showItemsModel(child.attrField)"
class="decomposition-btn"
icon="icon-separate"
>标准分解单</el-button>
</p> </p>
<el-button
@click="showItemsModel(child.attrField)"
class="decomposition-btn"
icon="icon-separate"
>标准分解单</el-button>
</div> </div>
</div> </div>
@@ -281,12 +281,12 @@
<span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span> <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>
</template> </template>
</p> </p>
<!-- <el-button--> <el-button
<!-- v-if="child.attrField === 'FBGBJBD' || child.attrField === 'SSG' || child.attrField === 'ZQYJG' || child.attrField === 'BPG' || child.attrField === 'ZBJBD' || child.attrField === 'CA'"--> v-if="child.attrField === 'FBGBJBD' || child.attrField === 'SSG' || child.attrField === 'ZQYJG' || child.attrField === 'BPG' || child.attrField === 'ZBJBD' || child.attrField === 'CA'"
<!-- @click="showItemsModel(child.attrField)"--> @click="showItemsModel(child.attrField)"
<!-- class="decomposition-btn"--> class="decomposition-btn"
<!-- icon="icon-separate"--> icon="icon-separate"
<!-- >标准分解单2</el-button>--> >标准分解单</el-button>
</div> </div>
</div> </div>
@@ -2023,7 +2023,7 @@ export default {
} }
// 缺少文件 // 缺少文件
if (this.$route.params.pageType === 'INLAND_STAND') { if (this.$route.params.pageType === 'INLAND_STAND') {
if (this.$hasPermission('ZWBGBNTL11')) { if (this.$hasPermission('2d6ab9d465ab73d415194e1ca4313793')) {
this.$http.get('lawss/sarStandFile/queryConvertAtt', { this.$http.get('lawss/sarStandFile/queryConvertAtt', {
attId: attId attId: attId
}, { }, {
@@ -2067,7 +2067,7 @@ export default {
} }
} else { } else {
// 国外在线预览权限 // 国外在线预览权限
if (this.$hasPermission('YfS94QodMK')) { if (this.$hasPermission('ee684b4a9975f5d8a6dfe898c0332f98 ')) {
this.$http.get('lawss/sarStandFile/queryConvertAtt', { this.$http.get('lawss/sarStandFile/queryConvertAtt', {
attId: attId attId: attId
}, { }, {
@@ -53,13 +53,13 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-tooltip class="item" effect="dark" :content="item.collectTitle" placement="top" v-if="item.collectTitle"> <el-tooltip class="item" effect="dark" :content="item.collectTitle" placement="top" v-if="item.collectTitle">
<div class="left-contents">标题{{ item.name }}</div> <div class="left-contents">标题{{ item.collectTitle }}</div>
</el-tooltip> </el-tooltip>
<div v-else> <div v-else>
<div class="left-contents">标题{{ item.name }}</div> <div class="left-contents">标题{{ item.collectTitle }}</div>
</div> </div>
</el-col> </el-col>
<el-col :span="4" :offset="3">创建时间{{getDate(item.createTime)}}</el-col> <el-col :span="4" :offset="3">创建时间{{getDate(item.creationTime)}}</el-col>
</div> </div>
<el-col :span="4"> <el-col :span="4">
<el-button size="mini" @click="cancelStandard(item.id)" style="margin-top: -5px; border: 1px dashed #dcdee2">取消收藏</el-button> <el-button size="mini" @click="cancelStandard(item.id)" style="margin-top: -5px; border: 1px dashed #dcdee2">取消收藏</el-button>
@@ -127,6 +127,7 @@ export default {
this.$http.get('person/personCollect/page', { this.$http.get('person/personCollect/page', {
pageNo: this.page, pageNo: this.page,
pageSize: this.$store.getters.userInfo.configContent, pageSize: this.$store.getters.userInfo.configContent,
userId: this.$store.getters.userInfo.userId,
collectTitle: this.search.name collectTitle: this.search.name
}, { }, {
_this: this, _this: this,
@@ -22,7 +22,7 @@ export default {
}, },
{ {
label:'标准清单发布/更新流程', label:'标准清单发布/更新流程',
value: '6' value: '4'
}, },
{ {
label: '项目合规评估流程', label: '项目合规评估流程',
@@ -154,57 +154,19 @@
@submit="handleSubmit" @submit="handleSubmit"
> >
</ProcessFooter> </ProcessFooter>
<el-drawer <Role-tree
title="选择责任部门对接人" is-title="选择责任部门对接人"
:visible.sync="modalshowflag2" :is-visible.sync="modalshowflag2"
:wrapperClosable="false" @checkedRole="checkedRole2"
size="800px"> :nodeList="nodeList2"
<el-tree ></Role-tree>
v-if="modalshowflag2" <Role-tree
style="height: 100%; overflow: auto;" check-box
node-key="id" :is-title="drawerTitle"
class="filter-tree" :is-visible.sync="modalshowflag"
:data="treeData" @checkedRole="checkedRole"
:props="defaultProps" :nodeList="nodeList"
:default-checked-keys="nodeList2" ></Role-tree>
highlight-current
check-strictly
default-expand-all
:expand-on-click-node="false"
show-checkbox
ref="tree2">
</el-tree>
<div id="roleFormButton2" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo2">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo2">取消</el-button>
</div>
</el-drawer>
<el-drawer
:title="drawerTitle"
:visible.sync="modalshowflag"
:wrapperClosable="false"
size="800px">
<el-tree
v-if="modalshowflag"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
@check="drawerCheck"
default-expand-all
:expand-on-click-node="false"
show-checkbox
ref="tree">
</el-tree>
<div id="roleFormButton" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
</div>
</el-drawer>
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件"> <el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
<el-upload <el-upload
multiple multiple
@@ -236,15 +198,10 @@
name: "bzdyStep1-1", name: "bzdyStep1-1",
data() { data() {
return { return {
commentText: '',
roleRow: {},
nodeList: [], nodeList: [],
nodeList2: [],
commentText: '',
type: '', type: '',
defaultProps: {
children: 'children',
label: 'name'
},
treeData: [], // 人员数据
modalshowflag: false, // drawer开关 modalshowflag: false, // drawer开关
drawerTitle: '', //drawer标题 drawerTitle: '', //drawer标题
textarea: '', // 意见 textarea: '', // 意见
@@ -300,9 +257,7 @@
}, },
fileUrl: 'api/att/attFile/upload', fileUrl: 'api/att/attFile/upload',
fileMadel: false, fileMadel: false,
nodeList2: [],
modalshowflag2: false, modalshowflag2: false,
} }
}, },
components: { components: {
@@ -322,17 +277,10 @@
this.commentText = mes.commentText this.commentText = mes.commentText
}) })
}, },
choiceZRRS () { checkedRole2 (data) {
this.nodeList2 = []
if ( this.roleForm.dockUserList.length > 0) {
this.nodeList2 = this.roleForm.dockUserList.split(',')
}
this.modalshowflag2 = true
},
saveUserInfo2 () {
var idList = '' var idList = ''
var nameList = '' var nameList = ''
this.$refs.tree2.getCheckedNodes().concat(this.$refs.tree2.getHalfCheckedNodes()).forEach( item => { data.forEach( item => {
if (nameList.length > 0) { if (nameList.length > 0) {
nameList += ',' nameList += ','
idList += ',' idList += ','
@@ -342,10 +290,35 @@
}) })
this.roleForm.dockUserList = idList this.roleForm.dockUserList = idList
this.roleForm.dockUserName = nameList this.roleForm.dockUserName = nameList
this.modalshowflag2 = false
}, },
cancleUserInfo2 () { checkedRole (data) {
this.modalshowflag2 = false if (this.type === 'dockUser') {
this.roleForm.dockUser = data[0].id
this.roleForm.dockUserName = data[0].name
} else if (this.type === 'ministerUser') {
this.roleForm.ministerUser = data[0].id
this.roleForm.ministerUserName = data[0].name
} else if (this.type === 'directorUser') {
this.roleForm.directorUser = data[0].id
this.roleForm.directorUserName = data[0].name
} else if (this.type === 'presidentUser') {
this.roleForm.presidentUser = data[0].id
this.roleForm.presidentUserName = data[0].name
}
},
choiceZRRS () {
this.nodeList2 = []
if ( this.roleForm.dockUserList.length > 0) {
this.nodeList2 = this.roleForm.dockUserList.split(',')
}
this.modalshowflag2 = true
},
choiceZRR (type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.type = type
this.drawerTitle = title
this.modalshowflag = true
}, },
// 导入按钮 上传之前的钩子 // 导入按钮 上传之前的钩子
beginImportFile (file) { beginImportFile (file) {
@@ -388,46 +361,6 @@
fileUpload () { fileUpload () {
this.fileMadel = true this.fileMadel = true
}, },
saveUserInfo () {
if (this.type === 'dockUser') {
this.roleForm.dockUser = this.roleRow.id
this.roleForm.dockUserName = this.roleRow.name
} else if (this.type === 'ministerUser') {
this.roleForm.ministerUser = this.roleRow.id
this.roleForm.ministerUserName = this.roleRow.name
} else if (this.type === 'directorUser') {
this.roleForm.directorUser = this.roleRow.id
this.roleForm.directorUserName = this.roleRow.name
} else if (this.type === 'presidentUser') {
this.roleForm.presidentUser = this.roleRow.id
this.roleForm.presidentUserName = this.roleRow.name
}
this.modalshowflag = false
},
cancleUserInfo () {
this.modalshowflag = false
},
drawerCheck (data) {
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
if(getlist.length == 1) {
this.roleRow = getlist[0]
}else {
this.$refs.tree.setCheckedKeys([data.id]);
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
}
},
choiceZRR (type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.type = type
this.drawerTitle = title
this.modalshowflag = true
},
getTree () {
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
this.treeData = res.data
})
},
handleTabs(name) { handleTabs(name) {
this.active = name this.active = name
}, },
@@ -490,7 +423,6 @@
}, },
mounted () { mounted () {
this.getData() this.getData()
this.getTree()
} }
} }
</script> </script>
@@ -154,116 +154,19 @@
@submit="handleSubmit" @submit="handleSubmit"
> >
</ProcessFooter> </ProcessFooter>
<el-drawer <Role-tree
title="选择责任部门对接人" is-title="选择责任部门对接人"
:visible.sync="modalshowflag2" :is-visible.sync="modalshowflag2"
:wrapperClosable="false" @checkedRole="checkedRole2"
size="800px"> :nodeList="nodeList2"
<el-form ></Role-tree>
ref="attributeEO" <Role-tree
class="label-input-form" check-box
:inline="true" :is-title="drawerTitle"
> :is-visible.sync="modalshowflag"
<el-form-item class="form-item-disabled" style="margin: 10px;"> @checkedRole="checkedRole"
<el-input :nodeList="nodeList"
v-model="filterText2" ></Role-tree>
placeholder="请输入姓名"
></el-input>
</el-form-item>
</el-form>
<el-tree
v-if="modalshowflag2 && open2"
style="height: 100%; overflow: auto;"
node-key="id"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList2"
highlight-current
check-strictly
:expand-on-click-node="false"
show-checkbox
ref="tree2"
:load="loadNode"
lazy>
</el-tree>
<el-tree
v-if="modalshowflag2 && !open2"
style="height: 100%; overflow: auto;"
node-key="id"
class="filter-tree"
:data="treeData2"
:props="defaultProps"
:default-checked-keys="nodeList2"
highlight-current
check-strictly
:expand-on-click-node="false"
default-expand-all
show-checkbox
ref="tree2">
</el-tree>
<div id="roleFormButton2" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo2">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo2">取消</el-button>
</div>
<loading style="z-index: 2099;" :loading="treeLoading">导入中...</loading>
</el-drawer>
<el-drawer
:title="drawerTitle"
:visible.sync="modalshowflag"
:wrapperClosable="false"
size="800px">
<el-form
ref="attributeEO"
class="label-input-form"
:inline="true"
>
<el-form-item class="form-item-disabled" style="margin: 10px;">
<el-input
v-model="filterText1"
placeholder="请输入姓名"
></el-input>
</el-form-item>
</el-form>
<el-tree
v-if="modalshowflag && open1"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
@check="drawerCheck"
:expand-on-click-node="false"
show-checkbox
ref="tree"
:load="loadNode"
lazy>
</el-tree>
<el-tree
v-if="modalshowflag && !open1"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree"
:data="treeData1"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
@check="drawerCheck"
:expand-on-click-node="false"
default-expand-all
show-checkbox
ref="tree">
</el-tree>
<div id="roleFormButton" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
</div>
<loading style="z-index: 2099;" :loading="treeLoading">导入中...</loading>
</el-drawer>
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件"> <el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
<el-upload <el-upload
multiple multiple
@@ -295,22 +198,10 @@ export default {
name: "bzdyStep1", name: "bzdyStep1",
data() { data() {
return { return {
treeLoading: false,
treeData2: [],
treeData1: [],
open1: true,
open2: true,
filterText1: '',
filterText2: '',
commentText: '', commentText: '',
roleRow: {},
nodeList: [], nodeList: [],
nodeList2: [],
type: '', type: '',
defaultProps: {
children: 'children',
label: 'name'
},
treeData: [], // 人员数据
modalshowflag: false, // drawer开关 modalshowflag: false, // drawer开关
drawerTitle: '', //drawer标题 drawerTitle: '', //drawer标题
textarea: '', // 意见 textarea: '', // 意见
@@ -366,7 +257,6 @@ export default {
}, },
fileUrl: 'api/att/attFile/upload', fileUrl: 'api/att/attFile/upload',
fileMadel: false, fileMadel: false,
nodeList2: [],
modalshowflag2: false, modalshowflag2: false,
} }
@@ -376,62 +266,11 @@ export default {
ProcessFooter, ProcessFooter,
ProcessTitle ProcessTitle
}, },
watch: {
filterText1 (val) {
if (val.length) {
this.open1 = false
this.treeLoading = true
this.$http.get('SarInstitution/institution/institutionAndUser', {
userName: val
}, {}, res => {
this.treeData1 = res.data
this.treeLoading = false
})
} else {
this.open1 = true
}
},
filterText2 (val) {
if (val.length) {
this.open2 = false
this.treeLoading = true
this.$http.get('SarInstitution/institution/institutionAndUser', {
userName: val
}, {}, res => {
this.treeData2 = res.data
this.treeLoading = false
})
} else {
this.open2 = true
}
},
},
methods: { methods: {
loadNode(node, resolve) { checkedRole2 (data) {
if (node.level === 0) {
return resolve(this.treeData);
}
this.getChildren(node, resolve)
},
getChildren (node, resolve) {
this.$http.get('SarInstitution/institution/getNext', {
institutionId: node.key
}, {}, res => {
resolve(res)
})
},
choiceZRRS () {
this.nodeList2 = []
if ( this.roleForm.dockUserList.length > 0) {
this.nodeList2 = this.roleForm.dockUserList.split(',')
}
this.filterText2 = ''
this.modalshowflag2 = true
},
saveUserInfo2 () {
var idList = '' var idList = ''
var nameList = '' var nameList = ''
this.$refs.tree2.getCheckedNodes().concat(this.$refs.tree2.getHalfCheckedNodes()).forEach( item => { data.forEach( item => {
if (nameList.length > 0) { if (nameList.length > 0) {
nameList += ',' nameList += ','
idList += ',' idList += ','
@@ -441,10 +280,35 @@ export default {
}) })
this.roleForm.dockUserList = idList this.roleForm.dockUserList = idList
this.roleForm.dockUserName = nameList this.roleForm.dockUserName = nameList
this.modalshowflag2 = false
}, },
cancleUserInfo2 () { checkedRole (data) {
this.modalshowflag2 = false if (this.type === 'dockUser') {
this.roleForm.dockUser = data[0].id
this.roleForm.dockUserName = data[0].name
} else if (this.type === 'ministerUser') {
this.roleForm.ministerUser = data[0].id
this.roleForm.ministerUserName = data[0].name
} else if (this.type === 'directorUser') {
this.roleForm.directorUser = data[0].id
this.roleForm.directorUserName = data[0].name
} else if (this.type === 'presidentUser') {
this.roleForm.presidentUser = data[0].id
this.roleForm.presidentUserName = data[0].name
}
},
choiceZRRS () {
this.nodeList2 = []
if ( this.roleForm.dockUserList.length > 0) {
this.nodeList2 = this.roleForm.dockUserList.split(',')
}
this.modalshowflag2 = true
},
choiceZRR (type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.type = type
this.drawerTitle = title
this.modalshowflag = true
}, },
// 导入按钮 上传之前的钩子 // 导入按钮 上传之前的钩子
beginImportFile (file) { beginImportFile (file) {
@@ -487,49 +351,6 @@ export default {
fileUpload () { fileUpload () {
this.fileMadel = true this.fileMadel = true
}, },
saveUserInfo () {
if (this.type === 'dockUser') {
this.roleForm.dockUser = this.roleRow.id
this.roleForm.dockUserName = this.roleRow.name
} else if (this.type === 'ministerUser') {
this.roleForm.ministerUser = this.roleRow.id
this.roleForm.ministerUserName = this.roleRow.name
} else if (this.type === 'directorUser') {
this.roleForm.directorUser = this.roleRow.id
this.roleForm.directorUserName = this.roleRow.name
} else if (this.type === 'presidentUser') {
this.roleForm.presidentUser = this.roleRow.id
this.roleForm.presidentUserName = this.roleRow.name
}
this.modalshowflag = false
},
cancleUserInfo () {
this.modalshowflag = false
},
drawerCheck (data) {
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
if(getlist.length == 1) {
this.roleRow = getlist[0]
}else {
this.$refs.tree.setCheckedKeys([data.id]);
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
}
},
choiceZRR (type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.type = type
this.drawerTitle = title
this.filterText1 = ''
this.modalshowflag = true
},
getTree () {
this.treeLoading = true
this.$http.get('SarInstitution/institution/getFirstInstitution', {}, {}, res=> {
this.treeData = res
this.treeLoading = false
})
},
handleTabs(name) { handleTabs(name) {
this.active = name this.active = name
}, },
@@ -591,9 +412,7 @@ export default {
}) })
} }
}, },
mounted () { mounted () {}
this.getTree()
}
} }
</script> </script>
@@ -82,31 +82,12 @@
@submit="handleSubmit" @submit="handleSubmit"
> >
</ProcessFooter> </ProcessFooter>
<el-drawer <Role-tree
title="选择责任人" is-title="选择责任部门对接人"
:visible.sync="modalshowflag" :is-visible.sync="modalshowflag2"
:wrapperClosable="false" @checkedRole="checkedRole2"
size="800px"> :nodeList="nodeList2"
<el-tree ></Role-tree>
v-if="modalshowflag"
style="height: 100%; overflow: auto;"
node-key="id"
class="filter-tree"
:data="treeData"
:props="defaultProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
default-expand-all
:expand-on-click-node="false"
show-checkbox
ref="tree">
</el-tree>
<div id="roleFormButton" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
</div>
</el-drawer>
</div> </div>
</template> </template>
@@ -123,15 +104,9 @@
commentText: '', commentText: '',
taskIds: this.$route.query.taskIds, taskIds: this.$route.query.taskIds,
pId: this.$route.query.prcId, pId: this.$route.query.prcId,
roleRow: {}, nodeList2: [],
nodeList: [],
type: '', type: '',
defaultProps: { modalshowflag2: false, // drawer开关
children: 'children',
label: 'name'
},
treeData: [], // 人员数据
modalshowflag: false, // drawer开关
drawerTitle: '', //drawer标题 drawerTitle: '', //drawer标题
textarea: '', // 意见 textarea: '', // 意见
ListModel: false, // 新增编辑抽屉开关 ListModel: false, // 新增编辑抽屉开关
@@ -159,13 +134,10 @@
ProcessTitle ProcessTitle
}, },
methods: { methods: {
updateFile () { checkedRole2 (data) {
window.location.href = '/api/att/attFile/downloadFile?fileId=' + this.form.model
},
saveUserInfo () {
var idList = '' var idList = ''
var nameList = '' var nameList = ''
this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes()).forEach( item => { data.forEach( item => {
if (nameList.length > 0) { if (nameList.length > 0) {
nameList += ',' nameList += ','
idList += ',' idList += ','
@@ -175,22 +147,16 @@
}) })
this.form.responUserList = idList this.form.responUserList = idList
this.form.responUserListName = nameList this.form.responUserListName = nameList
this.modalshowflag = false
}, },
cancleUserInfo () { updateFile () {
this.modalshowflag = false window.location.href = '/api/att/attFile/downloadFile?fileId=' + this.form.model
}, },
choiceZRR () { choiceZRR () {
this.nodeList = [] this.nodeList2 = []
if (this.form.responUserList.length > 0) { if ( this.form.responUserList.length > 0) {
this.nodeList = this.form.responUserList.split(',') this.nodeList2 = this.form.responUserList.split(',')
} }
this.modalshowflag = true this.modalshowflag2 = true
},
getTree () {
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res=> {
this.treeData = res.data
})
}, },
handleTabs(name) { handleTabs(name) {
this.active = name this.active = name
@@ -238,7 +204,6 @@
}, },
}, },
mounted () { mounted () {
this.getTree()
this.getData() this.getData()
} }
} }
@@ -1064,6 +1064,8 @@ export default {
//提交事件 //提交事件
handleSubmit() { handleSubmit() {
let json = this.listForm; let json = this.listForm;
console.log(this.fileInfoList);
console.log(this.fileInfoList.join(','));
this.listForm.fileId = this.fileInfoList.join(',') this.listForm.fileId = this.fileInfoList.join(',')
this.listForm.fileName = this.fileListName.join(',') this.listForm.fileName = this.fileListName.join(',')
// let json = Object.assign(this.listForm, this.roleForm) // let json = Object.assign(this.listForm, this.roleForm)
@@ -1110,9 +1112,11 @@ export default {
// 删除上传的文件 // 删除上传的文件
delFileInfo(file, fileList) { delFileInfo(file, fileList) {
this.fileInfoList = fileList this.fileInfoList = fileList
let middle = []
fileList.forEach(item => { fileList.forEach(item => {
this.fileListName = item.name middle.push(item.name)
}) })
this.fileListName = middle
}, },
fileUpload () { fileUpload () {
this.fileMadel = true this.fileMadel = true
@@ -1120,12 +1124,16 @@ export default {
// 上传文件成功回调 // 上传文件成功回调
uploadBackSuccess (res, file, fileList) { uploadBackSuccess (res, file, fileList) {
if (res.ok) { if (res.ok) {
let middle = []
fileList.forEach(item => { fileList.forEach(item => {
this.fileListName = item.name middle.push(item.name)
}) })
this.fileInfoList = fileList this.fileListName = middle
this.fileInfoList[this.fileInfoList.length - 1].id = res.data.id let files = []
this.$message.success('上传成功') this.flielist
// this.fileInfoList = fileList
// this.fileInfoList[this.fileInfoList.length - 1].id = res.data.id
// this.$message.success('上传成功')
} else { } else {
this.$message.error(res.message) this.$message.error(res.message)
fileList.pop() fileList.pop()
@@ -705,20 +705,20 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="被引用标准" prop="byybj" class="add-form-item form-item-disabled"> <!-- <el-form-item label="被引用标准" prop="byybj" class="add-form-item form-item-disabled">-->
<el-input <!-- <el-input-->
v-model="form.byybj" <!-- v-model="form.byybj"-->
placeholder="请输入被引用标准" <!-- placeholder="请输入被引用标准"-->
clearable <!-- clearable-->
></el-input> <!-- ></el-input>-->
<el-button <!-- <el-button-->
type="primary" <!-- type="primary"-->
class="common-button-primary" <!-- class="common-button-primary"-->
size="mini" <!-- size="mini"-->
style="position:absolute;top: 10px;right: 0;" <!-- style="position:absolute;top: 10px;right: 0;"-->
@click="selectLaws('byybj'),config.attrName = '被引用标准'" <!-- @click="selectLaws('byybj'),config.attrName = '被引用标准'"-->
>{{'手动查找'}}</el-button> <!-- >{{'手动查找'}}</el-button>-->
</el-form-item> <!-- </el-form-item>-->
<!-- <el-form-item v-if="form.standInData === '0'" label="参会记录" prop="chjl" class="add-form-item form-item-disabled">--> <!-- <el-form-item v-if="form.standInData === '0'" label="参会记录" prop="chjl" class="add-form-item form-item-disabled">-->
<!-- <el-input--> <!-- <el-input-->
<!-- v-model="form.chjl"--> <!-- v-model="form.chjl"-->
@@ -1248,15 +1248,15 @@
// 适用范围 // 适用范围
txlb: '', // 体系类别 txlb: '', // 体系类别
gkdw: '', // 归口管理部门 gkdw: '', // 归口管理部门
qcdw: [], // 起草单位 qcdw: '', // 起草单位
wssmr: [], // 我司署名人 wssmr: '', // 我司署名人
cysd: '', // 我司参与深度 cysd: '', // 我司参与深度
cllx: [], // 适用车型 cllx: '', // 适用车型
nylx: [],// 能源类型 nylx: '',// 能源类型
sycpx: [],// 适用产品线 sycpx: '',// 适用产品线
syrz: [], // 适用认证 syrz: '', // 适用认证
zrbm: [], // 责任部门 zrbm: '', // 责任部门
zrgcs: [], // 责任工程师 zrgcs: '', // 责任工程师
cycvppsbm: '', // 关联模块--乘用车VPPS编码 cycvppsbm: '', // 关联模块--乘用车VPPS编码
cycvppscn: '', // 关联模块--乘用车vpps中文名称 cycvppscn: '', // 关联模块--乘用车vpps中文名称
kccvppsbm: '', // 关联模块--卡车VPPS编码 kccvppsbm: '', // 关联模块--卡车VPPS编码
@@ -1452,15 +1452,15 @@
// 适用范围 // 适用范围
txlb: '', // 体系类别 txlb: '', // 体系类别
gkdw: '', // 归口管理部门 gkdw: '', // 归口管理部门
qcdw: [], // 起草单位 qcdw: '', // 起草单位
wssmr: [], // 我司署名人 wssmr: '', // 我司署名人
cysd: '', // 我司参与深度 cysd: '', // 我司参与深度
cllx: [], // 适用车型 cllx: '', // 适用车型
nylx: [],// 能源类型 nylx: '',// 能源类型
sycpx: [],// 适用产品线 sycpx: '',// 适用产品线
syrz: [], // 适用认证 syrz: '', // 适用认证
zrbm: [], // 责任部门 zrbm: '', // 责任部门
zrgcs: [], // 责任工程师 zrgcs: '', // 责任工程师
cycvppsbm: '', // 关联模块--乘用车VPPS编码 cycvppsbm: '', // 关联模块--乘用车VPPS编码
cycvppscn: '', // 关联模块--乘用车vpps中文名称 cycvppscn: '', // 关联模块--乘用车vpps中文名称
kccvppsbm: '', // 关联模块--卡车VPPS编码 kccvppsbm: '', // 关联模块--卡车VPPS编码
@@ -119,13 +119,7 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item v-if="form.standInData === '0'" label="标准体系" prop="standSystem" class="add-form-item form-item-disabled"> <el-form-item v-if="form.standInData === '0'" label="标准体系" prop="standSystem" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.standSystem" disabled></el-input>
:key="key"
width = "340"
:disabled="false"
:data="standSystemOptions"
:defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys"
:nodeKey="nodeKey" @popoverHide="popoverHide"></tree-select>
</el-form-item> </el-form-item>
<el-form-item v-if="form.standInData === '1'" label="标签" prop="gxhbq" class="add-form-item form-item-disabled"> <el-form-item v-if="form.standInData === '1'" label="标签" prop="gxhbq" class="add-form-item form-item-disabled">
<el-input <el-input
@@ -326,31 +320,13 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="关联模块--乘用车VPPS编码" prop="cycvppsbm" class="add-form-item form-item-disabled"> <el-form-item label="关联模块--乘用车VPPS编码" prop="cycvppsbm" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.cycvppsbm" disabled></el-input>
:key="key1"
:disabled="true"
width = "340"
:data="busVppsOptions"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select>
</el-form-item> </el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" prop="kccvppsbm" class="add-form-item form-item-disabled"> <el-form-item label="关联模块--卡车VPPS编码" prop="kccvppsbm" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.kccvppsbm" disabled></el-input>
:key="key2"
:disabled="true"
width = "340"
:data="busVppsOptions"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs"></tree-select>
</el-form-item> </el-form-item>
<el-form-item label="模块结构单元变型号" prop="dybxh" class="add-form-item form-item-disabled"> <el-form-item label="模块结构单元变型号" prop="dybxh" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.dybxh" disabled></el-input>
:key="key3"
width = "340"
:disabled="true"
:data="modelOptions"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel"></tree-select>
</el-form-item> </el-form-item>
<el-form-item v-if="form.standInData === '0'" label="归口管理部门" prop="gkdw" class="add-form-item form-item-disabled"> <el-form-item v-if="form.standInData === '0'" label="归口管理部门" prop="gkdw" class="add-form-item form-item-disabled">
<el-input <el-input
@@ -118,13 +118,7 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item v-if="form.standInData === '0'" label="标准体系" prop="standSystem" class="add-form-item form-item-disabled"> <el-form-item v-if="form.standInData === '0'" label="标准体系" prop="standSystem" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.standSystem" disabled></el-input>
:key="key"
width = "340"
:disabled="true"
:data="standSystemOptions"
:defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys"
:nodeKey="nodeKey" @popoverHide="popoverHide"></tree-select>
</el-form-item> </el-form-item>
<el-form-item v-if="form.standInData === '1'" label="标签" prop="gxhbq" class="add-form-item form-item-disabled"> <el-form-item v-if="form.standInData === '1'" label="标签" prop="gxhbq" class="add-form-item form-item-disabled">
<el-input <el-input
@@ -319,31 +313,13 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="关联模块--乘用车VPPS编码" prop="cycvppsbm" class="add-form-item form-item-disabled"> <el-form-item label="关联模块--乘用车VPPS编码" prop="cycvppsbm" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.cycvppsbm" disabled></el-input>
:key="key1"
:disabled="true"
width = "340"
:data="busVppsOptions"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select>
</el-form-item> </el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" prop="kccvppsbm" class="add-form-item form-item-disabled"> <el-form-item label="关联模块--卡车VPPS编码" prop="kccvppsbm" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.kccvppsbm" disabled></el-input>
:key="key2"
:disabled="true"
width = "340"
:data="busVppsOptions"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs"></tree-select>
</el-form-item> </el-form-item>
<el-form-item label="模块结构单元变型号" prop="dybxh" class="add-form-item form-item-disabled"> <el-form-item label="模块结构单元变型号" prop="dybxh" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.dybxh" disabled></el-input>
:key="key3"
width = "340"
:disabled="true"
:data="modelOptions"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel"></tree-select>
</el-form-item> </el-form-item>
<el-form-item v-if="form.standInData === '0'" label="归口管理部门" prop="gkdw" class="add-form-item form-item-disabled"> <el-form-item v-if="form.standInData === '0'" label="归口管理部门" prop="gkdw" class="add-form-item form-item-disabled">
<el-input <el-input
@@ -114,13 +114,17 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item v-if="form.standInData === '0'" label="标准体系" prop="standSystem" class="add-form-item form-item-disabled"> <el-form-item v-if="form.standInData === '0'" label="标准体系" prop="standSystem" class="add-form-item form-item-disabled">
<tree-select v-if="treeStatus" <el-input v-model="form.standSystem" placeholder="选择标准体系" @click.native="choiceZRR1('standSystem', '标准体系', form.standSystem)"></el-input>
:key="key" <tree-select-new
width = "340" :key="key"
:disabled="false" :multiple=false
:lazy=false
:modalShowFlag="modalShowFlag1"
:drawerTitle="drawerTitle"
width = "800"
:data="standSystemOptions" :data="standSystemOptions"
:defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys" :defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys"
:nodeKey="nodeKey" @popoverHide="popoverHide"></tree-select> :nodeKey="nodeKey" @popoverHide="popoverHide"></tree-select-new>
</el-form-item> </el-form-item>
<el-form-item v-if="form.standInData === '1'" label="标签" prop="gxhbq" class="add-form-item form-item-disabled"> <el-form-item v-if="form.standInData === '1'" label="标签" prop="gxhbq" class="add-form-item form-item-disabled">
<el-input <el-input
@@ -488,28 +492,46 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="关联模块--乘用车VPPS编码" prop="cycvppsbm" class="add-form-item form-item-disabled"> <el-form-item label="关联模块--乘用车VPPS编码" prop="cycvppsbm" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.cycvppsbm" placeholder="选择乘用车VPPS编码" @click.native="choiceZRR2('cycvppsbm', '乘用车VPPS', form.cycvppsbm)"></el-input>
<tree-select-new
width = "800"
:key="key1" :key="key1"
width = "340" :lazy=true
:data="busVppsOptions" :multiple=false
:modalShowFlag="modalShowFlag2"
:drawerTitle="drawerTitle"
:url="url"
:urlChild="urlChild"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1" :defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select> :nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select-new>
</el-form-item> </el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" prop="kccvppsbm" class="add-form-item form-item-disabled"> <el-form-item label="关联模块--卡车VPPS编码" prop="kccvppsbm" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.kccvppsbm" placeholder="选择卡车VPPS编码" @click.native="choiceZRR3('kccvppsbm', '卡车VPPS', form.kccvppsbm)"></el-input>
<tree-select-new
width = "800"
:key="key2" :key="key2"
width = "340" :lazy=true
:data="busVppsOptions" :multiple=false
:modalShowFlag="modalShowFlag3"
:drawerTitle="drawerTitle"
:url="url"
:urlChild="urlChild"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2" :defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs"></tree-select> :nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs"></tree-select-new>
</el-form-item> </el-form-item>
<el-form-item label="模块结构单元变型号" prop="dybxh" class="add-form-item form-item-disabled"> <el-form-item label="模块结构单元变型号" prop="dybxh" class="add-form-item form-item-disabled">
<tree-select <el-input v-model="form.dybxh" placeholder="选择模块结构单元变型号" @click.native="choiceZRR4('dybxh', '模块结构单元', form.dybxh)"></el-input>
<tree-select-new
width = "800"
:key="key3" :key="key3"
width = "340" :lazy=true
:data="modelOptions" :multiple=false
:modalShowFlag="modalShowFlag4"
:drawerTitle="drawerTitle"
:url="url"
:urlChild="urlChild"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3" :defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel"></tree-select> :nodeKey="nodeKeyModel" @popoverHide="popoverHideModel"></tree-select-new>
</el-form-item> </el-form-item>
<el-form-item v-if="form.standInData === '0'" label="归口管理部门" prop="gkdw" class="add-form-item form-item-disabled"> <el-form-item v-if="form.standInData === '0'" label="归口管理部门" prop="gkdw" class="add-form-item form-item-disabled">
<el-input <el-input
@@ -992,9 +1014,17 @@ import ProcessFooter from '../../components/ProcessFooter'
import ProcessTitle from '../../components/ProcessTitle' import ProcessTitle from '../../components/ProcessTitle'
import {inboundLiaisonDetail,processCreateStand} from 'api/process' import {inboundLiaisonDetail,processCreateStand} from 'api/process'
import TreeSelect from '@/components/treeSelect/treeSelect.vue'; import TreeSelect from '@/components/treeSelect/treeSelect.vue';
import TreeSelectNew from '@/components/treeSelect/treeSelectNew.vue';
export default { export default {
name: "bzrkStep4", name: "bzrkStep4",
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle,
TreeSelect,
TreeSelectNew
},
data () { data () {
return { return {
activeName:'1', activeName:'1',
@@ -1034,6 +1064,13 @@ export default {
defaultCheckedKeys1: [], defaultCheckedKeys1: [],
defaultCheckedKeys2: [], defaultCheckedKeys2: [],
defaultCheckedKeys3: [], defaultCheckedKeys3: [],
modalShowFlag1: false, // drawer开关
modalShowFlag2: false, // drawer开关
modalShowFlag3: false, // drawer开关
modalShowFlag4: false, // drawer开关
url:'',
urlChild:'',
drawerTitle: '', //drawer标题
treeStatus:false, treeStatus:false,
fileUrl: 'api/att/attFile/upload', fileUrl: 'api/att/attFile/upload',
fileMadel: false, fileMadel: false,
@@ -1200,18 +1237,44 @@ export default {
prcName : this.$route.query.prcName, prcName : this.$route.query.prcName,
} }
}, },
components: {
ProcessHeader,
ProcessFooter,
ProcessTitle,
TreeSelect
},
computed: { computed: {
listNoDataText () { listNoDataText () {
return this.processType === 1 ? '暂无待办流程' : '暂无已办流程' return this.processType === 1 ? '暂无待办流程' : '暂无已办流程'
}, },
}, },
methods: { methods: {
choiceZRR1 (type, title, id) {
this.drawerTitle = title
this.modalShowFlag1 = true
this.key++
},
choiceZRR2 (type, title, id) {
this.drawerTitle = title
this.modalShowFlag2 = true
this.url = ''
this.urlChild = ''
this.url="sarVppsTree/list"
this.urlChild="sarVppsTree/childByList"
this.key1++
},
choiceZRR3 (type, title, id) {
this.drawerTitle = title
this.modalShowFlag3 = true
this.url = ''
this.urlChild = ''
this.url="sarVppsTree/list"
this.urlChild="sarVppsTree/childByList"
this.key2++
},
choiceZRR4 (type, title, id) {
this.drawerTitle = title
this.modalShowFlag4 = true
this.url = ''
this.urlChild = ''
this.url="sarModelTree/list"
this.urlChild="sarModelTree/childByList"
this.key3++
},
busVsFunc(){ busVsFunc(){
this.$http.get('sarVppsTree/list', '', { this.$http.get('sarVppsTree/list', '', {
_this: this _this: this
@@ -1464,29 +1527,51 @@ export default {
this.fileMadel = true this.fileMadel = true
this.fileType = type; this.fileType = type;
}, },
popoverHide (checkedIds, checkedData) { popoverHide (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData) { if(checkedData) {
this.form.standSystem = checkedData.id if(checkedData.length > 0){
this.form.standSystemName = checkedData.menuName this.form.standSystem = checkedData.map(item => item.menuName).join(",")
}else {
this.form.standSystem = checkedData.menuName
}
} }
this.modalShowFlag1 = false
}, },
popoverHideBusVs (checkedIds, checkedData) { popoverHideBusVs (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData){ if(checkedData) {
this.form.cycvppsbm = checkedData.code if(checkedData.length > 0){
this.form.cycvppscn = checkedData.chineseName this.form.cycvppsbm = checkedData.map(item => item.code).join(",")
this.form.cycvppscn = checkedData.map(item => item.chineseName).join(",")
}else {
this.form.cycvppsbm = checkedData.code
this.form.cycvppscn = checkedData.chineseName
}
} }
this.modalShowFlag2 = false
}, },
popoverHideCarVs (checkedIds, checkedData) { popoverHideCarVs (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData){ if(checkedData) {
this.form.kccvppsbm = checkedData.code if(checkedData.length > 0){
this.form.kccvppscn = checkedData.chineseName this.form.kccvppsbm = checkedData.map(item => item.code).join(",")
this.form.kccvppscn = checkedData.map(item => item.chineseName).join(",")
}else {
this.form.kccvppsbm = checkedData.code
this.form.kccvppscn = checkedData.chineseName
}
} }
this.modalShowFlag3 = false
}, },
popoverHideModel (checkedIds, checkedData) { popoverHideModel (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData){ if(checkedData) {
this.form.dybxh = checkedData.model if(checkedData.length > 0){
this.form.dymc = checkedData.name this.form.dybxh = checkedData.map(item => item.model).join(",")
this.form.dymc = checkedData.map(item => item.name).join(",")
}else {
this.form.dybxh = checkedData.model
this.form.dymc = checkedData.name
}
} }
this.modalShowFlag4 = false
}, },
processTable () { processTable () {
this.$http.get('lawss/activiti/get_list_by_instance', { this.$http.get('lawss/activiti/get_list_by_instance', {
@@ -111,7 +111,7 @@
</div> </div>
<div class="content" v-show="active === '3'"> <div class="content" v-show="active === '3'">
<div class="flow-list"> <div class="flow-list" style="height: 100%">
<el-table <el-table
height="100%" height="100%"
ref="selection" ref="selection"
@@ -120,22 +120,56 @@
label="落实人"> label="落实人">
<template slot-scope="scope,text" v-if="showColumn"> <template slot-scope="scope,text" v-if="showColumn">
<div> <div>
<div @click="choiceZRR(scope,'implementer', '选择落实人', roleForm.implementer)"> <div @click="choiceZRRS(scope)">
{{ listForm.breakdownList[scope.$index].implementer == null ? "请选择落实人" : listForm.breakdownList[scope.$index].implementer {{ listForm.breakdownList[scope.$index].implementer == null ? "请选择落实人" : listForm.breakdownList[scope.$index].implementer
}} }}
</div> </div>
<!-- <div @click="choiceZRR(scope,'implementer', '选择落实人', roleForm.implementer)">-->
<!-- {{ listForm.breakdownList[scope.$index].implementer == null ? "请选择落实人" : listForm.breakdownList[scope.$index].implementer-->
<!-- }}-->
<!-- </div>-->
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<!-- 选择责任人--> <!-- 选择责任人-->
<!-- <el-drawer-->
<!-- :title="drawerTitle"-->
<!-- :visible.sync="modalshowflag"-->
<!-- :wrapperClosable="false"-->
<!-- size="800px">-->
<!-- <el-tree-->
<!-- v-if="modalshowflag"-->
<!-- style="height: 100%; overflow: auto;"-->
<!-- node-key="id"-->
<!-- class="filter-tree"-->
<!-- :data="treeData"-->
<!-- :props="defaultProps"-->
<!-- :default-checked-keys="nodeList"-->
<!-- highlight-current-->
<!-- check-strictly-->
<!-- @check="drawerCheck"-->
<!-- default-expand-all-->
<!-- :expand-on-click-node="false"-->
<!-- show-checkbox-->
<!-- ref="tree">-->
<!-- </el-tree>-->
<!-- <div id="roleFormButton" class="demo-drawer-footer">-->
<!-- <el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary"-->
<!-- @click="saveUserInfo">-->
<!-- 确定-->
<!-- </el-button>-->
<!-- <el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消-->
<!-- </el-button>-->
<!-- </div>-->
<!-- </el-drawer>-->
<el-drawer <el-drawer
:title="drawerTitle" title="选择责任部门对接人"
:visible.sync="modalshowflag" :visible.sync="modalshowflag2"
:wrapperClosable="false" :wrapperClosable="false"
size="800px"> size="800px">
<el-tree <el-tree
v-if="modalshowflag" v-if="modalshowflag2"
style="height: 100%; overflow: auto;" style="height: 100%; overflow: auto;"
node-key="id" node-key="id"
class="filter-tree" class="filter-tree"
@@ -144,26 +178,25 @@
:default-checked-keys="nodeList" :default-checked-keys="nodeList"
highlight-current highlight-current
check-strictly check-strictly
@check="drawerCheck"
default-expand-all default-expand-all
:expand-on-click-node="false" :expand-on-click-node="false"
show-checkbox show-checkbox
ref="tree"> ref="tree2">
</el-tree> </el-tree>
<div id="roleFormButton" class="demo-drawer-footer"> <div id="roleFormButton2" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" <el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary"
@click="saveUserInfo"> @click="saveUserInfo2">确定
确定
</el-button> </el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消 <el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo2">取消
</el-button> </el-button>
</div> </div>
</el-drawer> </el-drawer>
</div> </div>
</div> </div>
<div class="content" v-show="active === '3'"> <div class="content" v-show="active === '3'">
<div class="flow-list"> <div class="flow-list" style="height: 100%">
<el-table <el-table
height="100%" height="100%"
ref="selection" ref="selection"
@@ -260,6 +293,7 @@ export default {
showColumn: true, showColumn: true,
drawerTitle: "", //drawer标题 drawerTitle: "", //drawer标题
modalshowflag: false, // drawer开关 modalshowflag: false, // drawer开关
modalshowflag2: false,
treeData: [], // 人员数据 treeData: [], // 人员数据
nodeList: [], nodeList: [],
defaultProps: { defaultProps: {
@@ -296,6 +330,7 @@ export default {
qualityEngineer: "", //质量工程师 qualityEngineer: "", //质量工程师
breakdownList: [{ //分解单数据 breakdownList: [{ //分解单数据
implementer: "", implementer: "",
implementerId:'',
applyArctic: "", applyArctic: "",
busStandCover: "", busStandCover: "",
claimType: "", claimType: "",
@@ -308,6 +343,7 @@ export default {
}], }],
dataList: [{ dataList: [{
implementer: "", implementer: "",
implementerId:'',
projectLine: "", //产品线 projectLine: "", //产品线
uname: "",//产品线责任人 uname: "",//产品线责任人
distributePerson: "", //分发责任人 distributePerson: "", //分发责任人
@@ -331,7 +367,8 @@ export default {
}] }]
}, },
roleForm: { roleForm: {
implementer: "" implementer: "",
implementerId: "",
}, },
choiceForm: {}, //选择标准清单列表 choiceForm: {}, //选择标准清单列表
user1: "", user1: "",
@@ -374,6 +411,11 @@ export default {
}); });
}); });
}, },
createItemId() {
return Number(Math.random().toString().substr(3,18) + Date.now()).toString(36);
},
/** /**
* @description: 动态表单读取 * @description: 动态表单读取
*/ */
@@ -387,7 +429,7 @@ export default {
for (let i = 0; i < item.pepdtos.length; i++) { for (let i = 0; i < item.pepdtos.length; i++) {
for (let j = 0; j < item.pepdtos[i].breakdownList.length; j++) { for (let j = 0; j < item.pepdtos[i].breakdownList.length; j++) {
this.listForm.breakdownList.push({ this.listForm.breakdownList.push({
itemId: new Date().getTime(), itemId: this.createItemId(),
itemsName: item.pepdtos[i].breakdownList[j].itemsName, itemsName: item.pepdtos[i].breakdownList[j].itemsName,
itemNum: item.pepdtos[i].breakdownList[j].itemsNum, itemNum: item.pepdtos[i].breakdownList[j].itemsNum,
responsibleEngineer: item.pepdtos[i].breakdownList[j].responsibleEngineer, responsibleEngineer: item.pepdtos[i].breakdownList[j].responsibleEngineer,
@@ -410,38 +452,77 @@ export default {
} }
} }
}, },
saveUserInfo() { // saveUserInfo() {
if (this.type === "implementer") { // if (this.type === "implementer") {
// // 如果有勾选的项
// if (this.selectList.length) {
// this.listForm.breakdownList.forEach((item, index) => {
// if (this.selectList.includes(item.itemId)) {
// this.listForm.breakdownList[index].implementerId = this.roleRow.id;
// this.listForm.breakdownList[index].implementer = this.roleRow.name;
// }
// });
// } else {
// this.listForm.breakdownList[this.dsadadadsada].implementerId = this.roleRow.id;
// this.listForm.breakdownList[this.dsadadadsada].implementer = this.roleRow.name;
// }
// this.listForm.implementer = this.roleRow.name;
// this.showColumn = false;
// this.$nextTick(() => {
// this.showColumn = true;
// });
// }
// this.modalshowflag = false;
// },
saveUserInfo2 () {
var idList = "";
var nameList = "";
this.$refs.tree2.getCheckedNodes().concat(this.$refs.tree2.getHalfCheckedNodes()).forEach(item => {
if (nameList.length > 0) {
nameList += ",";
idList += ",";
}
idList += item.id;
nameList += item.name;
});
// 如果有勾选的项 // 如果有勾选的项
if (this.selectList.length) { if (this.selectList.length) {
this.listForm.breakdownList.forEach((item, index) => { this.listForm.breakdownList.forEach((item, index) => {
console.log(item.itemId);
console.log(index);
if (this.selectList.includes(item.itemId)) { if (this.selectList.includes(item.itemId)) {
this.listForm.breakdownList[index].implementerId = this.roleRow.id; this.listForm.breakdownList[index].implementerId = idList;
this.listForm.breakdownList[index].implementer = this.roleRow.name; this.listForm.breakdownList[index].implementer = nameList;
} }
}); });
} else { } else {
this.listForm.breakdownList[this.dsadadadsada].implementerId = this.roleRow.id; this.listForm.breakdownList[this.dsadadadsada].implementerId = idList;
this.listForm.breakdownList[this.dsadadadsada].implementer = this.roleRow.name; this.listForm.breakdownList[this.dsadadadsada].implementer = nameList;
} }
this.listForm.implementer = this.roleRow.name; this.listForm.implementer = nameList;
this.showColumn = false; this.showColumn = false;
this.$nextTick(() => { this.$nextTick(() => {
this.showColumn = true; this.showColumn = true;
}); });
} this.modalshowflag2 = false;
this.modalshowflag = false; //不要删除 By 宋伟佳
console.log(this.$refs.multipleTable.clearSelection())
this.$nextTick(() => {
for(var i=0;i<this.$refs.multipleTable.length;i++){
this.$refs.multipleTable[i].clearSelection();
}
})
}, },
cancleUserInfo() { cancleUserInfo2() {
this.modalshowflag = false; this.modalshowflag2 = false;
}, },
choiceZRR(scope, type, title, id) { choiceZRRS(scope) {
if (scope != null) this.dsadadadsada = scope.$index; if (scope != null) this.dsadadadsada = scope.$index;
this.nodeList = []; this.nodeList = [];
this.nodeList.push(id); if (this.roleForm.implementer.length > 0) {
this.type = type; this.nodeList = this.roleForm.implementer.split(",");
this.drawerTitle = title; }
this.modalshowflag = true; this.modalshowflag2 = true;
}, },
getTree() { getTree() {
this.$http.get("SarInstitution/institution/institutionAndUser", {}, {}, res => { this.$http.get("SarInstitution/institution/institutionAndUser", {}, {}, res => {
@@ -271,9 +271,9 @@
</div> </div>
<div class="content" v-show="active === '3'"> <div class="content" v-show="active === '3'">
<div class="flow-list"> <div class="flow-list" style="height:100%">
<el-table <el-table
height="800px" height="100%"
ref="selection" ref="selection"
:data="detailData" :data="detailData"
tooltip-effect="dark" tooltip-effect="dark"
@@ -413,36 +413,6 @@ export default {
zcCompletionTime: "" //在产的完成时间 zcCompletionTime: "" //在产的完成时间
}] }]
}, },
// listForm: {
// standNumber: "", //标准编号
// standName: "",//标准名称
// certifiedEngineer: "", //认证工程师
// qualityEngineer: "", //质量工程师
// dataList: [{
// certifiedEngineer: '',
// projectManager: '',
// standNumber: '',
// itemsName: '',
// uname: '',
// projectNumber: '',
// implementer: '',
// implementerId: '',
// productLine: '',
// itemNum:'',
// qualityEngineer: '',
// distributePerson:'',
// projectName:'',
// standName:'',
// distributePersonId:'',
// complianceReasons:'', //在研合规原因
// noCompliance:'', //在研不合规项目
// countermeasures:'', //在研应对措施
// completionTime:'', //在研完成时间
// zcComplianceReasons: '', //在产的合规原因
// zcCountermeasures:'', //在产的应对措施
// zcCompletionTime:'', //在产的完成时间
// }]
// },
choiceForm: {}, //选择标准清单列表 choiceForm: {}, //选择标准清单列表
countryOptions: [], //适用区域下拉框数据 countryOptions: [], //适用区域下拉框数据
user1: "", user1: "",
@@ -477,7 +447,6 @@ export default {
taskIds: this.taskIds, taskIds: this.taskIds,
pId: this.pId pId: this.pId
}).then(res => { }).then(res => {
console.log(res.mesg);
if (res) { if (res) {
const processForm = JSON.parse(res.mesg); const processForm = JSON.parse(res.mesg);
this.getFormFieldList(processForm); this.getFormFieldList(processForm);
@@ -492,11 +461,18 @@ export default {
getFormFieldList(item) { getFormFieldList(item) {
this.$nextTick(() => { this.$nextTick(() => {
this.listForm = JSON.parse(JSON.stringify(item)); this.listForm = JSON.parse(JSON.stringify(item));
console.log(item.fenFlag);
if (item.fenFlag === undefined ) { if (item.fenFlag === undefined ) {
item.step3DTOS.forEach(item => {
item.implementerId = this.$store.getters.userInfo.userId
item.implementer = this.$store.getters.userInfo.userName
})
this.dataList = item.step3DTOS; this.dataList = item.step3DTOS;
} else { } else {
this.dataList = item.dataList; this.dataList = item.dataList;
this.dataList.forEach(item => {
item.implementerId = this.$store.getters.userInfo.userId
item.implementer = this.$store.getters.userInfo.userName
})
} }
this.listForm.prcNum = this.prcNum; this.listForm.prcNum = this.prcNum;
this.listForm.prcName = this.prcName; this.listForm.prcName = this.prcName;
@@ -524,6 +500,7 @@ export default {
this.listForm.signFlag = ""; this.listForm.signFlag = "";
this.listForm.dataList = this.dataList; this.listForm.dataList = this.dataList;
const json = JSON.stringify(this.listForm); const json = JSON.stringify(this.listForm);
console.log(json);
this.$http.post("lawss/activiti/completeTask", { this.$http.post("lawss/activiti/completeTask", {
taskIds: this.taskIds, taskIds: this.taskIds,
userId: this.userId, userId: this.userId,
@@ -228,7 +228,7 @@
</div> </div>
<div class="content" v-show="active === '3'"> <div class="content" v-show="active === '3'">
<div class="flow-list"> <div class="flow-list" style="height: 100%">
<el-table <el-table
height="100%" height="100%"
ref="selection" ref="selection"
@@ -228,7 +228,7 @@
</div> </div>
<div class="content" v-show="active === '3'"> <div class="content" v-show="active === '3'">
<div class="flow-list"> <div class="flow-list" style="height: 100%">
<el-table <el-table
height="100%" height="100%"
ref="selection" ref="selection"
@@ -228,7 +228,7 @@
</div> </div>
<div class="content" v-show="active === '3'"> <div class="content" v-show="active === '3'">
<div class="flow-list"> <div class="flow-list" style="height: 100%">
<el-table <el-table
height="100%" height="100%"
ref="selection" ref="selection"
@@ -0,0 +1,368 @@
<!--项目合规评估流程-项目维度-->
<template>
<div class="xmpg2-step1">
<ProcessHeader toggle>
<template slot="proName">项目合规评估流程 - 项目</template>
<template slot="proNode">申请人发起流程</template>
</ProcessHeader>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">人员信息</div>
</div>
<div class="content" v-show="active === '1'">
<div style="flex: auto; overflow: auto">
<process-title>
<template slot="title">基础信息</template>
</process-title>
<el-form
:model="listForm"
:rules="formRules"
ref="listForm"
class="label-input-form prc-content-border"
label-width="150px"
>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="选择项目" prop="orgName" class="add-form-item form-item-disabled">
<el-button size="mini" type="primary" style="margin-left: 10px;" @click="choiceShow">选择项目</el-button>
</el-form-item>
<el-form-item label="项目编号" prop="standNumber" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectNumber"
placeholder="请输入项目编号"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
v-model="listForm.projectName"
placeholder="请输入项目名称"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<process-title style="margin-top:5px; margin-bottom: 5px">
<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="standName"
align="center"
label="中文名称"
width="180px"
>
</el-table-column>
<el-table-column
prop="standEnName"
label="英文名称"
align="center"
width="180px"
>
</el-table-column>
<el-table-column
prop="SSRQ"
width="190px"
align="center"
sortable
label="标准实施日期">
</el-table-column>
<el-table-column
prop="XCXSSRQGJ"
width="190px"
align="center"
label="新车型实施日期">
</el-table-column>
<el-table-column
prop="ZCCSSRQGJ"
align="center"
sortable
width="190px"
label="在产车实施日期">
</el-table-column>
<el-table-column
prop="ZRBM"
label="责任部门"
align="center"
width="180px"
>
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="KCCVPPSBM"
width="180px"
align="center"
label="卡车VPPS编码">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="KCCVPPSCN"
width="180px"
align="center"
label="卡车vpps中文名称">
</el-table-column>
<el-table-column
prop="CYCVPPSBM"
width="180px"
align="center"
label="乘车VPPS编码">
</el-table-column>
<el-table-column
prop="CYCVPPSBM"
width="180px"
align="center"
label="乘车vpps中文名称">
</el-table-column>
</el-table>
</div>
</div>
<div class="content" v-show="active === '2'">
<div class="block" style="padding-top: 20px;">
<el-timeline>
<el-form
ref="Form"
:model="roleForm"
:rules="roleFormRules"
class="label-input-form">
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="startUserName" style="margin-bottom: 0">
<h4>流程发起人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
<el-input v-model="roleForm.startUserName" placeholder="流程发起人" disabled></el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="选择标准法规业务经理" placement="top" :color="roleForm.serviceManager ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="serviceManagerName" style="margin-bottom: 0">
<h4>审批责任人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.serviceManager" style="display: none;"></el-input>
<el-input v-model="roleForm.serviceManagerName" placeholder="标准法规业务经理"@click.native="choiceZRR('serviceManager', '选择业务经理', roleForm.serviceManager)">
</el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="选择工程经理进行转办" placement="top" :color="roleForm.engineeringManager ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="engineeringManagerName" style="margin-bottom: 0">
<h4>工程经理</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.engineeringManager" style="display: none;"></el-input>
<el-input v-model="roleForm.engineeringManagerName" placeholder="选择工程经理" @click.native="choiceZRR('engineeringManager', '选择工程经理', roleForm.engineeringManager)"></el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="标准法规部部长审批" placement="top" :color="roleForm.statuteMinister ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="statuteMinisterName" style="margin-bottom: 0">
<h4>标准法规部部长</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.statuteMinister" style="display: none;"></el-input>
<el-input v-model="roleForm.statuteMinisterName" placeholder="选择标准法规部部长" @click.native="choiceZRR('statuteMinister', '选择技术管理中心主任', roleForm.statuteMinister)"></el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
</el-form>
</el-timeline>
</div>
<Role-tree
check-box
:is-title="drawerTitle"
:is-visible.sync="modalshowflag"
@checkedRole="checkedRole"
:nodeList="nodeList"
></Role-tree>
</div>
</div>
</template>
<script>
import ProcessHeader from "../../components/ProcessHeader";
import ProcessFooter from "../../components/ProcessFooter";
import ProcessTitle from "../../components/ProcessTitle";
import { saveTaskFirst } from "api/process";
export default {
name: "xmpg2Step1",
components: {
ProcessFooter,
ProcessHeader,
ProcessTitle,
},
data(){
return {
active: '1', //当前选中的type
//表单的数据
listForm: {
projectNumber:'', //项目编号
projectName:'', //项目名称
},
dataList:[], //下面标准的数据
//表单的验证
formRules: {
projectNumber: [
{ required: true, message: "请填写项目编号", trigger: "change" }
],
projectName: [
{ required: true, message: "请填写项目名称", trigger: "change" }
],
},
//选人的验证
roleFormRules:{
serviceManagerName:[
{required: true, message:"请选择业务经理", trigger:"change"}
],
engineeringManagerName: [
{required: true, message:"请选择工程经理", trigger:"change"}
],
statuteMinisterName: [
{required: true, message:"请选择法规部部长", trigger:"cahnge"}
],
},
//选择人的数据
roleForm: {
startUserName: this.$store.getters.userInfo.userName,
startUser: this.$store.getters.userInfo.userId,
serviceManager:'', //业务经理
serviceManagerName:'',
engineeringManager:'', //工程经理
engineeringManagerName:'',
statuteMinister:'', //标准法规部部长
statuteMinisterName:'',
},
modalshowflag: false, // drawer开关
drawerTitle: '', //drawer标题
nodeList: [],
}
},
methods: {
//tab发生变化
handleTabs(type){
this.active = type
},
//点击选择项目事件
choiceShow(){
},
//标准的多选框改变
selectStandChange(){
},
choiceZRR (type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.type = type
this.drawerTitle = title
this.modalshowflag = true
},
checkedRole (data) {
if (this.type === 'serviceManager') {
this.roleForm.serviceManager = data[0].id
this.roleForm.serviceManagerName = data[0].name
} else if (this.type === 'engineeringManager') {
this.roleForm.engineeringManager = data[0].id
this.roleForm.engineeringManagerName = data[0].name
} else if (this.type === 'statuteMinister') {
this.roleForm.statuteMinister = data[0].id
this.roleForm.statuteMinisterName = data[0].name
}
},
}
};
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.xmpg2-step1 {
/deep/ .el-drawer__container {
.prc-content-border {
border: none;
padding: 0 20px 0;
}
}
.choiceBtn {
.el-button--primary {
width: 150px;
}
}
position: relative;
height: 100%;
.headerTabs {
height: 52px;
display: flex;
align-items: center;
position: absolute;
top: 0;
right: 10px;
.headerTabsItem {
border: 1px solid #c1c1c1;
padding: 0 5px;
height: 30px;
line-height: 30px;
cursor: pointer;
}
.active {
border: 1px solid #E6A23C;
color: #fff;
background: #E6A23C;
}
}
.content {
display: flex;
flex-direction: column;
justify-content: space-between;
height: calc(~'100% - 103px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
.accessStandardsAndRegulations {
height: 100%;
}
}
}
.demo-drawer-content {
margin-top: 10px;
}
}
</style>
@@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: "xmpg2Step2"
};
</script>
<style scoped>
</style>
@@ -10,7 +10,8 @@
<!-- <div class="process-name" @click="handleCreateProcess('4')">标准需求(翻译)申请流程</div>--> <!-- <div class="process-name" @click="handleCreateProcess('4')">标准需求(翻译)申请流程</div>-->
<!-- <div class="process-name" @click="handleCreateProcess('5')">标准发放申请流程</div>--> <!-- <div class="process-name" @click="handleCreateProcess('5')">标准发放申请流程</div>-->
<div class="process-name" @click="handleCreateProcess('6')">标准清单发布/更新流程</div> <div class="process-name" @click="handleCreateProcess('6')">标准清单发布/更新流程</div>
<div class="process-name" @click="handleCreateProcess('7')">项目合规评估流程</div> <div class="process-name" @click="handleCreateProcess('7')">项目合规评估流程-标准</div>
<div class="process-name" @click="handleCreateProcess('10')">项目合规评估流程-项目</div>
<div class="process-name" @click="handleCreateProcess('8')">未符合项整改流程</div> <div class="process-name" @click="handleCreateProcess('8')">未符合项整改流程</div>
<div class="process-name" @click="handleCreateProcess('9')">标准解读流程</div> <div class="process-name" @click="handleCreateProcess('9')">标准解读流程</div>
</div> </div>
@@ -87,11 +88,17 @@ export default {
}) })
break break
case '7': case '7':
//项目评估流程 //项目评估流程 - 标准
this.$router.push({ this.$router.push({
name: 'xmpgStep1' name: 'xmpgStep1'
}) })
break break
case '10':
//项目评估流程- 项目
this.$router.push({
name: 'xmpg2Step1'
})
break
case '8': case '8':
//未符合项整改流程 //未符合项整改流程
this.$router.push({ this.$router.push({
@@ -378,6 +378,9 @@
align="center" align="center"
width="210px" width="210px"
label="标准实施日期"> label="标准实施日期">
<template slot-scope="scope">
<span>{{ scope.row.putTime ? $moment(scope.row.putTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
show-overflow-tooltip show-overflow-tooltip
@@ -448,7 +451,7 @@
width="210px" width="210px"
label="卡车VPPS中文名称"> label="卡车VPPS中文名称">
</el-table-column> </el-table-column>
<el-table-column width="150"> <el-table-column width="200">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
class="common-button-default" class="common-button-default"
@@ -459,10 +462,15 @@
<el-button <el-button
class="common-button-default" class="common-button-default"
type="danger" type="danger"
style="margin-left: 0px"
size="small" @click="moveDown(scope.$index, scope.row)" size="small" @click="moveDown(scope.$index, scope.row)"
v-if="!disabledFlag" v-if="!disabledFlag"
>下移</el-button> >下移</el-button>
<el-button
size="small"
@click="editTghisRow(scope.row)"
class="common-button-default"
type="warning"
>编辑</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -499,6 +507,87 @@
</div> </div>
</el-upload> </el-upload>
</el-dialog> </el-dialog>
<el-drawer
title="编辑清单条目"
:visible.sync="drawerEdit"
:wrapperClosable="false"
size="800px"
>
<el-form :modal="editRowData" ref="editRowData" label-width="auto" style="margin: 20px">
<el-form-item label="标准号">
<a>{{ editRowData.standSortShow }} {{ editRowData.standNumber }}</a>
</el-form-item>
<el-form-item label="标准名称" prop="standName">
<el-input v-model.trim="editRowData.standName" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="英文名称" prop="standEnName">
<el-input v-model.trim="editRowData.standEnName" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="适用车型" prop="typeApplicable">
<el-input v-model.trim="editRowData.typeApplicable" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="能源类型" prop="nylx">
<el-input v-model.trim="editRowData.nylx" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="标准实施日期" prop="putTime">
<el-date-picker
v-model.trim="editRowData.putTime"
type="date"
placeholder="选择日期">
</el-date-picker>
</el-form-item>
<el-form-item label="在产车实施日期" prop="zccssrqgj">
<el-date-picker
v-model.trim="editRowData.zccssrqgj"
type="date"
placeholder="选择日期">
</el-date-picker>
</el-form-item>
<el-form-item label="新车型实施日期" prop="xcxssrqgj">
<el-date-picker
v-model.trim="editRowData.xcxssrqgj"
type="date"
placeholder="选择日期">
</el-date-picker>
</el-form-item>
<el-form-item label="责任部门" prop="zrbm">
<el-input v-model.trim="editRowData.zrbm" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="适用产品线" prop="sycpx">
<el-input v-model.trim="editRowData.sycpx" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="乘用车VPPS编码" prop="cycvppsbm">
<el-input v-model.trim="editRowData.cycvppsbm" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="乘用车VPPS中文名称" prop="cycvppscn">
<el-input v-model.trim="editRowData.cycvppscn" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="卡车VPPS编码" prop="kccvppsbm">
<el-input v-model.trim="editRowData.kccvppsbm" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="卡车VPPS中文名称" prop="kccvppscn">
<el-input v-model.trim="editRowData.kccvppscn" :disabled="true"></el-input>
</el-form-item>
</el-form>
<div class="demo-drawer-footer">
<el-button
type="primary"
class="common-button-primary"
size="mini"
icon="el-icon-check"
@click="saveInfo"
>提交</el-button
>
<el-button
size="mini"
icon="el-icon-close"
class="common-button-default"
@click="cancelInfo"
>取消</el-button
>
</div>
</el-drawer>
</div> </div>
</template> </template>
<script> <script>
@@ -522,6 +611,7 @@ import CustomInputForPolicy from '@/components/CustomFormComponents/InputForPoli
import CustomRoleTree from '@/components/CustomFormComponents/roleTree' import CustomRoleTree from '@/components/CustomFormComponents/roleTree'
import stand from "../../../config/pages/attributeCustom/components/stand"; import stand from "../../../config/pages/attributeCustom/components/stand";
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import { editDataInfo } from '@/api/unqualProcess'
export default { export default {
name: 'ListOfStandardsAndRegulationsDetails', name: 'ListOfStandardsAndRegulationsDetails',
components: { components: {
@@ -571,6 +661,25 @@ export default {
zrbmMap: {}, zrbmMap: {},
sycpxMap: {}, sycpxMap: {},
zrbmOptions: [], zrbmOptions: [],
// 编辑抽屉状态
drawerEdit: false,
// 编辑框数据
editRowData: {
id: '',
standName: '',
standEnName: '',
typeApplicable: '',
nylx: '',
putTime: '',
zccssrqgj: '',
xcxssrqgj: '',
zrbm: '',
sycpx: '',
cycvppsbm: '',
cycvppscn: '',
kccvppsbm: '',
kccvppscn: ''
},
selectSearch : [], selectSearch : [],
// 新增、编辑 基础信息字段 // 新增、编辑 基础信息字段
sarAccessEO: { sarAccessEO: {
@@ -1164,6 +1273,21 @@ export default {
this.$set(this.sarAccessInfoList, index, i) this.$set(this.sarAccessInfoList, index, i)
} }
}, },
// 编辑按钮
editTghisRow(row) {
this.rowList = row
this.editRowData = this.rowList
this.drawerEdit = true
},
// 抽屉取消按钮
cancelInfo() {
this.drawerEdit = false
},
// 抽屉提交按钮
saveInfo() {
this.rowList = this.editRowData
this.drawerEdit = false
},
// 点击清单条目导入按钮事件 // 点击清单条目导入按钮事件
importmodalFlags () { importmodalFlags () {
this.importmodalFlag = true this.importmodalFlag = true
@@ -11,7 +11,7 @@
<div v-show="heightShow" class="transition-box"> <div v-show="heightShow" class="transition-box">
<p class="transition-box-p"> <p class="transition-box-p">
<label class="transition-box-label">国家/地区</label> <label class="transition-box-label">国家/地区</label>
<span class="transition-box-span" v-if="sarAccessEO.countryArea.indexOf(',') >= 0"> <span class="transition-box-span" v-if="sarAccessEO.countryArea !== null && sarAccessEOInfo > 0">
<span>{{ sarAccessEO.countryArea }}</span> <span>{{ sarAccessEO.countryArea }}</span>
</span> </span>
<span class="transition-box-span" v-else>{{ countryAreaMap[sarAccessEO.countryArea] }}</span> <span class="transition-box-span" v-else>{{ countryAreaMap[sarAccessEO.countryArea] }}</span>
@@ -160,6 +160,9 @@
align="center" align="center"
width="210px" width="210px"
label="标准实施日期"> label="标准实施日期">
<template slot-scope="scope">
<span>{{ scope.row.putTime ? $moment(scope.row.putTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
show-overflow-tooltip show-overflow-tooltip
@@ -168,6 +171,9 @@
width="210px" width="210px"
align="center" align="center"
label="在产车实施日期"> label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zccssrqgj ? $moment(scope.row.zccssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="xcxssrqgj" prop="xcxssrqgj"
@@ -175,6 +181,9 @@
align="center" align="center"
width="210px" width="210px"
label="新车型实施日期"> label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xcxssrqgj ? $moment(scope.row.xcxssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
show-overflow-tooltip show-overflow-tooltip
@@ -315,6 +324,7 @@ export default {
saveExportType: "", saveExportType: "",
depNode: [], // 部门树 depNode: [], // 部门树
sarAccessEO: {}, sarAccessEO: {},
sarAccessEOInfo: '',
fileInfoList: [], fileInfoList: [],
// 改变颜色 // 改变颜色
dialogColor: false, dialogColor: false,
@@ -604,6 +614,7 @@ export default {
console.log(accessRow) console.log(accessRow)
this.pageId = accessRow.id this.pageId = accessRow.id
this.sarAccessEO = accessRow; this.sarAccessEO = accessRow;
this.sarAccessEOInfo = this.sarAccessEO.countryArea.indexOf(',')
this.selectInfobyAccid(); this.selectInfobyAccid();
this.getOrgTreeSource(); this.getOrgTreeSource();
this.getFileInfo(); this.getFileInfo();
@@ -211,17 +211,26 @@
prop="issueTime" prop="issueTime"
sortable sortable
label="发布日期"> label="发布日期">
<template slot-scope="scope">
<span>{{ scope.row.issueTime ? $moment(scope.row.issueTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="xcxssrq" prop="xcxssrqgj"
sortable sortable
label="新车型实施日期"> label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xcxssrqgj ? $moment(scope.row.xcxssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
show-overflow-tooltip show-overflow-tooltip
prop="zccssrq" prop="zccssrqgj"
sortable sortable
label="在产车实施日期"> label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zccssrqgj ? $moment(scope.row.zccssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
show-overflow-tooltip show-overflow-tooltip
@@ -362,6 +371,9 @@
width="210px" width="210px"
align="center" align="center"
label="在产车实施日期"> label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zccssrqgj ? $moment(scope.row.zccssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="xcxssrqgj" prop="xcxssrqgj"
@@ -369,6 +381,9 @@
align="center" align="center"
width="210px" width="210px"
label="新车型实施日期"> label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xcxssrqgj ? $moment(scope.row.xcxssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
show-overflow-tooltip show-overflow-tooltip
@@ -418,7 +433,7 @@
width="210px" width="210px"
label="卡车VPPS中文名称"> label="卡车VPPS中文名称">
</el-table-column> </el-table-column>
<el-table-column> <el-table-column width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
class="common-button-default" class="common-button-default"
@@ -539,11 +554,12 @@ export default {
nylxMap: {}, nylxMap: {},
zrbmMap: {}, zrbmMap: {},
sycpxMap: {}, sycpxMap: {},
zrbmOptions: [],
selectSearch : [], selectSearch : [],
// 新增、编辑 基础信息字段 // 新增、编辑 基础信息字段
sarAccessEO: { sarAccessEO: {
id: '', id: '',
sortKey: 4, sortKey: 3,
fileIds: '', fileIds: '',
detailedList: '', detailedList: '',
detailedListName: '', detailedListName: '',
@@ -1242,8 +1258,19 @@ export default {
_this: this _this: this
}, res =>{ }, res =>{
this.sarAccessInfoSearchList = res.data.list this.sarAccessInfoSearchList = res.data.list
this.$nextTick(() => { this.sarAccessInfoSearchList.forEach(item => {
}) this.$set(item, 'zccssrqgj', item.attrInfoMap.ZCCSSRQGJ)
this.$set(item, 'xcxssrqgj', item.attrInfoMap.XCXSSRQGJ)
this.$set(item, 'sycpx', item.attrInfoMap.SYCPX)
this.$set(item, 'typeApplicable', item.attrInfoMap.CLLX)
this.$set(item, 'nylx', item.attrInfoMap.NYLX)
this.$set(item, 'zrbm', item.attrInfoMap.ZRBM)
this.$set(item, 'cycvppsbm', item.attrInfoMap.CYCVPPSBM)
this.$set(item, 'cycvppscn', item.attrInfoMap.CYCVPPSCN)
this.$set(item, 'kccvppsbm', item.attrInfoMap.KCCVPPSBM)
this.$set(item, 'kccvppscn', item.attrInfoMap.KCCVPPSCN)
})
console.log(this.sarAccessInfoSearchList)
}, e => { }, e => {
}) })
@@ -211,17 +211,26 @@
prop="issueTime" prop="issueTime"
sortable sortable
label="发布日期"> label="发布日期">
<template slot-scope="scope">
<span>{{ scope.row.issueTime ? $moment(scope.row.issueTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="xcxssrq" prop="xcxssrqgj"
sortable sortable
label="新车型实施日期"> label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xcxssrqgj ? $moment(scope.row.xcxssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
show-overflow-tooltip show-overflow-tooltip
prop="zccssrq" prop="zccssrqgj"
sortable sortable
label="在产车实施日期"> label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zccssrqgj ? $moment(scope.row.zccssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
show-overflow-tooltip show-overflow-tooltip
@@ -362,6 +371,9 @@
width="210px" width="210px"
align="center" align="center"
label="在产车实施日期"> label="在产车实施日期">
<template slot-scope="scope">
<span>{{ scope.row.zccssrqgj ? $moment(scope.row.zccssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="xcxssrqgj" prop="xcxssrqgj"
@@ -369,6 +381,9 @@
align="center" align="center"
width="210px" width="210px"
label="新车型实施日期"> label="新车型实施日期">
<template slot-scope="scope">
<span>{{ scope.row.xcxssrqgj ? $moment(scope.row.xcxssrqgj).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
show-overflow-tooltip show-overflow-tooltip
@@ -429,7 +444,6 @@
<el-button <el-button
class="common-button-default" class="common-button-default"
type="danger" type="danger"
style="margin-left: 0px"
size="small" @click="moveDown(scope.$index, scope.row)" size="small" @click="moveDown(scope.$index, scope.row)"
v-if="!disabledFlag" v-if="!disabledFlag"
>下移</el-button> >下移</el-button>
@@ -540,6 +554,7 @@ export default {
nylxMap: {}, nylxMap: {},
zrbmMap: {}, zrbmMap: {},
sycpxMap: {}, sycpxMap: {},
zrbmOptions: [],
selectSearch : [], selectSearch : [],
// 新增、编辑 基础信息字段 // 新增、编辑 基础信息字段
sarAccessEO: { sarAccessEO: {
@@ -1244,6 +1259,19 @@ export default {
_this: this _this: this
}, res =>{ }, res =>{
this.sarAccessInfoSearchList = res.data.list this.sarAccessInfoSearchList = res.data.list
this.sarAccessInfoSearchList.forEach(item => {
this.$set(item, 'zccssrqgj', item.attrInfoMap.ZCCSSRQGJ)
this.$set(item, 'xcxssrqgj', item.attrInfoMap.XCXSSRQGJ)
this.$set(item, 'sycpx', item.attrInfoMap.SYCPX)
this.$set(item, 'typeApplicable', item.attrInfoMap.CLLX)
this.$set(item, 'nylx', item.attrInfoMap.NYLX)
this.$set(item, 'zrbm', item.attrInfoMap.ZRBM)
this.$set(item, 'cycvppsbm', item.attrInfoMap.CYCVPPSBM)
this.$set(item, 'cycvppscn', item.attrInfoMap.CYCVPPSCN)
this.$set(item, 'kccvppsbm', item.attrInfoMap.KCCVPPSBM)
this.$set(item, 'kccvppscn', item.attrInfoMap.KCCVPPSCN)
})
console.log(this.sarAccessInfoSearchList)
}, e => { }, e => {
}) })
@@ -267,6 +267,7 @@
:wrapperClosable="false" :wrapperClosable="false"
size="800px" size="800px"
@close="resetForm" @close="resetForm"
append-to-body
> >
<!-- 新增样式 --> <!-- 新增样式 -->
<div class="demo-drawer-content"> <div class="demo-drawer-content">
@@ -397,11 +398,7 @@
class="add-form-item" class="add-form-item"
> >
<template slot="label">标准体系</template> <template slot="label">标准体系</template>
<tree-select <el-input v-model="sarStandardsInfoEO.standSystem" placeholder="选择标准体系" @click.native="choiceZRR1('standSystem', '标准体系', sarStandardsInfoEO.standSystem)"></el-input>
width = "593"
:data="standSystemOptions"
:defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys"
:nodeKey="nodeKey" @popoverHide="popoverHide"></tree-select>
</el-form-item> </el-form-item>
</template> </template>
<template v-for="field in displayLocation.child"> <template v-for="field in displayLocation.child">
@@ -453,12 +450,7 @@
class="add-form-item" class="add-form-item"
> >
<template slot="label">乘用车VPPS编码</template> <template slot="label">乘用车VPPS编码</template>
<tree-select <el-input v-model="sarStandardsInfoEO.CYCVPPSBM" placeholder="选择乘用车VPPS编码" @click.native="choiceZRR2('cycvppsbm', '乘用车VPPS', sarStandardsInfoEO.cycvppsbm)"></el-input>
:disabled="false"
width = "340"
:data="busVppsOptions"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select>
</el-form-item> </el-form-item>
</template> </template>
<template v-else-if="field.attrField === 'KCCVPPSBM'"> <template v-else-if="field.attrField === 'KCCVPPSBM'">
@@ -468,12 +460,7 @@
class="add-form-item" class="add-form-item"
> >
<template slot="label">卡车VPPS编码</template> <template slot="label">卡车VPPS编码</template>
<tree-select <el-input v-model="sarStandardsInfoEO.KCCVPPSBM" placeholder="选择卡车VPPS编码" @click.native="choiceZRR3('kccvppsbm', '卡车VPPS', sarStandardsInfoEO.kccvppsbm)"></el-input>
:disabled="false"
width = "340"
:data="busVppsOptions"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs"></tree-select>
</el-form-item> </el-form-item>
</template> </template>
<template v-else-if="field.attrField === 'DYBXH'"> <template v-else-if="field.attrField === 'DYBXH'">
@@ -483,12 +470,7 @@
class="add-form-item" class="add-form-item"
> >
<template slot="label">模块结构单元变型号</template> <template slot="label">模块结构单元变型号</template>
<tree-select <el-input v-model="sarStandardsInfoEO.DYBXH" placeholder="选择模块结构单元变型号" @click.native="choiceZRR4('dybxh', '模块结构单元', sarStandardsInfoEO.dybxh)"></el-input>
width = "340"
:disabled="false"
:data="modelOptions"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel"></tree-select>
</el-form-item> </el-form-item>
</template> </template>
<template v-else-if="field.attrField === 'CYCVPPSCN'"> <template v-else-if="field.attrField === 'CYCVPPSCN'">
@@ -782,13 +764,13 @@
<el-form :model="sarConfigStandSearch" :inline="true" class="label-input-form"> <el-form :model="sarConfigStandSearch" :inline="true" class="label-input-form">
<el-formItem label="标准类别" prop="standSort" class="search-item"> <el-formItem label="标准类别" prop="standSort" class="search-item">
<el-select v-model="sarConfigStandSearch.standSort" placeholder="根据标准类别查找" <el-select v-model="sarConfigStandSearch.standSort" placeholder="根据标准类别查找"
@keyup.enter.native="searchConfiguraStand" clearable> @keyup.enter.native="searchConfiguraStand(true)" clearable>
<el-option v-for="opt in standSortOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value" :label="opt.label">{{ opt.label }} <el-option v-for="opt in standSortOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value" :label="opt.label">{{ opt.label }}
</el-option> </el-option>
</el-select> </el-select>
</el-formItem> </el-formItem>
<el-formItem label="标准号/名称" prop="standNumber" class="search-item"> <el-formItem label="标准号/名称" prop="standNumber" class="search-item">
<el-input v-model="sarConfigStandSearch.standNumber" @keyup.enter.native="searchConfiguraStand" <el-input v-model="sarConfigStandSearch.standNumber" @keyup.enter.native="searchConfiguraStand(true)"
placeholder="根据标准号/名称查找" clearable/> placeholder="根据标准号/名称查找" clearable/>
</el-formItem> </el-formItem>
<el-form-item label="" class="search-item btn-box"> <el-form-item label="" class="search-item btn-box">
@@ -980,6 +962,46 @@
@click="closeModal">取消</el-button> @click="closeModal">取消</el-button>
</div> </div>
</el-drawer> </el-drawer>
<!-- 组件树-->
<tree-select-new
:multiple=false
:lazy=false
:modalShowFlag="modalShowFlag1"
:drawerTitle="drawerTitle"
width = "500"
:data="standSystemOptions"
:defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys"
:nodeKey="nodeKey" @popoverHide="popoverHide"></tree-select-new>
<tree-select-new
width = "500"
:lazy=true
:multiple=false
:modalShowFlag="modalShowFlag2"
:drawerTitle="drawerTitle"
:url="url"
:urlChild="urlChild"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select-new>
<tree-select-new
width = "500"
:lazy=true
:multiple=false
:modalShowFlag="modalShowFlag3"
:drawerTitle="drawerTitle"
:url="url"
:urlChild="urlChild"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs"></tree-select-new>
<tree-select-new
width = "500"
:lazy=true
:multiple=false
:modalShowFlag="modalShowFlag4"
:drawerTitle="drawerTitle"
:url="url"
:urlChild="urlChild"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel"></tree-select-new>
<!-- 导入失败--> <!-- 导入失败-->
<el-dialog :visible.sync="importFailed" :close-on-click-modal="false" width="400px"> <el-dialog :visible.sync="importFailed" :close-on-click-modal="false" width="400px">
<p slot="title" style="color:#f60"> <p slot="title" style="color:#f60">
@@ -1234,6 +1256,7 @@ import Bus from '@/common/eventHub'
import CustomDatePickWithText2 from '@/components/CustomFormComponents/DatePickerWithText2' import CustomDatePickWithText2 from '@/components/CustomFormComponents/DatePickerWithText2'
import { interfaceUrl } from '@/sysConfig' import { interfaceUrl } from '@/sysConfig'
import TreeSelect from '@/components/treeSelect/treeSelect.vue'; import TreeSelect from '@/components/treeSelect/treeSelect.vue';
import TreeSelectNew from '@/components/treeSelect/treeSelectNew.vue';
export default { export default {
name: 'domesticStandardsAndRegulations', name: 'domesticStandardsAndRegulations',
@@ -1254,7 +1277,8 @@ export default {
CustomSVPPS, CustomSVPPS,
CustomRoleTree, CustomRoleTree,
CustomDatePickWithText2, CustomDatePickWithText2,
TreeSelect TreeSelect,
TreeSelectNew
}, },
data () { data () {
return { return {
@@ -1267,6 +1291,13 @@ export default {
children: 'children', children: 'children',
label: 'menuName' label: 'menuName'
}, },
modalShowFlag1: false, // drawer开关
modalShowFlag2: false, // drawer开关
modalShowFlag3: false, // drawer开关
modalShowFlag4: false, // drawer开关
url:'',
urlChild:'',
drawerTitle: '', //drawer标题
nodeKey: 'id', nodeKey: 'id',
nodeKeyCode: 'code', nodeKeyCode: 'code',
nodeKeyModel: 'model', nodeKeyModel: 'model',
@@ -1903,27 +1934,83 @@ export default {
} }
}, },
methods: { methods: {
popoverHideBusVs (checkedIds, checkedData) { choiceZRR1 (type, title, id) {
if(checkedData){ this.drawerTitle = title
this.sarStandardsInfoEO.CYCVPPSBM = checkedData.code this.modalShowFlag1 = true
this.sarStandardsInfoEO.CYCVPPSCN = checkedData.chineseName
this.$forceUpdate()
}
}, },
popoverHideCarVs (checkedIds, checkedData) { choiceZRR2 (type, title, id) {
if(checkedData){ this.drawerTitle = title
this.sarStandardsInfoEO.KCCVPPSBM = checkedData.code this.modalShowFlag2 = true
this.sarStandardsInfoEO.KCCVPPSCN = checkedData.chineseName this.url = ''
this.$forceUpdate() this.urlChild = ''
} this.url="sarVppsTree/list"
this.urlChild="sarVppsTree/childByList"
}, },
popoverHideModel (checkedIds, checkedData) { choiceZRR3 (type, title, id) {
if(checkedData){ this.drawerTitle = title
this.sarStandardsInfoEO.DYBXH = checkedData.model this.modalShowFlag3 = true
this.sarStandardsInfoEO.DYMC = checkedData.name this.url = ''
this.$forceUpdate() this.urlChild = ''
this.url="sarVppsTree/list"
this.urlChild="sarVppsTree/childByList"
},
choiceZRR4 (type, title, id) {
this.drawerTitle = title
this.modalShowFlag4 = true
this.url = ''
this.urlChild = ''
this.url="sarModelTree/list"
this.urlChild="sarModelTree/childByList"
},
popoverHide (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData) {
if(checkedData.length > 0){
this.sarStandardsInfoEO.standSystem = checkedData.map(item => item.menuName).join(",")
}else {
this.sarStandardsInfoEO.standSystem = checkedData.menuName
}
} }
this.modalShowFlag1 = false
this.$forceUpdate()
},
popoverHideBusVs (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData) {
if(checkedData.length > 0){
this.sarStandardsInfoEO.CYCVPPSBM = checkedData.map(item => item.code).join(",")
this.sarStandardsInfoEO.CYCVPPSCN = checkedData.map(item => item.chineseName).join(",")
}else {
this.sarStandardsInfoEO.CYCVPPSBM = checkedData.code
this.sarStandardsInfoEO.CYCVPPSCN = checkedData.chineseName
}
}
this.modalShowFlag2 = false
this.$forceUpdate()
},
popoverHideCarVs (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData) {
if(checkedData.length > 0){
this.sarStandardsInfoEO.KCCVPPSBM = checkedData.map(item => item.code).join(",")
this.sarStandardsInfoEO.KCCVPPSCN = checkedData.map(item => item.chineseName).join(",")
}else {
this.sarStandardsInfoEO.KCCVPPSBM = checkedData.code
this.sarStandardsInfoEO.KCCVPPSCN = checkedData.chineseName
}
}
this.modalShowFlag3 = false
this.$forceUpdate()
},
popoverHideModel (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData) {
if(checkedData.length > 0){
this.sarStandardsInfoEO.DYBXH = checkedData.map(item => item.model).join(",")
this.sarStandardsInfoEO.DYMC = checkedData.map(item => item.name).join(",")
}else {
this.sarStandardsInfoEO.DYBXH = checkedData.model
this.sarStandardsInfoEO.DYMC = checkedData.name
}
}
this.modalShowFlag4 = false
this.$forceUpdate()
}, },
busVsFunc(){ busVsFunc(){
this.$http.get('sarVppsTree/list', '', { this.$http.get('sarVppsTree/list', '', {
@@ -1939,11 +2026,6 @@ export default {
this.modelOptions = res.data this.modelOptions = res.data
}) })
}, },
popoverHide (checkedIds, checkedData) {
if(checkedData){
this.sarStandardsInfoEO.standSystem = checkedData.id
}
},
closeModal () { closeModal () {
this.productModal = false this.productModal = false
this.closeDrawer() this.closeDrawer()
@@ -2118,6 +2200,8 @@ export default {
this.personCollect.collectTitle = item.standName + ' ( 编号:' + item.standSort + ' ' + item.standNumber + ' )' this.personCollect.collectTitle = item.standName + ' ( 编号:' + item.standSort + ' ' + item.standNumber + ' )'
} }
this.personCollect.collectType = 'INLAND_STAND' this.personCollect.collectType = 'INLAND_STAND'
this.personCollect.id = item.id
this.personCollect.userId = this.$store.getters.userInfo.userId
this.$http.postData('person/personCollect', this.personCollect, { this.$http.postData('person/personCollect', this.personCollect, {
_this: this _this: this
}, res => { }, res => {
@@ -4257,7 +4341,6 @@ export default {
this.syzrOptions = res.data.SYRZCLASS // 适用认证 this.syzrOptions = res.data.SYRZCLASS // 适用认证
this.getGzzOption() this.getGzzOption()
this.setMap(this.standStateOptions) this.setMap(this.standStateOptions)
console.log(this.standStateOptions, '文本状态')
}, e => { }, e => {
}) })
this.getDomesticStandardTable(this.tableFlag) this.getDomesticStandardTable(this.tableFlag)
@@ -4,27 +4,43 @@
<!--左侧树--> <!--左侧树-->
<div class="tree-content" :class="{ 'tree-closed': sideClose }" > <div class="tree-content" :class="{ 'tree-closed': sideClose }" >
<div class="tree"> <div class="tree">
<laws-tree :zNodes="lawsZNodes" <el-tree
ref="enterpriseStandardTree" ref="tree"
treeDivId="enterpriseStandardTree" node-key="id"
:deptSelect = true class="filter-tree"
showRMenu :props="props"
autoSelect :data="treeList"
add-id="TB9979T4Y4" highlight-current
edit-id="AES4L4E52G" @node-click="treeClick"
remove-id="4PP7QBKXSQ" default-expand-all
:drag="hasPermissionDrag" :expand-on-click-node="false">
drag-bind=".drag-table" <span class="custom-tree-node" slot-scope="{ node, data }" @mouseenter="mouseenter(data)" @mouseleave="mouseleave(data)">
:hideRMenuNode="['wdsc']" <span> {{ node.label}} </span>
drag-dom="drag-row" <span>
v-if="treeReload" <el-button
@treeAdd="(treeId, treeNode) => clickDropMenu('newMenu', treeNode)" type="text"
@treeEdit="(treeId, treeNode) => clickDropMenu('editMenu', treeNode)" size="mini"
@treeClick="(treeId, treeNode) => treeClick(treeNode)" v-show="data.show"
@treeRightClick="(treeId, treeNode) => treeRightClick(treeNode)" @click="() => append(data)">
@treeRemove="(treeId, treeNode) => clickDropMenu('deleteMenu', treeNode)" 新增
@drag="drag" </el-button>
></laws-tree> <el-button
type="text"
size="mini"
v-show="data.show"
@click="() => update(data)">
编辑
</el-button>
<el-button
type="text"
size="mini"
v-show="data.showDel"
@click="() => remove(node, data)">
删除
</el-button>
</span>
</span>
</el-tree>
</div> </div>
<div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }"> <div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }">
<!--切换折叠样式--> <!--切换折叠样式-->
@@ -860,6 +876,64 @@
}" }"
@confirm="isTreeOk" @confirm="isTreeOk"
></org-table> ></org-table>
<!-- 新建抽屉 -->
<el-drawer
:wrapperClosable="false"
:title="productTitle"
:visible.sync="productModal"
size="800px"
:before-close="closeDrawer"
label-width="130px"
>
<div class="demo-drawer-content">
<el-form :model="productModelAdd"
ref="productModelAdd"
:rules="productRules"
class="label-input-form"
label-width="130px">
<el-row>
<el-col>
<el-form-item label="菜单名称" prop="menuName" class="add-form-item">
<el-input v-model.trim="productModelAdd.menuName" placeholder="请输入菜单名称" clearable></el-input>
</el-form-item>
</el-col>
<el-col>
<el-form-item label="排序号" prop="displaySeq" class="add-form-item">
<el-input v-model.number="productModelAdd.displaySeq"
number
placeholder="请输入排序号"
:maxlength="4"
clearable></el-input>
</el-form-item>
</el-col>
<el-col>
<el-form-item v-if="modalType === 2" label="上级菜单" prop="parentIdsName" class="add-form-item">
<el-input v-model="productModelAdd.parentIdsName" disabled
clearable></el-input>
</el-form-item>
</el-col>
<el-col>
<el-form-item label="描述" prop="remarks" class="add-form-item">
<el-input v-model.trim="productModelAdd.remarks"
placeholder="请输入描述"
clearable></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div class="demo-drawer-footer">
<el-button
class="common-button-primary"
icon="el-icon-check"
type="primary"
@click="saveProduct('productModelAdd')">提交</el-button>
<el-button
class="common-button-default"
icon="el-icon-close"
@click="closeModal">取消</el-button>
</div>
</el-drawer>
</div> </div>
</template> </template>
@@ -893,6 +967,60 @@ export default {
}, },
data () { data () {
return { return {
props: {
label: 'menuName',
children: 'children'
},
productModal: false, // 模态框是否打开
modalType: '',
productTitle: '', // 模态框标题
// 规范
productRules: {
menuName: [
{required: true, message: '一级菜单不能为空', trigger: 'blur'},
{type: 'string', max: 100, message: '最多输入100位', trigger: 'blur'}
],
displaySeq: [
{type: 'number', required: true, message: '排序号不能为空且为正整数', trigger: 'blur'},
{type: 'string', validator: this.verify.validStandNumInCompile2, trigger: 'blur'}
],
remarks: [
{type: 'string', max: 500, message: '最多输入500位', trigger: 'blur'}
],
dicTypeName: [
{required: true, message: '选项不能为空', trigger: 'blur'},
{type: 'string', max: 100, message: '最多输入100位', trigger: 'blur'}
],
showIndex: [
{type: 'number', required: true, message: '排序号不能为空且为正整数', trigger: 'blur'},
{type: 'string', validator: this.verify.validStandNumInCompile2, trigger: 'blur'}
],
describes: [
{type: 'string', max: 500, message: '最多输入500位', trigger: 'blur'}
]
},
productModelAdd: {
id : "",
sorDivide : "INLAND_STAND",
menuName : "",
parentId : null,
parentIds : null,
parentIdsName : "",
displaySeq : "",
validFlag : "",
creationTime : "",
modifyTime : "",
remarks : "",
children : [],
// 模态框信息
dicTypeName: '',
showIndex: '',
// 描述
describes: '',
// 唯一辨识
dicId: ""
},
treeList: [],
standId: '', standId: '',
visibleOrgTable: false, visibleOrgTable: false,
visibleShare: false, visibleShare: false,
@@ -1423,6 +1551,183 @@ export default {
} }
}, },
methods: { methods: {
closeModal () {
this.productModal = false
this.closeDrawer()
},
// 提交新增/修改
saveProduct (name) {
this.$refs[name].validate((valid) => {
if (valid) {
if (this.modalType === 1) {
this.$http.postData('sarResource/ts-resource/add', this.productModelAdd, {
_this: this
}, res => {
if (res.ok) {
this.selectMenuList()
this.productModal = false
this.productModelAdd = {
// 模态框信息
dicTypeName: '',
showIndex: '',
// 描述
describes: '',
// 唯一辨识
dicId: this.$route.params.id
}
} else {
this.productModal = true
}
}, e => {})
} else if (this.modalType === 2) {
this.$http.putData('sarResource/ts-resource', this.productModelAdd, {
_this: this
}, res => {
this.selectMenuList()
this.productModal = false
this.productModelAdd = {
// 模态框信息
dicTypeName: '',
showIndex: '',
// 描述
describes: '',
// 唯一辨识
dicId: this.$route.params.id
}
}, e => {
})
}
} else {
}
})
},
closeDrawer () {
this.$nextTick(() => {
this.$refs['productModelAdd'].resetFields()
this.productModelAdd = {
// 模态框信息
dicTypeName: '',
showIndex: '',
// 描述
describes: '',
// 唯一辨识
dicId: this.$route.params.id
}
})
this.productModal = false
},
// 查询二级菜单
selectMenuList () {
this.$http.get('sarResource/ts-resource', {
sorDivide: 'BUSINESS_STAND'
}, {}, res => {
if (res.ok) {
this.treeList = res.data
}
})
},
// 查询二级菜单
selectChildMenu (row) {
this.$http.get('sarResource/ts-resource/getMenuById', {
menuId: row.id
}, {}, res => {
if (res.ok) {
if(this.modalType === 1){
let idsName = ""
if(row.parentIds !== null){
if(row.parentIds.indexOf(res.data.id) != -1){
this.productModelAdd.parentIds = row.parentIds
}else {
this.productModelAdd.parentIds = row.parentIds + ',' + res.data.id
idsName = row.parentIdsName + ',' + res.data.menuName
}
}else {
this.productModelAdd.parentIds = res.data.id
idsName = res.data.menuName;
}
this.productModelAdd.parentId = res.data.id
this.productModelAdd.parentIdsName = idsName
this.$forceUpdate()
}else {
this.productModelAdd = res.data
}
}
})
},
update(data) {
this.modalType = 2
this.selectChildMenu(data)
this.productModal = true
this.productTitle = '编辑信息'
// const newChild = { id: this.id++, label: 'testtest', children: [] };
// if (!data.children) {
// this.$set(data, 'children', []);
// }
// data.children.push(newChild);
},
append(data) {
this.modalType = 1
this.selectChildMenu(data)
this.productModal = true
this.productTitle = '新增下级菜单信息'
this.productModelAdd.dicTypeCode = ''
// const newChild = { id: this.id++, label: 'testtest', children: [] };
// if (!data.children) {
// this.$set(data, 'children', []);
// }
// data.children.push(newChild);
},
remove(node, data) {
this.$confirm('是否删除菜单?', '提示', {
confirmButtonText: '确定',
confirmButtonClass: 'common-button-primary',
cancelButtonText: '取消',
roundButton: true,
type: 'warning'
}).then(() => {
this.$http.delete("sarResource/ts-resource", {
resourceId: data.id
}, res => {
}, e => {
if(e.ok){
this.$message({
type: 'success',
message: "删除成功"
})
this.selectMenuList()
}else {
this.$message({
type: 'warning',
message: e.message
})
}
})
}).catch(() => {
this.$refs.selections.clearSelection()
this.$message({
type: 'info',
message: '已取消删除'
})
})
// const parent = node.parent;
// const children = parent.data.children || parent.data;
// const index = children.findIndex(d => d.id === data.id);
// children.splice(index, 1);
},
// 树节点鼠标移入移出
mouseenter(data){
console.log(data)
this.$set(data, 'show', true)
if(data.parentId !== null){
this.$set(data, 'showDel', true)
}
},
mouseleave(data){
this.$set(data, 'show', false)
this.$set(data, 'showDel', false)
},
/** /**
* @description: 起草人名称展示 * @description: 起草人名称展示
* @author: chenxiaoxi * @author: chenxiaoxi
@@ -3147,7 +3452,7 @@ export default {
mounted () { mounted () {
this.treeReload = true this.treeReload = true
// 进入页面后查询树形结构目录 // 进入页面后查询树形结构目录
this.selectMenu() this.selectMenuList()
// 查询各下拉框数据 // 查询各下拉框数据
this.$http.get('sys/dictype/getDicTypeListCode', '', { this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this _this: this
@@ -3194,7 +3499,7 @@ export default {
height: 100%; height: 100%;
//background: #fff; //background: #fff;
.tree-content { .tree-content {
width: 16%; width: 20%;
position: relative; position: relative;
/*height: 100%;*/ /*height: 100%;*/
background: #fff; background: #fff;
@@ -510,12 +510,7 @@
class="add-form-item" class="add-form-item"
> >
<template slot="label">乘用车VPPS编码</template> <template slot="label">乘用车VPPS编码</template>
<tree-select <el-input v-model="sarStandardsInfoEO.CYCVPPSBM" placeholder="选择乘用车VPPS编码" @click.native="choiceZRR2('cycvppsbm', '乘用车VPPS', sarStandardsInfoEO.cycvppsbm)"></el-input>
:disabled="false"
width = "340"
:data="busVppsOptions"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select>
</el-form-item> </el-form-item>
</template> </template>
<template v-else-if="field.attrField === 'KCCVPPSBM'"> <template v-else-if="field.attrField === 'KCCVPPSBM'">
@@ -525,12 +520,7 @@
class="add-form-item" class="add-form-item"
> >
<template slot="label">卡车VPPS编码</template> <template slot="label">卡车VPPS编码</template>
<tree-select <el-input v-model="sarStandardsInfoEO.KCCVPPSBM" placeholder="选择卡车VPPS编码" @click.native="choiceZRR3('kccvppsbm', '卡车VPPS', sarStandardsInfoEO.kccvppsbm)"></el-input>
:disabled="false"
width = "340"
:data="busVppsOptions"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs"></tree-select>
</el-form-item> </el-form-item>
</template> </template>
<template v-else-if="field.attrField === 'DYBXH'"> <template v-else-if="field.attrField === 'DYBXH'">
@@ -540,12 +530,7 @@
class="add-form-item" class="add-form-item"
> >
<template slot="label">模块结构单元变型号</template> <template slot="label">模块结构单元变型号</template>
<tree-select <el-input v-model="sarStandardsInfoEO.DYBXH" placeholder="选择模块结构单元变型号" @click.native="choiceZRR4('dybxh', '模块结构单元', sarStandardsInfoEO.dybxh)"></el-input>
width = "340"
:disabled="false"
:data="modelOptions"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel"></tree-select>
</el-form-item> </el-form-item>
</template> </template>
<template v-else-if="field.attrField === 'CYCVPPSCN'"> <template v-else-if="field.attrField === 'CYCVPPSCN'">
@@ -1031,6 +1016,37 @@
@click="closeModal">取消</el-button> @click="closeModal">取消</el-button>
</div> </div>
</el-drawer> </el-drawer>
<!-- 组件树-->
<tree-select-new
width = "500"
:lazy=true
:multiple=false
:modalShowFlag="modalShowFlag2"
:drawerTitle="drawerTitle"
:url="url"
:urlChild="urlChild"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select-new>
<tree-select-new
width = "500"
:lazy=true
:multiple=false
:modalShowFlag="modalShowFlag3"
:drawerTitle="drawerTitle"
:url="url"
:urlChild="urlChild"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs"></tree-select-new>
<tree-select-new
width = "500"
:lazy=true
:multiple=false
:modalShowFlag="modalShowFlag4"
:drawerTitle="drawerTitle"
:url="url"
:urlChild="urlChild"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel"></tree-select-new>
<!-- 导入失败 --> <!-- 导入失败 -->
<el-dialog :visible.sync="importFailed" :close-on-click-modal="false" width="400px"> <el-dialog :visible.sync="importFailed" :close-on-click-modal="false" width="400px">
<p slot="title" style="color:#f60"> <p slot="title" style="color:#f60">
@@ -1078,6 +1094,7 @@ import CustomRoleTree from '@/components/CustomFormComponents/roleTree'
import CustomDatePickWithText2 from '@/components/CustomFormComponents/DatePickerWithText2' import CustomDatePickWithText2 from '@/components/CustomFormComponents/DatePickerWithText2'
import { interfaceUrl } from "@/sysConfig"; import { interfaceUrl } from "@/sysConfig";
import TreeSelect from '@/components/treeSelect/treeSelect.vue'; import TreeSelect from '@/components/treeSelect/treeSelect.vue';
import TreeSelectNew from '@/components/treeSelect/treeSelectNew.vue';
export default { export default {
name: 'foreignStandardsAndRegulations', name: 'foreignStandardsAndRegulations',
@@ -1098,7 +1115,8 @@ export default {
CustomSVPPS, CustomSVPPS,
CustomRoleTree, CustomRoleTree,
CustomDatePickWithText2, CustomDatePickWithText2,
TreeSelect TreeSelect,
TreeSelectNew
}, },
data () { data () {
return { return {
@@ -1114,6 +1132,13 @@ export default {
}, },
nodeKeyCode: 'code', nodeKeyCode: 'code',
nodeKeyModel: 'model', nodeKeyModel: 'model',
modalShowFlag1: false, // drawer开关
modalShowFlag2: false, // drawer开关
modalShowFlag3: false, // drawer开关
modalShowFlag4: false, // drawer开关
url:'',
urlChild:'',
drawerTitle: '', //drawer标题
nodeKey: 'id', nodeKey: 'id',
defaultCheckedKeys1: [], defaultCheckedKeys1: [],
defaultCheckedKeys2: [], defaultCheckedKeys2: [],
@@ -1722,6 +1747,71 @@ export default {
watch: { watch: {
}, },
methods: { methods: {
choiceZRR2 (type, title, id) {
this.drawerTitle = title
this.modalShowFlag2 = true
this.url = ''
this.urlChild = ''
this.url="sarVppsTree/list"
this.urlChild="sarVppsTree/childByList"
},
choiceZRR3 (type, title, id) {
this.drawerTitle = title
this.modalShowFlag3 = true
this.url = ''
this.urlChild = ''
this.url="sarVppsTree/list"
this.urlChild="sarVppsTree/childByList"
},
choiceZRR4 (type, title, id) {
this.drawerTitle = title
this.modalShowFlag4 = true
this.url = ''
this.urlChild = ''
this.url="sarModelTree/list"
this.urlChild="sarModelTree/childByList"
},
popoverHideBusVs (checkedIds, checkedData,isShow,isLoadChild,topId) {
console.log(checkedData)
debugger
if(checkedData) {
if(checkedData.length > 0){
this.sarStandardsInfoEO.CYCVPPSBM = checkedData.map(item => item.code).join(",")
this.sarStandardsInfoEO.CYCVPPSCN = checkedData.map(item => item.chineseName).join(",")
}else {
this.sarStandardsInfoEO.CYCVPPSBM = checkedData.code
this.sarStandardsInfoEO.CYCVPPSCN = checkedData.chineseName
}
}
this.modalShowFlag2 = false
this.$forceUpdate()
},
popoverHideCarVs (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData) {
if(checkedData.length > 0){
this.sarStandardsInfoEO.KCCVPPSBM = checkedData.map(item => item.code).join(",")
this.sarStandardsInfoEO.KCCVPPSCN = checkedData.map(item => item.chineseName).join(",")
}else {
this.sarStandardsInfoEO.KCCVPPSBM = checkedData.code
this.sarStandardsInfoEO.KCCVPPSCN = checkedData.chineseName
}
}
this.modalShowFlag3 = false
this.$forceUpdate()
},
popoverHideModel (checkedIds, checkedData,isShow,isLoadChild,topId) {
if(checkedData) {
if(checkedData.length > 0){
this.sarStandardsInfoEO.DYBXH = checkedData.map(item => item.model).join(",")
this.sarStandardsInfoEO.DYMC = checkedData.map(item => item.name).join(",")
}else {
this.sarStandardsInfoEO.DYBXH = checkedData.model
this.sarStandardsInfoEO.DYMC = checkedData.name
}
}
this.modalShowFlag4 = false
this.$forceUpdate()
},
// 将文本状态的id与name对应 // 将文本状态的id与name对应
setMap(data){ setMap(data){
data.forEach(item => { data.forEach(item => {
@@ -1729,28 +1819,6 @@ export default {
}) })
console.log(this.textStatusMap, '文本状态的值') console.log(this.textStatusMap, '文本状态的值')
}, },
popoverHideBusVs (checkedIds, checkedData) {
if(checkedData){
this.sarStandardsInfoEO.CYCVPPSBM = checkedData.code
this.sarStandardsInfoEO.CYCVPPSCN = checkedData.chineseName
this.$forceUpdate()
}
},
popoverHideCarVs (checkedIds, checkedData) {
if(checkedData){
this.sarStandardsInfoEO.KCCVPPSBM = checkedData.code
this.sarStandardsInfoEO.KCCVPPSCN = checkedData.chineseName
this.$forceUpdate()
}
},
popoverHideModel (checkedIds, checkedData) {
if(checkedData){
this.sarStandardsInfoEO.DYBXH = checkedData.model
this.sarStandardsInfoEO.DYMC = checkedData.name
this.$forceUpdate()
}
},
busVsFunc(){ busVsFunc(){
this.$http.get('sarVppsTree/list', '', { this.$http.get('sarVppsTree/list', '', {
_this: this _this: this
@@ -1910,6 +1978,8 @@ export default {
this.personCollect.collectTitle = item.standName + ' ( 编号:' + item.standSort + ' ' + item.standNumber + ' )' this.personCollect.collectTitle = item.standName + ' ( 编号:' + item.standSort + ' ' + item.standNumber + ' )'
} }
this.personCollect.collectType = 'FOREIGN_STAND' this.personCollect.collectType = 'FOREIGN_STAND'
this.personCollect.id = item.id
this.personCollect.userId = this.$store.getters.userInfo.userId
this.$http.postData('person/personCollect', this.personCollect, { this.$http.postData('person/personCollect', this.personCollect, {
_this: this _this: this
}, res => { }, res => {
@@ -1946,6 +2016,7 @@ export default {
}, },
// 点击查看 // 点击查看
handlePreview (item) { handlePreview (item) {
console.log(item);
let routeUrl = this.$router.resolve({ let routeUrl = this.$router.resolve({
name: 'OtherStandardDetails', name: 'OtherStandardDetails',
params: { params: {
@@ -6,9 +6,9 @@
<el-tab-pane label="未符合项整改数据库" name="database"> <el-tab-pane label="未符合项整改数据库" name="database">
<rectification-database></rectification-database> <rectification-database></rectification-database>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="重点问题项管控" name="keynote"> <!-- <el-tab-pane label="重点问题项管控" name="keynote">-->
<key-issues></key-issues> <!-- <key-issues></key-issues>-->
</el-tab-pane> <!-- </el-tab-pane>-->
</el-tabs> </el-tabs>
</div> </div>
</div> </div>
@@ -92,6 +92,7 @@
<el-table-column <el-table-column
prop="standId" prop="standId"
width="180px" width="180px"
align="center"
label="标准编号"> label="标准编号">
<template slot-scope="scope"> <template slot-scope="scope">
<a @click="detailsStandard(scope.row)" class="table-jump">{{ scope.row.standId }}</a> <a @click="detailsStandard(scope.row)" class="table-jump">{{ scope.row.standId }}</a>
@@ -100,6 +101,7 @@
<el-table-column <el-table-column
prop="standName" prop="standName"
width="180px" width="180px"
align="center"
label="标准名称"> label="标准名称">
<template slot-scope="scope"> <template slot-scope="scope">
<a @click="detailsStandard(scope.row)" class="table-jump">{{ scope.row.standName }}</a> <a @click="detailsStandard(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
@@ -107,42 +109,56 @@
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="itemsNum" prop="itemsNum"
width="150"
align="center"
label="条款号"> label="条款号">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="itemsName" prop="itemsName"
width="150"
align="center"
label="条款名称"> label="条款名称">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="productLine" prop="productLine"
width="150"
align="center"
label="产品线"> label="产品线">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="productName" prop="productName"
width="150"
align="center"
label="项目名称"> label="项目名称">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="responsibleUnit" prop="responsibleUnit"
width="150"
align="center"
label="责任部门"> label="责任部门">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="dutyEngineer" prop="dutyEngineer"
width="150px" width="150"
align="center"
label="责任工程师"> label="责任工程师">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="authEngineer" prop="authEngineer"
width="150px" width="150"
align="center"
label="认证工程师"> label="认证工程师">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="qaEngineer" prop="qaEngineer"
width="150px" width="150"
align="center"
label="质量工程师"> label="质量工程师">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="actualCloseTime" prop="actualCloseTime"
width="150px" width="150"
align="center"
sortable sortable
label="实际关闭时间"> label="实际关闭时间">
<template slot-scope="scope">{{(scope.row.actualCloseTime ? scope.row.actualCloseTime.substring(0, 11): '')}}</template> <template slot-scope="scope">{{(scope.row.actualCloseTime ? scope.row.actualCloseTime.substring(0, 11): '')}}</template>
@@ -26,7 +26,7 @@
> >
<el-input <el-input
slot="reference" slot="reference"
v-model="nonConformitySearch.responseUnitShow" v-model="nonConformitySearch.responsibleUnitShow"
placeholder="根据责任部门查找" placeholder="根据责任部门查找"
readonly readonly
clearable clearable
@@ -117,9 +117,12 @@
fixed="left" fixed="left"
width="180" width="180"
label="标准编号"> label="标准编号">
<!-- <template slot-scope="scope">-->
<!-- <a @click="detailsStandard(scope.row)" class="table-jump">{{ scope.row.standId }}</a>-->
<!--&lt;!&ndash; {{ scope.row.standId }}&ndash;&gt;-->
<!-- </template>-->
<template slot-scope="scope"> <template slot-scope="scope">
<a @click="detailsStandard(scope.row)" class="table-jump">{{ scope.row.standId }}</a> <a class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standId }}</a>
<!-- {{ scope.row.standId }}-->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
@@ -346,7 +349,7 @@
</div> </div>
<div class="typeitems"> <div class="typeitems">
<div class="itemsLeft">责任部门:</div> <div class="itemsLeft">责任部门:</div>
<div class="itemsRight">{{item.responseUnitShow}}</div> <div class="itemsRight">{{item.responsibleUnitShow}}</div>
</div> </div>
<div class="typeitems"> <div class="typeitems">
<div class="itemsLeft">责任工程师:</div> <div class="itemsLeft">责任工程师:</div>
@@ -367,7 +370,7 @@
</div> </div>
<div class="typeitems"> <div class="typeitems">
<div class="itemsLeft">责任部门:</div> <div class="itemsLeft">责任部门:</div>
<div class="itemsRight">{{item.responseUnitShow}}</div> <div class="itemsRight">{{item.responsibleUnitShow}}</div>
</div> </div>
<div class="typeitems"> <div class="typeitems">
<div class="itemsLeft">责任工程师:</div> <div class="itemsLeft">责任工程师:</div>
@@ -521,6 +524,35 @@ export default {
}) })
} }
}, },
//
getOrgTreeSource () {
this.$http.get('sys/org/getTree', {}, {
_this: this
},
res => {
if (res.ok) {
let treeNode = []
res.data.map((item, index) => {
let treeItem = {}
for (let key in item) {
if (key === 'orgName') {
treeItem.name = item[key]
} else {
treeItem[key] = item[key]
}
}
treeNode[index] = treeItem
})
this.zNodesS = JSON.parse(JSON.stringify(treeNode))
this.zNodesSItem = JSON.parse(JSON.stringify(treeNode))
this.searchInlandNodes = JSON.parse(JSON.stringify(treeNode))
}
}, e => {})
},
treeClickSearch (treeId, treeNode) {
this.nonConformitySearch.responsibleUnit = treeNode.id
this.nonConformitySearch.responsibleUnitShow = treeNode.name
},
// //
clearAllSearch (search = true) { clearAllSearch (search = true) {
this.nonConformitySearch = { this.nonConformitySearch = {
@@ -568,6 +600,19 @@ export default {
openEditModal(item) { openEditModal(item) {
console.log(item) console.log(item)
}, },
//
handlePreview (item) {
console.log(item);
let routeUrl = this.$router.resolve({
name: 'OtherStandardDetails',
params: {
id: item.id,
pageType: 'FOREIGN_STAND'
// pageType: item.standType + '_STAND'
}
})
window.open(routeUrl.href, '_blank')
},
detailsStandard (item) { detailsStandard (item) {
this.$http.post('lawss/sarTestItem/validateStandNumber', { this.$http.post('lawss/sarTestItem/validateStandNumber', {
standnumber: item.standNum standnumber: item.standNum
@@ -610,6 +655,8 @@ export default {
}, },
mounted () { mounted () {
this.getTableByPage() this.getTableByPage()
//
this.getOrgTreeSource()
} }
}; };
</script> </script>
@@ -9,10 +9,12 @@
<div class="search-area"> <div class="search-area">
<el-form :model="standCommonlySearch" inline class="label-input-form"> <el-form :model="standCommonlySearch" inline class="label-input-form">
<el-formItem label="类别" class="search-item"> <el-formItem label="类别" class="search-item">
<el-input v-model="standCommonlySearch.categorg" class="s-c-input" placeholder="标准/政策" clearable :maxlength="100"></el-input> <el-input v-model="standCommonlySearch.categorg" class="s-c-input" placeholder="标准/政策" clearable
:maxlength="100"></el-input>
</el-formItem> </el-formItem>
<el-formItem label="关键字" class="search-item"> <el-formItem label="关键字" class="search-item">
<el-input v-model="standCommonlySearch.cname" class="s-c-input" placeholder="请输入关键字" clearable :maxlength="100"></el-input> <el-input v-model="standCommonlySearch.cname" class="s-c-input" placeholder="请输入关键字" clearable
:maxlength="100"></el-input>
</el-formItem> </el-formItem>
<el-formItem label="开始日期" class="search-item"> <el-formItem label="开始日期" class="search-item">
<el-datePicker v-model="standCommonlySearch.start" :editable="false" <el-datePicker v-model="standCommonlySearch.start" :editable="false"
@@ -28,11 +30,13 @@
size="mini" size="mini"
class="common-button-primary" class="common-button-primary"
@click="sarStandCompareHisInfo">查询</el-button> @click="sarStandCompareHisInfo">查询
</el-button>
<el-button <el-button
class="common-button-default" class="common-button-default"
size="mini" size="mini"
@click="clearSearchStand">清空</el-button> @click="clearSearchStand">清空
</el-button>
</el-formItem> </el-formItem>
</el-form> </el-form>
</div> </div>
@@ -54,7 +58,7 @@
label="标准" label="标准"
align="center"> align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<a class="table-jump" @click.stop="handlePreview(scope.row)">{{ scope.row.category }}</a> <a class="table-jump" @click.stop="handlePreview(scope.row)">{{ scope.row.category }}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
@@ -79,129 +83,134 @@
</div> </div>
</div> </div>
</div> </div>
<pagination :page="standCommonlySearch.page" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination> <pagination :page="standCommonlySearch.page" :total="total" @pageChange="pageChange"
@pageSizeChange="pageSizeChange"></pagination>
<loading :loading="spinShow">数据加载中</loading> <loading :loading="spinShow">数据加载中</loading>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
name: 'standardForComments', name: "standardForComments",
components: { components: {},
}, data() {
data () {
return { return {
standCommonlySearch: { standCommonlySearch: {
categorg: '', categorg: "",
cname: '', cname: "",
start: '', start: "",
end: '', end: "",
page: 1, page: 1,
size: this.$store.getters.userInfo.configContent size: this.$store.getters.userInfo.configContent
}, },
spinShow: false, spinShow: false,
standInfoList: [], standInfoList: [],
tableHeight: null, tableHeight: null,
total: 0 total: 0
} };
},
props: {
},
watch: {
}, },
props: {},
watch: {},
methods: { methods: {
// //
handlePreview (item) { handlePreview(item) {
this.$store.commit('setDetailMap',this.$router.path) this.$store.commit("setDetailMap", this.$router.path);
this.$router.push({ this.$router.push({
name: 'consultationDetails', name: "consultationDetails",
query: { query: {
item: item item: item
} }
}) });
},
//
clearSearchStand () {
this.standCommonlySearch.page = 1
this.standCommonlySearch.start = ''
this.standCommonlySearch.end = ''
this.standCommonlySearch.categorg = ''
this.standCommonlySearch.cname = ''
this.sarStandCompareHis()
}, },
// //
sarStandCompareHisInfo() { clearSearchStand() {
this.splitInfoPage = 1 this.standCommonlySearch.page = 1;
this.sarStandCompareHis() this.standCommonlySearch.start = "";
}, this.standCommonlySearch.end = "";
// this.standCommonlySearch.categorg = "";
sarStandCompareHis () { this.standCommonlySearch.cname = "";
this.spinShow = true this.sarStandCompareHis();
var form = this.standCommonlySearch },
this.$http.get('slrs/sar-public-idea/SelectAllPage', form, { //
_this: this sarStandCompareHisInfo() {
}, res => { this.splitInfoPage = 1;
this.standInfoList = res.data.records this.sarStandCompareHis();
this.total = res.data.total },
this.spinShow = false //
}, e => { sarStandCompareHis() {
}) this.spinShow = true;
}, var form = this.standCommonlySearch;
pageChange (page) { this.$http.get("slrs/sar-public-idea/SelectAllPage", form, {
this.standCommonlySearch.page = page _this: this
this.sarStandCompareHis() }, res => {
}, this.standInfoList = res.data.records;
// this.total = res.data.total;
pageSizeChange (pageSize) { this.spinShow = false;
this.$store.getters.userInfo.configContent = pageSize }, e => {
this.standCommonlySearch.size = pageSize });
this.sarStandCompareHis() },
}, pageChange(page) {
}, this.standCommonlySearch.page = page;
computed: { this.sarStandCompareHis();
}, },
mounted () { //
this.sarStandCompareHis() pageSizeChange(pageSize) {
this.tableHeight = $('.content').height() - 44 this.$store.getters.userInfo.configContent = pageSize;
window.onresize = () => { this.standCommonlySearch.size = pageSize;
this.tableHeight = $('.content').height() - 44 this.sarStandCompareHis();
} }
},
computed: {},
mounted() {
this.sarStandCompareHis();
this.tableHeight = $(".content").height() - 44;
window.onresize = () => {
this.tableHeight = $(".content").height() - 44;
};
} }
} };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
@import '~@/assets/styles/mixins'; @import '~@/assets/styles/mixins';
@import '~@/assets/styles/style'; @import '~@/assets/styles/style';
.standardForComments { .standardForComments {
height: 100%; height: 100%;
background: #fff; background: #fff;
.el-divider--horizontal { .el-divider--horizontal {
display: block; display: block;
height: 1px; height: 1px;
width: 100%; width: 100%;
margin: 0; margin: 0;
} }
.flex(); .flex();
flex-direction: column; flex-direction: column;
.action-bar { .action-bar {
margin-bottom: 5px; margin-bottom: 5px;
padding: 0; padding: 0;
} }
.content { .content {
flex: auto; flex: auto;
overflow: hidden; overflow: hidden;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
.table-wrap { .table-wrap {
flex: auto; flex: auto;
overflow: hidden; overflow: hidden;
position: relative; position: relative;
} }
} }
& > .pagination { & > .pagination {
position: static; position: static;
/deep/.pagination-slot {
/deep/ .pagination-slot {
padding: 0; padding: 0;
} }
} }
+18
View File
@@ -339,6 +339,24 @@ const routes = [
title: '项目合规评估流程' title: '项目合规评估流程'
} }
}, },
{
path: '/xmpg2Step1',
name: 'xmpg2Step1',
component: () => import('@/pages/processCenter/pages/creatProcess/xmpg2/step1.vue'),
meta: {
requireAuth: true,
title: '项目合规评估流程-项目'
}
},
{
path: '/xmpg2Step2',
name: 'xmpg2Step2',
component: () => import('@/pages/processCenter/pages/creatProcess/xmpg2/step2.vue'),
meta: {
requireAuth: true,
title: '项目合规评估流程-项目'
}
},
{ {
path: '/wfhxzgStep1', path: '/wfhxzgStep1',
name: 'wfhxzgStep1', name: 'wfhxzgStep1',
+1 -1
View File
@@ -7,7 +7,7 @@
// const devIp = '39.98.140.126' // const devIp = '39.98.140.126'
// const devInterfacePORT = '10005' // const devInterfacePORT = '10005'
// const devIp = '192.168.10.248' // const devIp = '192.168.10.248'
const devIp = '192.168.1.102' const devIp = '10.96.170.173'
const devInterfacePORT = '9999' const devInterfacePORT = '9999'
// 云端端口号 // 云端端口号
const DEV_CLOUD_RES_INTERFACE_PORT = '7777' const DEV_CLOUD_RES_INTERFACE_PORT = '7777'
+1 -1
View File
@@ -86,7 +86,7 @@ module.exports = {
} }
}, },
'/onlyOffice': { '/onlyOffice': {
target: 'http://172.20.10.2:8888', target: 'http://10.96.10.171',
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {
'^/onlyOffice': '/api' '^/onlyOffice': '/api'