Commit 07a04f39 authored by 邓春圆's avatar 邓春圆

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

parents 88077bc8 4d1fec92
......@@ -70,3 +70,33 @@ export function createGoods(data) {
data,
});
}
/**
* 获得获得合包箱分页
*
* @export
* @param {*} data
* @return {*}
*/
export function getMergePkgList(params) {
return request({
url: "/ecw/box-merge-pkg/pager",
method: "get",
params,
});
}
/**
* 创建合包箱
*
* @export
* @param {*} data
* @return {*}
*/
export function createMergePkg(data) {
return request({
url: "/ecw/box-merge-pkg/create",
method: "post",
data,
});
}
\ No newline at end of file
......@@ -474,7 +474,7 @@ export const constantRoutes = [
children: [
{
path: 'query/:shipmentId(\\d+)',
component: (resolve) => import('@/views/ecw/box/query'),
component: (resolve) => import('@/views/ecw/box/queryAir'),
props: true,
name: 'shippingDetail',
meta: {titleZh: '出货详情', titleEn: "Shipping Details", icon: '', activeMenu: '/shipment/boxDetail'}
......
......@@ -56,7 +56,11 @@
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column :label="$t('自编号')" align="center" prop="selfNo" />
<el-table-column :label="$t('自编号')" align="center" prop="selfNo">
<template slot-scope="scope">
<a href="javascript:void(0)" @click="handleCommand(scope.row, 'detail')">{{ scope.row.selfNo }}</a>
</template>
</el-table-column>
<el-table-column :label="$t('运输方式')" align="center" prop="transportType">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="scope.row.transportType" />
......@@ -69,15 +73,19 @@
</template>
</el-table-column>
<el-table-column label="方数(预装/已装)" align="center" prop="squareNumber" />
<el-table-column label="重量(预装/已装)" align="center" prop="weight" />
<el-table-column :label="$t('状态')" align="center" prop="boxStatus">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.BOX_SHIPMENT_STATUS" :value="scope.row.boxStatus" />
<el-table-column :label="$t('方数(预装/已装)')" align="center" prop="">
<template slot-scope="{row}">
{{row.boxStatistics.volume}}/{{row.boxStatistics.loadVolume}}
</template>
</el-table-column>
<el-table-column :label="$t('重量(预装/已装)')" align="center" prop="weight">
<template slot-scope="{row}">
{{row.boxStatistics.weight}}/{{row.boxStatistics.loadWeight}}
</template>
</el-table-column>
<el-table-column :label="$t('状态')" align="center" prop="shipmentStatusText" />
<el-table-column :label="$t('日期')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ new Date(scope.row.createTime).format('yyyy-MM-dd hh:mm:ss') }}</span>
......@@ -395,6 +403,9 @@ export default {
/** 查看按钮操作 */
handleCommand(row, command) {
switch (command) {
case "detail":
this.$router.push("/boxAir/query/" + row.id);
break;
case 'air':
this.$router.push('/boxAir/shippingAir/' + row.id)
break
......
This diff is collapsed.
<template>
<div>
<el-row type="flex" style="margin-top: 15px; margin-bottom: 15px" justify="center">
<el-col :xs="24" :sm="24" :md="24" :lg="20" :xl="22">
<el-card>
<el-descriptions :column="4" border>
<el-descriptions-item :label="$t('自编号')">
{{shipmentObj.selfNo}}
</el-descriptions-item>
<el-descriptions-item :label="$t('运输方式')">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="shipmentObj.transportType" />
</el-descriptions-item>
<el-descriptions-item :label="$t('始发地')">
{{getCityName(shipmentObj.startWarehouseId)}}
</el-descriptions-item>
<el-descriptions-item :label="$t('目的地')">
{{getCityName(shipmentObj.destWarehouseId)}}
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-row style="margin-top: 15px">
<el-row>
<el-button size="small" type="primary" @click="addMergedialogVisible=true">{{$t('创建合箱')}}</el-button>
</el-row>
<el-row style="margin-top: 5px">
<el-table border :data="tallyList" @select="checkboxSelect" @select-all="checkboxSelect" max-height="600px">
<el-table-column type="selection" align="center" width="55" fixed="left" />
<el-table-column align="center" :label="$t('序号')" width="50" prop="tidanNum" />
<el-table-column :label="$t('订单号')" align="center" prop="orderNo">
<template slot-scope="scope">
<div>
{{scope.row.orderNo}}
</div>
<div style="color:blue;fontWeight:bold;">
{{ scope.row.isExternalWarehouse === 1 ? ('('+$t('外部仓')+')') : ''}}
</div>
<div style="color:red;fontWeight:bold;">
{{ scope.row.adjustToDestWarehouseId > 0 ? ('('+$t('调仓')+')') : ''}}
</div>
</template>
</el-table-column>
<el-table-column :label="$t('商品信息')" width="250px" align="center" prop="">
<template slot-scope="{row}">
{{$l(row,'prodTitle')}}
</template>
</el-table-column>
<el-table-column :label="$t('备案')" align="center" prop="feeType">
<template slot-scope="{row}">
<template v-if="row.brandName">{{row.brandName}}</template>
<dict-tag v-else :type="DICT_TYPE.ECW_IS_BRAND" :value="row.feeType" />
</template>
</el-table-column>
<el-table-column :label="$t('报关方式')" align="center" prop="customsType">
<template slot-scope="scope">
<div :class="scope.row.customsType !== 1 ? 'custom_type_red' : ''">
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="scope.row.customsType" />
</div>
</template>
</el-table-column>
<el-table-column :label="$t('箱数')" align="center" prop="warehouseInInfo.cartonsNum">
<template slot-scope="scope">
<el-link type="primary" @click.native="showWarehouseLogs(scope.row)">
{{scope.row.warehouseInInfo.cartonsNum}}
</el-link>
<div style="color:blue;fontWeight:bold;">
{{ scope.row.multiSpecification === true ? '(多规格)' : ''}}
</div>
</template>
</el-table-column>
<el-table-column :label="$t('纸箱尺寸')" align="center" prop="warehouseInInfo.boxGauge">
</el-table-column>
<el-table-column :label="$t('体积')" align="center" prop="warehouseInInfo.volume">
</el-table-column>
<el-table-column :label="$t('重量')" align="center" prop="warehouseInInfo.weight">
</el-table-column>
<el-table-column :label="$t('数量(个)')" align="center" prop="quantity"></el-table-column>
<el-table-column :label="$t('储位')" align="center" prop="positionNo" width="250px">
<template slot-scope="scope">
{{notset(scope.row.positionNo)}}
</template>
</el-table-column>
<el-table-column :label="$t('状态')" align="center" prop="tallyStatus">
<template slot-scope="scope">
{{scope.row.tallyStatus === 1 ? $t('已理货') : $t('未理货')}}
</template>
</el-table-column>
<el-table-column :label="$t('理货时间')" align="center" prop="tallyTime">
<template slot-scope="scope">
{{formatDate(scope.row.tallyTime,'YYYY-MM-DD HH:mm:ss')}}
</template>
</el-table-column>
<el-table-column :label="$t('操作')" align="center" width="160" class-name="small-padding fixed-width" fixed="right">
<template slot-scope="scope">
<el-button type="text" size="small" @click="tallyClick('single',scope.row)">{{$t('理货')}}</el-button>
<el-button type="text" size="small" @click="removeClick('single',scope.row)">{{$t('移出')}}</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
</el-row>
<el-dialog custom-class="shipping-dialog" :title="$t('生成箱号')" :visible.sync="addMergedialogVisible" width="550px" :modal-append-to-body="false" append-to-body>
<el-form ref="addMergeForm" :model="addMergeForm" label-width="100px">
<el-form-item :label="$t('数量')" prop="num" :rules="[
{ required: true, message: this.$t('数量不能为空'), trigger: 'blur' }
]">
<el-input-number v-model="addMergeForm.num" :controls="false" :min="1" :precision="0" />
</el-form-item>
<el-form-item :label="$t('长')" prop="pkgLength">
<el-input-number v-model="addMergeForm.pkgLength" :controls="false" :precision="2" />
</el-form-item>
<el-form-item :label="$t('宽')" prop="pkgWidth">
<el-input-number v-model="addMergeForm.pkgWidth" :controls="false" :precision="2" />
</el-form-item>
<el-form-item :label="$t('高')" prop="pkgHight">
<el-input-number v-model="addMergeForm.pkgHight" :controls="false" :precision="2" />
</el-form-item>
</el-form>
<el-button size="small" type="primary" @click="addMerge">{{$t('确定')}}</el-button>
</el-dialog>
<el-row style="margin-top: 15px" class="operate-button">
<el-button size="small" type="primary" @click="tallyFinish">{{$t('完成理货')}}</el-button>
<el-button size="small" @click="cancel">{{$t('取消')}}</el-button>
</el-row>
</el-col>
</el-row>
</div>
</template>
<script>
import { getMergePkgList, createMergePkg } from "@/api/ecw/boxAir"
export default {
data() {
return {
// 出货信息
shipmentObj: this.$attrs.shipmentObj,
addMergedialogVisible: false,
addMergeForm: {}
}
},
created() {
this.getList();
},
computed: {
/* 获取仓库 */
getCityName() {
return (id) => {
let arr = this.$attrs.warehouseList.filter((item) => item.id == id);
return arr.length > 0 ? this.$l(arr[0], "title") : this.$t("");
};
},
},
methods: {
getList(){
getMergePkgList()
},
addMerge() {
this.$refs['addMergeForm'].validate((valid) => {
if (!valid) {
return
}
this.addMergeForm.shipmentId = this.$attrs.shipmentObj.id
createMergePkg(this.addMergeForm)
})
}
}
}
</script>
<style>
</style>
\ No newline at end of file
......@@ -46,6 +46,7 @@ import unloadingWidget from "./nodePage/unloading/index.vue";
import settlementWidget from "./nodePage/settlement.vue";
import reviewWidget from "./nodePage/review.vue";
import tallyWidget from "./nodePage/tally/index.vue";
import mergePkgWidget from "./nodePage/mergePkg/index.vue";
import {checkPermi} from '@/utils/permission'
/**
......@@ -75,6 +76,7 @@ export default {
settlementWidget,
reviewWidget,
tallyWidget,
mergePkgWidget
},
props: {
shipmentObj: Object,
......@@ -133,7 +135,7 @@ export default {
},
/** 节点点击 */
nodeClick(currIndex, node) {
if (!checkPermi(['box:'+node.type+':show'])) {
if (!checkPermi(['box:'+node.type+':action'])) {
this.$message.error(this.$t("没有此操作的权限"));
return;
}
......@@ -149,8 +151,12 @@ export default {
switch (node.type) {
// 订舱
case "booking":
// 驳船
case "barge":
break;
// 合包
case "mergePkg":
this.$set(this.dialogConfig, "fullscreen", true);
this.$set(this.dialogConfig, "title", this.$t("合包列表"));
break;
// 清关文件
case "clrDocument":
this.$set(this.dialogConfig, "width", "700px");
......
......@@ -78,21 +78,21 @@ function airBaseData() {
{
title: i18n.$t("合包"),
imgSrc: {
start: require("@/assets/images/shipping/tc-start.png"),
wait: require("@/assets/images/shipping/tc-wait.png"),
end: require("@/assets/images/shipping/tc-end.png"),
start: require("@/assets/images/shipping/qg-start.png"),
wait: require("@/assets/images/shipping/qg-wait.png"),
end: require("@/assets/images/shipping/qg-end.png"),
},
type: "trailer",
type: "mergePkg",
dataKey: "3", // 字典数据键值
/**
* 拖车状态:31、未派车;32、已派车
* 合包状态:161待合包 162已合包
*/
voName: "trailerInfo",
keyName: "tlStatus",
keyName: "mergePkgStatus",
status: {
start: [31],
start: [161],
wait: [],
end: [32],
end: [162],
},
},
],
......
......@@ -757,7 +757,7 @@
// that.orderExceptionData.orderExceptionType = 'order_other_exception'
// that.orderExceptionData.orderExceptionType = 'order_miss_exception'
// that.orderExceptionData.orderExceptionType = 'not_customer_service_exception'
that.orderExceptionData.orderExceptionType = 'not_shipping_channel_exception'
// that.orderExceptionData.orderExceptionType = 'not_shipping_channel_exception'
that.loading = false;
that.orderId = response.data.orderId
that.getOrderData()
......
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