Files
oil/admin-vue/src/common/model/partners/Index.js
T

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 () {
}
}