资料目录管理;工作组成员维护
This commit is contained in:
@@ -69,3 +69,29 @@
|
|||||||
color: #069f99;
|
color: #069f99;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 标题及标题前的圆点
|
||||||
|
.part-title {
|
||||||
|
padding: 10px 0;
|
||||||
|
font-size: 16px;
|
||||||
|
font-family: PingFang SC, PingFang SC-Bold;
|
||||||
|
font-weight: 700;
|
||||||
|
text-align: left;
|
||||||
|
color: #333333;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
&-text {
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-text::before {
|
||||||
|
position: absolute;
|
||||||
|
content: "";
|
||||||
|
left: 0;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
width: 10px;
|
||||||
|
height: 10px;
|
||||||
|
background: #069f99;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
<!-- 需要有返回操作的页面-->
|
<!-- 需要有返回操作的页面-->
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<img :src="IconBack" class="page-header-icon page-header-icon-back" @click="backPage">
|
<img :src="IconBack" class="page-header-icon page-header-icon-back" @click="backPage">
|
||||||
|
<img :src="imgForIcon" class="page-header-icon">
|
||||||
<span class="page-header-title">{{ levelTwoTitle }}</span>
|
<span class="page-header-title">{{ levelTwoTitle }}</span>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
@@ -60,6 +61,7 @@ export default {
|
|||||||
&-icon {
|
&-icon {
|
||||||
height: 20px;
|
height: 20px;
|
||||||
max-width: 30px;
|
max-width: 30px;
|
||||||
|
margin-right: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
&-icon-back {
|
&-icon-back {
|
||||||
@@ -67,7 +69,6 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
&-title {
|
&-title {
|
||||||
margin-left: 10px;
|
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
font-family: PingFang SC, PingFang SC-Medium;
|
font-family: PingFang SC, PingFang SC-Medium;
|
||||||
color: #666666;
|
color: #666666;
|
||||||
|
|||||||
@@ -9,52 +9,29 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="data-directory-container">
|
<div class="data-directory-container">
|
||||||
|
<!-- 左侧区域-->
|
||||||
<div class="data-directory-container-left">
|
<div class="data-directory-container-left">
|
||||||
|
<!-- 查询区域-->
|
||||||
|
<div class="table-page-search-wrapper">
|
||||||
|
<a-input-search v-model="queryParam.name" @search="searchQuery" style="width:100%;margin-top: 10px" placeholder="请输入文件夹名称" allowClear/>
|
||||||
|
</div>
|
||||||
|
<!-- /查询区域-->
|
||||||
<a-tree
|
<a-tree
|
||||||
v-model="checkedKeys"
|
v-model="selectedRowKeys"
|
||||||
checkable
|
checkable
|
||||||
:expanded-keys="expandedKeys"
|
:tree-data="dataSource"
|
||||||
:auto-expand-parent="autoExpandParent"
|
:replaceFields="replaceFields"
|
||||||
:selected-keys="selectedKeys"
|
|
||||||
:tree-data="treeData"
|
|
||||||
@expand="onExpand"
|
@expand="onExpand"
|
||||||
@select="onSelect"
|
@select="onSelect"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- /左侧区域-->
|
||||||
<div class="data-directory-container-divider"></div>
|
<div class="data-directory-container-divider"></div>
|
||||||
|
<!-- 右侧区域-->
|
||||||
<div class="data-directory-container-right">
|
<div class="data-directory-container-right">
|
||||||
<div class="part-title">
|
<data-directory-module ref="dataDirectoryForm" @ok="dataDirectoryFormOk"></data-directory-module>
|
||||||
<div class="part-title-text">基本信息</div>
|
|
||||||
</div>
|
|
||||||
<a-form :form="form">
|
|
||||||
<a-form-item label="文件夹名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
||||||
<a-input placeholder="请输入文件夹名称"
|
|
||||||
v-decorator="['directoryName',validatorRules.directoryName]"
|
|
||||||
:maxLength='50'
|
|
||||||
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
|
|
||||||
</a-form-item>
|
|
||||||
<a-form-item label="上级名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
||||||
<a-input placeholder="请输入文件夹名称"
|
|
||||||
v-decorator="['directoryName',validatorRules.directoryName]"
|
|
||||||
:maxLength='50'
|
|
||||||
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
|
|
||||||
</a-form-item>
|
|
||||||
<a-form-item label="排序" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
||||||
<a-input placeholder="请输入文件夹名称"
|
|
||||||
v-decorator="['directoryName',validatorRules.directoryName]"
|
|
||||||
:maxLength='50'
|
|
||||||
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
|
|
||||||
</a-form-item>
|
|
||||||
<a-form-item label="备注" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
||||||
<a-textarea
|
|
||||||
placeholder="请输入备注"
|
|
||||||
v-decorator="['remarks']"
|
|
||||||
:auto-size="{ minRows: 3, maxRows: 6 }"
|
|
||||||
:maxLength='200'
|
|
||||||
@change="e => {e.target.value = (e.target.value + '').trim()}"/>
|
|
||||||
</a-form-item>
|
|
||||||
</a-form>
|
|
||||||
</div>
|
</div>
|
||||||
|
<!-- /右侧区域-->
|
||||||
</div>
|
</div>
|
||||||
</a-card>
|
</a-card>
|
||||||
</div>
|
</div>
|
||||||
@@ -64,96 +41,63 @@
|
|||||||
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
||||||
import IconImg from '@/assets/imgs/icon/icon_committee.png'
|
import IconImg from '@/assets/imgs/icon/icon_committee.png'
|
||||||
import { JeroListMixin } from '@/mixins/JeroListMixin'
|
import { JeroListMixin } from '@/mixins/JeroListMixin'
|
||||||
|
import DataDirectoryModule from './modules/DataDirectoryModule'
|
||||||
|
import { getAction } from '../../../api/manage'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'DataDirectoryMaintenance',
|
name: 'DataDirectoryMaintenance',
|
||||||
components: { PageHeaderTitle },
|
components: { PageHeaderTitle, DataDirectoryModule },
|
||||||
mixins: [JeroListMixin],
|
mixins: [JeroListMixin],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
IconImg,
|
IconImg,
|
||||||
form: this.$form.createForm(this),
|
|
||||||
labelCol: {
|
|
||||||
xs: { span: 24 },
|
|
||||||
sm: { span: 4 }
|
|
||||||
},
|
|
||||||
wrapperCol: {
|
|
||||||
xs: { span: 24 },
|
|
||||||
sm: { span: 18 }
|
|
||||||
},
|
|
||||||
validatorRules: {
|
|
||||||
directoryName: {
|
|
||||||
rules: [{ required: true, message: '请输入文件夹名称' }]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
url: {
|
url: {
|
||||||
list: ''
|
list: '/payDataDirectory/payDataDirectory/queryByName',
|
||||||
|
queryById: '/payDataDirectory/payDataDirectory/getOne',
|
||||||
|
deleteBatch: '/payDataDirectory/payDataDirectory/deleteBatch'
|
||||||
},
|
},
|
||||||
treeData: [
|
|
||||||
{
|
|
||||||
title: '0-0',
|
|
||||||
key: '0-0',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
title: '0-0-0',
|
|
||||||
key: '0-0-0',
|
|
||||||
children: [
|
|
||||||
{ title: '0-0-0-0', key: '0-0-0-0' },
|
|
||||||
{ title: '0-0-0-1', key: '0-0-0-1' },
|
|
||||||
{ title: '0-0-0-2', key: '0-0-0-2' }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: '0-0-1',
|
|
||||||
key: '0-0-1',
|
|
||||||
children: [
|
|
||||||
{ title: '0-0-1-0', key: '0-0-1-0' },
|
|
||||||
{ title: '0-0-1-1', key: '0-0-1-1' },
|
|
||||||
{ title: '0-0-1-2', key: '0-0-1-2' }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: '0-0-2',
|
|
||||||
key: '0-0-2'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: '0-1',
|
|
||||||
key: '0-1',
|
|
||||||
children: [
|
|
||||||
{ title: '0-1-0-0', key: '0-1-0-0' },
|
|
||||||
{ title: '0-1-0-1', key: '0-1-0-1' },
|
|
||||||
{ title: '0-1-0-2', key: '0-1-0-2' }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: '0-2',
|
|
||||||
key: '0-2'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
expandedKeys: ['0-0-0', '0-0-1'],
|
|
||||||
autoExpandParent: true,
|
autoExpandParent: true,
|
||||||
checkedKeys: ['0-0-0'],
|
checkedKeys: [],
|
||||||
selectedKeys: [],
|
columns: [], // 防止混入报错
|
||||||
|
replaceFields: {
|
||||||
|
children:'children',
|
||||||
|
title:'name',
|
||||||
|
key:'id'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
onExpand(expandedKeys) {
|
onExpand(expandedKeys) {
|
||||||
console.log('onExpand', expandedKeys);
|
console.log('onExpand', expandedKeys)
|
||||||
// if not set autoExpandParent to false, if children expanded, parent can not collapse.
|
// if not set autoExpandParent to false, if children expanded, parent can not collapse.
|
||||||
// or, you can remove all expanded children keys.
|
// or, you can remove all expanded children keys.
|
||||||
this.expandedKeys = expandedKeys;
|
this.expandedKeys = expandedKeys
|
||||||
this.autoExpandParent = false;
|
this.autoExpandParent = false
|
||||||
},
|
},
|
||||||
onCheck(checkedKeys) {
|
onCheck(checkedKeys) {
|
||||||
console.log('onCheck', checkedKeys);
|
console.log('onCheck', checkedKeys)
|
||||||
this.checkedKeys = checkedKeys;
|
this.checkedKeys = checkedKeys
|
||||||
},
|
},
|
||||||
onSelect(selectedKeys, info) {
|
/**
|
||||||
console.log('onSelect', info);
|
* 点击名称选中
|
||||||
this.selectedKeys = selectedKeys;
|
* @param info
|
||||||
|
*/
|
||||||
|
onSelect(info) {
|
||||||
|
console.log('onSelect', info[0])
|
||||||
|
let param = {
|
||||||
|
id: info[0]
|
||||||
|
}
|
||||||
|
getAction(this.url.queryById, param).then(res => {
|
||||||
|
console.log(res)
|
||||||
|
this.$refs.dataDirectoryForm.edit(res.result)
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
handleAdd() {
|
||||||
|
this.$refs.dataDirectoryForm.add()
|
||||||
|
},
|
||||||
|
dataDirectoryFormOk() {
|
||||||
|
this.loadData()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@@ -161,36 +105,12 @@ export default {
|
|||||||
<style scoped lang="less">
|
<style scoped lang="less">
|
||||||
@import '~@assets/less/common.less';
|
@import '~@assets/less/common.less';
|
||||||
|
|
||||||
.part-title {
|
|
||||||
padding: 10px 0;
|
|
||||||
font-size: 16px;
|
|
||||||
font-family: PingFang SC, PingFang SC-Bold;
|
|
||||||
font-weight: 700;
|
|
||||||
text-align: left;
|
|
||||||
color: #333333;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
&-text {
|
|
||||||
padding-left: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&-text::before {
|
|
||||||
position: absolute;
|
|
||||||
content: "";
|
|
||||||
left: 0;
|
|
||||||
top: 50%;
|
|
||||||
transform: translateY(-50%);
|
|
||||||
width: 10px;
|
|
||||||
height: 10px;
|
|
||||||
background: #069f99;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.data-directory-container {
|
.data-directory-container {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
&-left {
|
&-left {
|
||||||
width: 45%;
|
width: 45%;
|
||||||
|
padding-right: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
&-divider {
|
&-divider {
|
||||||
|
|||||||
@@ -0,0 +1,144 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<div class="part-title">
|
||||||
|
<div class="part-title-text">基本信息</div>
|
||||||
|
</div>
|
||||||
|
<a-spin :spinning="confirmLoading">
|
||||||
|
<a-form :form="form">
|
||||||
|
<a-form-item label="文件夹名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-input placeholder="请输入文件夹名称"
|
||||||
|
v-decorator="['name',validatorRules.name]"
|
||||||
|
:maxLength='50'
|
||||||
|
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="上级名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-select placeholder="请选择上级名称"
|
||||||
|
v-decorator="['parentId',validatorRules.parentId]"
|
||||||
|
:maxLength='50'>
|
||||||
|
<a-select-option v-for="item in directoryList" :key="item.id" :value="item.id">{{ item.name }}</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="排序" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-input placeholder="请输入排序"
|
||||||
|
v-decorator="['sort',validatorRules.sort]"
|
||||||
|
:maxLength='50'
|
||||||
|
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="备注" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-textarea
|
||||||
|
placeholder="请输入备注"
|
||||||
|
v-decorator="['remarks']"
|
||||||
|
:auto-size="{ minRows: 3, maxRows: 6 }"
|
||||||
|
:maxLength='200'
|
||||||
|
@change="e => {e.target.value = (e.target.value + '').trim()}"/>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item class="table-operator">
|
||||||
|
<a-button type="primary" @click=handleOk>保存</a-button>
|
||||||
|
<a-button @click="handleCancle">取消</a-button>
|
||||||
|
</a-form-item>
|
||||||
|
</a-form>
|
||||||
|
</a-spin>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import pick from 'lodash.pick'
|
||||||
|
import { httpAction } from '../../../../api/manage'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'DataDirectoryModule',
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
form: this.$form.createForm(this),
|
||||||
|
model: {},
|
||||||
|
confirmLoading: false,
|
||||||
|
labelCol: {
|
||||||
|
xs: { span: 24 },
|
||||||
|
sm: { span: 4 }
|
||||||
|
},
|
||||||
|
wrapperCol: {
|
||||||
|
xs: { span: 24 },
|
||||||
|
sm: { span: 18 }
|
||||||
|
},
|
||||||
|
validatorRules: {
|
||||||
|
name: {
|
||||||
|
rules: [{ required: true, message: '请输入文件夹名称' }],
|
||||||
|
validateTrigger: 'blur'
|
||||||
|
},
|
||||||
|
parentId: {
|
||||||
|
rules: [{ required: true, message: '请选择上级文件夹' }],
|
||||||
|
validateTrigger: 'blur'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
url: {
|
||||||
|
add: '/payDataDirectory/payDataDirectory/add',
|
||||||
|
edit: '/payDataDirectory/payDataDirectory/edit'
|
||||||
|
},
|
||||||
|
directoryList: []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.initDirectoryList()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
initDirectoryList() {
|
||||||
|
httpAction('/payDataDirectory/payDataDirectory/findall', {}, 'get').then(res => {
|
||||||
|
this.directoryList = res.result
|
||||||
|
let levelOne = {
|
||||||
|
id: 0,
|
||||||
|
name: '无父级'
|
||||||
|
}
|
||||||
|
this.directoryList.unshift(levelOne)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
add() {
|
||||||
|
this.edit({})
|
||||||
|
},
|
||||||
|
edit(record) {
|
||||||
|
this.form.resetFields()
|
||||||
|
this.model = Object.assign({}, record)
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.form.setFieldsValue(pick(this.model, 'name', 'parentId', 'sort', 'remarks'))
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleOk() {
|
||||||
|
const that = this
|
||||||
|
// 触发表单验证
|
||||||
|
this.form.validateFields((err, values) => {
|
||||||
|
if (!err) {
|
||||||
|
let httpurl = ''
|
||||||
|
let method = 'post'
|
||||||
|
if (!this.model.id) {
|
||||||
|
httpurl += this.url.add
|
||||||
|
} else {
|
||||||
|
httpurl += this.url.edit
|
||||||
|
}
|
||||||
|
const formData = Object.assign(this.model, values)
|
||||||
|
formData.type = 1
|
||||||
|
console.log('表单提交数据', formData)
|
||||||
|
httpAction(httpurl, formData, method).then((res) => {
|
||||||
|
this.confirmLoading = true
|
||||||
|
if (res.success) {
|
||||||
|
that.$message.success(res.message)
|
||||||
|
that.$emit('ok')
|
||||||
|
that.close()
|
||||||
|
} else {
|
||||||
|
that.$message.warning(res.message)
|
||||||
|
}
|
||||||
|
}).finally(() => {
|
||||||
|
that.confirmLoading = false
|
||||||
|
this.initDirectoryList()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleCancle() {
|
||||||
|
this.model = {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
@import '~@assets/less/common.less';
|
||||||
|
</style>
|
||||||
@@ -61,8 +61,7 @@
|
|||||||
<!-- 操作按钮区域-->
|
<!-- 操作按钮区域-->
|
||||||
<div class="table-operator">
|
<div class="table-operator">
|
||||||
<a-button type="primary" icon="plus" @click="handleAdd">添加成员</a-button>
|
<a-button type="primary" icon="plus" @click="handleAdd">添加成员</a-button>
|
||||||
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
|
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :data="importParam" :action="importExcelUrl" @change="handleImportExcel">
|
||||||
@change="handleImportExcel">
|
|
||||||
<a-button type="primary" icon="import">导入</a-button>
|
<a-button type="primary" icon="import">导入</a-button>
|
||||||
</a-upload>
|
</a-upload>
|
||||||
<a-button type="primary" icon="export" @click="handleExportXls('工作组成员')">导出</a-button>
|
<a-button type="primary" icon="export" @click="handleExportXls('工作组成员')">导出</a-button>
|
||||||
@@ -116,7 +115,7 @@
|
|||||||
|
|
||||||
<project-detail-modal ref="projectDetail"></project-detail-modal>
|
<project-detail-modal ref="projectDetail"></project-detail-modal>
|
||||||
<working-group-member-unit-module ref="modalForm" @ok="modalFormOk"></working-group-member-unit-module>
|
<working-group-member-unit-module ref="modalForm" @ok="modalFormOk"></working-group-member-unit-module>
|
||||||
<working-group-member-set-charge-notice ref="setChargeNotic"></working-group-member-set-charge-notice>
|
<working-group-member-set-charge-notice ref="setChargeNotic" @ok="modalFormOk"></working-group-member-set-charge-notice>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -273,7 +272,8 @@ export default {
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
workingGroupDetail: {},
|
workingGroupDetail: {},
|
||||||
chargeNoticeList: [] // 收费通知号选项
|
chargeNoticeList: [], // 收费通知号选项
|
||||||
|
importParam: {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
@@ -288,6 +288,7 @@ export default {
|
|||||||
this.workingGroupProject = this.$route.query.workingGroupProject
|
this.workingGroupProject = this.$route.query.workingGroupProject
|
||||||
this.workingGroupProjectId = this.$route.query.workingGroupProjectId
|
this.workingGroupProjectId = this.$route.query.workingGroupProjectId
|
||||||
this.filters.workingGroupId = this.workingGroupProjectId
|
this.filters.workingGroupId = this.workingGroupProjectId
|
||||||
|
this.importParam.workingGroupId = this.workingGroupProjectId
|
||||||
this.loadData()
|
this.loadData()
|
||||||
let param = {
|
let param = {
|
||||||
id: this.workingGroupProjectId
|
id: this.workingGroupProjectId
|
||||||
@@ -306,6 +307,7 @@ export default {
|
|||||||
},
|
},
|
||||||
handleEdit: function (record) {
|
handleEdit: function (record) {
|
||||||
this.getChargeNoticeList()
|
this.getChargeNoticeList()
|
||||||
|
this.$refs.modalForm.workingGroupId = this.workingGroupProjectId
|
||||||
this.$refs.modalForm.chargeNoticeList = this.chargeNoticeList
|
this.$refs.modalForm.chargeNoticeList = this.chargeNoticeList
|
||||||
this.$refs.modalForm.edit(record)
|
this.$refs.modalForm.edit(record)
|
||||||
this.$refs.modalForm.title = '编辑'
|
this.$refs.modalForm.title = '编辑'
|
||||||
@@ -363,31 +365,6 @@ export default {
|
|||||||
<style scoped lang="less">
|
<style scoped lang="less">
|
||||||
@import '~@assets/less/common.less';
|
@import '~@assets/less/common.less';
|
||||||
|
|
||||||
.part-title {
|
|
||||||
padding: 10px 0;
|
|
||||||
font-size: 16px;
|
|
||||||
font-family: PingFang SC, PingFang SC-Bold;
|
|
||||||
font-weight: 700;
|
|
||||||
text-align: left;
|
|
||||||
color: #333333;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
&-text {
|
|
||||||
padding-left: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&-text::before {
|
|
||||||
position: absolute;
|
|
||||||
content: "";
|
|
||||||
left: 0;
|
|
||||||
top: 50%;
|
|
||||||
transform: translateY(-50%);
|
|
||||||
width: 10px;
|
|
||||||
height: 10px;
|
|
||||||
background: #069f99;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.divider {
|
.divider {
|
||||||
height: 1px;
|
height: 1px;
|
||||||
background-color: #cccccc;
|
background-color: #cccccc;
|
||||||
|
|||||||
@@ -61,7 +61,8 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import pick from 'lodash.pick'
|
import pick from 'lodash.pick'
|
||||||
import JUpload from '../../../components/jero/JUpload'
|
import JUpload from '@/components/jero/JUpload'
|
||||||
|
import { postAction } from '@/api/manage'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'WorkingGroupMemberSetChargeNotice',
|
name: 'WorkingGroupMemberSetChargeNotice',
|
||||||
@@ -92,7 +93,10 @@ export default {
|
|||||||
},
|
},
|
||||||
selectedRowKeys: null, // 选中项目的id
|
selectedRowKeys: null, // 选中项目的id
|
||||||
chargeNoticeList: null, // 收费通知列表
|
chargeNoticeList: null, // 收费通知列表
|
||||||
selectedChargeNotice: null // 选中的收费通知类型
|
selectedChargeNotice: null, // 选中的收费通知类型
|
||||||
|
url: {
|
||||||
|
setCharge: '/project/payWorkingGroupSubitem/setCharge'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -100,13 +104,33 @@ export default {
|
|||||||
this.visible = true
|
this.visible = true
|
||||||
},
|
},
|
||||||
handleOk() {
|
handleOk() {
|
||||||
|
// 触发表单验证
|
||||||
|
this.form.validateFields((err, values) => {
|
||||||
|
if (!err) {
|
||||||
|
const formData = Object.assign(this.model, values)
|
||||||
|
console.log('表单提交数据', formData)
|
||||||
|
formData.ids = this.selectedRowKeys.join(',')
|
||||||
|
|
||||||
|
postAction(this.url.setCharge, formData).then(res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.$message.success(res.message)
|
||||||
|
this.$emit('ok')
|
||||||
|
this.close()
|
||||||
|
} else {
|
||||||
|
this.$message.warning(res.message)
|
||||||
|
}
|
||||||
|
}).finally(() => {
|
||||||
|
this.confirmLoading = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
},
|
},
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
this.close()
|
this.close()
|
||||||
},
|
},
|
||||||
close() {
|
close() {
|
||||||
this.visible = false
|
this.visible = false
|
||||||
|
this.model = {}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
* 收费通知号变化, 回显本年应收款和文件
|
* 收费通知号变化, 回显本年应收款和文件
|
||||||
|
|||||||
Reference in New Issue
Block a user