qingyiay
2023-05-17 05273ace3da665cb10c36ca0dac4413a8284302a
增加部分限制,增加新功能
8个文件已修改
289 ■■■■ 已修改文件
pages/customer-page/customer-my/faYunstatistics/faYunstatistics.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/driver-index/bill-of-lading-details/bill-of-lading-details.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/driver-index/bill-of-lading-details/punchTheClock/punchTheClock.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/driver-index/driver-index.vue 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/drvier-my/drvier-my.vue 184 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/freight-forwarder-page/freightForwarder-index/freightForwarder-index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/public-page/mapRoute/mapRoute.vue 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/register/register.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/customer-page/customer-my/faYunstatistics/faYunstatistics.vue
@@ -616,7 +616,9 @@
    width: vww(40);
}
.scroll-Y {
    height: 900rpx;
    height: 1000rpx;
    position: relative;
    top: 20rpx;
}
.utils-button {
    width: 94%;
@@ -824,7 +826,7 @@
                            font-weight: 400;
                            color: #f81414;
                            position: absolute;
                            right: -10rpx;
                            right: 12rpx;
                            display: flex;
                            flex-wrap: wrap;
                        }
@@ -921,7 +923,7 @@
        }
    }
    .filter-main {
        height: 950rpx;
        min-height: 950rpx;
        width: 100%;
        display: flex;
        flex-direction: column;
pages/driver-page/driver-index/bill-of-lading-details/bill-of-lading-details.vue
@@ -6,7 +6,8 @@
                <view class="cutomer-name" v-else>客户:{{ coalDetailsData.customerName || '' }}</view>
                <view class="fild-name">
                    <view class="">矿场:{{ coalDetailsData.deptName || '暂无' }}</view>
                    <view class="">煤场:{{ coalDetailsData.filedName || '暂无' }}</view>
                    <view class="" v-if="orderType == '转入' || orderType == '转出'">煤场:{{ coalDetailsData.toFiledName || '' }}</view>
                    <view class="" v-else>煤场:{{ coalDetailsData.filedName || '暂无' }}</view>
                </view>
            </view>
            <view class="block-information">
@@ -55,8 +56,8 @@
        <view class="utilsBox">
            <view class="utils_chil utils_chilTop">
                <view class="top-button">
                    <u-button text="签到" type="primary" plain @click="arriveClick" shape="circle"></u-button>
                    <u-button text="入场申请" type="primary" plain @click="rcsqClick" shape="circle"></u-button>
                    <u-button text="签到" type="primary" plain @click="arriveClick" shape="circle" :disabled="coalDetailsData.status >= 2"></u-button>
                    <u-button text="入场申请" type="primary" plain @click="rcsqClick" shape="circle" :disabled="coalDetailsData.status >= 3"></u-button>
                </view>
                <view class="bottom-button">
                    <u-button text="放空" type="primary" plain @click="evacuation" throttleTime="500" shape="circle" :disabled="isEvacuation || isapproach"></u-button>
pages/driver-page/driver-index/bill-of-lading-details/punchTheClock/punchTheClock.vue
@@ -9,10 +9,10 @@
                    <p>{{ nowTime }}</p>
                </view>
            </view>
            <view class="punchTheClock_text">
            <!-- <view class="punchTheClock_text">
                <u-icon name="map" color="#51e30d" size="30"></u-icon>
                <text>未进入矿场区域</text>
            </view>
            </view> -->
        </view>
    </view>
</template>
pages/driver-page/driver-index/driver-index.vue
@@ -6,6 +6,7 @@
                <view class="wait-collection" style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/diverbanner.png') no-repeat;background-size:contain"></view>
                <view class="collection-form">
                    <view class="collection-form-item" v-for="(item, index) in driverBillOfLoadingData.list1" :key="index">
                        <view class="main-divider"></view>
                        <view class="first-line">
                            <view class="main-information">
                                <view class="sign">装</view>
@@ -14,7 +15,6 @@
                                    <text v-else-if="item.orderType == '外购' || item.orderType == '内购' || item.orderType == '转入'">{{ item.customerNameCopy }}</text>
                                </view>
                            </view>
                            <view class="main-divider"></view>
                            <view class="point-number">
                                <text class="residue">{{ item.carNum - item.taskNum }}</text>
                                <text>/{{ item.carNum }}</text>
@@ -62,6 +62,7 @@
                    <view class="appointment-form">
                        <view class="appointment-form-item" v-for="(item, index) in driverBillOfLoadingData.list3" :key="index">
                            <view class="main-divider"></view>
                            <view class="first-line">
                                <view class="main-information">
                                    <view class="sign">装</view>
@@ -70,12 +71,11 @@
                                        <text v-else-if="item.orderType == '外购' || item.orderType == '内购' || item.orderType == '转入'">{{ item.customerName }}</text>
                                    </view>
                                </view>
                                <view class="main-divider"></view>
                                <view class="map-icon" @click.stop="skipMap(item)">
                                    <view><u-icon name="map" color="#4978F0" size="40"></u-icon></view>
                                </view>
                            </view>
                            <view class="second-line">
                            <view class="first-extra">
                                <view class="main-information">
                                    <view class="sign">卸</view>
                                    <view class="filedname exceedHide">
@@ -114,6 +114,7 @@
                    ></u-empty>
                    <view class="appointment-form">
                        <view class="appointment-form-item" v-for="(item, index) in driverBillOfLoadingData.list2" :key="index" @click="list3CardIconClick(item)">
                            <view class="main-divider"></view>
                            <view class="first-line">
                                <view class="main-information">
                                    <view class="sign">装</view>
@@ -122,7 +123,6 @@
                                        <text v-else-if="item.orderType == '外购' || item.orderType == '内购' || item.orderType == '转入'">{{ item.customerName }}</text>
                                    </view>
                                </view>
                                <view class="main-divider"></view>
                                <view class="map-icon" @click.stop="skipMap(item)">
                                    <view><u-icon name="map" color="#4978F0" size="40"></u-icon></view>
                                </view>
@@ -383,6 +383,14 @@
                display: flex;
                flex-direction: column;
                justify-content: space-around;
                .main-divider {
                    width: 560rpx;
                    height: 2rpx;
                    background: #e3e3e3;
                    position: absolute;
                    top: 122rpx;
                    left: 128rpx;
                }
                .first-line {
                    width: 94%;
                    height: vww(68);
@@ -407,14 +415,6 @@
                            color: #ffffff;
                            margin-right: vww(20);
                        }
                    }
                    .main-divider {
                        width: 548rpx;
                        height: 1rpx;
                        background: #e3e3e3;
                        position: absolute;
                        top: 115rpx;
                        left: vww(50);
                    }
                    .point-number {
                        position: absolute;
@@ -572,6 +572,15 @@
                @include formItem;
                height: vww(191);
                justify-content: space-between;
                overflow: hidden;
                .main-divider {
                    width: 560rpx;
                    height: 1rpx;
                    background: #e3e3e3;
                    position: absolute;
                    top: 122rpx;
                    left: 128rpx;
                }
                .first-line {
                    position: relative;
                    @include firstLine;
@@ -581,7 +590,6 @@
                        display: flex;
                        justify-content: flex-start;
                        align-items: center;
                        .sign {
                            width: vww(28);
                            height: vww(28);
@@ -595,13 +603,27 @@
                            margin-right: vww(20);
                        }
                    }
                    .main-divider {
                        width: 548rpx;
                        height: 1rpx;
                        background: #e3e3e3;
                        position: absolute;
                        top: vww(40);
                        left: vww(50);
                }
                .first-extra {
                    @include firstLine;
                    .main-information {
                        width: 100%;
                        height: vww(28);
                        display: flex;
                        justify-content: flex-start;
                        align-items: center;
                        .sign {
                            width: vww(28);
                            height: vww(28);
                            line-height: vww(28);
                            text-align: center;
                            background: url('https://mx.jzeg.cn:9095/appimg/image/banner/redblock.png') no-repeat;
                            background-size: contain;
                            font-size: 30rpx;
                            font-weight: 400;
                            color: #ffffff;
                            margin-right: vww(20);
                        }
                    }
                }
                .second-line {
pages/driver-page/drvier-my/drvier-my.vue
@@ -145,18 +145,50 @@
            <u-popup :show="editDriverPopupShow" mode="bottom" @close="editDriverPopupClose" @open="editDriverPopupOpen" :closeable="true">
                <combined-title title="修改个人信息" style="margin-left:20rpx"></combined-title>
                <view class="editDriverPopup-container-box">
                    <u--form labelPosition="left" :model="editUserInfo" ref="form1">
                        <u-form-item labelWidth="20%" label="姓名" ref="item1"><u--input v-model="editUserInfo.name" border="none" inputAlign="left"></u--input></u-form-item>
                        <u-form-item labelWidth="20%" label="身份证号" ref="item1"><u--input v-model="editUserInfo.idCard" border="none" inputAlign="left"></u--input></u-form-item>
                        <u-form-item labelWidth="20%" label="手机号" ref="item1"><u--input v-model="editUserInfo.phone" border="none" inputAlign="left"></u--input></u-form-item>
                        <u-form-item labelWidth="20%" label="车牌号" ref="item1"><u--input v-model="editUserInfo.carNo" border="none" inputAlign="left"></u--input></u-form-item>
                        <u-form-item labelWidth="20%" label="体重" ref="item1"><u--input v-model="editUserInfo.weight" border="none" inputAlign="left"></u--input></u-form-item>
                        <u-form-item labelWidth="20%" label="车轴数" ref="item1"><u--input v-model="editUserInfo.axleNum" border="none" inputAlign="left"></u--input></u-form-item>
                        <u-form-item labelWidth="25%" label="车辆照片" ref="item1">
                            <u-upload :fileList="fileList1" @afterRead="afterRead" @delete="deletePic" name="1" multiple :maxCount="1" width="250" height="150"></u-upload>
                    <u--form labelPosition="left" :model="editUserInfo" ref="editRef">
                        <u-form-item labelWidth="20%" label="姓名" prop="name" required>
                            <u--input v-model="editUserInfo.name" border="none" inputAlign="left"></u--input>
                        </u-form-item>
                        <u-form-item labelWidth="25%" label="行驶证照片" ref="item1">
                            <u-upload :fileList="fileList2" @afterRead="afterRead" @delete="deletePic" name="2" multiple :maxCount="1" width="250" height="150"></u-upload>
                        <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 labelWidth="20%" label="手机号" prop="phone" required>
                            <u--input v-model="editUserInfo.phone" border="none" inputAlign="left"></u--input>
                        </u-form-item>
                        <u-form-item labelWidth="20%" label="车牌号" prop="carNo" required>
                            <u--input v-model="editUserInfo.carNo" border="none" inputAlign="left"></u--input>
                        </u-form-item>
                        <u-form-item labelWidth="20%" label="体重" prop="weight" required>
                            <u--input v-model="editUserInfo.weight" border="none" inputAlign="left" placeholder="体重以kg作为单位"></u--input>
                        </u-form-item>
                        <u-form-item labelWidth="20%" label="车轴数" prop="axleNum" required>
                            <u--input v-model="editUserInfo.axleNum" border="none" inputAlign="left"></u--input>
                        </u-form-item>
                        <u-form-item labelWidth="25%" label="车辆照片" @click="beforeRead" prop="carImg" required>
                            <u-upload
                                :fileList="fileList1"
                                @afterRead="afterRead"
                                @delete="deletePic"
                                name="1"
                                multiple
                                :maxCount="1"
                                width="250"
                                height="150"
                                :previewFullImage="true"
                            ></u-upload>
                        </u-form-item>
                        <u-form-item labelWidth="25%" label="行驶证照片" ref="item1" @click="beforeRead" prop="drivingImg" required>
                            <u-upload
                                :fileList="fileList2"
                                @afterRead="afterRead"
                                @delete="deletePic"
                                name="2"
                                multiple
                                :maxCount="1"
                                width="250"
                                height="150"
                                :previewFullImage="true"
                            ></u-upload>
                        </u-form-item>
                    </u--form>
                    <u-button text="提交" @click="updateUser" type="primary"></u-button>
@@ -172,6 +204,7 @@
<script>
import { customerId, userInfo, redirectLogin } from '@/utils/status';
import { BaseUrl } from '@/api/publicInterface.js';
import { mapMutations } from 'vuex';
export default {
    data() {
        return {
@@ -191,6 +224,94 @@
                weight: '',
                userId: ''
            },
            rules: {
                name: {
                    type: 'string',
                    required: true,
                    message: '请填写姓名',
                    trigger: ['blur', 'change']
                },
                idCard: [
                    {
                        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: '身份证号格式不正确'
                    }
                ],
                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']
                    }
                ],
                weight: {
                    type: 'number',
                    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']
                    }
                ],
                axleNum: [
                    {
                        transform(value) {
                            return Number(value);
                        },
                        validator: (rule, value, callback) => {
                            return value <= 10;
                        },
                        message: '请输入正确的车轴数',
                        trigger: ['change', 'blur']
                    }
                ],
                carImg: {
                    type: 'string',
                    required: true,
                    message: '请上传车辆图片',
                    trigger: ['blur', 'change']
                },
                drivingImg: {
                    type: 'string',
                    required: true,
                    message: '请上传行驶证照片',
                    trigger: ['blur', 'change']
                }
            },
            src: '',
            fileList1: [],
            fileList2: [],
@@ -209,7 +330,11 @@
    onShow() {
        // this.init();
    },
    onReady() {
        this.$refs.editRef.setRules(this.rules);
    },
    methods: {
        ...mapMutations(['changeisUploadimg']),
        init() {
            this.getUserEntity();
        },
@@ -220,6 +345,18 @@
            this.$reqGet('getUserEntity').then(res => {
                uni.hideLoading();
                this.userInfo = res.data;
                uni.setStorageSync('carImg', this.userInfo.carImg);
                uni.setStorageSync('drivingImg', this.userInfo.drivingImg);
                if (this.fileList1.length == 0) {
                    this.fileList1.push({
                        url: `${BaseUrl}${this.userInfo.carImg}`
                    });
                }
                if (this.fileList2.length == 0) {
                    this.fileList2.push({
                        url: `${BaseUrl}${this.userInfo.drivingImg}`
                    });
                }
                Object.keys(this.editUserInfo).map(item => {
                    if (res.data[item]) {
                        this.editUserInfo[item] = res.data[item];
@@ -243,8 +380,12 @@
                this.previewImageShow = true;
            });
        },
        beforeRead() {
            this.changeisUploadimg(true);
        },
        // 删除
        deletePic(event) {
            this.changeisUploadimg(true);
            this[`fileList${event.name}`].splice(event.index, 1);
        },
        // 新增图片
@@ -267,7 +408,7 @@
                    1,
                    Object.assign(item, {
                        status: 'success',
                        message: '',
                        message: '上传成功',
                        url: result
                    })
                );
@@ -284,11 +425,14 @@
                    //     user: 'test'
                    // },
                    success: res => {
                        resolve(JSON.parse(res.data).data.url);
                        if (num == 1) {
                            this.editUserInfo.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.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}`);
                        }
                    }
                });
@@ -314,6 +458,14 @@
        },
        // 修改用户信息
        updateUser() {
            this.editUserInfo = {
                ...this.editUserInfo,
                carImg: uni.getStorageSync('carImg'),
                drivingImg: uni.getStorageSync('drivingImg')
            };
            this.$refs.editRef
                .validate()
                .then(res => {
            this.$reqPost('updateUser', this.editUserInfo, 'json').then(res => {
                console.log('更新数据', res);
                this.editDriverPopupShow = false;
@@ -327,6 +479,10 @@
                        duration: 2000
                    });
                }
                    });
                })
                .catch(err => {
                    this.$u.toast('修改失败');
            });
        },
        logout() {
@@ -533,7 +689,7 @@
    .editDriverPopup-container {
        .u-popup {
            .u-transition {
                height: 95%;
                height: 75%;
                .u-popup__content {
                    overflow: scroll !important;
                    .editDriverPopup-container-box {
pages/freight-forwarder-page/freightForwarder-index/freightForwarder-index.vue
@@ -398,12 +398,12 @@
                        }
                    }
                    .main-divider {
                        width: 548rpx;
                        width: 560rpx;
                        height: 1rpx;
                        background: #e3e3e3;
                        position: absolute;
                        top: 98rpx;
                        left: vww(50);
                        left: 122rpx;
                    }
                    .point-number {
                        position: absolute;
pages/public-page/mapRoute/mapRoute.vue
@@ -54,11 +54,11 @@
                    id: 0,
                    callout: {
                        content: '起点', //文本
                        color: '#000000', //文字颜色
                        fontSize: 14, //文本大小
                        borderRadius: 15, //边框圆角
                        color: '#ffffff', //文字颜色
                        fontSize: 10, //文本大小
                        borderRadius: 12, //边框圆角
                        borderWidth: '10',
                        bgColor: '#e51860', //背景颜色
                        bgColor: '#08b078', //背景颜色
                        display: 'ALWAYS' //常显
                    }
                },
@@ -72,10 +72,10 @@
                    callout: {
                        content: '终点', //文本
                        color: '#ffffff', //文字颜色
                        fontSize: 14, //文本大小
                        borderRadius: 15, //边框圆角
                        fontSize: 10, //文本大小
                        borderRadius: 12, //边框圆角
                        borderWidth: '10',
                        bgColor: '#e51860', //背景颜色
                        bgColor: '#fc645c', //背景颜色
                        display: 'ALWAYS' //常显
                    }
                }
@@ -171,7 +171,7 @@
                        _this.polyline = [
                            {
                                points: pl,
                                color: '#FF0000DD',
                                color: '#04b474',
                                width: 4,
                                arrowLine: true
                            }
pages/register/register.vue
@@ -162,7 +162,7 @@
                phone: [
                    {
                        required: true,
                        message: '此为必填字段',
                        message: '此项为必填项',
                        // blur和change事件触发检验
                        trigger: ['blur', 'change']
                    },
@@ -308,7 +308,7 @@
                    })
                    .catch(err => {
                        console.log('err', err);
                        uni.$u.toast('请规范输入内容');
                        this.$u.toast('请规范输入内容');
                    });
            } else {
                this.$u.toast('两次密码不一致');