<template>
|
<view class="register">
|
<view class="registerForm">
|
<u--form :rules="rules"
|
:model="registerFormModel"
|
ref="regesterFormRef">
|
<u-form-item prop="driver"
|
label="姓名"
|
labelWidth="20%"
|
borderBottom
|
required>
|
<u--input v-model="registerFormModel.driver"
|
placeholder="请输入内容"
|
clearable></u--input>
|
</u-form-item>
|
<u-form-item prop="idNumber"
|
label="身份证"
|
labelWidth="20%"
|
borderBottom
|
required>
|
<u--input v-model="registerFormModel.idNumber"
|
placeholder="请输入内容"
|
clearable></u--input>
|
</u-form-item>
|
<u-form-item prop="phone"
|
label="手机号"
|
labelWidth="20%"
|
borderBottom
|
required>
|
<u--input v-model="registerFormModel.phone"
|
placeholder="请输入内容"
|
clearable></u--input>
|
</u-form-item>
|
<u-form-item prop="carNo"
|
label="车牌号"
|
labelWidth="20%"
|
borderBottom
|
required>
|
<u--input v-model="registerFormModel.carNo"
|
placeholder="请输入内容"
|
clearable></u--input>
|
</u-form-item>
|
<u-form-item prop="carNo"
|
label="是否入场"
|
labelWidth="20%"
|
borderBottom
|
required>
|
<uni-data-checkbox v-model="value" :localdata="range" @change="change"></uni-data-checkbox>
|
</u-form-item>
|
|
</u--form>
|
</view>
|
<view class="details">
|
<view class="title"><text>配送选择</text></view>
|
<view class="">
|
<uni-table border
|
stripe
|
emptyText="暂无更多数据">
|
<uni-tr>
|
<uni-th align="center">供应商</uni-th>
|
<uni-th align="center">产品</uni-th>
|
<uni-th align="center">车数</uni-th>
|
<uni-th align="center">操作</uni-th>
|
</uni-tr>
|
<uni-tr v-for="(item, index) in TableData"
|
:key="item.id">
|
<uni-td align="center">{{ item.customerName || '' }}</uni-td>
|
<uni-td align="center">{{ item.productName||'' }}</uni-td>
|
<uni-td align="center">{{ item.carNum || '' }}</uni-td>
|
<uni-td><u-button text="选择"
|
type="primary"
|
:disabled="item.carNum == item.carNum1"
|
@click="yuYueBtnClick(item)"></u-button></uni-td>
|
</uni-tr>
|
</uni-table>
|
</view>
|
</view>
|
|
</view>
|
</template>
|
|
<script>
|
import { apiRegister } from '@/api/publicInterface.js';
|
import { mapMutations } from 'vuex';
|
export default {
|
// 监听页面初次渲染完成。注意如果渲染速度快,会在页面进入动画完成前触发
|
onReady() {
|
this.$refs.regesterFormRef.setRules(this.rules);
|
},
|
onLoad(params) {
|
let that=this
|
this.GetMyDelivery()
|
uni.getStorage({
|
key: 'myDelivery',
|
success: function (res) {
|
Object.assign(that.registerFormModel, res.data)
|
}
|
});
|
},
|
data() {
|
return {
|
value: 0,
|
range: [{"value": 0,"text": "否" },{"value": 1,"text": "是"}],
|
carNumShow: false,
|
registerFormModel: {
|
phone: '',
|
driver: '',
|
idNumber: '',
|
carNo: '',
|
},
|
TableData:[],
|
rules: {
|
driver: {
|
type: 'string',
|
required: true,
|
message: '请填写姓名',
|
trigger: ['blur', 'change']
|
},
|
idNumber: [{
|
type: 'string',
|
required: true,
|
message: '请输入身份证号',
|
trigger: ['blur', 'change']
|
},
|
{
|
pattern: /^([1-6][1-9]|50)\d{4}(18|19|20)\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
|
message: '身份证号格式不正确',
|
trigger: ['blur', 'change']
|
}
|
],
|
phone: [{
|
required: true,
|
message: '请输入手机号',
|
// blur和change事件触发检验
|
trigger: ['blur', 'change']
|
},
|
{
|
min: 11,
|
max: 11,
|
message: '请输入合法手机号'
|
},
|
{
|
validator: (rule, value, callback) => {
|
return uni.$u.test.mobile(value);
|
},
|
message: '手机号码格式不正确',
|
trigger: ['change', 'blur']
|
}
|
],
|
carNo: [{
|
type: 'string',
|
required: true,
|
message: '请输入车牌号',
|
trigger: ['blur', 'change']
|
},
|
{
|
transform(value) {
|
return String(value);
|
},
|
validator: (rule, value, callback) => {
|
return uni.$u.test.carNo(value);
|
},
|
message: '请输入正确的车牌号',
|
trigger: ['change', 'blur']
|
}
|
],
|
},
|
};
|
},
|
methods: {
|
...mapMutations(['changeisUploadimg']),
|
yuYueBtnClick(item){
|
this.$refs.regesterFormRef.validate().then(res => {
|
this.$reqPost('saveMyDelivery',{
|
coalName:item.productName,
|
customerId:item.customerId,
|
deptId:item.deptId,
|
filedId:item.filedId,
|
orderPlanId:item.id,
|
orderTye:item.orderType,
|
sendDate:item.sendDate,
|
...this.registerFormModel
|
}, 'json').then(res => {
|
uni.setStorage({
|
key: 'myDelivery',
|
data: this.registerFormModel,
|
});
|
if (res.code === 0) {
|
uni.$u.toast('预约成功')
|
|
} else {
|
uni.$u.toast(res.msg ? res.msg : '预约失败')
|
}
|
})
|
|
|
})
|
},
|
GetMyDelivery() {
|
this.$reqGet('myDelivery').then(res => {
|
if (res.data) {
|
this.TableData=res.data
|
}
|
});
|
}
|
}
|
};
|
</script>
|
|
<style lang="scss"
|
scoped>
|
::v-deep.register {
|
width: 94%;
|
padding: 0 0 vww(20) 0;
|
margin: 0 auto;
|
.details {
|
margin-top: vww(24);
|
.title {
|
color: #111111;
|
font-weight: 400;
|
border: 1px solid #eeeeee;
|
padding: 0 vww(12) 0 vww(12);
|
border-bottom: none;
|
height: vww(40);
|
line-height: vww(40);
|
background-color: #f5f5f5;
|
}
|
.uni-table-scroll {
|
width: 100%;
|
overflow-x: hidden;
|
.uni-table {
|
min-width: 0 !important;
|
.uni-table-tr {
|
padding: 0;
|
font-size: vww(13);
|
.uni-table-th {
|
height: vww(32);
|
line-height: vww(20);
|
padding: vww(5) 0;
|
color: #111111;
|
font-weight: 550;
|
background: #f5f5f5;
|
}
|
.uni-table-td {
|
height: vww(32);
|
line-height: vww(20);
|
padding: vww(5) vww(10);
|
color: #111111;
|
.u-button {
|
height: vww(23);
|
}
|
}
|
}
|
}
|
}
|
}
|
}
|
</style>
|