From b119f9e139d8cabaa4d1a44227f76e691f84d761 Mon Sep 17 00:00:00 2001
From: qingyiay <2386314947@qq.com>
Date: 星期三, 28 六月 2023 18:18:28 +0800
Subject: [PATCH] 提煤单详情页面修改,其他逻辑修改
---
pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue | 612 ++++++++++++++++++++++++++++---------------------------
1 files changed, 313 insertions(+), 299 deletions(-)
diff --git a/pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue b/pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue
index 0f2d8e6..93bf43d 100644
--- a/pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue
+++ b/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="璇疯緭鍏ユ姌鎵g巼"
- 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="璇疯緭鍏ユ姌鎵g巼"
+ 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>
\ No newline at end of file
--
Gitblit v1.9.1