飘泊客 1 year ago
commit 287d63a4d6

@ -155,9 +155,13 @@ interface customStoreEntitiesItem {
// storeId: number
// customId: number
//门店id
customStoreId?: number
//预约id
storeId: number
//门店名称
storeName?: string
//预约日期
reservationDate?: Dayjs | string
//预约时间
reservationTime: string
}

@ -14,14 +14,22 @@
:model="formModel"
:rule="formRule"
:label-col="{ sm: { span: 24 }, md: { span: 5 } }"
:wrapper-col="{ sm: { span: 24 }, md: { span: 19 } }"
:wrapper-col="
title === '详情' || title === '审核'
? { sm: { span: 24 }, md: { span: 16 } }
: { sm: { span: 24 }, md: { span: 19 } }
"
>
<a-form-item
label="称呼"
name="customName"
:rules="[{ required: true, message: '请输入称呼', trigger: 'blur' }]"
:label-col="{ sm: { span: 24 }, md: { span: 5 } }"
:wrapper-col="{ sm: { span: 24 }, md: { span: 11 } }"
:wrapper-col="
title === '详情' || title === '审核'
? { sm: { span: 24 }, md: { span: 9 } }
: { sm: { span: 24 }, md: { span: 11 } }
"
>
<a-input
v-model:value="formModel.customName"
@ -42,7 +50,11 @@
}
]"
:label-col="{ sm: { span: 24 }, md: { span: 5 } }"
:wrapper-col="{ sm: { span: 24 }, md: { span: 11 } }"
:wrapper-col="
title === '详情' || title === '审核'
? { sm: { span: 24 }, md: { span: 9 } }
: { sm: { span: 24 }, md: { span: 11 } }
"
>
<a-input
v-model:value="formModel.customNid"
@ -69,6 +81,7 @@
:disabled="isDisabled"
:class="dynamicClass"
class="readonly-cascader"
:allow-clear="title === '新建预约' || title === '编辑预约'"
@change="addressChange"
/>
</a-form-item>
@ -96,7 +109,7 @@
<a-select
ref="select"
v-model:value="formModel.radius"
style="width: 38%"
:style="{ width: title === '详情' || title === '审核' ? '37%' : '38%' }"
:options="radiusOptions"
:field-names="{ label: 'name', value: 'id', options: 'children' }"
:disabled="isDisabled"
@ -210,20 +223,20 @@
<div
v-for="(item, index) in formModel.customStoreEntities"
:key="index"
style="display: flex"
style="display: flex; justify-content: space-between"
>
<a-form-item
style="width: 50%"
style="width: 45%"
label="预约门店名称"
:label-col="
title === '详情' || title === '审核'
? { sm: { span: 24 }, md: { span: 10 } }
: { sm: { span: 24 }, md: { span: 7 } }
? { sm: { span: 24 }, md: { span: 11 } }
: { sm: { span: 24 }, md: { span: 8 } }
"
:wrapper-col="
title === '详情' || title === '审核'
? { sm: { span: 24 }, md: { span: 14 } }
: { sm: { span: 24 }, md: { span: 19 } }
? { sm: { span: 24 }, md: { span: 13 } }
: { sm: { span: 24 }, md: { span: 16 } }
"
:rules="{
required: true,
@ -239,19 +252,46 @@
:style="{ width: title === '详情' || title === '审核' ? '103%' : '100%' }"
/>
</a-form-item>
<!-- v-bind="[validateInfos[`customStoreEntities[${index}].reservationTime`]]" -->
<a-form-item
style="width: 50%"
style="width: 30%"
label="预约时间"
:label-col="
title === '详情' || title === '审核'
? { sm: { span: 24 }, md: { span: 10 } }
: { sm: { span: 24 }, md: { span: 7 } }
? { sm: { span: 24 }, md: { span: 9 } }
: { sm: { span: 24 }, md: { span: 9 } }
"
:wrapper-col="
title === '详情' || title === '审核'
? { sm: { span: 24 }, md: { span: 14 } }
: { sm: { span: 24 }, md: { span: 19 } }
? { sm: { span: 24 }, md: { span: 15 } }
: { sm: { span: 24 }, md: { span: 15 } }
"
:rules="{
required: true,
message: '请选择预约日期',
trigger: 'change'
}"
:name="['customStoreEntities', index, 'reservationDate']"
>
<a-space direction="vertical">
<a-date-picker
v-model:value="item.reservationDate"
value-format="YYYY-MM-DD HH:mm:ss"
:disabled="title === '详情' || title === '审核'"
:class="reservationTimeClass"
/>
</a-space>
</a-form-item>
<a-form-item
style="width: 18%"
:label-col="
title === '详情' || title === '审核'
? { sm: { span: 24 }, md: { span: 0 } }
: { sm: { span: 24 }, md: { span: 0 } }
"
:wrapper-col="
title === '详情' || title === '审核'
? { sm: { span: 24 }, md: { span: 24 } }
: { sm: { span: 24 }, md: { span: 24 } }
"
:rules="{
required: true,
@ -264,7 +304,7 @@
<a-select
ref="select"
v-model:value="item.reservationTime"
:allow-clear="true"
:allow-clear="title === '新建预约' || title === '编辑预约'"
:options="appointmentTimeOptions"
:class="reservationTimeClass"
:style="{ width: title === '详情' || title === '审核' ? '103%' : '100%' }"
@ -306,7 +346,8 @@
<p>联系方式{{ formModel.customNid }}</p>
<div style="overflow-y: auto; max-height: 200px">
<p v-for="(item, index) in formModel.customStoreEntities" :key="index">
{{ `报名的门店${index + 1}` }} {{ item.storeName }} - {{ item.reservationTime }}
{{ `报名的门店${index + 1}` }} {{ item.storeName }} --
{{ `${item.reservationDate?.toString().split(' ')[0]} ${item.reservationTime}` }}
</p>
</div>
</a-modal>
@ -324,6 +365,7 @@ import type { FormInstance } from 'ant-design-vue'
//
import type { SelectValue } from 'ant-design-vue/es/select'
import type { SelectProps } from 'ant-design-vue'
import type { Dayjs } from 'dayjs'
import 'dayjs/locale/zh-cn'
import {
addCustomer,
@ -498,7 +540,8 @@ const pagingQuery = () => {
lng: item.longitude,
id: item.id,
index: item.index,
tel: item.nid ? item.nid : ''
tel: item.nid ? item.nid : '',
reservationDate: item.reservationDate
})
})
pois.push(...listData.value)
@ -609,7 +652,8 @@ const addStore = (item: any) => {
formModel.customStoreEntities.push({
storeName: item.title,
reservationTime: '',
storeId: item.id
storeId: item.id,
reservationDate: ''
})
}
//
@ -651,6 +695,8 @@ interface customStoreEntitiesItem {
storeId: number
//
storeName?: string
//
reservationDate?: Dayjs | string
//
reservationTime: string
}
@ -667,7 +713,8 @@ const submitOperate = (type: string, status?: number) => {
(item: customStoreEntitiesItem) => {
const obj: customStoreEntitiesItem = {
storeId: item.storeId,
reservationTime: item.reservationTime
reservationTime: item.reservationTime,
reservationDate: item.reservationDate
}
if (title.value === '编辑预约') {
if (item.customStoreId) {
@ -1099,7 +1146,7 @@ const storeItemClick = (item: any, index: number) => {
}
}
///
///(/)
.custom-disabled-style ::v-deep .ant-select-selector {
/* 自定义禁用状态下的样式 */
background-color: #f5f5f5;
@ -1111,12 +1158,40 @@ const storeItemClick = (item: any, index: number) => {
border-color: #ddd;
background-color: #fff;
pointer-events: none;
color: rgba(0, 0, 0, 0.25);
background: #fff;
cursor: not-allowed;
cursor: context-menu;
color: black;
// color: rgba(0, 0, 0, 0.25);
}
///()
::v-deep .ant-picker.ant-picker-disabled {
background-color: #fff;
pointer-events: none;
}
::v-deep .ant-space-item {
cursor: pointer;
}
::v-deep .ant-picker-input > input[disabled] {
color: rgba(0, 0, 0, 0.85);
}
.custom-readonly-style ::v-deep .ant-picker {
/* 自定义只读状态下的样式 */
border-color: #ddd;
background-color: #fff;
pointer-events: none;
background: #fff;
cursor: not-allowed;
cursor: context-menu;
color: rgba(0, 0, 0, 0.25);
}
//
::v-deep .ant-picker,
.ant-space {
width: 100%;
}
//
.drawStation {
//

@ -22,13 +22,13 @@ import { antdvStyleDeps } from './src/utils/resolvers'
//项目
// const serverAddress = 'http://admin.ballcat.cn'
//xy
// const serverAddress = 'http://172.18.0.225:8000'
const serverAddress = 'http://172.18.0.225:8000'
//jt
// const serverAddress = 'http://172.18.1.8:8000'
//ts
// const serverAddress = 'http://172.18.0.228:8000'
//测试
const serverAddress = 'http://39.100.77.21:8000'
// const serverAddress = 'http://39.100.77.21:8000'
//线上ip
// const serverAddress = 'http://175.27.212.74:80'

Loading…
Cancel
Save