qingyiay
2023-06-28 b119f9e139d8cabaa4d1a44227f76e691f84d761
提煤单详情页面修改,其他逻辑修改
5个文件已修改
1132 ■■■■ 已修改文件
api/globalApi.js 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/customer-page/customer-index/customer-index.vue 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/driver-index/bill-of-lading-details/bill-of-lading-details.vue 376 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue 612 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/globalApi.js
@@ -271,11 +271,16 @@
        url: '/wrzs/userOperation/weighList',
        method: 'GET'
    },
    // 加减煤
    // 加减煤 河钢
    addAndSubtractCoal: {
        url: '/wrzs/jcgatestate/repeatCheck',
        method: 'POST'
    },
    // 继续称重
    continueWeigh: {
        url: '/wrzs/jcgatestate/continueWeigh',
        method: 'POST'
    },
    // 获取所在磅房
    getWeighHouse: {
        url: '/wrzs/jccoalweighhouse/getWeighHouse',
pages/customer-page/customer-index/customer-index.vue
@@ -22,10 +22,10 @@
                            <view class="dispatch-receive">
                                <view class="dispatch">{{ item.filedName||'' }}</view>
                            </view>
                            <!-- <view class="point-number">
                            <view class="point-number">
                                <text class="residue">{{ item.cars2||'' }}</text>
                                <text>/{{ item.carNum ||''}}</text>
                            </view> -->
                            </view>
                        </view>
                        <view class="second-line">
                            <view class="coal-name">
@@ -38,18 +38,33 @@
                        <view class="third-line">
                            <view class="time-icon">
                                <view
                                    style="width: 24rpx;height: 24rpx;li ne-height: 24rpx;background: url('https://mx.jzeg.cn:9095/appimg/image/banner/carNO.png') no-repeat;background-size: cover">
                                </view>
                            </view>
                            <view class="car-num">{{ item.carNos||''}}</view>
                        </view>
                        <view class="third-line">
                            <view class="time-icon">
                                <view
                                    style="width: 24rpx;height: 24rpx;li ne-height: 24rpx;background: url('https://mx.jzeg.cn:9095/appimg/image/banner/clock.png') no-repeat;background-size: cover">
                                </view>
                            </view>
                            <view class="send-date">{{ item.sendDate }}</view>
                        </view>
                        <view class="fourth-line">
                            <!-- <view class="receive"
                                @click.stop="receiveClick(item)">
                                <view class="button-image">验质</view>
                            </view> -->
                            <view class="receive"
                                @click.stop="receiveClick(item)"
                                v-if="item.orderType!=='外购'">
                                <view class="button-image">领取</view>
                            </view>
                            <view class="forward"
                                @click.stop="forwardClick(index)">
                                @click.stop="forwardClick(item)"
                                v-if="item.orderType!=='外购'">
                                <view class="button-image">转发</view>
                            </view>
                            <view class="forward"
                                @click.stop="validateClick(index)"
                                v-else>
                                <view class="button-image">验质</view>
                            </view>
                        </view>
@@ -322,10 +337,16 @@
                });
            },
            // 转发
            forwardClick(index) {
            forwardClick(obj) {
                if (obj.cars2 == 0) return this.$u.toast('请先领取后再转发');
                uni
        .navigateTo({ url: `/pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail?index=${index}` });
            }
                    .navigateTo({ url: `/pages/public-page/forward/forward?orderPlanId=${obj.id}&carNumSurplus1=${obj.carNumSurplus1}&carNum=${obj.carNum}&cars2=${obj.cars2}` });
            },
            // 验质
            validateClick(index) {
                uni
                    .navigateTo({ url: `/pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail?index=${index}` });
            },
        }
    };
