1.磅房详情(完成)
2.入场申请报错(完成)
3.签到(完成)
4.日志(完成)
5.发运计划详情(完成)
9个文件已修改
336 ■■■■ 已修改文件
api/publicInterface.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/request.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/customer-page/customer-index/customer-index.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/customer-page/customer-index/fayunPlanDetails/fayunPlanDetails.vue 141 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/appointment/appointment.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/driver-index/bill-of-lading-details/bill-of-lading-details.vue 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/driver-index/bill-of-lading-details/punchTheClock/punchTheClock.vue 79 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/login/userPassword.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/publicInterface.js
@@ -4,7 +4,7 @@
// const BaseUrl = "http://192.168.3.159:9999/";
import {BaseUrl as wrBaseUrl} from '@/api/request.js'
// const BaseUrl = "http://192.168.0.120:9999"
const BaseUrl = "http://192.168.3.130:9999"
const BaseUrl = "http://192.168.110.101:9999"
// 登录
// function apiLogin({
api/request.js
@@ -80,8 +80,8 @@
// const BaseUrl = "http://192.168.0.120:9997"
// const webSocketUrl = "ws://192.168.0.120:9997/wrzs/ws/info"
const BaseUrl = "http://192.168.3.130:9997";
const webSocketUrl = "ws://192.168.3.130:9997/wrzs/ws/info"
const BaseUrl = "http://192.168.110.101:9997";
const webSocketUrl = "ws://192.168.110.101:9997/wrzs/ws/info"
// 请求拦截
const fetch = (url, opt) => {
pages/customer-page/customer-index/customer-index.vue
@@ -140,8 +140,14 @@
        // 提煤单详情
        cardBodyClick(name) {
            console.log('提煤单详情', name);
            let code = null;
            this.orderPlanData.forEach(item => {
                if (item.id == name) {
                    code = item.code;
                }
            });
            uni.navigateTo({
                url: `/pages/customer-page/customer-index/fayunPlanDetails/fayunPlanDetails?orderPlanId=${name}`
                url: `/pages/customer-page/customer-index/fayunPlanDetails/fayunPlanDetails?orderPlanId=${name}&code=${code}`
            });
        },
        // 转发
pages/customer-page/customer-index/fayunPlanDetails/fayunPlanDetails.vue
@@ -1,34 +1,74 @@
<template>
    <view class="fayunPlan">
        <view>
        <view class="fayunPlanBody">
            <combined-title title="领取情况"></combined-title>
            <view class="compDetails">
                <!-- <view class="comp">{{ orderPlanDetail.compName }}</view> -->
                <uni-table border stripe emptyText="暂无更多数据">
                    <uni-tr>
                        <uni-th align="left">转发总量</uni-th>
                        <uni-th align="left" width="200">转发总量</uni-th>
                        <uni-td align="left">{{ orderPlanDetail.fowardSum || 0 }}张</uni-td>
                    </uni-tr>
                    <uni-tr v-for="(item,index) in orderPlanDetail.huodaiList" :key="index">
                        <uni-th align="left">{{ item.huoDaiName }}</uni-th>
                    <uni-tr>
                        <uni-th align="left" width="200">领取总量</uni-th>
                        <uni-td align="left">{{ orderPlanDetail.fleetOrHuodaiNub || 0 }}张</uni-td>
                    </uni-tr>
                    <uni-tr v-for="(item, index) in orderPlanDetail.huodaiList" :key="index">
                        <uni-th align="left" width="200">{{ item.huoDaiName }}</uni-th>
                        <uni-td align="left">{{ item.fleetOrHuodaiNub }}张</uni-td>
                    </uni-tr>
                    <uni-tr v-for="(item,index) in orderPlanDetail.cheduiList" :key="index">
                        <uni-th align="left">{{item.cheduiName}}</uni-th>
                    <uni-tr v-for="(item, index) in orderPlanDetail.cheduiList" :key="index">
                        <uni-th align="left" width="200">{{ item.cheduiName }}</uni-th>
                        <uni-td align="left">{{ item.fleetOrHuodaiNub }}张</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">司机总领取</uni-th>
                        <uni-th align="left" width="200">司机总领取</uni-th>
                        <uni-td align="left">{{ orderPlanDetail.sijiSum || 0 }}张</uni-td>
                    </uni-tr>
                </uni-table>
            </view>
            <view class="compDetails">
                <view class="comp">预约情况</view>
            <combined-title title="提煤单详情"></combined-title>
            <view class="compDetails" v-for="(item, index) in orderPlanDetail.yyDailyList" :key="index">
                <uni-table border stripe emptyText="暂无更多数据">
                    <uni-tr v-for="(item, index) in orderPlanDetail.yyDailyList">
                        <uni-td align="left">{{ orderPlanDetail.yyDailyList }}</uni-td>
                        <uni-td align="left">{{ orderPlanDetail.yyDailyList }}张</uni-td>
                    <uni-tr>
                        <uni-th align="left">提煤单编号</uni-th>
                        <uni-td align="left">{{ item.code || '' }}</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">提煤单状态</uni-th>
                        <uni-td align="left">{{ coalStatus[item.status] }}</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">车牌号</uni-th>
                        <uni-td align="left">{{ item.carNo || '' }}</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">入场时间</uni-th>
                        <uni-td align="left">{{ item.inTime || '' }}</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">出场时间</uni-th>
                        <uni-td align="left">{{ item.outTime || '' }}</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">皮重</uni-th>
                        <uni-td align="left">{{ item.skin || 0 }}</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">毛重</uni-th>
                        <uni-td align="left">{{ item.hair || 0 }}</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">净重</uni-th>
                        <uni-td align="left">{{ item.clean || 0 }}</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">订单编号</uni-th>
                        <uni-td align="left">{{ orderCode || '' }}</uni-td>
                    </uni-tr>
                    <uni-tr>
                        <uni-th align="left">订单剩余量</uni-th>
                        <uni-td align="left">{{ item.allowance || 0 }}</uni-td>
                    </uni-tr>
                </uni-table>
            </view>
@@ -37,20 +77,27 @@
</template>
<script>
import combinedTitle from '@/components/combined-title/combined-title.vue';
export default {
    components: {
        combinedTitle
    },
    onLoad(value) {
        console.log('页面加载', value);
        if (value.orderPlanId) {
        if (value.orderPlanId && value.code) {
            this.orderPlanId = value.orderPlanId;
            this.orderCode = value.code;
        }
    },
    data() {
        return {
            orderPlanId: null,
            orderPlanDetail: {}
            orderCode: null,
            orderPlanDetail: {},
            coalStatus: ['领取', '预约', '签到', '入场', '称皮', '称毛', '离场', '入磅房', '出磅房', '入煤场', '出煤仓']
        };
    },
    onShow(){
    onShow() {
        this.init();
    },
    methods: {
@@ -59,8 +106,14 @@
        },
        // 获取发运计划详情
        GetOrderPlanDetail() {
            uni.showLoading({
                title: '加载中...'
            });
            this.$reqGet('xiangqingList', { orderPlanId: this.orderPlanId }).then(res => {
                this.orderPlanDetail = res.data;
                if (res.code == 0) {
                    this.orderPlanDetail = res.data;
                    uni.hideLoading();
                }
            });
        }
    }
@@ -73,35 +126,43 @@
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    .compDetails {
    .fayunPlanBody {
        width: 94%;
        margin: vww(24) auto 0 auto;
        .comp {
            font-size: vww(16);
            font-weight: 400;
            padding: 0 vww(10);
            height: vww(40);
            line-height: vww(40);
            border: 1px solid #ebeef5;
            border-bottom: none;
            background-color: #f5f5f5;
        margin: 0 auto;
        .compDetails {
            width: 94%;
            margin: vww(24) auto 0 auto;
            .comp {
                font-size: vww(16);
                font-weight: 400;
                padding: 0 vww(10);
                height: vww(40);
                line-height: vww(40);
                border: 1px solid #ebeef5;
                border-bottom: none;
                background-color: #f5f5f5;
            }
        }
        // 表格样式
        .uni-table {
            .uni-table-tr {
                padding: 0;
                // .uni-table-th {
                //     height: vww(40);
                //     line-height: vww(40);
                //     padding: vww(5) vww(10);
                //     color: #111111;
                //     font-weight: 300;
                //     background: #f5f5f5;
                // }
                border:vww(1) solid #c6c6c6;
                .uni-table-th {
                    font-size: vww(14);
                    height: vww(30);
                    line-height: vww(30);
                    padding: vww(5) vww(10);
                    color: #111111;
                    font-weight: 500;
                    background: #e2e2e2;
                }
                .uni-table-td {
                    font-size: vww(16);
                    font-weight: 300;
                    height: vww(40);
                    line-height: vww(40);
                    font-size: vww(14);
                    font-weight: 400;
                    height: vww(30);
                    line-height: vww(30);
                    padding: vww(5) vww(10);
                    color: #111111;
                }
pages/driver-page/appointment/appointment.vue
@@ -28,11 +28,13 @@
    },
    data() {
        return {
            // 预约列表请求参数
            yuYueListParams: {
                filedId: '',
                deptId: '',
                sendDate: ''
            },
            // 预约请求参数
            yuYuePostParams: {
                takeCoalId: null,
                yuYueId: null
pages/driver-page/driver-index/bill-of-lading-details/bill-of-lading-details.vue
@@ -1,6 +1,24 @@
<template>
    <view class="bill-of-lading-details">
        <view class="bangDanMessage"><text>磅单信息</text></view>
        <view class="bangDanMessage">
            <view class="">
                <u--text align="center" size="35" bold plain text="主色" :text="'客户:' + coalDetailsData.customerName"></u--text>
                <u--text align="center" size="35" bold plain text="主色" :text="'矿厂:' + coalDetailsData.deptName"></u--text>
            </view>
            <view class="">
                <u--text align="center" size="35" bold plain text="主色" :text="'皮重:' + coalDetailsData.skin"></u--text>
                <u--text align="center" size="35" bold plain text="主色" :text="'毛重:' + coalDetailsData.hair"></u--text>
                <u--text align="center" size="35" bold plain text="主色" :text="'净重:' + coalDetailsData.clean"></u--text>
            </view>
            <view class="">
                <u--text align="center" size="35" bold plain text="主色" :text="'磅单类型:' + coalDetailsData.orderTye"></u--text>
                <u--text align="center" size="35" bold plain text="主色" :text="'状态:' + coalStatus[coalDetailsData.status]"></u--text>
            </view>
            <u--text align="center" size="35" bold plain text="主色" :text="'煤场:' + coalDetailsData.filedName"></u--text>
            <u--text align="center" size="35" bold plain text="主色" :text="'发运时间:' + coalDetailsData.sendDate"></u--text>
            <u--text align="center" size="35" bold plain text="主色" :text="'提煤单编号:' + coalDetailsData.code"></u--text>
            <u--text align="center" size="35" bold plain text="主色" :text="'订单编号:' + coalDetailsData.orderCode"></u--text>
        </view>
        <view class="timeLine" style="font-size: 16rpx;">
            <u--text type="primary" size="30" plain text="主色" v-for="(item, index) in dayRZ" :key="index" :text="item.taskStatusDes"></u--text>
        </view>
@@ -39,7 +57,13 @@
                tmId: '',
                tmCode: '',
                carNo: ''
            }
            },
            getYuYueDataParams: {
                deptId: '',
                filedId: '',
                sendDate: ''
            },
            coalStatus: ['领取', '预约', '签到', '入场', '称皮', '称毛', '离场', '入磅房', '出磅房', '入煤场', '出煤仓'] // 状态
        };
    },
    onShow() {
@@ -63,11 +87,16 @@
            this.$reqGet('getTakeCoal', { takeCoalId: this.orderPlanId }).then(res => {
                if (res.code == 0) {
                    this.coalDetailsData = res.data[0];
                    // 获取所在磅房参数赋值
                    this.getWeightHouseObj.deptId = this.coalDetailsData.deptId;
                    this.getWeightHouseObj.filedId = this.coalDetailsData.filedId;
                    this.getWeightHouseObj.tmId = this.coalDetailsData.id;
                    this.getWeightHouseObj.tmCode = this.coalDetailsData.code;
                    this.getWeightHouseObj.carNo = this.coalDetailsData.carNo;
                    // 获取入场申请操作后的预约列表的参数
                    this.getYuYueDataParams.deptId = this.coalDetailsData.deptId;
                    this.getYuYueDataParams.filedId = this.coalDetailsData.filedId;
                    this.getYuYueDataParams.sendDate = this.coalDetailsData.sendDate;
                }
            });
        },
@@ -87,17 +116,6 @@
        },
        // 签到
        arriveClick() {
            // 获取位置信息
            // wx.getFuzzyLocation({
            //  type: 'wgs84',
            //  success (res) {
            //    const latitude = res.latitude
            //    const longitude = res.longitude
            //  }
            // })
            uni.navigateTo({
                url: `/pages/driver-page/driver-index/bill-of-lading-details/punchTheClock/punchTheClock?orderPlanId=${this.orderPlanId}`
            });
@@ -105,7 +123,9 @@
        // 入场申请
        rcsqClick() {
            uni.navigateTo({
                url: `/pages/driver-page/appointment/appointment?takeCoalId=${this.orderPlanId}&type=入场申请&yyId=${this.yyId}`
                url: `/pages/driver-page/appointment/appointment?type=入场申请&takeCoalId=${this.orderPlanId}&yyId=${this.yyId}&filedId=${this.getYuYueDataParams.filedId}&deptId=${
                    this.getYuYueDataParams.deptId
                }&sendDate=${this.getYuYueDataParams.sendDate}`
            });
        },
        // 呼叫客服
@@ -121,12 +141,14 @@
        cengZhongClick() {
            this.$reqGet('getWeighHouse', this.getWeightHouseObj).then(res => {
                console.log(res, '获取磅房');
                if(res.code == 0){
                if (res.code == 0) {
                    uni.navigateTo({
                        url: `/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice?takeCoalId=${this.orderPlanId}&sceneId=${res.data.id}&gateCameraId=${res.data.lastEquipmentId}&gateCameraCode=${res.data.lastEquipmentCode}&weighHouseCode=${res.data.code}`
                        url: `/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice?takeCoalId=${this.orderPlanId}&sceneId=${res.data.id}&gateCameraId=${
                            res.data.lastEquipmentId
                        }&gateCameraCode=${res.data.lastEquipmentCode}&weighHouseCode=${res.data.code}`
                    });
                }else{
                    this.$u.toast('未在磅房,请前往磅房后再试!!')
                } else {
                    this.$u.toast('未在磅房,请前往磅房后再试!!');
                }
            });
        }
@@ -141,22 +163,32 @@
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    .bangDanMessage {
        font-size: vww(20);
        font-weight: 500;
        border: vww(2) solid #dddddd;
        border-radius: vww(20);
        margin: vww(20);
        margin-bottom: vww(10);
        flex: 1;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        height: 40%;
        box-sizing: border-box;
        overflow-y: overlay; //行为与 auto 相同,但是滚动条绘制在内容之上,而不是占据空间。
        .u-text {
            margin-bottom: vww(5) !important;
        }
        view {
            margin-bottom: vww(5);
        }
        view:nth-of-type(1) {
            display: flex;
        }
        view:nth-of-type(2) {
            display: flex;
        }
        view:nth-of-type(3) {
            display: flex;
        }
    }
    .timeLine {
        height: 45%;
        height: 25%;
        margin: vww(20);
        margin-top: vww(10);
        margin-bottom: vww(10);
pages/driver-page/driver-index/bill-of-lading-details/punchTheClock/punchTheClock.vue
@@ -3,8 +3,8 @@
    <view class="punchTheClock">
        <!-- 打卡按钮 -->
        <view class="punchTheClock_container">
            <view class="punchTheClock_btn">
                <view class="">
            <view class="punchTheClock_btn" @click="arrive">
                <view>
                    <p>签到/打卡</p>
                    <p>{{ nowTime }}</p>
                </view>
@@ -20,31 +20,84 @@
<script>
import { todayDate } from '@/utils/util.js';
export default {
    onLoad(params){
        if(params.orderPlanId){
            this.orderPlanId = params.orderPlanId
    onLoad(params) {
        if (params.orderPlanId) {
            this.punchTheClockObj.id = params.orderPlanId;
        }
    },
    data() {
        return {
            nowTime: '',
            orderPlanId:null
            punchTheClockObj: {
                latitude: null,
                longitude: null,
                id: null
            }
        };
    },
    onShow() {
        this.todayDate();
        // 获取权限信息
        wx.getSetting({
            success(res) {
                if (!res.authSetting['scope.userFuzzyLocation']) {
                    wx.authorize({
                        scope: 'scope.userFuzzyLocation',
                        success(res) {
                            console.log(res);
                            if (res.errMsg == 'authorize:ok') {
                                // 获取位置信息
                                this.getFuzzyLocation();
                            }
                        }
                    });
                } else {
                    this.getFuzzyLocation();
                }
            },
            fail() {
                console.log('获取失败');
            }
        });
    },
    methods: {
        getFuzzyLocation() {
            wx.getFuzzyLocation({
                type: 'wgs84',
                success(res) {
                    console.log(res, '获取位置');
                    this.punchTheClockObj.latitude = res.latitude;
                    this.punchTheClockObj.longitude = res.longitude;
                }
            });
        },
        todayDate() {
            setInterval(() => {
                this.nowTime = todayDate('hms');
            }, 1000);
        },
        // 签到
        arrive(){
            this.$reqPost('arrive', { id: this.orderPlanId }, 'params').then(res => {
                console.log(res, '签到');
            });
        arrive() {
            if (this.punchTheClockObj.latitude && this.punchTheClockObj.longitude) {
                this.$reqPost('arrive', this.punchTheClockObj, 'params').then(res => {
                    console.log(res, '签到');
                    if (res.code == 0) {
                        this.$u.toast('签到成功');
                        setTimeout(() => {
                            uni.navigateBack(
                                {
                                    delta: 1
                                },
                                500
                            );
                        });
                    } else {
                        this.$u.toast(res.data ? res.data : '签到失败');
                    }
                });
            } else {
                this.$u.toast('暂获取不到到当前位置');
            }
        }
    }
};
@@ -69,12 +122,12 @@
            align-items: center;
        }
        .punchTheClock_text {
            display:flex;
            display: flex;
            justify-content: center;
            margin-top: vww(20);
            color: #b8b8b8;
            .text{
                margin-left:vww(5);
            .text {
                margin-left: vww(5);
            }
        }
    }
pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue
@@ -25,13 +25,13 @@
        <view class="two">
            <p>订单编号:{{ weighList.code || '' }}</p>
            <p>订单类型:{{ weighList.orderTye || '' }}</p>
            <p>订单余量:{{ weighList.orderSurplus }}</p>
            <p>订单余量:{{ weighList.orderSurplus || 0 }}</p>
            <p>皮重:{{ weighList.skin || 0 }}</p>
            <p>毛重:{{ weighList.hair || 0 }}</p>
            <p>净重:{{ weighList.skin == 0 && weighList.hair == 0 ? weighList.clean : weighList.skin != 0 ? realTimeWeigh - weighList.skin : weighList.hair - realTimeWeigh }}</p>
            <p>煤种名称:{{ weighList.coalName }}</p>
            <p>单位名称:{{ weighList.deptName }}</p>
            <p>矿场名称:{{ weighList.filedName }}</p>
            <p>煤种名称:{{ weighList.coalName || '' }}</p>
            <p>单位名称:{{ weighList.deptName || '' }}</p>
            <p>矿场名称:{{ weighList.filedName || '' }}</p>
        </view>
        <view class="three">
            <!-- 外销订单成皮时,返回加减吨按钮置灰。称毛时可用.外购订单,不出现返回加减吨的按钮 -->
@@ -162,7 +162,7 @@
        addAndSubtractCoal() {
            this.$reqPost('addAndSubtractCoal', { deptId: this.weighData.deptId, sceneId: this.weighData.sceneId, carNo: this.weighData.carNo }, 'json').then(res => {
                if (res.code == 0) {
                    this.$u.toast('操作成功,即将返回上一页')
                    this.$u.toast('操作成功,即将返回上一页');
                    setTimeout(() => {
                        uni.navigateBack({
                            delta: 1
pages/login/userPassword.vue
@@ -43,8 +43,8 @@
    },
    data() {
        return {
            username: 'appuser', // 客户
            // username: '18805080506',// 王楠(司机)
            // username: '12222222222', // 客户
            username: '13333333332',// 司机
            password: '123456',
            remember: true,
            baseUrl: ''