Commit 37165ac9 authored by 我在何方's avatar 我在何方
parents b7744091 325c8c1c
......@@ -155,3 +155,11 @@ export function userMemberUserList(){
method:'get'
})
}
//查看某客户授权的品牌
export function getBrankByCustomer(data){
return request({
url:'/ecw/product-brank/getBrankByCustomer',
method:'post',
data,
})
}
......@@ -325,4 +325,30 @@ export function getApproval(id){
url:'/order/approval/get?id=' + id,
method:'get'
})
}
\ No newline at end of file
}
// 特价申请
export function createOrderSpecial(data) {
return request({
url: '/ecw/order/special/apply',
method: 'put',
data: data
})
}
// 获得订单特价申请详情
export function getOrderSpecial(offerProdId, type = 1) {
return request({
url: '/ecw/order/special/info/' + offerProdId + '/' + type,
method: 'get'
})
}
// 根据订单项商品ID与审批类型获得订单商品的特价申请详情
export function getOrderSpecialByApproveId(approveId) {
return request({
url: '/ecw/order/special/info?approveId=' + approveId,
method: 'get'
})
}
......@@ -42,4 +42,54 @@ export function getRleaseInfo(orderId){
url:'/ecw/order-cargo-control/release/info/' + orderId,
method:'get'
})
}
\ No newline at end of file
}
// 获得控货订单放货详情
export function getPickRleaseInfo(orderId){
return request({
url:'/ecw/order-cargo-control-pick/release/info/' + orderId,
method:'get'
})
}
// 放货修改与反复核申请
export function updateApply(data){
return request({
url: '/ecw/order-cargo-control-pick/update/apply',
method: 'put',
data
})
}
// 复核(放货复核)
export function review(id){
return request({
url: '/ecw/order-cargo-control-pick/review/' + id,
method: 'put'
})
}
// 取消放货
export function cancel(id){
return request({
url: '/ecw/order-cargo-control-pick/cancel/' + id,
method: 'put'
})
}
// 取消审批
export function cancelApproval(approvalId, params){
return request({
url: '/ecw/order-cargo-control-pick/cancel/approval/' + approvalId,
method: 'get',
params
})
}
// 订单复核
export function orderReview(orderId){
return request({
url: '/ecw/order-cargo-control/review/' + orderId,
method: 'put'
})
}
......@@ -119,3 +119,12 @@ export function deleteSplitItem(id) {
method: 'delete'
})
}
// 根据合并编号获得订单信息、已合单列表和待合单列表
export function getMergeListByMergeId(params){
return request({
url: '/order/merge/getMergeListByMergeId',
method: 'get',
params
})
}
\ No newline at end of file
......@@ -49,6 +49,9 @@ export default {
return this.list.map(item => {
item.label = item.contactsName
let more = []
if(item.customerName){
more.push(item.customerName)
}
if(item.phoneNew){
more.push(item.phoneNew)
}
......
......@@ -289,6 +289,20 @@ export const constantRoutes = [
hidden: true,
redirect: 'noredirect',
children: [
{
path: 'special/:orderId(\\d+)',
component: (resolve) => import('@/views/ecw/order/special'),
props: true,
name: 'order-special',
meta: {title: '订单特价申请', icon: '', activeMenu: '/order/index'}
},
{
path: 'discount/:offerProdId(\\d+)',
component: (resolve) => import('@/views/ecw/order/special/discount'),
props: true,
name: 'discount',
meta: {title: '订单优惠申请', icon: '', activeMenu: '/order/index'}
},
{
path: 'associated-order/:orderId(\\d+)',
component: (resolve) => require(['@/views/ecw/order/associatedOrder'],resolve),
......
......@@ -106,6 +106,8 @@ export const DICT_TYPE = {
ECW_PAYMENT_STATE: 'payment_state',//付款单状态
ECW_INVOICING_TYPE: 'invoicing_type',
ECW_PRICE_TYPE: 'price_type',
ECW_RELEASE_STATUS: 'release_status', // 放货状态
ECW_PICK_RECURRENT_NUCLEAR_TYPE: 'PICK_RECURRENT_NUCLEAR_TYPE', // 放货反复核类型
//--------ecw---------
CUSTOMER_STATUS: 'customer_status',
CUSTOMER_SOURCE: 'customer_source',
......
......@@ -135,6 +135,7 @@ import specialDiscount from "@/views/ecw/offer/specialDiscount"
import warehouseDetails from "@/views/ecw/order/components/warehouseDetails";
import shippingDetail from '@/views/ecw/box/shippingDetail'
import SplitDetail from '@/views/ecw/order/components/SplitDetail'
import MergeDetail from '@/views/ecw/order/components/MergeDetail'
// 流程实例的详情页,可用于审批
export default {
......@@ -144,7 +145,8 @@ export default {
specialDiscount,
warehouseDetails,
shippingDetail,
SplitDetail
SplitDetail,
MergeDetail
},
computed:{
matterNum(){
......@@ -240,7 +242,11 @@ export default {
processId: this.processInstance.businessKey,
},
split_detail: {
component: "splitDetail",
component: "SplitDetail",
id: this.processInstance.businessKey,
},
merge_detail: {
component: "MergeDetail",
id: this.processInstance.businessKey,
}
}
......
......@@ -120,6 +120,7 @@
<el-dropdown-item command="error">异常登记</el-dropdown-item>
<el-dropdown-item command="cost">费用登记</el-dropdown-item>
<el-dropdown-item command="delete">删除</el-dropdown-item>
<el-dropdown-item command="editLadingBill">编辑提货单</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-dropdown trigger="click">
......@@ -143,15 +144,18 @@
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize" @pagination="getList" />
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="600px" append-to-body class="shippingSea-dialog">
<template v-if="dialogType === 'edit' || dialogType === 'add'">
<editForm v-if="open" @closeDialog="closeDialog" :shipmentObj="currRow" :warehouseList="warehouseList" :transportTypes="transportTypes" :cabinetList="cabinetList" />
<el-dialog :title="dialogCfg.title" :visible.sync="dialogCfg.open" :width="dialogCfg.width" append-to-body class="shippingSea-dialog">
<template v-if="dialogCfg.dialogType === 'edit' || dialogCfg.dialogType === 'add'">
<editForm v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" :warehouseList="warehouseList" :transportTypes="transportTypes" :cabinetList="cabinetList" />
</template>
<template v-if="dialogType === 'cost'">
<costForm v-if="open" @closeDialog="closeDialog" :shipmentObj="currRow" />
<template v-if="dialogCfg.dialogType === 'cost'">
<costForm v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" />
</template>
<template v-if="dialogType === 'error'">
<regError v-if="open" @closeDialog="closeDialog" :shipmentObj="currRow" />
<template v-if="dialogCfg.dialogType === 'error'">
<regError v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" />
</template>
<template v-if="dialogCfg.dialogType === 'editLadingBill'">
<ladingBill v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" />
</template>
</el-dialog>
</div>
......@@ -165,6 +169,7 @@ import { getListTree } from "@/api/ecw/region";
import costForm from "./costForm.vue";
import regError from "./regError.vue";
import editForm from "./editForm.vue";
import ladingBill from "./ladingBill.vue";
export default {
name: "indexSea",
......@@ -172,6 +177,7 @@ export default {
costForm,
regError,
editForm,
ladingBill,
},
data() {
return {
......@@ -194,13 +200,16 @@ export default {
// 出货列表
list: [],
// 弹出层标题
title: "",
// 弹出类型
dialogType: "",
dialogCfg: {
title: "",
dialogType: "",
width: "600px",
// 是否显示弹出层
open: false,
},
// 当前行
currRow: {},
// 是否显示弹出层
open: false,
dateRangeCreateTime: [],
// 查询参数
queryParams: {
......@@ -281,18 +290,20 @@ export default {
},
/** 新增按钮操作 */
handleAdd() {
this.open = true;
this.title = "添加出货";
this.dialogType = "add";
this.$set(this.dialogCfg, "open", true);
this.$set(this.dialogCfg, "title", "添加出货");
this.$set(this.dialogCfg, "dialogType", "add");
this.$set(this.dialogCfg, "width", "600px");
},
/** 修改按钮操作 */
handleUpdate(row) {
const id = row.id;
getbox(id).then((response) => {
this.currRow = response.data;
this.open = true;
this.title = "修改出货";
this.dialogType = "edit";
this.$set(this.dialogCfg, "open", true);
this.$set(this.dialogCfg, "title", "修改出货");
this.$set(this.dialogCfg, "dialogType", "edit");
this.$set(this.dialogCfg, "width", "600px");
});
},
/** 删除按钮操作 */
......@@ -330,7 +341,7 @@ export default {
},
/* 关闭弹窗 */
closeDialog(type) {
this.open = false;
this.$set(this.dialogCfg, "open", false);
if (type === "add" || type === "edit") {
this.getList();
}
......@@ -346,22 +357,36 @@ export default {
this.handleUpdate(row);
break;
case "editLadingBill":
const cabinetLabel = this.getCabinetName(row.cabinetId);
const title = `查看提单 ${row.selfNo} 柜号:${row.cubNo} 柜型:${cabinetLabel}`;
this.$set(this.dialogCfg, "open", true);
this.$set(this.dialogCfg, "title", title);
this.$set(this.dialogCfg, "dialogType", "editLadingBill");
this.$set(this.dialogCfg, "width", "60%");
this.currRow = row;
break;
case "delete":
this.handleDelete(row);
break;
case "cost":
this.title = "费用登记";
this.dialogType = "cost";
this.open = true;
this.$set(this.dialogCfg, "open", true);
this.$set(this.dialogCfg, "title", "费用登记");
this.$set(this.dialogCfg, "dialogType", "cost");
this.$set(this.dialogCfg, "width", "600px");
this.currRow = row;
break;
case "error":
this.title = "异常登记";
this.dialogType = "error";
this.open = true;
this.$set(this.dialogCfg, "open", true);
this.$set(this.dialogCfg, "title", "异常登记");
this.$set(this.dialogCfg, "dialogType", "error");
this.$set(this.dialogCfg, "width", "600px");
this.currRow = row;
break;
case "detail":
this.$router.push("/boxSea/query/" + row.id);
break;
......
<template>
</template>
<script>
export default {
name: "ladingBill",
};
</script>
<style lang="scss" scoped>
</style>
......@@ -24,10 +24,10 @@
<el-button type="primary" @click="showOrder">订单列表</el-button>
</el-row>
<div v-if="boxBackVO.preInstallInfo && boxBackVO.preInstallInfo.applyReason">
<p>申请原因</p>
<div v-if="approvalInfo.applyReason">
<h1>申请原因</h1>
<div>
{{boxBackVO.preInstallInfo.applyReason}}
{{approvalInfo.applyReason}}
</div>
</div>
......@@ -110,6 +110,7 @@ export default {
},
data() {
return {
approvalInfo: {},
boxBackVO: {},
loadDetail: {},
// 柜型
......@@ -131,6 +132,7 @@ export default {
/* 获取详情 */
getApprovalDetail(processId) {
approvalDetail({ approvalId: processId }).then((res) => {
this.approvalInfo = res.data.approvalInfo;
this.boxBackVO = res.data.boxBackVO;
this.loadDetail = res.data.loadDetail;
});
......
......@@ -22,13 +22,13 @@
<!-- 开始装柜 -->
<el-dialog title="开始装柜" :visible.sync="dialogVisible" fullscreen :modal-append-to-body=false append-to-body>
<startPacking v-bind="$attrs" v-if="dialogVisible" />
<startPacking v-bind="$attrs" v-if="dialogVisible" @closeDialog="closeDialog" />
</el-dialog>
<!-- 操作 -->
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit(1)">保存</el-button>
<el-button type="success" @click="onSubmit(2)">封柜</el-button>
<el-button type="success" @click="onSubmit(2)" :disabled="isStartCabinet">封柜</el-button>
<el-button @click="cancel">关闭</el-button>
<el-button type="danger" @click="startCabinet" :disabled="isStartCabinet">开始装柜</el-button>
</el-row>
......@@ -99,6 +99,10 @@ export default {
}
});
},
closeDialog(type) {
this.dialogVisible = false;
if (type) this.cancel(type);
},
/** 取消 */
cancel(type) {
this.$emit("closeDialog", type);
......@@ -112,7 +116,7 @@ export default {
isStartCabinet() {
const { currNode, shipmentObj } = this.$attrs;
const status = shipmentObj[currNode.keyName];
return status === 46 ? true : false;
return status === 47 ? true : false;
},
},
};
......
......@@ -36,7 +36,7 @@
<!-- 表格 -->
<el-row class="table-content">
<el-table :data="tableData.sectionOrderList" border>
<el-table :data="tableData.sectionOrderList" border max-height="500px">
<el-table-column label="序号" type="index" align="center" width="50" />
<el-table-column label="订单号" align="center" prop="orderNo">
<template slot-scope="scope">
......@@ -100,16 +100,27 @@
<p>容量:</p>
<p>{{calcCapacity}}</p>
</div>
<div>已装 无返回</div>
<div>已装 {{getInstallNumCount}}</div>
</el-col>
</el-row>
<!-- 操作 -->
<el-row class="button-area">
<el-button type="primary" @click="handlerClick('supplementOrder','补单')" v-if="!isUnderReview">补单</el-button>
<el-button type="primary" v-if="!isUnderReview" @click="applyCloseCabinet">申请封柜</el-button>
<el-button type="primary" @click="handlerClick('modifyCabinet','修改柜信息')" v-if="!isUnderReview">修改柜信息</el-button>
<el-button type="primary" v-if="isUnderReview">封柜审核中</el-button>
<!-- 审核流程 -->
<el-row class="process-area">
<div class="process">
<div>审批流程</div>
<work-flow xmlkey="close_container" v-model="selectedUsers"></work-flow>
</div>
<!-- 操作 -->
<div v-if="!isUnderReview">
<el-button type="primary" @click="handlerClick('supplementOrder','补单')">补单</el-button>
<el-button type="primary" @click="applyCloseCabinet">封柜申请</el-button>
<el-button type="primary" @click="handlerClick('modifyCabinet','修改柜信息')">修改柜信息</el-button>
</div>
<div v-if="isUnderReview">
<el-button type="primary" :disabled=true>封柜审核中</el-button>
<el-button plain type="primary" @click="canclAudit">取消审核</el-button>
<el-button plain type="primary" @click="$emit('closeDialog')">返回</el-button>
</div>
</el-row>
<!-- 对话框 -->
......@@ -202,6 +213,7 @@ import {
remove,
boxUpdate,
approvalCreate,
approvalCancel,
} from "@/api/ecw/boxSea";
import {
getTotlContent,
......@@ -210,6 +222,7 @@ import {
sumStatistics,
} from "../../utils";
import splitOrder from "./splitOrder.vue";
import WorkFlow from "@/components/WorkFlow";
/**
* 开始装柜
......@@ -220,6 +233,7 @@ export default {
components: {
supplementOrder,
splitOrder,
WorkFlow,
},
props: {
shipmentObj: Object,
......@@ -230,10 +244,6 @@ export default {
listData: [],
// 表格数据
tableData: {},
// 统计数据
sumData: {
count: { num: 0, volume: 0, weight: 0 },
},
// 弹窗配置
dialogConfig: {
title: "",
......@@ -267,6 +277,7 @@ export default {
},
// 当前行
currRow: {},
selectedUsers: [],
};
},
created() {
......@@ -408,6 +419,7 @@ export default {
params.orderNumCode = this.qrCode;
singleCreate(params).then((res) => {
serviceMsg(res, this).then(() => {
this.qrCode = "";
this.getLoadSecGoodsList();
});
});
......@@ -415,6 +427,7 @@ export default {
params.orderNo = this.batchObj.qrCode;
batchCreate(params).then((res) => {
serviceMsg(res, this).then(() => {
this.closeDialog();
this.getLoadSecGoodsList();
});
});
......@@ -431,12 +444,14 @@ export default {
if (type === "single") {
singleDelete(params).then((res) => {
serviceMsg(res, this).then(() => {
this.closeDialog();
this.getLoadSecGoodsList();
});
});
} else {
batchDelete(params).then((res) => {
serviceMsg(res, this).then(() => {
this.closeDialog();
this.getLoadSecGoodsList();
});
});
......@@ -474,11 +489,15 @@ export default {
/* 申请封柜 */
applyCloseCabinet() {
approvalCreate({
shipmentId: this.shipmentObj.id,
applyReason: "封柜审核",
approvalStatus: 0,
approvalType: 2, // 封柜
copyUserId: this.selectedUsers,
shipmentId: this.shipmentObj.id,
}).then((res) => {
serviceMsg(res, this);
serviceMsg(res, this).then(() => {
this.$emit("closeDialog", "submit");
});
});
},
/* 是否显示拆单 */
......@@ -488,11 +507,17 @@ export default {
}
return false;
},
},
watch: {
listData(val) {
const count = sumStatistics(val);
this.$set(this.sumData, "count", count);
/* 取消审核 */
canclAudit() {
approvalCancel({
applyReason: "取消审核",
id: this.shipmentObj["cabinetApprovalInfo"].id,
shipmentId: this.shipmentObj.id,
}).then((res) => {
serviceMsg(res, this).then(() => {
this.$emit("closeDialog", "submit");
});
});
},
},
computed: {
......@@ -517,6 +542,19 @@ export default {
getSumData() {
return sumStatistics(this.listData);
},
/* 已装总数 */
getInstallNumCount() {
let count = 0;
if (Array.isArray(this.listData)) {
this.listData.forEach((item) => {
const { sectionOrderList } = item;
sectionOrderList.forEach((item) => {
count = count + item.installNum;
});
});
}
return count;
},
},
};
</script>
......@@ -613,8 +651,19 @@ export default {
}
}
}
.button-area {
text-align: center;
.process-area {
margin-top: 15px;
padding-bottom: 30px;
.process {
display: flex;
flex-direction: column;
> :first-child {
color: #606266;
font-weight: bolder;
font-size: 16px;
}
}
}
}
</style>
......@@ -29,7 +29,7 @@
<el-form-item label="截关时间">
<el-date-picker type="date" placeholder="请选择日期" v-model="cusDeclarationObj.dcCutOffTime" value-format="yyyy-MM-dd"></el-date-picker>
</el-form-item>
<el-form-item label="状态">
<el-form-item label="状态" prop="dcCustomsStatus">
<el-radio-group v-model="cusDeclarationObj.dcCustomsStatus">
<el-radio v-for="item in this.getDictDatas(DICT_TYPE.BOX_SHIPPING_DCCUSTOMS_STATUS)" :key="item.value" :label="item.value">{{item.label}}</el-radio>
</el-radio-group>
......@@ -160,6 +160,7 @@ export default {
dcBoxWgt: [{ required: true, message: "必填", trigger: "change" }],
dcGoodsWgt: [{ required: true, message: "必填", trigger: "change" }],
dcCustomsType: [{ required: true, message: "必填", trigger: "change" }],
dcCustomsStatus: [{ required: true, message: "必填", trigger: "change" }],
},
// 弹窗配置
dialogConfig: {
......
......@@ -268,23 +268,24 @@
</el-form-item>
</el-form>
</el-row>
<el-row>
<el-button type="primary" @click="onSubmit">提交申请</el-button>
</el-row>
</el-row>
<!-- 审核流程 -->
<el-row class="process-area" v-show="isAudit">
<el-row class="process-area">
<div class="process">
<div>审批流程</div>
<work-flow xmlkey="shipment_preassemble" v-model="selectedUsers"></work-flow>
</div>
<div>
<div v-show="isAudit">
<el-button type="primary" :disabled=true>审核中</el-button>
<el-button plain type="primary" @click="canclAudit">取消审核</el-button>
<el-button plain type="primary" @click="closeDialog">返回</el-button>
</div>
<div v-show="!isAudit">
<el-button type="primary" @click="onSubmit">提交申请</el-button>
</div>
</el-row>
</div>
</template>
......@@ -447,9 +448,11 @@ export default {
if (valid) {
approvalCreate({
...this.operatorData,
shipmentId: this.$attrs.shipmentObj.id,
applyReason: "预装审核",
approvalStatus: 0,
approvalType: 1, // 预装
copyUserId: this.selectedUsers,
shipmentId: this.$attrs.shipmentObj.id,
}).then((res) => {
serviceMsg(res, this).then(() => {
this.$emit("closeDialog", "submit");
......@@ -599,9 +602,9 @@ export default {
const { currNode, shipmentObj } = this.$attrs;
const { voName } = currNode;
approvalCancel({
applyReason: "取消审核",
id: shipmentObj[voName].id,
shipmentId: shipmentObj.id,
applyReason: "取消审核",
}).then((res) => {
serviceMsg(res, this).then(() => {
this.$emit("closeDialog", "submit");
......
......@@ -24,7 +24,7 @@
<el-button size="small" @click="$emit('closeDialog')">关闭</el-button>
</el-row>
<warehouse-area-dialog ref="area" :visible.sync="visible" v-model="storageSpaces" :order-id="orderId" :modal-append-to-body=false append-to-body v-if="visible" />
<warehouse-area-dialog ref="area" :visible.sync="visible" v-model="storageSpaces" :order-id="orderId" :modal-append-to-body=false append-to-body />
</div>
</template>
......
......@@ -83,8 +83,9 @@ export default {
this.$emit("closeDialog", type);
},
/* 关闭弹窗 */
closeStart() {
closeStart(type) {
this.dialogVisible = false;
if (type) this.cancel(type);
},
// 开始卸柜
startUnloading() {
......
......@@ -26,7 +26,7 @@
<!-- 表格 -->
<el-row class="table-area">
<el-table v-loading="loading" :data="pageData.sectionOrderList" border>
<el-table v-loading="loading" :data="pageData.sectionOrderList" border max-height="500px">
<el-table-column label="序号" type="index" align="center" width="50" />
<el-table-column label="订单号" align="center" prop="orderNo">
<template slot-scope="scope">
......@@ -73,8 +73,22 @@
</div>
</el-row>
<el-row>
<el-button type="success" @click="onSubmit">卸柜完成</el-button>
<!-- 审核流程 -->
<el-row class="process-area">
<div class="process">
<div>审批流程</div>
<work-flow xmlkey="unload_container" v-model="selectedUsers"></work-flow>
</div>
<!-- 操作 -->
<div v-if="!isUnderReview">
<el-button type="success" @click="onSubmit">卸柜完成</el-button>
<el-button plain type="primary" @click="$emit('closeStart')">返回</el-button>
</div>
<div v-if="isUnderReview">
<el-button type="primary" :disabled=true>卸柜审核中</el-button>
<el-button plain type="primary" @click="canclAudit">取消审核</el-button>
<el-button plain type="primary" @click="$emit('closeStart')">返回</el-button>
</div>
</el-row>
<!-- 对话框 -->
......@@ -91,9 +105,11 @@ import {
batchUnload,
allUnload,
approvalCreate,
approvalCancel,
getSectionList,
} from "@/api/ecw/boxSea";
import { serviceMsg, getTotlContent } from "../../utils";
import WorkFlow from "@/components/WorkFlow";
/**
* 开始卸柜
......@@ -101,7 +117,7 @@ import { serviceMsg, getTotlContent } from "../../utils";
export default {
name: "startUnloading",
inheritAttrs: false,
components: { unloadingError },
components: { unloadingError, WorkFlow },
data() {
return {
// 标签号
......@@ -128,6 +144,7 @@ export default {
sectionOrderList: [],
totalStatistics: {},
},
selectedUsers: [],
};
},
created() {
......@@ -168,6 +185,7 @@ export default {
shipmentId: this.$attrs.shipmentObj.id,
}).then((res) => {
serviceMsg(res, this).then((res) => {
this.labelNo = "";
this.getLoadGoodsList();
});
});
......@@ -192,6 +210,7 @@ export default {
shipmentId: this.$attrs.shipmentObj.id,
approvalStatus: 0,
approvalType: 3, // 卸柜
copyUserId: this.selectedUsers,
}).then((res) => {
serviceMsg(res, this).then(() => {
this.cancel();
......@@ -200,7 +219,7 @@ export default {
},
/** 取消 */
cancel() {
this.$emit("closeStart");
this.$emit("closeStart", "submit");
},
/* 关闭弹窗 */
closeDialog(type) {
......@@ -229,8 +248,26 @@ export default {
sectionChange() {
this.getLoadGoodsList();
},
/* 取消审核 */
canclAudit() {
const { shipmentObj } = this.$attrs;
approvalCancel({
applyReason: "取消审核",
id: shipmentObj['cabinetUnloadApprovalInfo'].id,
shipmentId: shipmentObj.id,
}).then((res) => {
serviceMsg(res, this).then(() => {
this.cancel();
});
});
},
},
computed: {
/* 是否审核中 */
isUnderReview() {
const { currNode, shipmentObj } = this.$attrs;
return shipmentObj[currNode.keyName] === 183 ? true : false;
},
// 部分信息
getSectionInfo() {
const { totalStatistics, secStatistics } = this.pageData;
......
......@@ -29,6 +29,7 @@ function getStatusName(statu) {
statusName.set(44, "封柜审核中");
statusName.set(45, "封柜审核失败");
statusName.set(46, "封柜审核成功");
statusName.set(47, "已封柜,待出仓");
statusName.set(51, "未报关");
statusName.set(52, "报关中");
......@@ -186,14 +187,14 @@ function seaBaseData() {
type: "cabinet",
dataKey: "4", // 字典数据键值
/**
* 装柜状态:41、未装柜;42、装柜中;43、已装柜、待封柜;44、封柜审核中;45、封柜审核失败;46、封柜审核成功
* 装柜状态:41、未装柜;42、装柜中;43、已装柜、待封柜;44、封柜审核中;45、封柜审核失败;46、封柜审核成功;47、已封柜,待出仓
*/
voName: "cabinetInfo",
keyName: "ldStatus",
status: {
start: [41],
wait: [42, 43, 44, 45],
end: [46],
wait: [42, 43, 44, 45, 46],
end: [47],
},
},
],
......
......@@ -159,7 +159,23 @@
</el-tab-pane>
<el-tab-pane label="品牌授权">
<el-table border style="width:100%" :data="brandAuthorizationList">
<el-table-column type="index" prop="序号"></el-table-column>
<el-table-column label="中文标题" prop="titleZh" ></el-table-column>
<el-table-column prop="titleEn" label="英文标题"></el-table-column>
<el-table-column label="有无备案">
<template v-slot="{row}">
<dict-tag :type="DICT_TYPE.BRAND_REG_TYPE" :value="row.filing" />
</template>
</el-table-column>
<el-table-column label="创建时间">
<template v-slot="{row}">
{{parseTime(row.createTime)}}
</template>
</el-table-column>
</el-table>
<pagination v-show="brandAuthorizationTotal > 0" :total="brandAuthorizationTotal" :page.sync="brandAuthorizationFrom.pageNo" :limit.sync="brandAuthorizationFrom.pageSize"
@pagination="getBrankByCustomerList"/>
</el-tab-pane>
<el-tab-pane label="信用日志">
......@@ -175,7 +191,7 @@
</template>
<script>
import { getCustomer, getCustomerSelect } from '@/api/ecw/customer'
import { getCustomer, getCustomerSelect,getBrankByCustomer } from '@/api/ecw/customer'
import { DICT_TYPE, getDictDataLabel } from '@/utils/dict'
import { getProductTypeList } from '@/api/ecw/productType'
import { getNodeList } from '@/api/ecw/node'
......@@ -215,6 +231,7 @@ export default {
listServiceUser().then(r => {
this.serviceUserList = r.data
})
this.getBrankByCustomerList()
},
data() {
return {
......@@ -263,6 +280,12 @@ export default {
weightUnit: undefined,
createTime: undefined
},
brandAuthorizationFrom:{
pageNo:1,
pageSize:10,
},
brandAuthorizationList:[],
brandAuthorizationTotal:0,
}
},
computed: {
......@@ -283,6 +306,11 @@ export default {
id() {
return this.customerId ? parseInt(this.customerId) : undefined
}
},
methods:{
getBrankByCustomerList(){
getBrankByCustomer({...this.brandAuthorizationFrom,customerId:this.id}).then(r => {this.brandAuthorizationList = r.data.list; this.brandAuthorizationTotal = r.data.total})
}
}
}
</script>
......
......@@ -78,9 +78,7 @@
</template>
</el-table-column>
<el-table-column label="唛头" align="center" prop="marks" />
<el-table-column label="箱数" align="center" prop="sumNum">
<template slot-scope="{row}">{{row.totalNum}}</template>
</el-table-column>
<el-table-column label="箱数" align="center" prop="sumNum" />
<el-table-column label="已放箱数" align="center" prop="sumWeight">
<template slot-scope="{row}">{{row.releaseNum}}</template>
</el-table-column>
......@@ -105,15 +103,29 @@
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="150px">
<template slot-scope="scope">
<el-button type="text" size="mini" @click="showReleaseOrderId=scope.row.orderId">放货</el-button>
<!--控货中,已入仓-->
<template v-if="[0,2].indexOf(scope.row.cargoControlStatus) > -1 && scope.row.sumNum > 0">
<el-button type="text" size="mini" @click="showReleaseOrderId=scope.row.orderId">放货</el-button>
<el-button type="text" size="mini" @click="showTransferOrder = scope.row" >控货权转移</el-button>
</template>
<!--部分控货-->
<template v-if="scope.row.cargoControlStatus == 2">
<el-button type="text" size="mini" @click="toDetail(scope.row)" >修改</el-button>
<el-button type="text" size="mini" @click="toDetail(scope.row)" >取消</el-button>
<el-button type="text" size="mini" @click="review(scope.row)" >放货复核</el-button>
</template>
<!--已完成放货-->
<template v-if="scope.row.cargoControlStatus == 1">
<el-button type="text" size="mini" @click="toDetail(scope.row)" >查看</el-button>
<el-button type="text" size="mini" @click="showTransferCargoOrderId=scope.row.orderId" >调货</el-button>
<el-button type="text" size="mini" @click="$alert('//TODO')">反复核</el-button>
</template>
<!-- <el-button type="text" size="mini" >取消</el-button>
<el-button type="text" size="mini" @click="$router.push('cargo_control/detail?id=' + scope.row.orderId)" >查看</el-button> -->
<el-button type="text" size="mini" @click="showEditOrderId=scope.row.orderId" >修改</el-button>
<el-button type="text" size="mini" >取消</el-button>
<el-button type="text" size="mini" @click="review(scope.row)" >放货复核</el-button>
<el-button type="text" size="mini" @click="$router.push('cargo_control/detail?id=' + scope.row.orderId)" >查看</el-button>
<el-button type="text" size="mini" @click="showTransferCargoOrderId=scope.row.orderId" >调货</el-button>
<el-button type="text" size="mini" >反复核</el-button>
<el-button type="text" size="mini" @click="showTransferOrder = scope.row" >控货权转移</el-button>
</template>
</el-table-column>
</el-table>
......@@ -122,8 +134,7 @@
@pagination="getList" />
<transfer v-if="showTransferOrder" v-bind="showTransferOrder" @close="showTransferOrder=null" />
<release v-if="showReleaseOrderId" :order-id="showReleaseOrderId" @close="showReleaseOrderId=null" />
<release v-if="showEditOrderId" :order-id="showEditOrderId" @close="showEditOrderId=null" />
<release v-if="showReleaseOrderId" :order-id="showReleaseOrderId" @close="showReleaseOrderId=null" @success="onReleaseSuccess" />
<transfer-cargo v-if="showTransferCargoOrderId" :order-id="showTransferCargoOrderId" @close="showTransferCargoOrderId=null" />
</div>
</template>
......@@ -179,7 +190,6 @@ export default {
dateFilter: [], //筛选日期
showTransferOrder: null, // 控制权转移操作订单
showReleaseOrderId: null, // 放货ID
showEditOrderId: null, // 修改ID
showTransferCargoOrderId: null, // 调货ID
};
},
......@@ -245,12 +255,27 @@ export default {
this.single = selection.length !== 1
this.multiple = !selection.length
},
toDetail(row){
this.$router.push('cargo_control/detail?id=' + row.orderId)
},
// 复核
review(row){
// 未放货完成则打开详情,已完成放货则弹窗
if(row.releaseNum < row.sumNum){
return this.toDetail(row)
}
this.$confirm('已核实放货信息,确认放货?')
.then(res => {
this.$alert('// TODO ')
return orderReview(row.orderId)
})
.then(res => {
this.$message.success('操作成功')
this.handleQuery()
})
},
onReleaseSuccess(){
this.showReleaseOrderId = null
this.handleQuery()
}
}
};
......
......@@ -4,80 +4,76 @@
<el-form ref="elForm" :model="formData" :rules="rules" size="small" label-width="100px" >
<el-row>
<el-col :span="6">
<el-form-item label="订单号" prop="field101">
<el-form-item label="订单号">
{{detail.orderNo}}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="总控货数" prop="field104">
<el-form-item label="总控货数">
{{detail.sumNum}}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="体积" prop="field103">
<el-form-item label="体积">
{{detail.sumVolume}}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="重量" prop="field102">
<el-form-item label="重量">
{{detail.sumWeight}} kg
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="可放货箱数" prop="field105">
{{detail.sumNum - detail.pickNum}}
<el-form-item label="可放货箱数">
{{detail.sumNum - detail.releaseNum}}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="已放货箱数" prop="field106">
{{detail.pickNum}}
<el-form-item label="已放货箱数">
{{detail.releaseNum}}
</el-form-item>
</el-col>
</el-row>
</el-form>
<div class="page-title">放货详情</div>
<el-table :data="[1]" border>
<el-table :data="detail.cargoControlPickBackVOList || []" border>
<el-table-column label="序号" width="50px">
</el-table-column>
<el-table-column label="收货人">
1
</el-table-column>
<el-table-column label="控货箱数">
1
</el-table-column>
<el-table-column label="放货箱数">
1
</el-table-column>
<el-table-column label="体积(m³)">
1
</el-table-column>
<el-table-column label="提单号">
1
</el-table-column>
<el-table-column label="备注">
1
</el-table-column>
<el-table-column label="操作人">
1
</el-table-column>
<el-table-column label="日期">
1
<template slot-scope="scope">{{scope.$index + 1}}</template>
</el-table-column>
<el-table-column label="收货人" prop="consigneeName" />
<el-table-column label="收货人电话" prop="consigneePhone" />
<el-table-column label="控货箱数" prop="controlNum"></el-table-column>
<el-table-column label="放货箱数" prop="pickNum"></el-table-column>
<el-table-column label="体积(m³)" prop="pickVolume"></el-table-column>
<el-table-column label="提单号" prop="tidanNo"></el-table-column>
<el-table-column label="备注" prop="remarks"></el-table-column>
<el-table-column label="操作人" prop="name"></el-table-column>
<el-table-column label="日期" prop="createTime">
<template slot-scope="{row}">
{{row.createTime|parseTime}}
</template>
</el-table-column>
<el-table-column label="状态">
1
<el-table-column label="状态" prop="status">
<template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_RELEASE_STATUS" :value="row.status" />
</template>
</el-table-column>
<el-table-column label="操作" width="300px">
<template slot-scope="{row}">
<el-button type="primary" size="mini" @click="showEdit=true">修改</el-button>
<el-button type="danger" size="mini">取消</el-button>
<el-button type="success" size="mini" @click="review">放货复核</el-button>
<template slot-scope="scope">
<el-button v-if="scope.row.status == 1" type="primary" size="mini" @click="editIndex=scope.$index">修改</el-button>
<el-button v-if="scope.row.status == 1" type="danger" size="mini" @click="cancel(scope.row.id)">取消</el-button>
<el-button v-if="scope.row.status == 1" type="success" size="mini" @click="review(scope.row.id)">放货复核</el-button>
<el-button v-if="scope.row.status == 3" type="danger" size="mini" @click="fallbackIndex=scope.$index">反复核</el-button>
<el-button v-if="scope.row.status == 3" type="success" size="mini" @click="$alert('// TODO')">调货</el-button>
<el-button v-if="[2,4].indexOf(scope.row.status) > -1" type="primary" size="mini" @click="showApprovalDetail(scope.row.id)">审核详情</el-button>
<el-button v-if="[2,4].indexOf(scope.row.status) > -1" type="danger" size="mini" @click="cancelApproval(scope.row.id)">取消审核</el-button>
</template>
</el-table-column>
</el-table>
<div class="page-title">历史放货记录</div>
<!-- <div class="page-title">历史放货记录</div>
<el-table :data="[1]" border>
<el-table-column label="序号" width="50px">
......@@ -106,33 +102,96 @@
<el-table-column label="备注">
<el-input v-model="formData.field110" placeholder="请输入收货人邮箱" clearable></el-input>
</el-table-column>
</el-table>
<edit v-if="showEdit" @close="showEdit=false" />
</el-table> -->
<fallback v-if="fallbackIndex !== null" :order="detail" :index="fallbackIndex" @close="fallbackIndex=null" @success="onFallbackSuccess" />
<edit v-if="editIndex !== null" @close="editIndex=null" :order="detail" :index="editIndex" @success="onEditSuccess" />
</div>
</template>
<script>
import edit from './components/CargoControlEdit.vue'
import {createPick, getRleaseInfo} from '@/api/ecw/orderCargoControl'
import {createPick, getPickRleaseInfo, review, cancel, cancelApproval} from '@/api/ecw/orderCargoControl'
import {parseTime} from '@/utils/ruoyi'
import Fallback from './components/Fallback'
export default {
components: {edit},
filters: {parseTime},
components: {edit, Fallback},
data(){
return {
showEdit: false,
detail: null,
formData:{},
rules: {}
rules: {},
editIndex: null, // 修改索引
fallbackIndex: null, // 反复核索引
}
},
created(){
getRleaseInfo(this.$route.query.id).then(res => this.detail = res.data)
this.loadData()
},
methods:{
review(){
loadData(){
console.log('loadData')
getPickRleaseInfo(this.$route.query.id).then(res => this.detail = res.data)
},
review(id){
this.$confirm('已核实放货信息,确认放货?')
.then(res => {
this.$alert('// TODO ')
return review(id)
})
.then(res => {
this.$message.success('操作成功')
this.loadData()
})
},
unReview(){
},
cancel(id){
this.$confirm('确定取消这条放货么?')
.then(res => {
return cancel(id)
})
.then(res => {
this.$message.success('操作成功')
this.loadData()
})
},
onEditSuccess(){
console.log('onEditSuccess')
this.loadData()
this.editIndex = null
},
onFallbackSuccess(){
this.fallbackIndex = null
this.loadData()
},
// 查看审核详情
showApprovalDetail(id){
this.$router.push('/bpm/process-instance/detail?id=' + this.getApproval(id, 'formId'))
},
// 取消审核
cancelApproval(id){
this.$confirm('确定取消此申请么?')
.then(res => {
let approvalId = this.getApproval(id)
return cancelApproval(approvalId, {reason: ''})
})
.then(res => {
this.$message.success('操作成功')
this.loadData()
})
},
// 根据id查找审核id
getApproval(id, field = 'orderApprovalId'){
if(!this.detail.orderApprovalBackVOList || !this.detail.orderApprovalBackVOList.length){
this.$message.error('未找到审批ID')
Promise.reject('未找到审批ID')
}
let item = this.detail.orderApprovalBackVOList.find(item => {
let details = JSON.parse(item.details)
return details.cargoControlPickId == id && details.applyStatus == 1
})
console.log({item})
return item[field]
}
}
}
......
......@@ -2,53 +2,52 @@
<el-dialog :title="title" visible :before-close="closeDialog" :close-on-click-modal="false">
<el-form v-if="agreement" ref="elForm" :model="formData" size="small" label-width="100px" >
<el-form-item label="订单号" prop="field101">
111
{{order.orderNo}}
</el-form-item>
<el-row>
<el-col :span="12">
<el-form-item label="收货人" prop="field104">
111
{{info.consigneeName}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收货人电话" prop="field103">
111
{{info.consigneePhone}}
</el-form-item>
</el-col>
</el-row>
<el-form-item label="总控货箱数" prop="field105">
111
{{order.sumNum}}
</el-form-item>
<el-form-item label="原放货箱数" prop="field106">
111
{{info.pickNum}}
</el-form-item>
<el-form-item label="现放货箱数" prop="field106">
<el-input v-model="formData.cnt" placeholder=""></el-input>
<el-input v-model="formData.currentPickNum" placeholder=""></el-input>
</el-form-item>
<el-form-item label="备注" prop="field106">
<el-input v-model="formData.cnt" placeholder=""></el-input>
<el-input v-model="formData.remarks" placeholder=""></el-input>
</el-form-item>
<el-form-item label="控货手机号" prop="field106">
13000000000
{{info.phone}}
</el-form-item>
<el-form-item label="手机验证码" prop="field106">
<el-input v-model="formData.cnt" placeholder="" style="width: 100px; margin-right:10px"></el-input>
<el-button type="default">获取验证码</el-button>
<el-input v-model="formData.code" placeholder="" style="width: 100px; margin-right:10px"></el-input>
<send-sms-code :order-id="order.orderId" :scene="5" />
</el-form-item>
<div class="title">审批流程</div>
<work-flow bmpkey="free_apple" />
<work-flow xmlkey="release_goods" v-model="ccIdArr" />
<el-form-item label="">
<el-button type="primary" @click="$alert('// TODO')">提交申请</el-button>
<el-button type="primary" @click="submit">提交申请</el-button>
<el-button @click="closeDialog">关闭</el-button>
</el-form-item>
</el-form>
<div v-else>
<need-know keyname="control" />
<div style="margin-top:30px">
......@@ -61,16 +60,23 @@
<script>
import WorkFlow from '@/components/WorkFlow'
import NeedKnow from '@/components/NeedKnow'
import SendSmsCode from '@/views/ecw/order/components/SendSmsCode'
import {updateApply} from '@/api/ecw/orderCargoControl'
export default {
props:{
orderId: [String, Number]
orderId: [String, Number],
order: Object,
index: Number
},
components: {NeedKnow, WorkFlow},
components: {NeedKnow, WorkFlow, SendSmsCode},
data(){
return {
show: false,
detail: null,
formData:{},
ccIdArr:[],
formData:{
applyType: 7, // 放货修改
ccIds: ''
},
agreement: false, // 是否同意协议
}
},
......@@ -78,20 +84,41 @@ export default {
title(){
let t = '放货修改'
return t
},
info(){
return this.order.cargoControlPickBackVOList[this.index]
}
},
watch:{
ccIdArr(val){
this.$set(this.formData, 'ccIds', val.join(','))
}
},
created(){
this.show = true
this.loadData()
/* this.loadData() */
},
methods:{
loadData(){
/* loadData(){
},
}, */
closeDialog(){
this.show = false
this.$emit('close');
},
submit(){
let data = Object.assign({}, this.formData, {
cargoControlPickId: this.info.id,
orderId: this.order.orderId,
orderNo: this.order.orderNo
})
updateApply(data).then(res => {
this.$message.success('修改成功')
this.show = false
this.$emit('success')
})
}
}
}
......
<template>
<el-dialog :title="title" visible :before-close="closeDialog" :close-on-click-modal="false">
<el-form ref="form" :model="formData" :rules="rules" size="small" label-width="100px" >
<el-form-item label="订单号">
{{order.orderNo}}
</el-form-item>
<el-row>
<el-col :span="12">
<el-form-item label="收货人">
{{info.consigneeName}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收货人电话">
+{{info.consigneeCountryCode}} {{info.consigneePhone}}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="总控货箱数">
{{order.sumNum}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="原放货箱数">
{{info.pickNum}}
</el-form-item>
</el-col>
</el-row>
<el-form-item label="反复核原因" prop="recurrentNuclearType">
<dict-selector :type="DICT_TYPE.ECW_PICK_RECURRENT_NUCLEAR_TYPE" v-model="formData.recurrentNuclearType" form-type="radio" />
</el-form-item>
<el-form-item label="控货手机号">
+{{info.countryCode}} {{info.phone}}
</el-form-item>
<el-form-item label="手机验证码" prop="code">
<el-input v-model="formData.code" placeholder="" style="width: 100px; margin-right:10px"></el-input>
<send-sms-code :order-id="order.orderId" :scene="5" />
</el-form-item>
<div class="title">审批流程</div>
<work-flow xmlkey="release_goods" v-model="ccIdArr" />
<el-form-item label="">
<el-button type="primary" @click="submit">提交申请</el-button>
<el-button @click="closeDialog">关闭</el-button>
</el-form-item>
</el-form>
</el-dialog>
</template>
<script>
import WorkFlow from '@/components/WorkFlow'
import SendSmsCode from '@/views/ecw/order/components/SendSmsCode'
import {updateApply} from '@/api/ecw/orderCargoControl'
export default {
props:{
order: Object,
index: Number
},
components: {WorkFlow, SendSmsCode},
data(){
return {
show: false,
ccIdArr:[],
formData:{
applyType: 8, // 放货反复核申请
ccIds: ''
},
rules:{
recurrentNuclearType: [{required: true, message: '请选择反复核原因'}],
code: [{required: true, message: '请填写验证码'}]
}
}
},
computed:{
title(){
let t = '反复核'
return t
},
info(){
return this.order.cargoControlPickBackVOList[this.index]
}
},
watch:{
ccIdArr(val){
this.$set(this.formData, 'ccIds', val.join(','))
}
},
created(){
this.show = true
/* this.loadData() */
},
methods:{
/* loadData(){
}, */
closeDialog(){
this.show = false
this.$emit('close');
},
submit(){
this.$refs.form.validate().then(res => {
let data = Object.assign({}, this.formData, {
cargoControlPickId: this.info.id,
orderId: this.order.orderId,
orderNo: this.order.orderNo
})
updateApply(data).then(res => {
this.$message.success('修改成功')
this.show = false
this.$emit('success');
})
})
}
}
}
</script>
<style lang="scss" scoped>
.title{
font-size:16px;
margin:20px 0;
display:flex;
align-items:center;
&:before{
content: '';
width:5px;
height: 15px;
background:#666;
margin-right:10px;
}
}
</style>
<!--拆单审核中的申请信息部分-->
<template>
<div v-if="detail">
<el-table :data="detail.unMergeList.list">
<el-table-column label="订单编号">
<template slot-scope="scope">{{scope.row.orderNo}}</template>
</el-table-column>
<el-table-column label="唛头">
<template slot-scope="{row}">{{row.marks}}</template>
</el-table-column>
<el-table-column label="已到箱数/总箱数">
<template slot-scope="{row}">// TODO/{{row.sumNum}}</template>
</el-table-column>
<el-table-column label="下单统计">
<template slot-scope="{row}">
22箱 44m³ 50kg
</template>
</el-table-column>
<el-table-column label="入仓你统计">
<template slot-scope="{row}">总箱数:1 总体积:m³ 总重量 110kg</template>
</el-table-column>
<el-table-column label="入仓时间">
<template slot-scope="{row}">
// TODO
</template>
</el-table-column>
<el-table-column label="运输方式">
<template slot-scope="{row}">{{row.num}}</template>
</el-table-column>
<el-table-column label="出货渠道">
<template slot-scope="{row}">{{row.num}}</template>
</el-table-column>
<el-table-column label="始发仓">
<template slot-scope="{row}">{{row.num}}</template>
</el-table-column>
<el-table-column label="目的仓">
<template slot-scope="{row}">{{row.num}}</template>
</el-table-column>
<el-table-column label="发货人">
<template slot-scope="{row}">{{row.num}}</template>
</el-table-column>
<el-table-column label="收货人">
<template slot-scope="{row}">{{row.num}}</template>
</el-table-column>
</el-table>
</div>
</template>
<script>
import {getApproval, getOrder} from '@/api/ecw/order'
import {getMergeListByMergeId} from '@/api/ecw/orderHandle'
import {getChannel} from '@/api/ecw/channel'
export default {
name: 'MergeDetail',
props:{
id: [String, Number]
},
data(){
return {
detail: null,
order: null,
channel: null
}
},
watch:{
id(){
this.getData()
},
/* detail(){
this.getOrder()
}, */
/* order(){
if(this.order.channelId){
this.getChannel()
}
} */
},
created(){
if(this.id){
this.getData()
}
},
methods:{
getData(){
getMergeListByMergeId({id: this.id}).then(res => {
this.detail = res.data
})
},
/* getOrder(){
getOrder(this.detail.orderId).then(res => {
this.order = res.data
})
},
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
......@@ -156,7 +156,8 @@ export default {
console.log('submit')
createPick(Object.assign({orderId: this.orderId}, this.formData)).then(res => {
this.$message.success(res.msg || '操作成功')
this.closeDialog()
this.show = false
this.$emit('success')
})
})
......
......@@ -486,7 +486,7 @@ export default {
},
// 表单校验
rules: {
marks: [{required: true, message: '请填写唛头'}]
},
labelStyle: 'width:120px',
showBatchImportDialog: false, // 显示批量导入弹窗
......
......@@ -173,7 +173,7 @@
<el-button type="text" size="mini" @click="orderId = scope.row.orderId;isShow = true" >特需</el-button>
<el-button type="text" size="mini" @click="$router.push(`/order/associated-order/${scope.row.orderId}`)" >关联</el-button>
<el-button type="text" size="mini" @click="$router.push(`/order/mutex-order/${scope.row.orderId}`)" >互斥</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="$router.push('/order/special?id=' + scope.row.orderId)"
<el-button size="mini" type="text" icon="el-icon-edit" @click="$router.push('/order/special/' + scope.row.orderId)"
v-hasPermi="['ecw:order:update']">特价</el-button>
<el-button type="text" size="mini" @click="$router.push(`/order/release?orderId=${scope.row.orderId}`)">确认放货</el-button>
......
This diff is collapsed.
......@@ -3,11 +3,11 @@
<el-card>
<div slot="header" class="card-title">申请特价</div>
<!-- 列表 -->
<div class="offer-header">
<span style="font-size: 15px;">订单号:{{ offer.number }}</span>
<div class="order-header">
<span style="font-size: 15px;">订单号:{{ order.number }}</span>
</div>
<el-table v-loading="loading" :data="offer.offerProdRespVOList">
<el-table v-loading="loading" :data="order.orderItemVOList">
<el-table-column label="序号" align="center" prop="id" type="index"></el-table-column>
<el-table-column
prop="prodTitleZh"
......@@ -20,17 +20,22 @@
prop="prodAttrIds"
label="填单货物属性">
<template v-slot="{row}">
{{ getProductNamesByIds(row.prodAttrIds) }}
品牌:{{ ['无牌', '有牌', '中性'][row.brandType] }}<br>
箱数:{{ row.num }}<br>
体积:{{ row.volume }}<br>
重量:{{ row.weight }}Kg
</template>
</el-table-column>
<el-table-column
prop="address"
label="入库货物属性">
<template v-slot="{row}">
品牌:{{ row.brand ? '' : '' }}<br>
箱数:{{ row.num }}<br>
体积:{{ row.volume }}<br>
重量:{{ row.weight }}Kg
<template v-if="row.warehouseInInfoVO">
品牌:{{ ['无牌', '有牌', '中性'][row.brandType] }}<br>
箱数:{{ row.warehouseInInfoVO.cartonsNum }}<br>
体积:{{ row.warehouseInInfoVO.volume }}<br>
重量:{{ row.warehouseInInfoVO.weight }}Kg
</template>
</template>
</el-table-column>
<el-table-column
......@@ -64,18 +69,18 @@
清关费:{{ row.clearanceFreight }} {{ currentMap[row.clearanceFreightCurrency] }}/{{ unitMap[row.clearanceFreightVolume] }}
</template>
</el-table-column>
<el-table-column
prop="status"
:formatter="(v) => ['取消报价', '特价审批中', '需求确认(草稿)', '跟进中', '赢单', '输单', '报价完成', '审批通过', '审批拒绝'][v.status]"
label="审核状态">
</el-table-column>
<!-- <el-table-column-->
<!-- prop="status"-->
<!-- :formatter="(v) => ['取消报价', '特价审批中', '需求确认(草稿)', '跟进中', '赢单', '输单', '报价完成', '审批通过', '审批拒绝'][v.status]"-->
<!-- label="审核状态">-->
<!-- </el-table-column>-->
<el-table-column
prop="address"
label="操作">
<template v-slot="{row}">
<el-button size="mini" type="text" v-hasPermi="['ecw:offer:update']" @click="$router.push(`/offer/discount/${row.offerProdId}?offerId=${row.offerId}`)">优惠申请</el-button>
<!-- <el-button size="mini" type="text" v-hasPermi="['ecw:offer:update']">佣金规则</el-button>-->
<!-- <el-button size="mini" type="text" v-hasPermi="['ecw:offer:update']">管理折扣</el-button>-->
<el-button size="mini" type="text" v-hasPermi="['ecw:order:update']" @click="$router.push(`/order/discount/${row.prodId}?orderId=${row.orderId}`)">优惠申请</el-button>
<el-button size="mini" type="text" v-hasPermi="['ecw:order:update']">佣金规则</el-button>
<el-button size="mini" type="text" v-hasPermi="['ecw:order:update']">管理折扣</el-button>
</template>
</el-table-column>
......@@ -102,7 +107,7 @@ export default {
components: {
},
props: {
offerId: String
orderId: [String, Number]
},
data() {
return {
......@@ -116,14 +121,14 @@ export default {
params:{
page:1,
rows:20,
offerId:0,
orderId:0,
type:2
},
relationId:0,
creatorName:'test',
offer: {
order: {
number: '',
offerProdRespVOList: []
orderItemVOList: []
},
unitList:[],
currencyList:[],
......@@ -131,8 +136,8 @@ export default {
};
},
created() {
if(this.offerId){
this.params.offerId = this.offerId
if(this.orderId){
this.params.orderId = this.orderId
this.getOrder()
}
getUnitList().then(res => this.unitList = res.data)
......@@ -142,9 +147,9 @@ export default {
methods: {
getOrder(){
this.loading = true
getOrder(this.offerId).then(response => {
getOrder(this.orderId).then(response => {
this.loading = false
this.offer = response.data
this.order = response.data
})
},
getProductNamesByIds(ids){
......@@ -183,7 +188,7 @@ export default {
font-size: 18px;
font-weight: bold;
}
.offer-header{
.order-header{
padding-bottom: 16px;
display: flex;
align-items: center;
......
......@@ -118,7 +118,7 @@
<div>
<el-button v-if="type == 1" @click="submit">确认出仓</el-button>
<el-button v-else @click="submit2">确认到仓</el-button>
<el-button @click="$router.back()">返回</el-button>
<el-button @click="$tab.closeOpenPage({path:'/order/order'})">返回</el-button>
</div>
</div>
</template>
......
......@@ -88,7 +88,7 @@
<el-table-column label="商品编码" align="center" prop="productCode" >
<template slot-scope="{row}">
<el-link type="primary" @click.native="handleUpdate(scope.row)">
<el-link type="primary" @click.native="handleUpdate(row)">
{{ row.productDO ? row.productDO.productCode : '无productDO字段' }}
</el-link>
</template>
......@@ -110,7 +110,7 @@
<el-table-column label="商品名称" align="center" prop="productName">
<template slot-scope="{row}">
<el-link type="primary" @click.native="handleUpdate(scope.row)">
<el-link type="primary" @click.native="handleUpdate(row)">
{{ row.productDO ? row.productDO.titleZh + '/' + row.productDO.titleEn : '无productDO字段' }}
</el-link>
</template>
......
......@@ -54,7 +54,7 @@
<template slot-scope="scope">
<div v-if="!scope.row.identityAuditStatus">未提交</div>
<dict-tag v-else :type="DICT_TYPE.AUDIT_STATUS" :value="scope.row.identityAuditStatus" ></dict-tag>
<el-tooltip v-if="scope.row.identityAuditStatus === 3" class="item" effect="dark" :content="scope.identityAuditRemark" placement="bottom">
<el-tooltip v-if="scope.row.identityAuditStatus === 3" class="item" effect="dark" :content="scope.row.identityAuditRemark" placement="bottom">
<i class="el-icon-question"></i>
</el-tooltip>
</template>
......@@ -63,7 +63,7 @@
<template slot-scope="scope">
<div v-if="!scope.row.enterpriseAuditStatus">未提交</div>
<dict-tag v-else :type="DICT_TYPE.AUDIT_STATUS" :value="scope.row.enterpriseAuditStatus" ></dict-tag>
<el-tooltip v-if="scope.row.enterpriseAuditStatus === 3" class="item" effect="dark" :content="scope.rowenterpriseAuditRemark" placement="bottom">
<el-tooltip v-if="scope.row.enterpriseAuditStatus === 3" class="item" effect="dark" :content="scope.row.rowenterpriseAuditRemark" placement="bottom">
<i class="el-icon-question"></i>
</el-tooltip>
</template>
......@@ -409,7 +409,7 @@ export default {
},//清空企业
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.queryParams.page = 1;
this.getList();
},
/** 重置按钮操作 */
......@@ -645,10 +645,5 @@ export default {
.el-textarea{
width: 300px;
}
.el-button{
width: 180px;
height: 50px;
margin: 0 10px;
}
}
</style>
This diff is collapsed.
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