2025-06-19 17:33:18 +08:00

505 lines
24 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!--pages/handoverVehicle/procurementDeliveryEdit/procurementDeliveryEdit.wxml-->
<view class="container">
<view class="content content-base">
<view class="top">
<view class="left">
<view class="line"></view>
<view class="title">基本信息</view>
</view>
<view class="right">
<view class="btn" wx:if="{{showBox.base}}" data-fieldName="base" catch:tap="showBoxInf">
<image src="../../../images/icon_up.png" mode=""/>
<view class="val">收起</view>
</view>
<view class="btn" wx:if="{{!showBox.base}}" data-fieldName="base" catch:tap="showBoxInf">
<image src="../../../images/icon_down.png" mode=""/>
<view class="val">展开</view>
</view>
</view>
</view>
<view class="box" wx:if="{{showBox.base}}">
<view class="row">
<view class="flex-between">
<view class="left">所属合同</view>
<view class="right">
{{params.contractId_dictText ? params.contractId_dictText : '/'}}
</view>
</view>
</view>
<!-- <view class="row">
<view class="flex-between">
<view class="left">所属项目</view>
<view class="right">
{{params.projectId_dictText ? params.projectId_dictText : '/'}}
</view>
</view>
</view> -->
<view class="row">
<view class="flex-between">
<view class="left">车辆种类</view>
<view class="right">
{{params.vehicleType_dictText ? params.vehicleType_dictText : '/'}}
</view>
</view>
</view>
<view class="row">
<view class="flex-between">
<view class="left">交车模版</view>
<view class="right">
{{params.templateId_dictText ? params.templateId_dictText : '/'}}
</view>
</view>
</view>
</view>
</view>
<view class="content">
<view class="top">
<view class="left">
<view class="line"></view>
<view class="title">车辆({{params.vehicleList.length ? params.vehicleList.length : 0}}</view>
</view>
<view class="right">
<view class="btn-add" data-fieldName="vehicleList" catch:tap="addRow">
<image src="../../../images/btn_add.png" mode=""/>
新增
</view>
<view class="btn" wx:if="{{showBox.vehicle}}" data-fieldName="vehicle" catch:tap="showBoxInf">
<image src="../../../images/icon_up.png" mode=""/>
<view class="val">收起</view>
</view>
<view class="btn" wx:if="{{!showBox.vehicle}}" data-fieldName="vehicle" catch:tap="showBoxInf">
<image src="../../../images/icon_down.png" mode=""/>
<view class="val">展开</view>
</view>
</view>
</view>
<view class="box" wx:if="{{showBox.vehicle}}">
<view class="box-g" wx:for="{{params.vehicleList}}" wx:key="index" wx:for-item="vItem">
<view class="row row-w">
<view class="flex-between">
<view class="left"><view class="require">*</view>车牌号</view>
<view class="right">
<!-- {{vItem.plateNumber}} -->
<view class="input-box">
<input
value="{{vItem.plateNumber}}"
placeholder="请输入"
type="text"
data-fieldName="vehicleList"
data-fieldKey="plateNumber"
data-fieldIndex="{{index}}"
bindinput="getInput" />
<view
class="clear-btn"
data-fieldName="vehicleList"
data-fieldKey="plateNumber"
data-fieldIndex="{{index}}"
catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view>
<view class="tips" wx:if="{{requireObj.vehicleList[index].plateNumber != ''}}">{{requireObj.vehicleList[index].plateNumber}}</view>
</view>
</view>
</view>
<view class="row row-w">
<view class="flex-between">
<view class="left"><view class="require">*</view>车辆型号</view>
<view class="right">
<!-- {{vItem.vehicleModel}} -->
<view class="input-box">
<input
value="{{vItem.vehicleModel}}"
placeholder="请输入"
type="text"
data-fieldName="vehicleList"
data-fieldKey="vehicleModel"
data-fieldIndex="{{index}}"
bindinput="getInput" />
<view
class="clear-btn"
data-fieldName="vehicleList"
data-fieldKey="vehicleModel"
data-fieldIndex="{{index}}"
catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view>
<view class="tips" wx:if="{{requireObj.vehicleList[index].vehicleModel != ''}}">{{requireObj.vehicleList[index].vehicleModel}}</view>
</view>
</view>
</view>
<view class="row row-w">
<view class="flex-between">
<view class="left"><view class="require">*</view>车架号</view>
<view class="right">
<!-- {{vItem.frameNumber}} -->
<view class="input-box">
<input
value="{{vItem.frameNumber}}"
placeholder="请输入"
type="text"
data-fieldName="vehicleList"
data-fieldKey="frameNumber"
data-fieldIndex="{{index}}"
bindinput="getInput" />
<view
class="clear-btn"
data-fieldName="vehicleList"
data-fieldKey="frameNumber"
data-fieldIndex="{{index}}"
catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view>
<view class="tips" wx:if="{{requireObj.vehicleList[index].frameNumber != ''}}">{{requireObj.vehicleList[index].frameNumber}}</view>
</view>
</view>
</view>
<view class="row row-w">
<view class="flex-between">
<view class="left"><view class="require">*</view>车辆种类</view>
<view class="right">
<!-- {{vItem.frameNumber}} -->
<view class="select-box" data-fieldName="vehicleTypeSelectShow" data-fieldindex="{{index}}" catch:tap="pickerChange">
<view wx:if="{{vItem.vehicleType != undefined}}">{{vItem.vehicleType_dictText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
<view class="tips" wx:if="{{requireObj.vehicleList[index].vehicleType != ''}}">{{requireObj.vehicleList[index].vehicleType}}</view>
</view>
</view>
</view>
<view class="row row-w">
<view class="flex-between">
<view class="left"><view class="require">*</view>品牌</view>
<view class="right">
<!-- {{vItem.vehicleBrand_dictText}} -->
<view class="select-box" data-fieldName="vehicleBrandSelectShow" data-fieldindex="{{index}}" catch:tap="pickerChange">
<view wx:if="{{vItem.vehicleBrand != undefined}}">{{vItem.vehicleBrand_dictText}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
<view class="tips" wx:if="{{requireObj.vehicleList[index].vehicleBrand != ''}}">{{requireObj.vehicleList[index].vehicleBrand}}</view>
</view>
</view>
</view>
<view class="btn-box">
<view class="btn-del" data-fieldName="vehicleList" data-fieldindex="{{index}}" catch:tap="delRow">删除</view>
</view>
</view>
<van-popup show="{{showSelect.vehicleTypeSelectShow}}" position="bottom" bind:close="hidePicker">
<van-picker data-fieldname="vehicleTypeId" show-toolbar
columns="{{vehicleTypeOptions}}" bind:confirm="pickerConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<van-popup show="{{showSelect.vehicleBrandSelectShow}}" position="bottom" bind:close="hidePicker">
<van-picker data-fieldname="vehicleBrand" show-toolbar
columns="{{vehicleBrandOptions}}" bind:confirm="pickerConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="box-g" wx:if="{{params.vehicleList.length == 0}}">无车辆信息</view>
</view>
</view>
<view class="content">
<view class="top">
<view class="left">
<view class="line"></view>
<view class="title">验收信息</view>
</view>
<view class="right">
<view class="btn-add" data-fieldName="projectList" catch:tap="addRow">
<image src="../../../images/btn_add.png" mode=""/>
新增
</view>
<view class="btn" wx:if="{{showBox.check}}" data-fieldName="check" catch:tap="showBoxInf">
<image src="../../../images/icon_up.png" mode=""/>
<view class="val">收起</view>
</view>
<view class="btn" wx:if="{{!showBox.check}}" data-fieldName="check" catch:tap="showBoxInf">
<image src="../../../images/icon_down.png" mode=""/>
<view class="val">展开</view>
</view>
</view>
</view>
<view class="box" wx:if="{{showBox.check}}">
<view class="box-g" wx:for="{{params.projectList}}" wx:key="index" wx:for-item="pItem">
<view class="row {{!pItem.id ? 'row-w' : ''}}">
<view class="flex-between">
<view class="left">项目</view>
<view wx:if="{{pItem.id}}" class="right">{{pItem.name ? pItem.name : '/'}}</view>
<view wx:else class="right">
<view class="input-box">
<input value="{{pItem.name}}" placeholder="请输入" type="text" data-fieldindex="{{index}}" data-fieldName="projectList" data-fieldkey="name" bindinput="getInput" />
<view class="clear-btn" data-fieldName="projectList" data-fieldindex="{{index}}" catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view>
</view>
</view>
</view>
<view class="row {{!pItem.id ? 'row-w' : ''}}">
<view class="flex-between">
<view class="left">内容</view>
<view wx:if="{{pItem.id}}" class="right">{{pItem.content ? pItem.content : '/'}}</view>
<view wx:else class="right">
<view class="input-box">
<input value="{{pItem.content}}" placeholder="请输入" type="text" data-fieldindex="{{index}}" data-fieldName="projectList" data-fieldkey="content" bindinput="getInput" />
<view class="clear-btn" data-fieldName="projectList" data-fieldindex="{{index}}" catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view>
</view>
</view>
</view>
<view class="row row-w">
<view class="flex-between">
<view class="left"><view class="require">*</view>是否符合要求</view>
<view class="right" style="width: 36%;max-width:initial;min-width:initial;">
<!-- {{pItem.checkStatus ? '是' : '否'}} -->
<!-- <view class="select-box" data-fieldName="yesOrNoSelectShow" data-fieldindex="{{index}}" catch:tap="pickerChange">
<view wx:if="{{pItem.checkStatus != undefined}}">{{pItem.checkStatus ? '是' : '否'}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view> -->
<van-radio-group value="{{ pItem.checkStatus }}" data-fieldName="projectList" data-fieldindex="{{index}}" bind:change="radioOnChange">
<view style="display: flex;justify-content: space-between;">
<van-radio name="1">是</van-radio>
<van-radio name="0">否</van-radio>
</view>
</van-radio-group>
<view class="tips" wx:if="{{requireObj.projectList[index].checkStatus != ''}}">{{requireObj.projectList[index].checkStatus}}</view>
</view>
</view>
</view>
<view class="row row-w">
<view class="flex-between">
<view class="left">备注</view>
<view class="right">
<!-- {{pItem.remark ? pItem.remark : '/'}} -->
<view class="input-box">
<input value="{{pItem.remark}}" placeholder="请输入" type="text" data-fieldindex="{{index}}" data-fieldName="projectList" data-fieldkey="remark" bindinput="getInput" />
<view class="clear-btn" data-fieldName="projectList" data-fieldindex="{{index}}" catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view>
</view>
</view>
</view>
<view class="btn-box">
<view class="btn-del" data-fieldName="projectList" data-fieldindex="{{index}}" catch:tap="delRow">删除</view>
</view>
</view>
<van-popup show="{{showSelect.yesOrNoSelectShow}}" position="bottom" bind:close="hidePicker">
<van-picker data-fieldname="checkStatus" show-toolbar
columns="{{yesOrNoOptions}}" bind:confirm="pickerConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="box-g" wx:if="{{params.projectList.length == 0}}">无项目信息</view>
<view class="row">
<view class="flex-between">
<view class="left"><view class="require">*</view>交车人</view>
<view class="right">
<!-- {{params.sentVehicleUser ? params.sentVehicleUser : '/'}} -->
<view class="input-box">
<input value="{{params.sentVehicleUser}}" placeholder="请输入" type="text" data-fieldName="sentVehicleUser" bindinput="getInput" />
<view class="clear-btn" data-fieldName="sentVehicleUser" catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view>
<view class="tips" wx:if="{{requireObj.sentVehicleUser != ''}}">{{requireObj.sentVehicleUser}}</view>
</view>
</view>
</view>
<view class="row">
<view class="flex-between">
<view class="left"><view class="require">*</view>验车人</view>
<view class="right">
<!-- {{item.checkUserId ? item.checkUserId : '/'}} -->
<!-- <view class="input-box">
<input value="{{params.checkUserId}}" placeholder="请输入" type="text" data-fieldName="checkUserId" bindinput="getInput" />
<view class="clear-btn" data-fieldName="checkUserId" catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view> -->
<view class="select-box" data-fieldName="checkUserShow" catch:tap="pickerChange">
<view wx:if="{{params.checkUserId}}">{{userList[checkUserPickerIndex].text}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
<view class="tips" wx:if="{{requireObj.checkUserId != ''}}">{{requireObj.checkUserId}}</view>
</view>
</view>
</view>
<van-popup show="{{showSelect.checkUserShow}}" position="bottom" bind:close="hidePicker">
<van-picker data-fieldname="checkUserId" data-fieldindex="checkUserPickerIndex" show-toolbar
columns="{{userList}}" bind:confirm="pickerConfirm" bind:cancel="hidePicker">
</van-picker>
</van-popup>
<view class="row">
<view class="flex-between">
<view class="left">初登时间</view>
<view class="right">
<!-- {{item.checkTime ? item.checkTime : '/'}} -->
<!-- <view class="input-box">
<input value="{{params.checkTime}}" placeholder="请输入" type="text" data-fieldName="checkTime" bindinput="getInput" />
<view class="clear-btn" data-fieldName="checkTime" catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view> -->
<view class="select-box" data-fieldName="registrationTimeSelectShow" catch:tap="pickerChange">
<view wx:if="{{params.registrationTime}}">{{params.registrationTime}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
<view class="tips" wx:if="{{requireObj.registrationTime != ''}}">{{requireObj.registrationTime}}</view>
</view>
</view>
<van-popup show="{{showSelect.registrationTimeSelectShow}}" position="bottom" bind:close="hidePicker">
<van-datetime-picker type="date" value="{{ registrationTimeTamp }}" data-fieldName="registrationTime" bind:cancel="hidePicker" bind:confirm="pickerConfirm" />
</van-popup>
</view>
<view class="row">
<view class="flex-between">
<view class="left"><view class="require">*</view>验车时间</view>
<view class="right">
<!-- {{item.checkTime ? item.checkTime : '/'}} -->
<!-- <view class="input-box">
<input value="{{params.checkTime}}" placeholder="请输入" type="text" data-fieldName="checkTime" bindinput="getInput" />
<view class="clear-btn" data-fieldName="checkTime" catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view> -->
<view class="select-box" data-fieldName="timeSelectShow" catch:tap="pickerChange">
<view wx:if="{{params.checkTime}}">{{params.checkTime}}</view>
<view class="placeholder" wx:else>请选择</view>
<view class="arrow"></view>
</view>
<view class="tips" wx:if="{{requireObj.checkTime != ''}}">{{requireObj.checkTime}}</view>
</view>
</view>
<van-popup show="{{showSelect.timeSelectShow}}" position="bottom" bind:close="hidePicker">
<van-datetime-picker type="date" value="{{ checkTimeTamp }}" data-fieldName="checkTime" bind:cancel="hidePicker" bind:confirm="pickerConfirm" />
</van-popup>
</view>
<view class="row">
<view class="flex-between" catch:tap="changeAddress">
<view class="left">验车地点</view>
<view class="right">
<!-- {{item.checkAddress ? item.checkAddress : '/'}} -->
<view class="address-box">
<view class="val">{{params.checkAddress ? params.checkAddress : ''}}</view>
<view class="icon">
<image src="../../../images/icon_location.png" mode=""/>
</view>
</view>
<view class="tips" wx:if="{{requireObj.checkAddress != ''}}">{{requireObj.checkAddress}}</view>
</view>
</view>
</view>
<view class="row">
<view class="flex-between">
<view class="left"><view class="require">*</view>验收结果</view>
<view class="right">
<!-- {{item.checkStatus ? '是' : '否'}} -->
<van-radio-group value="{{ params.checkStatus }}" data-fieldName="checkStatus" bind:change="radioOnChange">
<view style="display: flex;justify-content: space-between;">
<van-radio name="1">合格</van-radio>
<van-radio name="0">不合格</van-radio>
</view>
</van-radio-group>
<view class="tips" wx:if="{{requireObj.checkStatus !== ''}}">{{requireObj.checkStatus}}</view>
</view>
</view>
</view>
<view class="row">
<view class="flex-between">
<view class="left">验收结论</view>
<view class="right">
<!-- {{item.remark ? item.remark : '/'}} -->
<view class="input-box">
<input value="{{params.remark}}" placeholder="请输入" type="text" data-fieldName="remark" bindinput="getInput" />
<view class="clear-btn" data-fieldName="remark" catch:tap="clearVal">
<image src="../../../images/icon_delete.png" mode=""/>
</view>
</view>
<!-- <view class="tips" wx:if="{{params.remark.length >= 32}}">{{'输入长度不得超过32个字符'}}</view> -->
</view>
</view>
</view>
<view class="row">
<view class="no-flex">
<view class="left">验收单</view>
<view class="right r100">
<!-- <view class="pic-box" wx:if="{{params.ckeckUrl}}">
<image src="{{params.ckeckUrl}}" mode="" catch:tap="previewImg"/>
</view>
<view wx:else="">/</view> -->
<van-uploader
file-list="{{ params.ckeckUrlList }}"
deletable="{{ true }}"
max-count="10"
data-fieldName="ckeckUrl"
bind:after-read="afterRead"
bind:delete="deletePhoto" >
<view class="upload-box">
<image src="../../../images/icon_upload.png" mode=""/>
<view class="val">上传图片</view>
</view>
</van-uploader>
</view>
</view>
</view>
<!-- <view class="row">
<view class="no-flex">
<view class="left">保函</view>
<view class="right r100">
<van-uploader
file-list="{{ params.ensureUrlList }}"
deletable="{{ true }}"
max-count="10"
data-fieldName="ensureUrl"
bind:after-read="afterRead"
bind:delete="deletePhoto" >
<view class="upload-box">
<image src="../../../images/icon_upload.png" mode=""/>
<view class="val">上传图片</view>
</view>
</van-uploader>
</view>
</view>
</view> -->
<view class="row">
<view class="no-flex">
<view class="left">其他</view>
<view class="right r100">
<!-- <view class="pic-box" wx:if="{{params.otherUrl}}">
<image src="{{params.otherUrl}}" mode="" catch:tap="previewImg"/>
</view>
<view wx:else="">/</view> -->
<van-uploader
file-list="{{ params.otherUrlList }}"
deletable="{{ true }}"
max-count="10"
data-fieldName="otherUrl"
bind:after-read="afterRead"
bind:delete="deletePhoto" >
<view class="upload-box">
<image src="../../../images/icon_upload.png" mode=""/>
<view class="val">上传图片</view>
</view>
</van-uploader>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="bottom">
<view class="btn-box">
<view class="btn btn-w50" data-status="0" catch:tap="formSubmit">保存</view>
<view class="btn btn3 btn-w50" data-status="1" wx:if="{{params.status == '0'}}" catch:tap="formSubmit">提交</view>
</view>
</view>