From 80a53a817a70e34c412c133d56cf3b9918b35212 Mon Sep 17 00:00:00 2001 From: mayf <m13160102112@163.com> Date: 星期日, 08 九月 2024 17:28:42 +0800 Subject: [PATCH] 打印,仓库修改 --- pages/warehouse.vue | 15 +++++ components/warehouse/location-item.vue | 78 +++++++++++++++++++------ components/order/print-list.vue | 36 +++++------- pages/order/list/index.vue | 2 4 files changed, 89 insertions(+), 42 deletions(-) diff --git a/components/order/print-list.vue b/components/order/print-list.vue index 03c71b2..2d44324 100644 --- a/components/order/print-list.vue +++ b/components/order/print-list.vue @@ -1,12 +1,7 @@ <template> <div class="print-list"> - <div v-for="(list, i) in groupList" :key="i" class="break-page"> - <div - v-for="(item, index) in list" - :key="index" - ref="orderTable" - class="print-item" - > + <div v-for="(item, i) in orderList" :key="i" class="break-page"> + <div ref="orderTable" class="print-item"> <el-row :gutter="10" class="mb-15"> <el-col :span="24"> <div class="area-text"> @@ -36,12 +31,6 @@ </div> </div> </el-col> - <el-col :span="24"> - <div class="desc-info"> - <div>备注:</div> - <div class="desc-info__value">{{ item.remarks }}</div> - </div> - </el-col> </el-row> <el-table-print :data="item.items" @@ -51,6 +40,11 @@ style="width: 100%" > <el-table-column label="序号" type="index"></el-table-column> + <el-table-column + prop="orderNo" + label="订单号" + align="center" + ></el-table-column> <el-table-column label="下单品种" :formatter=" @@ -80,7 +74,7 @@ </template> <script> -import groupBy from 'lodash.groupby' +// import groupBy from 'lodash.groupby' export default { props: { orderList: { @@ -89,13 +83,13 @@ }, }, computed: { - groupList() { - const sanhuList = this.orderList.filter((i) => !i.partnerId) - const partnerList = this.orderList.filter((i) => !!i.partnerId) - const sList = groupBy(sanhuList, (i) => i.createBy) - const pList = groupBy(partnerList, (i) => i.partnerId) - return [...Object.values(pList), ...Object.values(sList)] - }, + // groupList() { + // const sanhuList = this.orderList.filter((i) => !i.partnerId) + // const partnerList = this.orderList.filter((i) => !!i.partnerId) + // const sList = groupBy(sanhuList, (i) => i.createBy) + // const pList = groupBy(partnerList, (i) => i.partnerId) + // return [...Object.values(pList), ...Object.values(sList)] + // }, }, methods: { objectSpanMethod(len, { rowIndex, columnIndex }) { diff --git a/components/warehouse/location-item.vue b/components/warehouse/location-item.vue index cc8d86e..55c4987 100644 --- a/components/warehouse/location-item.vue +++ b/components/warehouse/location-item.vue @@ -3,23 +3,55 @@ <div class="location-item__main"> <div class="location-item__title text-overflow-1"> <div>{{ info.code }}</div> - <div v-if="info.used && info.orderDTO" class="h-130 py-10"> - <div class="text-12 text-primary"> - {{ info.orderDTO.orderNo }} + <div + v-if="info.used && info.orderDTO && info.orderDTO.length > 0" + class="h-130 py-10" + > + <div class="flex items-center"> + <div class="text-12 text-primary flex-1 text-overflow-1"> + {{ info.orderDTO[0].orderNo }} + </div> + <el-popover placement="bottom" trigger="hover"> + <el-table :data="info.orderDTO"> + <el-table-column + prop="orderNo" + label="订单号" + min-width="150" + ></el-table-column> + <el-table-column + label="订单金额(元)" + prop="totalAmount" + min-width="120" + ></el-table-column> + <el-table-column + label="下单时间" + prop="createTime" + min-width="180" + ></el-table-column> + <el-table-column + label="合伙人" + prop="partnerName" + min-width="120" + ></el-table-column> + </el-table> + <el-button slot="reference" type="text" class="p-0 ml-4" + >查看更多</el-button + > + </el-popover> </div> <div - v-if="info.items && info.items.length > 0" + v-if="info.goodsItems && info.goodsItems.length > 0" class="flex items-center mt-10" > <div class="text-subTitle text-12 flex-1 text-overflow-1"> - {{ info.items[0].flowerName - }}<span class="ml-8">{{ info.items[0].flowerLevelStr }}</span - ><span class="ml-8">{{ info.items[0].flowerColor }}</span - ><span class="ml-8">{{ info.items[0].flowerUnit }}</span - >×{{ info.items[0].num }} + {{ info.goodsItems[0].flowerName + }}<span class="ml-8">{{ info.goodsItems[0].flowerLevelStr }}</span + ><span class="ml-8">{{ info.goodsItems[0].flowerColor }}</span + ><span class="ml-8">{{ info.goodsItems[0].flowerUnit }}</span + >×{{ info.goodsItems[0].num }} </div> <el-popover placement="bottom" trigger="hover"> - <el-table :data="info.items"> + <el-table :data="info.goodsItems"> <el-table-column prop="flowerName" label="商品名称" @@ -40,6 +72,11 @@ property="supplierName" label="供应商名称" ></el-table-column> + <el-table-column + property="orderNo" + label="订单号" + min-width="150" + ></el-table-column> </el-table> <el-button slot="reference" type="text" class="p-0 ml-4" >查看更多</el-button @@ -47,24 +84,25 @@ </el-popover> </div> <div class="text-subTitle text-12 mt-10 text-overflow-1"> - {{ info.orderDTO.customer - }}<span class="ml-8">{{ info.orderDTO.customerTel }}</span> + {{ info.orderDTO[0].customer + }}<span class="ml-8">{{ info.orderDTO[0].customerTel }}</span> </div> <el-tooltip - v-if="info.orderDTO.customerAddress" + v-if="info.orderDTO[0].customerAddress" class="item" effect="dark" - :content="`${info.orderDTO.customerProvince || ''}${ - info.orderDTO.customerCity || '' - }${info.orderDTO.customerRegion || ''}${ - info.orderDTO.customerAddress || '' + :content="`${info.orderDTO[0].customerProvince || ''}${ + info.orderDTO[0].customerCity || '' + }${info.orderDTO[0].customerRegion || ''}${ + info.orderDTO[0].customerAddress || '' }`" placement="top-start" > <div class="text-subTitle text-12 mt-10 text-overflow-1"> - {{ info.orderDTO.customerProvince }}{{ info.orderDTO.customerCity - }}{{ info.orderDTO.customerRegion - }}{{ info.orderDTO.customerAddress }} + {{ info.orderDTO[0].customerProvince + }}{{ info.orderDTO[0].customerCity + }}{{ info.orderDTO[0].customerRegion + }}{{ info.orderDTO[0].customerAddress }} </div> </el-tooltip> </div> diff --git a/pages/order/list/index.vue b/pages/order/list/index.vue index 6c37c1e..00af407 100644 --- a/pages/order/list/index.vue +++ b/pages/order/list/index.vue @@ -175,7 +175,7 @@ } const ids = selected.map((i) => i.id) const { code, data } = await this.$elBusHttp.request( - 'flower/api/order/check/list', + 'flower/api/order/check/location/list', { method: 'post', data: { diff --git a/pages/warehouse.vue b/pages/warehouse.vue index d7de41e..a69bf7c 100644 --- a/pages/warehouse.vue +++ b/pages/warehouse.vue @@ -104,6 +104,21 @@ newText: '新增仓位', hasPagination: false, extraParentKeys: ['warehouseId'], + afterRequest: (list) => { + return list.map((item) => { + const orderList = item.orderDTO || [] + const goodsItems = orderList.reduce((total, current) => { + total = total.concat( + current.items.map((i) => ({ + ...i, + orderNo: current.orderNo, + })) + ) + return total + }, []) + return { ...item, goodsItems } + }) + }, searchForm: [ { type: 'row', -- Gitblit v1.9.3