qingyiay
2023-07-12 f52085a9bc8c61cf7097426d7a6b2985d890da68
pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue
@@ -56,6 +56,42 @@
               <view class="count">{{ item.weight }}</view>
            </view>
         </view>
         <view class="notice-num">
            <view class="num-text">
               <u--text text="通知数量"
                  size='32'></u--text>
            </view>
            <view class="num-input">
               <u--input placeholder="请输入通知数量"
                  border="bottom"
                  clearable
                  v-model="item.num"></u--input>
            </view>
         </view>
         <view class="notice-num">
            <view class="num-text">
               <u--text text=" 不合格品名"
                  size='32'></u--text>
            </view>
            <view class="num-input">
               <u--input placeholder="请输入 不合格品名"
                  border="bottom"
                  clearable
                  v-model="item.unqualifiedBreed"></u--input>
            </view>
         </view>
         <view class="notice-num">
            <view class="num-text">
               <u--text text=" 不合格重量"
                  size='32'></u--text>
            </view>
            <view class="num-input">
               <u--input placeholder="请输入不合格重量"
                  border="bottom"
                  clearable
                  v-model="item.unqualifiedWeight"></u--input>
            </view>
         </view>
         <view class="level"
            v-if='!flag'>
            <view class=""
@@ -70,8 +106,8 @@
         </view>
         <view class="level"
            v-if='item.modifygoodsName||flag'>
            <view style="width: 140rpx;">
               <u--text text="产品名称"
            <view style="width: 200rpx;">
               <u--text text="品名与规格"
                  size='32'></u--text>
            </view>
            <view v-if="showWeighCopy[i].modifyProductName||item.breed&&item.spec">
@@ -79,6 +115,20 @@
                  plain
                  @click="productNamePopoverShow(i)"></u-tag>
            </view>
         </view>
         <view class=""
            style="margin-top: 8rpx;">
            <u-upload :fileList="item.fileList"
               deletable
               @afterRead="afterRead"
               @delete="deletePic"
               :name="i"
               multiple
               :maxCount="4"
               width="250"
               height="150"
               :previewFullImage="true">
            </u-upload>
         </view>
         <!-- 物资明细 -->
         <u-action-sheet :actions="goodsList"
@@ -110,6 +160,7 @@
</template>
<script>
   import { BaseUrl } from '@/api/publicInterface.js';
   import { onlineurl } from '@/api/request.js'
   export default {
      data() {
@@ -134,26 +185,23 @@
            havedInput: false,
            flag: false,
            orderCode: null,
            modifyProductName: null,
            // 是否修改
            isModify: false
            isModify: false,
            // 上传图片
            fileList1: [],
         };
      },
      computed: {
         roleType() {
            return uni.getStorageSync('roleType')
         }
         },
      },
      onLoad(params) {
         this.orderPlanId = params.orderPlanId ? params.orderPlanId : ''
         this.flag = params.flag ? params.flag : false
      },
      onShow() {
         this.orderPlanId = params.orderPlanId ? params.orderPlanId : '';
         this.flag = params.flag ? params.flag : false;
         this.roleType === 1 ? this.GetOrderPlan() : this.getTakeCoal()
         if (this.orderCode) {
            this.getMaterialDetailByOrderCode()
         }
         this.getJcProductList()
      },
      methods: {
@@ -171,8 +219,8 @@
                     return {
                        ...v,
                        modifyProductName: '',
                        modifygoodsName: ''
                        modifygoodsName: '',
                        fileList: []
                     }
                  })
                  this.showWeighCopy = JSON.parse(JSON.stringify(this.showWeigh))
@@ -227,7 +275,9 @@
               return {
                  ...v,
                  breed: this.showWeighCopy[i].modifyProductName ? this.showWeighCopy[i].breed : v.breed,
                  spec: this.showWeighCopy[i].modifyProductName ? this.showWeighCopy[i].spec : v.spec
                  spec: this.showWeighCopy[i].modifyProductName ? this.showWeighCopy[i].spec : v.spec,
                  inspectionJpg: v.fileList.join(',')
               }
            })
            this.$reqPost('updateTmTaskCoalItem', this.showWeigh, 'json').then(
@@ -262,6 +312,7 @@
            this.showWeigh[this.goodsIndex].remark = val.remark
            this.showWeigh[this.goodsIndex].breed = val.breed
            this.showWeigh[this.goodsIndex].spec = val.spec
            this.showWeigh[this.goodsIndex].weightUnit = val.weightUnit
         },
         // 产品列表
         productNamePopoverShow(index) {
@@ -282,7 +333,52 @@
         discountInputHandle(value, index, clean) {
            this.showWeigh[index].cinderWeight = Number(value)
            this.showWeigh[index].weight = (clean - (Number(value)).toFixed(2));
         }
         },
         // 删除图片
         deletePic(event) {
            this.showWeigh[event.name].fileList.splice(event.index, 1);
            // this[`fileList${event.name}`].splice(event.index, 1);
         },
         // 新增图片
         async afterRead(event) {
            // 当设置 mutiple 为 true 时, file 为数组格式,否则为对象格式
            let lists = [].concat(event.file);
            let fileListLen = this.showWeigh[event.name].fileList.length;
            lists.map(item => {
               this.showWeigh[event.name].fileList.push({
                  ...item,
                  status: 'uploading',
                  message: '上传中'
               });
            });
            for (let i = 0; i < lists.length; i++) {
               const result = await this.uploadFilePromise(lists[i].url, event.name);
               let item = this.showWeigh[event.name].fileList[fileListLen];
               this.showWeigh[event.name].fileList.splice(
                  fileListLen,
                  1,
                  Object.assign(item, {
                     status: 'success',
                     message: '上传成功',
                     url: result
                  })
               );
               fileListLen++;
            }
         },
         uploadFilePromise(url, num) {
            return new Promise((resolve, reject) => {
               let a = uni.uploadFile({
                  url: BaseUrl + '/admin/sys-file/uploadUnToken',
                  filePath: url,
                  name: 'file',
                  formData: {},
                  success: res => {
                     resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`);
                  }
               });
            });
         },
      },
   }
</script>
@@ -381,6 +477,23 @@
         }
         .notice-num {
            @extend .discount;
            align-items: center;
            justify-content: space-evenly;
            margin-left: 50rpx;
            margin-top: 30rpx;
            .num-text {
               width: 30%;
            }
            .num-input {
               width: 60%;
               border-bottom: 1px solid rgb(218, 219, 222);
            }
         }
         .level {
            width: 60%;
            margin-top: 30rpx;