| | |
| | | <template> |
| | | <view class="driver-my"> |
| | | <view class="" |
| | | style="height: 446rpx;width: 100%;"> |
| | | style="height: 540rpx;width: 100%;"> |
| | | <view class="driver-banner"> |
| | | <view class="navgation">我的</view> |
| | | <view class="avatar"> |
| | |
| | | size="32"></u--text> |
| | | </view> |
| | | <view class="car-type"> |
| | | <text>{{userInfo.countryNumberCar===1?'国五车辆':'国六车辆'}}</text> |
| | | <view ><u-button type="primary" |
| | | @click="editDocClick" |
| | | shape="circle" |
| | | plain>编辑证件信息</u-button></view> |
| | | </view> |
| | | <view class="process-tran" |
| | | > |
| | | </view> |
| | | <view class="tran-type"> |
| | | <view ><u-button type="primary" |
| | | @click="editTranClick" |
| | | shape="circle" |
| | | plain>添加运输证</u-button></view> |
| | | </view> |
| | | <view class="information-block"> |
| | | <view class="personal-information"> |
| | |
| | | <view class="label-text">身份证号</view> |
| | | </view> |
| | | <view class="information-value"> |
| | | {{ userInfo.idCard || '' }} |
| | | {{ idCard || '' }} |
| | | </view> |
| | | </view> |
| | | <view class="information-line"> |
| | |
| | | |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="car-information" v-if="certificateData.length>0"> |
| | | <view class="roadTransportCertificate"> |
| | | <view class="information-body"> |
| | | <view class="certificate" v-for="item in certificateData" :key="item.id"> |
| | | <view class="certificate-left"> |
| | | 产品:{{item.productName}} |
| | | </view> |
| | | <view class="certificate-right"> |
| | | {{item.status==0?'未审核':item.status==1?'通过':item.status==2?'过期':item.status==-1?"未通过":null}} |
| | | </view> |
| | | </view> |
| | | {{}} |
| | | </view> |
| | | </view> |
| | | </view> |
| | |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> --> |
| | | <u-form-item labelWidth="20%" |
| | | <!-- <u-form-item labelWidth="20%" |
| | | label="身份证号" |
| | | prop="idCard" |
| | | required> |
| | | <u--input v-model="editUserInfo.idCard" |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> |
| | | </u-form-item> --> |
| | | <u-form-item labelWidth="20%" |
| | | label="手机号" |
| | | prop="phone" |
| | |
| | | <u-form-item labelWidth="20%" |
| | | label="车辆类型" |
| | | borderBottom |
| | | required="" |
| | | required |
| | | prop="countryNumberCar"> |
| | | <u-radio-group v-model="editUserInfo.countryNumberCar" |
| | | placement="row" |
| | |
| | | </view> |
| | | </u-popup> |
| | | </view> |
| | | <!-- 修改证件弹出 --> |
| | | <view class="editDriverPopup-container"> |
| | | <u-popup :show="editDocShow" |
| | | mode="bottom" |
| | | @close="editDocClose" |
| | | @open="editDocOpen" |
| | | :closeable="true"> |
| | | <combined-title title="修改证件信息" |
| | | style="margin-left:20rpx"></combined-title> |
| | | <view class="editDriverPopup-container-box"> |
| | | <u--form labelPosition="left" |
| | | :model="registerFormModel" |
| | | ref="editRef"> |
| | | <u-form-item prop="cardImg1" |
| | | label="身份证正面" |
| | | labelWidth="20%" |
| | | borderBottom |
| | | required |
| | | @click="beforeRead"> |
| | | <u-upload :fileList="fileList6" |
| | | deletable |
| | | @afterRead="afterRead" |
| | | @delete="deletePic" |
| | | name="6" |
| | | multiple |
| | | :maxCount="1" |
| | | width="250" |
| | | height="150" |
| | | :previewFullImage="true"> |
| | | </u-upload> |
| | | </u-form-item> |
| | | <u-form-item prop="cardImg2" |
| | | label="身份证反面" |
| | | labelWidth="20%" |
| | | borderBottom |
| | | required |
| | | @click="beforeRead"> |
| | | <u-upload :fileList="fileList7" |
| | | deletable |
| | | @afterRead="afterRead" |
| | | @delete="deletePic" |
| | | name="7" |
| | | multiple |
| | | :maxCount="1" |
| | | width="250" |
| | | height="150" |
| | | :previewFullImage="true"> |
| | | </u-upload> |
| | | </u-form-item> |
| | | <u-form-item prop="expirationTimeIdcard" |
| | | label="身份证过期时间" |
| | | labelWidth="20%" |
| | | borderBottom> |
| | | <uni-datetime-picker v-model="registerFormModel.expirationTimeIdcard" type="datetime" /> |
| | | </u-form-item> |
| | | <u-form-item prop="drivingImg" |
| | | label="行驶证" |
| | | labelWidth="20%" |
| | | borderBottom |
| | | required |
| | | @click="beforeRead"> |
| | | <u-upload :fileList="fileList2" |
| | | deletable |
| | | @afterRead="afterRead" |
| | | @delete="deletePic" |
| | | name="2" |
| | | multiple |
| | | :maxCount="1" |
| | | width="250" |
| | | height="150" |
| | | :previewFullImage="true"> |
| | | </u-upload> |
| | | </u-form-item> |
| | | <u-form-item prop="expirationTimeDriving" |
| | | label="行驶证过期时间" |
| | | labelWidth="20%" |
| | | borderBottom> |
| | | <uni-datetime-picker v-model="registerFormModel.expirationTimeDriving" type="datetime" /> |
| | | </u-form-item> |
| | | <u-form-item prop="driverImg" |
| | | label="驾驶证" |
| | | labelWidth="24%" |
| | | borderBottom |
| | | required |
| | | @click="beforeRead"> |
| | | <u-upload :fileList="fileList8" |
| | | deletable |
| | | @afterRead="afterRead" |
| | | @delete="deletePic" |
| | | name="8" |
| | | multiple |
| | | :maxCount="1" |
| | | width="250" |
| | | height="150" |
| | | :previewFullImage="true"> |
| | | </u-upload> |
| | | </u-form-item> |
| | | <u-form-item prop="expirationTimeDriver" |
| | | label="驾驶证过期时间" |
| | | labelWidth="20%" |
| | | borderBottom> |
| | | <uni-datetime-picker v-model="registerFormModel.expirationTimeDriver" type="datetime" /> |
| | | </u-form-item> |
| | | <u-form-item prop="tradeQualificationImg" |
| | | label="从业资格证" |
| | | labelWidth="24%" |
| | | borderBottom |
| | | v-if="registerFormModel.type == 3||registerFormModel.type == 4" |
| | | required |
| | | @click="beforeRead"> |
| | | <u-upload :fileList="fileList4" |
| | | deletable |
| | | @afterRead="afterRead" |
| | | @delete="deletePic" |
| | | name="4" |
| | | multiple |
| | | :maxCount="1" |
| | | width="250" |
| | | height="150" |
| | | :previewFullImage="true"> |
| | | </u-upload> |
| | | </u-form-item> |
| | | <u-form-item prop="expirationTimeTradequalification" |
| | | label="从业资格过期时间" |
| | | labelWidth="20%" |
| | | borderBottom |
| | | v-if="registerFormModel.type == 3||registerFormModel.type == 4"> |
| | | <uni-datetime-picker v-model="registerFormModel.expirationTimeTradequalification" type="datetime" /> |
| | | </u-form-item> |
| | | </u--form> |
| | | <view class="person-utils"> |
| | | <u-button text="提交证件修改" |
| | | @click="updateDoc" |
| | | type="primary"></u-button> |
| | | </view> |
| | | </view> |
| | | </u-popup> |
| | | </view> |
| | | <!-- 添加道路运输证 --> |
| | | <view class="editDriverPopup-container"> |
| | | <u-popup :show="editTranShow" |
| | | mode="bottom" |
| | | @close="editTranClose" |
| | | @open="editTranOpen" |
| | | :closeable="true"> |
| | | <combined-title title="运输证" |
| | | style="margin-left:20rpx"></combined-title> |
| | | <view class="editDriverPopup-container-box"> |
| | | <u--form labelPosition="left" |
| | | :model="tranSportForm" |
| | | :rule="sportRules" |
| | | ref="sportRef"> |
| | | <u-form-item labelWidth="20%" |
| | | label="运输证号" |
| | | prop="certificateNo" |
| | | required> |
| | | <u--input v-model="tranSportForm.certificateNo" |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> |
| | | <u-form-item labelWidth="20%" |
| | | label="车牌号" |
| | | prop="carNo" |
| | | required> |
| | | <u--input v-model="tranSportForm.carNo" |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> |
| | | <u-form-item labelWidth="20%" |
| | | label="产品" |
| | | ref="item1" |
| | | @click="treeOpen" |
| | | prop='productId'> |
| | | <u--input placeholder="请选择产品" |
| | | v-model="productName" |
| | | class="input" |
| | | type="text"></u--input> |
| | | <qian-tree ref="tkitree" |
| | | :range="productData" |
| | | rangeKey='productName' |
| | | confirmColor="#4e8af7" |
| | | :selectParent="true" |
| | | title="选择部门" |
| | | @confirm="treeChooseValue" /> |
| | | </u-form-item> |
| | | <view class="customer-name"> |
| | | <view class="customer-name_label"> |
| | | 选择客户 |
| | | </view> |
| | | <view class="customer-name_block" |
| | | @click="selfDeliver"> |
| | | <input class="customer-name_block-input" |
| | | type="text" |
| | | placeholder="请选择客户" |
| | | v-model="customerName" |
| | | @focus="selfDeliver" |
| | | ref="selectCustomer" /> |
| | | </view> |
| | | </view> |
| | | <u-form-item prop="certificateImg" |
| | | label="运输证" |
| | | labelWidth="20%" |
| | | borderBottom |
| | | required |
| | | @click="beforeRead"> |
| | | <u-upload :fileList="fileList9" |
| | | deletable |
| | | @afterRead="afterRead" |
| | | @delete="deletePic" |
| | | name="9" |
| | | multiple |
| | | :maxCount="1" |
| | | width="250" |
| | | height="150" |
| | | :previewFullImage="true"> |
| | | </u-upload> |
| | | </u-form-item> |
| | | <u-form-item prop="expirationTime" |
| | | label="运输证过期时间" |
| | | labelWidth="20%" |
| | | borderBottom> |
| | | <uni-datetime-picker v-model="tranSportForm.expirationTime" type="datetime" /> |
| | | </u-form-item> |
| | | <view class="adddelete"> |
| | | <u-button text="添加驾驶员" |
| | | @click="addDriver" |
| | | type="primary"></u-button> |
| | | <u-button text="删除驾驶员" |
| | | @click="deleteDriver" |
| | | type="error"></u-button> |
| | | </view> |
| | | <view class="superList" v-for="(item,index) in driverList" :key="index"> |
| | | <u-form-item labelWidth="20%" |
| | | label="姓名" |
| | | prop="driverName" |
| | | required> |
| | | <u--input v-model="item.driverName" |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> |
| | | <u-form-item labelWidth="20%" |
| | | label="身份证" |
| | | prop="driverIdcard" |
| | | required> |
| | | <u--input v-model="item.driverIdcard" |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> |
| | | </view> |
| | | <view class="adddelete"> |
| | | <u-button text="添加押运员" |
| | | @click="addSupercar" |
| | | type="primary"></u-button> |
| | | <u-button text="删除押运员" |
| | | @click="deleteSupercar" |
| | | type="error"></u-button> |
| | | </view> |
| | | <view class="superList" v-for="(item,index) in supercargoList" :key="index"> |
| | | <u-form-item labelWidth="20%" |
| | | label="姓名" |
| | | prop="driverName" |
| | | required> |
| | | <u--input v-model="item.driverName" |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> |
| | | <u-form-item labelWidth="20%" |
| | | label="身份证" |
| | | prop="driverIdcard" |
| | | required> |
| | | <u--input v-model="item.driverIdcard" |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> |
| | | <u-form-item labelWidth="20%" |
| | | label="手机号" |
| | | prop="driverPhone" |
| | | required> |
| | | <u--input v-model="item.driverPhone" |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> |
| | | </view> |
| | | |
| | | <u-form-item labelWidth="20%" |
| | | label="备注" |
| | | prop="remarks"> |
| | | <u--input v-model="tranSportForm.remarks" |
| | | border="none" |
| | | inputAlign="left"></u--input> |
| | | </u-form-item> |
| | | </u--form> |
| | | <view class="person-utils"> |
| | | <u-button text="提交道路运输证" |
| | | @click="updateRoad" |
| | | type="primary"></u-button> |
| | | </view> |
| | | </view> |
| | | </u-popup> |
| | | <u-popup :closeable='true' |
| | | :round="30" |
| | | mode='bottom' |
| | | :show="selfDeliverShow" |
| | | @close="selfDeliverClose" |
| | | @open="selfDeliverOpen"> |
| | | <view class="name-list-section"> |
| | | <view class="name-list_title"> |
| | | 选择客户 |
| | | </view> |
| | | <view class="name-list_container"> |
| | | <u-empty mode="data" |
| | | icon="http://cdn.uviewui.com/uview/empty/data.png" |
| | | text="暂无数据" |
| | | textSize="30" |
| | | iconSize="1000" |
| | | v-if="customerNameList.length===0"></u-empty> |
| | | <view class="name-list_container_item" |
| | | v-for="(item,index) in customerNameList" :key="index" |
| | | @click="selectCustomer(item)"> |
| | | <view class="item-image"> |
| | | <image src="https://mx.jzeg.cn:9096/appimg/image/banner/address.png" |
| | | mode="widthFix" |
| | | style="width: 18px;"></image> |
| | | </view> |
| | | <view class="item-customerName"> |
| | | {{item.customerName}} |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </u-popup> |
| | | </view> |
| | | <view class="logoutModel"> |
| | | <u-modal :show="logoutShow" |
| | | :title="logoutTitle" |
| | |
| | | import noobTour from '@/components/noobTour/noobTour.vue' |
| | | import printerStyle from '@/pages/driver-page/driver-index/bill-of-lading-details/printerStyle/printerStyle.vue' |
| | | import { mapMutations, mapState } from 'vuex'; |
| | | import qianTree from '@/components/qian-tree/qian-tree.vue'; |
| | | export default { |
| | | components: { previewImage, noobTour, printerStyle }, |
| | | components: { previewImage, noobTour, printerStyle,qianTree }, |
| | | data() { |
| | | return { |
| | | selfDeliverShow: false, |
| | | customerNameList:[], |
| | | customerName:"", |
| | | // 获取的司机详情 |
| | | userInfo: {}, |
| | | productName:"", |
| | | // 修改司机详情 |
| | | editUserInfo: { |
| | | phone: '', |
| | |
| | | inventoryImg: '', |
| | | countryNumberCar: 0 |
| | | }, |
| | | registerFormModel:{}, |
| | | tranSportForm:{ |
| | | carNo:"", |
| | | productId:"", |
| | | customerId:"" |
| | | }, |
| | | countryNumberCarList: [{ |
| | | name: 1, |
| | | label: '国五', |
| | |
| | | label: '国六', |
| | | } |
| | | ], |
| | | sportRules:{ |
| | | certificateNo: { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请填写运输证号', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | expirationTime: { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请选择运输证过期时间', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 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'] |
| | | } |
| | | ], |
| | | }, |
| | | rules: { |
| | | name: { |
| | | type: 'string', |
| | |
| | | return Number(value); |
| | | }, |
| | | validator: (rule, value, callback) => { |
| | | return value <= 10; |
| | | return value <= 10 && value > 0; |
| | | }, |
| | | message: '请输入正确的车轴数', |
| | | trigger: ['change', 'blur'] |
| | | trigger: ['change', 'blur'], |
| | | required: true, |
| | | }], |
| | | carImg: { |
| | | type: 'string', |
| | |
| | | required: true, |
| | | message: '请选择车辆类型', |
| | | trigger: ['blur', 'change'] |
| | | } |
| | | }, |
| | | roadTransportImg: { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请上传道路运输证照片', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | tradeQualificationImg: { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请上传从业资格证照片', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | }, |
| | | src: '', |
| | | fileList1: [], |
| | |
| | | fileList3: [], |
| | | fileList4: [], |
| | | fileList5: [], |
| | | fileList6: [], |
| | | fileList7: [], |
| | | fileList8: [], |
| | | fileList9: [], |
| | | productData:[], |
| | | certificateData:[], |
| | | driverList:[{ |
| | | driverName:"", |
| | | driverIdcard:"" |
| | | }], |
| | | supercargoList:[], |
| | | // 修改信息弹出框 |
| | | editDriverPopupShow: false, |
| | | editDocShow:false, |
| | | editTranShow:false, |
| | | // previewImage |
| | | previewImageShow: false, |
| | | previewImageSrc: '', |
| | |
| | | computed: { |
| | | currentSelectedPrintStyle() { |
| | | return this.selectedPrintStyle ? this.selectedPrintStyle : uni.getStorageSync('selectedPrintStyle') |
| | | }, |
| | | idCard() { |
| | | return this.userInfo.idCard.slice(0, 6) + '********' + this.userInfo.idCard.slice(-4) |
| | | } |
| | | }, |
| | | onShow() { |
| | |
| | | }, |
| | | onReady() { |
| | | this.$refs.editRef.setRules(this.rules); |
| | | this.$refs.sportRef.setRules(this.sportRules); |
| | | }, |
| | | methods: { |
| | | ...mapMutations(['changeisUploadimg']), |
| | | init() { |
| | | this.$reqGet('getProductTree').then(res => { |
| | | this.productData = res.data; |
| | | }); |
| | | this.getUserEntity(); |
| | | }, |
| | | getUserEntity() { |
| | |
| | | this.$reqGet('getUserEntity').then(res => { |
| | | uni.hideLoading(); |
| | | this.userInfo = res.data; |
| | | this.userInfo.idCard = this.userInfo.idCard.slice(0, 6) + '********' + this.userInfo.idCard |
| | | .slice(-4) |
| | | this.$reqGetId('getDriverListById', this.userInfo.userId).then(res => { |
| | | this.certificateData = res.data; |
| | | console.log(this.certificateData) |
| | | }); |
| | | // this.userInfo.idCard = this.userInfo.idCard.slice(0, 6) + '********' + this.userInfo.idCard |
| | | // .slice(-4) |
| | | uni.setStorageSync('carImg', this.userInfo.carImg); |
| | | uni.setStorageSync('drivingImg', this.userInfo.drivingImg); |
| | | uni.setStorageSync('roadTransportImg', this.userInfo.roadTransportImg); |
| | |
| | | url: `${BaseUrl}${this.userInfo.inventoryImg}` |
| | | }); |
| | | } |
| | | Object.keys(this.editUserInfo).map(item => { |
| | | if (res.data[item]) { |
| | | this.editUserInfo[item] = res.data[item]; |
| | | this.editUserInfo.idCard = this.userInfo.idCard.slice(0, 6) + '********' + this |
| | | .editUserInfo.idCard |
| | | .slice(-4) |
| | | Object.assign(this.editUserInfo, res.data) |
| | | this.registerFormModel={ |
| | | customerid:res.data.userId, |
| | | idCardImg:res.data.idCardImg, |
| | | expirationTimeIdcard:res.data.expirationTimeIdcard, |
| | | drivingImg:res.data.drivingImg, |
| | | expirationTimeDriving:res.data.expirationTimeDriving, |
| | | driverImg:res.data.driverImg, |
| | | expirationTimeDriver:res.data.expirationTimeDriver, |
| | | tradeQualificationImg:res.data.tradeQualificationImg, |
| | | expirationTimeTradequalification:res.data.expirationTimeTradequalification, |
| | | type:res.data.carType |
| | | } |
| | | if(this.registerFormModel.idCardImg){ |
| | | if (this.fileList6.length == 0 && this.registerFormModel.idCardImg.split(",")[0]) { |
| | | this.fileList6.push({ |
| | | url: `${BaseUrl}${this.registerFormModel.idCardImg.split(",")[0]}` |
| | | }); |
| | | } |
| | | }); |
| | | if (this.fileList7.length == 0 && this.registerFormModel.idCardImg.split(",")[1]) { |
| | | this.fileList7.push({ |
| | | url: `${BaseUrl}${this.registerFormModel.idCardImg.split(",")[1]}` |
| | | }); |
| | | } |
| | | if (this.fileList8.length == 0 && this.userInfo.driverImg) { |
| | | this.fileList8.push({ |
| | | url: `${BaseUrl}${this.userInfo.driverImg}` |
| | | }); |
| | | } |
| | | this.registerFormModel.cardImg1=this.registerFormModel.idCardImg.split(",")[1] |
| | | this.registerFormModel.cardImg2=this.registerFormModel.idCardImg.split(",")[1] |
| | | } |
| | | this.editUserInfo.password = '' |
| | | }); |
| | | }, |
| | | // 修改按钮点击 |
| | | editBtnClick() { |
| | | this.editDriverPopupShow = true; |
| | | }, |
| | | editDocClick(){ |
| | | this.editDocShow = true; |
| | | }, |
| | | editTranClick(){ |
| | | this.getShipToList() |
| | | this.editTranShow = true; |
| | | }, |
| | | imageClick(index) { |
| | | if (index == 1) { |
| | |
| | | success: res => { |
| | | if (num == 1) { |
| | | this.editUserInfo.carImg = JSON.parse(res.data).data.url; |
| | | this.registerFormModel.carImg = JSON.parse(res.data).data.url; |
| | | uni.setStorageSync('carImg', JSON.parse(res.data).data.url); |
| | | resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`); |
| | | } else if (num == 2) { |
| | | this.registerFormModel.drivingImg = JSON.parse(res.data).data.url; |
| | | this.editUserInfo.drivingImg = JSON.parse(res.data).data.url; |
| | | uni.setStorageSync('drivingImg', JSON.parse(res.data).data.url); |
| | | resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`); |
| | |
| | | this.editUserInfo.inventoryImg = JSON.parse(res.data).data |
| | | .url; |
| | | resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`); |
| | | }else if(num==6){ |
| | | this.registerFormModel.cardImg1 = JSON.parse(res.data) |
| | | .data.url; |
| | | resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`); |
| | | }else if(num==7){ |
| | | this.registerFormModel.cardImg2 = JSON.parse(res.data) |
| | | .data.url; |
| | | resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`); |
| | | }else if(num==8){ |
| | | this.registerFormModel.driverImg = JSON.parse(res.data) |
| | | .data.url; |
| | | resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`); |
| | | }else if(num==9){ |
| | | this.tranSportForm.certificateImg = JSON.parse(res.data) |
| | | .data.url; |
| | | resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`); |
| | | } |
| | | |
| | | } |
| | | }); |
| | | }); |
| | |
| | | editDriverPopupClose() { |
| | | this.editDriverPopupShow = false; |
| | | }, |
| | | editDocClose(){ |
| | | this.editDocShow = false; |
| | | }, |
| | | editTranClose(){ |
| | | this.editTranShow = false; |
| | | }, |
| | | editDriverPopupOpen() {}, |
| | | editDocOpen(){}, |
| | | editTranOpen(){}, |
| | | modifyPassword() { |
| | | this.$store.commit('changeisLogin', false) |
| | | this.$store.dispatch('websocketOnClose') |
| | | uni.reLaunch({ |
| | | url: '/pages/login/forgetPassword/forgetPassword' |
| | | }) |
| | | }, |
| | | updateRoad(){ |
| | | this.$refs.sportRef |
| | | .validate() |
| | | .then(res => { |
| | | if (this.tranSportForm.productId == '' ) { |
| | | uni.showToast({ |
| | | title: '请选择产品!', |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | }else if(this.tranSportForm.customerId == ''){ |
| | | uni.showToast({ |
| | | title: '请选择客户!', |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | } |
| | | let idcardtext=/^([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]$/ |
| | | if(this.driverList.length>0){ |
| | | this.driverList.forEach((item,index)=>{ |
| | | if(!item.driverName){ |
| | | uni.showToast({ |
| | | title: `请填写驾驶姓名!`, |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | } |
| | | if(!item.driverIdcard){ |
| | | uni.showToast({ |
| | | title: `请填写驾驶身份证!`, |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | }else if(!idcardtext.test(item.driverIdcard)){ |
| | | uni.showToast({ |
| | | title: `请检验驾驶员身份证!`, |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | } |
| | | }) |
| | | } |
| | | if(this.supercargoList.length>0){ |
| | | this.supercargoList.forEach((item,index)=>{ |
| | | if(!item.driverName){ |
| | | uni.showToast({ |
| | | title: `请填写押运姓名!`, |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | } |
| | | if(!item.driverIdcard){ |
| | | uni.showToast({ |
| | | title: `请填写押运身份证!`, |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | }else if(!idcardtext.test(item.driverIdcard)){ |
| | | uni.showToast({ |
| | | title: `请检验押运身份证!`, |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | } |
| | | if(!item.driverPhone){ |
| | | uni.showToast({ |
| | | title: `请填写押运手机号!`, |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | }else if( !/^1[23456789]\d{9}$/.test(item.driverPhone)){ |
| | | uni.showToast({ |
| | | title: `请检验押运手机号!`, |
| | | icon: 'error', |
| | | duration: 2000 |
| | | }); |
| | | } |
| | | }) |
| | | } |
| | | let driverName="" |
| | | let driverIdcard="" |
| | | let supercargoInfo='' |
| | | driverName = this.driverList.map((item, index) => { |
| | | return item.driverName; |
| | | }).join(","); |
| | | driverIdcard = this.driverList.map((item, index) => { |
| | | return item.driverIdcard; |
| | | }).join(","); |
| | | supercargoInfo = this.supercargoList.map((item, index) => { |
| | | return item.driverName+ '|'+item.driverIdcard+"|"+item.driverPhone |
| | | }).join(","); |
| | | if(this.tranSportForm.expirationTime){ |
| | | this.tranSportForm.expirationTime=this.tranSportForm.expirationTime.slice(0,16) |
| | | } |
| | | this.$reqPost('addJcroadtransport', { |
| | | userId:this.registerFormModel.customerid, |
| | | ...this.tranSportForm, |
| | | driverName:driverName, |
| | | driverIdcard:driverIdcard, |
| | | supercargoInfo:supercargoInfo |
| | | }, 'json').then(res => { |
| | | this.editTranShow = false; |
| | | if (res.code == 0) { |
| | | this.$u.toast('修改成功'); |
| | | this.init(); |
| | | } else { |
| | | uni.showToast({ |
| | | title: res.msg, |
| | | icon: 'none', |
| | | duration: 2000 |
| | | }); |
| | | } |
| | | }) |
| | | }) |
| | | }, |
| | | // 修改证件信息 |
| | | updateDoc(){ |
| | | this.$reqPost('saveDriverDocs', { |
| | | userId:this.registerFormModel.customerid, |
| | | idCardImg:this.registerFormModel.cardImg1+","+this.registerFormModel.cardImg2, |
| | | expirationTimeIdcard:this.registerFormModel.expirationTimeIdcard.slice(0,16), |
| | | drivingImg:this.registerFormModel.drivingImg, |
| | | expirationTimeDriving:this.registerFormModel.expirationTimeDriving.slice(0,16), |
| | | driverImg:this.registerFormModel.driverImg, |
| | | expirationTimeDriver:this.registerFormModel.expirationTimeDriver.slice(0,16), |
| | | tradeQualificationImg:this.registerFormModel.tradeQualificationImg, |
| | | expirationTimeTradequalification:this.registerFormModel.expirationTimeTradequalification, |
| | | }, 'json').then(res => { |
| | | this.editDocShow = false; |
| | | if (res.code == 0) { |
| | | this.$u.toast('修改成功'); |
| | | this.init(); |
| | | } else { |
| | | uni.showToast({ |
| | | title: res.msg, |
| | | icon: 'none', |
| | | duration: 2000 |
| | | }); |
| | | } |
| | | }) |
| | | }, |
| | | // 修改用户信息 |
| | |
| | | .validate() |
| | | .then(res => { |
| | | this.$reqPost('updateUser', this.editUserInfo, 'json').then(res => { |
| | | console.log('更新数据', res); |
| | | this.editDriverPopupShow = false; |
| | | if (res.code == 0) { |
| | | this.$u.toast('修改成功'); |
| | |
| | | }, |
| | | selectedPrintStyleHandle(val) { |
| | | this.selectedPrintStyle = val |
| | | } |
| | | }, |
| | | findNameById(tree, idArr) { |
| | | let result = []; |
| | | function traverse(node, idArr) { |
| | | if (!node) return; |
| | | if (idArr.includes(node.id)) { |
| | | result.push({name:node.productName,id:node.id}); |
| | | } |
| | | if (node.children && node.children.length > 0) { |
| | | node.children.forEach(child => { |
| | | traverse(child, idArr); |
| | | }); |
| | | } |
| | | } |
| | | tree.forEach(node => { |
| | | traverse(node, idArr); |
| | | }); |
| | | return result; |
| | | }, |
| | | // 打开产品表 |
| | | treeOpen() { |
| | | this.$refs.tkitree._show(); |
| | | }, |
| | | treeClose() { |
| | | this.$refs.tkitree._hide(); |
| | | }, |
| | | treeChooseValue(v) { |
| | | this.$refs.tkitree._hide(); |
| | | let data=this.findNameById(this.productData, v)[0] |
| | | this.tranSportForm.productId = data.id; |
| | | this.productName=data.name |
| | | }, |
| | | // 获取客户 |
| | | getShipToList() { |
| | | this.$reqGet('getShipToList', { deptId: this.editUserInfo.deptId, productName: this.editUserInfo.productName }) |
| | | .then(res => { |
| | | if (res.code == 0) { |
| | | this.customerNameList = res.data |
| | | }else { |
| | | this.$u.toast('加载失败') |
| | | } |
| | | }) |
| | | }, |
| | | selfDeliver() { |
| | | this.selfDeliverShow = true |
| | | }, |
| | | selfDeliverClose() { |
| | | this.selfDeliverShow = false |
| | | }, |
| | | selfDeliverOpen() { |
| | | this.selfDeliverShow = true |
| | | }, |
| | | selectCustomer(value) { |
| | | this.tranSportForm.customerId = value.customerId |
| | | this.customerName = value.customerName |
| | | this.selfDeliverShow = false |
| | | }, |
| | | addSupercar(){ |
| | | this.supercargoList.push({ |
| | | driverName:"", |
| | | driverIdcard:"", |
| | | driverPhone:"" |
| | | }) |
| | | }, |
| | | addDriver(){ |
| | | this.driverList.push({ |
| | | driverName:"", |
| | | driverIdcard:"" |
| | | }) |
| | | }, |
| | | deleteSupercar(){ |
| | | this.supercargoList.splice(this.supercargoList.length - 1, 1) |
| | | }, |
| | | deleteDriver(){ |
| | | this.driverList.splice(this.driverList.length - 1, 1); |
| | | }, |
| | | } |
| | | }; |
| | | </script> |
| | |
| | | margin-right: vww(6); |
| | | } |
| | | } |
| | | .process-tran{ |
| | | width: 300rpx; |
| | | height: 50rpx; |
| | | margin: 0 auto; |
| | | position: fixed; |
| | | top: 390rpx; |
| | | left: 37rpx; |
| | | display: flex; |
| | | align-items: center; |
| | | |
| | | .state-text { |
| | | margin-right: vww(6); |
| | | } |
| | | } |
| | | |
| | | .car-type { |
| | | position: fixed; |
| | | top: 284rpx; |
| | | right: 70rpx; |
| | | right: 20rpx; |
| | | width: 100%; |
| | | height: 50rpx; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: flex-end; |
| | | } |
| | | .tran-type{ |
| | | position: fixed; |
| | | top: 390rpx; |
| | | right: 20rpx; |
| | | width: 100%; |
| | | height: 50rpx; |
| | | display: flex; |
| | |
| | | } |
| | | |
| | | .car-information { |
| | | margin-top: 30rpx; |
| | | width: 100%; |
| | | position: relative; |
| | | @include flex justify-content: center; |
| | | .roadTransportCertificate{ |
| | | width: 690rpx; |
| | | background: #ffffff; |
| | | box-shadow: 0rpx 0rpx 14rpx 0rpx rgba(73, 120, 240, 0.14), 0rpx 7rpx 45rpx 0rpx rgba(73, 120, 240, 0.12); |
| | | border-radius: 20rpx; |
| | | .information-body { |
| | | width: 636rpx; |
| | | margin: vww(15) vww(14); |
| | | @include flex flex-direction: column; |
| | | .certificate { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | width: 636rpx; |
| | | height: 90rpx; |
| | | border-bottom: 1rpx solid #f0f1f6; |
| | | .certificate-left{ |
| | | margin-left: 20rpx; |
| | | } |
| | | .certificate-right{ |
| | | margin-right: 20rpx; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .information-main { |
| | | width: 690rpx; |
| | |
| | | width: 636rpx; |
| | | margin: vww(15) vww(14); |
| | | @include flex flex-direction: column; |
| | | |
| | | .car-img { |
| | | height: 246rpx; |
| | | width: 100%; |
| | |
| | | } |
| | | } |
| | | } |
| | | .superList{ |
| | | margin: 10rpx; |
| | | padding: 10rpx; |
| | | border: 1px solid #f0f1f6; |
| | | } |
| | | .adddelete{ |
| | | display: flex; |
| | | justify-content: space-around; |
| | | margin: 10rpx; |
| | | } |
| | | } |
| | | </style> |