【update】-理事会-新增导入到标协会员;工作组起草组-会议-文件上传可以批量上传
This commit is contained in:
@@ -316,8 +316,8 @@ export default {
|
|||||||
file.uploadGoOn = true
|
file.uploadGoOn = true
|
||||||
const fileSize = file.size // 上传的文件大小
|
const fileSize = file.size // 上传的文件大小
|
||||||
const fileType = file.type // 上传的文件类型
|
const fileType = file.type // 上传的文件类型
|
||||||
if (fileSize > 1024 * 1024 * 100) {
|
if (fileSize > 1024 * 1024 * 200) {
|
||||||
this.$message.warning('文件大小限制为100M')
|
this.$message.warning('文件大小限制为200M')
|
||||||
this.uploadGoOn = false
|
this.uploadGoOn = false
|
||||||
file.uploadGoOn = false
|
file.uploadGoOn = false
|
||||||
return false
|
return false
|
||||||
|
|||||||
@@ -176,7 +176,7 @@
|
|||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="会议通知" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="会议通知" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
<j-upload :return-id="true" v-decorator="[ 'meetingFiles',validatorRules.meetingFiles]"></j-upload>
|
<j-upload :return-id="true" :multiple="true" v-decorator="[ 'meetingFiles',validatorRules.meetingFiles]"></j-upload>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
<a-spin :spinning="confirmLoading">
|
<a-spin :spinning="confirmLoading">
|
||||||
<!-- 以表格的形式展示 所有的文件 -->
|
<!-- 以表格的形式展示 所有的文件 -->
|
||||||
<div class="table-operator">
|
<div class="table-operator">
|
||||||
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader"
|
<a-upload name="file" :showUploadList="false" :multiple="true" :headers="tokenHeader"
|
||||||
:action="importExcelUrl" :beforeUpload="beforeUpload" @change="handleChange"
|
:action="importExcelUrl" :beforeUpload="beforeUpload" @change="handleChange"
|
||||||
>
|
>
|
||||||
<a-button type="primary" icon="plus">新增</a-button>
|
<a-button type="primary" icon="plus">新增</a-button>
|
||||||
@@ -363,8 +363,8 @@ export default {
|
|||||||
file.uploadGoOn = true
|
file.uploadGoOn = true
|
||||||
const fileSize = file.size // 上传的文件大小
|
const fileSize = file.size // 上传的文件大小
|
||||||
const fileType = file.type // 上传的文件类型
|
const fileType = file.type // 上传的文件类型
|
||||||
if (fileSize > 1024 * 1024 * 100) {
|
if (fileSize > 1024 * 1024 * 200) {
|
||||||
this.$message.warning('文件大小限制为100M')
|
this.$message.warning('文件大小限制为200M')
|
||||||
this.uploadGoOn = false
|
this.uploadGoOn = false
|
||||||
file.uploadGoOn = false
|
file.uploadGoOn = false
|
||||||
return false
|
return false
|
||||||
|
|||||||
@@ -454,8 +454,8 @@ export default {
|
|||||||
this.uploadGoOn = true
|
this.uploadGoOn = true
|
||||||
file.uploadGoOn = true
|
file.uploadGoOn = true
|
||||||
const fileSize = file.size // 上传的文件大小
|
const fileSize = file.size // 上传的文件大小
|
||||||
if (fileSize > 1024 * 1024 * 100) {
|
if (fileSize > 1024 * 1024 * 200) {
|
||||||
this.$message.warning('文件大小限制为100M')
|
this.$message.warning('文件大小限制为200M')
|
||||||
this.uploadGoOn = false
|
this.uploadGoOn = false
|
||||||
file.uploadGoOn = false
|
file.uploadGoOn = false
|
||||||
return false
|
return false
|
||||||
|
|||||||
+13
-2
@@ -60,6 +60,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<span slot="operation" class="action-span-cell" slot-scope="text, record">
|
<span slot="operation" class="action-span-cell" slot-scope="text, record">
|
||||||
|
<a @click="handleImportMemberModule(record)" v-has="'council:fileMaintenance'">导入到标协会员</a>
|
||||||
<a @click="handleMaintainData(record)" v-has="'council:fileMaintenance'">其他分发资料</a>
|
<a @click="handleMaintainData(record)" v-has="'council:fileMaintenance'">其他分发资料</a>
|
||||||
<a @click="handleMaintainMeeting(record)" v-has="'council:meetingMaintenance'">理事会会议</a>
|
<a @click="handleMaintainMeeting(record)" v-has="'council:meetingMaintenance'">理事会会议</a>
|
||||||
<a @click="handleAddMember(record)" v-has="'council:addMember'">新增成员</a>
|
<a @click="handleAddMember(record)" v-has="'council:addMember'">新增成员</a>
|
||||||
@@ -94,6 +95,8 @@
|
|||||||
<council-maintenance-modal ref="modalForm" @ok="modalFormOk"></council-maintenance-modal>
|
<council-maintenance-modal ref="modalForm" @ok="modalFormOk"></council-maintenance-modal>
|
||||||
<!-- 新增理事会成员-->
|
<!-- 新增理事会成员-->
|
||||||
<council-maintenance-member-modal ref="memberModalForm" @ok="modalFormOk"></council-maintenance-member-modal>
|
<council-maintenance-member-modal ref="memberModalForm" @ok="modalFormOk"></council-maintenance-member-modal>
|
||||||
|
<!-- 导入到标协会员 -->
|
||||||
|
<import-member-module-modal ref="importMemberModuleModal" @ok="modalFormOk"></import-member-module-modal>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -104,10 +107,11 @@ import IconImg from '../../../../assets/imgs/icon/icon_stander_member.png'
|
|||||||
import { getAction } from '../../../../api/manage'
|
import { getAction } from '../../../../api/manage'
|
||||||
import CouncilMaintenanceModal from './modules/CouncilMaintenanceModal'
|
import CouncilMaintenanceModal from './modules/CouncilMaintenanceModal'
|
||||||
import CouncilMaintenanceMemberModal from './modules/CouncilMaintenanceMemberModal'
|
import CouncilMaintenanceMemberModal from './modules/CouncilMaintenanceMemberModal'
|
||||||
|
import ImportMemberModuleModal from './modules/ImportMemberModuleModal'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'CouncilMaintenanceList',
|
name: 'CouncilMaintenanceList',
|
||||||
components: { PageHeaderTitle, CouncilMaintenanceModal, CouncilMaintenanceMemberModal },
|
components: { PageHeaderTitle, CouncilMaintenanceModal, CouncilMaintenanceMemberModal, ImportMemberModuleModal },
|
||||||
mixins: [JeroListMixin],
|
mixins: [JeroListMixin],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -139,7 +143,7 @@ export default {
|
|||||||
title: '操作',
|
title: '操作',
|
||||||
dataIndex: 'operation',
|
dataIndex: 'operation',
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: 420,
|
width: 580,
|
||||||
scopedSlots: { customRender: 'operation' }
|
scopedSlots: { customRender: 'operation' }
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -302,6 +306,13 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 导入到标协会员
|
||||||
|
* @param record
|
||||||
|
*/
|
||||||
|
handleImportMemberModule(record) {
|
||||||
|
this.$refs.importMemberModuleModal.add(record)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+161
@@ -0,0 +1,161 @@
|
|||||||
|
<!--导入到标协会员-->
|
||||||
|
<template>
|
||||||
|
<j-modal
|
||||||
|
:title="title"
|
||||||
|
:width="width"
|
||||||
|
:visible="visible"
|
||||||
|
:confirmLoading="confirmLoading"
|
||||||
|
switchFullscreen
|
||||||
|
@ok="handleOk"
|
||||||
|
@cancel="handleCancel"
|
||||||
|
cancelText="关闭">
|
||||||
|
<a-spin :spinning="confirmLoading">
|
||||||
|
<a-form :form="form">
|
||||||
|
<a-row>
|
||||||
|
<a-col>
|
||||||
|
<a-form-item label="标协会员项目" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-select placeholder="请选择标协会员项目"
|
||||||
|
show-search
|
||||||
|
v-decorator="['projectId',validatorRules.projectId]"
|
||||||
|
option-filter-prop="children"
|
||||||
|
:filter-option="filterOption"
|
||||||
|
>
|
||||||
|
<a-select-option v-for="item in memberProjectList" :key="item.id" :value="item.id">
|
||||||
|
{{ item.projectName }}
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-form>
|
||||||
|
</a-spin>
|
||||||
|
</j-modal>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import pick from 'lodash.pick'
|
||||||
|
import { getAction, httpAction } from '../../../../../api/manage'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'ImportMemberModuleModal',
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
title: '操作',
|
||||||
|
width: 800,
|
||||||
|
visible: false,
|
||||||
|
confirmLoading: false,
|
||||||
|
form: this.$form.createForm(this),
|
||||||
|
model: {},
|
||||||
|
labelCol: {
|
||||||
|
xs: { span: 24 },
|
||||||
|
sm: { span: 6 }
|
||||||
|
},
|
||||||
|
wrapperCol: {
|
||||||
|
xs: { span: 24 },
|
||||||
|
sm: { span: 14 }
|
||||||
|
},
|
||||||
|
remarksLabelCol: {
|
||||||
|
xs: {span: 24},
|
||||||
|
sm: {span: 3}
|
||||||
|
},
|
||||||
|
remarksWrapperCol: {
|
||||||
|
xs: {span: 24},
|
||||||
|
sm: {span: 21}
|
||||||
|
},
|
||||||
|
// 不包含在列表的会员项目
|
||||||
|
memberProjectList:[],
|
||||||
|
validatorRules: {
|
||||||
|
projectId: {
|
||||||
|
rules: [{ required: true, message: '请选择标协会员项目' }],
|
||||||
|
validateTrigger: 'change'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
url: {
|
||||||
|
// todo 需要换接口,
|
||||||
|
add: '/payCaseCouncil/payCaseCouncil/add',
|
||||||
|
memberList: '/member/tbMemberProject/page',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
add(record) {
|
||||||
|
this.edit({id: record.id})
|
||||||
|
},
|
||||||
|
edit(record) {
|
||||||
|
this.form.resetFields()
|
||||||
|
this.model = Object.assign({}, record)
|
||||||
|
this.visible = true
|
||||||
|
this.queryMemberProject()
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.form.setFieldsValue(pick(this.model, 'projectId'))
|
||||||
|
})
|
||||||
|
},
|
||||||
|
close() {
|
||||||
|
this.$emit('close')
|
||||||
|
this.visible = false
|
||||||
|
},
|
||||||
|
/*
|
||||||
|
* 查询会员项目
|
||||||
|
* */
|
||||||
|
queryMemberProject() {
|
||||||
|
const param = {
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: -1
|
||||||
|
}
|
||||||
|
this.memberProjectList = []
|
||||||
|
getAction(this.url.memberList, param).then(res => {
|
||||||
|
if(res.success){
|
||||||
|
this.memberProjectList = res.result.records || res.result || []
|
||||||
|
}else {
|
||||||
|
console.log(res.message)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleOk() {
|
||||||
|
if (this.confirmLoading) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.confirmLoading = true
|
||||||
|
const that = this
|
||||||
|
// 触发表单验证
|
||||||
|
this.form.validateFields((err, values) => {
|
||||||
|
if (!err) {
|
||||||
|
let method = 'post'
|
||||||
|
let httpUrl = this.url.add
|
||||||
|
const formData = Object.assign(this.model, values)
|
||||||
|
|
||||||
|
console.log('表单提交数据', formData)
|
||||||
|
httpAction(httpUrl, formData, method).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
that.$message.success(res.message)
|
||||||
|
that.$emit('ok')
|
||||||
|
that.close()
|
||||||
|
} else {
|
||||||
|
that.$message.warning(res.message)
|
||||||
|
}
|
||||||
|
}).finally(() => {
|
||||||
|
setTimeout(() => {
|
||||||
|
this.confirmLoading = false
|
||||||
|
}, 1000)
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.confirmLoading = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleCancel() {
|
||||||
|
this.close()
|
||||||
|
},
|
||||||
|
// 下拉框的搜索
|
||||||
|
filterOption(input, option) {
|
||||||
|
return (
|
||||||
|
option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
||||||
Reference in New Issue
Block a user