| | |
| | | <view class="main"> |
| | | <!-- 当前选择仓库 --> |
| | | <view class="top-tag"> |
| | | <text>点击切换/选择仓库</text> |
| | | <u-tag |
| | | size='large' |
| | | icon='map' |
| | | :text="dataForm.firstClass ? dataForm.firstClass : '请选择仓库'" |
| | | @click="firstClassSelect" |
| | | ></u-tag> |
| | | </view> |
| | | <!-- 点击查看原盐钙镁 --> |
| | | <view class="self-deliver"> |
| | | <view class="self-deliver_text"> |
| | | 查看原盐钙镁结果 |
| | | </view> |
| | | <view class="self-deliver_btn"> |
| | | <u-button text="查看" |
| | | type="primary" |
| | | shape="cirle" |
| | | @click="todoDetail"></u-button> |
| | | </view> |
| | | </view> |
| | | <!-- <u--form labelPosition="top" |
| | | labelWidth="20%" |
| | | :borderBottom="false" |
| | |
| | | iconSize="1000" |
| | | v-if="detailData.length===0"></u-empty> |
| | | <!-- 渲染区域 --> |
| | | <zh-collapse @change='change' accordion v-for="item,i in detailData" |
| | | |
| | | <view class="history-information" v-for="item,i in detailData" |
| | | :key="i"> |
| | | <zh-collapse-item |
| | | class="collItem"> |
| | | <view class="" slot='title'> |
| | | <view class="history-information"> |
| | | <view class="first"> |
| | | <view class="">{{ item.deptName || '' }}</view> |
| | | <view class=""><u-icon name="arrow-right" |
| | | color="#999999" |
| | | size="40"></u-icon></view> |
| | | <view class="">{{ item.carNo || '' }}</view> |
| | | <view class=""></view> |
| | | </view> |
| | | <view class="second"> |
| | | <view class="coal-name">{{ item.coalName || '' }}</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 class="third-line_num">{{ item.cars2 }}</view> |
| | | <view class="third-line_text">客户名称:</view> |
| | | <view>{{ item.customerName }}</view> |
| | | </view> |
| | | <view class="third-line"> |
| | | <view class="third-line_text">剩余数:</view> |
| | | <!-- <view class="third-line_num" |
| | | v-if="roleType == 1">{{ item.carNumSurplus1 }}</view> |
| | | <view class="third-line_num" |
| | | v-else-if="roleType == 2">{{ item.carNumSurplus }}</view> --> |
| | | </view> |
| | | <view class="third-line"> |
| | | <view class="third-line_text">提煤单个数:</view> |
| | | <view class="third-line_num">{{ item.tmCount }}</view> |
| | | <view class="third-line" v-if="item.productName === 'EDC'"> |
| | | <view class="third-line_text">质检状态:</view> |
| | | <view> <u-tag :text="checkStatusList[item.checkStatus]" plain > </u-tag></view> |
| | | </view> |
| | | </view> |
| | | <view class="fourth"> |
| | |
| | | </view> |
| | | <view class="senddate">{{ item.orderCode }}</view> |
| | | </view> |
| | | </view> |
| | | |
| | | </view> |
| | | <view class="" slot='cont'> |
| | | <view class="table"> |
| | | <view class="table"> |
| | | <uni-table border stripe |
| | | emptyText="暂无更多数据"> |
| | | <uni-tr> |
| | | <uni-th width='200' |
| | | <uni-th width='140' |
| | | align="center">操作</uni-th> |
| | | <uni-th align="center" width='100'>产品</uni-th> |
| | | <uni-th align="center">车牌号</uni-th> |
| | | <uni-th align="center" width='100'>类型</uni-th> |
| | | <uni-th align="center" width='100'>皮重</uni-th> |
| | | <uni-th align="center" width='100'>毛重</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">仓库</uni-th> --> |
| | | <uni-th align="center" width='100'>状态</uni-th> |
| | | <!-- <uni-th align="center">状态</uni-th> --> |
| | | |
| | | </uni-tr> |
| | | <uni-tr v-for="(subItem, index) in item.tmTaskCoalList" :key="index"> |
| | | <uni-td align="center"> |
| | | <view class="btnBox"> |
| | | <!-- v-if="subItem.flag" --> |
| | | <text @click="viewDetail(subItem)">查看</text> |
| | | <text @click="enterOk(subItem)">确认装卸</text> |
| | | <!-- --> |
| | | <u-button text='查看' @click="viewDetail(subItem)"></u-button> |
| | | <u-button type='primary' text='确认装卸' v-if="subItem.flag" @click="enterOk(item,subItem)"></u-button> |
| | | </view></uni-td> |
| | | <uni-td align="center"> |
| | | <view class="name">{{ subItem.productName }}</view></uni-td> |
| | | <uni-td align="center"> |
| | | <view style="width:150rpx">{{ subItem.carNo }}</view></uni-td> |
| | | <view>{{ subItem.productName }}</view></uni-td> |
| | | <uni-td> |
| | | <view class="name">{{ subItem.orderType }}</view> |
| | | <view class="name">{{ subItem.bunkerName }}</view> |
| | | </uni-td> |
| | | <uni-td> |
| | | <view class="name">{{ subItem.skin }}</view> |
| | |
| | | <uni-td> |
| | | <view class="name">{{ subItem.hair }}</view> |
| | | </uni-td> |
| | | <uni-td> |
| | | <view class="name">{{ subItem.clean }}</view> |
| | | </uni-td> |
| | | <uni-td> |
| | | <view class="name">{{ subItem.productQuantity }}</view> |
| | | </uni-td> |
| | | <!-- |
| | | <uni-td align="center"> |
| | | <view>{{ subItem.bunkerName }}</view></uni-td> --> |
| | | <uni-td align="center"> |
| | | <view class="name">{{ subItem.statusView }}</view></uni-td> |
| | | <!-- <uni-td align="center"> |
| | | <view class="name">{{ subItem.statusView }}</view></uni-td> --> |
| | | |
| | | </uni-tr> |
| | | </uni-table> |
| | | </view> |
| | | </view> |
| | | </zh-collapse-item> |
| | | </zh-collapse> |
| | | </view> |
| | | |
| | | |
| | | </view> |
| | | <u-action-sheet :actions="firstClassActionsList" |
| | |
| | | 是否确认装卸? |
| | | <view v-if="isNumOk || isClean"> |
| | | <text>产品名称:{{activeObj.productName}}</text> |
| | | <view> |
| | | |
| | | <view class="queren"> |
| | | <text>请输入</text>: |
| | | <u--input |
| | | :placeholder="isNumOk ? '请输入数量' : isClean ? '请输入折吨' : '请输入'" |
| | | border="surround" |
| | | type='digit' |
| | | border="bottom" |
| | | :disabled="activeObj.productName === 'PVC' && activeObj.packingType === 5" |
| | | :placeholder="isNumOk ? '数量' :'折吨'" |
| | | v-model="checkNum" |
| | | ></u--input> |
| | | > |
| | | </u--input> |
| | | <text> {{isNumOk ? '件' : '吨' }}</text> |
| | | </view> |
| | | <!-- pvc 并且是大包 --> |
| | | <view class="pvcBig" v-if="activeObj.productName === 'PVC' && activeObj.packingType === 5"> |
| | | |
| | | </view> |
| | | <view v-if="isNumOk && activeObj.productQuantity">当前数量:{{activeObj.productQuantity}}件</view> |
| | | <view v-if="activeObj.containerNumber"><span>集装箱号:</span>{{activeObj.containerNumber}}</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> |
| | | |
| | | </view> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { BaseUrl } from '@/api/publicInterface.js' |
| | | export default { |
| | | props: { |
| | | loadUnloadData: { |
| | | type: Object, |
| | | default: {} |
| | | } |
| | | }, |
| | | watch: { |
| | | loadUnloadData: { |
| | | handler(v) { |
| | | console.log(v,'vvvvvv') |
| | | this.loadUnloadData = v; |
| | | }, |
| | | deep: true, |
| | | immediate: true |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | dataForm: { |
| | |
| | | orderType: '', |
| | | bunkerId:"" |
| | | }, |
| | | isEmptyCar:null, //是否空车出厂 |
| | | checkStatusList:[ |
| | | '待取样','已取样','质检中','待复核','复核中','待审定','审定中','已完成' |
| | | ], |
| | | index: '', |
| | | enterZx:false, |
| | | typeText:'', // 确认装卸三种类型 |
| | |
| | | filedId: "", |
| | | selectedCoal: [], |
| | | orderTypeShow: false, |
| | | pvcWeight:'', |
| | | orderTypeList: [{ |
| | | name: '外销', |
| | | id: Math.floor(Math.random() * 100) + 1, |
| | |
| | | }; |
| | | }, |
| | | methods: { |
| | | getPVCWeight(){ |
| | | |
| | | }, |
| | | viewDetail(item){ |
| | | //查看收发单详情 |
| | | uni.navigateTo({ |
| | |
| | | this.userInfo.password = null |
| | | }) |
| | | }, |
| | | |
| | | // 获取煤场 |
| | | getDeptIdFiled() { |
| | | uni.showLoading({ |
| | |
| | | uni.hideLoading() |
| | | if (res.code === 0) { |
| | | this.firstClassActionsList = res.data; |
| | | if(res.data.length === 1){ |
| | | if(res.data.length){ |
| | | this.dataForm.bunkerId = res.data[0].id; |
| | | uni.setStorageSync('bunkerId',res.data[0].id) |
| | | this.dataForm.firstClass = res.data[0].name; |
| | | this.getDetailData(); |
| | | |
| | | } |
| | | } else { |
| | |
| | | title:'加载中' |
| | | }) |
| | | this.$reqGet('getTaskCoalListByBunkerId', { bunkerId:this.dataForm.bunkerId }).then(res => { |
| | | uni.hideLoading(); |
| | | if (res.code === 0) { |
| | | this.detailData = res.data.map(item=>{ |
| | | item.tmTaskCoalList.map(el=>{ |
| | |
| | | return item; |
| | | }); |
| | | console.log(this.detailData,'detailData') |
| | | uni.hideLoading(); |
| | | }else if(res.code === 1){ |
| | | this.detailData = []; |
| | | this.$u.toast(res.msg ? res.msg : '操作失败!!') |
| | | } |
| | | }).catch(err=>{ |
| | | this.detailData = []; |
| | | this.$u.toast(res.msg ? res.msg : '操作失败!!') |
| | | }) |
| | | |
| | | }, |
| | |
| | | close(){ |
| | | |
| | | }, |
| | | |
| | | |
| | | |
| | | |
| | | open(){}, |
| | | enterOk(item){ |
| | | console.log('123',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) => { |
| | | console.log(res, '绑定结果'); |
| | | this.pvcWeight = res.data.data[0].value ? Number(res.data.data[0].value) : ''; |
| | | |
| | | } |
| | | }) |
| | | this.activeObj = item; |
| | | if(item.productQuantity){ |
| | | if( (parintItem.orderType === '外购' ||parintItem.orderType === '外购退' ) && item.isWeight === 0){ |
| | | this.isNumOk = true; |
| | | }else if(item.isWeight === 1){ |
| | | this.isClean = false; |
| | | //回显计数量 |
| | | this.checkNum = item.productQuantity ? item.productQuantity : ''; |
| | | }else if( parintItem.orderType ==='外购' && item.isWeight === 1){ |
| | | this.isClean = true; |
| | | this.isNumOk = false; |
| | | }else if(parintItem.orderType ==='外销' && item.productName ==='PVC' && (item.packingType === 3 || item.packingType === 4)){ |
| | | this.isNumOk = true; |
| | | this.isClean = false; |
| | | } |
| | | this.enterZx = true; |
| | | else{ |
| | | this.isNumOk = false; |
| | | this.isClean = false; |
| | | } |
| | | //pvc大包自动计算折吨 |
| | | if(parintItem.productName === 'PVC' && item.packingType === 5){ |
| | | this.checkNum = (Number(item.productQuantity) * this.pvcWeight) |
| | | |
| | | } |
| | | if(parintItem.orderType === '外购'){ |
| | | this.isEmptyCar = '1'; |
| | | }else if(parintItem.orderType === '外销' || parintItem.orderType === '外购退'){ |
| | | this.isEmptyCar = '0'; |
| | | } |
| | | this.enterZx = true; |
| | | |
| | | }, |
| | | closeModal(){ |
| | | this.enterZx = false; |
| | | this.checkNum = ''; |
| | | this.isEmptyCar = null; |
| | | }, |
| | | cancelModal(){ |
| | | this.enterZx = false; |
| | | this.checkNum = ''; |
| | | this.isEmptyCar = null; |
| | | }, |
| | | confirmModal(){ |
| | | this.enterZx = false; |
| | | this.isClean = false; |
| | | this.isNumOk = false; |
| | | this.$reqPost('confirmLoadAndUnload',{ |
| | | uni.showLoading({ |
| | | title:'加载中' |
| | | }); |
| | | if(!this.checkNum || this.isEmptyCar === null){ |
| | | this.$u.toast(`请检查${this.isNumOk ? '计件数量' :'折吨'},以及是否空车出厂项!`); |
| | | return |
| | | }else{ |
| | | this.enterZx = false; |
| | | this.$reqPost('confirmLoadAndUnload',{ |
| | | id: this.activeObj.id, |
| | | productQuantity:this.isNumOk ? this.checkNum :this.activeObj.skin, |
| | | productQuantity:this.isNumOk ? this.checkNum : '', |
| | | discount:this.isClean ? this.checkNum : null, |
| | | isEmptyCar:this.isEmptyCar, |
| | | isPretendDischar:this.activeObj.isPretendDischar |
| | | },'json').then(res=>{ |
| | | uni.hideLoading(); |
| | | console.log(res,'rez') |
| | | this.checkNum = ''; |
| | | if(res.code === 1){ |
| | | console.log('触发') |
| | | this.$u.toast(res.msg || '失败'); |
| | | uni.hideLoading(); |
| | | }else{ |
| | | this.$u.toast('操作成功'); |
| | | this.getDetailData(); |
| | | |
| | | } |
| | | setTimeout(() => { |
| | | this.getDetailData(); |
| | | }, 500); |
| | | |
| | | }).catch((err) => { |
| | | this.$u.toast(err.msg || '失败'); |
| | | }).finally(() => { |
| | | uni.hideLoading(); |
| | | |
| | | }) |
| | | } |
| | | |
| | | }, |
| | | //判断是否是 三种特殊类型对应弹窗 |
| | | judgeTypeFun(name){ |
| | | |
| | | |
| | | } |
| | | }, |
| | | //查看最近一次的原盐钙镁 |
| | | todoDetail(){ |
| | | console.log() |
| | | uni.navigateTo({ |
| | | url: `/pages/loadUnload-page/checkTestDetails/index` |
| | | }) |
| | | |
| | | |
| | | } |
| | | |
| | | }, |
| | | onShow(){ |
| | |
| | | this.$u.toast('加载失败') |
| | | } |
| | | }).then(() => { |
| | | |
| | | this.getUserInfo() |
| | | }) |
| | | } |
| | | }); |
| | | |
| | | |
| | | }, |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" |
| | | scoped> |
| | | ::-webkit-scrollbar{ |
| | | display: none; |
| | | } |
| | | .table{ |
| | | width: 100%; |
| | | /deep/ .uni-table{ |
| | | min-width: 0!important; |
| | | margin-left: 20rpx; |
| | | } |
| | | |
| | | } |
| | | // 自主配送 |
| | | .self-deliver { |
| | | position: relative; |
| | | top: vww(10); |
| | | width: 95%; |
| | | height: vww(40); |
| | | margin: vww(8) 10rpx; |
| | | padding: 0 vww(8); |
| | | background: #ffffff; |
| | | box-shadow: 0rpx 0rpx 14rpx 0rpx rgba(73, 120, 240, 0.14), 0rpx 7rpx 45rpx 0rpx rgba(73, 120, 240, 0.12); |
| | | border-radius: 20rpx; |
| | | @include flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | /deep/.u-button { |
| | | width: 100%; |
| | | height: 28px !important; |
| | | line-height: 40px; |
| | | padding: 0 12px; |
| | | font-size: 28rpx; |
| | | font-weight: 300; |
| | | color: #ffffff; |
| | | background: #497bfb !important; |
| | | letter-spacing: 4rpx; |
| | | border-radius: 37rpx 37rpx 37rpx 37rpx !important; |
| | | box-shadow: 2rpx 3rpx 13rpx 0rpx rgba(43, 98, 239, 0.5), 0rpx 0rpx 9rpx 0rpx rgba(247, 250, 253, 0.29); |
| | | } |
| | | } |
| | | .queren{ |
| | | display: flex; |
| | | justify-content: space-between; |
| | | /deep/ .u-input { |
| | | border-bottom: 1px solid #ccc; |
| | | } |
| | | } |
| | | .name{ |
| | | width: 100rpx; |
| | | width: 50rpx; |
| | | } |
| | | .table{ |
| | | width: 94%; |
| | | margin-left: 20rpx; |
| | | position: relative; |
| | | margin-top: 30rpx; |
| | | overflow-x: auto; |
| | | /deep/ .uni-table-th{ |
| | | font-size: 12px; |
| | |
| | | font-size: 12px; |
| | | } |
| | | /deep/ .uni-table{ |
| | | min-width: 340rpx!important; |
| | | min-width: 0rpx!important; |
| | | // position: sticky !important;; |
| | | } |
| | | /deep/ .uni-table-body-wrapper { |
| | |
| | | |
| | | } |
| | | .btnBox{ |
| | | min-width: 150rpx; |
| | | min-width: 130rpx; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | justify-content: space-around; |
| | | text{ |
| | | color: #035cfb; |
| | | } |
| | |
| | | position: relative; |
| | | top: vww(-160); |
| | | .top-tag{ |
| | | width: 25%; |
| | | width: 33%; |
| | | height: 100rpx; |
| | | margin-left: 70%; |
| | | margin-left: 65%; |
| | | display: flex; |
| | | /* margin-top: 40rpx; */ |
| | | color: #fff; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | } |
| | | |
| | | .div-box{ |
| | | width: 100%; |
| | | display: flex; |
| | | margin-left: 10rpx; |
| | | flex-direction: column; |
| | | /deep/ .u-collapse{ |
| | | background: #fff; |
| | | } |
| | |
| | | } |
| | | } |
| | | .history-information { |
| | | |
| | | margin-bottom:50rpx; |
| | | margin-top: 10rpx; |
| | | background: #ffffff; |
| | | border-radius: 20rpx; |
| | | @include flex flex-direction: column; |
| | |
| | | |
| | | .third { |
| | | width: 96%; |
| | | height: 31rpx; |
| | | height: auto; |
| | | font-size: 30rpx; |
| | | font-weight: 300; |
| | | color: #515151; |
| | | margin: vww(10) vww(10) 0; |
| | | @include flex; |
| | | flex-direction: column; |
| | | |
| | | .third-line { |
| | | @include flex; |
| | | align-items: center;; |
| | | |
| | | &_text { |
| | | color: #919090; |