yyb
3 天以前 7834dfe8a172d488febe576bb5ff66655becef81
pages/storeManagement/CancelMaterialRequisition/index.vue
@@ -2,71 +2,114 @@
<template>
   <view class="page">
      <view class="packing-registration-bg" />
      <u-navbar title="电解铜领料" :background="background" :border-bottom="false" :title-bold="true" title-color="#000"
         back-icon-color="#000" />
    <u-navbar
      title="电解铜取消领料"
      :background="background"
      :border-bottom="false"
      :title-bold="true"
      title-color="#000"
      back-icon-color="#000"
    />
                           <view class="textST">
                  <text >取消领料记录:</text>
               </view>
      <view class="wrap">
         <scroll-view class="packing-registration-scroll-list" scroll-y="true">
            <u-cell-group class="packing-registration-scroll-list-group" :border="false">
        <u-cell-group
          class="packing-registration-scroll-list-group"
          :border="false"
        >
               <!-- <div class="tip" style="text-align: center;" v-if="hasScanSnList.length==0">-请扫码-</div> -->
               <view class="content" v-for="(item, index) in hasScanSnList" :key="index" :index="index">
          <view
            class="content"
            v-for="(item, index) in hasScanSnList"
            :key="index"
            :index="index"
          >
                  <view class="content-header">
                     <view class="content-header-title">{{ index + 1 }}</view>
                  </view>
                  <view class="content-body">
                     <view class="row-list">
                        <view class="_label">
                           <view class="_label-name">零件号:</view>
                        </view>
                        <view class="_content">
                           {{ item.value0 }}
                        </view>
                     </view>
                     <view class="row-list">
                        <view class="_label">
                           <view class="_label-name">批次号:</view>
                        </view>
                        <view class="_content">
                           {{ item.value1 }}
                  {{ item.BN }}
                        </view>
                     </view>
                            <view class="row-list">
                        <view class="_label">
                           <view class="_label-name">WDR:</view>
                  <view class="_label-name">品牌:</view>
                        </view>
                        <view class="_content">
                           {{ item.value4 }}
                  {{ item.BR }}
                        </view>
                     </view>
                     <view class="row-list">
                        <view class="_label">
                           <view class="_label-name">库位号:</view>
                  <view class="_label-name">净重:</view>
                        </view>
                        <view class="_content">
                           {{ item.value0 }}
                        </view>
                     </view>
                     <view class="row-list">
                        <view class="_label">
                           <view class="_label-name">盘点数量:</view>
                        </view>
                        <view class="_content">
                           {{ item.value1 }}
                  {{ item.NW }}
                        </view>
                     </view>
                  </view>
               </view>
            </u-cell-group>
         </scroll-view>
      <u-modal
        v-model="showModal"
        title=""
        :show-cancel-button="true"
        :show-confirm-button="true"
        @confirm="confirm"
        @cancel="cancel"
      >
        <view class="popup-content">
          <view class="packing-registration-param">
            <view class="packing-registration-param-view">
              <view class="packing-registration-param-item param-extra">
                <view class="packing-registration-param-item-left">
                  <text class="item-one">批次号:</text>
                </view>
                <view class="packing-registration-param-item-right">
                  <text class="item-one item-two">{{
                    detailedList.BN
                  }}</text>
                </view>
              </view>
              <view class="packing-registration-param-item param-extra">
                <view class="packing-registration-param-item-left">
                  <text class="item-one">品牌:</text>
                </view>
                <view class="packing-registration-param-item-right">
                  <text class="item-one item-two">{{
                    detailedList.BR
                  }}</text>
                </view>
              </view>
              <view class="packing-registration-param-item param-extra">
                <view class="packing-registration-param-item-left">
                  <text class="item-one">净重:</text>
                </view>
                <view class="packing-registration-param-item-right">
                  <text class="item-one item-two">{{
                    detailedList.NW
                  }}</text>
                </view>
              </view>
            </view>
          </view>
        </view>
      </u-modal>
         <scan></scan>
      </view>
   </view>
