|
|
|
@ -287,6 +287,16 @@
|
|
|
|
|
<el-form-item label="详细地址" prop="detailedly"> |
|
|
|
|
<el-input v-model="form.detailedly" placeholder="请填写详细地址" style="width: 100%" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="默认付款方式" prop="defaultPaymentMethods"> |
|
|
|
|
<el-select v-model="form.defaultPaymentMethods" placeholder="请选择默认付款方式"> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in defaultPaymentMethodsOptions" |
|
|
|
|
:key="item.value" |
|
|
|
|
:label="item.label" |
|
|
|
|
:value="item.value" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
<!-- <el-form-item label="三方商城" prop="tripartiteMall">--> |
|
|
|
|
<!-- <el-input v-model="form.tripartiteMall" placeholder="请填写三方商城" style="width: 100%" />--> |
|
|
|
|
<!-- </el-form-item>--> |
|
|
|
@ -319,7 +329,7 @@
|
|
|
|
|
:limit="3" |
|
|
|
|
:on-exceed="handleExceed" |
|
|
|
|
> |
|
|
|
|
<el-button>上传</el-button> |
|
|
|
|
<el-button type="Primary" icon="Position">上传</el-button> |
|
|
|
|
<template #tip> |
|
|
|
|
<div class="el-upload__tip">大小不超过500KB的jpg/png文件。</div> |
|
|
|
|
</template> |
|
|
|
@ -333,35 +343,23 @@
|
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="合同开始时间" prop="contractStartTime" label-width="120px"> |
|
|
|
|
<!-- <el-input v-model="form.contractStartTime" placeholder="请输入合同开始时间"/>--> |
|
|
|
|
<div class="demo-date-picker" style="width: 60%"> |
|
|
|
|
<div class="block"> |
|
|
|
|
<!-- <span class="demonstration">Default</span>--> |
|
|
|
|
<el-date-picker |
|
|
|
|
v-model="form.contractStartTime" |
|
|
|
|
type="date" |
|
|
|
|
placeholder="选择时间" |
|
|
|
|
format="YYYY/MM/DD HH:mm:ss" |
|
|
|
|
value-format="YYYY-MM-DD HH:mm:ss" |
|
|
|
|
/> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<el-date-picker |
|
|
|
|
v-model="form.contractStartTime" |
|
|
|
|
type="date" |
|
|
|
|
placeholder="选择时间" |
|
|
|
|
format="YYYY/MM/DD HH:mm:ss" |
|
|
|
|
value-format="YYYY-MM-DD HH:mm:ss" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="合同结束时间" prop="contractEntTime" label-width="120px"> |
|
|
|
|
<!-- <el-input v-model="form.contractEntTime" placeholder="请输入合同结束时间"/>--> |
|
|
|
|
<div class="demo-date-picker"> |
|
|
|
|
<div class="block"> |
|
|
|
|
<!-- <span class="demonstration">Default</span>--> |
|
|
|
|
<el-date-picker |
|
|
|
|
v-model="form.contractEntTime" |
|
|
|
|
type="date" |
|
|
|
|
placeholder="选择时间" |
|
|
|
|
format="YYYY/MM/DD HH:mm:ss" |
|
|
|
|
value-format="YYYY-MM-DD HH:mm:ss" |
|
|
|
|
/> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<el-date-picker |
|
|
|
|
v-model="form.contractEntTime" |
|
|
|
|
type="date" |
|
|
|
|
placeholder="选择时间" |
|
|
|
|
format="YYYY/MM/DD HH:mm:ss" |
|
|
|
|
value-format="YYYY-MM-DD HH:mm:ss" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form> |
|
|
|
|
<!-- 表单按钮 --> |
|
|
|
@ -756,24 +754,26 @@ export default {
|
|
|
|
|
{ required: true, message: '请输入客户名称', trigger: 'blur' }, |
|
|
|
|
// { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' } |
|
|
|
|
], |
|
|
|
|
typeService: [{ required: true, message: '请选择客户端类型', trigger: 'blur' }], |
|
|
|
|
typeService: [{ required: true, message: '请选择客户端类型', trigger: ['blur', 'change'] }], |
|
|
|
|
businessType: [ |
|
|
|
|
{ required: true, message: '请选择配送业务类型', trigger: 'change' }, |
|
|
|
|
// { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' } |
|
|
|
|
// { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: ['blur', 'change'] } |
|
|
|
|
], |
|
|
|
|
clientType: [{ required: true, message: '请选择客户类型', trigger: 'change' }], |
|
|
|
|
typeServiceList: [{ required: true, message: '请选择服务类型', trigger: 'change' }], |
|
|
|
|
linkman: [{ required: true, message: '请填写联系人', trigger: 'blur' }], |
|
|
|
|
detailedly: [{ required: true, message: '请填写详细地址', trigger: 'blur' }], |
|
|
|
|
phone: [{ required: true, message: '请填写联系电话', trigger: 'blur' }], |
|
|
|
|
contractEntTime: [ |
|
|
|
|
{ type: 'date', required: true, message: '请选择合同结束时间', trigger: 'change' }, |
|
|
|
|
], |
|
|
|
|
contractStartTime: [ |
|
|
|
|
{ type: 'date', required: true, message: '请选择合同开始时间', trigger: 'change' }, |
|
|
|
|
], |
|
|
|
|
linkman: [{ required: true, message: '请填写联系人', trigger: ['blur', 'change'] }], |
|
|
|
|
detailedly: [{ required: true, message: '请填写详细地址', trigger: ['blur', 'change'] }], |
|
|
|
|
phone: [{ required: true, message: '请填写联系电话', trigger: ['blur', 'change'] }], |
|
|
|
|
// contractEntTime: [ |
|
|
|
|
// { type: 'date', required: true, message: '请选择合同结束时间', trigger: 'change' }, |
|
|
|
|
// ], |
|
|
|
|
// contractStartTime: [ |
|
|
|
|
// { type: 'date', required: true, message: '请选择合同开始时间', trigger: 'change' }, |
|
|
|
|
// ], |
|
|
|
|
bladeRegionProvinceId: [{ required: true, message: '请选择地址', trigger: 'change' }], |
|
|
|
|
// leaseAccessories: [{ required: true, message: '请上传合同文件', trigger: 'blur' }], |
|
|
|
|
defaultPaymentMethods: [ |
|
|
|
|
{ required: true, message: '请选择默认付款方式', trigger: 'change' }, |
|
|
|
|
], |
|
|
|
|
}, |
|
|
|
|
bianji: false, |
|
|
|
|
|
|
|
|
@ -782,6 +782,29 @@ export default {
|
|
|
|
|
name: '', |
|
|
|
|
phone: '', |
|
|
|
|
}, |
|
|
|
|
/** 付款方式 */ |
|
|
|
|
defaultPaymentMethodsOptions: [ |
|
|
|
|
{ |
|
|
|
|
value: '1', |
|
|
|
|
label: '现付', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
value: '2', |
|
|
|
|
label: '到付', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
value: '3', |
|
|
|
|
label: '月结', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
value: '4', |
|
|
|
|
label: '回付', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
value: '5', |
|
|
|
|
label: '内部结算', |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
created() {}, |
|
|
|
@ -1218,6 +1241,10 @@ export default {
|
|
|
|
|
this.box = true; |
|
|
|
|
this.distriType = false; |
|
|
|
|
this.viewClientEntd = false; |
|
|
|
|
this.$nextTick(() => { |
|
|
|
|
this.$refs.form.resetFields(); |
|
|
|
|
this.form.defaultPaymentMethods = '1'; |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
handleAddSon(row) { |
|
|
|
|
console.log(row); |
|
|
|
@ -1455,102 +1482,104 @@ export default {
|
|
|
|
|
this.query.bladeRegionAreaId = this.query.bladeRegionProvinceId[2]; |
|
|
|
|
this.query.bladeRegionProvinceId = this.query.bladeRegionProvinceId[0]; |
|
|
|
|
} |
|
|
|
|
getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => { |
|
|
|
|
const data = res.data.data; |
|
|
|
|
console.log(data); |
|
|
|
|
getList(page.currentPage, page.pageSize, Object.assign(params, this.query)) |
|
|
|
|
.then(res => { |
|
|
|
|
const data = res.data.data; |
|
|
|
|
console.log(data); |
|
|
|
|
|
|
|
|
|
data.records.forEach(i => { |
|
|
|
|
let ke = this.clientType.find(kh => parseInt(kh.dictKey) == parseInt(i.clientType)); |
|
|
|
|
// console.log("客户类型<><><>",ke); |
|
|
|
|
if (!!ke) { |
|
|
|
|
i.clientTypeName = ke.dictValue; |
|
|
|
|
// console.log('==-=-=', i.clientType, ke.dictKey, ke.dictValue); |
|
|
|
|
} |
|
|
|
|
if (!i.clientType) { |
|
|
|
|
i.clientTypeName = '无'; |
|
|
|
|
} |
|
|
|
|
let typeServiceName = []; |
|
|
|
|
data.records.forEach(i => { |
|
|
|
|
let ke = this.clientType.find(kh => parseInt(kh.dictKey) == parseInt(i.clientType)); |
|
|
|
|
// console.log("客户类型<><><>",ke); |
|
|
|
|
if (!!ke) { |
|
|
|
|
i.clientTypeName = ke.dictValue; |
|
|
|
|
// console.log('==-=-=', i.clientType, ke.dictKey, ke.dictValue); |
|
|
|
|
} |
|
|
|
|
if (!i.clientType) { |
|
|
|
|
i.clientTypeName = '无'; |
|
|
|
|
} |
|
|
|
|
let typeServiceName = []; |
|
|
|
|
|
|
|
|
|
if (!i.typeServiceBusiness) { |
|
|
|
|
i.typeServiceName = '无'; |
|
|
|
|
} else { |
|
|
|
|
i.typeServiceBusiness.forEach(ty => { |
|
|
|
|
let fuw = this.freightType.find( |
|
|
|
|
fw => parseInt(fw.dictKey) == parseInt(ty.typeService) |
|
|
|
|
); |
|
|
|
|
if (!!fuw) { |
|
|
|
|
// console.log("fuw",fuw); |
|
|
|
|
typeServiceName.push(fuw.dictValue); |
|
|
|
|
// console.log('==-=-=', i.typeService, fuw.dictKey, fuw.dictValue); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
i.typeServiceNameFy = typeServiceName.join(','); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
// 缺少判断 |
|
|
|
|
// let dz = ''; |
|
|
|
|
// data.records.forEach(it => { |
|
|
|
|
// let arrsheng = this.optioner.filter(i => { |
|
|
|
|
// return it.bladeRegionProvinceId == i.value; |
|
|
|
|
// }); |
|
|
|
|
// if (arrsheng.length == 0) return; |
|
|
|
|
// // console.log("========",JSON.parse(JSON.stringify(arrsheng)) ); |
|
|
|
|
// let arrshi = arrsheng[0].children.filter(i => { |
|
|
|
|
// return it.bladeRegionCityId == i.value; |
|
|
|
|
// }); |
|
|
|
|
// // console.log("========",JSON.parse(JSON.stringify(arrsheng)) ); |
|
|
|
|
// let arrqu = arrshi[0].children.filter(i => { |
|
|
|
|
// return it.bladeRegionAreaId == i.value; |
|
|
|
|
// }); |
|
|
|
|
|
|
|
|
|
// // console.log("========",JSON.parse(JSON.stringify(arrsheng)) ); |
|
|
|
|
// dz = |
|
|
|
|
// arrsheng[0].label + |
|
|
|
|
// (arrshi[0].label ? `/${arrshi[0].label}` : ``) + |
|
|
|
|
// (arrqu[0]?.label ? `/${arrqu[0]?.label}` : ''); |
|
|
|
|
// it.bladeRegionProvinceId = dz; |
|
|
|
|
// }); |
|
|
|
|
// 修改后 |
|
|
|
|
let dz = ''; |
|
|
|
|
data.records.forEach(it => { |
|
|
|
|
let arrsheng = this.optioner.filter(i => { |
|
|
|
|
return it.bladeRegionProvinceId == i.value; |
|
|
|
|
if (!i.typeServiceBusiness) { |
|
|
|
|
i.typeServiceName = '无'; |
|
|
|
|
} else { |
|
|
|
|
i.typeServiceBusiness.forEach(ty => { |
|
|
|
|
let fuw = this.freightType.find( |
|
|
|
|
fw => parseInt(fw.dictKey) == parseInt(ty.typeService) |
|
|
|
|
); |
|
|
|
|
if (!!fuw) { |
|
|
|
|
// console.log("fuw",fuw); |
|
|
|
|
typeServiceName.push(fuw.dictValue); |
|
|
|
|
// console.log('==-=-=', i.typeService, fuw.dictKey, fuw.dictValue); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
i.typeServiceNameFy = typeServiceName.join(','); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
let shengLabel = arrsheng.length > 0 ? arrsheng[0].label : ''; // 保存省级地址 |
|
|
|
|
// 缺少判断 |
|
|
|
|
// let dz = ''; |
|
|
|
|
// data.records.forEach(it => { |
|
|
|
|
// let arrsheng = this.optioner.filter(i => { |
|
|
|
|
// return it.bladeRegionProvinceId == i.value; |
|
|
|
|
// }); |
|
|
|
|
// if (arrsheng.length == 0) return; |
|
|
|
|
// // console.log("========",JSON.parse(JSON.stringify(arrsheng)) ); |
|
|
|
|
// let arrshi = arrsheng[0].children.filter(i => { |
|
|
|
|
// return it.bladeRegionCityId == i.value; |
|
|
|
|
// }); |
|
|
|
|
// // console.log("========",JSON.parse(JSON.stringify(arrsheng)) ); |
|
|
|
|
// let arrqu = arrshi[0].children.filter(i => { |
|
|
|
|
// return it.bladeRegionAreaId == i.value; |
|
|
|
|
// }); |
|
|
|
|
|
|
|
|
|
if (arrsheng.length === 0) { |
|
|
|
|
it.bladeRegionProvinceId = shengLabel; // 若未找到省数据,直接将省级地址作为结果 |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
// // console.log("========",JSON.parse(JSON.stringify(arrsheng)) ); |
|
|
|
|
// dz = |
|
|
|
|
// arrsheng[0].label + |
|
|
|
|
// (arrshi[0].label ? `/${arrshi[0].label}` : ``) + |
|
|
|
|
// (arrqu[0]?.label ? `/${arrqu[0]?.label}` : ''); |
|
|
|
|
// it.bladeRegionProvinceId = dz; |
|
|
|
|
// }); |
|
|
|
|
// 修改后 |
|
|
|
|
let dz = ''; |
|
|
|
|
data.records.forEach(it => { |
|
|
|
|
let arrsheng = this.optioner.filter(i => { |
|
|
|
|
return it.bladeRegionProvinceId == i.value; |
|
|
|
|
}); |
|
|
|
|
let shengLabel = arrsheng.length > 0 ? arrsheng[0].label : ''; // 保存省级地址 |
|
|
|
|
|
|
|
|
|
let arrshi = arrsheng[0].children.filter(i => { |
|
|
|
|
return it.bladeRegionCityId == i.value; |
|
|
|
|
}); |
|
|
|
|
let shiLabel = arrshi.length > 0 ? arrshi[0].label : ''; // 保存市级地址 |
|
|
|
|
if (arrsheng.length === 0) { |
|
|
|
|
it.bladeRegionProvinceId = shengLabel; // 若未找到省数据,直接将省级地址作为结果 |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (arrshi.length === 0) { |
|
|
|
|
dz = shengLabel; // 若未找到市数据,直接将省级地址作为结果 |
|
|
|
|
} else { |
|
|
|
|
let arrqu = arrshi[0].children.filter(i => { |
|
|
|
|
return it.bladeRegionAreaId == i.value; |
|
|
|
|
let arrshi = arrsheng[0].children.filter(i => { |
|
|
|
|
return it.bladeRegionCityId == i.value; |
|
|
|
|
}); |
|
|
|
|
let shiLabel = arrshi.length > 0 ? arrshi[0].label : ''; // 保存市级地址 |
|
|
|
|
|
|
|
|
|
let quLabel = arrqu.length > 0 ? arrqu[0].label : ''; // 保存区级地址 |
|
|
|
|
if (arrshi.length === 0) { |
|
|
|
|
dz = shengLabel; // 若未找到市数据,直接将省级地址作为结果 |
|
|
|
|
} else { |
|
|
|
|
let arrqu = arrshi[0].children.filter(i => { |
|
|
|
|
return it.bladeRegionAreaId == i.value; |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
dz = shengLabel + (shiLabel ? `/${shiLabel}` : '') + (quLabel ? `/${quLabel}` : ''); |
|
|
|
|
} |
|
|
|
|
let quLabel = arrqu.length > 0 ? arrqu[0].label : ''; // 保存区级地址 |
|
|
|
|
|
|
|
|
|
it.bladeRegionProvinceId = dz; |
|
|
|
|
dz = shengLabel + (shiLabel ? `/${shiLabel}` : '') + (quLabel ? `/${quLabel}` : ''); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
it.bladeRegionProvinceId = dz; |
|
|
|
|
}); |
|
|
|
|
this.page.total = data.total; |
|
|
|
|
this.data = data.records; |
|
|
|
|
this.data = this.$functions.newdatas(this.columnList, this.data); |
|
|
|
|
this.loading = false; |
|
|
|
|
this.selectionClear(); |
|
|
|
|
}) |
|
|
|
|
.catch(() => { |
|
|
|
|
this.data = []; |
|
|
|
|
this.loading = false; |
|
|
|
|
}); |
|
|
|
|
this.page.total = data.total; |
|
|
|
|
this.data = data.records; |
|
|
|
|
this.data = this.$functions.newdatas(this.columnList, this.data); |
|
|
|
|
this.loading = false; |
|
|
|
|
this.selectionClear(); |
|
|
|
|
}).catch(()=>{ |
|
|
|
|
this.data =[] |
|
|
|
|
this.loading = false; |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
@ -1577,4 +1606,13 @@ export default {
|
|
|
|
|
:deep(.el-cascader) { |
|
|
|
|
width: 100%; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
:deep(.el-date-editor.el-input) { |
|
|
|
|
height: 100% !important; |
|
|
|
|
width: 100% !important; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
:deep(.el-select) { |
|
|
|
|
width: 100% !important; |
|
|
|
|
} |
|
|
|
|
</style> |
|
|
|
|