Commit 8eee6ff7 authored by 邓春圆's avatar 邓春圆

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

parents 996db3dd 0e1428e3
......@@ -39,4 +39,34 @@ export function booking(data) {
method: "post",
data,
});
}
/**
* 获得待预装分页
*
* @export
* @param {*} data
* @return {*}
*/
export function preloadPage(data) {
return request({
url: "/ecw/box-preload-goods/preloadPageAir",
method: "post",
data,
});
}
/**
* 预装
*
* @export
* @param {*} data
* @return {*}
*/
export function createGoods(data) {
return request({
url: "/ecw/box-preload-goods/createAir",
method: "post",
data,
});
}
\ No newline at end of file
......@@ -14,10 +14,13 @@
<el-option v-for="item in importCityList" :key="item.id" :label="item.titleZh" :value="item.id" />
</el-select>
{{$t('出货渠道')}}:
<el-select :placeholder="$t('请选择目渠道')" v-model="channelId" clearable>
<template v-if="type == 'air'">
{{$t('出货渠道')}}:
<el-select :placeholder="$t('请选择目渠道')" v-model="channelId" clearable>
<el-option v-for="item in channelList" :key="item.channelId" :label="item.nameZh" :value="item.channelId" />
</el-select>
</el-select>
</template>
</div>
<div class="mb-10">
<el-radio-group v-model="checkAll">
......@@ -75,8 +78,10 @@ import {getChannelList} from '@/api/ecw/channel'
import {getTradeCityList} from '@/api/ecw/region'
import {openedRouterList} from '@/api/ecw/warehouse'
import {getProductAttrList} from "@/api/ecw/productAttr";
import Template from "@/views/cms/template";
export default {
props:{
components: {Template},
props:{
value: {
type: Array
},
......
......@@ -30,11 +30,11 @@
<el-option v-for="item in declarationMethodOps" :label="$l(item, 'label')" :value="item.value" :key="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('待预装订单')" prop="toBePreOrderNo">
<el-input v-model="queryParams.toBePreOrderNo" :placeholder="$t('请输入待预装订单')" clearable />
<el-form-item :label="$t('待分拣订单')" prop="toBePreOrderNo">
<el-input v-model="queryParams.toBePreOrderNo" :placeholder="$t('请输入待分拣订单')" clearable />
</el-form-item>
<el-form-item :label="$t('已预装单号')" prop="preOrderNo">
<el-input v-model="queryParams.preOrderNo" :placeholder="$t('请输入已预装单号')" clearable />
<el-form-item :label="$t('已分拣单号')" prop="preOrderNo">
<el-input v-model="queryParams.preOrderNo" :placeholder="$t('请输入已分拣单号')" clearable />
</el-form-item>
<el-form-item :label="$t('品名')" prop="itemName">
<el-input v-model="queryParams.itemName" :placeholder="$t('请输入品名')" clearable />
......@@ -47,8 +47,8 @@
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery('pre')">{{$t('搜索已预装订单')}}</el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery('toBePre')">{{$t('搜索待预装订单')}}</el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery('pre')">{{$t('搜索已分拣订单')}}</el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery('toBePre')">{{$t('搜索待分拣订单')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
</el-form-item>
</el-form>
......@@ -83,16 +83,16 @@
</div>
</el-row>
<el-row class="preinstall-table">
<!-- 已预装订单 -->
<!-- 已分拣订单 -->
<el-col :span="12">
<el-row class="preinstall-title">
<div class="table-label">{{$t('预装订单')}}</div>
<div class="table-label">{{$t('分拣订单')}}</div>
<div>
<p>{{$t('总计')}}</p>
<p>{{getTotlContent(preList.loadStatistics)}}</p>
</div>
<div class="red-label">
<p>{{$t('预装方数')}}</p>
<p>{{$t('分拣方数')}}</p>
<p>{{preList.remainVolume}}</p>
</div>
<div class="red-label">
......@@ -182,13 +182,13 @@
</el-row>
</el-scrollbar>
</el-col>
<!-- 预装订单 -->
<!-- 分拣订单 -->
<el-col :span="12">
<el-row class="preinstall-title">
<div class="table-label red-label">{{$t('预装订单')}}</div>
<div class="table-label red-label">{{$t('分拣订单')}}</div>
<div class="preinstall-title preinstalled">
<div class="red-label">
<p>{{$t('筛选后待预装数量')}}</p>
<p>{{$t('筛选后待分拣数量')}}</p>
<p>{{getTotlContent(unloadStatistics,['num'])}}</p>
</div>
<div class="red-label">
......@@ -231,7 +231,7 @@
<div class="table-button">
<el-button v-if="item.relateOrderList" type="primary" size="small" style="margin-right: 20px;" @click="getRelationOrder(item)">{{$t('关联订单')}}</el-button>
<el-dropdown trigger="click" @command="(command)=>handleGoods('all',item,command)">
<el-button type="success" size="small" :disabled="isAudit">{{$t('预装全部')}}</el-button>
<el-button type="success" size="small" :disabled="isAudit">{{$t('分拣全部')}}</el-button>
<el-dropdown-menu slot="dropdown" v-if="preList.sectionGoodList">
<el-dropdown-item :command="part" v-for="(part, index) in preList.sectionGoodList" :key="part.id">
{{$t('第{index}部分', {index: index+1})}}
......@@ -277,7 +277,7 @@
<!-- <el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-dropdown trigger="click" @command="(command)=>handleGoods('single',scope.row,command)">
<el-button type="primary" size="small">{{$t('预装')}}</el-button>
<el-button type="primary" size="small">{{$t('分拣')}}</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="part" v-for="(part, index) in preList" :key="part.id">{{index+1}}部分</el-dropdown-item>
</el-dropdown-menu>
......@@ -334,10 +334,8 @@
import { DICT_TYPE } from "@/utils/dict";
import {
secGoodsList,
preloadPage,
createSection,
deleteSection,
createGoods,
deleteGoods,
changeSection,
approvalCreate,
......@@ -345,6 +343,7 @@ import {
loadRelationOrder,
getAllRelateOrderList
} from "@/api/ecw/boxSea";
import { createGoods, preloadPage } from "@/api/ecw/boxAir"
import userSelect from "./common/userSelect.vue";
import {
formatDate,
......@@ -358,7 +357,7 @@ import WorkFlow from "@/components/WorkFlow";
import Decimal from "decimal.js";
/**
* 预装
* 分拣
*/
export default {
name: "preinstall",
......@@ -377,7 +376,7 @@ export default {
declarationMethodOps: this.getDictDatas(DICT_TYPE.ECW_CUSTOMS_TYPE),
// 查询标识
type: "",
// 已预装 遮罩层
// 已分拣 遮罩层
preLoading: false,
preList: {
sectionGoodList: [],
......@@ -387,7 +386,7 @@ export default {
// 选中行
selectedRows: {},
// 待预装
// 待分拣
toBePreLoading: false,
toBePreList: [],
total: 0,
......@@ -415,7 +414,7 @@ export default {
shipmentObj: this.$attrs.shipmentObj,
// 抄送人数组
selectedUsers: [],
// 智慧预装
// 智慧分拣
smartInstall: 1,
//关联订单
relationOrderListDialog: {
......@@ -451,7 +450,7 @@ export default {
},
},
created() {
// 查询待预装
// 查询待分拣
this.handleQuery("toBePre");
this.handleQuery("pre");
this.smartInstall = 0;
......@@ -468,12 +467,12 @@ export default {
checkboxSelect(selection, part) {
this.selectedRows[part.id] = selection;
},
/* 查询已预装 */
/* 查询已分拣 */
getSecGoods() {
this.preLoading = true;
// 处理查询参数
let params = this.getParams();
// 已预装单号
// 已分拣单号
params.orderNo = params.preOrderNo;
params.shipmentId = this.shipmentObj.id;
params.smartInstall = this.smartInstall;
......@@ -495,7 +494,7 @@ export default {
this.preLoading = false;
});
},
/* 查询待预装 */
/* 查询待分拣 */
getPreLoad() {
this.toBePreLoading = true;
// 处理查询参数
......@@ -503,6 +502,7 @@ export default {
// 订单号
params.orderNo = params.toBePreOrderNo;
params.transportType = this.shipmentObj.transportType;
params.shipmentId = this.shipmentObj.id;
preloadPage({ ...params, ...this.pageParam }).then((res) => {
const { data } = res;
this.toBePreList = data.dataList?.list ?? [];
......@@ -546,9 +546,9 @@ export default {
}
approvalCreate({
...this.operatorData,
applyReason: this.$t("预装审核"),
applyReason: this.$t("分拣审核"),
approvalStatus: 0,
approvalType: 1, // 预装
approvalType: 1, // 分拣
copyUserId: this.selectedUsers,
shipmentId: this.$attrs.shipmentObj.id,
}).then((res) => {
......@@ -601,7 +601,7 @@ export default {
}
return 0;
},
/* 待预装订单分页 */
/* 待分拣订单分页 */
pageChange(page) {
this.pageParam.pageNo = page;
this.getPreLoad();
......@@ -624,7 +624,7 @@ export default {
/* 删除部分 */
deletePart(part) {
this.$confirm(
this.$t("确认删除该部分及其已预装订单?"),
this.$t("确认删除该部分及其已分拣订单?"),
this.$t("提示"),
{
type: "warning",
......@@ -643,7 +643,7 @@ export default {
})
.catch((_) => {});
},
/** 预装 */
/** 分拣 */
handleGoods(type, item, part) {
if (type === "all") {
let params = {
......@@ -700,7 +700,7 @@ export default {
}
if (res.code === 566) {
this.$confirm(res.msg+this.$t('是否需要一起预装?'), this.$t("提示"), {
this.$confirm(res.msg+this.$t('是否需要一起分拣?'), this.$t("提示"), {
dangerouslyUseHTMLString: true,
type: "warning",
})
......
......@@ -173,7 +173,7 @@ export default {
this.$set(this.dialogConfig, "title", this.$t("预装反审"));
} else {
this.$set(this.dialogConfig, "fullscreen", true);
this.$set(this.dialogConfig, "title", this.$t("出货安排(预装)"));
this.$set(this.dialogConfig, "title", this.$t("空运-排单"));
}
// 装柜
case "cabinet":
......
......@@ -52,18 +52,7 @@ function airBaseData() {
wait: [22, 23, 24],
end: [25],
},
},
{
title: "AGENT",
imgSrc: {
start: require("@/assets/images/shipping/agent-start.png"),
wait: require("@/assets/images/shipping/agent-wait.png"),
end: require("@/assets/images/shipping/agent-end.png"),
},
type: "agent",
voName: "agentInfo",
currStatus: "start",
},
}
],
[
{
......@@ -87,7 +76,7 @@ function airBaseData() {
},
},
{
title: i18n.$t("拖车"),
title: i18n.$t("合包"),
imgSrc: {
start: require("@/assets/images/shipping/tc-start.png"),
wait: require("@/assets/images/shipping/tc-wait.png"),
......@@ -109,7 +98,27 @@ function airBaseData() {
],
[
{
title: i18n.$t("装柜"),
title: i18n.$t("出货"),
imgSrc: {
start: require("@/assets/images/shipping/zg-start.png"),
wait: require("@/assets/images/shipping/zg-wait.png"),
end: require("@/assets/images/shipping/zg-end.png"),
},
type: "cabinet",
dataKey: "4", // 字典数据键值
/**
* 装柜状态:41、未装柜;42、装柜中;43、已装柜、待封柜;44、封柜审核中;45、封柜审核失败;46、封柜审核成功;47、已封柜,待出仓
*/
voName: "cabinetInfo",
keyName: "ldStatus",
status: {
start: [41],
wait: [42, 43, 44, 45, 46],
end: [47],
},
},
{
title: i18n.$t("出仓"),
imgSrc: {
start: require("@/assets/images/shipping/zg-start.png"),
wait: require("@/assets/images/shipping/zg-wait.png"),
......@@ -130,6 +139,17 @@ function airBaseData() {
},
],
[
{
title: "AGENT",
imgSrc: {
start: require("@/assets/images/shipping/agent-start.png"),
wait: require("@/assets/images/shipping/agent-wait.png"),
end: require("@/assets/images/shipping/agent-end.png"),
},
type: "agent",
voName: "agentInfo",
currStatus: "start",
},
{
title: i18n.$t("报关"),
imgSrc: {
......@@ -150,26 +170,6 @@ function airBaseData() {
end: [53],
},
},
{
title: i18n.$t("配船"),
imgSrc: {
start: require("@/assets/images/shipping/pc-start.png"),
wait: require("@/assets/images/shipping/pc-wait.png"),
end: require("@/assets/images/shipping/pc-end.png"),
},
type: "ship",
dataKey: "6", // 字典数据键值
/**
* 配船状态:61、未配船;62、已配船
*/
voName: "shipConfigInfo",
keyName: "saStatus",
status: {
start: [61],
wait: [],
end: [62],
},
},
{
title: i18n.$t("提单补料"),
imgSrc: {
......@@ -193,69 +193,27 @@ function airBaseData() {
],
[
{
title: i18n.$t("驳船"),
imgSrc: {
start: require("@/assets/images/shipping/bc-start.png"),
wait: require("@/assets/images/shipping/bc-wait.png"),
end: require("@/assets/images/shipping/bc-end.png"),
},
type: "barge",
dataKey: "8", // 字典数据键值
/**
* 驳船状态:81、未驳船;82、已驳船
*/
voName: "bargeInfo",
keyName: "bgStatus",
status: {
start: [81],
wait: [],
end: [82],
},
},
],
[
{
title: i18n.$t("起运"),
title: i18n.$t("起飞"),
imgSrc: {
start: require("@/assets/images/shipping/qy-start.png"),
wait: require("@/assets/images/shipping/qy-wait.png"),
end: require("@/assets/images/shipping/qy-end.png"),
start: require("@/assets/images/shipping/ecqf-start.png"),
wait: require("@/assets/images/shipping/ecqf-wait.png"),
end: require("@/assets/images/shipping/ecqf-end.png"),
},
type: "departure",
dataKey: "9", // 字典数据键值
type: "twoWayTakeoff",
dataKey: "14", // 字典数据键值
/**
* 起运状态:91、未起运;92、已起运
* 起飞状态:141、未起飞;142、已起飞
*/
voName: "shippingInfo",
keyName: "dtStatus",
voName: "takeOffInfo",
keyName: "stkStatus",
status: {
start: [91],
start: [141],
wait: [],
end: [92],
end: [142],
},
},
],
[
{
title: i18n.$t("提单Copy"),
imgSrc: {
start: require("@/assets/images/shipping/tdcopy-start.png"),
wait: require("@/assets/images/shipping/tdcopy-wait.png"),
end: require("@/assets/images/shipping/tdcopy-end.png"),
},
type: "blCopy",
dataKey: "10", // 字典数据键值
/**
* 提单COPY状态:101、未上传;102、已上传
*/
voName: "ladingCopyInfo",
keyName: "cpStatus",
status: {
start: [101],
wait: [],
end: [102],
},
},
{
type: "clrDocument",
imgSrc: {
......@@ -323,7 +281,7 @@ function airBaseData() {
],
[
{
title: i18n.$t("卸柜"),
title: i18n.$t("到仓"),
imgSrc: {
start: require("@/assets/images/shipping/xg-start.png"),
wait: require("@/assets/images/shipping/xg-wait.png"),
......@@ -783,24 +741,14 @@ function seaAirBaseData() {
*/
function getColmnMapping() {
return {
bookSeaInfo: [
bookAirInfo: [
{
title: "SO NO",
key: "sono",
},
{
title: i18n.$t("船公司类型"),
key: "shipCompanyType",
type: "supplier",
},
{
title: i18n.$t("驳船港"),
key: "bargePortId",
type: "dock",
title: i18n.$t("提单号"),
key: "blNo",
},
{
title: i18n.$t("大船"),
key: "bigPortId",
title: i18n.$t("起运"),
key: "departurePortId",
type: "dock",
},
{
......@@ -809,18 +757,18 @@ function getColmnMapping() {
type: "dock",
},
{
title: i18n.$t("订舱公司"),
key: "spaceCompanyId",
title: i18n.$t("航空公司"),
key: "airlineCompanyId",
type: "supplier",
},
{
title: i18n.$t("预计驳船时间"),
key: "bargeTime",
type: "date",
title: i18n.$t("Shipper"),
key: "shipperId",
type: "supplier",
},
{
title: i18n.$t("预计开船时间"),
key: "sailTime",
title: i18n.$t("预计起飞时间"),
key: "flyTime",
type: "date",
},
{
......
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