Commit 4e49a78e authored by 邓春圆's avatar 邓春圆

Merge remote-tracking branch 'origin/release' into release

parents 4c69b323 382858d0
...@@ -145,3 +145,12 @@ export function deleteAllSplit(orderId) { ...@@ -145,3 +145,12 @@ export function deleteAllSplit(orderId) {
params: {orderId} params: {orderId}
}) })
} }
// 获取拆单订单的总货值与箱数拆分记录
export function splitItemWorthCheck(orderId) {
return request({
url: '/order/split-item/worth/check',
method: 'get',
params: {orderId}
})
}
...@@ -6,6 +6,7 @@ import errorCode from '@/utils/errorCode' ...@@ -6,6 +6,7 @@ import errorCode from '@/utils/errorCode'
import Cookies from "js-cookie"; import Cookies from "js-cookie";
import {getTenantEnable} from "@/utils/ruoyi"; import {getTenantEnable} from "@/utils/ruoyi";
import { getLocale } from '@/utils/db'; import { getLocale } from '@/utils/db';
import i18n from "@/i18n";
// 是否显示重新登录 // 是否显示重新登录
export let isRelogin = { show: false }; export let isRelogin = { show: false };
...@@ -114,9 +115,15 @@ service.interceptors.response.use(res => { ...@@ -114,9 +115,15 @@ service.interceptors.response.use(res => {
// 额外情况 // 额外情况
return Promise.reject(res.data) return Promise.reject(res.data)
} else if (code !== 200) { } else if (code !== 200) {
Notification.error({ // 如果内容很长则用alert提示,不然可能显示不全,自动隐藏也会导致看不完整就消失了
title: msg if(msg.length > 300){
}) MessageBox.alert(msg, i18n.t('错误提示'), i18n.t('确定'))
}else{
Notification.error({
title: msg
})
}
return Promise.reject(msg || 'error') return Promise.reject(msg || 'error')
} else { } else {
return res.data return res.data
......
...@@ -141,30 +141,34 @@ ...@@ -141,30 +141,34 @@
</el-table-column> </el-table-column>
<el-table-column :label="$t('入仓体积')" align="center" > <el-table-column :label="$t('入仓体积')" align="center" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.volume" @change="updateField(scope.row, 'volume')" size="mini" disabled> {{scope.row.volume}}
<!--<el-input v-model="scope.row.volume" @change="updateField(scope.row, 'volume')" size="mini" disabled>
<span slot="append"></span> <span slot="append"></span>
</el-input> </el-input>-->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('收费体积')" align="center" > <el-table-column :label="$t('收费体积')" align="center" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.chargeVolume" @change="updateField(scope.row, 'chargeVolume')" size="mini" disabled> {{scope.row.chargeVolume}}
<!--<el-input v-model="scope.row.chargeVolume" @change="updateField(scope.row, 'chargeVolume')" size="mini" disabled>
<span slot="append"></span> <span slot="append"></span>
</el-input> </el-input>-->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('入仓重量')" align="center"> <el-table-column :label="$t('入仓重量')" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.weight" @change="updateField(scope.row, 'weight')" size="mini" disabled> {{scope.row.weight}}kg
<!--<el-input v-model="scope.row.weight" @change="updateField(scope.row, 'weight')" size="mini" disabled>
<span slot="append">kg</span> <span slot="append">kg</span>
</el-input> </el-input>-->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('收费重量')" align="center"> <el-table-column :label="$t('收费重量')" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.chargeWeight" @change="updateField(scope.row, 'chargeWeight')" size="mini" disabled> {{scope.row.chargeWeight}}kg
<!--<el-input v-model="scope.row.chargeWeight" @change="updateField(scope.row, 'chargeWeight')" size="mini" disabled>
<span slot="append">kg</span> <span slot="append">kg</span>
</el-input> </el-input>-->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('货值')" align="center"> <el-table-column :label="$t('货值')" align="center">
...@@ -231,7 +235,7 @@ ...@@ -231,7 +235,7 @@
<span class="mr-10">{{ $t('入仓重量') }}:{{ mainOrderItem.weight || 0 }}kg</span> <span class="mr-10">{{ $t('入仓重量') }}:{{ mainOrderItem.weight || 0 }}kg</span>
<span class="mr-10">{{ $t('收费重量') }}:{{ mainOrderItem.chargeWeight || 0 }}kg</span> <span class="mr-10">{{ $t('收费重量') }}:{{ mainOrderItem.chargeWeight || 0 }}kg</span>
<span class="mr-10">{{ $t('数量(个)') }}:{{ mainOrderItem.quantity || 0 }}</span> <span class="mr-10">{{ $t('数量(个)') }}:{{ mainOrderItem.quantity || 0 }}</span>
<span class="mr-10">{{ $t('剩余货值') }}:{{ mainOrderItem.worth || 0 }}{{ $t('元') }}</span> <span class="mr-10">{{ $t('剩余可拆货值') }}:{{ leftWorth}}{{ $t('元') }}</span>
</div> </div>
<div class="page-title">{{$t('可拆入仓记录')}}</div> <div class="page-title">{{$t('可拆入仓记录')}}</div>
<el-table <el-table
...@@ -291,7 +295,7 @@ ...@@ -291,7 +295,7 @@
<el-table-column :label="$t('操作')"> <el-table-column :label="$t('操作')">
<template v-slot="{ row, column, $index}"> <template v-slot="{ row, column, $index}">
<el-tag v-if="getWarehouseInSplitData(row.id,'num') >= row.cartonsNum" disabled size="mini" type="primary" >{{$t('已拆完')}}</el-tag> <el-tag v-if="getWarehouseInSplitData(row.id,'num') >= row.cartonsNum" disabled size="mini" type="primary" >{{$t('已拆完')}}</el-tag>
<el-button v-else size="mini" type="primary" @click="putInRecord(row)" :disabled="leftSplitNum <= 0">放入</el-button> <el-button v-else size="mini" type="primary" @click="putInRecord(row)" :disabled="leftSplitNum <= 0">{{$t('放入')}}</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -299,7 +303,7 @@ ...@@ -299,7 +303,7 @@
<div class="page-title" style="margin: 0"> <div class="page-title" style="margin: 0">
{{$t('已放入入仓记录')}} {{$t('已放入入仓记录')}}
</div> </div>
<el-button type="danger" size="mini" @click="clearAll">清空放入数据</el-button> <el-button type="danger" size="mini" @click="clearAll">{{$t('清空放入数据')}}</el-button>
</div> </div>
<el-table <el-table
...@@ -348,12 +352,12 @@ ...@@ -348,12 +352,12 @@
</el-table-column> </el-table-column>
<el-table-column :label="$t('操作')"> <el-table-column :label="$t('操作')">
<template v-slot="{ row, column, $index}"> <template v-slot="{ row, column, $index}">
<el-button size="mini" type="primary" @click="deleteRow($index)">删除</el-button> <el-button size="mini" type="primary" @click="deleteRow($index)">{{$t('删除')}}</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div class="page-title">放入数据</div> <div class="page-title">{{$t('放入数据')}}</div>
<div class="pl-20 mb-10"> <div class="pl-20 mb-10">
<span class="mr-10">{{$t('箱数')}}:{{ putin.num || 0 }},</span> <span class="mr-10">{{$t('箱数')}}:{{ putin.num || 0 }},</span>
<span class="mr-10">{{ $t('数量(个)') }}:{{ putin.quantity || 0 }},</span> <span class="mr-10">{{ $t('数量(个)') }}:{{ putin.quantity || 0 }},</span>
...@@ -400,7 +404,7 @@ import { ...@@ -400,7 +404,7 @@ import {
getSplitList, getSplitList,
// quantitycheck, // quantitycheck,
createSplitItem, createSplitItem,
deleteSplitItem, deleteSplitItem, splitItemWorthCheck,
} from "@/api/ecw/orderHandle"; } from "@/api/ecw/orderHandle";
import {quantityRequired} from "@/api/ecw/warehouse"; import {quantityRequired} from "@/api/ecw/warehouse";
import { getTradeCityList } from "@/api/ecw/region"; import { getTradeCityList } from "@/api/ecw/region";
...@@ -472,7 +476,9 @@ export default { ...@@ -472,7 +476,9 @@ export default {
// 当前选择的入仓记录ID // 当前选择的入仓记录ID
selectedWarehouseInId: null, selectedWarehouseInId: null,
// 当前正在放入的入仓记录 // 当前正在放入的入仓记录
currentPutIn: null currentPutIn: null,
// 订单剩余数据
orderLeftData: null
}; };
}, },
created() { created() {
...@@ -662,7 +668,16 @@ export default { ...@@ -662,7 +668,16 @@ export default {
num -= item.num num -= item.num
})*/ })*/
return num return num
} },
// 订单剩余可拆货值
leftWorth(){
if(!this.orderData?.costVO?.totalWorth)return 0;
let worth = this.orderData.costVO.totalWorth
this.splitData.orderSplitItemBackVOList.forEach(item =>{
worth -= item.worth
})
return worth
},
}, },
methods: { methods: {
/*检查并提交字段(体积,重量)修改*/ /*检查并提交字段(体积,重量)修改*/
...@@ -973,9 +988,18 @@ export default { ...@@ -973,9 +988,18 @@ export default {
const chargeWeight = orderItem.itemType === 3 ? (orderItem.chargeWeight*rate).toFixed(2) : this.putin.weight const chargeWeight = orderItem.itemType === 3 ? (orderItem.chargeWeight*rate).toFixed(2) : this.putin.weight
this.$set(this.shopForm, 'chargeVolume', chargeVolume) this.$set(this.shopForm, 'chargeVolume', chargeVolume)
this.$set(this.shopForm, 'chargeWeight', chargeWeight) this.$set(this.shopForm, 'chargeWeight', chargeWeight)
this.$set(this.shopForm, 'worth', (orderItem.worth*rate).toFixed(2))
// 货值按照主单的总货值*订单的箱数比例
let worth = (this.orderData.costVO.totalWorth * this.putin.num / this.orderData.sumNum).toFixed(2)
this.$set(this.shopForm, 'worth', worth)
},
// 查询订单剩余数据
getOrderLeftData(){
splitItemWorthCheck(this.orderData.orderId).then(res => {
this.orderLeftData = res.data
})
} }
}, }
}; };
</script> </script>
......
...@@ -53,11 +53,16 @@ ...@@ -53,11 +53,16 @@
<el-table-column :label="$t('提单号')" prop="tidanNo"></el-table-column> <el-table-column :label="$t('提单号')" prop="tidanNo"></el-table-column>
<el-table-column :label="$t('备注')" prop="remarks"></el-table-column> <el-table-column :label="$t('备注')" prop="remarks"></el-table-column>
<el-table-column :label="$t('操作人')" prop="operator"></el-table-column> <el-table-column :label="$t('操作人')" prop="operator"></el-table-column>
<el-table-column :label="$t('日期')" prop="createTime"> <el-table-column :label="$t('放货日期')" prop="createTime">
<template slot-scope="{row}"> <template slot-scope="{row}">
{{row.createTime|parseTime}} {{row.createTime|parseTime}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('复核日期')" prop="createTime">
<template slot-scope="{row}">
{{row.checkTime|parseTime}}
</template>
</el-table-column>
<el-table-column :label="$t('状态')" prop="status"> <el-table-column :label="$t('状态')" prop="status">
<template slot-scope="{row}"> <template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_RELEASE_STATUS" :value="row.status" /> <dict-tag :type="DICT_TYPE.ECW_RELEASE_STATUS" :value="row.status" />
...@@ -70,7 +75,7 @@ ...@@ -70,7 +75,7 @@
<el-button v-if="scope.row.status == 1" type="success" size="mini" @click="review(scope.row.id)">{{$t('放货复核')}}</el-button> <el-button v-if="scope.row.status == 1" type="success" size="mini" @click="review(scope.row.id)">{{$t('放货复核')}}</el-button>
<el-button v-if="scope.row.status == 3" type="danger" size="mini" @click="fallbackIndex=scope.$index">{{$t('反复核')}}</el-button> <el-button v-if="scope.row.status == 3" type="danger" size="mini" @click="fallbackIndex=scope.$index">{{$t('反复核')}}</el-button>
<el-button v-if="scope.row.status == 3" type="success" size="mini" @click="cargoControlPickId=scope.row.id">{{$t('调货')}}</el-button> <el-button v-if="scope.row.status == 3" type="success" size="mini" @click="cargoControlPickId=scope.row.id">{{$t('调货')}}</el-button>
<el-button v-if="[2,4, 5, 6].indexOf(scope.row.status) > -1" type="primary" size="mini" @click="showApprovalDetail(scope.row.formId)">{{$t('审核详情')}}</el-button> <el-button v-if="[2,4, 5, 6].indexOf(scope.row.status) > -1" type="primary" size="mini" @click="showApprovalDetail(scope.row.formId)">{{$t('审核详情')}}</el-button>
<el-button v-if="[2,4, 5, 6].indexOf(scope.row.status) > -1" type="danger" size="mini" @click="cancelApproval(scope.row.id)">{{$t('取消审核')}}</el-button> <el-button v-if="[2,4, 5, 6].indexOf(scope.row.status) > -1" type="danger" size="mini" @click="cancelApproval(scope.row.id)">{{$t('取消审核')}}</el-button>
</template> </template>
......
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
<el-form-item label=""> <el-form-item label="">
<el-button type="primary" @click="submit">{{$t('提交')}}</el-button> <el-button type="primary" @click="submit" :loading="loading">{{$t('提交')}}</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-dialog> </el-dialog>
...@@ -47,6 +47,8 @@ export default { ...@@ -47,6 +47,8 @@ export default {
}, },
data(){ data(){
return { return {
// 提交中状态
loading: false,
current: 'createBatch', current: 'createBatch',
show: false, show: false,
form:{ form:{
...@@ -94,10 +96,12 @@ export default { ...@@ -94,10 +96,12 @@ export default {
}) })
} }
} }
this.loading = true;
({createBatch, createSplitBatch}[this.current])(data).then(res => { ({createBatch, createSplitBatch}[this.current])(data).then(res => {
this.$message.success(this.$t("操作成功")); this.$message.success(this.$t("操作成功"));
this.$emit('success') this.$emit('success')
}).finally(() => {
this.loading = false
}) })
}) })
}, },
......
...@@ -25,18 +25,27 @@ ...@@ -25,18 +25,27 @@
<el-descriptions-item :label="$t('申请原因')" v-if="applyType == 8"> <el-descriptions-item :label="$t('申请原因')" v-if="applyType == 8">
<dict-tag :type="DICT_TYPE.ECW_PICK_RECURRENT_NUCLEAR_TYPE" :value="detail.recurrentNuclearType" /> <dict-tag :type="DICT_TYPE.ECW_PICK_RECURRENT_NUCLEAR_TYPE" :value="detail.recurrentNuclearType" />
</el-descriptions-item> </el-descriptions-item>
<!-- 调货 --> <!-- 调货 -->
<el-descriptions-item :label="$t('申请原因')" v-if="applyType == 9"> <el-descriptions-item :label="$t('申请原因')" v-if="applyType == 9">
{{$l(detail, 'reason')}} {{$l(detail, 'reason')}}
</el-descriptions-item> </el-descriptions-item>
<!-- 取消放货 --> <!-- 取消放货 -->
<el-descriptions-item :label="$t('申请原因')" v-if="applyType == 10"> <el-descriptions-item :label="$t('申请原因')" v-if="applyType == 10" :span="2">
<dict-tag :type="DICT_TYPE.ECW_CANCEL_PICK_TYPE" :value="detail.cancelPickType" /> <dict-tag :type="DICT_TYPE.ECW_CANCEL_PICK_TYPE" :value="detail.cancelPickType" />
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item v-if="voucherList.length" :label="$t('凭证')" :span="3">
<div v-for="(item, index) in voucherList" :key="index" style="padding:5px">
<video v-if="isVideo(item)" :src="item" @click="playVideo(item)" style="width: 100px; height: 100px;"></video>
<el-image v-else :src="item" style="width: 100px; height: 100px;" :preview-src-list="voucherImages"></el-image>
</div>
</el-descriptions-item>
</el-descriptions> </el-descriptions>
<el-dialog :visible="!!videoUrl" :before-close="closeVideoPlayer">
<video v-if="!!videoUrl" :src="videoUrl" style="width: 500px; height: 500px" controls></video>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
...@@ -44,7 +53,9 @@ import {getPickUpdateApproveInfo} from '@/api/ecw/orderCargoControl' ...@@ -44,7 +53,9 @@ import {getPickUpdateApproveInfo} from '@/api/ecw/orderCargoControl'
import {getOrder} from '@/api/ecw/order' import {getOrder} from '@/api/ecw/order'
import {getChannelListByIds} from '@/api/ecw/channel' import {getChannelListByIds} from '@/api/ecw/channel'
import {parseTime} from '@/utils/ruoyi' import {parseTime} from '@/utils/ruoyi'
import Template from "@/views/cms/template/index.vue";
export default { export default {
components: {Template},
filters: {parseTime}, filters: {parseTime},
props:{ props:{
id: [String, Number], id: [String, Number],
...@@ -55,7 +66,8 @@ export default { ...@@ -55,7 +66,8 @@ export default {
detail: null, detail: null,
order: null, order: null,
channels: [], channels: [],
channelName: '/' channelName: '/',
videoUrl: null
} }
}, },
watch:{ watch:{
...@@ -74,7 +86,24 @@ export default { ...@@ -74,7 +86,24 @@ export default {
let channel = this.channels.find(item => item.channelId == id) let channel = this.channels.find(item => item.channelId == id)
return channel ? channel.nameZh : '/' return channel ? channel.nameZh : '/'
} }
} },
// 凭证
voucherList(){
if(!this.detail || !this.detail.voucher) return []
return this.detail.voucher.split(',')
},
// 图片类型的凭证
voucherImages(){
return this.voucherList.filter(item => {
return !this.isVideo(item)
})
},
// 判断是否是视频链接
isVideo(){
return (url) => {
return ['mp4'].indexOf(url.split('.').pop().toLowerCase()) > -1
}
}
}, },
created(){ created(){
if(this.id){ if(this.id){
...@@ -92,11 +121,20 @@ export default { ...@@ -92,11 +121,20 @@ export default {
}) })
}, },
getChannel(){ getChannel(){
if(!this.order || !this.order.channelId) return if(!this.order || !this.order.channelId) return
getChannel(this.order.channelId).then(res => { getChannel(this.order.channelId).then(res => {
this.channelName = this.$l(res.data, 'name') this.channelName = this.$l(res.data, 'name')
}) })
}, },
// 播放视频
playVideo(url){
console.log('play video', url)
this.videoUrl = url
},
// 关闭视频播放器
closeVideoPlayer(){
this.videoUrl = null
}
} }
} }
</script> </script>
...@@ -108,4 +146,4 @@ export default { ...@@ -108,4 +146,4 @@ export default {
font-weight: bold; font-weight: bold;
} }
} }
</style> </style>
\ No newline at end of file
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
</template> </template>
<script> <script>
import {sendSmsCode} from '@/api/ecw/orderCargoControl' import {sendSmsCode} from '@/api/ecw/orderCargoControl'
const timeout = null let timeout = null
export default { export default {
props:{ props:{
orderId: [String, Number], orderId: [String, Number],
...@@ -46,10 +46,10 @@ export default { ...@@ -46,10 +46,10 @@ export default {
countDown(){ countDown(){
this.leftTime -- this.leftTime --
if(this.leftTime <= 0){ if(this.leftTime <= 0){
return false return false
} }
timeout = setTimeout(this.countDown, 1000) timeout = setTimeout(this.countDown, 1000)
} }
} }
} }
</script> </script>
\ No newline at end of file
...@@ -172,9 +172,10 @@ ...@@ -172,9 +172,10 @@
</el-table-column> </el-table-column>
<el-table-column :label="$t('收费体积')" align="center" > <el-table-column :label="$t('收费体积')" align="center" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.chargeVolume" @change="updateField(scope.row, 'chargeVolume')" size="mini" disabled> {{scope.row.chargeVolume}}
<!--<el-input v-model="scope.row.chargeVolume" @change="updateField(scope.row, 'chargeVolume')" size="mini" disabled>
<span slot="append"></span> <span slot="append"></span>
</el-input> </el-input>-->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('入仓重量')" align="center"> <el-table-column :label="$t('入仓重量')" align="center">
...@@ -184,16 +185,18 @@ ...@@ -184,16 +185,18 @@
</el-table-column> </el-table-column>
<el-table-column :label="$t('收费重量')" align="center"> <el-table-column :label="$t('收费重量')" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.chargeWeight" @change="updateField(scope.row, 'chargeWeight')" size="mini" disabled> {{scope.row.chargeWeight}}kg
<!--<el-input v-model="scope.row.chargeWeight" @change="updateField(scope.row, 'chargeWeight')" size="mini" disabled>
<span slot="append">kg</span> <span slot="append">kg</span>
</el-input> </el-input>-->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('货值')" align="center"> <el-table-column :label="$t('货值')" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.worth" @change="updateField(scope.row, 'worth')" size="mini" disabled> {{scope.row.worth}}{{ $t('') }}
<!--<el-input v-model="scope.row.worth" @change="updateField(scope.row, 'worth')" size="mini" disabled>
<span slot="append">{{ $t('') }}</span> <span slot="append">{{ $t('') }}</span>
</el-input> </el-input>-->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('箱数')" align="center" prop="num"> <el-table-column :label="$t('箱数')" align="center" prop="num">
...@@ -256,12 +259,12 @@ ...@@ -256,12 +259,12 @@
<el-form ref="shopForm" :model="shopForm" :rules="shopRules" label-width="120px" inline> <el-form ref="shopForm" :model="shopForm" :rules="shopRules" label-width="120px" inline>
<el-form-item :label="$t('中文品名')"> <el-form-item :label="$t('中文品名')">
<el-select v-model="shopForm.orderItemId" :placeholder="$t('请选择中文品名')"> <el-select v-model="shopForm.orderItemId" :placeholder="$t('请选择中文品名')">
<el-option v-for="item in orderData.orderItemVOList" :label="item.prodTitleZh" :value="item.orderItemId" :key="item.prodTitleZh" ></el-option> <el-option v-for="item in orderData.orderItemVOList" :label="item.prodTitleZh" :value="item.orderItemId" :key="item.orderItemId" ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('英文品名')"> <el-form-item :label="$t('英文品名')">
<el-select v-model="shopForm.orderItemId" :placeholder="$t('请选择英文品名')"> <el-select v-model="shopForm.orderItemId" :placeholder="$t('请选择英文品名')">
<el-option v-for="item in orderData.orderItemVOList" :label="item.prodTitleEn" :value="item.orderItemId" :key="item.prodTitleEn" ></el-option> <el-option v-for="item in orderData.orderItemVOList" :label="item.prodTitleEn" :value="item.orderItemId" :key="item.orderItemId" ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-card> <el-card>
...@@ -273,7 +276,7 @@ ...@@ -273,7 +276,7 @@
<span class="mr-10">{{ $t('入仓重量') }}:{{ leftData.weight || 0 }}kg</span> <span class="mr-10">{{ $t('入仓重量') }}:{{ leftData.weight || 0 }}kg</span>
<span class="mr-10">{{ $t('收费重量') }}:{{ leftData.chargeWeight || 0 }}kg</span> <span class="mr-10">{{ $t('收费重量') }}:{{ leftData.chargeWeight || 0 }}kg</span>
<span class="mr-10">{{ $t('数量(个)') }}:{{ leftData.quantity || 0 }}</span> <span class="mr-10">{{ $t('数量(个)') }}:{{ leftData.quantity || 0 }}</span>
<span class="mr-10">{{ $t('剩余货值') }}:{{ leftData.worth || 0 }}{{ $t('元') }}</span> <span class="mr-10" v-if="orderLeftData">{{ $t('剩余订单货值') }}:{{ orderLeftData.splitResidueWorth || 0 }}{{ $t('元') }}</span>
</div> </div>
</el-card> </el-card>
...@@ -413,8 +416,8 @@ ...@@ -413,8 +416,8 @@
<el-input-number v-model="shopForm.chargeWeight" controls-position="right"></el-input-number>kg <el-input-number v-model="shopForm.chargeWeight" controls-position="right"></el-input-number>kg
</el-form-item> </el-form-item>
<el-form-item :label="$t('放入货值')"> <el-form-item :label="$t('放入货值')" v-if="orderData.costVO">
<el-input-number v-model="shopForm.worth" controls-position="right" :min="0" :max="mainOrderItem.worth"> <el-input-number v-model="shopForm.worth" controls-position="right" :min="0" :max="orderData.costVO.totalWorth">
<template slot="append">{{ $t('') }}</template> <template slot="append">{{ $t('') }}</template>
</el-input-number> </el-input-number>
</el-form-item> </el-form-item>
...@@ -488,7 +491,7 @@ import { ...@@ -488,7 +491,7 @@ import {
createSplitItem, createSplitItem,
deleteSplitItem, deleteSplitItem,
deleteSplit, deleteSplit,
deleteAllSplit deleteAllSplit, splitItemWorthCheck
} from "@/api/ecw/orderHandle" } from "@/api/ecw/orderHandle"
import {getWarehouseList, quantityRequired} from '@/api/ecw/warehouse' import {getWarehouseList, quantityRequired} from '@/api/ecw/warehouse'
import {getChannelList} from '@/api/ecw/channel' import {getChannelList} from '@/api/ecw/channel'
...@@ -563,7 +566,9 @@ export default { ...@@ -563,7 +566,9 @@ export default {
// 当前选择的入仓记录ID // 当前选择的入仓记录ID
// selectedWarehouseInId: null, // selectedWarehouseInId: null,
// 当前正在放入的入仓记录 // 当前正在放入的入仓记录
currentPutIn: null currentPutIn: null,
// 订单剩余数据,sumNum,splitNum,splitResidueNum,totalWorth,splitWorth,splitResidueWorth
orderLeftData: null
}; };
}, },
async created() { async created() {
...@@ -610,6 +615,9 @@ export default { ...@@ -610,6 +615,9 @@ export default {
shopOpen(show){ shopOpen(show){
if(!show){ if(!show){
this.shopForm = {} this.shopForm = {}
}else{
// 打开弹层查询剩余数据
this.getOrderLeftData()
} }
}, },
// 切换品名需要重置已放入的记录 // 切换品名需要重置已放入的记录
...@@ -624,6 +632,9 @@ export default { ...@@ -624,6 +632,9 @@ export default {
this.shopForm.specsRecordVOList.push({...item, boxGauge1, boxGauge2, boxGauge3}) this.shopForm.specsRecordVOList.push({...item, boxGauge1, boxGauge2, boxGauge3})
}) })
} }
},
'shopForm.worth'(val, oldVal){
console.log('worth change from', oldVal, 'to', val)
} }
}, },
computed:{ computed:{
...@@ -920,7 +931,7 @@ export default { ...@@ -920,7 +931,7 @@ export default {
} }
this.open = true this.open = true
}, },
// 查询数量是否必填 /*// 查询数量是否必填
numcheck(){ numcheck(){
quantityRequired(this.orderData.lineId).then(res=>{ quantityRequired(this.orderData.lineId).then(res=>{
this.quantityshow = res.data this.quantityshow = res.data
...@@ -928,16 +939,16 @@ export default { ...@@ -928,16 +939,16 @@ export default {
}, },
// 输入方数箱数后,按照平均值计算数量和体积重量数据 // 输入方数箱数后,按照平均值计算数量和体积重量数据
numChange(){ numChange(){
/*var sum = parseInt(this.quantitySum/this.shopForm.num) /!*var sum = parseInt(this.quantitySum/this.shopForm.num)
this.$set(this.shopForm,'quantity',sum)*/ this.$set(this.shopForm,'quantity',sum)*!/
let rate = this.shopForm.num/this.mainOrderItem.num let rate = this.shopForm.num/this.mainOrderItem.num
this.$set(this.shopForm, 'quantity', Math.ceil(this.mainOrderItem.quantity * rate)) this.$set(this.shopForm, 'quantity', Math.ceil(this.mainOrderItem.quantity * rate))
this.$set(this.shopForm, 'volume', (this.mainOrderItem.volume * rate).toFixed(2)) this.$set(this.shopForm, 'volume', (this.mainOrderItem.volume * rate).toFixed(2))
this.$set(this.shopForm, 'chargeVolume', (this.mainOrderItem.chargeVolume * rate).toFixed(2)) this.$set(this.shopForm, 'chargeVolume', (this.mainOrderItem.chargeVolume * rate).toFixed(2))
this.$set(this.shopForm, 'weight', (this.mainOrderItem.weight * rate).toFixed(2)) this.$set(this.shopForm, 'weight', (this.mainOrderItem.weight * rate).toFixed(2))
this.$set(this.shopForm, 'chargeWeight', (this.mainOrderItem.chargeWeight * rate).toFixed(2)) this.$set(this.shopForm, 'chargeWeight', (this.mainOrderItem.chargeWeight * rate).toFixed(2))
this.$set(this.shopForm, 'worth', (this.mainOrderItem.worth * rate).toFixed(2)) // this.$set(this.shopForm, 'worth', (this.mainOrderItem.worth * rate).toFixed(2))
}, },*/
/*changeProdTitleEn(){ /*changeProdTitleEn(){
var list = [] var list = []
list = this.splitData[0].orderSplitItemBackVOList.filter(item=>item.prodTitleEn == this.shopForm.prodTitleEn) list = this.splitData[0].orderSplitItemBackVOList.filter(item=>item.prodTitleEn == this.shopForm.prodTitleEn)
...@@ -1141,7 +1152,14 @@ export default { ...@@ -1141,7 +1152,14 @@ export default {
const chargeWeight = orderItem.itemType === 3 ? (orderItem.chargeWeight*rate).toFixed(2) : this.putin.weight const chargeWeight = orderItem.itemType === 3 ? (orderItem.chargeWeight*rate).toFixed(2) : this.putin.weight
this.$set(this.shopForm, 'chargeVolume', chargeVolume) this.$set(this.shopForm, 'chargeVolume', chargeVolume)
this.$set(this.shopForm, 'chargeWeight', chargeWeight) this.$set(this.shopForm, 'chargeWeight', chargeWeight)
this.$set(this.shopForm, 'worth', (orderItem.worth*rate).toFixed(2))
// 货值按照订单的总货值比例计算,所以需要判断是否是最后一次放入
let worth = (this.orderLeftData.totalWorth * this.putin.num / this.orderLeftData.sumNum).toFixed(2)
// 如果是最后放入
if(this.orderLeftData.splitResidueNum == this.putin.num){
worth = this.orderLeftData.splitResidueWorth
}
this.$set(this.shopForm, 'worth', worth)
}, },
// 重置 // 重置
reset(){ reset(){
...@@ -1153,6 +1171,12 @@ export default { ...@@ -1153,6 +1171,12 @@ export default {
async cancel(){ async cancel(){
await this.reset() await this.reset()
this.$store.dispatch('tagsView/delCurrentView') this.$store.dispatch('tagsView/delCurrentView')
},
// 查询订单剩余数据
getOrderLeftData(){
splitItemWorthCheck(this.queryParams.orderId).then(res => {
this.orderLeftData = res.data
})
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment