Commit 9d6a84d2 authored by huhaiqing's avatar huhaiqing

总计跟容量字段信息补全

parent 8f900fd0
......@@ -4,8 +4,12 @@
<el-row class="content-area">
<!-- 左侧 -->
<el-col :span="6" class="left-area">
<el-row v-for="item in listData" :key="item.id" class="title-info" :class="item.id === tableData.id ? 'selected' : ''">
<el-col :span="6"
class="left-area">
<el-row v-for="item in listData"
:key="item.id"
class="title-info"
:class="item.id === tableData.id ? 'selected' : ''">
<div @click="partClick(item)">
<p>{{item.title}}</p>
</div>
......@@ -18,38 +22,58 @@
</el-col>
<!-- 右侧 -->
<el-col :span="18" class="right-area">
<el-col :span="18"
class="right-area">
<!-- 操作 -->
<el-row class="table-title">
<div>当前装柜:{{tableData.title}}</div>
<div>
<template v-if="!isUnderReview">
<el-input v-model="qrCode" placeholder="请输入二维码/条码编号" clearable></el-input>
<el-button type="primary" @click="handlerBatchCreate('single')">确定</el-button>
<el-button type="primary" @click="handlerClick('batchInput','批量输入')">批量输入</el-button>
<el-button type="primary" @click="handlerClick('correction','装柜纠错')">装柜纠错</el-button>
<el-button type="primary" @click="handlerClick('correctionOrder','批量装柜纠错')">批量装柜纠错</el-button>
<el-input v-model="qrCode"
placeholder="请输入二维码/条码编号"
clearable></el-input>
<el-button type="primary"
@click="handlerBatchCreate('single')">确定</el-button>
<el-button type="primary"
@click="handlerClick('batchInput','批量输入')">批量输入</el-button>
<el-button type="primary"
@click="handlerClick('correction','装柜纠错')">装柜纠错</el-button>
<el-button type="primary"
@click="handlerClick('correctionOrder','批量装柜纠错')">批量装柜纠错</el-button>
</template>
</div>
</el-row>
<!-- 表格 -->
<el-row class="table-content">
<el-table :data="tableData.sectionOrderList" border>
<el-table-column label="序号" type="index" align="center" width="50" />
<el-table-column label="订单号" align="center" prop="orderNo">
<el-table :data="tableData.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" @click="orderClick(scope.row)">{{ scope.row.orderNo }}</a>
<a href="javascript:void(0);"
class="order-href"
@click="orderClick(scope.row)">{{ 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>品名:{{item.prodTitleZh}}</p>
<p>品牌:【
<dict-tag :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE" :value="item.productRecord" />
<dict-tag :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
:value="item.productRecord" />
</p>
<p>其他:{{getTotlContent(item)}}</p>
......@@ -57,29 +81,42 @@
</section>
</template>
</el-table-column>
<el-table-column label="计划箱数" align="center" prop="num">
<el-table-column label="计划箱数"
align="center"
prop="num">
<template slot-scope="scope">
{{getTotlContent(scope.row,['num'])}}
</template>
</el-table-column>
<el-table-column label="实装箱数" align="center" prop="installNum">
<el-table-column label="实装箱数"
align="center"
prop="installNum">
<template slot-scope="scope">
{{ scope.row.installNum }}
</template>
</el-table-column>
<el-table-column label="体积" align="center" prop="volume">
<el-table-column label="体积"
align="center"
prop="volume">
<template slot-scope="scope">
{{getTotlContent(scope.row,['volume'])}}
</template>
</el-table-column>
<el-table-column label="重量" align="center" prop="weight">
<el-table-column label="重量"
align="center"
prop="weight">
<template slot-scope="scope">
{{getTotlContent(scope.row,['weight'])}}
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column label="操作"
align="center"
class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button type="text" size="small" @click="moveOut(scope.row)" v-if="!isUnderReview && scope.row.installNum === 0">移出</el-button>
<el-button type="text"
size="small"
@click="moveOut(scope.row)"
v-if="!isUnderReview && scope.row.installNum === 0">移出</el-button>
<!-- <el-button type="text" size="small" v-if="isShowSplitOrder(scope.row)" @click="handlerSplitOrder(scope.row, 'splitOrder','拆单')">拆单</el-button> -->
</template>
</el-table-column>
......@@ -92,16 +129,14 @@
<!-- 统计 -->
<el-row>
<el-col :span="6" class="totle-info">
<el-col :span="6"
class="totle-info">
<div class="count-info">
<p>总计:
无返回
<!-- <span>{{sumData.count.num}}箱</span><span>{{sumData.count.volume}}m³</span><span>{{sumData.count.weight}}Kg</span> -->
</p>
<p>总计:{{getSumData}}</p>
</div>
<div>
<p>容量:</p>
<p>无返回</p>
<p>{{calcCapacity}}</p>
</div>
<div>已装 无返回 箱</div>
</el-col>
......@@ -109,84 +144,150 @@
<!-- 操作 -->
<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-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>
<!-- 对话框 -->
<el-dialog custom-class="shipping-dialog" :title="dialogConfig.title" :visible.sync="dialogConfig.dialogVisible" :fullscreen="dialogConfig.fullscreen" :width="dialogConfig.width" :modal-append-to-body=false append-to-body>
<el-dialog custom-class="shipping-dialog"
:title="dialogConfig.title"
:visible.sync="dialogConfig.dialogVisible"
:fullscreen="dialogConfig.fullscreen"
:width="dialogConfig.width"
:modal-append-to-body=false
append-to-body>
<!-- 已装未装订单 -->
<template v-if="dialogConfig.type === 'orderTable'">
<el-table :data="orderList" border>
<el-table-column label="已装" align="center" prop="loadTag" />
<el-table-column label="未装" align="center" prop="unloadTag" />
<el-table :data="orderList"
height="500px"
border>
<el-table-column label="已装"
align="center"
prop="loadTag" />
<el-table-column label="未装"
align="center"
prop="unloadTag" />
</el-table>
</template>
<!-- 补单 -->
<supplementOrder v-if="dialogConfig.type === 'supplementOrder' && dialogConfig.dialogVisible" v-bind="$attrs" :shipmentObj="shipmentObj" @supplementFinish="supplementFinish" />
<supplementOrder v-if="dialogConfig.type === 'supplementOrder' && dialogConfig.dialogVisible"
v-bind="$attrs"
:shipmentObj="shipmentObj"
@supplementFinish="supplementFinish" />
<!-- 修改柜信息 -->
<template v-if="dialogConfig.type === 'modifyCabinet' && dialogConfig.dialogVisible">
<el-form ref="modifyForm" :rules="rules" :model="modifyCabinetObj" label-width="80px">
<el-form-item label="起运仓库" prop="startWarehouseId">
<el-select v-model="modifyCabinetObj.startWarehouseId" placeholder="请选择仓库" filterable>
<el-option v-for="warehouse in $attrs.warehouseList" :key="warehouse.id" :label="warehouse.titleZh" :value="warehouse.id"></el-option>
<el-form ref="modifyForm"
:rules="rules"
:model="modifyCabinetObj"
label-width="80px">
<el-form-item label="起运仓库"
prop="startWarehouseId">
<el-select v-model="modifyCabinetObj.startWarehouseId"
placeholder="请选择仓库"
filterable>
<el-option v-for="warehouse in $attrs.warehouseList"
:key="warehouse.id"
:label="warehouse.titleZh"
:value="warehouse.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="预计时间">{{preinstallDate}}</el-form-item>
<el-form-item label="选择柜型" prop="cabinetId">
<el-select v-model="modifyCabinetObj.cabinetId" placeholder="请选择柜型">
<el-option v-for="item in cabinetList" :label="item.name" :value="item.id" :key="item.id"></el-option>
<el-form-item label="选择柜型"
prop="cabinetId">
<el-select v-model="modifyCabinetObj.cabinetId"
placeholder="请选择柜型">
<el-option v-for="item in cabinetList"
:label="item.name"
:value="item.id"
:key="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="柜号">
<el-input v-model="modifyCabinetObj.cubNo" placeholder="请输入柜号" clearable />
<el-input v-model="modifyCabinetObj.cubNo"
placeholder="请输入柜号"
clearable />
</el-form-item>
</el-form>
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit('modifyForm')">下一步</el-button>
<el-button type="primary"
@click="onSubmit('modifyForm')">下一步</el-button>
<el-button @click="closeDialog">取消</el-button>
</el-row>
</template>
<!-- 装柜纠错 -->
<template v-if="dialogConfig.type === 'correction' && dialogConfig.dialogVisible">
<el-form ref="correctionForm" :rules="rules" :model="correctionObj" label-position="top">
<el-form-item label="装柜纠错(二维码/条形码编号)" prop="qrCode">
<el-input v-model="correctionObj.qrCode" placeholder="请输入二维码/条形码编号" clearable />
<el-form ref="correctionForm"
:rules="rules"
:model="correctionObj"
label-position="top">
<el-form-item label="装柜纠错(二维码/条形码编号)"
prop="qrCode">
<el-input v-model="correctionObj.qrCode"
placeholder="请输入二维码/条形码编号"
clearable />
</el-form-item>
</el-form>
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit('correctionForm')">提交</el-button>
<el-button type="primary"
@click="onSubmit('correctionForm')">提交</el-button>
<el-button @click="closeDialog">取消</el-button>
</el-row>
</template>
<!-- 批量装柜纠错(订单号) -->
<template v-if="dialogConfig.type === 'correctionOrder' && dialogConfig.dialogVisible">
<el-form ref="orderForm" :rules="rules" :model="orderObj" label-position="top">
<el-form-item label="装柜纠错(订单号)" prop="orderNo">
<el-input type="textarea" :rows="3" v-model="orderObj.orderNo" placeholder="请输入,多个以逗号分隔" clearable />
<el-form ref="orderForm"
:rules="rules"
:model="orderObj"
label-position="top">
<el-form-item label="装柜纠错(订单号)"
prop="orderNo">
<el-input type="textarea"
:rows="3"
v-model="orderObj.orderNo"
placeholder="请输入,多个以逗号分隔"
clearable />
</el-form-item>
</el-form>
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit('orderForm')">提交</el-button>
<el-button type="primary"
@click="onSubmit('orderForm')">提交</el-button>
<el-button @click="closeDialog">取消</el-button>
</el-row>
</template>
<!-- 装柜批量输入 -->
<template v-if="dialogConfig.type === 'batchInput' && dialogConfig.dialogVisible">
<el-form ref="batchForm" :rules="rules" :model="batchObj" label-position="top">
<el-form-item label="" prop="qrCode">
<el-input type="textarea" :rows="3" v-model="batchObj.qrCode" placeholder="请输入,多个以逗号分隔" clearable />
<el-form ref="batchForm"
:rules="rules"
:model="batchObj"
label-position="top">
<el-form-item label=""
prop="qrCode">
<el-input type="textarea"
:rows="3"
v-model="batchObj.qrCode"
placeholder="请输入,多个以逗号分隔"
clearable />
</el-form-item>
</el-form>
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit('batchForm')">提交</el-button>
<el-button type="primary"
@click="onSubmit('batchForm')">提交</el-button>
<el-button @click="closeDialog">取消</el-button>
</el-row>
</template>
<!-- 拆单 -->
<splitOrder v-if="dialogConfig.type === 'splitOrder' && dialogConfig.dialogVisible" :currRow="currRow" @closeDialog="closeDialog" />
<splitOrder v-if="dialogConfig.type === 'splitOrder' && dialogConfig.dialogVisible"
:currRow="currRow"
@closeDialog="closeDialog" />
</el-dialog>
</div>
</template>
......@@ -206,7 +307,12 @@ import {
boxUpdate,
approvalCreate,
} from "@/api/ecw/boxSea";
import { getTotlContent, serviceMsg } from "../../utils";
import {
getTotlContent,
serviceMsg,
getCapacity,
sumStatistics,
} from "../../utils";
import splitOrder from "./splitOrder.vue";
/**
......@@ -489,23 +595,7 @@ export default {
},
watch: {
listData(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);
}
}
});
}
const count = sumStatistics(val);
this.$set(this.sumData, "count", count);
},
},
......@@ -522,6 +612,15 @@ export default {
}
return null;
},
/* 容量 */
calcCapacity() {
const { cabinetRespVO } = this.shipmentObj;
return getCapacity(cabinetRespVO);
},
/* 总计 */
getSumData() {
return sumStatistics(this.listData);
},
},
};
</script>
......
......@@ -5,23 +5,32 @@
<el-row class="content-area">
<!-- 左侧 -->
<el-col :span="6" class="left-area">
<el-col :span="6"
class="left-area">
<el-row>
<el-button type="primary" @click="addPart">新增</el-button>
<el-button type="danger" @click="deletePart">删除</el-button>
<el-button type="primary"
@click="addPart">新增</el-button>
<el-button type="danger"
@click="deletePart">删除</el-button>
</el-row>
<el-scrollbar style="height:calc(100% - 40px)">
<el-row v-for="item in partList" :key="item.id" class="title-info" :class="item.id === partData.id ? 'selected' : ''">
<el-row v-for="item in partList"
:key="item.id"
class="title-info"
:class="item.id === partData.id ? 'selected' : ''">
<div @click="partClick(item)">
<p>{{item.title}}</p>
</div>
<el-collapse-transition>
<div v-if="item.fold === false ? true : false">
<div v-for="(secGoog, index) in item.sectionGoodsList" :key="index" class="part-secGoog">
<div v-for="(secGoog, index) in item.sectionGoodsList"
:key="index"
class="part-secGoog">
<p>{{secGoog.orderNo}}</p>
<p>{{secGoog.prodTitleZh}}</p>
<div>
<i class="el-icon-delete" @click="deleteOrder(secGoog)"></i>
<i class="el-icon-delete"
@click="deleteOrder(secGoog)"></i>
</div>
</div>
</div>
......@@ -36,7 +45,8 @@
</el-col>
<!-- 右侧 -->
<el-col :span="18" class="right-area">
<el-col :span="18"
class="right-area">
<el-row class="right-title">
<div>货物筛选</div>
......@@ -46,67 +56,116 @@
<!-- 搜索工作栏 -->
<el-row>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form :model="queryParams"
ref="queryForm"
size="small"
:inline="true"
label-width="68px">
<el-form-item label="始发地">
<p>{{importCityName(queryParams.startWarehouseId)}}</p>
</el-form-item>
<el-form-item label="目的地" prop="destination">
<el-select v-model="queryParams.destWarehouseIdList" placeholder="请选择目的地" multiple>
<el-option v-for="item in importWarehouseList" :label="item.titleZh" :value="item.id" :key="item.id"></el-option>
<el-form-item label="目的地"
prop="destination">
<el-select v-model="queryParams.destWarehouseIdList"
placeholder="请选择目的地"
multiple>
<el-option v-for="item in importWarehouseList"
:label="item.titleZh"
:value="item.id"
:key="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="订单号" prop="orderNo">
<el-input v-model="queryParams.orderNo" placeholder="请输入订单号" clearable />
<el-form-item label="订单号"
prop="orderNo">
<el-input v-model="queryParams.orderNo"
placeholder="请输入订单号"
clearable />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="queryAllData">搜索</el-button>
<el-button type="primary"
icon="el-icon-search"
@click="queryAllData">搜索</el-button>
</el-form-item>
</el-form>
</el-row>
<!-- 表格 -->
<el-scrollbar style="height:calc(100% - 124px)">
<el-row v-for="(item, index) in toBePreList" :key="index" class="toBePre-table">
<el-row v-for="(item, index) in toBePreList"
:key="index"
class="toBePre-table">
<el-row class="table-title">
<div>{{item.orderNo}}</div>
<div>发往:{{item.destWarehouseName}}</div>
<div>
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="item.customsType" />
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE"
:value="item.customsType" />
</div>
<div>入仓时间:{{formatDate(item.rucangTime)}}</div>
<div>
<el-button type="text" @click="handleGoods('all', item)">[全部预装]</el-button>
<el-button type="text" @click="foldTable(index, item)">[{{item.fold ? '展开' : '收起'}}]</el-button>
<el-button type="text"
@click="handleGoods('all', item)">[全部预装]</el-button>
<el-button type="text"
@click="foldTable(index, item)">[{{item.fold ? '展开' : '收起'}}]</el-button>
</div>
</el-row>
<el-collapse-transition>
<div v-show="!item.fold">
<el-table v-loading="loading" :data="item.boxOrderItemList" border>
<el-table-column label="序号" type="index" align="center" width="50" />
<el-table-column label="品名" align="center" prop="prodTitleZh" min-width="500" />
<el-table-column label="品牌" align="center" prop="brandType" width="120">
<el-table v-loading="loading"
:data="item.boxOrderItemList"
border>
<el-table-column label="序号"
type="index"
align="center"
width="50" />
<el-table-column label="品名"
align="center"
prop="prodTitleZh"
min-width="500" />
<el-table-column label="品牌"
align="center"
prop="brandType"
width="120">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_BRAND_TYPE" :value="scope.row.brandType" />
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_BRAND_TYPE"
:value="scope.row.brandType" />
</template>
</el-table-column>
<el-table-column label="箱数" align="center" prop="num" width="120" />
<el-table-column label="体积" align="center" prop="volume" width="120">
<el-table-column label="箱数"
align="center"
prop="num"
width="120" />
<el-table-column label="体积"
align="center"
prop="volume"
width="120">
<template slot-scope="scope">
<p v-if="scope.row.volume">{{getTotlContent(scope.row,['volume'])}}</p>
</template>
</el-table-column>
<el-table-column label="重量" align="center" prop="weight" width="120">
<el-table-column label="重量"
align="center"
prop="weight"
width="120">
<template slot-scope="scope">
<p v-if="scope.row.weight">{{getTotlContent(scope.row,['weight'])}}</p>
</template>
</el-table-column>
<el-table-column label="预装柜" align="center" prop="" width="120">
<el-table-column label="预装柜"
align="center"
prop=""
width="120">
无返回
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="100">
<el-table-column label="操作"
align="center"
class-name="small-padding fixed-width"
width="100">
<template slot-scope="scope">
<el-button type="text" size="small" @click="handleGoods('singele',scope.row)">预装</el-button>
<el-button type="text"
size="small"
@click="handleGoods('singele',scope.row)">预装</el-button>
</template>
</el-table-column>
</el-table>
......@@ -116,25 +175,32 @@
</el-scrollbar>
<!-- 分页 -->
<el-pagination background layout="prev, pager, next" :page-size="pageParam.pageSize" :total="total" @current-change="pageChange" v-show="total > 0"></el-pagination>
<el-pagination background
layout="prev, pager, next"
:page-size="pageParam.pageSize"
:total="total"
@current-change="pageChange"
v-show="total > 0"></el-pagination>
</el-col>
</el-row>
</el-card>
<el-row>
<el-col :span="6" class="totle-info">
<el-col :span="6"
class="totle-info">
<div>
<p>总计:</p>
<p>无返回</p>
<p>{{getTotlContent(loadStatistics)}}</p>
</div>
<div>
<p>容量:</p>
<p>无返回</p>
<p>{{calcCapacity}}</p>
</div>
</el-col>
</el-row>
<el-row class="button-area">
<el-button type="primary" @click="handlerFinish">完成</el-button>
<el-button type="primary"
@click="handlerFinish">完成</el-button>
</el-row>
</div>
</template>
......@@ -148,7 +214,12 @@ import {
createGoods,
remove,
} from "@/api/ecw/boxSea";
import { formatDate, getTotlContent, serviceMsg } from "../../utils";
import {
formatDate,
getTotlContent,
serviceMsg,
getCapacity,
} from "../../utils";
/**
* 补单
*/
......@@ -165,6 +236,8 @@ export default {
partData: {},
// 部分列表
partList: [],
// 部分统计
loadStatistics: {},
// 查询参数
queryParams: {
startWarehouseId: this.$attrs.shipmentObj.startWarehouseId,
......@@ -184,7 +257,9 @@ export default {
/* 查询已预装 */
getSecGoods() {
secGoodsList({ shipmentId: this.$attrs.shipmentObj.id }).then((res) => {
this.partList = res.data.map((item, index) => {
const { sectionGoodList, loadStatistics } = res.data;
this.loadStatistics = loadStatistics;
this.partList = sectionGoodList.map((item, index) => {
item.fold = true;
if (
Object.keys(this.partData).length &&
......@@ -330,6 +405,11 @@ export default {
(item) => item.tradeType == "1" || item.type == "3"
);
},
/* 容量 */
calcCapacity() {
const { cabinetRespVO } = this.$attrs.shipmentObj;
return getCapacity(cabinetRespVO);
},
},
};
</script>
......
<template>
<div class="preinstall">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="90px">
<el-form-item label="入仓时间" prop="rucangtime">
<el-date-picker v-model="queryParams.rucangtime" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" />
<el-form :model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="90px">
<el-form-item label="入仓时间"
prop="rucangtime">
<el-date-picker v-model="queryParams.rucangtime"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期" />
</el-form-item>
<el-form-item label="始发地" prop="startWarehouseId">
<el-select v-model="queryParams.startWarehouseId" placeholder="请选择始发地" clearable size="small">
<el-option v-for="item in exportWarehouseList" :label="item.titleZh" :value="item.id" :key="item.id"></el-option>
<el-form-item label="始发地"
prop="startWarehouseId">
<el-select v-model="queryParams.startWarehouseId"
placeholder="请选择始发地"
clearable
size="small">
<el-option v-for="item in exportWarehouseList"
:label="item.titleZh"
:value="item.id"
:key="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="目的地" prop="destWarehouseIdList">
<el-select v-model="queryParams.destWarehouseIdList" placeholder="请选择目的地" multiple clearable>
<el-option v-for="item in importWarehouseList" :label="item.titleZh" :value="item.id" :key="item.id"></el-option>
<el-form-item label="目的地"
prop="destWarehouseIdList">
<el-select v-model="queryParams.destWarehouseIdList"
placeholder="请选择目的地"
multiple
clearable>
<el-option v-for="item in importWarehouseList"
:label="item.titleZh"
:value="item.id"
:key="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="状态" prop="orderStatus">
<el-select v-model="queryParams.orderStatus" placeholder="请选择状态" clearable size="small">
<el-option v-for="item in stateOps" :label="item.label" :value="item.value" :key="item.value"></el-option>
<el-form-item label="状态"
prop="orderStatus">
<el-select v-model="queryParams.orderStatus"
placeholder="请选择状态"
clearable
size="small">
<el-option v-for="item in stateOps"
:label="item.label"
:value="item.value"
:key="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="备案" prop="productRecord">
<el-select v-model="queryParams.productRecord" placeholder="请选择备案" clearable size="small">
<el-option v-for="item in filingOps" :label="item.label" :value="item.value" :key="item.value"></el-option>
<el-form-item label="备案"
prop="productRecord">
<el-select v-model="queryParams.productRecord"
placeholder="请选择备案"
clearable
size="small">
<el-option v-for="item in filingOps"
:label="item.label"
:value="item.value"
:key="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="报关方式" prop="customsType">
<el-select v-model="queryParams.customsType" placeholder="请选择报关方式" clearable size="small">
<el-option v-for="item in declarationMethodOps" :label="item.label" :value="item.value" :key="item.value"></el-option>
<el-form-item label="报关方式"
prop="customsType">
<el-select v-model="queryParams.customsType"
placeholder="请选择报关方式"
clearable
size="small">
<el-option v-for="item in declarationMethodOps"
:label="item.label"
:value="item.value"
:key="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="订单号" prop="toBePreOrderNo">
<el-input v-model="queryParams.toBePreOrderNo" placeholder="请输入订单号码" clearable />
<el-form-item label="订单号"
prop="toBePreOrderNo">
<el-input v-model="queryParams.toBePreOrderNo"
placeholder="请输入订单号码"
clearable />
</el-form-item>
<el-form-item label="已预装单号" prop="preOrderNo">
<el-input v-model="queryParams.preOrderNo" placeholder="请输入已预装单号" clearable />
<el-form-item label="已预装单号"
prop="preOrderNo">
<el-input v-model="queryParams.preOrderNo"
placeholder="请输入已预装单号"
clearable />
</el-form-item>
<el-form-item label="品名" prop="itemName">
<el-input v-model="queryParams.itemName" placeholder="请输入品名" clearable />
<el-form-item label="品名"
prop="itemName">
<el-input v-model="queryParams.itemName"
placeholder="请输入品名"
clearable />
</el-form-item>
<el-form-item label="重货比" prop="weightRatioMax">
<el-input v-model="queryParams.weightRatioMax" placeholder="请输入 大" clearable />
<el-form-item label="重货比"
prop="weightRatioMax">
<el-input v-model="queryParams.weightRatioMax"
placeholder="请输入 大"
clearable />
</el-form-item>
<el-form-item label="" prop="weightRatioMin">
<el-input v-model="queryParams.weightRatioMin" placeholder="请输入 小" clearable />
<el-form-item label=""
prop="weightRatioMin">
<el-input v-model="queryParams.weightRatioMin"
placeholder="请输入 小"
clearable />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery('pre')">搜索已预装订单</el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery('toBePre')">搜索待预装订单</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary"
icon="el-icon-search"
@click="handleQuery('pre')">搜索已预装订单</el-button>
<el-button type="primary"
icon="el-icon-search"
@click="handleQuery('toBePre')">搜索待预装订单</el-button>
<el-button icon="el-icon-refresh"
@click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10">
<right-toolbar :showSearch.sync="showSearch" @queryTable="handleQuery('toBePre')"></right-toolbar>
<right-toolbar :showSearch.sync="showSearch"
@queryTable="handleQuery('toBePre')"></right-toolbar>
</el-row>
<!-- 表格 -->
<el-card style="margin-top: 15px" class="preinstall-card">
<el-card style="margin-top: 15px"
class="preinstall-card">
<el-row class="preinstall-title">
<div>
<p>自编号:</p>
......@@ -71,7 +140,7 @@
</div>
<div>
<p>容量:</p>
<p>无返回</p>
<p>{{calcCapacity}}</p>
</div>
<div>
<p>始发地:</p>
......@@ -89,71 +158,129 @@
<div class="table-label">已预装订单</div>
<div>
<p>总计:</p>
<p>无返回</p>
<p>{{getTotlContent(preList.loadStatistics)}}</p>
</div>
<div class="red-label">
<p>可预装方数:</p>
<p>无返回</p>
<p>{{preList.remainVolume}}</p>
</div>
<div class="red-label">
<p>重量:</p>
<p>无返回</p>
<p>{{preList.remainWeight}}kg</p>
</div>
<div class="table-button">
<el-button type="success" size="small" @click="addPart">增加</el-button>
<el-button type="success"
size="small"
@click="addPart">增加</el-button>
</div>
</el-row>
<el-scrollbar style="height:calc(100% - 43px)">
<el-row v-for="(part, index) in preList" :key="index" class="pre-part">
<el-row v-for="(part, index) in preList.sectionGoodList"
:key="index"
class="pre-part">
<el-row class="preinstall-title">
<div class="pre-part-info">
<p>{{index+1}}部分</p>
<p>{{getTotlContent(part.secStatistics)}}</p>
</div>
<div class="table-button">
<el-button type="danger" size="small" @click="deletePart(part)">删除部分</el-button>
<el-button type="danger" size="small" @click="deleteOrder('selected', part)">删除订单</el-button>
<el-button type="primary" size="small" @click="foldTable(index, part)">{{part.fold ? '展开' : '收起'}}</el-button>
<el-button type="danger"
size="small"
@click="deletePart(part)">删除部分</el-button>
<el-button type="danger"
size="small"
@click="deleteOrder('selected', part)">删除订单</el-button>
<el-button type="primary"
size="small"
@click="foldTable(index, part)">{{part.fold ? '展开' : '收起'}}</el-button>
</div>
</el-row>
<el-collapse-transition>
<div v-show="!part.fold">
<el-table v-loading="preLoading" border :data="part.sectionGoodsList" @select="(selection)=>checkboxSelect(selection, part)" @select-all="(selection)=>checkboxSelect(selection, part)">
<el-table-column type="selection" align="center" width="55" fixed="left" />
<el-table-column label="订单号" align="center" prop="orderNo" width="120" />
<el-table-column label="目的地" align="center" prop="destWarehouseName" width="120" />
<el-table-column label="入仓时间" align="center" prop="rucangTime" width="120">
<el-table v-loading="preLoading"
border
:data="part.sectionGoodsList"
@select="(selection)=>checkboxSelect(selection, part)"
@select-all="(selection)=>checkboxSelect(selection, part)">
<el-table-column type="selection"
align="center"
width="55"
fixed="left" />
<el-table-column label="订单号"
align="center"
prop="orderNo"
width="120" />
<el-table-column label="目的地"
align="center"
prop="destWarehouseName"
width="120" />
<el-table-column label="入仓时间"
align="center"
prop="rucangTime"
width="120">
<template slot-scope="scope">
{{formatDate(scope.row.rucangTime)}}
</template>
</el-table-column>
<el-table-column label="品名" align="center" prop="prodTitleZh" width="120" />
<el-table-column label="箱数" align="center" prop="num" />
<el-table-column label="体积/重量/重货比" align="center" width="140" prop="volumeWeight">
<el-table-column label="品名"
align="center"
prop="prodTitleZh"
width="120" />
<el-table-column label="箱数"
align="center"
prop="num" />
<el-table-column label="体积/重量/重货比"
align="center"
width="140"
prop="volumeWeight">
<template slot-scope="scope">
<p v-if="scope.row.volume">{{getTotlContent(scope.row,['volume'])}}</p>
<p v-if="scope.row.weight">{{getTotlContent(scope.row,['weight'])}}</p>
</template>
</el-table-column>
<el-table-column label="报关方式" align="center" prop="customsType" width="120">
<el-table-column label="报关方式"
align="center"
prop="customsType"
width="120">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="scope.row.customsType" />
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE"
:value="scope.row.customsType" />
</template>
</el-table-column>
<el-table-column label="备案" align="center" prop="productRecord" width="100">
<el-table-column label="备案"
align="center"
prop="productRecord"
width="100">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_BRAND_TYPE" :value="scope.row.productRecord" />
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_BRAND_TYPE"
:value="scope.row.productRecord" />
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="160" class-name="small-padding fixed-width" fixed="right">
<el-table-column label="操作"
align="center"
width="160"
class-name="small-padding fixed-width"
fixed="right">
<template slot-scope="scope">
<el-dropdown trigger="click" @command="(command)=>handleGoods('singele',scope.row,command)">
<el-button type="primary" size="small" icon="el-icon-edit-outline" circle></el-button>
<el-dropdown trigger="click"
@command="(command)=>handleGoods('singele',scope.row,command)">
<el-button type="primary"
size="small"
icon="el-icon-edit-outline"
circle></el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="bPart" v-for="(bPart, index) in preList" :key="bPart.id" v-show="bPart.id !== part.id">{{index+1}}部分</el-dropdown-item>
<el-dropdown-item :command="bPart"
v-for="(bPart, index) in preList.sectionGoodList"
:key="bPart.id"
v-show="bPart.id !== part.id">{{index+1}}部分</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-button type="danger" size="small" icon="el-icon-minus" circle style="margin-left:10px;" @click="deleteOrder('row',scope.row)"></el-button>
<el-button type="danger"
size="small"
icon="el-icon-minus"
circle
style="margin-left:10px;"
@click="deleteOrder('row',scope.row)"></el-button>
</template>
</el-table-column>
</el-table>
......@@ -181,9 +308,16 @@
</div>
</div>
</el-row>
<el-pagination background layout="prev, pager, next" :page-size="pageParam.pageSize" :total="total" @current-change="pageChange" v-show="total > 0"></el-pagination>
<el-pagination background
layout="prev, pager, next"
:page-size="pageParam.pageSize"
:total="total"
@current-change="pageChange"
v-show="total > 0"></el-pagination>
<el-scrollbar style="height:calc(100% - 75px)">
<el-row v-for="(item, index) in toBePreList" :key="index" class="tobePre-row">
<el-row v-for="(item, index) in toBePreList"
:key="index"
class="tobePre-row">
<el-row class="preinstall-title order-title">
<div>
<p>{{item.orderNo}}</p>
......@@ -194,7 +328,8 @@
</div>
<div>
<p>
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="item.customsType" />
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE"
:value="item.customsType" />
</p>
</div>
<div>
......@@ -206,43 +341,72 @@
<p>{{item.weightRatio}}</p>
</div>
<div class="table-button">
<el-dropdown trigger="click" @command="(command)=>handleGoods('all',item,command)">
<el-button type="success" size="small">预装全部</el-button>
<el-dropdown trigger="click"
@command="(command)=>handleGoods('all',item,command)">
<el-button type="success"
size="small">预装全部</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="part" v-for="(part, index) in preList" :key="part.id">第{{index+1}}部分</el-dropdown-item>
<el-dropdown-item :command="part"
v-for="(part, index) in preList.sectionGoodList"
:key="part.id">第{{index+1}}部分</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
</el-row>
<el-table v-loading="toBePreLoading" :data="item.boxOrderItemList" border show-summary :summary-method="getSummaries">
<el-table-column type="index" align="center" label="序号" width="50" />
<el-table-column label="品名" align="center" prop="prodTitleZh" />
<el-table-column label="备案" align="center" prop="brandType">
<el-table v-loading="toBePreLoading"
:data="item.boxOrderItemList"
border
show-summary
:summary-method="getSummaries">
<el-table-column type="index"
align="center"
label="序号"
width="50" />
<el-table-column label="品名"
align="center"
prop="prodTitleZh" />
<el-table-column label="备案"
align="center"
prop="brandType">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_BRAND_TYPE" :value="scope.row.brandType" />
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_BRAND_TYPE"
:value="scope.row.brandType" />
</template>
</el-table-column>
<el-table-column label="箱数" align="center" prop="num" />
<el-table-column label="体积/重量" align="center" prop="volumeWeight">
<el-table-column label="箱数"
align="center"
prop="num" />
<el-table-column label="体积/重量"
align="center"
prop="volumeWeight">
<template slot-scope="scope">
<p v-if="scope.row.volume">{{getTotlContent(scope.row,['volume'])}}</p>
<p v-if="scope.row.weight">{{getTotlContent(scope.row,['weight'])}}</p>
</template>
</el-table-column>
<el-table-column label="报关方式" align="center" prop="">
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="item.customsType" />
<el-table-column label="报关方式"
align="center"
prop="">
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE"
:value="item.customsType" />
</el-table-column>
<el-table-column label="包装类型" align="center" prop="">
<el-table-column label="包装类型"
align="center"
prop="">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.ECW_PACKAGE_TYPE" :value="scope.row.unit" />
<dict-tag :type="DICT_TYPE.ECW_PACKAGE_TYPE"
:value="scope.row.unit" />
</template>
</el-table-column>
<el-table-column label="材质" align="center" prop="material">
<el-table-column label="材质"
align="center"
prop="material">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.ECW_PRODUCT_MATERIAL" :value="scope.row.material" />
<dict-tag :type="DICT_TYPE.ECW_PRODUCT_MATERIAL"
:value="scope.row.material" />
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-dropdown trigger="click" @command="(command)=>handleGoods('singele',scope.row,command)">
<el-button type="primary" size="small">预装</el-button>
......@@ -251,7 +415,7 @@
</el-dropdown-menu>
</el-dropdown>
</template>
</el-table-column>
</el-table-column> -->
</el-table>
</el-row>
</el-scrollbar>
......@@ -260,29 +424,47 @@
</el-card>
<!-- 操作员 -->
<el-row style="margin-top: 15px" v-show="!isAudit">
<el-row style="margin-top: 15px"
v-show="!isAudit">
<el-row>
<el-form ref="operatorForm" :model="operatorData" size="small" :inline="true" label-width="120px" :rules="rules">
<el-form-item label="目的地操作员" prop="noticeUser">
<userSelect v-model="operatorData.noticeUser" placeholder="请选择目的地操作员" :allUsers="this.$attrs.allUsers" size="small" />
<el-form ref="operatorForm"
:model="operatorData"
size="small"
:inline="true"
label-width="120px"
:rules="rules">
<el-form-item label="目的地操作员"
prop="noticeUser">
<userSelect v-model="operatorData.noticeUser"
placeholder="请选择目的地操作员"
:allUsers="this.$attrs.allUsers"
size="small" />
</el-form-item>
</el-form>
</el-row>
<el-row>
<el-button type="primary" @click="onSubmit">提交申请</el-button>
<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"
v-show="isAudit">
<div class="process">
<div>审批流程</div>
<work-flow xmlkey="shipment_preassemble" v-model="selectedUsers"></work-flow>
<work-flow xmlkey="shipment_preassemble"
v-model="selectedUsers"></work-flow>
</div>
<div>
<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>
<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>
</el-row>
</div>
......@@ -301,7 +483,7 @@ import {
approvalCancel,
} from "@/api/ecw/boxSea";
import userSelect from "./common/userSelect.vue";
import { formatDate, getTotlContent, serviceMsg } from "../utils";
import { formatDate, getTotlContent, serviceMsg, getCapacity } from "../utils";
import dayjs from "dayjs";
import WorkFlow from "@/components/WorkFlow";
......@@ -327,7 +509,11 @@ export default {
type: "",
// 已预装 遮罩层
preLoading: false,
preList: [],
preList: {
sectionGoodList: [],
remainWeight: 0,
remainVolume: 0,
},
// 选中行
selectedRows: {},
......@@ -373,11 +559,16 @@ export default {
const { currNode, shipmentObj } = this.$attrs;
return shipmentObj[currNode.keyName] === 23;
},
/* 容量 */
calcCapacity() {
const { cabinetRespVO } = this.$attrs.shipmentObj;
return getCapacity(cabinetRespVO);
},
},
created() {
// 查询待预装
this.handleQuery("toBePre");
this.handleQuery('pre');
this.handleQuery("pre");
},
methods: {
formatDate,
......@@ -543,16 +734,17 @@ export default {
deleteOrder(type, data) {
let ids = [];
if (type === "selected") {
// 根据parid 构建的对象
const rows = this.selectedRows[data.id] ?? [];
if (!rows.length) {
this.$message.error("请选择订单");
return;
}
ids = rows.map((item) => item.orderItemId);
ids = rows.map((item) => item.id);
}
if (type === "row") {
ids.push(data.orderItemId);
ids.push(data.id);
}
deleteGoods(ids).then((res) => {
......
......@@ -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,
};
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