</template>
<script>
import scan from "@/components/scan/scan.vue";
import content_bg from '@/static/custom/packing/backBg.png'
import content_bg from "@/static/custom/packing/backBg.png";
export default {
   components: {
      scan,
@@ -75,180 +118,144 @@
      return {
         background: {
            backgroundImage: `url(${content_bg})`,
            backgroundAttachment: 'fixed',
            backgroundSize: '100% auto',
            backgroundRepeat: 'no-repeat',
        backgroundAttachment: "fixed",
        backgroundSize: "100% auto",
        backgroundRepeat: "no-repeat",
         },
         labelStyle: {
            fontSize: '32rpx',
            whiteSpace: 'nowrap'
        fontSize: "32rpx",
        whiteSpace: "nowrap",
         },
         hasScanSnList: [{
            value0: '11111111111111111111111',
            value1: '111',
            value2: '111',
                value3: '111',
            value4: '111',
         },
         {
            value0: '111',
            value1: '111',
            value2: '111',
                value3: '111',
            value4: '111',
         },
         {
            value0: '111',
            value1: '111',
            value2: '111',
                value3: '111',
            value4: '111',
         },
         {
            value0: '111',
            value1: '111',
            value2: '111',
                value3: '111',
            value4: '111',
         },
         ],
         delContent: null,
         staffList: [],
      hasScanSnList: [],
      showModal: false, // 控制弹窗显示隐藏的变量
      detailedList: {},
      };
   },
   onLoad(option) { },
   onShow() {
      let that = this
      uni.$off('scan') // 每次进来先 移除全局自定义事件监听器
      uni.$on('scan', function (data) {
         console.log('onscan');
    let that = this;
    uni.$off("scan"); // 每次进来先 移除全局自定义事件监听器
     uni.$on("scan", function (data) {
      this.detailedList = {},
      console.log("onscan");
         //扫码成功后的回调,你可以写自己的逻辑代码在这里
         console.log('扫码结果:', data.code);
         that.scanHandle(data.code)
         that.$forceUpdate();
      })
   },
   onNavigationBarButtonTap() {
      this.goScan()
   },
   onReady() { },
    methods: {
      setNo(val) {
         console.log('11111', val)
         this.registerInfo.value1 = val.value1
         this.registerInfo.value2 = val.value2
      },
      //盘点报告号
      seachPersonnelNo() {
         console.log('11111')
         uni.navigateTo({
            url: '/pages/wareHouse/inventory/orderList'
         })
      },
      goScan() {
         uni.scanCode({
            scanType: ['qrCode'],
            success: res => {
               try {
                  console.log('扫码结果:', res);
                  this.scanHandle(res.result)
               } catch (e) { }
      console.log("页面扫码结果:", data.code);
      if (data.code) {
        let codeInfo = JSON.parse(data.code);
        // 扫描报工单二维码
        if (codeInfo) {
          that.saveForm(codeInfo);
        }
            }
         });
      },
      scanHandle(scanresult) {
         scanresult = scanresult.replace(/[\r\n]/g, "")
         if (scanresult.indexOf('{') > -1) {
            //二维码
            const result = JSON.parse(scanresult)
            //增加SN校验
            if (result.sn_no && result.sn_no != null && result.sn_no != '') {
               if (this.hasScanSnList.length > 0) {
                  let hasScanSnIndex = this.hasScanSnList.indexOf(result.sn_no)
                  if (hasScanSnIndex < 0) {
                     this.hasScanSnList.push(result.sn_no)
                  } else {
                     this.$u.toast('请勿重复扫描')
                  }
               } else {
                  this.hasScanSnList.push(result.sn_no)
               }
            }
         } else {
            //增加SN校验
            if (this.hasScanSnList.length > 0) {
               let hasScanSnIndex = this.hasScanSnList.indexOf(scanresult)
               if (hasScanSnIndex < 0) {
                  this.hasScanSnList.push(scanresult)
               } else {
                  this.$u.toast('请勿重复扫描')
               }
            } else {
               this.hasScanSnList.push(scanresult)
            }
         }
  methods: {
       // 回显扫码的信息
    saveForm(val) {
      this.detailedList = val;
        this.showModal = true;
      },
      goSubmit() {
         // if (this.registerInfo.shiftId == null || this.registerInfo.shiftId == '') {
         //    this.$u.toast('请选择班次')
         //    return
         // }
         // if (this.registerInfo.value3 == null || this.registerInfo.value3 == '') {
         //    this.$u.toast('请选择日期')
         //    return
         // }
         // if (this.registerInfo.locNo == null || this.registerInfo.locNo == '') {
         //    this.$u.toast('请选择包装库位')
         //    return
         // }
         // if (this.hasScanSnList.length == 0) {
         //    this.$u.toast('无待提交的SN号明细')
         //    return
         // }
         // let registrList = []
         // this.staffList = []
         // this.staffNameList.forEach((item) => {
         //    this.staffList.push({
         //       staffId: item.id
   confirm() {
    //   // 处理确认逻辑
    //   this.$u.api.shiftingParking
    //     .hasScanSn({
    //       ...this.detailedList,
         //    })
         // })
         // this.hasScanSnList.forEach((item) => {
         //    registrList.push({
         //       shiftId: this.registerInfo.shiftId,
         //       value3: this.registerInfo.value3,
         //       locNo: this.registerInfo.locNo,
         //       partBatchNo: item,
         //       staffList: this.staffList
         //    })
         // })
         // this.$u.api.pigxPacking.addPackageRegister(registrList).then(res => {
         //    let resData = res.data
         //    this.hasScanSnList = []
         //    this.$u.toast('提交成功')
         // }).catch((e) => {
         // })
    //     .then((res) => {
    //       this.hasScanSnList.push(this.detailedList);
    //       console.log("记录", this.hasScanSnList);
    //       this.$u.toast("取消领料成功");
      //     });
          this.hasScanSnList.push(this.detailedList);
      },
   }
  },
};
</script>
<style lang="scss" scoped>
.packing-registration-param {
  padding: 40rpx 30rpx 10rpx 30rpx;
  .packing-registration-param-title {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-bottom: 30rpx;
    .title-label {
      margin-left: 14rpx;
      font-size: 34rpx;
      font-weight: bold;
      color: #283e65;
    }
  }
  .packing-registration-param-view {
    height: 177rpx;
    background-color: #fff;
    border-radius: 10rpx;
    padding: 0rpx 23rpx;
    margin-bottom: 30rpx;
    .packing-registration-param-item {
      height: 90rpx;
      border: 1px solid #adc8e4;
      line-height: 90rpx;
      display: flex;
      justify-content: space-between;
      border: none;
      .packing-registration-param-item-left {
        .item-one {
          font-size: 30rpx;
          color: #666666;
        }
      }
      .packing-registration-param-item-right {
        display: flex;
        justify-content: space-between;
        .item-one {
          font-size: 30rpx;
          color: #333333;
          margin-right: 6rpx;
        }
        .item-two {
          font-size: 30rpx;
          color: #a6b4cc;
          margin-right: 6rpx;
        }
        .item-three {
          font-size: 30rpx;
          color: #214ded;
          margin-right: 6rpx;
        }
      }
    }
    .param-extra {
      border-bottom: 1px solid #ededed;
    }
  }
}
.popup-content {
  width: 600rpx;
  height: 305rpx;
  background-color: #fff;
  border-radius: 8px;
  z-index: 10;
  /* 确保内容在蒙版之上 */
}
.textST {
    font-size: 14px;
    margin:0 0 13px 13px;
}
.packing-registration-bg {
   background-color: #F6F9FF;
   background-image: url('~@/static/custom/packing/backBg.png');
  background-color: #f6f9ff;
  background-image: url("~@/static/custom/packing/backBg.png");
   padding: 0 20rpx;
   background-attachment: fixed;
   background-size: 100% auto;
@@ -345,5 +352,4 @@
      }
   }
}
</style>