Commit 7c539824 by yuzhenWang

Merge branch 'feature-20250827wyz-写业务' into 'test'

修复bug1

See merge request !21
parents a0117893 0421718f
......@@ -520,7 +520,7 @@ const applicant = [
required: false,
maxLength: 300,
disabled: false,
placeholder: '请输入平均每月支出',
placeholder: '请输入',
show: true,
labelPosition: 'top', //标签的位置
labelWidth: '120px', //标签宽度
......@@ -612,7 +612,7 @@ const applicant = [
required: false,
maxLength: 300,
disabled: false,
placeholder: '请输入平均每月支出',
placeholder: '请输入',
show: true,
labelPosition: 'top', //标签的位置
labelWidth: '120px', //标签宽度
......@@ -722,7 +722,7 @@ const applicant = [
required: false,
maxLength: 300,
disabled: false,
placeholder: '请输入平均每月支出',
placeholder: '请输入',
show: true,
labelPosition: 'top', //标签的位置
labelWidth: '120px', //标签宽度
......
......@@ -267,11 +267,11 @@ const appointmentInfo = [
lg: 8 //栅格布局份数
},
{
label: '离港时间',
label: '离港时间(先选择离港时间)',
key: 'departureTime',
domType: 'datetimePicker',
required: false,
disabled: false,
disabled: true,
placeholder: '请选择',
show: true,
labelPosition: 'top', //标签的位置
......@@ -393,7 +393,7 @@ const appointmentInfo = [
{
label: '开户时间段(开始)',
key: 'openAccountStartTime',
domType: 'datetimePicker',
domType: 'DatePicker',
timeType: 'date',
required: false,
disabled: false,
......@@ -405,11 +405,11 @@ const appointmentInfo = [
lg: 8 //栅格布局份数
},
{
label: '开户时间段(结束)',
label: '开户时间段(结束,先选择开始时间)',
key: 'openAccountEndTime',
domType: 'datetimePicker',
domType: 'DatePicker',
required: false,
disabled: false,
disabled: true,
placeholder: '请选择',
show: true,
labelPosition: 'top', //标签的位置
......
......@@ -389,7 +389,7 @@ const fnaForm = [
subTitle: '公司业务资料 (适用于公司老板跟股东)',
data: [
{
label: '公司過去兩年平均純利 (HKD)',
label: '公司過去兩年平均純利',
key: 'averageNetProfit',
domType: 'Input',
inputType: 'text',
......@@ -404,7 +404,7 @@ const fnaForm = [
lg: 8 //栅格布局份数
},
{
label: '公司現時大約的總資產 (HKD)',
label: '公司現時大約的總資產',
key: 'estimatedTotalAssets',
domType: 'Input',
inputType: 'text',
......@@ -467,7 +467,7 @@ const fnaForm = [
required: false,
maxLength: 300,
disabled: false,
placeholder: '请输入金额(HKD)',
placeholder: '请输入',
show: true,
inputWidth: '300px',
labelWidth: '800px', //标签宽度
......@@ -483,7 +483,7 @@ const fnaForm = [
required: false,
maxLength: 300,
disabled: false,
placeholder: '请输入金额(HKD)',
placeholder: '请输入',
show: true,
inputWidth: '300px', //输入框宽度
labelWidth: '260px', //标签宽度
......@@ -507,7 +507,7 @@ const fnaForm = [
required: false,
maxLength: 300,
disabled: false,
placeholder: '请输入金额(HKD)',
placeholder: '请输入',
show: true,
inputWidth: '300px', //输入框宽度
labelWidth: '220px', //标签宽度
......@@ -522,7 +522,7 @@ const fnaForm = [
required: false,
maxLength: 300,
disabled: false,
placeholder: '请输入金额(HKD)',
placeholder: '请输入',
show: true,
labelWidth: '100px', //标签宽度
sm: 18, //栅格布局份数
......@@ -537,7 +537,7 @@ const fnaForm = [
required: false,
maxLength: 300,
disabled: false,
placeholder: '请输入说明',
placeholder: '请输入',
show: true,
labelWidth: '0px', //标签宽度
sm: 6, //栅格布局份数
......
......@@ -627,7 +627,7 @@ const insured = [
required: false,
maxLength: 300,
disabled: false,
placeholder: '请输入平均每月支出',
placeholder: '请输入',
show: true,
labelPosition: 'top', //标签的位置
labelWidth: '120px', //标签宽度
......
......@@ -332,7 +332,7 @@
/>
</template>
</el-table-column>
<el-table-column label="市值(HKD)" prop="marketValue" align="center">
<el-table-column label="市值" prop="marketValue" align="center">
<template #default="scope">
<el-input
v-model="scope.row.marketValue"
......@@ -371,11 +371,7 @@
/>
</template>
</el-table-column>
<el-table-column
label="自住用途之房地产市值(HKD)"
prop="marketValue"
align="center"
>
<el-table-column label="自住用途之房地产市值" prop="marketValue" align="center">
<template #default="scope">
<el-input
v-model="scope.row.marketValue"
......
......@@ -775,7 +775,9 @@ const handleSubmit = type => {
proxy.$message.success('修改预约单成功')
}
})
getAppointmentInfo(idsObj.value.appointmentBizId)
}
// 预约暂存
if (type == 'storage') {
submitAppointmentObj.value.apiAppointmentInfoDto.customerBizId =
props.processDetail.customerBizId
......@@ -789,7 +791,6 @@ const handleSubmit = type => {
}
})
}
getAppointmentInfo(idsObj.value.appointmentBizId)
}
//修改预约数据
......
......@@ -55,7 +55,7 @@
:value="item.value"
/>
</el-select>
<!-- 带时分的时间框 -->
<el-date-picker
v-model="form[child.key]"
style="width: 100%"
......@@ -67,15 +67,28 @@
:disabled-date="time => disabledDate(time, child)"
format="YYYY-MM-DD HH:mm"
value-format="YYYY-MM-DD HH:mm:ss"
@clear="handleDateClear(child)"
/>
<!-- 不带时分 -->
<el-date-picker
style="width: 100%"
v-if="child.domType === 'DatePicker'"
v-model="form[child.key]"
type="date"
:placeholder="child.placeholder"
:disabled="child.disabled"
:disabled-date="time => disabledDate(time, child)"
@change="handleDateChange(child)"
@clear="handleDateClear(child)"
/>
<el-input
v-if="child.domType === 'arrowRight'"
v-model="form[child.key]"
:placeholder="child.placeholder"
@click="handleFoucs(child)"
:suffix-icon="ArrowRight"
readonly
:disabled="child.disabled"
@focus="handleFoucs(child)"
>
</el-input>
<el-button
......@@ -313,16 +326,42 @@ const disabledDate = (time, child) => {
return inputDate.isBefore(today, 'day')
break
case 'departureTime':
return inputDate.isBefore(today, 'day')
// 获取开始日期(需要从表单数据中获取)
const startTime1 = form.value.arrivalTime
if (startTime1) {
const arrivalDate = dayjs(startTime1).startOf('day')
// 只禁用到达日期之前的日期,允许选择同一天
return inputDate.isBefore(arrivalDate, 'day')
} else {
// 如果没有选择到达时间,禁用今天之前的日期
return inputDate.isBefore(today, 'day')
}
break
case 'confirmAppointmentTime':
return inputDate.isBefore(today, 'day')
break
case 'openAccountStartTime':
return time.getTime() > Date.now()
break
case 'openAccountEndTime':
// 获取开始日期(需要从表单数据中获取)
const startTime = form.value.openAccountStartTime
if (startTime) {
const startDate = dayjs(startTime).startOf('day')
// 禁用开始日期之前的所有日期(包括开始日期当天)
return inputDate.isBefore(startDate, 'day') || inputDate.isSame(startDate, 'day')
} else {
// 如果没有选择开始日期,禁用今天之前的日期
return inputDate.isBefore(today, 'day')
}
break
default:
// return time.getTime() > Date.now()
break
}
}
const handleButtonClick = child => {
if (child.key == 'newPolicyButton') {
let obj = {
......@@ -337,7 +376,29 @@ const handleButtonClick = child => {
})
}
}
const handleDateClear = child => {
if (child.key == 'openAccountStartTime' && !form.value['openAccountStartTime']) {
form.value['openAccountEndTime'] = ''
resetShow({ type: 'child', key: 'openAccountEndTime', status: true, flag: 'disabled' })
return
}
if (child.key == 'arrivalTime' && !form.value['arrivalTime']) {
form.value['departureTime'] = ''
resetShow({ type: 'child', key: 'departureTime', status: true, flag: 'disabled' })
return
}
}
const handleDateChange = child => {
if (child.key == 'openAccountStartTime' && form.value['openAccountStartTime']) {
resetShow({ type: 'child', key: 'openAccountEndTime', status: false, flag: 'disabled' })
disabledDate(form.value['openAccountStartTime'], { key: 'openAccountEndTime' })
return
}
if (child.key == 'arrivalTime' && form.value['arrivalTime']) {
resetShow({ type: 'child', key: 'departureTime', status: false, flag: 'disabled' })
disabledDate(form.value['arrivalTime'], { key: 'departureTime' })
}
if (child.key === 'confirmAppointmentTime' && form.value[child.key]) {
if (form.value['arrivalTime']) {
const appointmentTimestamp = dayjs(form.value['confirmAppointmentTime']).valueOf()
......@@ -347,17 +408,15 @@ const handleDateChange = child => {
form.value['confirmAppointmentTime'] = ''
return
} else if (appointmentTimestamp > arrivalTimestamp) {
// proxy.$modal.msgError('预约时间早于到港时间,请重新选择预约时间')
// form.value['confirmAppointmentTime'] = ''
} else {
proxy.$modal.msgError('预约时间应晚于到港时间,请重新选择预约时间')
form.value['confirmAppointmentTime'] = ''
return
}
}
resetShow({ type: 'child', key: 'newPolicyButton', status: true })
resetShow({ type: 'child', key: 'newPolicyButton', status: true, flag: 'show' })
} else if (child.key === 'confirmAppointmentTime' && !form.value[child.key]) {
resetShow({ type: 'child', key: 'newPolicyButton', status: false })
resetShow({ type: 'child', key: 'newPolicyButton', status: false, flag: 'show' })
} else if (child.key === 'arrivalTime') {
if (form.value['confirmAppointmentTime']) {
const appointmentTimestamp = dayjs(form.value['confirmAppointmentTime']).valueOf()
......@@ -365,31 +424,23 @@ const handleDateChange = child => {
if (appointmentTimestamp < arrivalTimestamp) {
proxy.$modal.msgError('预约时间早于到港时间,请重新选择到港时间')
form.value['arrivalTime'] = ''
form.value['departureTime'] = ''
resetShow({ type: 'child', key: 'departureTime', status: true, flag: 'disabled' })
} else if (appointmentTimestamp > arrivalTimestamp) {
console.log('预约时间晚于到港时间')
} else {
proxy.$modal.msgError('到港时间应早于预约时间,请重新选择到港时间')
form.value['arrivalTime'] = ''
form.value['departureTime'] = ''
resetShow({ type: 'child', key: 'departureTime', status: true, flag: 'disabled' })
}
}
} else if (child.key === 'confirmAppointmentTime') {
if (form.value['arrivalTime']) {
console.log('22222')
const appointmentTimestamp = dayjs(form.value['confirmAppointmentTime']).valueOf()
const arrivalTimestamp = dayjs(form.value['arrivalTime']).valueOf()
console.log('appointmentTimestamp', appointmentTimestamp)
console.log('arrivalTimestamp', arrivalTimestamp)
// if (appointmentTimestamp < arrivalTimestamp) {
// // proxy.$modal.msgError('预约时间早于到港时间,请重新选择预约时间')
// // form.value['confirmAppointmentTime'] = ''
// } else if (appointmentTimestamp > arrivalTimestamp) {
// proxy.$modal.msgError('预约时间早于到港时间,请重新选择预约时间')
// form.value['confirmAppointmentTime'] = ''
// } else {
// proxy.$modal.msgError('预约时间应晚于到港时间,请重新选择预约时间')
// form.value['confirmAppointmentTime'] = ''
// }
}
}
}
......@@ -578,7 +629,7 @@ const confirmDrawer = info => {
handleCloseDrawer()
}
// 根据联动重置表单项的显示与否
// 根据联动重置表单项的显示与否 是否禁用
const resetShow = obj => {
for (const section of processedAppointmentData.value) {
if (obj.type == 'father' && section.key == obj.key) {
......@@ -593,12 +644,11 @@ const resetShow = obj => {
} else if (obj.type == 'child') {
if (section.data) {
for (const field of section.data) {
if (field.key == obj.key) {
if (field.key == obj.key && obj.flag == 'show') {
// 获取字典数据
field.show = obj.status
// if (!obj.status) {
// form.value[obj.key] = ''
// }
} else if (field.key == obj.key && obj.flag == 'disabled') {
field.disabled = obj.status
}
}
}
......@@ -641,7 +691,13 @@ const handleEditStatus = status => {
if (editStatus.value) {
field.disabled = true
} else {
field.disabled = false
if (!form.value['openAccountStartTime'] && field.key == 'openAccountEndTime') {
field.disabled = true
} else if (!form.value['arrivalTime'] && field.key == 'departureTime') {
field.disabled = true
} else {
field.disabled = false
}
}
}
}
......@@ -682,6 +738,24 @@ const setFormValue = (obj, formData) => {
if (field.key == 'bankName') {
searchOptions.value[field.key] = fetchDictData(field.dictType)
}
// 处理时间
if (field.key == 'openAccountEndTime' && obj[field.key]) {
// 开始时间是否在结束时间之前
if (
obj['openAccountStartTime'] &&
!dayjs(obj['openAccountStartTime']).isBefore(dayjs(obj[field.key]))
) {
form.value[field.key] = ''
field.disabled = true
}
}
if (field.key == 'departureTime' && obj[field.key]) {
// 开始时间是否在结束时间之前
if (obj['arrivalTime'] && !dayjs(obj['arrivalTime']).isBefore(dayjs(obj[field.key]))) {
form.value[field.key] = ''
field.disabled = true
}
}
//要判断drawerType,因为抽屉要回显数据
switch (field.drawerType) {
case 'phone':
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment