yangan
2024-07-16 e2e96137d9b5e5dbac737e69809a941d676ba61e
pages/loadUnload-page/selectTarget/selectTarget.vue
@@ -48,7 +48,7 @@
            text="查看该仓库收发单"
            @click.stop="formHandle"></u-button>
      </view> -->
      <!-- 煤场 -->
      <!-- 场地 -->
      <view class='div-box'>
            <u-empty mode="data"
                     icon="http://cdn.uviewui.com/uview/empty/data.png"
@@ -65,17 +65,13 @@
                        <view class=""></view>
                     </view>
                     <view class="second">
                        <view class="coal-name">{{ item.productName || '' }}</view>
                        <view class="coal-name">{{ item.productNames || item.productName }}</view>
                        <view class="order-type">{{ item.orderType || '' }}</view>
                     </view>
                     <view class="third">
                        <view class="third-line">
                           <view class="third-line_text">客户名称:</view>
                           <view>{{ item.customerName }}</view>
                        </view>
                        <view class="third-line">
                           <view class="third-line_text">仓库:</view>
                           <view >{{ item.bunkerName }}</view>
                        </view>
                        <view class="third-line"  v-if="item.productName === 'EDC'">
                           <view class="third-line_text">质检状态:</view>
@@ -105,11 +101,11 @@
                  <uni-th width='140'
                  align="center">操作</uni-th>
                   <uni-th align="center" width='120'>产品</uni-th>
                  <uni-th align="center">类型</uni-th>
                  <uni-th align="center">皮重</uni-th>
                  <uni-th align="center">毛重</uni-th>
                  <uni-th align="center">净重</uni-th>
                  <uni-th align="center">数量</uni-th>
                  <uni-th align="center" width='220'>仓库</uni-th>
                  <uni-th align="center" width='120'>皮重</uni-th>
                  <uni-th align="center" width='120'>毛重</uni-th>
                  <uni-th align="center" width='120'>净重</uni-th>
                  <uni-th align="center" width='120'>数量</uni-th>
                   <!-- <uni-th align="center">仓库</uni-th> -->
                  <!-- <uni-th align="center">状态</uni-th> -->
                  
@@ -119,21 +115,21 @@
               <view class="btnBox"> 
                  <!--   -->
                  <u-button   text='查看'  @click="viewDetail(subItem)"></u-button>
                  <u-button type='primary' text='确认装卸'  v-if="subItem.flag" @click="enterOk(subItem)"></u-button>
                  <u-button type='primary' text='确认装卸'  v-if="subItem.flag && isBtnShow(subItem)" @click="enterOk(item,subItem)"></u-button>
                  </view></uni-td>
                  <uni-td align="center">
                     <view>{{ subItem.productName }}</view></uni-td>
               <uni-td>
                  <view class="name">{{ subItem.orderType }}</view>
                  <view>{{ subItem.bunkerName }}</view>
               </uni-td>
               <uni-td>
                  <view class="name">{{ subItem.skin }}</view>
                  <view class="name" v-if="subItem.skin">{{ Number(subItem.skin).toFixed(2) || ''  }}</view>
               </uni-td>
               <uni-td>
                  <view class="name">{{ subItem.hair }}</view>
                  <view class="name" v-if="subItem.hair"> {{  Number(subItem.hair).toFixed(2) || ''  }}</view>
               </uni-td>
                  <uni-td>
                  <view class="name">{{ subItem.clean }}</view>
                  <view class="name" v-if="(subItem.clean || (subItem.clean && subItem.clean === 0))">{{ Number(subItem.clean).toFixed(2) || ''}}</view>
               </uni-td>
               <uni-td>
                  <view class="name">{{ subItem.productQuantity }}</view>
@@ -168,12 +164,11 @@
               是否确认装卸?
               <view v-if="isNumOk || isClean">
                  <text>产品名称:{{activeObj.productName}}</text>
                  <view class="queren">
                     <text>请输入</text>:
                       <u--input
                          type='digit'
                          border="bottom"
                         :disabled="activeObj.productName === 'PVC' && activeObj.packingType === 5"
                        :placeholder="isNumOk ?  '数量' :'折吨'"
                        v-model="checkNum"
                     >
