Commit 47899552 authored by dragondean@qq.com's avatar dragondean@qq.com
parents b4ad653c 9d6a84d2
......@@ -5,19 +5,29 @@
<el-row class="number-area">
<p class="label-font">自编号:</p>
<p class="label-font">{{selfNo}}</p>
<el-input v-model="labelNo" placeholder="请输入标签号"></el-input>
<el-input v-model="labelNo"
placeholder="请输入标签号"></el-input>
<div>
<el-button type="primary" @click="modifyBatchUnload">批量输入</el-button>
<el-button type="primary" @click="modifyAllUnload">一键卸柜</el-button>
<el-button type="primary"
@click="modifyBatchUnload">批量输入</el-button>
<el-button type="primary"
@click="modifyAllUnload">一键卸柜</el-button>
</div>
</el-row>
<!-- 当前部分 -->
<el-row class="number-area">
<p class="label-font">当前部分:</p>
<el-select placeholder="请选择" v-model="sectionId" @change="sectionChange">
<el-option key="0" label="全部" value="0"></el-option>
<el-option v-for="item in sectionList" :key="item.id" :label="item.title" :value="item.id"></el-option>
<el-select placeholder="请选择"
v-model="sectionId"
@change="sectionChange">
<el-option key="0"
label="全部"
value="0"></el-option>
<el-option v-for="item in sectionList"
:key="item.id"
:label="item.title"
:value="item.id"></el-option>
</el-select>
<p>
{{getSectionInfo}}
......@@ -26,32 +36,58 @@
<!-- 表格 -->
<el-row class="table-area">
<el-table v-loading="loading" :data="pageData.sectionOrderList" border>
<el-table-column label="序号" type="index" align="center" width="50" />
<el-table-column label="订单号" align="center" prop="orderNo">
<el-table v-loading="loading"
:data="pageData.sectionOrderList"
border>
<el-table-column label="序号"
type="index"
align="center"
width="50" />
<el-table-column label="订单号"
align="center"
prop="orderNo">
<template slot-scope="scope">
<a href="javascript:void(0);" class="order-href">{{ scope.row.orderNo }}</a>
<a href="javascript:void(0);"
class="order-href">{{ scope.row.orderNo }}</a>
</template>
</el-table-column>
<el-table-column label="商品信息" align="center" prop="goodsList">
<el-table-column label="商品信息"
align="center"
prop="goodsList">
<template slot-scope="scope">
<section class="table-goodList">
<div v-for="(item, index) in scope.row.goodsList" :key="index" class="goodList-div">
<div v-for="(item, index) in scope.row.goodsList"
:key="index"
class="goodList-div">
<p>{{index+1}}{{item.prodTitleZh}}</p>
</div>
</section>
</template>
</el-table-column>
<el-table-column label="实装箱数" align="center" prop="installNum" />
<el-table-column label="卸柜箱数" align="center" prop="unloadNum" />
<el-table-column label="清关状态" align="center" prop="">
<el-table-column label="实装箱数"
align="center"
prop="installNum" />
<el-table-column label="卸柜箱数"
align="center"
prop="unloadNum" />
<el-table-column label="清关状态"
align="center"
prop="">
<template slot-scope="scope">{{clearStatus(scope.row)}}</template>
</el-table-column>
<el-table-column label="体积" align="center" prop="volume" />
<el-table-column label="重量" align="center" prop="weight" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column label="体积"
align="center"
prop="volume" />
<el-table-column label="重量"
align="center"
prop="weight" />
<el-table-column label="操作"
align="center"
class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button type="danger" size="small" @click="openError(scope.row)">异常</el-button>
<el-button type="danger"
size="small"
@click="openError(scope.row)">异常</el-button>
</template>
</el-table-column>
</el-table>
......@@ -62,10 +98,7 @@
<div class="label-font">
<p>
<span>总计:</span>
<span>无返回</span>
<!-- <span>{{pageData.totalStatistics ? pageData.totalStatistics.num : 0}}箱</span>
<span>{{pageData.totalStatistics ? pageData.totalStatistics.volume : 0}}m3</span>
<span>{{pageData.totalStatistics ? pageData.totalStatistics.weight : 0}}kg</span> -->
<span>{{getTotlContent(pageData.totalStatistics)}}</span>
</p>
</div>
<div class="label-font">
......@@ -77,12 +110,21 @@
</el-row>
<el-row>
<el-button type="success" @click="onSubmit">卸柜完成</el-button>
<el-button type="success"
@click="onSubmit">卸柜完成</el-button>
</el-row>
<!-- 对话框 -->
<el-dialog custom-class="shipping-dialog" title="异常" :visible.sync="dialogVisible" width="600px" :modal-append-to-body=false append-to-body>
<unloadingError v-if="dialogVisible" @closeDialog="closeDialog" v-bind="$attrs" :currRow="currRow" />
<el-dialog custom-class="shipping-dialog"
title="异常"
:visible.sync="dialogVisible"
width="600px"
:modal-append-to-body=false
append-to-body>
<unloadingError v-if="dialogVisible"
@closeDialog="closeDialog"
v-bind="$attrs"
:currRow="currRow" />
</el-dialog>
</div>
</template>
......
......@@ -933,6 +933,33 @@ function getTotlContent(total, keys = ["num", "volume", "weight"]) {
return content.join(" ");
}
function getCapacity(capacity) {
return `${capacity?.name ?? ""}柜型 ${capacity?.volume ?? 0}m³ ${
capacity?.weight ?? 0
}kg`;
}
function sumStatistics(val) {
let count = { num: 0, volume: 0, weight: 0 };
if (Array.isArray(val)) {
val.forEach((item) => {
const { secStatistics } = item;
if (secStatistics) {
if (!Number.isNaN(Number(secStatistics.num))) {
count.num = count.num + Number(secStatistics.num);
}
if (!Number.isNaN(Number(secStatistics.volume))) {
count.volume = count.volume + Number(secStatistics.volume);
}
if (!Number.isNaN(Number(secStatistics.weight))) {
count.weight = count.weight + Number(secStatistics.weight);
}
}
});
}
return getTotlContent(count);
}
export const fileTypes = [
"doc",
"xls",
......@@ -976,5 +1003,7 @@ export {
formatNumberString,
formatDate,
getTotlContent,
getCapacity,
sumStatistics,
serviceMsg,
};
......@@ -144,9 +144,23 @@
<el-button v-if="orderData.status!=16" type="primary" @click="submitForm">提交申请</el-button>
<el-button v-if="orderData.status!=16" plain type="primary" @click="$router.back()">取消</el-button>
<el-button v-if="orderData.status==16" type="primary" disabled>审核中</el-button>
<el-button v-if="orderData.status==16" plain type="primary" @click="cancelMerge">取消审核</el-button>
<el-button v-if="orderData.status==16" plain type="primary" @click="dialogVisible = true">取消审核</el-button>
<el-button v-if="orderData.status==16" plain type="primary" @click="$router.back()">返回</el-button>
</div>
<el-dialog
title="提示"
:visible.sync="dialogVisible"
width="30%">
<span class="cancel_notice">合单申请正在审核中,你确定取消合单申请吗?</span>
<div class="cancel_content">
<span>取消原因:</span>
<el-input v-model="reason" placeholder="请输入取消原因"></el-input>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="cancelMerge">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
......@@ -180,7 +194,9 @@ export default {
},
selectedUsers:[],
total:0,
orderNos:''
orderNos:'',
reason:'',
dialogVisible:false
};
},
created() {
......@@ -227,14 +243,17 @@ export default {
},
cancelMerge(){
let that = this
if(!that.orderNos){
that.$message.error("请选择取消合单的订单");
// if(!that.orderNos){
// that.$message.error("请选择取消合单的订单");
// return
// }
if(!that.reason){
that.$message.error("请输入取消原因");
return
}
var params = {
id:that.orderData.orderId,
copyUserId:that.selectedUsers,
orderNos:that.orderNos,
reason:that.reason
}
cancelMerge(params).then(res=>{
that.$message.success("取消成功");
......@@ -273,4 +292,16 @@ export default {
.footer_btn{
padding-bottom: 60px;
}
.cancel_notice{
font-size: 16px;
font-weight: 600;
}
.cancel_content{
display: flex;
align-items: center;
padding-top: 20px;
}
.cancel_content span{
width: 100px;
}
</style>
......@@ -183,7 +183,7 @@
<el-button v-if="orderData.status!=19" type="primary" @click="submitForm">提交申请</el-button>
<el-button v-if="orderData.status!=19" plain type="primary" @click="$router.back()">取消</el-button>
<el-button v-if="orderData.status==19" type="primary" disabled>审核中</el-button>
<el-button v-if="orderData.status==19" plain type="primary" @click="cancelSplit">取消审核</el-button>
<el-button v-if="orderData.status==19" plain type="primary" @click="dialogVisible = true">取消审核</el-button>
<el-button v-if="orderData.status==19" plain type="primary" @click="$router.back()">返回</el-button>
</div>
<!-- 对话框(添加 / 修改) -->
......@@ -245,6 +245,21 @@
<el-button @click="shopCancel">取 消</el-button>
</div>
</el-dialog>
<el-dialog
title="提示"
:visible.sync="dialogVisible"
width="30%">
<span class="cancel_notice">拆单申请正在审核中,你确定取消拆单申请吗?</span>
<div class="cancel_content">
<span>取消原因:</span>
<el-input v-model="reason" placeholder="请输入取消原因"></el-input>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="cancelSplit">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
......@@ -265,6 +280,8 @@ export default {
data() {
return {
checked:false,
reason:'',
dialogVisible:false,
orderData:{},
splitData:[],
splitIndex:0,
......@@ -292,7 +309,7 @@ export default {
prodTitleEn: [{ required: true, message: "请选择英文品名", trigger: "change" }],
},
queryParams:{
orderId:176,
orderId:7,
lang:0
},
query:{
......@@ -503,13 +520,14 @@ export default {
},
cancelSplit(){
let that = this
that.$confirm('是否取消审核吗?').then(function () {
cancelApply({orderId:that.queryParams.orderId}).then(res=>{
if(!that.reason){
that.$message.error("请输入取消原因");
return
}
cancelApply({orderId:that.queryParams.orderId,reason:that.reason}).then(res=>{
that.$message.success("取消成功");
that.$router.back()
})
})
},
shopCancel(){
this.shopOpen = false
......@@ -554,4 +572,16 @@ export default {
.footer_btn{
padding-bottom: 60px;
}
.cancel_notice{
font-size: 16px;
font-weight: 600;
}
.cancel_content{
display: flex;
align-items: center;
padding-top: 20px;
}
.cancel_content span{
width: 100px;
}
</style>
......@@ -146,7 +146,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="岗位">
<el-select v-model="form.postIds" multiple placeholder="请选择">
<el-select @change="changList" v-model="form.postIds" multiple placeholder="请选择">
<el-option
v-for="item in postOptions"
:key="item.id"
......@@ -377,9 +377,7 @@ export default {
this.getConfigKey("sys.user.init-password").then(response => {
this.initPassword = response.msg;
});
userList('documentary customer service').then(r => {
this.followUpList = r.data;
})
},
methods: {
// 更多操作
......@@ -653,7 +651,21 @@ export default {
label: node.name,
children: node.children
}
},
changList(e){
let codes = this.postOptions.filter(i => {
if( e.indexOf(i.id) > -1) return i.code
}).map(v => v.code).join(',');
if(codes){
userList(codes).then(r => {
console.log(r,'r');
this.followUpList = r.data;
})
}else {
this.followUpList = [];
}
},
}
};
</script>
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