master
271556543@qq.com 3 years ago
parent 6d543025ca
commit 1959b3e36f

@ -119,7 +119,7 @@
<template v-slot:birthday>
<div class="xy-table-item">
<div class="xy-table-item-label">
生日
<span style="color: red;font-weight: 600;padding-right: 4px;">*</span>生日
</div>
<div class="xy-table-item-content">
<el-date-picker v-model="form.birthday" placeholder="请选择生日" style="width: 300px;"
@ -186,7 +186,39 @@ export default {
level_id:'',
},
rules: {
name:[
{required:true,message:'请填写姓名'}
],
phone: [
{required: true, message: '请填写手机号'},
{pattern: /^[1][3-9][\d]{9}/, message: '手机号格式错误'}
],
idcard: [
{required: true, message: '请填写身份证号'},
{pattern: /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/, message: '身份证格式错误'}
],
contact_name:[
{required:true,message:'请填写联系人姓名'}
],
contact_phone: [
{required: true, message: '请填写手机号'},
{pattern: /^[1][3-9][\d]{9}/, message: '手机号格式错误'}
],
idcard_address:[
{required: true, message: '请填写户籍地址'},
],
customer_address_list:[
{required: true, message: '请填写地址'},
],
sex:[
{required: true, message: '请填写姓名'},
],
birthday:[
{required: true, message: '请填写生日'},
],
level_id:[
{required: true, message: '请选择失能等级'},
]
},
map:{

@ -90,7 +90,19 @@ export default {
},
{
label:'默认上门地址',
minWidth:300
minWidth:300,
align:'left',
customFn:(row)=>{
return (
<div>
{
row.customer_address.filter(item => {
return item.default === 1
})[0]?.address || row.customer_address[0]?.address || '无'
}
</div>
)
}
},
{
label:'上门地址数',

@ -15,7 +15,11 @@
<xy-table
:total="total"
:list="list"
:table-item="table"></xy-table>
:table-item="table">
<template v-slot:btns>
<div></div>
</template>
</xy-table>
</div>
</template>
@ -37,7 +41,49 @@ export default {
total:0,
list:[],
table:[]
table:[
{
label:'姓名',
width:140,
fixed:'left',
prop:'name'
},
{
label:'明细',
customFn:(row)=>{
return (
<div style={{'display':'flex'}}>
{
row.data.map(item => {
return (
<div style={{'border':'1px #000 solid'}}>
<div style={{'border-bottom':'1px #000 solid'}}>{item.date}</div>
<div>{item.money}</div>
</div>
)
})
}
</div>
)
}
},
{
label:'合计',
width: 160,
align:'right',
customFn:(row)=>{
let total = 0;
row.data.map(item => {
total += item.money
})
return (
<div>
{total}
</div>
)
}
}
]
}
},
methods: {
@ -45,8 +91,8 @@ export default {
async getList(){
const res = await getList(this.select)
console.log(res)
this.total = res.total
this.list = res.data
this.total = res.length ?? 0
this.list = res
},
},
mounted() {

@ -157,7 +157,32 @@ export default {
total_money: '',
status: '',
},
rules: {}
rules: {
customer_id:[
{required: true, message: '请选择客户'}
],
product_id:[
{required: true, message: '请选择产品'}
],
date:[
{required: true, message: '请选择开始结束时间'}
],
service_times:[
{required: true, message: '请填写服务次数'}
],
unit_price:[
{required: true, message: '请填写单次单价'}
],
total_time:[
{required: true, message: '请填写总计时长'}
],
total_money:[
{required: true, message: '请填写总计金额'}
],
status:[
{required: true, message: '请选择状态'}
]
}
}
},
methods: {

@ -188,6 +188,9 @@ export default {
async getDetail() {
const res = await getForm(this.id)
this.$integrateData(this.form, res)
this.form.product_sku_list = res.product_skus.map(item => {
return {sku_id:item.sku_id}
})
},
submit() {

@ -238,6 +238,12 @@ export default {
],
order_id:[
{required:true,message:'请选择订单'}
],
start_time:[
{required:true,message:'请选择开始时间'}
],
end_time:[
{required:true,message:'请选择结束时间'}
]
}
}

@ -157,14 +157,27 @@ export default {
label: '应服务次数',
width: 120,
customFn: (row) => {
let total = 0;
row.orders.map(item => {
total += item.service_times
})
return (
<div>{row.orders.length}</div>
<div>
{
total
}
</div>
)
}
},
{
label: '已排班',
width: 120
},
{
label:'排班状态',
width: 140,
}
]

@ -91,12 +91,12 @@ export default {
width: 180
},
{
prop: '',
prop: 'serve_area_detail.value',
label: '服务主区域',
width: 200
},
{
prop: '',
prop: 'product_type.name',
label: '服务主模块',
width: 200
},

Loading…
Cancel
Save