Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
@@ -10,24 +10,24 @@
|
||||
标准法规管理系统 Standard and Regulations Management System
|
||||
</span>
|
||||
<!-- header头部 右侧内容 当前登录人和退出-->
|
||||
<div class="header-right" style="display: inline-block; float: right; margin-right: 20px; color: #fff">
|
||||
<div>
|
||||
<el-dropdown
|
||||
trigger="click"
|
||||
@command="handleCommand"
|
||||
>
|
||||
<div>
|
||||
<img :src="userAvator" v-if="$store.getters.userInfo.avator">
|
||||
<span class="iconfont" v-else style="color: #FFFFFF;"></span>
|
||||
<span style="color: #FFFFFF;">{{ $store.getters.userInfo.uName }}</span>
|
||||
<i style="color: #FFFFFF;" class="el-icon-arrow-down"/>
|
||||
</div>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item command="loginOut">退出</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="header-right" style="display: inline-block; float: right; margin-right: 20px; color: #fff">-->
|
||||
<!-- <div>-->
|
||||
<!-- <el-dropdown-->
|
||||
<!-- trigger="click"-->
|
||||
<!-- @command="handleCommand"-->
|
||||
<!-- >-->
|
||||
<!-- <div>-->
|
||||
<!-- <img :src="userAvator" v-if="$store.getters.userInfo.avator">-->
|
||||
<!-- <span class="iconfont" v-else style="color: #FFFFFF;"></span>-->
|
||||
<!-- <span style="color: #FFFFFF;">{{ $store.getters.userInfo.uName }}</span>-->
|
||||
<!-- <i style="color: #FFFFFF;" class="el-icon-arrow-down"/>-->
|
||||
<!-- </div>-->
|
||||
<!-- <el-dropdown-menu slot="dropdown">-->
|
||||
<!-- <el-dropdown-item command="loginOut">退出</el-dropdown-item>-->
|
||||
<!-- </el-dropdown-menu>-->
|
||||
<!-- </el-dropdown>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
<!-- <div class="header-left">-->
|
||||
<!-- <span class="logo" @click="toHome" title="回到首页"></span>-->
|
||||
|
||||
@@ -0,0 +1,674 @@
|
||||
<!-- 配置管理 - 属性自定义 - 其他 -->
|
||||
<template>
|
||||
<div class="attribute-custom v-class">
|
||||
<div class="action-bar1">
|
||||
<el-button class="common-button-primary add-button" size="mini" type="primary" v-btn-permission="''" @click="showAddModel"><i class="el-icon-plus"></i>新增</el-button>
|
||||
</div>
|
||||
<loading :loading="attributeDataLoading">数据处理中</loading>
|
||||
<div class="content">
|
||||
<el-table
|
||||
style="width: 100%;"
|
||||
:data="attributeList"
|
||||
height="100%"
|
||||
border
|
||||
ref="selections"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
@on-selection-change="handleSelectone"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="sarType"
|
||||
label="所属模块"
|
||||
width="140"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{ getSarTypeText(scope.row.sarType) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="attrField"
|
||||
label="属性字段"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="attrName"
|
||||
label="属性名称"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="attrType"
|
||||
label="属性类型"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{ getAttrTypeText(scope.row.attrType) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="attrLen"
|
||||
label="字段长度"
|
||||
width="120"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="orderNum"
|
||||
label="展示顺序"
|
||||
width="100"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" width="50" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<div @click.stop style="display: inline-block">
|
||||
<el-dropdown trigger="click" @command="handleCommand">
|
||||
<i class="iconfont"></i>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'b1e60ec7b60389713bf5b450ec2d1115'">编辑</el-dropdown-item>
|
||||
<el-dropdown-item :disabled="scope.row.isEdit==='1'" v-btn-permission="'c157be4e073787ea6c4a04bd39686c2d'" :command="[scope.row, '删除']">删除</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<pagination :total="total" :pageChange="pageNo" :pageSizeChange="pageSize" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
||||
<!-- 新建抽屉-->
|
||||
<el-drawer
|
||||
:title="attributeTitle"
|
||||
:visible.sync="showInfoModal"
|
||||
size="800px"
|
||||
:styles="styles"
|
||||
:wrapperClosable="false"
|
||||
@close="cancelModel"
|
||||
>
|
||||
<div class="demo-drawer-content">
|
||||
<el-form
|
||||
ref="attributeEO"
|
||||
:model="attributeEO"
|
||||
:rules="attributeEOFormRules"
|
||||
class="label-input-form"
|
||||
label-width="150px"
|
||||
>
|
||||
<input v-model="attributeEO.id" v-show="false">
|
||||
<el-form-item label="所属模块" prop="sarType" class="add-form-item" v-show="false">
|
||||
<el-input v-model="attributeEO.sarType" ></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="属性字段" prop="attrField" class="add-form-item" :class="{'form-item-disabled': addOrEdit === 'edit'}">
|
||||
<el-input v-model.trim="attributeEO.attrField" :disabled="addOrEdit === 'edit'" placeholder="请输入属性字段" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="属性名称" prop="attrName" class="add-form-item">
|
||||
<el-input v-model.trim="attributeEO.attrName" placeholder="请输入属性名称" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="属性类型" prop="attrType" class="add-form-item" :class="{'form-item-disabled': addOrEdit === 'edit'}">
|
||||
<el-select v-model="attributeEO.attrType" placeholder="请选择" :disabled="addOrEdit === 'edit'" filterable>
|
||||
<el-option
|
||||
v-for="item in attrTypeOptions"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
:key="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="选项值" prop="selVal" class="add-form-item" v-if="attributeEO.attrType === 'SEL_OPTION' || attributeEO.attrType === 'SEL_OPTS'">
|
||||
<el-select v-model="attributeEO.selVal" placeholder="请选择" :disabled="addOrEdit === 'edit'" filterable>
|
||||
<el-option
|
||||
v-for="item in relateDicIdOptions"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
:key="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="字段长度" prop="attrLen" class="add-form-item">
|
||||
<el-input v-model.number="attributeEO.attrLen" :disabled="addOrEdit === 'edit'" placeholder="只允许输入正整数" number :maxlength="4"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="展示顺序" prop="orderNum" class="add-form-item">
|
||||
<el-input v-model.number="attributeEO.orderNum" placeholder="只允许输入正整数" number :maxlength="3"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="是否必填" prop="isMust" class="add-form-item">
|
||||
<el-select v-model="attributeEO.isMust">
|
||||
<el-option v-for="opt in isMustOptions" :key="opt.value" :value="opt.value" :label="opt.label">{{ opt.label }}</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="是否展示" prop="isShowImp" class="add-form-item">
|
||||
<el-select v-model="attributeEO.isShowImp">
|
||||
<el-option
|
||||
v-for="opt in isMustOptions"
|
||||
:key="opt.value"
|
||||
:value="opt.value"
|
||||
:label="opt.label"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<div id="roleFormButton" class="demo-drawer-footer">
|
||||
<el-button class="common-button-primary" icon="el-icon-check" type="primary" @click="saveInfo()">提交</el-button>
|
||||
<el-button class="common-button-default" icon="el-icon-close" @click="cancelModel">取消</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
|
||||
<!-- <el-dialog
|
||||
destroy-on-close
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
:visible.sync="displayLocationFormDialogVisible"
|
||||
:title="displayLocationFormDialogTilte"
|
||||
@on-ok="handleDisplayLocationFormDialogSubmit('displayLocationDialogForm')"
|
||||
@on-cancel="handleDisplayLocationFormDialogReset('displayLocationDialogForm')"
|
||||
width="400px"
|
||||
>
|
||||
<el-form
|
||||
ref="displayLocationDialogForm"
|
||||
:model="displayLocationDialogFormData"
|
||||
:rules="displayLocationDialogFormRules"
|
||||
label-width="100px"
|
||||
class="label-input-form"
|
||||
>
|
||||
<el-form-item label="区域名称" prop="areaName" class="add-form-item">
|
||||
<el-input v-model="displayLocationDialogFormData.areaName" placeholder="请输入区域名称"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属模块" prop="sarType" class="add-form-item">
|
||||
<el-select v-model="displayLocationDialogFormData.sarType" filterable>
|
||||
<el-option
|
||||
v-for="item in sarTypeLocationOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="排序号" prop="showIndex" class="add-form-item">
|
||||
<el-input v-model.number="displayLocationDialogFormData.showIndex" placeholder="请输入排序号"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button class="common-button-default" @click="handleDisplayLocationFormDialogReset('displayLocationDialogForm')">取 消</el-button>
|
||||
<el-button class="common-button-primary" type="primary" @click="handleDisplayLocationFormDialogSubmit('displayLocationDialogForm')">确 定</el-button>
|
||||
</span>
|
||||
</el-dialog>-->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
const sarType = 'OTHER'
|
||||
export default {
|
||||
name: 'attribute-custom',
|
||||
data () {
|
||||
return {
|
||||
sarType: sarType,
|
||||
displayLocationDialogTableConfig: {
|
||||
columns: [
|
||||
{
|
||||
title: '展示区域',
|
||||
key: 'areaName'
|
||||
},
|
||||
{
|
||||
title: '排序号',
|
||||
key: 'showIndex'
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
slot: 'operations'
|
||||
}
|
||||
],
|
||||
page: {
|
||||
pageSize: 100,
|
||||
currentPage: 1,
|
||||
total: 0
|
||||
},
|
||||
loading: false
|
||||
},
|
||||
displayLocationDialogTableData: [],
|
||||
displayLocationDialogVisible: false,
|
||||
displayLocationFormDialogVisible: false,
|
||||
defaultDisplayLocationDialogFormData: {
|
||||
areaName: '',
|
||||
sarType: '',
|
||||
showIndex: ''
|
||||
},
|
||||
displayLocationDialogFormData: {
|
||||
areaName: '',
|
||||
showIndex: ''
|
||||
},
|
||||
displayLocationDialogFormRules: {
|
||||
areaName: [
|
||||
{ required: true, message: '请输入展示区域', trigger: 'blur' },
|
||||
{ type: 'string', max: 100, message: '最多输入100字', trigger: 'blur' }
|
||||
],
|
||||
sarType: [
|
||||
{required: true, message: '所属模块不能为空', trigger: 'change'}
|
||||
],
|
||||
showIndex: [
|
||||
{ type: 'number', required: true, message: '不能为空且为正整数', trigger: 'blur' },
|
||||
{ type: 'number', min: 0, max: 999, message: '请输入0-999之间的整数', trigger: 'blur' }
|
||||
]
|
||||
},
|
||||
attributeDataLoading: false,
|
||||
attributeList: [],
|
||||
total: 0,
|
||||
pageNo: 1,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
attributeEO: {
|
||||
id: '',
|
||||
attrField: '',
|
||||
attrName: '',
|
||||
attrLen: '',
|
||||
attrType: '',
|
||||
orderNum: '',
|
||||
isMust: '1',
|
||||
isShowImp: '0',
|
||||
selVal: '',
|
||||
isSearch: '1',
|
||||
sarType: 'OTHER',
|
||||
isWarn: '1'
|
||||
},
|
||||
attrTypeOptions: [
|
||||
{ label: '输入框(字符串)', value: 'INPUT_STR' },
|
||||
{ label: '输入框(数字)', value: 'INPUT_NUM' },
|
||||
{ label: '单选下拉框', value: 'SEL_OPTION' },
|
||||
{ label: '多选下拉框', value: 'SEL_OPTS' },
|
||||
{ label: '单日期选择', value: 'DATE_PICKER' },
|
||||
{ label: '多日期选择', value: 'DATE_PIC_OPTS' },
|
||||
{ label: '文件', value: 'FILE' },
|
||||
{ label: '文本框', value: 'TEXTAREA' }
|
||||
],
|
||||
sarTypeLocationOptions: [
|
||||
// { label: '国内政策', value: 'INLAND_LAWS' },
|
||||
{ label: '国内外政策', value: 'Other' }
|
||||
],
|
||||
isMustOptions: [
|
||||
{ label: '是', value: '0' },
|
||||
{ label: '否', value: '1' }
|
||||
],
|
||||
showRegionOptions: [],
|
||||
relateDicIdOptions: [],
|
||||
attributeTitle: '',
|
||||
showInfoModal: false,
|
||||
attributeEOFormRules: {
|
||||
sarType: [
|
||||
{required: true, message: '所属模块不能为空', trigger: 'change'}
|
||||
],
|
||||
attrField: [
|
||||
{required: true, message: '属性字段不能为空', trigger: 'blur'},
|
||||
{type: 'string', max: 50, message: '最多输入50位', trigger: 'blur'},
|
||||
{type: 'string', validator: this.verify.validFieldOracle, trigger: 'blur'}
|
||||
],
|
||||
attrName: [
|
||||
{required: true, message: '属性名称不能为空', trigger: 'blur'},
|
||||
{type: 'string', max: 100, message: '最多输入100位', trigger: 'blur'}
|
||||
],
|
||||
attrType: [
|
||||
{required: true, message: '属性类型不能为空', trigger: 'change'}
|
||||
],
|
||||
attrLen: [
|
||||
{type: 'number', required: true, message: '字段长度不能为空且为正整数', trigger: 'blur'},
|
||||
{type: 'string', validator: this.verify.validStandNumInCompile2, trigger: 'blur'}
|
||||
],
|
||||
orderNum: [
|
||||
{type: 'number', required: true, message: '展示顺序不能为空且为正整数', trigger: 'blur'},
|
||||
{type: 'string', validator: this.verify.validStandNumInCompile2, trigger: 'blur'}
|
||||
],
|
||||
isMust: [
|
||||
{required: true, message: '是否必填不能为空', trigger: 'change'}
|
||||
],
|
||||
isShowImp: [
|
||||
{required: true, message: '是否展示必填不能为空', trigger: 'change'}
|
||||
],
|
||||
showRegionId:[
|
||||
{required:true, message:'展示区域不能为空', trigger:'change'}
|
||||
]
|
||||
},
|
||||
styles: {
|
||||
height: 'calc(100% - 55px)',
|
||||
overflow: 'auto',
|
||||
paddingBottom: '53px',
|
||||
position: 'static'
|
||||
},
|
||||
addOrEdit: '',
|
||||
selectedList: []
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
/*displayLocationFormDialogTilte () {
|
||||
const formData = {...this.displayLocationDialogFormData}
|
||||
const isEdit = !!formData.id
|
||||
return isEdit ? '修改展示区域' : '新增展示区域'
|
||||
}*/
|
||||
},
|
||||
methods: {
|
||||
// 更多
|
||||
handleCommand (command) {
|
||||
switch (command[1]) {
|
||||
case '编辑':
|
||||
this.handleTableEdit(command[0])
|
||||
break
|
||||
case '删除':
|
||||
this.handleTableDelete(command[0])
|
||||
break
|
||||
}
|
||||
},
|
||||
// 展示区域 更多
|
||||
handleCommand2 (command) {
|
||||
switch (command[1]) {
|
||||
case '修改':
|
||||
this.showAddDisplayLocationDialog(command[0])
|
||||
break
|
||||
case '删除':
|
||||
this.removeDisplayLocation(command[0])
|
||||
break
|
||||
}
|
||||
},
|
||||
removeDisplayLocation (data) {
|
||||
this.$confirm('确认删除该条数据?', {
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: false,
|
||||
title: '确认删除',
|
||||
callback: (action, instance) => {
|
||||
if (action === 'confirm') {
|
||||
const {id} = data
|
||||
this.$http.delete('lawssBase/utArea/deleteById', {
|
||||
id,
|
||||
sarType: this.sarType
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.queryDisplayLocationDialogTableData()
|
||||
}, e => {
|
||||
console.log(e)
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
handleDisplayLocationFormDialogSubmit (name) {
|
||||
this.$refs[name].validate((valid) => {
|
||||
if (valid) {
|
||||
const formData = {...this.displayLocationDialogFormData, sarType: this.sarType}
|
||||
const isEdit = !!formData.id
|
||||
const url = isEdit ? 'lawssBase/utArea/updateUtArea' : 'lawssBase/utArea/createUtArea'
|
||||
const method = isEdit ? 'putData' : 'postData'
|
||||
this.$http[method](url, formData, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.displayLocationFormDialogVisible = false
|
||||
this.queryDisplayLocationDialogTableData()
|
||||
// this.displayLocationDialogTableData = res.data.list
|
||||
// this.displayLocationDialogTableConfig.page.total = res.data.count
|
||||
}, e => {
|
||||
console.log(e)
|
||||
})
|
||||
} else {
|
||||
// this.$message.error('Fail!')
|
||||
}
|
||||
})
|
||||
},
|
||||
handleDisplayLocationFormDialogReset (name) {
|
||||
this.displayLocationFormDialogVisible = false
|
||||
this.$nextTick(() => {
|
||||
this.$refs.displayLocationDialogForm.resetFields()
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 打开新增展示区域管理弹框
|
||||
*/
|
||||
showAddDisplayLocationDialog (data) {
|
||||
if (data) {
|
||||
// 编辑
|
||||
this.displayLocationDialogFormData = {
|
||||
areaName: data.areaName,
|
||||
showIndex: data.showIndex,
|
||||
id: data.id,
|
||||
sarType: data.sarType
|
||||
}
|
||||
} else {
|
||||
this.displayLocationDialogFormData = {...this.defaultDisplayLocationDialogFormData}
|
||||
}
|
||||
|
||||
this.displayLocationFormDialogVisible = true
|
||||
},
|
||||
/**
|
||||
* 查询展示区域管理弹框里的列表数据
|
||||
*/
|
||||
queryDisplayLocationDialogTableData () {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.$http.get('lawssBase/utArea/page', {
|
||||
page: this.displayLocationDialogTableConfig.page.currentPage,
|
||||
pageSize: this.displayLocationDialogTableConfig.page.pageSize,
|
||||
sarType: this.sarType
|
||||
}, {
|
||||
_this: this.displayLocationDialogTableConfig,
|
||||
loading: 'loading'
|
||||
}, res => {
|
||||
this.displayLocationDialogTableData = res.data.list
|
||||
this.displayLocationDialogTableConfig.page.total = res.data.count
|
||||
resolve(res)
|
||||
}, e => {
|
||||
console.log(e)
|
||||
reject(e)
|
||||
})
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 查询新增弹框里的列表数据
|
||||
*/
|
||||
queryDisplayLocationList (sarType) {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.$http.get('lawssBase/utArea/getAreaList', {
|
||||
sarType: sarType || this.sarType
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.showRegionOptions = res.data || []
|
||||
resolve(res)
|
||||
}, e => {
|
||||
console.log(e)
|
||||
reject(e)
|
||||
})
|
||||
})
|
||||
},
|
||||
handleSelectone (data) {
|
||||
this.selectedList = []
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectedList.push(data[i].id)
|
||||
}
|
||||
},
|
||||
pageChange (page) {
|
||||
this.pageNo = page
|
||||
this.getAttrByPage()
|
||||
},
|
||||
pageSizeChange (pageSize) {
|
||||
this.pageSize = pageSize
|
||||
this.getAttrByPage()
|
||||
},
|
||||
getAttrByPage () {
|
||||
this.$http.get('lawss/sarStandAttrDetails/page', {
|
||||
page: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
sarType: this.sarType
|
||||
}, {
|
||||
_this: this,
|
||||
loading: 'attributeDataLoading'
|
||||
},
|
||||
res => {
|
||||
this.attributeList = res.data.list
|
||||
this.total = res.data.count
|
||||
}, e => {})
|
||||
this.$refs.selections.clearSelection()
|
||||
},
|
||||
async showAddModel () {
|
||||
await this.queryDisplayLocationList()
|
||||
// this.$refs['attributeEO'] && this.$refs['attributeEO'].resetFields()
|
||||
this.attributeEO.newWebSite = ''
|
||||
this.addOrEdit = 'add'
|
||||
this.attributeTitle = '新增'
|
||||
this.showInfoModal = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs['attributeEO'].resetFields()
|
||||
})
|
||||
},
|
||||
saveInfo () {
|
||||
this.$refs['attributeEO'].validate((valid) => {
|
||||
if (valid) {
|
||||
if ((this.attributeEO.attrType === 'SEL_OPTION' || this.attributeEO.attrType === 'SEL_OPTS') && (this.attributeEO.selVal == null || this.attributeEO.selVal === '')) {
|
||||
this.$message.warning('下拉框类型字段,选项值不能为空')
|
||||
} else {
|
||||
if (this.addOrEdit === 'add') {
|
||||
this.$http.postData('lawss/sarStandAttrDetails/createStandAttrDetails', this.attributeEO,
|
||||
{
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.getAttrByPage()
|
||||
this.showInfoModal = false
|
||||
} else {
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$http.putData('lawss/sarStandAttrDetails/updateStandAttrDetails', this.attributeEO,
|
||||
{
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.getAttrByPage()
|
||||
this.showInfoModal = false
|
||||
} else {
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
cancelModel () {
|
||||
this.showInfoModal = false
|
||||
this.$refs['attributeEO'] && this.$refs['attributeEO'].resetFields()
|
||||
},
|
||||
deleteAttr () {
|
||||
if (this.selectedList.length === 0) {
|
||||
this.$message.error('请先选择要删除的数据!')
|
||||
} else {
|
||||
this.$confirm('确认删除选中数据?', {
|
||||
title: '提示',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: false,
|
||||
callback: (action, instance) => {
|
||||
if (action === 'confirm') {
|
||||
this.$http.put('lawss/sarStandAttrDetails/deleteByIds', {
|
||||
ids: this.selectedList.join(','),
|
||||
sarType: this.sarType
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.getAttrByPage()
|
||||
}, e => {
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
getDictionarySelList () {
|
||||
this.$http.get('sys/dictionary/getDictionaryCodeSelList', {
|
||||
sarType: this.sarType
|
||||
}, {
|
||||
_this: this
|
||||
},
|
||||
res => {
|
||||
this.relateDicIdOptions = res.data
|
||||
}, e => {})
|
||||
},
|
||||
getAttrTypeText (type) {
|
||||
let texts = ''
|
||||
if (type === 'INPUT_STR') {
|
||||
texts = '输入框(字符串)'
|
||||
} else if (type === 'INPUT_NUM') {
|
||||
texts = '输入框(数字)'
|
||||
} else if (type === 'SEL_OPTION') {
|
||||
texts = '单选下拉框'
|
||||
} else if (type === 'SEL_OPTS') {
|
||||
texts = '多选下拉框'
|
||||
} else if (type === 'DATE_PICKER') {
|
||||
texts = '单日期选择'
|
||||
} else if (type === 'DATE_PIC_OPTS') {
|
||||
texts = '多日期选择'
|
||||
} else if (type === 'FILE') {
|
||||
texts = '文件'
|
||||
} else if (type === 'TEXTAREA') {
|
||||
texts = '文本框'
|
||||
}
|
||||
return texts
|
||||
},
|
||||
getSarTypeText (type) {
|
||||
let texts = ''
|
||||
if (type === 'OTHER') {
|
||||
texts = '其他'
|
||||
}
|
||||
return texts
|
||||
},
|
||||
async handleTableEdit (params) {
|
||||
await this.queryDisplayLocationList(params.sarType)
|
||||
// this.$refs['attributeEO'] && this.$refs['attributeEO'].resetFields()
|
||||
this.addOrEdit = 'edit'
|
||||
this.attributeTitle = '编辑'
|
||||
this.showInfoModal = true
|
||||
this.attributeEO = JSON.parse(JSON.stringify(params))
|
||||
},
|
||||
handleTableDelete (params) {
|
||||
this.selectedList = []
|
||||
this.selectedList.push(params.id)
|
||||
this.deleteAttr()
|
||||
},
|
||||
async handleSarTypeChange (sarType) {
|
||||
this.attributeEO.showRegionId = ''
|
||||
await this.queryDisplayLocationList(sarType)
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
this.getAttrByPage()
|
||||
this.getDictionarySelList()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/mixins';
|
||||
.attribute-custom{
|
||||
background: #FFF;
|
||||
height: 100%;
|
||||
position: relative;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex: auto;
|
||||
.action-bar{
|
||||
padding: 0;
|
||||
}
|
||||
.content {
|
||||
padding: 0;
|
||||
overflow-y: auto;
|
||||
flex: auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
//height: calc(~'100% - 50px - 56px');
|
||||
}
|
||||
.pagination {
|
||||
position: static;
|
||||
/deep/ .pagination-slot {
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
.modalStyle{
|
||||
padding: 14px;
|
||||
font-size: 15px;
|
||||
}
|
||||
.sysMenuTreeDiv{
|
||||
height: 400px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -16,6 +16,11 @@
|
||||
<buss v-if="tabValue === 'buss'"></buss>
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<!-- <el-tab-pane label="其他" name="other">
|
||||
<div style="position: absolute;top: 0;left: 0;right: 0;bottom: 0;">
|
||||
<other v-if="tabValue === 'other'"></other>
|
||||
</div>
|
||||
</el-tab-pane>-->
|
||||
</el-tabs>
|
||||
</div>
|
||||
</template>
|
||||
@@ -24,12 +29,14 @@
|
||||
import Laws from './components/laws'
|
||||
import Stand from './components/stand'
|
||||
import Buss from './components/buss'
|
||||
/*import Other from './components/other'*/
|
||||
export default {
|
||||
name: 'index',
|
||||
components: {
|
||||
Laws,
|
||||
Stand,
|
||||
Buss
|
||||
Buss,
|
||||
// Other
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
|
||||
@@ -15,132 +15,190 @@
|
||||
:key="index"
|
||||
v-if="item.isShowImp === '0'"
|
||||
>
|
||||
<div class="modular-header" v-if="item.label !== '基础信息'">
|
||||
<div class="modular-header-title"><i class="icon-modular-title"/><span>{{ item.label }}</span></div>
|
||||
</div>
|
||||
<div class="modular-header" v-if="item.label === '基础信息'">
|
||||
<div class="modular-header-title"><i class="icon-modular-title"/><span>{{ item.label }}</span></div>
|
||||
<!-- <div class="modular-header-title"><i class="icon-modular-title" /><span>企标信息</span>-->
|
||||
<!-- </div>-->
|
||||
<div class="modular-header-btn">
|
||||
<el-button v-if="sarStandardsInfoEO.collectId" @click="collectClick(sarStandardsInfoEO.collectId)" title="取消收藏" class="collection-btn" icon="icon-collection" :loading="isSubmit"></el-button>
|
||||
<el-button v-else @click="collectClick()" title="收藏" class="collection-btn" icon="el-icon-star-off" :loading="isSubmit"></el-button>
|
||||
<el-button class="relation-btn" icon="icon-relation" @click="relateEvent()">更新LOG</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modular-content">
|
||||
<template v-if = "item.label === '基础信息'">
|
||||
<div class="details-content-modular basic-information" style="margin-bottom: 0">
|
||||
<div class="basic-information-content">
|
||||
<p style="color: #C42626;"><label style=" margin-right: 171px;">企标号</label><span>{{ sarStandardsInfoEO.standCode }}</span></p>
|
||||
<p><label style=" margin-right: 157px;">中文名称</label><span>{{ sarStandardsInfoEO.standName || '-' }}</span></p>
|
||||
<p><label style=" margin-right: 157px;">英文名称</label><span>{{ sarStandardsInfoEO.standEnName || '-' }}</span></p>
|
||||
<p>
|
||||
<label style=" margin-right: 156px;"
|
||||
title="“修订中”为现行有效版本;“已修订”标准的有效性需根据实际实施情况判定"
|
||||
>文本状态</label><span style="color: #409EFF;">{{ sarStandardsInfoEO.standStatusShow || '-' }}</span>
|
||||
</p>
|
||||
<p><label style=" margin-right: 157px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
|
||||
<p style="border: none;"><label style=" margin-right: 122px;">标准实施日期</label><span>{{ sarStandardsInfoEO.putTime || '-' }}</span></p>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template
|
||||
v-for="(child, childIndex) in item.child"
|
||||
v-if="child.isShowImp === '0'"
|
||||
>
|
||||
<div
|
||||
:key="childIndex"
|
||||
class="modular-item"
|
||||
:class="halfClass(child, item.child[childIndex + 1], childIndex)"
|
||||
>
|
||||
<label class="modular-content-p-name" :title="child.attrName">{{ child.attrName }}</label>
|
||||
<span
|
||||
v-if="child.attrField === 'ZYQCR'"
|
||||
class="modular-content-p-val clearfix"
|
||||
:title="child.value || '-'"
|
||||
<el-collapse v-model="activeNames" @change="handleChange">
|
||||
<el-collapse-item :name="item.label" @click.native="handleChange1(item.label)">
|
||||
<template slot="title">
|
||||
<div class="modular-header" v-if="item.label !== '基础信息'">
|
||||
<div class="modular-header-title"><i class="icon-modular-title"/><span>{{ item.label }}</span></div>
|
||||
</div>
|
||||
<div class="modular-header" v-if="item.label === '基础信息'">
|
||||
<div class="modular-header-title"><i class="icon-modular-title"/><span>{{ item.label }}</span></div>
|
||||
<!-- <div class="modular-header-title"><i class="icon-modular-title" /><span>企标信息</span>-->
|
||||
<!-- </div>-->
|
||||
<div class="modular-header-btn">
|
||||
<el-button v-if="sarStandardsInfoEO.collectId" @click="collectClick(sarStandardsInfoEO.collectId)" title="取消收藏" class="collection-btn" icon="icon-collection" :loading="isSubmit"></el-button>
|
||||
<el-button v-else @click="collectClick()" title="收藏" class="collection-btn" icon="el-icon-star-off" :loading="isSubmit"></el-button>
|
||||
<el-button class="relation-btn" icon="icon-relation" @click="relateEvent()">更新LOG</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<div class="modular-content">
|
||||
<template v-if = "item.label === '基础信息'">
|
||||
<div class="details-content-modular basic-information" style="margin-bottom: 0">
|
||||
<div class="basic-information-content">
|
||||
<p class="half" style="color: #C42626;"><label style=" margin-right: 171px;">企标号</label><span>{{ sarStandardsInfoEO.standCode }}</span></p>
|
||||
<template v-for="(child, childIndex) in item.child1">
|
||||
<p class="half files-title"
|
||||
>
|
||||
<label style=" margin-right: 102px;">{{ child.attrName }}</label>
|
||||
<template v-for="(file, fileIndex) in child1Func(child.value)">
|
||||
<span>
|
||||
<a style="font-size: 16px;color: #409EFF;cursor: pointer" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{ file.oldFileName | ellipsis }}</a>
|
||||
<i
|
||||
title="下载"
|
||||
@click="downloadFile(file.id)"
|
||||
class="icon-download"
|
||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||||
/>
|
||||
<i
|
||||
title="下载带水印"
|
||||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||||
class="icon-download2"
|
||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||||
/>
|
||||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||||
</span>
|
||||
<!-- <el-button-->
|
||||
<!-- v-if="child.attrField === itemNam "-->
|
||||
<!-- v-for="(itemNam,index) in itemExistList"-->
|
||||
<!-- :key="index"-->
|
||||
<!-- @click="showItemsModel(child.attrField)"-->
|
||||
<!-- class="decomposition-btn"-->
|
||||
<!-- style="right:62px"-->
|
||||
<!-- icon="icon-separate"-->
|
||||
<!-- >标准分解单-->
|
||||
<!-- </el-button>-->
|
||||
<el-button v-if="child.value.length > 1" style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);"
|
||||
class="decomposition-btn" icon="icon-relation" @click="relateEvent1(child.value)">更多</el-button>
|
||||
</template>
|
||||
<template v-if="!child.value && child.value.length === 0">-</template>
|
||||
</p>
|
||||
</template>
|
||||
<p><label style="margin-right: 157px;">中文名称</label><span>{{ sarStandardsInfoEO.standName || '-' }}</span></p>
|
||||
<p v-if="activeState"><label style=" margin-right: 157px;">英文名称</label><span>{{ sarStandardsInfoEO.standEnName || '-' }}</span></p>
|
||||
<p class="half">
|
||||
<label style=" margin-right: 156px;"
|
||||
title="“修订中”为现行有效版本;“已修订”标准的有效性需根据实际实施情况判定"
|
||||
>文本状态</label><span style="color: #409EFF;">{{ sarStandardsInfoEO.standStatusShow || '-' }}</span>
|
||||
</p>
|
||||
<p class="half"><label style=" margin-right: 157px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
|
||||
<p class="half" style=""><label style=" margin-right: 122px;">标准实施日期</label><span>{{ sarStandardsInfoEO.putTime || '-' }}</span></p>
|
||||
<template
|
||||
v-for="(child, childIndex) in item.child"
|
||||
v-if="child.isShowImp === '0'"
|
||||
>
|
||||
<p class="half">
|
||||
<label style=" margin-right: 157px;" :title="child.attrName">{{child.attrName}}</label>
|
||||
<span :title="child.value || '-'">
|
||||
<template v-if="child.value">
|
||||
{{ child.value }}
|
||||
</template>
|
||||
<template v-else>
|
||||
{{ '-' }}
|
||||
</template>
|
||||
</span>
|
||||
</p>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template
|
||||
v-for="(child, childIndex) in item.child"
|
||||
v-if="child.isShowImp === '0' && item.label !== '基础信息'"
|
||||
>
|
||||
<div
|
||||
:key="childIndex"
|
||||
:class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'"
|
||||
>
|
||||
<label class="modular-content-p-name" :title="child.attrName">{{ child.attrName }}</label>
|
||||
<span
|
||||
v-if="child.attrField === 'ZYQCR'"
|
||||
class="modular-content-p-val clearfix"
|
||||
:title="child.value || '-'"
|
||||
>
|
||||
<template v-if="child.value">
|
||||
{{ child.value }}
|
||||
<put-question-button
|
||||
style="float: right;"
|
||||
:resId="sarStandardsInfoEO.id"
|
||||
:resType="saveStandType"
|
||||
style="float: right;"
|
||||
:resId="sarStandardsInfoEO.id"
|
||||
:resType="saveStandType"
|
||||
></put-question-button>
|
||||
</template>
|
||||
<template v-else>
|
||||
{{ '-' }}
|
||||
</template>
|
||||
</span>
|
||||
<!--规范性引用文件-->
|
||||
<template v-else-if="child.attrField === 'GFXYYWJ' && child.value">
|
||||
<p class="modular-content-p-val">
|
||||
<!--规范性引用文件-->
|
||||
<template v-else-if="child.attrField === 'GFXYYWJ' && child.value">
|
||||
<p class="modular-content-p-val">
|
||||
<span v-for="(item, index) in child.value.split(',')" :key="index">
|
||||
<a @click="showReplaceStandInfo(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" class="span-line">{{item}}</a>
|
||||
</span>
|
||||
</p>
|
||||
</template>
|
||||
<!--相关流程-->
|
||||
<template v-else-if="child.attrField === 'XGLC' && child.value">
|
||||
<p class="modular-content-p-val">
|
||||
</p>
|
||||
</template>
|
||||
<!--相关流程-->
|
||||
<template v-else-if="child.attrField === 'XGLC' && child.value">
|
||||
<p class="modular-content-p-val">
|
||||
<span v-for="(item, index) in child.value.split(',')" :key="index">
|
||||
<a @click="processCenterClick(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" class="span-line">{{item}}</a>
|
||||
</span>
|
||||
</p>
|
||||
</template>
|
||||
<!--相关计划-->
|
||||
<template v-else-if="child.attrField === 'XGJH' && child.value">
|
||||
</p>
|
||||
</template>
|
||||
<!--相关计划-->
|
||||
<template v-else-if="child.attrField === 'XGJH' && child.value">
|
||||
<span
|
||||
v-if="child.value.length === 0"
|
||||
class="modular-content-p-val"
|
||||
:title="'-'"
|
||||
v-if="child.value.length === 0"
|
||||
class="modular-content-p-val"
|
||||
:title="'-'"
|
||||
>
|
||||
{{ '-' }}
|
||||
</span>
|
||||
<p v-else class="modular-content-p-val">
|
||||
<p v-else class="modular-content-p-val">
|
||||
<span v-for="(item, index) in child.value" :key="index">
|
||||
<a @click="showXGJH(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" class="span-line">查看计划</a>
|
||||
</span>
|
||||
</p>
|
||||
</template>
|
||||
<span
|
||||
v-else-if="child.attrField === 'SVPPS'"
|
||||
class="modular-content-p-val"
|
||||
:title="child.tips || '-'"
|
||||
>
|
||||
</p>
|
||||
</template>
|
||||
<span
|
||||
v-else-if="child.attrField === 'SVPPS'"
|
||||
class="modular-content-p-val"
|
||||
:title="child.tips || '-'"
|
||||
>
|
||||
{{ !child.value || child.value === 'null' ? '-' : child.value }}
|
||||
</span>
|
||||
<span
|
||||
v-else-if="child.attrType !== 'FILE'"
|
||||
class="modular-content-p-val"
|
||||
:title="child.value || '-'"
|
||||
>
|
||||
<span
|
||||
v-else-if="child.attrType !== 'FILE'"
|
||||
class="modular-content-p-val"
|
||||
:title="child.value || '-'"
|
||||
>
|
||||
{{ child.value || '-' }}
|
||||
</span>
|
||||
<div v-else class="modular-content-p-flies">
|
||||
<p
|
||||
class="files-title"
|
||||
v-for="(file, fileIndex) in child.value"
|
||||
:key="fileIndex"
|
||||
>
|
||||
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank">{{ file.oldFileName }}</a>
|
||||
<i title="下载" @click="downloadFile(file.id)" class="icon-download" v-btn-permission="'9882f477aad895ec56a7464f3e9c0b11'"/>
|
||||
<i title="下载带水印" @click="downloadFileByWater(file.id, file.fileSuffix)" class="icon-download2" v-btn-permission="'9bab2662fbd9d0507b39be813371a597'"/>
|
||||
<span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>
|
||||
</p>
|
||||
<!-- <el-button-->
|
||||
<!-- @click="showItemsModel(child.attrField)"-->
|
||||
<!-- class="decomposition-btn"-->
|
||||
<!-- icon="icon-separate"-->
|
||||
<!-- >标准分解单</el-button>-->
|
||||
</div>
|
||||
</div>
|
||||
<div v-else class="modular-content-p-flies">
|
||||
<p
|
||||
class="files-title"
|
||||
v-for="(file, fileIndex) in child.value"
|
||||
:key="fileIndex"
|
||||
>
|
||||
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank">{{ file.oldFileName }}</a>
|
||||
<i title="下载" @click="downloadFile(file.id)" class="icon-download" v-btn-permission="'9882f477aad895ec56a7464f3e9c0b11'"/>
|
||||
<i title="下载带水印" @click="downloadFileByWater(file.id, file.fileSuffix)" class="icon-download2" v-btn-permission="'9bab2662fbd9d0507b39be813371a597'"/>
|
||||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||||
</p>
|
||||
<!-- <el-button-->
|
||||
<!-- @click="showItemsModel(child.attrField)"-->
|
||||
<!-- class="decomposition-btn"-->
|
||||
<!-- icon="icon-separate"-->
|
||||
<!-- >标准分解单</el-button>-->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
</div>
|
||||
<div v-show="!isMoreAwayBtn" class="more" @click="moreClick">更多<img src="@/assets/images/shangqi/img/more.png"></div>
|
||||
<!-- <div v-show="!isMoreAwayBtn" class="more" @click="moreClick">更多<img src="@/assets/images/shangqi/img/more.png"></div>-->
|
||||
<!-- <div v-show="isMoreAwayBtn" class="put-away" @click="putAwayClick">收起<img src="@/assets/images/shangqi/img/more.png"></div>-->
|
||||
<!--查看标准条目列表-->
|
||||
<el-drawer
|
||||
@@ -518,6 +576,40 @@
|
||||
<el-button type="primary" @click="relateDialogClose()">关 闭</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
title="更多发布稿"
|
||||
:visible.sync="relateDialog1"
|
||||
class="relateClass"
|
||||
width="40%"
|
||||
:before-close="relateDialogClose1">
|
||||
<div
|
||||
v-for="(file, index) in relateNowList1"
|
||||
:key="index"
|
||||
v-if="relateNowList1"
|
||||
style="margin-bottom: 10px;line-height: 20px;max-height: 300px"
|
||||
>
|
||||
{{ index + 1 }}.
|
||||
<a style="font-size: 16px;color: #409EFF;cursor: pointer" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{ file.oldFileName }}</a>
|
||||
<i
|
||||
title="下载"
|
||||
@click="downloadFile(file.id)"
|
||||
class="icon-download"
|
||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||||
/>
|
||||
<i
|
||||
title="下载带水印"
|
||||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||||
class="icon-download2"
|
||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||||
/>
|
||||
<div v-if="relateNowList.length >1">
|
||||
<el-divider></el-divider>
|
||||
</div>
|
||||
</div>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="relateDialogClose1">关 闭</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<!-- 导入失败-->
|
||||
<el-dialog :visible.sync="importFailed" :close-on-click-modal="false" width="400px">
|
||||
<p slot="title" style="color:#f60">
|
||||
@@ -874,13 +966,26 @@ export default {
|
||||
components: {
|
||||
PutQuestionButton
|
||||
},
|
||||
filters: {
|
||||
ellipsis (value) {
|
||||
if (!value) return ''
|
||||
if (value.length > 12) {
|
||||
return value.slice(0,12) + '...'
|
||||
}
|
||||
return value
|
||||
}
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
activeNames: ['基础信息'],
|
||||
activeState: false,
|
||||
visiblePlanCheck: false,
|
||||
form: {},
|
||||
relateDialog: false,
|
||||
relateDialog1: false,
|
||||
relateList: [],
|
||||
relateNowList: [],
|
||||
relateNowList1: [],
|
||||
sarType: sarType,
|
||||
loading: true,
|
||||
showItemInfoModal: false,
|
||||
@@ -1079,6 +1184,23 @@ export default {
|
||||
watch: {
|
||||
},
|
||||
methods: {
|
||||
child1Func(child1){
|
||||
const list = []
|
||||
console.log(child1)
|
||||
if(child1 && child1.length > 1){
|
||||
list.push(child1[0])
|
||||
return list
|
||||
}
|
||||
return child1
|
||||
},
|
||||
handleChange(val) {
|
||||
console.log(val)
|
||||
},
|
||||
handleChange1(val) {
|
||||
if(val && val === '基础信息'){
|
||||
this.activeState = true
|
||||
}
|
||||
},
|
||||
getPlanStatusName(status) {
|
||||
switch (status) {
|
||||
case "1":
|
||||
@@ -1913,6 +2035,10 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
relateEvent1(list){
|
||||
this.relateDialog1 = true
|
||||
this.relateNowList1 = list
|
||||
},
|
||||
// 更新LOG
|
||||
relateEvent () {
|
||||
this.$http.get('lawss/sarUpdLog/getLogList', {
|
||||
@@ -1942,6 +2068,10 @@ export default {
|
||||
|
||||
})
|
||||
},
|
||||
relateDialogClose1() {
|
||||
this.relateDialog1 = false
|
||||
this.relateNowList = []
|
||||
},
|
||||
relateDialogClose () {
|
||||
this.relateDialog = false
|
||||
this.relateNowList = []
|
||||
@@ -2019,6 +2149,7 @@ export default {
|
||||
const [displayLocation, {attrInfoMap: dynamicFormField}, formFieldList] = values
|
||||
// const relatedPlansRes = await this.queryRelatedPlans()
|
||||
// const relatedPlans = relatedPlansRes.list
|
||||
console.log(formFieldList)
|
||||
formFieldList.forEach((field) => {
|
||||
displayLocation.forEach((location) => {
|
||||
location.isShowImp = '0'
|
||||
@@ -2046,22 +2177,47 @@ export default {
|
||||
// }
|
||||
}
|
||||
}
|
||||
if (location.label === '文本信息') {
|
||||
if (location.label === '过程稿件') {
|
||||
location.isShowImp = '0'
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
displayLocation.forEach(location => {
|
||||
// 动态属性字段-FBGBJBD 单独添加至基础信息
|
||||
const list = displayLocation.filter ( item => item.label === '过程稿件');
|
||||
console.log(list)
|
||||
if(location.label === '基础信息' && list && list.length > 0){
|
||||
if (!list[0].child) {
|
||||
location['child1'] = []
|
||||
}else {
|
||||
const childList = list[0].child.filter ( item => item.attrField === 'FBGBUSS');
|
||||
console.log(childList)
|
||||
console.log(childList.length)
|
||||
location['child1'] = childList
|
||||
console.log(location['child1'])
|
||||
}
|
||||
}
|
||||
|
||||
const child = location.child || []
|
||||
const halfType = ['INPUT_STR', 'DATE_PICKER', 'SEL_OPTION', 'INPUT_NUM']
|
||||
const fieldsIsTextAreaOrFile = child.filter(field => {
|
||||
return !halfType.includes(field.attrType)
|
||||
return field.attrField !== 'FBGBUSS' && !halfType.includes(field.attrType)
|
||||
})
|
||||
const fieldOthers = child.filter(field => {
|
||||
return halfType.includes(field.attrType)
|
||||
return halfType.includes(field.attrType)
|
||||
})
|
||||
location.child = [...fieldOthers, ...fieldsIsTextAreaOrFile].sort(this.compare('orderNum'))
|
||||
})
|
||||
for (let i = 0; i < displayLocation.length; i++) {
|
||||
// sss
|
||||
if(displayLocation[i].label !== '基础信息' && displayLocation[i].label !== '过程稿件'){
|
||||
const childList = displayLocation[i].child.filter ( item => item.value !== null && item.value !== '');
|
||||
if(childList.length === 0){
|
||||
displayLocation.splice(i,1)
|
||||
}
|
||||
}
|
||||
}
|
||||
this.dynamicFormField = displayLocation
|
||||
sessionStorage.setItem('displayLocation', JSON.stringify(displayLocation))
|
||||
this.loading = false
|
||||
@@ -2085,6 +2241,63 @@ export default {
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/mixins';
|
||||
@import '~@/assets/styles/style';
|
||||
/deep/ .el-collapse{
|
||||
border: none;
|
||||
}
|
||||
|
||||
/deep/ .el-collapse-item__wrap{
|
||||
border: none;
|
||||
}
|
||||
|
||||
/deep/ .decomposition-btn {
|
||||
position: absolute;
|
||||
top: 6px;
|
||||
right: 0;
|
||||
padding: 0 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
font-size: 14px;
|
||||
color: #07C160;
|
||||
border: 1px solid #07C160;
|
||||
background: rgba(1, 193, 96, 0.1);
|
||||
|
||||
/deep/ .icon-separate {
|
||||
display: inline-block;
|
||||
margin-right: 3px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 100%;
|
||||
background-position: center center;
|
||||
vertical-align: sub;
|
||||
background-image: url("~assets/images/shangqi/standardDetails/separate.png");
|
||||
}
|
||||
}
|
||||
/deep/ .icon-download {
|
||||
display: inline-block;
|
||||
margin-left: 3px;
|
||||
width: 18px;
|
||||
height: 16px;
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 100%;
|
||||
background-position: center center;
|
||||
vertical-align: sub;
|
||||
cursor: pointer;
|
||||
background-image: url("~assets/images/shangqi/img/download.png");
|
||||
}
|
||||
|
||||
/deep/ .icon-download2 {
|
||||
display: inline-block;
|
||||
margin-left: 3px;
|
||||
width: 18px;
|
||||
height: 16px;
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 100%;
|
||||
background-position: center center;
|
||||
vertical-align: sub;
|
||||
cursor: pointer;
|
||||
background-image: url("~assets/images/shangqi/img/download2.png");
|
||||
}
|
||||
.other-standard-details{
|
||||
padding: 15px 30px 0;
|
||||
width: 1200px;
|
||||
@@ -2108,6 +2321,7 @@ export default {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
width: 100%;
|
||||
height: 50px;
|
||||
border-bottom: 1px solid #E5E5E5;
|
||||
.modular-header-title{
|
||||
@@ -2122,7 +2336,8 @@ export default {
|
||||
background-size: 100% 100%;
|
||||
background-position: center center;
|
||||
background-image: url("~assets/images/shangqi/standardDetails/modular-title.png");
|
||||
vertical-align: top;
|
||||
position: relative;
|
||||
top: 2px;
|
||||
}
|
||||
& > span{
|
||||
padding-left: 10px;
|
||||
@@ -2186,11 +2401,12 @@ export default {
|
||||
.modular-content{
|
||||
& > div{
|
||||
border-bottom: 1px solid #E5E5E5;
|
||||
height: 44px;
|
||||
.modular-content-p-name{
|
||||
display: inline-block;
|
||||
width: 220px;
|
||||
height: 50px;
|
||||
line-height: 50px;
|
||||
height: 43px;
|
||||
line-height: 43px;
|
||||
font-size: 16px;
|
||||
color: #333333;
|
||||
vertical-align: top;
|
||||
@@ -2270,16 +2486,14 @@ export default {
|
||||
}
|
||||
}
|
||||
.basic-information{
|
||||
/*border-top: 2px dashed #D1D1D1;*/
|
||||
border-bottom: 2px dashed #D1D1D1;
|
||||
.modular-header{
|
||||
height: 60px;
|
||||
border-bottom: none;
|
||||
}
|
||||
.basic-information-content{
|
||||
& > p{
|
||||
min-height: 55px;
|
||||
line-height: 55px;
|
||||
min-height: 42px;
|
||||
line-height: 43px;
|
||||
border-bottom: 1px solid #E5E5E5;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
v-if="item.isShowImp === '0'"
|
||||
>
|
||||
<el-collapse v-model="activeNames" @change="handleChange">
|
||||
<el-collapse-item :name="item.label">
|
||||
<el-collapse-item :name="item.label" @click.native="handleChange1(item.label)">
|
||||
<template slot="title">
|
||||
<div class="modular-header" v-if="item.label === '基础信息'">
|
||||
<div class="modular-header-title"><i class="icon-modular-title"/><span>{{ item.label }}</span></div>
|
||||
@@ -57,43 +57,45 @@
|
||||
<!-- <p><label style=" margin-right: 150px;">标准年份</label><span>{{ sarStandardsInfoEO.standYear || '-' }}</span></p>-->
|
||||
<template v-for="(child, childIndex) in item.child1">
|
||||
<p class="half files-title"
|
||||
v-for="(file, fileIndex) in child1Func(child.value)"
|
||||
>
|
||||
<label style=" margin-right: 102px;">{{ child.attrName }}</label>
|
||||
<span>
|
||||
<a style="font-size: 16px;color: #409EFF;cursor: pointer" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{ file.oldFileName | ellipsis }}</a>
|
||||
<i
|
||||
title="下载"
|
||||
@click="downloadFile(file.id)"
|
||||
class="icon-download"
|
||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||||
/>
|
||||
<i
|
||||
title="下载带水印"
|
||||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||||
class="icon-download2"
|
||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||||
/>
|
||||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||||
</span>
|
||||
<el-button
|
||||
v-if="child.attrField === itemNam "
|
||||
v-for="(itemNam,index) in itemExistList"
|
||||
:key="index"
|
||||
@click="showItemsModel(child.attrField)"
|
||||
class="decomposition-btn"
|
||||
style="right:62px"
|
||||
icon="icon-separate"
|
||||
>标准分解单
|
||||
</el-button>
|
||||
<el-button v-if="child.value.length > 1" style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);"
|
||||
class="decomposition-btn" icon="icon-relation" @click="relateEvent1(child.value)">更多</el-button>
|
||||
<template v-for="(file, fileIndex) in child1Func(child.value)">
|
||||
<span>
|
||||
<a style="font-size: 16px;color: #409EFF;cursor: pointer" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{ file.oldFileName | ellipsis }}</a>
|
||||
<i
|
||||
title="下载"
|
||||
@click="downloadFile(file.id)"
|
||||
class="icon-download"
|
||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||||
/>
|
||||
<i
|
||||
title="下载带水印"
|
||||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||||
class="icon-download2"
|
||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||||
/>
|
||||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||||
</span>
|
||||
<el-button
|
||||
v-if="child.attrField === itemNam "
|
||||
v-for="(itemNam,index) in itemExistList"
|
||||
:key="index"
|
||||
@click="showItemsModel(child.attrField)"
|
||||
class="decomposition-btn"
|
||||
style="right:62px"
|
||||
icon="icon-separate"
|
||||
>标准分解单
|
||||
</el-button>
|
||||
<el-button v-if="child.value.length > 1" style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);"
|
||||
class="decomposition-btn" icon="icon-relation" @click="relateEvent1(child.value)">更多</el-button>
|
||||
</template>
|
||||
<template v-if="!child.value && child.value.length === 0">-</template>
|
||||
</p>
|
||||
</template>
|
||||
<p><label style=" margin-right: 150px;">中文名称</label><span>{{
|
||||
sarStandardsInfoEO.standName || '-'
|
||||
}}</span></p>
|
||||
<p><label style=" margin-right: 150px;">英文名称</label><span>{{
|
||||
<p v-if="activeState"><label style=" margin-right: 150px;">英文名称</label><span>{{
|
||||
sarStandardsInfoEO.standEnName || '-'
|
||||
}}</span></p>
|
||||
<p class="half">
|
||||
@@ -1415,6 +1417,7 @@
|
||||
data() {
|
||||
return {
|
||||
activeNames: ['基础信息'],
|
||||
activeState: false,
|
||||
itemExistList:[],
|
||||
interpretationContent: '',
|
||||
relatedTermsDrawerVisible: false,
|
||||
@@ -1720,7 +1723,12 @@
|
||||
return child1
|
||||
},
|
||||
handleChange(val) {
|
||||
console.log(val);
|
||||
console.log(val)
|
||||
},
|
||||
handleChange1(val) {
|
||||
if(val && val === '基础信息'){
|
||||
this.activeState = true;
|
||||
}
|
||||
},
|
||||
judgeSuffix(fileName){
|
||||
if ('pdf'===fileName.substring(fileName.lastIndexOf('.') + 1)){
|
||||
@@ -3106,18 +3114,10 @@
|
||||
})
|
||||
})
|
||||
|
||||
for (let i = 0; i < displayLocation.length; i++) {
|
||||
// sss
|
||||
if(displayLocation[i].label !== '基础信息' && displayLocation[i].label !== '过程稿件'){
|
||||
const childList = displayLocation[i].child.filter ( item => item.value !== null && item.value !== '');
|
||||
if(childList.length === 0){
|
||||
displayLocation.splice(i,1)
|
||||
}
|
||||
}
|
||||
}
|
||||
displayLocation.forEach(location => {
|
||||
// 动态属性字段-FBGBJBD 单独添加至基础信息
|
||||
const list = displayLocation.filter ( item => item.label === '过程稿件');
|
||||
console.log()
|
||||
if(location.label === '基础信息' && list && list.length > 0){
|
||||
if (!list[0].child) {
|
||||
location['child1'] = []
|
||||
@@ -3162,6 +3162,16 @@
|
||||
location.showAll = false
|
||||
})
|
||||
|
||||
for (let i = 0; i < displayLocation.length; i++) {
|
||||
// sss
|
||||
if(displayLocation[i].label !== '基础信息' && displayLocation[i].label !== '过程稿件'){
|
||||
const childList = displayLocation[i].child.filter ( item => item.value !== null && item.value !== '');
|
||||
if(childList.length === 0){
|
||||
displayLocation.splice(i,1)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.$http.get('sarLawsAttrDetailedList/sar-laws-attr-detailed-list', {
|
||||
id: this.$route.params.id
|
||||
}, {
|
||||
@@ -3232,6 +3242,14 @@
|
||||
}
|
||||
}
|
||||
|
||||
/deep/ .el-collapse{
|
||||
border: none;
|
||||
}
|
||||
|
||||
/deep/ .el-collapse-item__wrap{
|
||||
border: none;
|
||||
}
|
||||
|
||||
/deep/ .el-collapse-item__content {
|
||||
padding-bottom: 0px;
|
||||
font-size: 13px;
|
||||
@@ -3522,8 +3540,8 @@
|
||||
.modular-content-p-name {
|
||||
display: inline-block;
|
||||
width: 220px;
|
||||
height: 50px;
|
||||
line-height: 50px;
|
||||
height: 43px;
|
||||
line-height: 43px;
|
||||
font-size: 16px;
|
||||
color: #333333;
|
||||
vertical-align: top;
|
||||
@@ -3622,7 +3640,7 @@
|
||||
|
||||
.basic-information-content {
|
||||
& > p {
|
||||
min-height: 43px;
|
||||
min-height: 42px;
|
||||
line-height: 43px;
|
||||
border-bottom: 1px solid #E5E5E5;
|
||||
}
|
||||
|
||||
+5
-2
@@ -181,9 +181,12 @@
|
||||
<!-- <el-option v-for="opt in standSortOptions" :value="opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}</el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-formItem label="标准号/名称" prop="numberName" class="search-item">
|
||||
<el-input v-model="sarBussionessSearch.numberName" clearable placeholder="根据标准号/名称查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"/>
|
||||
<el-formItem label="标准号" prop="numberName" class="search-item">
|
||||
<el-input v-model="sarBussionessSearch.standCode" clearable placeholder="根据标准号查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"/>
|
||||
</el-formItem>
|
||||
<el-formItem label="标准名称" prop="standName" class="search-item">
|
||||
<el-input v-model="sarBussionessSearch.standName" clearable placeholder="根据标准名称查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"/>
|
||||
</el-formItem>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
:loading="searching"
|
||||
|
||||
@@ -1,7 +1,491 @@
|
||||
<template>
|
||||
<div class="workingGroup1" ref="wrap">
|
||||
<div class="header" v-if="headerNo">
|
||||
<div class="header-left">
|
||||
<span style="font-weight: 600;">当前节点: </span>{{ addForm.pName }}
|
||||
</div>
|
||||
<div class="header-right">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-if="addButton"
|
||||
@click="addItem">
|
||||
新增
|
||||
</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-if="addItemButton"
|
||||
@click="">
|
||||
新增标准
|
||||
</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-if="editButton"
|
||||
@click="">
|
||||
编辑
|
||||
</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-if="seeButton"
|
||||
@click="">
|
||||
查看
|
||||
</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-if="seeItemButton"
|
||||
@click="">
|
||||
查看标准
|
||||
</el-button>
|
||||
<el-button
|
||||
type="danger"
|
||||
size="mini"
|
||||
class="common-button-default"
|
||||
v-if="delectButton"
|
||||
@click="">
|
||||
删除
|
||||
</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<div id="container"></div>
|
||||
<el-drawer
|
||||
ref="standard"
|
||||
size="1000px"
|
||||
:title="addDrawerTitle"
|
||||
:visible.sync="addDrawer"
|
||||
:before-close="addDrawerClose">
|
||||
<div class="content">
|
||||
<div class="standard-table-search">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form :model="addForm" inline class="label-input-form">
|
||||
<el-form-item label="上级节点" style="width: 100%; margin-right:10px" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="addForm.pName"
|
||||
disabled
|
||||
:maxlength="100"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="节点类型" style="width: 100%; margin-right:10px" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="addForm.itemType"
|
||||
disabled
|
||||
:maxlength="100"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="编号" style="width: 100%; margin-right:10px" prop="number" class="add-form-item">
|
||||
<el-input
|
||||
v-model="addForm.number"
|
||||
placeholder="请输入编号"
|
||||
:maxlength="100"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="名称" style="width: 100%; margin-right:10px" prop="name" class="add-form-item">
|
||||
<el-input
|
||||
v-model="addForm.name"
|
||||
placeholder="请输入名称"
|
||||
:maxlength="100"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="换届时间" style="width: 100%; margin-right:10px" prop="hjTime" class="add-form-item">
|
||||
<el-date-picker
|
||||
v-model="addForm.hjTime"
|
||||
type="date"
|
||||
placeholder="请选择换届时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准化工作领域" style="width: 100%; margin-right:10px" prop="field" class="add-form-item">
|
||||
<el-input
|
||||
v-model="addForm.field"
|
||||
placeholder="请输入标准化工作领域"
|
||||
:maxlength="100"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" style="width: 100%; margin-right:10px" prop="mark" class="add-form-item">
|
||||
<el-input
|
||||
v-model="addForm.mark"
|
||||
placeholder="请输入备注"
|
||||
:maxlength="100"/>
|
||||
</el-form-item>
|
||||
<div class="formTitle">
|
||||
<div class="left">秘书处联系方式</div>
|
||||
<div class="right">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
@click="addTelItem">
|
||||
添加联系方式
|
||||
</el-button>
|
||||
<el-button
|
||||
type="danger"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-if="addForm.wgNetInfos.length"
|
||||
@click="delTelItem">
|
||||
删除
|
||||
</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-table
|
||||
:data="addForm.wgNetInfos"
|
||||
style="width: 100%"
|
||||
border
|
||||
@selection-change="val => delNetInfos = val"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
align="center"
|
||||
width="55"
|
||||
v-if="addForm.wgNetInfos.length">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="联络人"
|
||||
prop="joinPerson"
|
||||
align="center"
|
||||
width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPerson"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="单位"
|
||||
prop="joinPersonCompany"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPersonCompany"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="电话"
|
||||
prop="joinPersonPhone"
|
||||
align="center"
|
||||
width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPersonPhone"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="邮箱"
|
||||
prop="joinPersonEmail"
|
||||
align="center"
|
||||
width="200">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPersonEmail"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="formTitle">
|
||||
<div class="left">集团参与情况</div>
|
||||
<div class="right">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
@click="addCyItem">
|
||||
添加联系方式
|
||||
</el-button>
|
||||
<el-button
|
||||
type="danger"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-if="addForm.wgNetInfos.length"
|
||||
@click="delCyItem">
|
||||
删除
|
||||
</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-table
|
||||
:data="addForm.wgDepts"
|
||||
style="width: 100%"
|
||||
border
|
||||
@selection-change="val => delDepts = val"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
align="center"
|
||||
width="55"
|
||||
v-if="addForm.wgDepts.length">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="我司在工作组排名顺序"
|
||||
prop="joinPm"
|
||||
align="center"
|
||||
width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPm"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="我司人员"
|
||||
prop="joinPerson"
|
||||
align="center"
|
||||
width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPerson"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="单位"
|
||||
prop="joinPersonCompany"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPersonCompany"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="部门"
|
||||
prop="joinDept"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinDept"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="电话"
|
||||
prop="joinPersonPhone"
|
||||
align="center"
|
||||
width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPersonPhone"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="邮箱"
|
||||
prop="joinPersonEmail"
|
||||
align="center"
|
||||
width="200">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPersonEmail"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="身份"
|
||||
prop="joinSf"
|
||||
align="center"
|
||||
width="200">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinSf"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="joinfile"
|
||||
label="资料"
|
||||
width="250"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div v-if="scope.row.joinfile.length > 0" class="fileClass">
|
||||
<div v-for="(item, index) in scope.row.joinfile" :key="index" @click="fileUpload('集团参与情况', scope.$index)" style="margin-right: 5px;">
|
||||
{{ item.name }}
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
@click="fileUpload('集团参与情况', scope.$index)"
|
||||
size="mini">
|
||||
点击上传
|
||||
</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="formTitle">
|
||||
<div class="left">支付信息</div>
|
||||
<div class="right">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
@click="addZfItem">
|
||||
添加支付信息
|
||||
</el-button>
|
||||
<el-button
|
||||
type="danger"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-if="addForm.wgPayInfos.length"
|
||||
@click="delZfItem">
|
||||
删除
|
||||
</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-table
|
||||
:data="addForm.wgPayInfos"
|
||||
style="width: 100%"
|
||||
border
|
||||
@selection-change="val => delPayInfos = val"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
align="center"
|
||||
width="55"
|
||||
v-if="addForm.wgPayInfos.length">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="费用"
|
||||
prop="joinPrice"
|
||||
align="center"
|
||||
width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinPrice"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="年份"
|
||||
prop="joinYear"
|
||||
align="center"
|
||||
width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinYear"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="状态"
|
||||
prop="joinStatus"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinStatus"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="计划内"
|
||||
prop="joinJhn"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinJhn"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="缴费方式"
|
||||
prop="joinJffs"
|
||||
align="center"
|
||||
width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinJffs"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="费用列支"
|
||||
prop="joinFylz"
|
||||
align="center"
|
||||
width="200">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.joinFylz"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="joinfile"
|
||||
label="资料"
|
||||
width="250"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div v-if="scope.row.joinfile.length > 0" class="fileClass">
|
||||
<div v-for="(item, index) in scope.row.joinfile" :key="index" @click="fileUpload('支付信息', scope.$index)" style="margin-right: 5px;">
|
||||
{{ item.name }}
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
@click="fileUpload('支付信息', scope.$index)"
|
||||
size="mini">
|
||||
点击上传
|
||||
</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="formTitle">
|
||||
<div class="left">参会记录</div>
|
||||
<div class="right">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
@click="addChItem">
|
||||
添加参会记录
|
||||
</el-button>
|
||||
<el-button
|
||||
type="danger"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-if="addForm.wgMeetingInfos.length"
|
||||
@click="delChItem">
|
||||
删除
|
||||
</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-table
|
||||
:data="addForm.wgMeetingInfos"
|
||||
style="width: 100%"
|
||||
border
|
||||
@selection-change="val => delMeetingInfos = val"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
align="center"
|
||||
width="55"
|
||||
v-if="addForm.wgMeetingInfos.length">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="joinfile"
|
||||
label="资料"
|
||||
width="250"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div v-if="scope.row.joinfile.length > 0" class="fileClass">
|
||||
<div v-for="(item, index) in scope.row.joinfile" :key="index" @click="fileUpload('参会记录', scope.$index)" style="margin-right: 5px;">
|
||||
{{ item.name }}
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
@click="fileUpload('参会记录', scope.$index)"
|
||||
size="mini">
|
||||
点击上传
|
||||
</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-form>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
</el-drawer>
|
||||
<el-dialog width='400px' :visible.sync="fileMadel" title="上传资料">
|
||||
<el-upload
|
||||
v-if="fileMadel"
|
||||
multiple
|
||||
class="upload-demo"
|
||||
drag
|
||||
:action="fileUrl"
|
||||
ref="importfile2"
|
||||
name="file"
|
||||
accept=".ZIP, .zip, .docx, .DOCX, .xls, .xlsx"
|
||||
:before-upload="beginImportFile"
|
||||
:on-success="importFileSuccess"
|
||||
:on-remove="importFileRemove"
|
||||
:show-file-list="true"
|
||||
:file-list="fileList"
|
||||
>
|
||||
<div style="padding: 20px 0">
|
||||
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||
<p>点击或拖拽上传文件</p>
|
||||
</div>
|
||||
</el-upload>
|
||||
</el-dialog>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
@@ -10,34 +494,282 @@
|
||||
name: "workingGroup1",
|
||||
data() {
|
||||
return {
|
||||
headerNo: false,
|
||||
addForm: {
|
||||
pName: '',
|
||||
level: '',
|
||||
itemType: '',
|
||||
number: '', // 编号
|
||||
name: '', // 名字
|
||||
state: '', // 状态
|
||||
properties: '', // 性质
|
||||
hjTime: '', // 换届时间
|
||||
field: '', // 标准化工作领域
|
||||
mark: '', // 备注
|
||||
wgNetInfos: [], // 秘书联系方式
|
||||
wgMeetingInfos: [], // 参会记录
|
||||
wgDepts: [], // 集团参与
|
||||
wgStandorpolicyInfos: [], // 标准政策
|
||||
wgPayInfos: [], // 支付信息
|
||||
},
|
||||
delNetInfos: [], // 删除秘书处数据集合
|
||||
delDepts: [], // 删除集团参与数据集合
|
||||
delPayInfos: [], // 删除支付信息数据集合
|
||||
delMeetingInfos: [], // 删除参会记录数据集合
|
||||
activeName: 'workingGroup1',
|
||||
graphData: {},
|
||||
graph: null,
|
||||
currentNode: '',
|
||||
currentNodeData: {},
|
||||
addForm: {
|
||||
pMenuName: '',
|
||||
menuType: '',
|
||||
sarGroupMenuEO: {
|
||||
pid: '',
|
||||
menuType: '',
|
||||
menuLevel: ''
|
||||
}
|
||||
},
|
||||
pMenuName: '',
|
||||
menuType: '',
|
||||
detailData: {
|
||||
menuId: '',
|
||||
nodeType: '',
|
||||
nodeName: '',
|
||||
parentId: '',
|
||||
standFlag: '',
|
||||
data: ''
|
||||
},
|
||||
delData: {},
|
||||
addDrawerTitle: '',
|
||||
addDrawer: false,
|
||||
addButton: false,
|
||||
editButton: false,
|
||||
delectButton: false,
|
||||
seeButton: false,
|
||||
addItemButton: false,
|
||||
seeItemButton: false,
|
||||
fileIndex: '',
|
||||
fileList: [],
|
||||
fileMadel: false,
|
||||
fileUrl: 'api/att/attFile/upload',
|
||||
fileType: '',
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
fileUpload(type, index) {
|
||||
this.fileIndex = index
|
||||
this.fileType = type
|
||||
if (this.fileType === '集团参与情况') {
|
||||
this.fileList = this.addForm.wgDepts[this.fileIndex].joinfile
|
||||
} else if (this.fileType === '支付信息') {
|
||||
this.fileList = this.addForm.wgPayInfos[this.fileIndex].joinfile
|
||||
} else if (this.fileType === '参会记录') {
|
||||
this.fileList = this.addForm.wgMeetingInfos[this.fileIndex].joinfile
|
||||
}
|
||||
this.fileMadel = true
|
||||
},
|
||||
importFileSuccess(response, file) {
|
||||
if (response.ok) {
|
||||
let data
|
||||
if (this.fileType === '集团参与情况') {
|
||||
this.addForm.wgDepts[this.fileIndex].joinfile.push(response.data)
|
||||
data = this.addForm.wgDepts
|
||||
} else if (this.fileType === '支付信息') {
|
||||
this.addForm.wgPayInfos[this.fileIndex].joinfile.push(response.data)
|
||||
data = this.addForm.wgPayInfos
|
||||
} else if (this.fileType === '参会记录') {
|
||||
this.addForm.wgMeetingInfos[this.fileIndex].joinfile.push(response.data)
|
||||
data = this.addForm.wgMeetingInfos
|
||||
}
|
||||
let list = ''
|
||||
data[this.fileIndex].joinfile.forEach(item => {
|
||||
if (list.length > 0) {
|
||||
list += ','
|
||||
list += item.name
|
||||
} else {
|
||||
list+= item.name
|
||||
}
|
||||
})
|
||||
data[this.fileIndex].joinfileName = list
|
||||
this.$message({
|
||||
showClose: true,
|
||||
message: response.message,
|
||||
type: 'success'
|
||||
})
|
||||
} else {
|
||||
this.$message.error('程序异常,上传失败')
|
||||
}
|
||||
},
|
||||
importFileRemove(file, fileList) {
|
||||
let list = ''
|
||||
let data
|
||||
if (this.fileType === '集团参与情况') {
|
||||
this.addForm.wgDepts[this.fileIndex].joinfile.push(response.data)
|
||||
data = this.addForm.wgDepts
|
||||
} else if (this.fileType === '支付信息') {
|
||||
this.addForm.wgPayInfos[this.fileIndex].joinfile.push(response.data)
|
||||
data = this.addForm.wgPayInfos
|
||||
} else if (this.fileType === '参会记录') {
|
||||
this.addForm.wgMeetingInfos[this.fileIndex].joinfile.push(response.data)
|
||||
data = this.addForm.wgMeetingInfos
|
||||
}
|
||||
data[this.fileIndex].joinfile = []
|
||||
if (fileList.length) {
|
||||
fileList.forEach(item => {
|
||||
data[this.fileIndex].joinfile.push(item)
|
||||
if (list.length > 0) {
|
||||
list += ','
|
||||
list += item.name
|
||||
} else {
|
||||
list+= item.name
|
||||
}
|
||||
})
|
||||
data[this.fileIndex].joinfileName = list
|
||||
} else {
|
||||
data[this.fileIndex].joinfile = []
|
||||
data[this.fileIndex].joinfileName = ''
|
||||
}
|
||||
},
|
||||
// 导入按钮 上传之前的钩子
|
||||
beginImportFile(file) {
|
||||
var filename = file.name
|
||||
var index1 = filename.lastIndexOf('.')
|
||||
var index2 = filename.length
|
||||
var fileSuffix = filename.substring(index1, index2)
|
||||
// const fileSuffix = file.name.split('.')[1] // 后缀名
|
||||
// 判断上传文件格式
|
||||
if (fileSuffix === '.ppt' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.PPT' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
|
||||
return true
|
||||
} else {
|
||||
this.$message.error('文件' + file.name + '格式不正确,请上传PPT,DOCX,XLS文件')
|
||||
return false
|
||||
}
|
||||
// 判断文件上传大小
|
||||
// eslint-disable-next-line no-unreachable
|
||||
if (file.size / 1024 / 1024 <= 200) {
|
||||
return true
|
||||
} else {
|
||||
this.$message.error('文件' + file.name + '大小不超过200M')
|
||||
return false
|
||||
}
|
||||
return true
|
||||
},
|
||||
addTelItem () {
|
||||
var id = Number(Math.random().toString().substr(3, 3) + Date.now()).toString(36);
|
||||
this.addForm.wgNetInfos.push({
|
||||
joinId: id,
|
||||
joinPersonCompany: '',
|
||||
joinPerson: '',
|
||||
joinPersonPhone: '',
|
||||
joinPersonEmail: ''
|
||||
})
|
||||
}, // 新增秘书处联系方式
|
||||
addCyItem () {
|
||||
var id = Number(Math.random().toString().substr(3, 3) + Date.now()).toString(36);
|
||||
this.addForm.wgDepts.push({
|
||||
joinId: id,
|
||||
joinPersonCompany: '',
|
||||
joinPerson: '',
|
||||
joinPersonPhone: '',
|
||||
joinPersonEmail: '',
|
||||
joinDept: '',
|
||||
joinSf: '',
|
||||
joinfile: [],
|
||||
joinfileName: '',
|
||||
joinPm: ''
|
||||
})
|
||||
}, // 新增集团参与情况
|
||||
addZfItem () {
|
||||
var id = Number(Math.random().toString().substr(3, 3) + Date.now()).toString(36);
|
||||
this.addForm.wgPayInfos.push({
|
||||
joinId: id,
|
||||
joinPrice: '',
|
||||
joinYear: '',
|
||||
joinStatus: '',
|
||||
joinJhn: '',
|
||||
joinJffs: '',
|
||||
joinfile: [],
|
||||
joinfileName: '',
|
||||
joinFylz: ''
|
||||
})
|
||||
}, // 新增支付信息
|
||||
addChItem () {
|
||||
var id = Number(Math.random().toString().substr(3, 3) + Date.now()).toString(36);
|
||||
this.addForm.wgMeetingInfos.push({
|
||||
joinId: id,
|
||||
joinfile: [],
|
||||
joinfileName: '',
|
||||
})
|
||||
}, // 新增参会记录
|
||||
delTelItem () {
|
||||
if (this.delNetInfos.length) {
|
||||
this.$confirm('您是否确认删除选中数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: true
|
||||
}).then(() => {
|
||||
for (let a = 0; a < this.addForm.wgNetInfos.length; a++) {
|
||||
this.delNetInfos.forEach(item => {
|
||||
if (this.addForm.wgNetInfos[a].joinId === item.joinId) {
|
||||
this.addForm.wgNetInfos.splice(a, 1)
|
||||
}
|
||||
})
|
||||
}
|
||||
}).catch(() => {})
|
||||
} else {
|
||||
this.$message.warning('请选择要移除的数据')
|
||||
}
|
||||
}, // 删除秘书处联系方式
|
||||
delCyItem () {
|
||||
if (this.delDepts.length) {
|
||||
this.$confirm('您是否确认删除选中数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: true
|
||||
}).then(() => {
|
||||
for (let a = 0; a < this.addForm.wgDepts.length; a++) {
|
||||
this.delDepts.forEach(item => {
|
||||
if (this.addForm.wgDepts[a].joinId === item.joinId) {
|
||||
this.addForm.wgDepts.splice(a, 1)
|
||||
}
|
||||
})
|
||||
}
|
||||
}).catch(() => {})
|
||||
} else {
|
||||
this.$message.warning('请选择要移除的数据')
|
||||
}
|
||||
}, // 删除集团参与情况
|
||||
delZfItem () {
|
||||
if (this.delPayInfos.length) {
|
||||
this.$confirm('您是否确认删除选中数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: true
|
||||
}).then(() => {
|
||||
for (let a = 0; a < this.addForm.wgPayInfos.length; a++) {
|
||||
this.delPayInfos.forEach(item => {
|
||||
if (this.addForm.wgPayInfos[a].joinId === item.joinId) {
|
||||
this.addForm.wgPayInfos.splice(a, 1)
|
||||
}
|
||||
})
|
||||
}
|
||||
}).catch(() => {})
|
||||
} else {
|
||||
this.$message.warning('请选择要移除的数据')
|
||||
}
|
||||
}, // 删除支付信息
|
||||
delChItem () {
|
||||
if (this.delMeetingInfos.length) {
|
||||
this.$confirm('您是否确认删除选中数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: true
|
||||
}).then(() => {
|
||||
for (let a = 0; a < this.addForm.wgMeetingInfos.length; a++) {
|
||||
this.delMeetingInfos.forEach(item => {
|
||||
if (this.addForm.wgMeetingInfos[a].joinId === item.joinId) {
|
||||
this.addForm.wgMeetingInfos.splice(a, 1)
|
||||
}
|
||||
})
|
||||
}
|
||||
}).catch(() => {})
|
||||
} else {
|
||||
this.$message.warning('请选择要移除的数据')
|
||||
}
|
||||
}, // 删除参会记录
|
||||
addItem () {
|
||||
this.addDrawer = true
|
||||
}, // 新增
|
||||
addDrawerClose () {
|
||||
this.addDrawer = false
|
||||
}, // drawer关闭事件
|
||||
getData () {
|
||||
this.$http.get('wg_work_group/researchData', {
|
||||
type: '0'
|
||||
@@ -48,14 +780,61 @@
|
||||
this.renderGraph(res.data)
|
||||
}
|
||||
})
|
||||
},
|
||||
}, // 获取数据
|
||||
handleNodeClick (node) {
|
||||
let json = {
|
||||
id: '123',
|
||||
name: '123',
|
||||
|
||||
this.headerNo = true
|
||||
let row = node._cfg.model
|
||||
console.log(row);
|
||||
this.addForm = {
|
||||
wgNetInfos: [],
|
||||
wgDepts: [],
|
||||
wgPayInfos: [],
|
||||
wgMeetingInfos: [],
|
||||
level: row.level,
|
||||
pName: row.name,
|
||||
itemType: row.level === '0' ? '标委会' : (row.level === '1' ? '分标委' : (row.level === '2' ? '工作组' : '标准'))
|
||||
}
|
||||
},
|
||||
if (row.level === '0') {
|
||||
this.addDrawerTitle = '新增标委会'
|
||||
this.addButton = true
|
||||
this.addItemButton = false
|
||||
this.editButton = false
|
||||
this.delectButton = false
|
||||
this.seeButton = false
|
||||
this.seeItemButton = false
|
||||
} else if (row.level === '1') {
|
||||
this.addDrawerTitle = '新增分标委'
|
||||
this.addButton = true
|
||||
this.addItemButton = false
|
||||
this.editButton = true
|
||||
this.delectButton = true
|
||||
this.seeButton = true
|
||||
this.seeItemButton = false
|
||||
} else if (row.level === '2') {
|
||||
this.addDrawerTitle = '新增工作组'
|
||||
this.addButton = true
|
||||
this.addItemButton = false
|
||||
this.editButton = true
|
||||
this.delectButton = true
|
||||
this.seeButton = true
|
||||
this.seeItemButton = false
|
||||
} else if (row.level === '3') {
|
||||
this.addDrawerTitle = '新增标准'
|
||||
this.addButton = false
|
||||
this.addItemButton = true
|
||||
this.editButton = true
|
||||
this.delectButton = true
|
||||
this.seeButton = true
|
||||
this.seeItemButton = false
|
||||
} else if (row.level === '4') {
|
||||
this.addButton = false
|
||||
this.addItemButton = false
|
||||
this.editButton = false
|
||||
this.delectButton = true
|
||||
this.seeButton = false
|
||||
this.seeItemButton = true
|
||||
}
|
||||
}, // 点击节点事件
|
||||
handleEdgeClick (node) {},
|
||||
renderGraph(row) {
|
||||
this.graphData = row
|
||||
@@ -280,9 +1059,19 @@
|
||||
this.handleEdgeClick (edgeItem)
|
||||
});
|
||||
},
|
||||
getList() {
|
||||
this.$http.get('sys/dictype/getDicTypeListCode', {},{
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
console.log(res);
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getData();
|
||||
this.getList()
|
||||
},
|
||||
created() {
|
||||
// this.getData();
|
||||
@@ -296,5 +1085,27 @@
|
||||
<style lang="less" scoped>
|
||||
.workingGroup1{
|
||||
height: 100%;
|
||||
/deep/.el-form-item__label {
|
||||
height: 100%;
|
||||
}
|
||||
/deep/.el-form-item__content {
|
||||
line-height: 50px;
|
||||
height: 100%;
|
||||
}
|
||||
.header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
.header-right {
|
||||
}
|
||||
}
|
||||
.formTitle {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
.left {
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user