会员管理组件替换

This commit is contained in:
fengachen
2021-08-27 19:06:05 +08:00
parent 4560474d2e
commit eaa55ca7ee
5 changed files with 94 additions and 94 deletions
+6
View File
@@ -179,6 +179,9 @@
return; return;
} }
let arr = paths.split(",") let arr = paths.split(",")
if(this.returnId) {
arr.map(item => item = getFileAccessHttpUrl(item))
}
for(var a=0;a<arr.length;a++){ for(var a=0;a<arr.length;a++){
this.fileList.forEach((item)=>{ this.fileList.forEach((item)=>{
if (item.url === arr[a]){ if (item.url === arr[a]){
@@ -299,6 +302,9 @@
window.open(url) window.open(url)
} }
}, },
getFileUrl(fileId){
return `${window._CONFIG['domianURL']}/sys/common/download/${fileId}`
}
}, },
mounted(){}, mounted(){},
model: { model: {
@@ -8,22 +8,22 @@
<section class="project-base-info-content"> <section class="project-base-info-content">
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :xl="6" :lg="4" :md="4" :sm="8"> <a-col :xl="6" :lg="4" :md="4" :sm="8">
<label>会员项目:</label><span>{{currentInfo.projectName}}</span> <label>会员项目:</label><span>{{ currentInfo.projectName }}</span>
</a-col> </a-col>
<a-col :xl="4" :lg="4" :md="4" :sm="8"> <a-col :xl="4" :lg="4" :md="4" :sm="8">
<label>负责人:</label><span>{{currentInfo.directorName}}</span> <label>负责人:</label><span>{{ currentInfo.directorName }}</span>
</a-col> </a-col>
<a-col :xl="5" :lg="4" :md="4" :sm="8"> <a-col :xl="5" :lg="4" :md="4" :sm="8">
<label>收费标准:</label><span>{{currentInfo.chargeStandard}}</span> <label>收费标准:</label><span>{{ currentInfo.chargeStandard }}</span>
</a-col> </a-col>
<a-col :xl="4" :lg="4" :md="4" :sm="8"> <a-col :xl="4" :lg="4" :md="4" :sm="8">
<label>收费通知号:</label><span>{{currentInfo.chargeNoticeNo}}</span> <label>收费通知号:</label><span>{{ currentInfo.chargeNoticeNo }}</span>
</a-col> </a-col>
<a-col :xl="5" :lg="4" :md="4" :sm="8"> <a-col :xl="5" :lg="4" :md="4" :sm="8">
<label>收费通知:</label><span>{{currentInfo.chargeNoticeFileId}}</span> <label>收费通知:</label><span>{{ currentInfo.chargeNoticeFileId }}</span>
</a-col> </a-col>
<a-col :xl="8" :lg="8" :md="8" :sm="24"> <a-col :xl="8" :lg="8" :md="8" :sm="24">
<label>备注:</label><span>{{currentInfo.remark}}</span> <label>备注:</label><span>{{ currentInfo.remark }}</span>
</a-col> </a-col>
</a-row> </a-row>
</section> </section>
@@ -108,6 +108,7 @@ import {JeroListMixin} from '@/mixins/JeroListMixin'
import JYearDate from "@comp/jero/JYearDate"; import JYearDate from "@comp/jero/JYearDate";
import SafeguardMemberModal from "@views/incomePayments/memberManage/modules/SafeguardMemberModal"; import SafeguardMemberModal from "@views/incomePayments/memberManage/modules/SafeguardMemberModal";
import ProjectDetailModal from "@comp/ProjectDetailModal"; import ProjectDetailModal from "@comp/ProjectDetailModal";
import {getAction} from "@api/manage";
export default { export default {
name: "SafeguardMemberList", name: "SafeguardMemberList",
@@ -184,6 +185,7 @@ export default {
scopedSlots: {customRender: 'action'} scopedSlots: {customRender: 'action'}
}, },
], ],
disableMixinCreated: true,
// 当前项目基本信息 // 当前项目基本信息
currentInfo: {}, currentInfo: {},
url: { url: {
@@ -201,9 +203,14 @@ export default {
}, },
}, },
created() { created() {
this.currentInfo = Object.assign({},JSON.parse(this.$route.query.record)) this.currentInfo = Object.assign({}, JSON.parse(this.$route.query.record))
console.log("=====",this.currentInfo) console.log("=====", this.currentInfo)
this.$store.commit('SET_CURRENTPROJECT', this.currentInfo ) this.$store.commit('SET_CURRENTPROJECT', this.currentInfo)
this.filters.projectId = this.currentInfo.id
this.loadData();
//初始化字典配置 在自己页面定义
this.initDictConfig();
}, },
methods: { methods: {
/* /*
@@ -215,9 +222,41 @@ export default {
/* /*
* 返回上级 * 返回上级
* */ * */
handleReback(){ handleReback() {
this.$router.go(-1) this.$router.go(-1)
} },
loadData(arg) {
if (!this.url.list) {
this.$message.error("请设置url.list属性!")
return
}
//加载数据 若传入参数1则加载第一页的内容
if (arg === 1) {
this.ipagination.current = 1;
}
var params = this.getQueryParams();//查询条件
this.loading = true;
getAction(this.url.list, params).then((res) => {
if (res.success) {
//update-begin---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------
this.dataSource = res.result.records || res.result;
if (res.result.total) {
this.ipagination.total = res.result.total;
//清空列表选中
this.onClearSelected()
} else {
this.ipagination.total = 0;
}
//update-end---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------
}
if (res.code === 510) {
this.$message.warning(res.message)
}
this.loading = false;
}).finally(() => {
this.loading = false
})
},
} }
} }
@@ -235,9 +274,10 @@ export default {
} }
.color_blue { .color_blue {
color: #069f99; color: #069f99;
cursor: pointer; cursor: pointer;
} }
.btn-arrow-left { .btn-arrow-left {
border-radius: 50%; border-radius: 50%;
color: #069f99; color: #069f99;
@@ -55,7 +55,7 @@
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="收费通知" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="收费通知" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-upload file-type="pdf" file-type-error-message="请上传收费通知" :multiple="false" :number="1" :return-id="true" <j-upload file-type="pdf" file-type-error-message="请上传收费通知" :multiple="false" :number="1" :return-id="true"
bizPath="payment" v-decorator="['chargeNoticeFileId']" bizPath="payment" v-decorator="['chargeNoticeFileId']"
:trigger-change="true"></j-upload> :trigger-change="true"></j-upload>
</a-form-item> </a-form-item>
@@ -24,42 +24,22 @@
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :xl="12" :sm="24"> <a-col :xl="12" :sm="24">
<a-form-item label="企业联系人" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="企业联系人" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row :gutter="20"> <select-contacts :selected-company="selectedCompany"
<a-col :span="20"> placeholder="请选择企业联系人"
<a-select placeholder="请选择企业联系人" v-decorator="['companyContactId',validatorRules.companyContactId]"
v-decorator="['companyContactId',validatorRules.companyContactId]" :maxLength='50'
> ref="selectMailContacts"
<a-select-option v-for="item in userList" :key="item.id" :value="item.id">{{ @ok="addContactsOk"></select-contacts>
item.name
}}
</a-select-option>
</a-select>
</a-col>
<a-col :span="4" class="form-btn">
<a-button icon="plus" @click="addContacts"></a-button>
</a-col>
</a-row>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :xl="12" :sm="24"> <a-col :xl="12" :sm="24">
<a-form-item label="邮寄联系人" :labelCol="labelCol" :wrapperCol="wrapperCol" class="form-item-postcode"> <a-form-item label="邮寄联系人" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row :gutter="20"> <select-contacts :selected-company="selectedCompany"
<a-col :span="20"> placeholder="请选择邮寄联系人"
<a-select placeholder="请选择邮寄联系人" v-decorator="['postContactId',validatorRules.postContactId]"
show-search :maxLength='50'
:filter-option="filterOption" ref="selectMailContacts"
v-decorator="['postContactId',validatorRules.postContactId]" @ok="addContactsOk"></select-contacts>
>
<a-select-option v-for="item in userList" :key="item.id" :value="item.id">{{
item.name
}}
</a-select-option>
</a-select>
</a-col>
<a-col :span="4" class="form-btn">
<a-button icon="plus" @click="addContacts"></a-button>
</a-col>
</a-row>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
@@ -132,24 +112,26 @@
</a-row> </a-row>
</a-form> </a-form>
</a-spin> </a-spin>
<contact-management-module ref="contactForm" is-company-disabled :selected-company="selectedCompany" <contact-management-module ref="contactForm" is-company-disabled
@ok="getContactPersonList(selectedCompany)"></contact-management-module> :selected-company="selectedCompany"></contact-management-module>
</j-modal> </j-modal>
</template> </template>
<script> <script>
import pick from "lodash.pick"; import pick from "lodash.pick";
import {httpAction, getAction} from "@api/manage"; import {httpAction} from "@api/manage";
import JUpload from "@comp/jero/JUpload"; import JUpload from "@comp/jero/JUpload";
import CompanySelect from "@comp/company/CompanySelect"; import CompanySelect from "@comp/company/CompanySelect";
import ContactManagementModule from "@views/businessManagement/modules/ContactManagementModule"; import ContactManagementModule from "@views/businessManagement/modules/ContactManagementModule";
import SelectContacts from "@comp/company/SelectContacts";
export default { export default {
name: "SafeguardMemberModal", name: "SafeguardMemberModal",
components: { components: {
JUpload, JUpload,
CompanySelect, CompanySelect,
ContactManagementModule ContactManagementModule,
SelectContacts
}, },
data() { data() {
return { return {
@@ -158,8 +140,6 @@ export default {
visible: false, visible: false,
confirmLoading: false, confirmLoading: false,
form: this.$form.createForm(this), form: this.$form.createForm(this),
// 联系人
userList: [],
model: {}, model: {},
labelCol: { labelCol: {
xs: {span: 24}, xs: {span: 24},
@@ -196,7 +176,8 @@ export default {
}, },
paymentMethod: { paymentMethod: {
rules: [{required: true, message: '请选择来款方式'}], rules: [{required: true, message: '请选择来款方式'}],
validateTrigger: ['blur', 'change'] validateTrigger: ['blur', 'change'],
initialValue: 3,
}, },
amountReceivable: { amountReceivable: {
rules: [{required: true, message: '请输入应收金额'}], rules: [{required: true, message: '请输入应收金额'}],
@@ -216,7 +197,7 @@ export default {
// 来款方式 // 来款方式
incomePaysType: '', incomePaysType: '',
// 选中的会员单位 // 选中的会员单位
selectedCompany: {}, selectedCompany: null,
url: { url: {
add: "/jero/memberProjectSubitem/add", add: "/jero/memberProjectSubitem/add",
edit: "/jero/memberProjectSubitem/edit", edit: "/jero/memberProjectSubitem/edit",
@@ -231,8 +212,9 @@ export default {
this.form.resetFields() this.form.resetFields()
this.model = Object.assign({}, record) this.model = Object.assign({}, record)
this.visible = true this.visible = true
// 获取初始值 用于判断显示隐藏元素
this.$nextTick(() => { this.$nextTick(() => {
this.form.setFieldsValue(pick(this.model, 'approvalDocumentNumber', 'dateYear', 'chargeNoticeName', 'chargeNoticeFileId')) this.form.setFieldsValue(pick(this.model, 'companyId', 'companyContactId', 'postContactId', 'amountReceivable', 'needInvoice', 'paymentMethod', 'contractNo', ' chargeNoticeNo', 'chargeNoticeFileId', 'remark'))
}) })
}, },
close() { close() {
@@ -280,42 +262,7 @@ export default {
* 选择会员单位 * 选择会员单位
* */ * */
companyChange(val) { companyChange(val) {
this.selectedCompany = Object.assign({}, val) this.selectedCompany = Object.assign({}, val, {companyName: val.name})
this.getContactPersonList(val)
},
/*
* 根据企业获取联系人数据
* */
getContactPersonList(val) {
const param = {
companyName: val.companyName
}
let url = `company/payContactsManagement/list`
getAction(url, param).then(res => {
if (res.success) {
this.userList = res.result.records
} else {
this.$message.warning(res.message)
}
})
},
/*
* 新增联系人后回显值
* */
// setValue(){
// console.log(1)
// },
/*
* 增加联系人模态框
* */
addContacts() {
if (this.selectedCompany.id) {
this.$refs.contactForm.add()
this.$refs.contactForm.title = "新增";
this.$refs.contactForm.disableSubmit = false;
return
}
this.$message.warn('请先选择来款企业再为该企业新建联系人')
}, },
handleCancel() { handleCancel() {
this.selectedCompany = {} this.selectedCompany = {}
@@ -324,8 +271,15 @@ export default {
/* /*
* 筛选 * 筛选
* */ * */
filterOption(input,option){ filterOption(input, option) {
console.log("inp",option) console.log("inp", option)
},
/*
* 新增联系人后刷新下拉框数据
* */
addContactsOk() {
this.$refs.selectContacts.getContactsList()
this.$refs.selectMailContacts.getContactsList()
} }
} }
} }
+1 -1
View File
@@ -7,7 +7,7 @@
<a-col :md="6" :sm="12"> <a-col :md="6" :sm="12">
<a-form-item label="用户账号"> <a-form-item label="用户账号">
<j-input placeholder="请输入用户账号" v-model="queryParam.username"></j-input> <a-input placeholder="请输入用户账号" v-model="queryParam.username"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>