@@ -186,11 +181,38 @@
                     </view>
                     <view v-if="isNumOk && activeObj.productQuantity">当前数量:{{activeObj.productQuantity}}件</view>
                     <view v-if="activeObj.containerNumber"><span>集装箱号:</span>{{activeObj.containerNumber}}</view>
               </view>
                     <view>是否空车出厂: <u-radio-group
                        v-model="isEmptyCar"
                         placement="row"
                         iconPlacement="right"
                         style="justify-content: space-evenly"
                     >
                        <u-radio
                        :key="1"
                        :label="'是'"
                        :name="'1'"
                        shape="circle"
                        iconSize="32"
                        label-size="32"
                        size="40"
                        >
                        </u-radio>
                        <u-radio
                        :key="0"
                        :label="'否'"
                        :name="'0'"
                        shape="circle"
                        iconSize="32"
                        label-size="32"
                        size="40"
                        >
                        </u-radio>
                     </u-radio-group></view>
            </view>
         </u-modal>
      <!-- 煤仓 -->
      <!-- 仓库 -->
      <!-- <u-action-sheet :actions="secondClassActionsList"
         :show="secondClassShow"
         cancelText='取消'
@@ -208,12 +230,32 @@
</template>
<script>
   import { BaseUrl } from '@/api/publicInterface.js'
   export default {
      props: {
         loadUnloadData: {
            type: Object,
            default: {}
         }
      },
      computed:{
         isBtnShow(){
            return function(item){
               console.log(item,'itemssss')
               if(!item){
                  return false
               }else{
                  if(this.errorStatusList.includes(item.status)){
                     return false
                  }else{
                     return true;
                  }
               }
            }
         }
      },
      watch: {
         loadUnloadData: {
@@ -233,6 +275,7 @@
               orderType: '',
               bunkerId:""
            },
            isEmptyCar:null, //是否空车出厂
            checkStatusList:[
               '待取样','已取样','质检中','待复核','复核中','待审定','审定中','已完成'
            ],
@@ -241,10 +284,10 @@
            typeText:'', // 确认装卸三种类型
            isNumOk:false, //计件
            isClean:false, // 折吨
            // 煤场操作菜单
            // 场地操作菜单
            firstClassActionsList: [],
            firstClassShow: false,
            // 煤仓操作菜单
            // 仓库操作菜单
            secondClassActionsList: [],
            secondClassShow: false,
            coalList: [],
@@ -256,6 +299,7 @@
            filedId: "",
            selectedCoal: [],
            orderTypeShow: false,
            pvcWeight:'',
            orderTypeList: [{
                  name: '外销',
                  id: Math.floor(Math.random() * 100) + 1,
@@ -267,10 +311,14 @@
            ],
            isOrderType: '请选择', //磅房类型是否选择了 选择了清空
            cleanIconClick: true, //修改点击清空磅房选择会出现
            errorStatusList:[0,1,6,24,27,26] // 不能点击确认装卸的状态
         };
      },
      methods: {
            getPVCWeight(){
         },
         viewDetail(item){
            //查看收发单详情
            uni.navigateTo({
@@ -284,7 +332,8 @@
               this.userInfo.password = null
            })
         },
         // 获取煤场
         // 获取场地
         getDeptIdFiled() {
            uni.showLoading({
               title: "加载中"
@@ -346,7 +395,7 @@
            this.filedId = val.id
         },
         formHandle() {
            if (!this.dataForm.firstClass) return this.$u.toast('请选择煤场或者煤仓');
            if (!this.dataForm.firstClass) return this.$u.toast('请选择场地或者仓库');
            this.$nextTick(()=>{
                uni.navigateTo({
                  url: `/pages/loadUnload-page/loadUnload-detail/loadUnload-detail?bunkerId=${this.dataForm.bunkerId}`
@@ -361,24 +410,57 @@
         },
         open(){},
         enterOk(item){
         enterOk(parintItem,item){
            console.log(parintItem,'priintItem')
            uni.request({
               url: `${BaseUrl}/admin/dict/type/tray_weight`,
               method: 'GET',
               header: {
               Authorization: 'Bearer' + ' ' + uni.getStorageSync('token'),
               clientToc: 'Y',
               'CLIENT_TOC': 'Y',
            },
               success: (res) => {
                  this.pvcWeight = res.data.data.find(item=>item.label === '5') ? Number(res.data.data.find(item=>item.label == '5').value) : '';
               }
            })
         //  计件:   0 pvc type
         //  折吨:
            this.activeObj = item;
            if( (item.orderType === '外购' ||item.orderType === '外购退' ) && item.isWeight === 0){
            if( (parintItem.orderType === '外购' ||parintItem.orderType === '外购退' ) && item.isWeight === 0){
               this.isNumOk = true;
               this.isClean = false;
               //回显计数量
                this.checkNum  = item.productQuantity ? item.productQuantity : '';
            }else if( item.orderType ==='外购' &&  item.isWeight === 1){
            }else if( parintItem.orderType ==='外购' &&  item.isWeight === 1){
               this.isClean = true;
               this.isNumOk = false;
            }else{
               this.isNumOk = false;
               this.isClean = false;
            }
            //pvc
             if(parintItem.orderType ==='外销' && item.productName ==='PVC' && (item.packingType === 3 || item.packingType === 4)){
               this.isNumOk = true;
               this.isClean  = false;
            }
            //瓶装液氯条件
            //EDC 质检完成方可确认
            if(item.packingType === 1){
               this.isNumOk = true;
               this.isClean = false;
            }
            //
            //pvc大包自动计算折吨
            if(item.productName === 'PVC' && item.packingType === 5){
               this.checkNum =  (Number(item.productQuantity) * 60)
               this.isNumOk = true;
               this.isClean = false;
            }
            if(parintItem.orderType === '外购'){
               this.isEmptyCar = '1';
            }else if(parintItem.orderType === '外销' || parintItem.orderType === '外购退'){
               this.isEmptyCar = '0';
            }
         this.enterZx = true;
            
@@ -386,17 +468,24 @@
         closeModal(){
            this.enterZx = false;
            this.checkNum = '';
            this.isEmptyCar = null;
         },
         cancelModal(){
            this.enterZx = false;
            this.checkNum = '';
            this.isEmptyCar = null;
         },
         confirmModal(){
                uni.showLoading({
                    title:'加载中'
                });
            if(!this.checkNum){
               this.$u.toast(`请输入${this.isNumOk ? '计件数量' :'折吨'}!`);
            console.log(this.activeObj,'12313')
            if(this.activeObj.productName ==='EDC' && this.activeObj.checkStatus !== 7){
               this.$u.toast(`请检查当前EDC订单质检状态后在确认装卸!`);
               return
            }else if( this.isEmptyCar === null){
               this.$u.toast(`请检查${this.isNumOk ? '计件数量' :'折吨'},以及是否空车出厂项!`);
               return
            }else{
               this.enterZx = false;
@@ -404,6 +493,7 @@
               id: this.activeObj.id,
               productQuantity:this.isNumOk ? this.checkNum : '',
               discount:this.isClean ? this.checkNum : null,
               isEmptyCar:this.isEmptyCar,
               isPretendDischar:this.activeObj.isPretendDischar
             },'json').then(res=>{
               uni.hideLoading();
@@ -428,6 +518,7 @@
            })
            }
            
         },
         //判断是否是 三种特殊类型对应弹窗
         judgeTypeFun(name){
@@ -442,8 +533,6 @@
               })
         }
      },
      onShow(){
@@ -464,9 +553,12 @@
                  this.$u.toast('加载失败')
               }
            }).then(() => {
               this.getUserInfo()
            })
      }
            });
      },
   }
</script>
@@ -487,7 +579,7 @@
         .self-deliver {
         position: relative;
            top: vww(10);
            width: 95%;
            width: 98%;
            height: vww(40);
            margin: vww(8) 10rpx;
            padding: 0 vww(8);