Commit 0e1f7431 authored by huhaiqing's avatar huhaiqing

海运操作开发

parent e4ff0ef7
......@@ -3,6 +3,12 @@
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="运输方式" prop="transportType">
<el-select v-model="queryParams.transportType" placeholder="请选择运输方式" clearable size="small">
<el-option v-for="dict in transportTypes" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="自编号" prop="selfNo">
<el-input v-model="queryParams.selfNo" placeholder="请输入自编号" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
......@@ -43,9 +49,10 @@
</el-select>
</el-form-item>
<el-form-item label="运输方式" prop="transportType">
<el-select v-model="queryParams.transportType" placeholder="请选择运输方式" clearable size="small">
<el-option v-for="dict in transportTypes" :key="dict.value" :label="dict.label" :value="dict.value" />
<el-form-item label="国家">
<el-select v-model="queryParams.countryId" placeholder="请选择国家">
<el-option v-for="item in countryList" :key="item.id" :label="item.titleZh" :value="item.id">
</el-option>
</el-select>
</el-form-item>
......@@ -154,6 +161,7 @@
import { deletebox, getbox, getboxPage, exportboxExcel } from "@/api/ecw/box";
import { getCabinetPage } from "@/api/ecw/cabinet";
import { getWarehouseList } from "@/api/ecw/warehouse";
import { getListTree } from "@/api/ecw/region";
import costForm from "./costForm.vue";
import regError from "./regError.vue";
import editForm from "./editForm.vue";
......@@ -202,6 +210,8 @@ export default {
cabinetList: [],
warehouseList: [],
transportTypes: [],
//国家信息列表
countryList: [],
};
},
computed: {
......@@ -235,8 +245,15 @@ export default {
this.cabinetList = response.data.list;
});
this.getList();
this.getCountryList();
},
methods: {
/* 国家 */
getCountryList() {
getListTree({ treeType: 1 }).then((response) => {
this.countryList = response.data;
});
},
/** 查询列表 */
getList() {
this.loading = true;
......
......@@ -6,9 +6,9 @@
<el-descriptions-item label="运输方式">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="boxBackVO.transportType" />
</el-descriptions-item>
<el-descriptions-item label="出货渠道">
<!-- <el-descriptions-item label="出货渠道">
{{getShipChannelName(boxBackVO.shippingChannelId)}}
</el-descriptions-item>
</el-descriptions-item> -->
<el-descriptions-item label="柜型">
{{cabinetLabel}}
</el-descriptions-item>
......@@ -24,10 +24,10 @@
<el-button type="primary" @click="showOrder">订单列表</el-button>
</el-row>
<div>
<div v-if="boxBackVO.preInstallInfo && boxBackVO.preInstallInfo.applyReason">
<p>申请原因</p>
<div>
{{boxBackVO.preInstallInfo ? boxBackVO.preInstallInfo.applyReason : ''}}
{{boxBackVO.preInstallInfo.applyReason}}
</div>
</div>
......@@ -37,9 +37,9 @@
<el-descriptions-item label="运输方式">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="boxBackVO.transportType" />
</el-descriptions-item>
<el-descriptions-item label="出货渠道">
<!-- <el-descriptions-item label="出货渠道">
{{getShipChannelName(boxBackVO.shippingChannelId)}}
</el-descriptions-item>
</el-descriptions-item> -->
<el-descriptions-item label="柜型">
{{cabinetLabel}}
</el-descriptions-item>
......
......@@ -19,7 +19,7 @@
<el-form-item label="订舱公司">
<supplierSelect v-model="bookingObj.spaceCompanyId" :companyType="'1'" placeholder="请选择订舱公司" :allSupplier="this.$attrs.allSupplier" />
</el-form-item>
<el-form-item label="预计驳船时间" prop="bargeTime">
<el-form-item label="预计驳船时间">
<el-date-picker type="date" placeholder="请选择日期" value-format="yyyy-MM-dd" v-model="bookingObj.bargeTime"></el-date-picker>
</el-form-item>
......@@ -110,7 +110,6 @@ export default {
bookingObj: {},
// 校验
rules: {
bargeTime: [{ required: true, message: "必填", trigger: "change" }],
sailTime: [{ required: true, message: "必填", trigger: "change" }],
},
};
......
......@@ -68,7 +68,11 @@ export default {
"ldBoxTime",
"ldOutWarehouseTime",
]);
this.cabinetObj = oldData;
this.cabinetObj = {
...oldData,
ldWarehouseType:
oldData.ldWarehouseType === 0 ? undefined : oldData.ldWarehouseType,
};
},
methods: {
/** 提交 */
......
......@@ -108,7 +108,11 @@ export default {
"cdAgentlistType",
"cdSoncapType",
]);
this.cDocObj = oldData;
this.cDocObj = {
...oldData,
cdOutBillType:
oldData.cdOutBillType === 0 ? undefined : oldData.cdOutBillType,
};
},
methods: {
/** 提交 */
......
<template>
<el-select filterable :value="value" @change="change" v-bind="$attrs" clearable>
<el-select filterable :value="value === 0 ? undefined : value" @change="change" v-bind="$attrs" clearable>
<el-option v-for="dock in getDock" :key="dock.id" :label="dock.titleZh" :value="dock.id"></el-option>
</el-select>
</template>
......
<template>
<el-select filterable :value="value" @change="change" v-bind="$attrs" clearable>
<el-select filterable :value="value === 0 ? undefined : value" @change="change" v-bind="$attrs" clearable>
<el-option v-for="supplier in getSuppliers" :key="supplier.id" :label="supplier.companyZh" :value="supplier.id"></el-option>
</el-select>
</template>
......
<template>
<el-select filterable :value="value" @change="change" v-bind="$attrs" clearable>
<el-select filterable :value="value === 0 ? undefined : value" @change="change" v-bind="$attrs" clearable>
<el-option v-for="user in getUser" :key="user.id" :value="user.id" :label="user.nickname"></el-option>
</el-select>
</template>
......
<template>
<div>
<el-form ref="cusDeclarationForm" :rules="rules" :model="cusDeclarationObj" label-width="120px">
<el-form-item label="单证要求">无返回 <el-button type="primary" style="margin-left:10px;" @click="downloadVGM">VGM声明</el-button>
<el-form-item label="单证要求">
<template v-for="(item, index) in cusDeclarationObj.documentInfo">
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="item" :key="index" />
</template>
<el-button type="primary" style="margin-left:10px;" @click="downloadVGM">{{getButtonLabel(cusDeclarationObj.documentInfo)}}</el-button>
</el-form-item>
<el-form-item label="柜重" prop="dcBoxWgt">
<el-input v-model="cusDeclarationObj.dcBoxWgt" placeholder="请输入柜重" clearable />
......@@ -171,8 +175,12 @@ export default {
};
},
created() {
const voName = this.$attrs.currNode.voName;
let oldData = { ...this.$attrs.shipmentObj[voName] };
const { currNode, shipmentObj } = this.$attrs;
const { voName } = currNode;
let oldData = {
...shipmentObj[voName],
documentInfo: shipmentObj.documentInfo?.split(",") ?? [],
};
oldData = formatDateStr(oldData, [
"dcCutOffTime",
"dcCheckTime",
......@@ -186,6 +194,10 @@ export default {
this.cusDeclarationObj = oldData;
},
methods: {
getButtonLabel(documentInfo = []) {
const newList = Array.from(new Set(documentInfo));
return newList.length > 2 ? "混合报关" : "VGM声明";
},
/** 提交 */
onSubmit(operateType) {
this.$refs["cusDeclarationForm"].validate((valid) => {
......
......@@ -30,7 +30,7 @@
<userSelect v-model="subMaterialObj.notifyingId" placeholder="请选择通知方" :allUsers="this.$attrs.allUsers" />
</el-form-item>
<el-form-item label="Mark & No.">
<el-input v-model="subMaterialObj.markNo"></el-input>
<el-input v-model="subMaterialObj.markNo" placeholder="请输入Mark & No."></el-input>
</el-form-item>
<el-form-item label="包装数量与单位" class="two-element">
<el-input v-model="subMaterialObj.packageNum" placeholder="请输入包装数量"></el-input>
......@@ -124,7 +124,10 @@ export default {
const voName = this.$attrs.currNode.voName;
let oldData = { ...this.shipmentObj[voName] };
oldData = formatNumberString(oldData, ["issueType"]);
this.subMaterialObj = oldData;
this.subMaterialObj = {
...oldData,
packageUnit: oldData.packageUnit === 0 ? undefined : oldData.packageUnit,
};
},
methods: {
/** 提交 */
......
......@@ -229,7 +229,8 @@ export default {
.shipping-chart {
display: flex;
padding: 10px 10px;
min-width: max-content;
min-width: 1300px;
width: max-content;
.chart-nodes {
display: flex;
......
......@@ -62,9 +62,13 @@ export default {
case "billingMethod":
val = this.getConstant(type, String(val));
break;
case "user":
val = this.getUser(val);
break;
}
}
return val;
return val === 0 ? "" : val;
},
getSupplier(id) {
return (
......@@ -79,6 +83,11 @@ export default {
this.$attrs.warehouseList.find((item) => item.id === id)?.titleZh ?? id
);
},
getUser(id) {
return (
this.$attrs.allUsers.find((item) => item.id === id)?.nickname ?? id
);
},
getDict(code, id) {
return (
this.getDictDatas(code).find((item) => item.value === id)?.label ?? id
......
......@@ -146,7 +146,7 @@ function seaBaseData() {
/**
* 理货状态:2111、未理货;2112、已理货
*/
voName: "tyTime",
voName: "tallyInfo",
keyName: "tyStatus",
status: {
start: [2111],
......@@ -535,6 +535,17 @@ function getColmnMapping() {
key: "operator",
},
],
tallyInfo: [
{
title: "完成理货时间",
key: "tyTime",
type: "datetime",
},
{
title: "业务员",
key: "tyOperator",
},
],
agentInfo: [
{
title: "代理商",
......@@ -643,6 +654,7 @@ function getColmnMapping() {
{
title: "通知方",
key: "notifyingId",
type: "user",
},
{
title: "提单备注",
......
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