</script>
@@ -551,7 +572,7 @@
                    }
                    .third-line {
                        width: 40%;
                        width: 80%;
                        height: vww(30);
                        margin-left: vww(15);
                        display: flex;
@@ -567,6 +588,12 @@
                            font-weight: 300;
                            color: #515151;
                        }
                        .car-num {
                            white-space: nowrap;
                            overflow: hidden;
                            text-overflow: ellipsis;
                        }
                    }
                    .fourth-line {
pages/driver-page/driver-index/bill-of-lading-details/bill-of-lading-details.vue
@@ -2,66 +2,69 @@
    <view class="bill-of-lading-details">
        <view class="top-banner"
            style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/loadingbanner.png') no-repeat;background-size: cover;">
            <view class="top-information">
                <view class="cutomer-name"
                    v-if="orderType == '转入' || orderType == '转出'">煤场:{{ coalDetailsData.toFiledName || '' }}</view>
                <view class="cutomer-name"
                    v-else>客户:{{ coalDetailsData.customerName || '' }}</view>
                <view class="fild-name">
                    <view class="">矿场:{{ coalDetailsData.deptName || '暂无' }}</view>
                    <view class=""
                        v-if="orderType == '转入' || orderType == '转出'">煤场:{{ coalDetailsData.filedName || '' }}</view>
                    <view class=""
                        v-else>煤场:{{ coalDetailsData.filedName || '暂无' }}</view>
                </view>
        </view>
        <view class="top-information">
            <view class="cutomer-name"
                v-if="orderType == '转入' || orderType == '转出'">煤场:{{ coalDetailsData.toFiledName || '' }}</view>
            <view class="cutomer-name"
                v-else>客户:{{ coalDetailsData.customerName || '' }}</view>
            <view class="fild-name">
                <view class="">矿场:{{ coalDetailsData.deptName || '暂无' }}</view>
                <view class=""
                    v-if="orderType == '转入' || orderType == '转出'">煤场:{{ coalDetailsData.filedName || '' }}</view>
                <view class=""
                    v-else>煤场:{{ coalDetailsData.filedName || '暂无' }}</view>
            </view>
            <view class="block-information">
                <view class="block-main">
                    <view class="basic">
                        <view class="coalName">{{ coalDetailsData.coalName||'' }}</view>
                        <view class="status-button"
                            style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/statusbutton.png') no-repeat;
        </view>
        <view class="block-information">
            <view class="block-main">
                <view class="basic">
                    <view class="coalName">{{ coalDetailsData.coalName||'' }}</view>
                    <view class="status-button"
                        style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/statusbutton.png') no-repeat;
                                        background-size: cover;">
                            {{ coalStatus[coalDetailsData.statusWeigh] || '' }}
                        </view>
                        {{ coalStatus[coalDetailsData.statusWeigh] || '' }}
                    </view>
                    <view class="time">
                        <view class="time-icon"><u-icon name="clock"
                                color="#515151"
                                size="40"></u-icon></view>
                        <view class="send-date">{{ coalDetailsData.sendDate }}</view>
                </view>
                <view class="time">
                    <view class="time-icon"><u-icon name="clock"
                            color="#515151"
                            size="40"></u-icon></view>
                    <view class="send-date">{{ coalDetailsData.sendDate }}</view>
                </view>
                <view class="coal-code">提煤单编号:&nbsp;&nbsp;{{ coalDetailsData.code || '' }}</view>
                <view class="order-code">
                    订单编号:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{{ coalDetailsData.orderCode || '' }}</view>
                <view class="coal-code"
                    @click="jumpWeighDetail"
                    style="color: rgb(73, 123, 251);">
                    查看明细
                </view>
                <view class="weigh-item"
                    v-for='item in showWeigh'
                    :key="item.id">
                    <view class="item">
                        <view class="concrete"
                            style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/skin.png') no-repeat;background-size: cover;">
                            皮</view>
                        <view class="num">{{ item.skin }}</view>
                    </view>
                    <view class="coal-code">提煤单编号:&nbsp;&nbsp;{{ coalDetailsData.code || '' }}</view>
                    <view class="order-code">
                        订单编号:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{{ coalDetailsData.orderCode || '' }}</view>
                    <view class="coal-code"
                        @click="jumpWeighDetail"
                        style="color: rgb(73, 123, 251);">
                        查看明细
                    <view class="item">
                        <view class="concrete"
                            style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/hair.png') no-repeat;background-size: cover;">
                            毛</view>
                        <view class="num">{{ item.hair }}</view>
                    </view>
                    <view class="weigh-item">
                        <view class="item">
                            <view class="concrete"
                                style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/skin.png') no-repeat;background-size: cover;">
                                皮</view>
                            <view class="num">{{ showWeigh.skin }}</view>
                        </view>
                        <view class="item">
                            <view class="concrete"
                                style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/hair.png') no-repeat;background-size: cover;">
                                毛</view>
                            <view class="num">{{ showWeigh.hair }}</view>
                        </view>
                        <view class="item">
                            <view class="concrete"
                                style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/clean.png') no-repeat;background-size: cover;">
                                净</view>
                            <view class="num">{{ showWeigh.clean }}</view>
                        </view>
                    <view class="item">
                        <view class="concrete"
                            style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/clean.png') no-repeat;background-size: cover;">
                            净</view>
                        <view class="num">{{ item.clean }}</view>
                    </view>
                </view>
            </view>
        </view>
        <view class="timeLine">
            <u-steps :current="dayRZ.length - 1"
@@ -249,8 +252,7 @@
            },
            // 展示皮毛净
            showWeigh() {
                return this.coalDetailsData.tmTaskCoalItems ? (this.coalDetailsData.tmTaskCoalItems[0] ? this
                    .coalDetailsData.tmTaskCoalItems[0] : {}) : {}
                return this.coalDetailsData.tmTaskCoalItems ? this.coalDetailsData.tmTaskCoalItems : []
            }
        },
        methods: {
@@ -535,169 +537,177 @@
    ::v-deep.bill-of-lading-details {
        width: 100%;
        height: 100vh;
        height: 100%;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        .top-banner {
            width: 100%;
            height: 346rpx;
            position: fixed;
        }
            .top-information {
                width: 94%;
                margin: 0 auto;
                height: vww(52);
                @include flex position: relative;
                flex-direction: column;
        .top-information {
            width: 94%;
            margin: 0 auto;
            height: vww(52);
            @include flex position: relative;
            flex-direction: column;
            justify-content: space-between;
            align-items: flex-start;
            top: vww(25);
            color: #ffffff;
            font-size: 31rpx;
            font-weight: 300;
            .cutomer-name {
                width: 100%;
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
            }
            .fild-name {
                @include flex;
                justify-content: space-between;
                align-items: flex-start;
                top: vww(25);
                color: #ffffff;
                font-size: 31rpx;
                font-weight: 300;
                width: 100%;
                .cutomer-name {
                    width: 100%;
                view {
                    min-width: 296rpx;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis;
                }
            }
        }
                .fild-name {
                    @include flex;
                    justify-content: space-between;
                    width: 100%;
        .block-information {
            width: 690rpx;
            height: 100%;
            min-height: 420rpx;
            margin: vww(40) auto;
            background: #ffffff;
            box-shadow: 4rpx 6rpx 51rpx 0rpx rgba(73, 120, 240, 0.11);
            border-radius: 20rpx;
            position: relative;
            font-size: 30rpx;
            font-weight: 300;
            color: #303030;
            overflow: hidden;
                    view {
                        min-width: 296rpx;
                        white-space: nowrap;
                        overflow: hidden;
                        text-overflow: ellipsis;
                    }
            .block-main {
                display: grid;
                grid-template-columns: auto;
                grid-template-rows: repeat(auto-fit, minmax(40rpx, 1fr));
                gap: auto 5rpx;
                width: 94%;
                height: 100%;
                min-height: 380rpx;
                margin: vww(18) vww(7) vww(11) vww(17);
                // flex-direction: column;
                // justify-content: space-between;
                // align-items: flex-start;
            }
            .status-button {
                width: vww(71);
                height: vww(36);
                text-align: center;
                line-height: vww(33);
                font-size: 28rpx;
                font-weight: 300;
                position: absolute;
                right: vww(10);
                color: #fff;
            }
            .basic {
                width: 100%;
                height: vww(15);
                @include flex;
                justify-content: flex-start;
                .coalName,
                .order-type {
                    width: 45%;
                    height: 30rpx;
                    font-size: 30rpx;
                    font-weight: 300;
                    color: #515151;
                    position: relative;
                }
                .black-block {
                    width: 2rpx;
                    height: 30rpx;
                    background: #515151;
                    position: relative;
                    top: vww(2);
                }
            }
            .block-information {
                width: 690rpx;
                height: 396rpx;
                margin: vww(40) auto;
                background: #ffffff;
                box-shadow: 4rpx 6rpx 51rpx 0rpx rgba(73, 120, 240, 0.11);
                border-radius: 20rpx;
                position: relative;
                font-size: 30rpx;
                font-weight: 300;
                color: #303030;
                overflow: hidden;
            .time {
                width: 35%;
                height: vww(12);
                display: flex;
                justify-content: flex-start;
                .block-main {
                    @include flex width: 94%;
                    height: 336rpx;
                    margin: vww(18) vww(7) vww(11) vww(17);
                    flex-direction: column;
                    justify-content: space-between;
                    align-items: flex-start;
                }
                .status-button {
                    width: vww(71);
                    height: vww(36);
                    text-align: center;
                    line-height: vww(33);
                    font-size: 28rpx;
                    font-weight: 300;
                    position: absolute;
                    right: vww(10);
                    color: #fff;
                }
                .basic {
                    width: 100%;
                    height: vww(15);
                    @include flex;
                    justify-content: flex-start;
                    .coalName,
                    .order-type {
                        width: 45%;
                        height: 30rpx;
                        font-size: 30rpx;
                        font-weight: 300;
                        color: #515151;
                        position: relative;
                    }
                    .black-block {
                        width: 2rpx;
                        height: 30rpx;
                        background: #515151;
                        position: relative;
                        top: vww(2);
                    }
                }
                .time {
                    width: 35%;
                    height: vww(12);
                    display: flex;
                    justify-content: flex-start;
                    .send-date {
                        width: 148rpx;
                        height: 24rpx;
                        margin-left: vww(14);
                        font-size: 28rpx;
                        font-weight: 300;
                        color: #515151;
                    }
                }
                .coal-code,
                .order-code {
                    width: 100%;
                .send-date {
                    width: 148rpx;
                    height: 24rpx;
                    margin-left: vww(14);
                    font-size: 28rpx;
                    font-weight: 300;
                    color: #7d7d7d;
                    color: #515151;
                }
            }
                .weigh-item {
                    width: 100%;
                    height: vww(36);
            .coal-code,
            .order-code {
                width: 100%;
                height: 24rpx;
                font-size: 28rpx;
                font-weight: 300;
                color: #7d7d7d;
            }
            .weigh-item {
                width: 100%;
                height: vww(36);
                @include flex;
                justify-content: space-around;
                .item {
                    min-width: vww(50);
                    height: vww(45);
                    font-size: 21rpx;
                    font-weight: 400;
                    color: #ffffff;
                    text-align: center;
                    line-height: vww(30);
                    @include flex;
                    justify-content: space-around;
                    .item {
                        min-width: vww(50);
                        height: vww(45);
                        font-size: 21rpx;
                        font-weight: 400;
                        color: #ffffff;
                        text-align: center;
                        line-height: vww(30);
                        @include flex;
                    .concrete {
                        width: vww(36);
                        height: vww(36);
                    }
                        .concrete {
                            width: vww(36);
                            height: vww(36);
                        }
                        .num {
                            font-size: 40rpx;
                            font-weight: 300;
                            color: #303030;
                        }
                    .num {
                        font-size: 40rpx;
                        font-weight: 300;
                        color: #303030;
                    }
                }
            }
        }
        .timeLine {
            height: 40%;
            min-height: 300rpx;
            margin: vww(20);
            position: relative;
            top: vww(120);
            // top: vww(120);
            overflow-y: overlay;
            padding: vww(20);
@@ -730,7 +740,7 @@
            width: 94%;
            margin: 0 auto;
            position: relative;
            top: vww(80);
            // top: vww(80);
            .utils_chil {
                width: 100%;
@@ -757,7 +767,7 @@
        .weigh-ability {
            width: 631rpx;
            height: vww(100);
            margin: vww(80) auto;
            margin: vww(20) auto;
            margin-bottom: vww(10);
            @include flex;
            flex-direction: column;
pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue
@@ -1,325 +1,339 @@
<!-- 查看皮毛净明细 -->
<template>
    <view class="main">
        <view class="main-block"
            v-for="(item,i) in showWeigh"
            :key="i">
            <view class="weigh-item">
                <view class="item">
                    <view class="concrete"
                        style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/skin.png') no-repeat;background-size: cover;">
                        皮</view>
                    <view class="num">{{ item.skin }}</view>
                </view>
                <view class="item">
                    <view class="concrete"
                        style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/hair.png') no-repeat;background-size: cover;">
                        毛</view>
                    <view class="num">{{ item.hair }}</view>
                </view>
                <view class="item">
                    <view class="concrete"
                        style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/clean.png') no-repeat;background-size: cover;">
                        净</view>
                    <view class="num">{{ item.clean }}</view>
                </view>
            </view>
            <view class="discount">
                <view class="rate">
                    <view class="label-text">
                        折扣率
                    </view>
                    <view v-if='roleType!==1'
                        class="count">{{item.discount}}%</view>
                    <view v-else
                        class="count-input"><u--input placeholder="请输入折扣率"
                            border="bottom"
                            clearable
                            v-model="item.discount"
                            @input='v=>discountInputHandle(v,i,item.clean)'></u--input></view>
                </view>
                <view class="weigh">
                    <view class="label-text">
                        折扣后重量
                    </view>
                    <view class="count">{{item.discountWeight}}</view>
                </view>
            </view>
            <view class="level">
                <u-tag :text="item.level||'请选择'"
                    plain
                    @click="popoverShow(i)"></u-tag>
                <u-tag :text="item.productName||'请选择'"
                    plain
                    @click="productNamePopoverShow(i)"></u-tag>
            </view>
            <view v-if='roleType===1'>
                <u-picker :show="show"
                    :columns="columns"
                    @cancel='cancel'
                    @confirm='confirm'></u-picker>
            </view>
            <view class="">
                <u-action-sheet :actions="actionsList"
                    :show="actionShow"
                    cancelText='取消'
                    :closeOnClickOverlay='true'
                    @close='productNameClose'
                    @select="selectClick"></u-action-sheet>
            </view>
        </view>
        <view class="confirm-button"
            v-if='roleType===1'>
            <u-button type="primary"
                shape="circle"
                text="确认"
                @click="confirmInput"
                :loading="loading"
                loading-text="确认"></u-button>
        </view>
    </view>
  <view class="main">
    <u-empty mode="data"
             icon="http://cdn.uviewui.com/uview/empty/data.png"
             textSize="30"
             iconSize="1000"
             v-if="showWeigh"></u-empty>
    <view class="main-block"
          v-for="(item,i) in showWeigh"
          :key="i">
      <view class="weigh-item">
        <view class="item">
          <view class="concrete"
                style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/skin.png') no-repeat;background-size: cover;">
            皮
          </view>
          <view class="num">{{ item.skin }}</view>
        </view>
        <view class="item">
          <view class="concrete"
                style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/hair.png') no-repeat;background-size: cover;">
            毛
          </view>
          <view class="num">{{ item.hair }}</view>
        </view>
        <view class="item">
          <view class="concrete"
                style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/clean.png') no-repeat;background-size: cover;">
            净
          </view>
          <view class="num">{{ item.clean }}</view>
        </view>
      </view>
      <view class="discount">
        <view class="rate">
          <view class="label-text">
            折扣率
          </view>
          <view v-if='roleType!==1'
                class="count">{{ item.discount }}%
          </view>
          <view v-else
                class="count-input">
            <u--input placeholder="请输入折扣率"
                      border="bottom"
                      clearable
                      v-model="item.discount"
                      @input='v=>discountInputHandle(v,i,item.clean)'></u--input>
          </view>
        </view>
        <view class="weigh">
          <view class="label-text">
            折扣后重量
          </view>
          <view class="count">{{ item.discountWeight }}</view>
        </view>
      </view>
      <view class="level">
        <u-tag :text="item.level||'请选择'"
               plain
               @click="popoverShow(i)"
               v-if='item.level||roleType===1'></u-tag>
        <u-tag :text="item.productName||'请选择'"
               plain
               @click="productNamePopoverShow(i)"
               v-if='item.level||roleType===1'></u-tag>
      </view>
      <view v-if='roleType===1'>
        <u-picker :show="show"
                  :columns="columns"
                  @cancel='cancel'
                  @confirm='confirm'></u-picker>
      </view>
      <view class="">
        <u-action-sheet :actions="actionsList"
                        :show="actionShow"
                        cancelText='取消'
                        :closeOnClickOverlay='true'
                        @close='productNameClose'
                        @select="selectClick"></u-action-sheet>
      </view>
    </view>
    <view class="confirm-button"
          v-if='roleType===1'>
      <u-button type="primary"
                shape="circle"
                text="确认"
                @click="confirmInput"
                :loading="loading"
                loading-text="确认"></u-button>
    </view>
  </view>
</template>
<script>
    import loginVue from '../../../../login/login.vue';
    export default {
        data() {
            return {
                orderPlanId: "",
                index: null,
                coalDetailsData: {},
                showWeigh: [],
                discountrate: "",
                loading: false,
                show: false,
                columns: [
                    ['轻质', '中质', '重质']
                ],
                level: '请选择',
                selectIndex: null,
                // 产品列表
                actionsList: [],
                actionShow: false,
                actionIndex: null
            };
        },
        computed: {
            roleType() {
                return uni.getStorageSync('roleType')
            }
        },
        onLoad(params) {
            this.orderPlanId = params.orderPlanId ? params.orderPlanId : ''
            this.index = params.index ? params.index : ''
        },
        onShow() {
            this.roleType === 1 ? this.GetOrderPlan() : this.getTakeCoal()
            this.getJcProductList()
        },
        methods: {
            getTakeCoal() {
                uni.showLoading({
                    title: '加载中'
                });
                this.$reqGet('getTakeCoal', { takeCoalId: this.orderPlanId }).then(res => {
                    if (res.code == 0) {
                        this.coalDetailsData = res.data;
                        this.showWeigh = this.coalDetailsData.tmTaskCoalItems ? this.coalDetailsData
                            .tmTaskCoalItems : [],
                            uni.hideLoading()
                    } else {
                        this.$u.toast('加载失败')
                        uni.hideLoading()
                    }
                })
            },
            GetOrderPlan() {
                uni.showLoading({ title: '加载中...' });
                this.$reqGet('GetOrderPlan').then(res => {
                    if (res.data) {
                        this.coalDetailsData = res.data;
                        this.showWeigh = this.coalDetailsData[this.index].tmTaskCoalItems ? this.coalDetailsData[
                                this.index].tmTaskCoalItems : [],
                            uni.hideLoading();
                    } else {
                        this.$u.toast('加载失败')
                        uni.hideLoading()
                    }
                });
            },
            getJcProductList() {
                this.$reqGet('getJcProductList').then(res => {
                    if (res.code === 0) {
                        this.actionsList = res.data.map(v => {
                            return {
                                ...v,
                                name: v.productName
                            }
                        })
                    }
                })
            },
            // 输入折扣率后点击确认
            confirmInput() {
                this.loading = true
                this.$reqPost('updateTmTaskCoalItem', this.showWeigh, 'json').then(
                    res => {
                        if (res.code == 0) {
                            this.loading = false
                            this.$u.toast('操作成功')
                        } else {
                            this.loading = false
                            this.$u.toast('操作失败')
                        }
                    })
            },
            // 选择质量
            popoverShow(i) {
                if (this.roleType === 1) {
                    this.show = true
                    this.selectIndex = i
                }
            },
            // 选择产品
            productNamePopoverShow(i) {
                if (this.roleType === 1) {
                    this.actionShow = true
                    this.actionIndex = i
                }
            },
            confirm(e) {
                this.show = false
                this.showWeigh[this.selectIndex].level = e.value[0]
            },
            cancel() {
                this.show = false
            },
            productNameClose() {
                this.actionShow = false
            },
            selectClick(val) {
                console.log(this.showWeigh);
                this.showWeigh[this.actionIndex].productName = val.productName
                this.showWeigh[this.actionIndex].productId = val.id
            },
            // 折扣率输入
            discountInputHandle(value, index, clean) {
                this.showWeigh[index].discountWeight = (Number(value) * clean) / 100
            }
        },
    }
import loginVue from '../../../../login/login.vue';
export default {
  data() {
    return {
      orderPlanId: "",
      index: null,
      coalDetailsData: {},
      showWeigh: [],
      discountrate: "",
      loading: false,
      show: false,
      columns: [
        ['轻质', '中质', '重质']
      ],
      level: '请选择',
      selectIndex: null,
      // 产品列表
      actionsList: [],
      actionShow: false,
      actionIndex: null
    };
  },
  computed: {
    roleType() {
      return uni.getStorageSync('roleType')
    }
  },
  onLoad(params) {
    this.orderPlanId = params.orderPlanId ? params.orderPlanId : ''
    this.index = params.index ? params.index : ''
  },
  onShow() {
    this.roleType === 1 ? this.GetOrderPlan() : this.getTakeCoal()
    this.getJcProductList()
  },
  methods: {
    getTakeCoal() {
      uni.showLoading({
        title: '加载中'
      });
      this.$reqGet('getTakeCoal', {takeCoalId: this.orderPlanId}).then(res => {
        if (res.code == 0) {
          this.coalDetailsData = res.data;
          this.showWeigh = this.coalDetailsData.tmTaskCoalItems ? this.coalDetailsData
              .tmTaskCoalItems : [],
              uni.hideLoading()
        } else {
          this.$u.toast('加载失败')
          uni.hideLoading()
        }
      })
    },
    GetOrderPlan() {
      uni.showLoading({title: '加载中...'});
      this.$reqGet('GetOrderPlan').then(res => {
        if (res.data) {
          this.coalDetailsData = res.data;
          this.showWeigh = this.coalDetailsData[this.index].tmTaskCoalItems ? this.coalDetailsData[
              this.index].tmTaskCoalItems : [],
              uni.hideLoading();
        } else {
          this.$u.toast('加载失败')
          uni.hideLoading()
        }
      });
    },
    getJcProductList() {
      this.$reqGet('getJcProductList').then(res => {
        if (res.code === 0) {
          this.actionsList = res.data.map(v => {
            return {
              ...v,
              name: v.productName
            }
          })
        }
      })
    },
    // 输入折扣率后点击确认
    confirmInput() {
      this.loading = true
      this.$reqPost('updateTmTaskCoalItem', this.showWeigh, 'json').then(
          res => {
            if (res.code == 0) {
              this.loading = false
              this.$u.toast('操作成功')
            } else {
              this.loading = false
              this.$u.toast('操作失败')
            }
          })
    },
    // 选择质量
    popoverShow(i) {
      if (this.roleType === 1) {
        this.show = true
        this.selectIndex = i
      }
    },
    // 选择产品
    productNamePopoverShow(i) {
      if (this.roleType === 1) {
        this.actionShow = true
        this.actionIndex = i
      }
    },
    confirm(e) {
      this.show = false
      this.showWeigh[this.selectIndex].level = e.value[0]
    },
    cancel() {
      this.show = false
    },
    productNameClose() {
      this.actionShow = false
    },
    selectClick(val) {
      console.log(this.showWeigh);
      this.showWeigh[this.actionIndex].productName = val.productName
      this.showWeigh[this.actionIndex].productId = val.id
    },
    // 折扣率输入
    discountInputHandle(value, index, clean) {
      this.showWeigh[index].discountWeight = (Number(value) * clean) / 100
    }
  },
}
</script>
<style lang="scss"
    scoped>
    @mixin flex {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
       scoped>
@mixin flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
    /deep/ .u-picker {
        height: 600rpx;
    }
/deep/ .u-picker {
  height: 600 rpx;
}
    .main {
        width: 100%;
        height: 100vh;
        background-color: #fff;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
.main {
  width: 100%;
  height: 100vh;
  background-color: #fff;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
        .main-block {
            width: 690rpx;
            height: 360rpx;
            margin: vww(20) auto;
            padding: vww(5);
            background: #ffffff;
            box-shadow: 4rpx 6rpx 51rpx 0rpx rgba(73, 120, 240, 0.11);
            border-radius: 20rpx;
            overflow: hidden;
            position: relative;
  .main-block {
    width: 690 rpx;
    height: 360 rpx;
    margin: vww(20) auto;
    padding: vww(5);
    background: #ffffff;
    box-shadow: 4 rpx 6 rpx 51 rpx 0 rpx rgba(73, 120, 240, 0.11);
    border-radius: 20 rpx;
    overflow: hidden;
    position: relative;
            .weigh-item {
                width: 100%;
                height: vww(36);
                margin: vww(10);
                @include flex;
                justify-content: space-around;
    .weigh-item {
      width: 100%;
      height: vww(36);
      margin: vww(10);
      @include flex;
      justify-content: space-around;
                .item {
                    min-width: vww(50);
                    height: vww(45);
                    font-size: 21rpx;
                    font-weight: 400;
                    color: #ffffff;
                    text-align: center;
                    line-height: vww(30);
                    @include flex;
      .item {
        min-width: vww(50);
        height: vww(45);
        font-size: 21 rpx;
        font-weight: 400;
        color: #ffffff;
        text-align: center;
        line-height: vww(30);
        @include flex;
                    .concrete {
                        width: vww(36);
                        height: vww(36);
                    }
        .concrete {
          width: vww(36);
          height: vww(36);
        }
                    .num {
                        font-size: 40rpx;
                        font-weight: 300;
                        color: #303030;
                    }
                }
            }
        .num {
          font-size: 40 rpx;
          font-weight: 300;
          color: #303030;
        }
      }
    }
            .discount {
                @include flex;
                justify-content: space-around;
                width: 100%;
                line-height: vww(36);
    .discount {
      @include flex;
      justify-content: space-around;
      width: 100%;
      line-height: vww(36);
                .rate,
                .weigh {
                    width: 50%;
                    display: flex;
                    align-items: center;
                    justify-content: space-around;
                    flex-direction: column;
      .rate,
      .weigh {
        width: 50%;
        display: flex;
        align-items: center;
        justify-content: space-around;
        flex-direction: column;
                    .count-input {
                        width: 70%;
                        border-bottom: 1px solid rgb(218, 219, 222);
        .count-input {
          width: 70%;
          border-bottom: 1px solid rgb(218, 219, 222);
                    }
                }
        }
      }
                .count {
                    font-size: 40rpx;
                    color: rgb(242, 70, 79);
                }
      .count {
        font-size: 40 rpx;
        color: rgb(242, 70, 79);
      }
            }
    }
            .level {
                width: 40%;
                margin-top: 30rpx;
                margin-left: 80rpx;
                display: flex;
                justify-content: space-between;
            }
    .level {
      width: 40%;
      margin-top: 30 rpx;
      margin-left: 80 rpx;
      display: flex;
      justify-content: space-between;
    }
        }
  }
        .confirm-button {
            // position: relative;
            // bottom: 10rpx;
            // right: 10rpx;
            width: 100%;
            @include flex;
            justify-content: center;
  .confirm-button {
    // position: relative;
    // bottom: 10rpx;
    // right: 10rpx;
    width: 100%;
    @include flex;
    justify-content: center;
            /deep/ .u-button {
                width: 180rpx !important;
            }
        }
    }
    /deep/ .u-button {
      width: 180 rpx !important;
    }
  }
}
</style>
pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue
@@ -25,7 +25,7 @@
            </view>
            <view class="bottom"><text>TIP:当前状态为正常时可以称重</text></view>
        </view>
        <view class="middle-block"
        <!-- <view class="middle-block"
            v-if="firstHairCustomernameShow || sideline">
            <view class="block-main"
                v-if="firstHairCustomernameShow">
@@ -100,7 +100,7 @@
            </view>
        </view>
        <view v-else
            style="width: 100%;height: 40rpx;"></view>
            style="width: 100%;height: 40rpx;"></view> -->
        <view class="bottom-block">
            <view class="block-main">
                <view class="main-information"
@@ -181,7 +181,11 @@
                :disabled="addAndSubtractCoalDisabled"
                @click="addAndSubtractCoal"
                class="jiajian"
                v-if="outBuy"></u-button>
                v-if="outsourcing"></u-button>
            <u-button type="primary"
                text="继续卸货"
                @click="UnloadingAgainHandle"
                v-if='outBuy'></u-button>
        </view>
        <!-- <view class="four" v-if="weighList.orderType !== '外购'">如您需要调整装载货品吨数,请点击返回加减吨</view> -->
        <!-- 放空弹窗 -->
@@ -233,9 +237,9 @@
                    weigh: 0,
                    tmCode: '',
                    sceneInOut: '',
                    coalContactClean: 0,
                    coalContactHair: 0,
                    coalContactSkin: 0
                    // coalContactClean: 0,
                    // coalContactHair: 0,
                    // coalContactSkin: 0
                },
                // 是否填写原发信息
                isInputOrigin: false,
@@ -270,8 +274,10 @@
                // 聚焦时改变样式
                isfocus1: false,
                isfocus2: false,
                // 外购第一次称毛重不需要加减吨
                outBuy: true
                // 外购类型
                outBuy: true,
                // 外销类型
                outsourcing: true
            };
        },
        watch: {
@@ -279,11 +285,9 @@
                if (this.weighList.orderType == '外销' || this.weighList.orderType == '内销' || this.weighList.orderType ==
                    '转出') {
                    if (this.weighList.skin == 0) {
                        // this.temporaryWeighObj.skin = this.realTimeWeigh;
                        this.temporaryWeighObj.skin = newV;
                        this.isweigh = this.temporaryWeighObj.skin > this.weighList.orderSurplus;
                    } else {
                        // this.temporaryWeighObj.hair = this.realTimeWeigh;
                        this.temporaryWeighObj.hair = newV;
                        this.temporaryWeighObj.clean = (this.temporaryWeighObj.hair - this.weighList.skin).toFixed(2);
                        this.isweigh = this.temporaryWeighObj.clean > this.weighList.orderSurplus || this.temporaryWeighObj
@@ -292,11 +296,9 @@
                } else if (this.weighList.orderType == '外购' || this.weighList.orderType == '内购' || this.weighList
                    .orderType == '转入') {
                    if (this.weighList.hair == 0) {
                        // this.temporaryWeighObj.hair = this.realTimeWeigh;
                        this.temporaryWeighObj.hair = newV;
                        this.isweigh = this.temporaryWeighObj.hair > this.weighList.orderSurplus;
                    } else {
                        // this.temporaryWeighObj.skin = this.realTimeWeigh;
                        this.temporaryWeighObj.skin = newV;
                        this.temporaryWeighObj.clean = (this.weighList.hair - this.temporaryWeighObj.skin).toFixed(2);
                        this.isweigh = this.temporaryWeighObj.clean > this.weighList.orderSurplus || this.temporaryWeighObj
@@ -315,14 +317,11 @@
            this.changeisLogin(true)
            this.realTimeWeigh = 0
        },
        onHide() {
        },
        computed: {
            ...mapState(['globalweigh', 'globalinfraredStatus']),
            coalContactClean() {
                return (Number(this.weighData.coalContactHair) - Number(this.weighData.coalContactSkin)).toFixed(2);
            },
            // coalContactClean() {
            //     return (Number(this.weighData.coalContactHair) - Number(this.weighData.coalContactSkin)).toFixed(2);
            // },
            token() {
                return uni.getStorageSync('token');
            },
@@ -371,16 +370,19 @@
                        this.weighData.coalContactHair = res.data.hairTwo ? res.data.hairTwo : 0;
                        this.weighData.coalContactSkin = res.data.skinTwo ? res.data.skinTwo : 0;
                        if (this.weighList.orderType == '外购') {
                            this.firstHairCustomernameShow = true;
                            if (this.weighList.hair > 0) {
                                this.haveInputOrigin = true;
                                this.isInputOrigin = true;
                            }
                            if (this.weighList.hair == 0) {
                                this.outBuy = false;
                            }
                        } else {
                            this.isInputOrigin = true;
                            this.outBuy = true
                            this.outsourcing = false;
                            // this.firstHairCustomernameShow = true;
                            // if (this.weighList.hair > 0) {
                            //     this.haveInputOrigin = true;
                            //     this.isInputOrigin = true;
                            // }
                            // if (this.weighList.hair == 0) {
                            //     this.outBuy = false;
                            // }
                        } else if (this.weighList.orderType == '外销') {
                            this.outsourcing = true;
                            this.outBuy = false
                        }
                    }
                });
@@ -410,7 +412,7 @@
            },
            // 确认称重接口
            saveWeigh() {
                this.weighData.coalContactClean = this.coalContactClean;
                // this.weighData.coalContactClean = this.coalContactClean;
                this.$reqPost('saveWeigh', this.weighData, 'json')
                    .then(res => {
                        console.log(res, '称重接口');
@@ -439,7 +441,11 @@
                    carNo: this.weighData.carNo,
                    tmId: this.weighData.tmId,
                    filedId: this.weighData.filedId,
                    weigh: this.realTimeWeigh
                    tmId: this.weighData.tmId,
                    gateCameraId: this.weighData.gateCameraId,
                    equipmentCode: this.weighData.equipmentCode,
                    tmCode: this.weighData.tmCode,
                    sceneInOut: this.weighData.sceneInOut
                }, 'json').then(res => {
                    if (res.code == 0) {
                        this.$u.toast('操作成功,即将返回上一页');
@@ -455,6 +461,28 @@
                    }
                });
            },
            // 继续卸货
            UnloadingAgainHandle() {
                this.$reqPost('continueWeigh', {
                    deptId: this.weighData.deptId,
                    sceneId: this.weighData.sceneId,
                    carNo: this.weighData.carNo,
                    tmId: this.weighData.tmId,
                    filedId: this.weighData.filedId,
                    tmId: this.weighData.tmId,
                    gateCameraId: this.weighData.gateCameraId,
                    equipmentCode: this.weighData.equipmentCode,
                    tmCode: this.weighData.tmCode,
                    sceneInOut: this.weighData.sceneInOut
                }, 'json').then(res => {
                    if (res.code == 0) {
                        this.$u.toast('操作成功');
                    } else {
                        this.$u.toast('操作失败,请稍候重试');
                    }
                })
            },
            // 放空
            evacuation() {
                this.evacuationModalShow = true;