Commit d8998b26 authored by 我在何方's avatar 我在何方
parents 75b53dd8 2770e8f8
...@@ -210,7 +210,23 @@ function jsonToFormData(params) { ...@@ -210,7 +210,23 @@ function jsonToFormData(params) {
return formData; return formData;
} }
// 根据订单ID下载提货单 // 创建制作提货单
export function getNoticeList(data) {
return request({
url: "/shipment/box/noticeList",
method: "post",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
data: jsonToFormData(data),
});
}
/**
* 根据订单ID下载提货单
*
* @export
* @param {*} orderId
* @return {*}
*/
export function downloadByOrderId(orderId) { export function downloadByOrderId(orderId) {
return request({ return request({
url: "/shipment/make-bill-of-lading/downloadByOrderId", url: "/shipment/make-bill-of-lading/downloadByOrderId",
...@@ -229,6 +245,14 @@ export function getBoxApproval(params) { ...@@ -229,6 +245,14 @@ export function getBoxApproval(params) {
}); });
} }
// 获得制作提货单(审核中调用)
export function getBillOfLandingInProcessing(params){
return request({
url: "/shipment/make-bill-of-lading/getInProcessing",
method: "get",
params,
});
}
// 下载agent list文件 // 下载agent list文件
export function downloadAgentListFiles(params) { export function downloadAgentListFiles(params) {
return request({ return request({
......
...@@ -431,3 +431,12 @@ export function orderSpecialNeedGet(params){ ...@@ -431,3 +431,12 @@ export function orderSpecialNeedGet(params){
data data
}) })
} }
// 获得订单修改申请详情
export function getUpdateInfo(id){
return request({
url:'/ecw/order/update/info/' + id,
method:'get'
})
}
\ No newline at end of file
...@@ -72,9 +72,9 @@ export function setUnauthCustomerFeeType(data) { ...@@ -72,9 +72,9 @@ export function setUnauthCustomerFeeType(data) {
} }
// //
export function getFeeTypeByCustomerProduct(data){ export function getFeeTypeByOrderProduct(data){
return request({ return request({
url: '/ecw/product-brank/getFeeTypeByCustomerProduct', url: '/ecw/product-brank/getFeeTypeByOrderProduct',
method: 'post', method: 'post',
data data
}) })
......
...@@ -49,6 +49,7 @@ export default { ...@@ -49,6 +49,7 @@ export default {
return name.trim() === '首页' // 修复 Index 重复的问题 return name.trim() === '首页' // 修复 Index 重复的问题
}, },
handleLink(item) { handleLink(item) {
return
const { redirect, path } = item const { redirect, path } = item
if (redirect) { if (redirect) {
this.$router.push(redirect) this.$router.push(redirect)
......
...@@ -196,6 +196,7 @@ export const DICT_TYPE = { ...@@ -196,6 +196,7 @@ export const DICT_TYPE = {
BOX_SHIPPING_TICKET_EXCEPTION: 'shipping_ticket_exception', // 票异常 BOX_SHIPPING_TICKET_EXCEPTION: 'shipping_ticket_exception', // 票异常
BOX_SHIPPING_PROCESS: 'shipping_process', // 海运出货流程 BOX_SHIPPING_PROCESS: 'shipping_process', // 海运出货流程
BOX_SHIPPING_BRAND_TYPE: 'shipping_brand_type', // 出货品牌类型 BOX_SHIPPING_BRAND_TYPE: 'shipping_brand_type', // 出货品牌类型
BOX_SHIPPING_NOTICE_TYPE: 'shipping_notice_type', // 出货通知类型
} }
/** /**
......
...@@ -301,7 +301,7 @@ export default { ...@@ -301,7 +301,7 @@ export default {
}, },
// 提单审核 // 提单审核
order_landing_bill:{ order_landing_bill:{
component: () => import('@/views/ecw/order/components/ApprovalDetail'), component: () => import('@/views/ecw/order/components/LandingBillDetail'),
id: this.processInstance.businessKey, id: this.processInstance.businessKey,
path: this.processInstance.processDefinition?.formCustomViewPath path: this.processInstance.processDefinition?.formCustomViewPath
} }
......
...@@ -96,16 +96,14 @@ export default { ...@@ -96,16 +96,14 @@ export default {
if (this.form.id != null) { if (this.form.id != null) {
updatebox(this.form).then((response) => { updatebox(this.form).then((response) => {
this.$modal.msgSuccess('修改成功') this.$modal.msgSuccess('修改成功')
this.open = false this.$emit("closeDialog", "edit");
this.getList()
}) })
return return
} }
// 添加的提交 // 添加的提交
createbox(this.form).then((response) => { createbox(this.form).then((response) => {
this.$modal.msgSuccess('新增成功') this.$modal.msgSuccess('新增成功')
this.open = false this.$emit("closeDialog", "edit");
this.getList()
}) })
}) })
}, },
......
...@@ -33,10 +33,10 @@ ...@@ -33,10 +33,10 @@
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['ecw:future-box:create']">新建计划</el-button> v-hasPermi="['ecw:future-box:create']">新建计划</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <!-- <el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading" <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:future-box:export']">导出</el-button> v-hasPermi="['ecw:future-box:export']">导出</el-button>
</el-col> </el-col> -->
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
......
...@@ -124,7 +124,7 @@ ...@@ -124,7 +124,7 @@
<el-dropdown-item command="error">异常登记</el-dropdown-item> <el-dropdown-item command="error">异常登记</el-dropdown-item>
<el-dropdown-item command="cost">费用登记</el-dropdown-item> <el-dropdown-item command="cost">费用登记</el-dropdown-item>
<el-dropdown-item command="delete">删除</el-dropdown-item> <el-dropdown-item command="delete">删除</el-dropdown-item>
<el-dropdown-item v-if="scope.row.ldStatus==47" command="editLadingBill">编辑提货单</el-dropdown-item> <el-dropdown-item v-if="scope.row.ldStatus>42" command="editLadingBill">编辑提货单</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
<el-dropdown trigger="click" @command="(command)=>handleCommand(scope.row, command)"> <el-dropdown trigger="click" @command="(command)=>handleCommand(scope.row, command)">
...@@ -161,6 +161,33 @@ ...@@ -161,6 +161,33 @@
<template v-if="dialogCfg.dialogType === 'editLadingBill'"> <template v-if="dialogCfg.dialogType === 'editLadingBill'">
<ladingBill v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" :getCabinetName="getCabinetName" /> <ladingBill v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" :getCabinetName="getCabinetName" />
</template> </template>
<template v-if="dialogCfg.dialogType === 'notice'">
<div class="notice-dialog">
<div class="notice-title">您有一个/多个待处理出货操作,请尽快前往处理:</div>
<el-table :data="noticeList" height="500px" border>
<el-table-column label="自编号" align="center" prop="selfNo" />
<el-table-column label="类型" align="center">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_NOTICE_TYPE" :value="String(scope.row.noticeType)" />
</template>
</el-table-column>
<el-table-column label="操作时间" align="center">
<template slot-scope="scope">
{{formatDate(scope.row.createTime)}}
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="80">
<template slot-scope="scope">
<el-button type="text" @click="handleCommand(scope.row, 'sea')">处理</el-button>
</template>
</el-table-column>
</el-table>
<el-row class="operate-button">
<el-button type="primary" @click="closeDialog">关闭窗口</el-button>
</el-row>
</div>
</template>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
...@@ -171,10 +198,13 @@ import { ...@@ -171,10 +198,13 @@ import {
getbox, getbox,
getboxPage, getboxPage,
exportboxExcel, exportboxExcel,
downloadAgentListFiles, getNoticeList,
downloadSoncapFiles,
} from "@/api/ecw/box"; } from "@/api/ecw/box";
import { downloadFile, downloadFileByUrl } from "./shippingSea/utils"; import {
downloadFile,
downloadFileByUrl,
formatDate,
} from "./shippingSea/utils";
import { getCabinetPage } from "@/api/ecw/cabinet"; import { getCabinetPage } from "@/api/ecw/cabinet";
import { getWarehouseList } from "@/api/ecw/warehouse"; import { getWarehouseList } from "@/api/ecw/warehouse";
import { getListTree } from "@/api/ecw/region"; import { getListTree } from "@/api/ecw/region";
...@@ -232,8 +262,10 @@ export default { ...@@ -232,8 +262,10 @@ export default {
cabinetList: [], cabinetList: [],
warehouseList: [], warehouseList: [],
transportTypes: [], transportTypes: [],
//国家信息列表 // 国家信息列表
countryList: [], countryList: [],
// 通知列表
noticeList: [],
}; };
}, },
computed: { computed: {
...@@ -268,8 +300,22 @@ export default { ...@@ -268,8 +300,22 @@ export default {
}); });
this.getList(); this.getList();
this.getCountryList(); this.getCountryList();
this.queryNotice();
}, },
methods: { methods: {
formatDate,
queryNotice() {
getNoticeList({}).then((res) => {
const { data } = res;
this.noticeList = data ?? [];
if (data.length) {
this.$set(this.dialogCfg, "title", "出货操作提醒");
this.$set(this.dialogCfg, "dialogType", "notice");
this.$set(this.dialogCfg, "width", "650px");
this.$set(this.dialogCfg, "open", true);
}
});
},
/* 国家 */ /* 国家 */
getCountryList() { getCountryList() {
getListTree({ treeType: 1 }).then((response) => { getListTree({ treeType: 1 }).then((response) => {
...@@ -455,3 +501,17 @@ export default { ...@@ -455,3 +501,17 @@ export default {
}, },
}; };
</script> </script>
<style lang="scss" scoped>
.notice-dialog {
::v-deep .notice-title {
font-size: 24px;
font-weight: bold;
margin-bottom: 10px;
}
::v-deep .operate-button {
margin-top: 10px;
text-align: center;
}
}
</style>
...@@ -149,7 +149,11 @@ ...@@ -149,7 +149,11 @@
<!-- 列表 --> <!-- 列表 -->
<el-table v-loading="loading" :data="list"> <el-table v-loading="loading" :data="list">
<el-table-column label="自编号" align="center" prop="selfNo" /> <el-table-column label="自编号" 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="柜号" align="center" prop="cubNo" /> <el-table-column label="柜号" align="center" prop="cubNo" />
<el-table-column label="柜型" align="center" prop="cabinetId"> <el-table-column label="柜型" align="center" prop="cabinetId">
<template slot-scope="scope"> <template slot-scope="scope">
...@@ -224,21 +228,21 @@ ...@@ -224,21 +228,21 @@
<el-dropdown-item command="error">异常登记</el-dropdown-item> <el-dropdown-item command="error">异常登记</el-dropdown-item>
<el-dropdown-item command="cost">费用登记</el-dropdown-item> <el-dropdown-item command="cost">费用登记</el-dropdown-item>
<el-dropdown-item command="delete">删除</el-dropdown-item> <el-dropdown-item command="delete">删除</el-dropdown-item>
<el-dropdown-item command="editLadingBill">编辑提货单</el-dropdown-item> <el-dropdown-item v-if="scope.row.ldStatus>42" command="editLadingBill">编辑提货单</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
<el-dropdown trigger="click"> <el-dropdown trigger="click" @command="(command)=>handleCommand(scope.row, command)">
<el-button type="primary"> <el-button type="primary">
下载<i class="el-icon-arrow-down el-icon--right"></i> 下载<i class="el-icon-arrow-down el-icon--right"></i>
</el-button> </el-button>
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
<el-dropdown-item command="">预装单</el-dropdown-item> <el-dropdown-item command="downloadPreloadGoodsList">预装单</el-dropdown-item>
<el-dropdown-item command="">已装单</el-dropdown-item> <el-dropdown-item command="downloadLoadGoodsList">已装单</el-dropdown-item>
<el-dropdown-item command="">应收汇总表</el-dropdown-item> <el-dropdown-item command="downloadReceivableList">应收汇总表</el-dropdown-item>
<el-dropdown-item command="">agent list</el-dropdown-item> <el-dropdown-item command="downloadAgentListFiles">agent list</el-dropdown-item>
<el-dropdown-item command="">son cap</el-dropdown-item> <el-dropdown-item command="downloadSoncapFiles">soncap</el-dropdown-item>
<el-dropdown-item command="">提货单</el-dropdown-item> <el-dropdown-item command="zipDownload">提货单</el-dropdown-item>
<el-dropdown-item command="">提单Copy</el-dropdown-item> <el-dropdown-item command="downloadLadingCopy">提单Copy</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</template> </template>
...@@ -304,6 +308,11 @@ import { ...@@ -304,6 +308,11 @@ import {
getboxPage, getboxPage,
exportboxExcel exportboxExcel
} from '@/api/ecw/box' } from '@/api/ecw/box'
import {
downloadFile,
downloadFileByUrl,
formatDate,
} from "./shippingSea/utils";
import { getCabinetPage } from '@/api/ecw/cabinet' import { getCabinetPage } from '@/api/ecw/cabinet'
import { getChannelList } from '@/api/ecw/channel' import { getChannelList } from '@/api/ecw/channel'
import { getWarehouseList } from '@/api/ecw/warehouse' import { getWarehouseList } from '@/api/ecw/warehouse'
...@@ -536,6 +545,10 @@ export default { ...@@ -536,6 +545,10 @@ export default {
this.$router.push('/boxSeaAir/shippingSeaAir/' + row.id) this.$router.push('/boxSeaAir/shippingSeaAir/' + row.id)
break break
case "detail":
this.$router.push("/boxSeaAir/query/" + row.id);
break;
case 'edit': case 'edit':
this.handleUpdate(row) this.handleUpdate(row)
break break
...@@ -560,6 +573,43 @@ export default { ...@@ -560,6 +573,43 @@ export default {
case 'error': case 'error':
this.$set(this.dialogCfg, 'title', '异常登记') this.$set(this.dialogCfg, 'title', '异常登记')
break break
case "downloadPreloadGoodsList":
downloadFile(
command,
{ shipmentId: row.id },
`预装单(${row.selfNo}).xlsx`,
"xlsx"
);
break;
case "downloadLoadGoodsList":
downloadFile(
command,
{ shipmentId: row.id },
`已装单(${row.selfNo}).xlsx`,
"xlsx"
);
break;
case "downloadReceivableList":
downloadFile(
command,
{ shipmentId: row.id },
`应收汇总表(${row.selfNo}).xlsx`,
"xlsx"
);
break;
case "zipDownload":
downloadFile(
command,
{ shipmentId: row.id },
`提货单(${row.selfNo}).zip`,
"zip"
);
break;
case "downloadAgentListFiles":
case "downloadSoncapFiles":
case "downloadLadingCopy":
downloadFileByUrl(command, { shipmentId: row.id });
break;
} }
if (["editLadingBill", "cost", "error"].includes(command)) { if (["editLadingBill", "cost", "error"].includes(command)) {
this.currRow = row; this.currRow = row;
......
...@@ -214,7 +214,7 @@ ...@@ -214,7 +214,7 @@
<p>重货比:</p> <p>重货比:</p>
<p>{{item.weightRatio}}</p> <p>{{item.weightRatio}}</p>
</div> </div>
<div v-if="item.isExternalWarehouse === 0" style="color:blue;fontWeight:bold;"> <div v-if="item.isExternalWarehouse === 1" style="color:blue;fontWeight:bold;">
<p>外部仓</p> <p>外部仓</p>
</div> </div>
<div class="table-button"> <div class="table-button">
...@@ -370,7 +370,7 @@ export default { ...@@ -370,7 +370,7 @@ export default {
operatorData: {}, operatorData: {},
// 校验 // 校验
rules: { rules: {
noticeUser: [{ required: true, message: "必填", trigger: "change" }], noticeUser: [{ required: true, message: "目的地操作员必填", trigger: "change" }],
}, },
// 出货信息 // 出货信息
shipmentObj: this.$attrs.shipmentObj, shipmentObj: this.$attrs.shipmentObj,
...@@ -462,8 +462,10 @@ export default { ...@@ -462,8 +462,10 @@ export default {
}, },
/** 提交 */ /** 提交 */
onSubmit() { onSubmit() {
this.$refs["operatorForm"].validate((valid) => { this.$refs["operatorForm"].validate((valid, errors) => {
if (valid) { if (!valid) {
return this.$showFormValidateErrors(errors);
}
approvalCreate({ approvalCreate({
...this.operatorData, ...this.operatorData,
applyReason: "预装审核", applyReason: "预装审核",
...@@ -476,7 +478,6 @@ export default { ...@@ -476,7 +478,6 @@ export default {
this.$emit("closeDialog", "submit"); this.$emit("closeDialog", "submit");
}); });
}); });
}
}); });
}, },
/* 统计列 */ /* 统计列 */
......
...@@ -286,7 +286,7 @@ export default { ...@@ -286,7 +286,7 @@ export default {
} }
} }
.arrow-area { .arrow-area {
margin: 0 10px; margin: 0 6px;
} }
} }
} }
......
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
</el-card> </el-card>
<!-- 海运流程图 --> <!-- 海运流程图 -->
<seaProcess :seaBaseData="seaAirBaseData" :shipmentObj="shipmentObj" width="66px" height="66px" :allSupplier="allSupplier" :allDocks="allDocks" :allUsers="allUsers" :warehouseList="warehouseList" @getBoxInfo="getBoxInfo" /> <seaProcess :seaBaseData="seaAirBaseData" :shipmentObj="shipmentObj" width="50px" height="50px" :allSupplier="allSupplier" :allDocks="allDocks" :allUsers="allUsers" :warehouseList="warehouseList" @getBoxInfo="getBoxInfo" />
<!-- 海运步骤图 --> <!-- 海运步骤图 -->
<seaStepDetail :seaBaseData="seaAirBaseData" :shipmentObj="shipmentObj" :allSupplier="allSupplier" :allDocks="allDocks" :allUsers="allUsers" :warehouseList="warehouseList" /> <seaStepDetail :seaBaseData="seaAirBaseData" :shipmentObj="shipmentObj" :allSupplier="allSupplier" :allDocks="allDocks" :allUsers="allUsers" :warehouseList="warehouseList" />
......
...@@ -282,7 +282,7 @@ ...@@ -282,7 +282,7 @@
> >
<template v-slot = "{row}"> <template v-slot = "{row}">
<el-form-item label=""> <el-form-item label="">
<el-select v-model="row.userid" @change="selectBD" size="mini"> <el-select v-model="row.userid" @change="selectBD" size="mini" filterable>
<el-option v-for="(item,index) in memberList" :value="item.id" :key="item.id" :label="item.nickname + '(' + item.mobile + ')'" ></el-option> <el-option v-for="(item,index) in memberList" :value="item.id" :key="item.id" :label="item.nickname + '(' + item.mobile + ')'" ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -431,18 +431,17 @@ export default { ...@@ -431,18 +431,17 @@ export default {
}, },
created() { created() {
this.reset() this.reset()
this.handleAddContact()
if(this.customerId !== '0') { if(this.customerId !== '0') {
// 编辑客户
this.getCustomer(this.customerId).then(() => { this.getCustomer(this.customerId).then(() => {
getCustomerContactsListByCustomer({customerId: this.customerId}).then(r => { getCustomerContactsListByCustomer({customerId: this.customerId}).then(r => {
this.form.customerContacts = r.data this.form.customerContacts = r.data
}) })
}) })
} else { } else {
const obj = Object.assign({}, this.$route, { title: this.$t('自定义标题') }) // 新建客户
this.$tab.updatePage(obj); this.handleAddContact()
this.$tab.updatePage({...this.$route, meta: {...this.$route.meta, name: 'abc'}})
} }
getNodeList().then(r => { getNodeList().then(r => {
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
<!-- 提单审核 --> <!-- 提单审核 -->
<el-descriptions-item v-if="path == 'order_landing_bill'"> <el-descriptions-item v-if="path == 'order_landing_bill'">
<el-button type="primary" @click="ShowLandingBill=true">查看提单</el-button> <el-button type="primary" @click="getBillOfLandingInProcessing">查看提单</el-button>
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
<script> <script>
import {getOrder, getApproval} from '@/api/ecw/order' import {getOrder, getApproval} from '@/api/ecw/order'
import {getChannel} from '@/api/ecw/channel' import {getChannel} from '@/api/ecw/channel'
import {getBillOfLandingInProcessing, getBillService} from '@/api/ecw/box'
/* /*
优惠申请 1 优惠申请 1
管理优惠 2 管理优惠 2
...@@ -85,6 +86,7 @@ export default { ...@@ -85,6 +86,7 @@ export default {
created(){ created(){
if(this.id){ if(this.id){
this.getData() this.getData()
getBillService({id: this.id})
} }
}, },
methods:{ methods:{
...@@ -103,6 +105,14 @@ export default { ...@@ -103,6 +105,14 @@ export default {
this.channel = res.data this.channel = res.data
}) })
}, },
getBillService(){
},
getBillOfLandingInProcessing(){
getBillOfLandingInProcessing({orderId: this.detail.orderId}).then(res => {
console.log(res)
})
}
} }
} }
</script> </script>
......
<!--拆单审核中的申请信息部分-->
<template>
<div v-if="order">
<el-descriptions :column="4" v-if="order" :colon="false">
<el-descriptions-item :label="$t('订单号')">{{order.orderNo}}</el-descriptions-item>
<el-descriptions-item :label="$t('运输方式')">
<dict-tag class="mr-10" :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="order.transportId" />
</el-descriptions-item>
<el-descriptions-item :label="$t('出货方式')">
{{channel ? channel.nameZh : '/'}}
</el-descriptions-item>
<el-descriptions-item :label="$t('订单状态')">
{{order.statusMsg}}
</el-descriptions-item>
<el-descriptions-item :label="$t('唛头')">{{order.marks}}</el-descriptions-item>
<el-descriptions-item :label="$t('始发仓')">
{{order.logisticsInfoDto.startTitleZh}}
</el-descriptions-item>
<el-descriptions-item :label="$t('目的仓')" :span="2">
{{order.logisticsInfoDto.destAddressZh}}
</el-descriptions-item>
<!-- 提单审核 -->
<el-descriptions-item>
<el-button type="primary" @click="ShowLandingBill=true">查看提单</el-button>
</el-descriptions-item>
</el-descriptions>
<el-dialog title="查看提单" :visible.sync="ShowLandingBill">
<div style="text-align:center; width: 600px; margin: auto" v-html="billContent" />
</el-dialog>
</div>
</template>
<script>
import {getOrder} from '@/api/ecw/order'
import {getChannel} from '@/api/ecw/channel'
import {getBillService} from '@/api/ecw/box'
export default {
name: 'OrderLandingBill',
props:{
id: [String, Number],
path: String
},
data(){
return {
order: null,
channel: null,
ShowLandingBill: false,
billContent: null
}
},
watch:{
order(){
if(this.order.channelId){
this.getChannel()
}
}
},
created(){
if(this.id){
getBillService({id: this.id}).then(res => {
this.billContent = res.data.billContent
return getOrder(res.data.orderId)
}).then(res => {
this.order = res.data
})
}
},
methods:{
getChannel(){
getChannel(this.order.channelId).then(res => {
this.channel = res.data
})
}
}
}
</script>
<style scoped lang="scss">
.title{
padding: 10px 0;
span{
font-size: 14px;
font-weight: bold;
}
}
</style>
\ No newline at end of file
...@@ -447,7 +447,7 @@ ...@@ -447,7 +447,7 @@
</template> </template>
<script> <script>
import { createOrder, updateOrder, getOrderDetail, getOrderCourierNumber, orderImport, exportPackingList } from "@/api/ecw/order"; import { createOrder, updateOrder, getOrderDetail, getOrderCourierNumber, orderImport, exportPackingList, getUpdateInfo } from "@/api/ecw/order";
import ProductSelector from '@/components/ProductSelector' import ProductSelector from '@/components/ProductSelector'
import {getProductAttrList} from '@/api/ecw/productAttr' import {getProductAttrList} from '@/api/ecw/productAttr'
import {getChannelList} from '@/api/ecw/channel' import {getChannelList} from '@/api/ecw/channel'
...@@ -623,7 +623,7 @@ export default { ...@@ -623,7 +623,7 @@ export default {
sum.totalNum = sum.totalNum.plus(item.num || 0) sum.totalNum = sum.totalNum.plus(item.num || 0)
sum.totalVolume = sum.totalVolume.plus(item.volume || 0) sum.totalVolume = sum.totalVolume.plus(item.volume || 0)
sum.totalWeight = sum.totalWeight.plus(item.weight || 0) sum.totalWeight = sum.totalWeight.plus(item.weight || 0)
sum.totaltotalWorthNum = sum.totalWorth.plus(item.worth || 0) sum.totalWorth = sum.totalWorth.plus(item.worth || 0)
sum.totalQuatity = sum.totalQuatity.plus(item.quantity || 0) sum.totalQuatity = sum.totalQuatity.plus(item.quantity || 0)
}) })
return sum return sum
...@@ -729,7 +729,7 @@ export default { ...@@ -729,7 +729,7 @@ export default {
}, },
methods: { methods: {
getOrder(){ getOrder(){
getOrderDetail(this.$route.query.id).then(res => { getUpdateInfo(this.$route.query.id).then(res => {
this.form = res.data this.form = res.data
this.form.orderItemVOList.forEach(item => { this.form.orderItemVOList.forEach(item => {
...@@ -832,6 +832,7 @@ export default { ...@@ -832,6 +832,7 @@ export default {
console.log(product) console.log(product)
// row.goodsType = product ? product.typeId : null // row.goodsType = product ? product.typeId : null
row.prodAttrArr = !product ? [] : product.attrId.split(',').filter(item => item !== '').map(item => +item) row.prodAttrArr = !product ? [] : product.attrId.split(',').filter(item => item !== '').map(item => +item)
this.calculationPrice()
}, },
onAreaChange(type, val){ onAreaChange(type, val){
this.$set(this.form, type, val) this.$set(this.form, type, val)
......
...@@ -138,7 +138,12 @@ ...@@ -138,7 +138,12 @@
<template v-else>{{row.sumVolume}}m³ /{{row.sumWeight}}Kg</template> <template v-else>{{row.sumVolume}}m³ /{{row.sumWeight}}Kg</template>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('始发仓')" align="center" prop="departureName" /> <el-table-column :label="$t('始发仓')" align="center" prop="departureName">
<template slot-scope="{row}">
{{row.departureName}}
<template v-if="row.isExternalWarehouse">({{$t('外部仓')}})</template>
</template>
</el-table-column>
<el-table-column :label="$t('运输方式/目的地')" align="center" prop="transportId"> <el-table-column :label="$t('运输方式/目的地')" align="center" prop="transportId">
<template slot-scope="{row}"> <template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="row.transportId" /> / {{row.objectiveName}} <dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="row.transportId" /> / {{row.objectiveName}}
...@@ -253,12 +258,12 @@ ...@@ -253,12 +258,12 @@
<el-button type="text">{{$t('仓库')}}</el-button> <el-button type="text">{{$t('仓库')}}</el-button>
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
<!-- 入仓操作 --> <!-- 入仓操作 -->
<template v-if="include(scope.row.status, [0,2]) || include(scope.row.abnormalState, [1])"> <template v-if="include(scope.row.status, [0,2]) || include(scope.row.abnormalState, [1]) || scope.row.inWarehouseState == 208">
<el-dropdown-item @click.native="$router.push('/order/warehousing?id=' + scope.row.orderId)" v-hasPermi="['ecw:order:update']">{{$t('入仓操作')}}</el-dropdown-item> <el-dropdown-item @click.native="$router.push('/order/warehousing?id=' + scope.row.orderId)" v-hasPermi="['ecw:order:update']">{{$t('入仓操作')}}</el-dropdown-item>
</template> </template>
<!-- 入仓补充 --> <!-- 入仓补充 -->
<template v-if=" <template v-if="
include(scope.row.inWarehouseState, [201,202, 208, 202, 210, 202, 211, 202, 213, 214, 215, 216]) && include(scope.row.inWarehouseState, [201,202, 202, 210, 202, 211, 202, 213, 214, 215, 216]) &&
scope.row.abnormalState != 1 && scope.row.abnormalState != 1 &&
include(scope.row.status, [2,3,5,10,9,8]) include(scope.row.status, [2,3,5,10,9,8])
"> ">
...@@ -266,14 +271,14 @@ ...@@ -266,14 +271,14 @@
</template> </template>
<!-- 入仓修改 --> <!-- 入仓修改 -->
<template v-if=" <template v-if="
include(scope.row.inWarehouseState, [202, 207, 208, 202, 209, 210, 202, 211, 212, 202, 213, 214, 215, 216, 204, 205, 206]) include(scope.row.inWarehouseState, [202, 207, 202, 209, 210, 202, 211, 212, 202, 213, 214, 215, 216, 204, 205, 206])
"> ">
<el-dropdown-item @click.native="$router.push('/order/warehousing-update?id=' + scope.row.orderId)" v-hasPermi="['ecw:order:update']">{{$t('入仓修改')}}</el-dropdown-item> <el-dropdown-item @click.native="$router.push('/order/warehousing-update?id=' + scope.row.orderId)" v-hasPermi="['ecw:order:update']">{{$t('入仓修改')}}</el-dropdown-item>
</template> </template>
<!-- 退仓 --> <!-- 退仓 -->
<template v-if=" <template v-if="
include(scope.row.inWarehouseState, [201, 202, 207, 208, 202, 209, 210, 202, 211, 212, 202, 213, 214, 215, 216]) && include(scope.row.inWarehouseState, [201, 202, 207, 202, 209, 210, 202, 211, 212, 202, 213, 214, 215, 216]) &&
exclude(scope.row.abnormalState, [1]) exclude(scope.row.abnormalState, [1])
"> ">
<el-dropdown-item @click.native="show = true;orderId = scope.row.orderId; " v-hasPermi="['ecw:order:update']">{{$t('退仓')}}</el-dropdown-item> <el-dropdown-item @click.native="show = true;orderId = scope.row.orderId; " v-hasPermi="['ecw:order:update']">{{$t('退仓')}}</el-dropdown-item>
...@@ -282,7 +287,7 @@ ...@@ -282,7 +287,7 @@
<!-- 调仓 --> <!-- 调仓 -->
<template v-if=" <template v-if="
include(scope.row.inWarehouseState, [201, 202, 208, 202, 210, 202, 211, 202, 213, 215, 216]) include(scope.row.inWarehouseState, [201, 202, 202, 210, 202, 211, 202, 213, 215, 216])
"> ">
<el-dropdown-item @click.native="orderId = scope.row.orderId;warehouseBol=true;" >{{$t('调仓')}}</el-dropdown-item> <el-dropdown-item @click.native="orderId = scope.row.orderId;warehouseBol=true;" >{{$t('调仓')}}</el-dropdown-item>
</template> </template>
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
v-for="item in brandList" v-for="item in brandList"
:key="item.id" :key="item.id"
:label="item.titleZh" :label="item.titleZh"
:value="item.titleZh"> :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</el-descriptions-item> </el-descriptions-item>
...@@ -307,7 +307,7 @@ ...@@ -307,7 +307,7 @@
import dictSelector from "@/components/DictSelector" import dictSelector from "@/components/DictSelector"
import {DICT_TYPE, getDictDataLabel} from "@/utils/dict" import {DICT_TYPE, getDictDataLabel} from "@/utils/dict"
import { orderWarehouseIn, orderWarehouseInUpdateApply } from '@/api/ecw/order' import { orderWarehouseIn, orderWarehouseInUpdateApply } from '@/api/ecw/order'
import { getFeeTypeByCustomerProduct, getProductBrankPage } from '@/api/ecw/productBrank' import { getFeeTypeByOrderProduct, getProductBrankPage } from '@/api/ecw/productBrank'
import WorkFlow from "@/components/WorkFlow" import WorkFlow from "@/components/WorkFlow"
import elSelect from '@/components/render/slots/el-select' import elSelect from '@/components/render/slots/el-select'
import ProductSelector from "@/components/ProductSelector" import ProductSelector from "@/components/ProductSelector"
...@@ -322,7 +322,7 @@ export default { ...@@ -322,7 +322,7 @@ export default {
}, },
props: { props: {
customerId: { orderId: {
type: Number, type: Number,
default: undefined default: undefined
}, },
...@@ -464,10 +464,10 @@ export default { ...@@ -464,10 +464,10 @@ export default {
}, },
handleTabs(){}, handleTabs(){},
handleBrandChange(v){ handleBrandChange(v){
getFeeTypeByCustomerProduct({ getFeeTypeByOrderProduct({
brandId: parseInt(v), brandId: parseInt(v),
productId: this.warehousing.prodId, productId: this.warehousing.prodId,
customerId: this.customerId orderId: this.orderId
}).then(r => { }).then(r => {
if(r.code === 0){ if(r.code === 0){
(this.activeName === "first" ? this.form : this.form1).feeType = parseInt(r.data.feeType); (this.activeName === "first" ? this.form : this.form1).feeType = parseInt(r.data.feeType);
......
...@@ -142,7 +142,7 @@ ...@@ -142,7 +142,7 @@
<warehouse-area-dialog ref="area" :visible.sync="areaVisible" v-model="form.orderLocationCreateReqVOList" <warehouse-area-dialog ref="area" :visible.sync="areaVisible" v-model="form.orderLocationCreateReqVOList"
:order-id="orderId" :city-id="cityId"></warehouse-area-dialog> :order-id="orderId" :city-id="cityId"></warehouse-area-dialog>
<edit-dialog :title="title" :customer-id="order.customerId" :visible.sync="warehousingVisible" :warehousing="warehousing" :edit="isEdit"></edit-dialog> <edit-dialog :title="title" :order-id="order.orderId" :visible.sync="warehousingVisible" :warehousing="warehousing" :edit="isEdit"></edit-dialog>
<!-- 完成入仓 --> <!-- 完成入仓 -->
<el-dialog <el-dialog
......
...@@ -63,14 +63,14 @@ ...@@ -63,14 +63,14 @@
<div slot="header" style="font-size:20px;"> <div slot="header" style="font-size:20px;">
{{$t('价格设置')}} {{$t('价格设置')}}
<span> <span>
<el-checkbox label="" @change="form.needPay=$event ? 1 : 0">{{$t('预付')}}</el-checkbox> <el-checkbox label="" v-model="needPay">{{$t('预付')}}</el-checkbox>
<el-checkbox label="" @change="form.stepPrice=$event ? 1 : 0">{{$t('阶梯订单')}}</el-checkbox> <el-checkbox label="" v-model="stepPrice">{{$t('阶梯定价')}}</el-checkbox>
</span> </span>
</div> </div>
<el-form-item :label="$t('单价模式')" prop="priceType"> <el-form-item :label="$t('单价模式')" prop="priceType">
<dict-selector :type="DICT_TYPE.ECW_PRICE_TYPE" v-model="form.priceType" form-type="radio" formatter="number" defaultable /> <dict-selector :type="DICT_TYPE.ECW_PRICE_TYPE" v-model="form.priceType" form-type="radio" formatter="number" defaultable />
</el-form-item> </el-form-item>
<!--阶梯订单--> <!--阶梯定价-->
<template v-if="form.stepPrice==1" > <template v-if="form.stepPrice==1" >
<div v-for="(item, index) in priceStepList" :key="index"> <div v-for="(item, index) in priceStepList" :key="index">
<div style="font-size:14px; margin:10px 0"> <div style="font-size:14px; margin:10px 0">
...@@ -224,6 +224,8 @@ export default { ...@@ -224,6 +224,8 @@ export default {
validateEndDate: undefined, validateEndDate: undefined,
validateStartDate: undefined validateStartDate: undefined
}, },
needPay: false, // 是否需要预付
stepPrice: false, // 是否阶梯订单
specialProducts: [], specialProducts: [],
priceStepList: [{},{}], // 阶梯价格 priceStepList: [{},{}], // 阶梯价格
// specialList:[], // 特殊需求,默认四个 // specialList:[], // 特殊需求,默认四个
...@@ -314,6 +316,12 @@ export default { ...@@ -314,6 +316,12 @@ export default {
if(val) this.$set(this.form, 'dayLimit', 10000) if(val) this.$set(this.form, 'dayLimit', 10000)
else delete this.form.dayLimit else delete this.form.dayLimit
}, },
needPay(val){
this.$set(this.form, 'needPay', val ? 1 : 0)
},
stepPrice(val){
this.$set(this.form, 'stepPrice', val ? 1 : 0)
},
selectedRoutes(routers) { selectedRoutes(routers) {
let transportIds = [] let transportIds = []
routers.forEach(item => { routers.forEach(item => {
...@@ -339,6 +347,9 @@ export default { ...@@ -339,6 +347,9 @@ export default {
if(this.$route.query.action == 'update'){ if(this.$route.query.action == 'update'){
getProductPrice(this.$route.query.id).then(res => { getProductPrice(this.$route.query.id).then(res => {
this.$set(this, 'form', res.data) this.$set(this, 'form', res.data)
if(this.form.needPay){
this.needPay = true
}
this.lineList = [res.data] this.lineList = [res.data]
}) })
} }
......
...@@ -139,6 +139,11 @@ ...@@ -139,6 +139,11 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item v-if="form.type != '3'" label="重定向" prop="redirect">
<el-input v-model="form.redirect" placeholder="请输入重定向地址" />
</el-form-item>
</el-col>
</el-row> </el-row>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
...@@ -262,10 +267,11 @@ export default { ...@@ -262,10 +267,11 @@ export default {
name: undefined, name: undefined,
enName: undefined, enName: undefined,
icon: undefined, icon: undefined,
isShowInMenuBar: undefined, isShowInMenuBar: true,
type: SystemMenuTypeEnum.DIR, type: SystemMenuTypeEnum.DIR,
sort: undefined, sort: undefined,
keepalive: false, keepalive: false,
redirect: undefined,
status: CommonStatusEnum.ENABLE status: CommonStatusEnum.ENABLE
}; };
this.resetForm("form"); this.resetForm("form");
......
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