70 lines
1.6 KiB
JavaScript
70 lines
1.6 KiB
JavaScript
import _ from 'lodash'
|
|
import * as PartnersApi from '@/api/partners'
|
|
|
|
/**
|
|
* 合作商 model类
|
|
* PartnersModel
|
|
*/
|
|
export default {
|
|
|
|
// 当前合作商ID
|
|
partnersId: null,
|
|
|
|
// 表单数据
|
|
formData: {
|
|
// 当前合作商记录
|
|
partners: {}
|
|
},
|
|
|
|
// 获取form所需的数据
|
|
getFromData (partnersId = null) {
|
|
// 记录合作商ID (编辑时)
|
|
this.partnersId = partnersId
|
|
return new Promise((resolve, reject) => {
|
|
Promise.all([
|
|
// 获取合作商详情信息(编辑时)
|
|
this.getPartnersDetail(partnersId)
|
|
]).then(() => {
|
|
// 设置默认数据
|
|
this.setDefaultData()
|
|
resolve({ formData: this.formData })
|
|
})
|
|
})
|
|
},
|
|
|
|
// 获取合作商详情
|
|
getPartnersDetail (partnersId = null) {
|
|
if (!partnersId) return false
|
|
return new Promise((resolve, reject) => {
|
|
PartnersApi.detail({ partnersId })
|
|
.then(result => {
|
|
this.formData.partners = result.data.partnersInfo
|
|
resolve()
|
|
})
|
|
})
|
|
},
|
|
|
|
// 获取表单默认值(用于form.setFieldsValue的数据)
|
|
getFieldsValue () {
|
|
// 合作商详情信息
|
|
const partnersInfo = this.formData.partners
|
|
|
|
// 合作商基本数据
|
|
const partnersFormData = _.pick(partnersInfo, [
|
|
'partners_id', 'name', 'address', 'contact_name', 'contact_tel',
|
|
'appKey', 'callback', 'create_time'
|
|
])
|
|
partnersFormData.callback = partnersFormData.callback.toString()
|
|
console.log(partnersFormData)
|
|
return {
|
|
...partnersFormData
|
|
}
|
|
},
|
|
|
|
// 设置默认的数据(无法用于form.setFieldsValue的数据)
|
|
setDefaultData () {
|
|
|
|
}
|
|
|
|
}
|