|
|
|
@ -60,7 +60,7 @@
|
|
|
|
|
<el-button type="danger" icon="el-icon-delete" @click="handleDelete" plain |
|
|
|
|
>删 除</el-button |
|
|
|
|
> |
|
|
|
|
<el-button type="danger" icon="el-icon-delete" @click="handleImport">导 入 </el-button> |
|
|
|
|
<el-button type="danger" icon="Upload" @click="handleImport">导 入 </el-button> |
|
|
|
|
</div> |
|
|
|
|
<!-- 头部右侧按钮模块 --> |
|
|
|
|
<div class="avue-crud__right"> |
|
|
|
@ -184,6 +184,7 @@
|
|
|
|
|
:close-on-click-modal="false" |
|
|
|
|
append-to-body |
|
|
|
|
> |
|
|
|
|
<div v-loading="loadingObj.submitLoading"> |
|
|
|
|
<el-form :disabled="view" ref="form" :model="form" :rules="rules" label-width="120px"> |
|
|
|
|
<!-- 表单字段 --> |
|
|
|
|
<el-form-item label="客户编码" prop="clientCode"> |
|
|
|
@ -196,7 +197,11 @@
|
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="客户名称" prop="clientName"> |
|
|
|
|
<el-input v-model="form.clientName" placeholder="请输入客户名称" style="width: 100%" /> |
|
|
|
|
<el-input |
|
|
|
|
v-model="form.clientName" |
|
|
|
|
placeholder="请输入客户名称" |
|
|
|
|
style="width: 100%" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="客户类型" prop="clientType"> |
|
|
|
|
<!-- <el-input v-model="form.clientName" placeholder="请输入客户名称" style="width: 100%"/>--> |
|
|
|
@ -285,7 +290,21 @@
|
|
|
|
|
</el-cascader> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="详细地址" prop="detailedly"> |
|
|
|
|
<el-input v-model="form.detailedly" placeholder="请填写详细地址" style="width: 100%" /> |
|
|
|
|
<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%" />--> |
|
|
|
@ -319,7 +338,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,10 +352,6 @@
|
|
|
|
|
/> |
|
|
|
|
</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" |
|
|
|
@ -344,15 +359,9 @@
|
|
|
|
|
format="YYYY/MM/DD HH:mm:ss" |
|
|
|
|
value-format="YYYY-MM-DD HH:mm:ss" |
|
|
|
|
/> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</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" |
|
|
|
@ -360,19 +369,16 @@
|
|
|
|
|
format="YYYY/MM/DD HH:mm:ss" |
|
|
|
|
value-format="YYYY-MM-DD HH:mm:ss" |
|
|
|
|
/> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form> |
|
|
|
|
<!-- 表单按钮 --> |
|
|
|
|
<template #footer> |
|
|
|
|
<span v-if="!view" class="dialog-footer"> |
|
|
|
|
<div v-if="!view" class="flex-c-c"> |
|
|
|
|
<el-button type="primary" icon="el-icon-circle-check" @click="handleSubmit('form')" |
|
|
|
|
>提 交</el-button |
|
|
|
|
> |
|
|
|
|
<el-button icon="el-icon-circle-close" @click="box = false">取 消</el-button> |
|
|
|
|
</span> |
|
|
|
|
</template> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
<!-- 账号绑定弹出框页面 |
|
|
|
@ -756,24 +762,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 +790,32 @@ export default {
|
|
|
|
|
name: '', |
|
|
|
|
phone: '', |
|
|
|
|
}, |
|
|
|
|
/** 付款方式 */ |
|
|
|
|
defaultPaymentMethodsOptions: [ |
|
|
|
|
{ |
|
|
|
|
value: '1', |
|
|
|
|
label: '现付', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
value: '2', |
|
|
|
|
label: '到付', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
value: '3', |
|
|
|
|
label: '月结', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
value: '4', |
|
|
|
|
label: '回付', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
value: '5', |
|
|
|
|
label: '内部结算', |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
loadingObj: { |
|
|
|
|
submitLoading: false, |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
created() {}, |
|
|
|
@ -1168,42 +1202,56 @@ export default {
|
|
|
|
|
|
|
|
|
|
if (!this.form.id) { |
|
|
|
|
console.log('添加提交的数据:', this.form); |
|
|
|
|
this.$refs[from].validate(valid => { |
|
|
|
|
this.$refs[from].validate(async valid => { |
|
|
|
|
if (valid) { |
|
|
|
|
try { |
|
|
|
|
this.loadingObj.submitLoading = true; |
|
|
|
|
|
|
|
|
|
// this.form.typeService = !!this.form.typeService ? parseInt(this.form.typeService) : undefined; |
|
|
|
|
this.form.bladeRegionCityId = this.form.bladeRegionProvinceId[1]; |
|
|
|
|
this.form.bladeRegionAreaId = this.form.bladeRegionProvinceId[2]; |
|
|
|
|
this.form.bladeRegionProvinceId = this.form.bladeRegionProvinceId[0]; |
|
|
|
|
console.log('上传llll>>>', this.form); |
|
|
|
|
add(this.form).then(() => { |
|
|
|
|
await add(this.form); |
|
|
|
|
this.box = false; |
|
|
|
|
this.onLoad(this.page); |
|
|
|
|
this.$message({ |
|
|
|
|
type: 'success', |
|
|
|
|
message: '操作成功!', |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
} catch (error) { |
|
|
|
|
console.log('error :>> ', error); |
|
|
|
|
} finally { |
|
|
|
|
this.loadingObj.submitLoading = false; |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
console.log('error submit!!'); |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} else { |
|
|
|
|
this.$refs[from].validate(valid => { |
|
|
|
|
this.$refs[from].validate(async valid => { |
|
|
|
|
if (valid) { |
|
|
|
|
try { |
|
|
|
|
this.loadingObj.submitLoading = true; |
|
|
|
|
|
|
|
|
|
console.log('修改提交的数据:', this.form); |
|
|
|
|
// this.form.typeService = !!this.form.typeService ? parseInt(this.form.typeService) : undefined; |
|
|
|
|
this.form.bladeRegionCityId = this.form.bladeRegionProvinceId[1]; |
|
|
|
|
this.form.bladeRegionAreaId = this.form.bladeRegionProvinceId[2]; |
|
|
|
|
this.form.bladeRegionProvinceId = this.form.bladeRegionProvinceId[0]; |
|
|
|
|
update(this.form).then(() => { |
|
|
|
|
await update(this.form); |
|
|
|
|
this.box = false; |
|
|
|
|
this.onLoad(this.page); |
|
|
|
|
this.$message({ |
|
|
|
|
type: 'success', |
|
|
|
|
message: '操作成功!', |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
} catch (error) { |
|
|
|
|
console.log('error :>> ', error); |
|
|
|
|
} finally { |
|
|
|
|
this.loadingObj.submitLoading = false; |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
console.log('error submit!!'); |
|
|
|
|
return false; |
|
|
|
@ -1218,6 +1266,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,7 +1507,8 @@ 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 => { |
|
|
|
|
getList(page.currentPage, page.pageSize, Object.assign(params, this.query)) |
|
|
|
|
.then(res => { |
|
|
|
|
const data = res.data.data; |
|
|
|
|
console.log(data); |
|
|
|
|
|
|
|
|
@ -1547,8 +1600,9 @@ export default {
|
|
|
|
|
this.data = this.$functions.newdatas(this.columnList, this.data); |
|
|
|
|
this.loading = false; |
|
|
|
|
this.selectionClear(); |
|
|
|
|
}).catch(()=>{ |
|
|
|
|
this.data =[] |
|
|
|
|
}) |
|
|
|
|
.catch(() => { |
|
|
|
|
this.data = []; |
|
|
|
|
this.loading = false; |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
@ -1577,4 +1631,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> |
|
|
|
|