This commit is contained in:
2025-06-19 17:33:18 +08:00
commit f8f31dc4d9
437 changed files with 103080 additions and 0 deletions
@@ -0,0 +1,12 @@
{
"usingComponents": {
"van-picker": "@vant/weapp/picker/index",
"van-popup": "@vant/weapp/popup/index",
"van-datetime-picker": "@vant/weapp/datetime-picker/index",
"van-uploader": "@vant/weapp/uploader/index",
"van-search": "@vant/weapp/search/index",
"van-radio": "@vant/weapp/radio/index",
"van-radio-group": "@vant/weapp/radio-group/index"
},
"navigationBarTitleText": "事故上报"
}
@@ -0,0 +1,229 @@
/* pages/accidentReporting/accidentReporting.wxss */
page{
background-color: #EFF1F4;
}
.busInfo,.accidentInfo{
background-color: #ffffff;
}
/deep/ .custom-class{
display: flow-root;
}
.flex-display{
display:flex;
}
.flex-between{
display: flex;
align-items: center;
justify-content: space-between;
}
.flex-align{
display:flex;
align-items: center;
}
.flex-right-end{
display:flex;
align-items: center;
justify-content: flex-end;
}
.stepBox{
background-color: #fff;
padding: 0rpx 30rpx 24rpx;
color: #9499AB;
font-size: 28rpx;
.stepRow1{
padding-top: 16rpx;
.circle{
width: 24rpx;
height: 24rpx;
background: #DDDEE1;
border-radius: 24rpx;
&.stepOn{
background: #FFFFFF;
border: 2rpx solid #4381FC;
}
&.stepFinish{
background: #4381FC;
&:nth-of-type(1){
&::before{
border-bottom-color:#4381FC;
}
}
&:nth-of-type(2){
&::after{
border-bottom-color:#4381FC;
}
}
}
&:nth-of-type(1){
margin-left: 6.5%;
&::before{
content: '';
position: absolute;
width: 35%;
left: 13%;
top: 28rpx;
border-bottom:2rpx dashed #DDDEE1;
}
}
&:nth-of-type(2){
margin: 0 38%;
&::after{
content: '';
position: absolute;
width: 35%;
right: 14%;
top: 28rpx;
border-bottom:2rpx dashed #DDDEE1;
}
}
}
}
.stepRow2{
margin-top: 16rpx;
.stepOn{
color:#4381FC;
}
view:nth-of-type(2){
// padding:0 25%;
}
}
}
.box{
background-color: #ffffff;
font-size: 28rpx;
padding: 28rpx 20rpx 20rpx 20rpx;
margin-top: 16rpx;
.row{
.left{
color: #333F53;
font-weight: bold;
.bg{
width: 8rpx;
height: 44rpx;
background: linear-gradient(180deg, #4E87FC 0%, #38B1FE 100%);
border-radius: 4rpx;
margin-right: 16rpx;
}
}
.right{
color: #2E3A4F;
.icon{
width: 35rpx;
height: 35rpx;
margin-right: 8rpx;
}
}
}
.info-item:last-child{
border-bottom: none;
}
.info-item{
padding: 20rpx;
border-bottom: 2rpx solid #E6EAF2;
&.borderBottomNone{
border-bottom: none;
padding: 20rpx 20rpx 0;
}
&.disabledItem{
background: #EFF1F4;
padding-bottom: 20rpx;
.right{
color: #949CB5;
}
}
.left{
color: #2F3B50;
width:40%;
.require{
color: #EA4955;
}
}
.right{
width: 60%;
text-align: right;
&.selectItem{
justify-content: flex-end;
.placeholder{
color: #949CB5;
}
}
.arrow{
width: 0;
height: 0;
border-left: 13rpx solid transparent;
border-right: 13rpx solid transparent;
border-top: 15rpx solid #636B83;
margin-left: 18rpx;
}
.van-radio-group{
display: flex;
justify-content: flex-end;
van-radio{
margin-left: 8px;
}
}
}
.uploadBox{
margin-top: 16rpx;
}
.tips{
color:red;
text-align: right;
margin-top: 10rpx;
font-size: 25rpx;
}
.textarea{
margin-top: 16rpx;
height: 120rpx;
overflow-y: auto;
word-break: break-all;
}
}
}
.accidentLossType{
padding: 8rpx 20rpx;
margin:0 8rpx;
border-radius: 8rpx;
border: 2rpx solid #E6EAF2;
&.selectOn{
border: 2rpx solid #24A2FE;
color: #2E3A4F;
background: #E9F2FF;
}
}
.searchBox{
position: absolute;
width: 100%;
left: 0;
top: 80rpx;
z-index: 63;
}
.operateBtn{
box-shadow: 0rpx -4rpx 24rpx 0rpx rgba(0,0,0,0.2);
border-radius: 16rpx 16rpx 0rpx 0rpx;
padding: 45rpx 22rpx;
font-size: 30rpx;
margin-top: 40rpx;
background-color: #ffffff;
position: fixed;
bottom: 0;
width: calc(100% - 44rpx);
z-index: 10;
.nextStep{
height: 80rpx;
background: linear-gradient(90deg, #3B7CFC 0%, #548BFC 100%);
border-radius: 16rpx;
color: #FFFFFF;
line-height: 80rpx;
text-align: center;
}
.submitBtn{
height: 80rpx;
background: #E4EDFF;
border-radius: 16rpx;
line-height: 80rpx;
text-align: center;
color: #4381FC;
margin-top: 30rpx;
}
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,818 @@
<!--pages/accidentReporting/accidentReporting.wxml-->
<view class="stepBox">
<view class="stepRow1 flex-align">
<block wx:for="{{[1,2,3]}}" wx:key="index">
<view class="circle {{step == index+1?'stepOn':''}} {{step > index + 1 ? 'stepFinish':''}}" catch:tap="changeStep" data-index="{{index}}"></view>
</block>
</view>
<view class="stepRow2 flex-align">
<block wx:for="{{['基础信息','保险信息','案件进度']}}" wx:key="index">
<view style="width: 33.33%;text-align:{{index==0?'left':index==1?'center':index==2?'right':''}};" class="{{step == index+1 || step > index + 1?'stepOn':''}}" catch:tap="changeStep" data-index="{{index}}">{{item}}</view>
</block>
</view>
</view>
<!-- 基础信息 -->
<block wx:if="{{step == 1}}">
<view class="box">
<view class="row flex-between">
<view class="left flex-align">
<view class="bg"></view>
<view>车辆信息</view>
</view>
<view class="right flex-align" catch:tap="handleExpand" data-type="busInfoExpand">
<image class="icon" src="../../images/icon_up.png" mode="" wx:if="{{busInfoExpand}}"></image>
<image class="icon" src="../../images/icon_down.png" mode="" wx:else></image>
<view>{{busInfoExpand?'收起':'展开'}}</view>
</view>
</view>
<block wx:if="{{busInfoExpand}}">
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>车牌号码</view>
</view>
<view class="right flex-align selectItem" data-fieldName="plateNumberShow" catch:tap="pickerChange">
<view wx:if="{{submitParam.plateNumber}}">{{submitParam.plateNumber}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{tips.plateNumber}}">{{tips.plateNumber}}</view>
</view>
<van-popup show="{{plateNumberShow}}" position="bottom" bind:close="hidePicker">
<view class="searchBox">
<van-search value="{{ plateNumberSearchVal }}" placeholder="请输入车牌号" bind:search="getListByProjectId"/>
</view>
<van-picker show-toolbar columns="{{busList}}" bind:confirm="numberplateSelect" bind:cancel="hidePicker" visible-item-count="8">
</van-picker>
</van-popup>
<view class="info-item disabledItem">
<view class="flex-between">
<view class="left flex-align">
<!-- <view class="require">*</view> -->
<view>所属项目</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" value="{{submitParam.projectId_dictText}}" type="text" placeholder="请输入" style="width:100%;" disabled/>
</view>
</view>
<view class="tips" wx:if="{{tips.projectId}}">{{tips.projectId}}</view>
</view>
<view class="info-item borderBottomNone">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>处理人</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="processedPerson" bindinput="handleFieldChange" value="{{submitParam.processedPerson}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<view class="tips" wx:if="{{tips.processedPerson}}">{{tips.processedPerson}}</view>
</view>
</block>
</view>
<view class="box">
<view class="row flex-between">
<view class="left flex-align">
<view class="bg"></view>
<view>事故报备</view>
</view>
<view class="right flex-align" catch:tap="handleExpand" data-type="accidentInfoExpand">
<image class="icon" src="../../images/icon_up.png" mode="" wx:if="{{accidentInfoExpand}}"></image>
<image class="icon" src="../../images/icon_down.png" mode="" wx:else></image>
<view>{{accidentInfoExpand?'收起':'展开'}}</view>
</view>
</view>
<block wx:if="{{accidentInfoExpand}}">
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>事故号</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="reportNumber" bindinput="handleFieldChange" value="{{submitParam.reportNumber}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<view class="tips" wx:if="{{tips.reportNumber}}">{{tips.reportNumber}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>事故发生时间</view>
</view>
<view class="right flex-align selectItem" data-fieldName="accidentTimeShow" catch:tap="pickerChange">
<view wx:if="{{submitParam.accidentTime}}">{{submitParam.accidentTime}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{tips.accidentTime}}">{{tips.accidentTime}}</view>
</view>
<van-popup show="{{accidentTimeShow}}" position="bottom" bind:close="hidePicker">
<van-datetime-picker type="date" value="{{ accidentTimestamp }}" formatter="{{ formatter }}" bind:cancel="hidePicker" bind:confirm="confirmAccidentTime" />
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<!-- <view class="require">*</view> -->
<view>驾驶员</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="driver" bindinput="handleFieldChange" value="{{submitParam.driver}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<view class="tips" wx:if="{{tips.driver}}">{{tips.driver}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<!-- <view class="require">*</view> -->
<view>驾驶员证件</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="driverLicenseNumber" bindinput="handleFieldChange" value="{{submitParam.driverLicenseNumber}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<!-- <view class="tips" wx:if="{{tips.driverLicenseNumber}}">{{tips.driverLicenseNumber}}</view> -->
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<!-- <view class="require">*</view> -->
<view>驾驶员电话</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="driverPhoneNumber" bindinput="handleFieldChange" value="{{submitParam.driverPhoneNumber}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<view class="tips" wx:if="{{tips.driverPhoneNumber}}">{{tips.driverPhoneNumber}}</view>
<view class="tips" wx:if="{{validate.driverPhoneNumber}}">{{validate.driverPhoneNumber}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view>第三方车牌</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="thirdPlateNumber" bindinput="handleFieldChange" bindblur="inputBlur" value="{{submitParam.thirdPlateNumber}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<view class="tips" wx:if="{{validate.thirdPlateNumber}}">{{validate.thirdPlateNumber}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view>第三方保险公司</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="thirdInsuranceCompany" bindblur="inputBlur" bindinput="handleFieldChange" value="{{submitParam.thirdInsuranceCompany}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<view class="tips" wx:if="{{validate.thirdInsuranceCompany}}">{{validate.thirdInsuranceCompany}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view>第三方保险电话</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="thirdPhoneNumber" bindinput="handleFieldChange" bindblur="inputBlur" value="{{submitParam.thirdPhoneNumber}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<view class="tips" wx:if="{{validate.thirdPhoneNumber}}">{{validate.thirdPhoneNumber}}</view>
</view>
<view class="info-item">
<view class="left flex-align">
<view class="require">*</view>
<view>事故发生地点</view>
</view>
<view class="textarea" data-focus_field_name="accidentLocationTextfocus" wx:if="{{!accidentLocationTextfocus}}" catchtap="textAreaFocus">
<text style="color:{{!submitParam.accidentLocation?'#949CB5':''}}">{{submitParam.accidentLocation ? submitParam.accidentLocation : '请输入'}}</text>
</view>
<textarea maxlength="64" wx:else placeholder-style="color:#949CB5" data-fieldName="accidentLocation" bindinput="handleFieldChange" value="{{submitParam.accidentLocation}}" focus="{{accidentLocationTextfocus}}" data-focus_field_name="accidentLocationTextfocus" bindblur="textAreaBlur" class="textarea" type="text" placeholder="请输入" style="width:100%;"></textarea>
<view class="tips" wx:if="{{tips.accidentLocation}}">{{tips.accidentLocation}}</view>
</view>
<view class="info-item">
<view class="left flex-align">
<view class="require">*</view>
<view>事故发生经过</view>
</view>
<view class="textarea" data-focus_field_name="accidentDetailsTextfocus" wx:if="{{!accidentDetailsTextfocus}}" catchtap="textAreaFocus">
<text style="color:{{!submitParam.accidentDetails?'#949CB5':''}}">{{submitParam.accidentDetails ? submitParam.accidentDetails : '请输入'}}</text>
</view>
<textarea maxlength="64" wx:else placeholder-style="color:#949CB5" data-fieldName="accidentDetails" bindinput="handleFieldChange" value="{{submitParam.accidentDetails}}" focus="{{accidentDetailsTextfocus}}" data-focus_field_name="accidentDetailsTextfocus" bindblur="textAreaBlur" class="textarea" type="text" placeholder="请输入" style="width:100%;"></textarea>
<view class="tips" wx:if="{{tips.accidentDetails}}">{{tips.accidentDetails}}</view>
</view>
<view class="info-item">
<view class="left flex-align">
<view class="require">*</view>
<view>事故预估损失</view>
</view>
<view class="textarea" data-focus_field_name="accidentEstimatedLossTextfocus" wx:if="{{!accidentEstimatedLossTextfocus}}" catchtap="textAreaFocus">
<text style="color:{{!submitParam.accidentEstimatedLoss?'#949CB5':''}}">{{submitParam.accidentEstimatedLoss ? submitParam.accidentEstimatedLoss : '请输入'}}</text>
</view>
<textarea maxlength="64" wx:else placeholder-style="color:#949CB5" data-fieldName="accidentEstimatedLoss" bindinput="handleFieldChange" value="{{submitParam.accidentEstimatedLoss}}" focus="{{accidentEstimatedLossTextfocus}}" data-focus_field_name="accidentEstimatedLossTextfocus" bindblur="textAreaBlur" class="textarea" type="text" placeholder="请输入" style="width:100%;"></textarea>
<view class="tips" wx:if="{{tips.accidentEstimatedLoss}}">{{tips.accidentEstimatedLoss}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view>需要更换配件</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="replacedParts" bindinput="handleFieldChange" bindblur="inputBlur" value="{{submitParam.replacedParts}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<view class="tips" wx:if="{{validate.replacedParts}}">{{validate.replacedParts}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>事故发生类型</view>
</view>
<view class="right flex-align selectItem" data-fieldName="accidentFormShow" catch:tap="pickerChange">
<view wx:if="{{accidentFormText}}">{{accidentFormText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{tips.accidentForm}}">{{tips.accidentForm}}</view>
</view>
<van-popup show="{{accidentFormShow}}" position="bottom" bind:close="hidePicker">
<van-picker show-toolbar columns="{{accidentFormList}}" bind:confirm="accidentFormConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>事故类型</view>
</view>
<view class="right flex-align selectItem" data-fieldName="accidentTypeShow" catch:tap="pickerChange">
<view wx:if="{{accidentTypeText}}">{{accidentTypeText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{tips.accidentType}}">{{tips.accidentType}}</view>
</view>
<van-popup show="{{accidentTypeShow}}" position="bottom" bind:close="hidePicker">
<van-picker show-toolbar columns="{{accidentTypeList}}" bind:confirm="accidentTypeConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view>事故损失</view>
</view>
<view class="right flex-right-end">
<view wx:for="{{accidentLossTypeList}}" wx:key="{{item.value}}">
<view class="accidentLossType {{item.isSelect ? 'selectOn' : ''}}" catchtap="changeAccidentLossType" data-item="{{item}}" data-index="{{index}}">{{item.text}}</view>
</view>
</view>
</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>伤亡类型</view>
</view>
<view class="right flex-align selectItem" data-fieldName="accidentInjuryTypeShow" catch:tap="pickerChange">
<view wx:if="{{accidentInjuryTypeText}}">{{accidentInjuryTypeText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{tips.accidentInjuryType}}">{{tips.accidentInjuryType}}</view>
</view>
<van-popup show="{{accidentInjuryTypeShow}}" position="bottom" bind:close="hidePicker">
<van-picker show-toolbar columns="{{accidentInjuryTypeList}}" bind:confirm="accidentInjuryTypeConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>初步预估责任</view>
</view>
<view class="right flex-align selectItem" data-fieldName="liabilityEstimateShow" catch:tap="pickerChange">
<view wx:if="{{liabilityEstimateText}}">{{liabilityEstimateText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{tips.liabilityEstimate}}">{{tips.liabilityEstimate}}</view>
</view>
<van-popup show="{{liabilityEstimateShow}}" position="bottom" bind:close="hidePicker">
<van-picker show-toolbar columns="{{liabilityEstimateList}}" bind:confirm="liabilityEstimateConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>初步预估性质</view>
</view>
<view class="right flex-align selectItem" data-fieldName="natureEstimateShow" catch:tap="pickerChange">
<view wx:if="{{natureEstimateText}}">{{natureEstimateText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{tips.natureEstimate}}">{{tips.natureEstimate}}</view>
</view>
<van-popup show="{{natureEstimateShow}}" position="bottom" bind:close="hidePicker">
<van-picker show-toolbar columns="{{natureEstimateList}}" bind:confirm="natureEstimateConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="info-item">
<view class="left flex-align">
<view class="require">*</view>
<view>事故现场图片</view>
</view>
<view class="uploadBox">
<van-uploader
max-count="1"
bind:after-read="accidentSceneAfterRead"
file-list="{{accidentSceneFile}}"
bind:delete="deleteAccidentSceneFile"
/>
</view>
<view class="tips" wx:if="{{tips.accidentScenePhoto}}">{{tips.accidentScenePhoto}}</view>
</view>
<view class="info-item">
<view class="left flex-align" style="width: 100%;">
<!-- <view class="require">*</view> -->
<view>事故现场视频</view>
</view>
<view class="uploadBox">
<van-uploader
max-count="5"
bind:after-read="accidentVideoAfterRead"
file-list="{{accidentSceneVideo}}"
bind:delete="deleteAccidentSceneVideo"
accept="video"
/>
</view>
</view>
<view class="info-item borderBottomNone">
<view class="left flex-align" style="width: 100%;">
<view class="require">*</view>
<view>保险公司现场勘察报告</view>
</view>
<view class="uploadBox">
<van-uploader
max-count="1"
bind:after-read="insuranceInvestigationReportAfterRead"
file-list="{{insuranceInvestigationReportFile}}"
bind:delete="deleteInsuranceInvestigationReportFile"
style="margin-top: 16rpx;"
/>
</view>
<view class="tips" wx:if="{{tips.insuranceInvestigationReport}}">{{tips.insuranceInvestigationReport}}</view>
</view>
</block>
</view>
</block>
<!-- 保险信息 -->
<block wx:if="{{step == 2}}">
<view class="box">
<view class="row flex-between">
<view class="left flex-align">
<view class="bg"></view>
<view>保险定损</view>
</view>
<view class="right flex-align" catch:tap="handleExpand" data-type="lossAccessmentExpand">
<image class="icon" src="../../images/icon_up.png" mode="" wx:if="{{lossAccessmentExpand}}"></image>
<image class="icon" src="../../images/icon_down.png" mode="" wx:else></image>
<view>{{lossAccessmentExpand?'收起':'展开'}}</view>
</view>
</view>
<block wx:if="{{lossAccessmentExpand}}">
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>保险单号</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" data-fieldName="caseReceiptNumber" bindinput="inputChange" bindblur="inputBlur" value="{{insureParam.caseReceiptNumber}}" type="text" placeholder="请输入" style="width:100%;"/>
</view>
</view>
<view class="tips" wx:if="{{validate.caseReceiptNumber}}">{{validate.caseReceiptNumber}}</view>
<view class="tips" wx:if="{{insureTips.caseReceiptNumber && isRecord}}">{{insureTips.caseReceiptNumber}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require">*</view>
<view>是否出险</view>
</view>
<view class="right">
<van-radio-group value="{{ insureParam.isRecord }}" bind:change="isRecordChange">
<van-radio name="1">是</van-radio>
<van-radio name="0">否</van-radio>
</van-radio-group>
</view>
</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>保险公司</view>
</view>
<view class="right flex-align selectItem" data-fieldName="companyShow" catch:tap="pickerChange">
<view wx:if="{{insureParam.companyId}}">{{companyText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{insureTips.companyId && isRecord}}">{{insureTips.companyId}}</view>
</view>
<van-popup show="{{companyShow}}" position="bottom" bind:close="hidePicker">
<van-picker show-toolbar columns="{{insuranceCompanyList}}" bind:confirm="confirmCompany" bind:cancel="hidePicker"></van-picker>
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>出险日期</view>
</view>
<view class="right flex-align selectItem" data-fieldName="insuranceDateShow" catch:tap="pickerChange">
<view wx:if="{{insureParam.insuranceDate}}">{{insureParam.insuranceDate}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{insureTips.insuranceDate && isRecord}}">{{insureTips.insuranceDate}}</view>
</view>
<van-popup show="{{insuranceDateShow}}" position="bottom" bind:close="hidePicker">
<van-datetime-picker type="date" value="{{ insuranceDateTimestamp }}" formatter="{{ formatter }}" bind:cancel="hidePicker" bind:confirm="confirmInsuranceDate" />
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>确认事故责任</view>
</view>
<view class="right flex-align selectItem" data-fieldName="liabilityConfirmShow" catch:tap="pickerChange">
<view wx:if="{{liabilityConfirmText}}">{{liabilityConfirmText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{insureTips.liabilityConfirm && isRecord}}">{{insureTips.liabilityConfirm}}</view>
</view>
<van-popup show="{{liabilityConfirmShow}}" position="bottom" bind:close="hidePicker">
<van-picker show-toolbar columns="{{liabilityTypeList}}" bind:confirm="liabilityPickerConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="info-item borderBottomNone">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>确认事故性质</view>
</view>
<view class="right flex-align selectItem" data-fieldName="natureConfirmShow" catch:tap="pickerChange">
<view wx:if="{{natureConfirmText}}">{{natureConfirmText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{insureTips.natureConfirm && isRecord}}">{{insureTips.natureConfirm}}</view>
</view>
<van-popup show="{{natureConfirmShow}}" position="bottom" bind:close="hidePicker">
<van-picker show-toolbar columns="{{natureTypeList}}" bind:confirm="natureConfirmPickerChange" bind:cancel="hidePicker">
</van-picker>
</van-popup>
</block>
</view>
<view class="box">
<view class="row flex-between">
<view class="left flex-align">
<view class="bg"></view>
<view>损失情况</view>
</view>
<view class="right flex-align" catch:tap="handleExpand" data-type="lossSituationExpand">
<image class="icon" src="../../images/icon_up.png" mode="" wx:if="{{lossSituationExpand}}"></image>
<image class="icon" src="../../images/icon_down.png" mode="" wx:else></image>
<view>{{lossSituationExpand?'收起':'展开'}}</view>
</view>
</view>
<block wx:if="{{lossSituationExpand}}">
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>标的车损失金额(元)</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" value="{{insureParam.vehicleLossAmount}}" type="digit" placeholder="请输入" style="width:100%;" data-fieldName="vehicleLossAmount" bindinput="inputChange" bindblur="inputBlur"/>
</view>
</view>
<view class="tips" wx:if="{{validate.vehicleLossAmount}}">{{validate.vehicleLossAmount}}</view>
<view class="tips" wx:if="{{insureTips.vehicleLossAmount && isRecord}}">{{insureTips.vehicleLossAmount}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>第三方物损金额(元)</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" value="{{insureParam.thirdPropertyDamageAmount}}" type="digit" placeholder="请输入" style="width:100%;" data-fieldName="thirdPropertyDamageAmount" bindinput="inputChange" bindblur="inputBlur"/>
</view>
</view>
<view class="tips" wx:if="{{validate.thirdPropertyDamageAmount}}">{{validate.thirdPropertyDamageAmount}}</view>
<view class="tips" wx:if="{{insureTips.thirdPropertyDamageAmount && isRecord}}">{{insureTips.thirdPropertyDamageAmount}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>标的车人伤金额(元)</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" value="{{insureParam.vehiclePersonalInjuryAmount}}" type="digit" placeholder="请输入" style="width:100%;" data-fieldName="vehiclePersonalInjuryAmount" bindinput="inputChange" bindblur="inputBlur"/>
</view>
</view>
<view class="tips" wx:if="{{validate.vehiclePersonalInjuryAmount}}">{{validate.vehiclePersonalInjuryAmount}}</view>
<view class="tips" wx:if="{{insureTips.vehiclePersonalInjuryAmount && isRecord}}">{{insureTips.vehiclePersonalInjuryAmount}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>第三方人伤金额(元)</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" value="{{insureParam.thirdPersonalInjuryAmount}}" type="digit" placeholder="请输入" style="width:100%;" data-fieldName="thirdPersonalInjuryAmount" bindinput="inputChange" bindblur="inputBlur"/>
</view>
</view>
<view class="tips" wx:if="{{validate.thirdPersonalInjuryAmount}}">{{validate.thirdPersonalInjuryAmount}}</view>
<view class="tips" wx:if="{{insureTips.thirdPersonalInjuryAmount && isRecord}}">{{insureTips.thirdPersonalInjuryAmount}}</view>
</view>
<view class="info-item flex-between disabledItem borderBottomNone">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>预估损失总金额(元)</view>
</view>
<view class="right">
<input value="{{insureParam.estimatedTotalLossAmount}}" type="digit" placeholder="自动计算" style="width:100%;" disabled/>
</view>
</view>
</block>
</view>
<view class="box">
<view class="row flex-between">
<view class="left flex-align">
<view class="bg"></view>
<view>保险理赔</view>
</view>
<view class="right flex-align" catch:tap="handleExpand" data-type="settleAClaimExpand">
<image class="icon" src="../../images/icon_up.png" mode="" wx:if="{{settleAClaimExpand}}"></image>
<image class="icon" src="../../images/icon_down.png" mode="" wx:else></image>
<view>{{settleAClaimExpand?'收起' :'展开'}}</view>
</view>
</view>
<block wx:if="{{settleAClaimExpand}}">
<view class="info-item">
<view class="flex-between">
<view class="left flex-align" style="width:60%">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>理赔至公司账户日期</view>
</view>
<view class="right flex-align selectItem" data-fieldName="claimToCompanyAccountDateShow" catch:tap="pickerChange">
<view wx:if="{{insureParam.claimToCompanyAccountDate}}">{{insureParam.claimToCompanyAccountDate}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{insureTips.claimToCompanyAccountDate && isRecord}}">{{insureTips.claimToCompanyAccountDate}}</view>
</view>
<van-popup show="{{claimToCompanyAccountDateShow}}" position="bottom" bind:close="hidePicker">
<van-datetime-picker type="date" value="{{ claimToCompanyAccountDateTimestamp }}" formatter="{{ formatter }}" bind:cancel="hidePicker" bind:confirm="claimToCompanyAccountDateChange" />
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align" style="width:60%">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>理赔至第三方账户日期</view>
</view>
<view class="right flex-align selectItem" data-fieldName="claimToThirdAccountDateShow" catch:tap="pickerChange">
<view wx:if="{{insureParam.claimToThirdAccountDate}}">{{insureParam.claimToThirdAccountDate}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<view class="tips" wx:if="{{insureTips.claimToThirdAccountDate && isRecord}}">{{insureTips.claimToThirdAccountDate}}</view>
</view>
<van-popup show="{{claimToThirdAccountDateShow}}" position="bottom" bind:close="hidePicker">
<van-datetime-picker type="date" value="{{ claimToThirdAccountDateTimestamp }}" formatter="{{ formatter }}" bind:cancel="hidePicker" bind:confirm="claimToThirdAccountDateChange" />
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align" style="width:60%">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>理赔至公司账户金额(元)</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" value="{{insureParam.claimToCompanyAccountAmount}}" type="digit" placeholder="请输入" style="width:100%;" data-fieldName="claimToCompanyAccountAmount" bindinput="inputChange" bindblur="inputBlur"/>
</view>
</view>
<view class="tips" wx:if="{{validate.claimToCompanyAccountAmount}}">{{validate.claimToCompanyAccountAmount}}</view>
<view class="tips" wx:if="{{insureTips.claimToCompanyAccountAmount && isRecord}}">{{insureTips.claimToCompanyAccountAmount}}</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align" style="width:61%">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>理赔至第三方账户金额(元)</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" value="{{insureParam.claimToThirdAccountAmount}}" type="digit" placeholder="请输入" style="width:100%;" data-fieldName="claimToThirdAccountAmount" bindinput="inputChange" bindblur="inputBlur"/>
</view>
</view>
<view class="tips" wx:if="{{validate.claimToThirdAccountAmount}}">{{validate.claimToThirdAccountAmount}}</view>
<view class="tips" wx:if="{{insureTips.claimToThirdAccountAmount && isRecord}}">{{insureTips.claimToThirdAccountAmount}}</view>
</view>
<view class="info-item borderBottomNone">
<view class="left flex-align">
<view>理赔单据</view>
</view>
<view class="uploadBox">
<van-uploader
max-count="10"
bind:after-read="documentImageAfterRead"
file-list="{{documentImageFile}}"
bind:delete="deleteDocumentImage"
/>
</view>
</view>
</block>
</view>
<view class="box">
<view class="row flex-between">
<view class="left flex-align">
<view class="bg"></view>
<view>理赔金额统计</view>
</view>
<view class="right flex-align" catch:tap="handleExpand" data-type="accountOfMoneyExpand">
<image class="icon" src="../../images/icon_up.png" mode="" wx:if="{{accountOfMoneyExpand}}"></image>
<image class="icon" src="../../images/icon_down.png" mode="" wx:else></image>
<view>{{accountOfMoneyExpand?'收起':'展开'}}</view>
</view>
</view>
<block wx:if="{{accountOfMoneyExpand}}">
<view class="info-item flex-between disabledItem">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>出险理赔总金额(元)</view>
</view>
<view class="right">
<input value="{{insureParam.totalCompensationAmount}}" type="digit" placeholder="自动计算" style="width:100%;" disabled/>
</view>
</view>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>出险未理赔金额(元) </view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" value="{{insureParam.uncompensatedAmount}}" type="digit" placeholder="请输入" style="width:100%;" data-fieldName="uncompensatedAmount" bindinput="inputChange" bindblur="inputBlur"/>
</view>
</view>
<view class="tips" wx:if="{{validate.uncompensatedAmount}}">{{validate.uncompensatedAmount}}</view>
<view class="tips" wx:if="{{insureTips.uncompensatedAmount && isRecord}}">{{insureTips.uncompensatedAmount}}</view>
</view>
<view class="info-item flex-between borderBottomNone disabledItem">
<view class="left flex-align" style="width:60%">
<view class="require" wx:if="{{isRecord}}">*</view>
<view>案件实际发生总金额(元) </view>
</view>
<view class="right">
<input value="{{insureParam.totalAmountActuallyIncurred}}" type="digit" placeholder="自动计算" style="width:100%;" disabled/>
</view>
</view>
</block>
</view>
</block>
<!-- 案件进度 -->
<block wx:if="{{step == 3}}">
<view class="box">
<view class="row flex-between">
<view class="left flex-align">
<view class="bg"></view>
<view>案件进度</view>
</view>
</view>
<view class="info-item flex-between">
<view class="left flex-align">
<view>是否结案</view>
</view>
<view class="right flex-align selectItem" data-fieldName="caseClosedShow" catch:tap="pickerChange">
<view wx:if="{{caseClosedText}}">{{caseClosedText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<van-popup show="{{caseClosedShow}}" position="bottom" bind:close="hidePicker">
<van-picker show-toolbar columns="{{yesNoList}}" bind:confirm="yesNoListConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="info-item flex-between">
<view class="left flex-align">
<view>结案时间</view>
</view>
<view class="right flex-align selectItem" data-fieldName="closingTimeShow" catch:tap="pickerChange">
<view wx:if="{{caseParam.closingTime}}">{{caseParam.closingTime}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
</view>
<van-popup show="{{closingTimeShow}}" position="bottom" bind:close="hidePicker">
<van-datetime-picker type="date" value="{{ closingTimestamp }}" formatter="{{ formatter }}" bind:cancel="hidePicker" bind:confirm="closingTimeChange" />
</van-popup>
<view class="info-item">
<view class="flex-between">
<view class="left flex-align">
<view>备注</view>
</view>
<view class="right">
<input placeholder-style="color:#949CB5" value="{{caseParam.remarks}}" type="text" placeholder="请输入" style="width:100%;" data-fieldName="remarks" bindinput="inputChange" bindblur="inputBlur"/>
</view>
</view>
<view class="tips" wx:if="{{validate.remarks}}">{{validate.remarks}}</view>
</view>
<view class="info-item">
<view class="left flex-align">
<view>事故认定书</view>
</view>
<view class="uploadBox">
<van-uploader
max-count="1"
bind:after-read="accidentCertificatePhotoAfterRead"
file-list="{{accidentCertificatePhotoFile}}"
bind:delete="deleteAccidentCertificatePhoto"
/>
</view>
</view>
<view class="info-item">
<view class="left flex-align">
<view>赔偿协议书</view>
</view>
<view class="uploadBox">
<van-uploader
max-count="1"
bind:after-read="compensationAgreementPhotoAfterRead"
file-list="{{compensationAgreementPhotoFile}}"
bind:delete="deleteCompensationAgreementPhoto"
/>
</view>
</view>
<view class="info-item">
<view class="left flex-align">
<view>定损单</view>
</view>
<view class="uploadBox">
<van-uploader
max-count="1"
bind:after-read="lossAssessmentPhotoAfterRead"
file-list="{{lossAssessmentPhotoFile}}"
bind:delete="deleteLossAssessmentPhoto"
/>
</view>
</view>
<view class="info-item borderBottomNone">
<view class="left flex-align">
<view>其他定损理赔资料</view>
</view>
<view class="uploadBox">
<van-uploader
max-count="1"
bind:after-read="otherPhotoAfterRead"
file-list="{{otherPhotoFile}}"
bind:delete="deleteOtherPhoto"
/>
</view>
</view>
</view>
</block>
<view style="height:{{step==1 || step==2 ? '320rpx':'210rpx'}}"></view>
<view class="operateBtn">
<block wx:if="{{step == 1 || step == 2}}">
<view catchtap="toNextStep" class="nextStep">下一步</view>
<view catchtap="formSubmit" class="submitBtn">跳过下一步,直接提交</view>
</block>
<block wx:else>
<view catchtap="formSubmit" class="nextStep">提交</view>
</block>
</view>