Compare commits

...

2 Commits

4 changed files with 48 additions and 33 deletions

View File

@ -4,6 +4,7 @@
<van-field <van-field
v-model="displayValue" v-model="displayValue"
:label="label" :label="label"
:required="required"
:placeholder="placeholder" :placeholder="placeholder"
:disabled="disabled" :disabled="disabled"
:readonly="true" :readonly="true"
@ -69,6 +70,10 @@ const props = defineProps({
type: String, type: String,
default: '' default: ''
}, },
required: {
type: Boolean,
default: false
},
// //
placeholder: { placeholder: {
type: String, type: String,

View File

@ -4,6 +4,7 @@
<van-field <van-field
:modelValue="displayValue" :modelValue="displayValue"
:label="label" :label="label"
:required="required"
:placeholder="placeholder" :placeholder="placeholder"
:disabled="disabled" :disabled="disabled"
:readonly="true" :readonly="true"
@ -49,6 +50,10 @@ const props = defineProps({
type: String, type: String,
default: '' default: ''
}, },
required: {
type: Boolean,
default: false
},
// //
placeholder: { placeholder: {
type: String, type: String,

View File

@ -6,6 +6,7 @@
<BaseDatePicker <BaseDatePicker
v-model="formData.event.occurTime" v-model="formData.event.occurTime"
label="发生时间" label="发生时间"
required
placeholder="请选择时间" placeholder="请选择时间"
:columnsType="['year', 'month', 'day', 'hour', 'minute']" :columnsType="['year', 'month', 'day', 'hour', 'minute']"
/> />
@ -21,13 +22,14 @@
label="线路编号" label="线路编号"
placeholder="请线路" placeholder="请线路"
@change="handleRouteNoChange" @change="handleRouteNoChange"
required
/> />
<!-- 发生地点 (occurLocation) --> <!-- 发生地点 (occurLocation) -->
<van-field v-model="formData.event.occurLocation" label="发生地点" placeholder="请填写" /> <van-field v-model="formData.event.occurLocation" label="发生地点" placeholder="请填写" required />
<!-- 起点桩号 (event.startStakeNo) --> <!-- 起点桩号 (event.startStakeNo) -->
<van-field v-model="formData.event.startStakeNo" label="起点桩号(K)" placeholder="请填写" /> <van-field v-model="formData.event.startStakeNo" label="起点桩号(K)" placeholder="请填写" required />
<!-- 起点桩经度 --> <!-- 起点桩经度 -->
<van-field v-model="formData.event.startStakeLng" label="起点桩经度" placeholder="请填写" type="digit" /> <van-field v-model="formData.event.startStakeLng" label="起点桩经度" placeholder="请填写" type="digit" />
@ -36,7 +38,7 @@
<van-field v-model="formData.event.startStakeLat" label="起点桩纬度" placeholder="请填写" type="digit" /> <van-field v-model="formData.event.startStakeLat" label="起点桩纬度" placeholder="请填写" type="digit" />
<!-- 止点桩号 (event.endStakeNo) --> <!-- 止点桩号 (event.endStakeNo) -->
<van-field v-model="formData.event.endStakeNo" label="止点桩号(K)" placeholder="请填写" /> <van-field v-model="formData.event.endStakeNo" label="止点桩号(K)" placeholder="请填写" required />
<!-- 止点桩经度 --> <!-- 止点桩经度 -->
<van-field v-model="formData.event.endStakeLng" label="止点桩经度" placeholder="请填写" type="digit" /> <van-field v-model="formData.event.endStakeLng" label="止点桩经度" placeholder="请填写" type="digit" />
@ -50,6 +52,7 @@
label="受灾里程" label="受灾里程"
placeholder="请填写" placeholder="请填写"
type="digit" type="digit"
required
> >
<template #button> <template #button>
<span class="field-unit">公里</span> <span class="field-unit">公里</span>
@ -58,7 +61,7 @@
</PanelItem> </PanelItem>
<PanelItem title="处置情况"> <PanelItem title="处置情况">
<van-field label="处置措施" label-align="top"> <van-field label="处置措施" label-align="top" required>
<template #input> <template #input>
<van-row :gutter="5"> <van-row :gutter="5">
<van-col <van-col
@ -86,6 +89,7 @@
:min-date="minDate" :min-date="minDate"
:max-date="maxDate" :max-date="maxDate"
type="datetime" type="datetime"
required
/> />
</PanelItem> </PanelItem>

View File

@ -4,36 +4,36 @@
<PanelItem title="基本信息" v-if="!isContinue"> <PanelItem title="基本信息" v-if="!isContinue">
<van-form > <van-form >
<!-- 路况类别 --> <!-- 路况类别 -->
<BasePicker v-model="formData.event.roadConditionType" :options="options['waterRoadConditionType']" label="路况类别" placeholder="请选择" /> <BasePicker v-model="formData.event.roadConditionType" :options="options['waterRoadConditionType']" label="路况类别" placeholder="请选择" required />
<!-- 是否阻断 (event.isBlocked) --> <!-- 是否阻断 (event.isBlocked) -->
<BasePicker v-model="formData.event.isBlocked" :options="options['yesOrNoBool']" label="是否阻断" placeholder="请选择" /> <BasePicker v-model="formData.event.isBlocked" :options="options['yesOrNoBool']" label="是否阻断" placeholder="请选择" required />
<!-- 抢险进度 (event.repairProgress) --> <!-- 抢险进度 (event.repairProgress) -->
<BasePicker v-model="formData.event.repairProgress" :options="options['repairProgress']" label="抢险进度" placeholder="请选择" /> <BasePicker v-model="formData.event.repairProgress" :options="options['repairProgress']" label="抢险进度" placeholder="请选择" required />
<!-- 水毁处数 (event.damageCount) --> <!-- 水毁处数 (event.damageCount) -->
<van-field v-model="formData.event.damageCount" label="水毁处数" placeholder="请填写" type="number" /> <van-field v-model="formData.event.damageCount" label="水毁处数" placeholder="请填写" type="number" required />
<!-- 阻断里程 (event.blockedMileage) --> <!-- 阻断里程 (event.blockedMileage) -->
<van-field v-model="formData.event.blockedMileage" label="阻断里程" placeholder="请填写" type="digit"> <van-field v-model="formData.event.blockedMileage" label="阻断里程" placeholder="请填写" type="digit" required>
<template #button> <template #button>
<span class="field-unit">公里</span> <span class="field-unit">公里</span>
</template> </template>
</van-field> </van-field>
<!-- 发生时间 (顶层 occurTime) --> <!-- 发生时间 (顶层 occurTime) -->
<BaseDatePicker v-model="formData.event.occurTime" label="发生时间" placeholder="请选择时间" :columnsType="['year', 'month', 'day', 'hour', 'minute']" /> <BaseDatePicker v-model="formData.event.occurTime" label="发生时间" placeholder="请选择时间" :columnsType="['year', 'month', 'day', 'hour', 'minute']" required />
<div class="calibrate-time-btn" @click="calibrateTime"> <div class="calibrate-time-btn" @click="calibrateTime">
<van-icon name="replay" /> <van-icon name="replay" />
<span>校准时间</span> <span>校准时间</span>
</div> </div>
<!-- 线路编号 (顶层 routeNo) --> <!-- 线路编号 (顶层 routeNo) -->
<RoadRoutesPicker v-model="formData.event.routeNo" label="线路编号" placeholder="请线路" @change="handleRouteNoChange" /> <RoadRoutesPicker v-model="formData.event.routeNo" label="线路编号" placeholder="请线路" @change="handleRouteNoChange" required />
<!-- 起点桩号 (event.startStakeNo) --> <!-- 起点桩号 (event.startStakeNo) -->
<van-field v-model="formData.event.startStakeNo" label="起点桩号(K)" placeholder="请填写" /> <van-field v-model="formData.event.startStakeNo" label="起点桩号(K)" placeholder="请填写" required />
<!-- 起点桩经度 --> <!-- 起点桩经度 -->
<van-field v-model="formData.event.startStakeLng" label="起点桩经度" placeholder="请填写" type="digit" /> <van-field v-model="formData.event.startStakeLng" label="起点桩经度" placeholder="请填写" type="digit" />
@ -42,7 +42,7 @@
<van-field v-model="formData.event.startStakeLat" label="起点桩纬度" placeholder="请填写" type="digit" /> <van-field v-model="formData.event.startStakeLat" label="起点桩纬度" placeholder="请填写" type="digit" />
<!-- 止点桩号 (event.endStakeNo) --> <!-- 止点桩号 (event.endStakeNo) -->
<van-field v-model="formData.event.endStakeNo" label="止点桩号(K)" placeholder="请填写" /> <van-field v-model="formData.event.endStakeNo" label="止点桩号(K)" placeholder="请填写" required />
<!-- 止点桩经度 --> <!-- 止点桩经度 -->
<van-field v-model="formData.event.endStakeLng" label="止点桩经度" placeholder="请填写" type="digit" /> <van-field v-model="formData.event.endStakeLng" label="止点桩经度" placeholder="请填写" type="digit" />
@ -51,17 +51,17 @@
<van-field v-model="formData.event.endStakeLat" label="止点桩纬度" placeholder="请填写" type="digit" /> <van-field v-model="formData.event.endStakeLat" label="止点桩纬度" placeholder="请填写" type="digit" />
<!-- 路况位置 (occurLocation) --> <!-- 路况位置 (occurLocation) -->
<van-field v-model="formData.event.occurLocation" label="路况位置" placeholder="请填写" /> <van-field v-model="formData.event.occurLocation" label="路况位置" placeholder="请填写" required />
<!-- 阻断点小地名 (event.blockedPointName) --> <!-- 阻断点小地名 (event.blockedPointName) -->
<van-field v-model="formData.event.blockedPointName" label="阻断点小地名" placeholder="请填写" /> <van-field v-model="formData.event.blockedPointName" label="阻断点小地名" placeholder="请填写" required />
</van-form> </van-form>
</PanelItem> </PanelItem>
<!-- 处置情况 (report) --> <!-- 处置情况 (report) -->
<PanelItem title="处置情况"> <PanelItem title="处置情况">
<div class="disposal-measures"> <van-field label="处置措施" label-align="top">
<span class="measures-label">处置措施</span> <template #input>
<div class="measures-options"> <div class="measures-options">
<van-row gutter="10"> <van-row gutter="10">
<van-col v-for="(item, index) in options['disposalMeasures']" :span="24 / options['disposalMeasures'].length" :key="index"> <van-col v-for="(item, index) in options['disposalMeasures']" :span="24 / options['disposalMeasures'].length" :key="index">
@ -71,10 +71,11 @@
</van-col> </van-col>
</van-row> </van-row>
</div> </div>
</div> </template>
</van-field>
<!-- 预计恢复时间 (report.expectRecoverTime) --> <!-- 预计恢复时间 (report.expectRecoverTime) -->
<BaseDatePicker v-model="formData.report.expectRecoverTime" label="预计恢复时间" placeholder="请选择时间" :min-date="minDate" :max-date="maxDate" type="datetime" /> <BaseDatePicker v-model="formData.report.expectRecoverTime" label="预计恢复时间" placeholder="请选择时间" :min-date="minDate" :max-date="maxDate" type="datetime" required />
<!-- 实际恢复时间 (report.actualRecoverTime) --> <!-- 实际恢复时间 (report.actualRecoverTime) -->
<BaseDatePicker v-model="formData.report.actualRecoverTime" label="实际恢复时间" placeholder="请选择时间" :min-date="minDate" :max-date="maxDate" type="datetime" /> <BaseDatePicker v-model="formData.report.actualRecoverTime" label="实际恢复时间" placeholder="请选择时间" :min-date="minDate" :max-date="maxDate" type="datetime" />
@ -145,9 +146,9 @@
</PanelItem> </PanelItem>
<PanelItem v-if="!isContinue || (isContinue && !detail?.event.needsRecovery)"> <PanelItem v-if="!isContinue || (isContinue && !detail?.event.needsRecovery)">
<!-- 是否需要恢复重建 (event.needsRecovery) --> <!-- 是否需要恢复重建 (event.needsRecovery) -->
<BasePicker v-model="formData.event.needsRecovery" :options="options['yesOrNoBool']" label="是否需要恢复重建" placeholder="请选择" /> <BasePicker v-model="formData.event.needsRecovery" :options="options['yesOrNoBool']" label="是否需要恢复重建" placeholder="请选择" required />
<!-- 恢复重建预估费用 (event.estimatedRecoveryCost) --> <!-- 恢复重建预估费用 (event.estimatedRecoveryCost) -->
<van-field v-model="formData.event.estimatedRecoveryCost" v-if="formData?.event.needsRecovery" label="恢复重建预估费用" placeholder="请填写" type="digit"> <van-field v-model="formData.event.estimatedRecoveryCost" v-if="formData?.event.needsRecovery" label="恢复重建预估费用" placeholder="请填写" type="digit" required>
<template #button> <template #button>
<span class="field-unit">万元</span> <span class="field-unit">万元</span>
</template> </template>
@ -533,7 +534,7 @@ defineExpose({
margin-top: 12px; margin-top: 12px;
} }
:deep(.van-field__label) { :deep(.van-field__label):not(.van-field__label--top) {
width: 110px; width: 110px;
} }
} }