修复订单库BUG

This commit is contained in:
启航 2026-01-21 18:35:24 +08:00
parent cf8de49eec
commit 7f5e6a6a45
4 changed files with 23 additions and 31 deletions

View File

@ -18,7 +18,7 @@ import java.util.List;
*/ */
public interface OOrderItemMapper extends BaseMapper<OOrderItem> { public interface OOrderItemMapper extends BaseMapper<OOrderItem> {
Page<OrderItemListVo> selectPageVo(@Param("page") Page<OrderItemListVo> page, @Param("qw") OrderItemListBo qw); Page<OrderItemListVo> selectPageVo(@Param("page") Page<OrderItemListVo> page, @Param("qw") OrderItemListBo qw);
List<OrderItemListVo> selectOrderItemListByOrderId(@Param("orderId") Long orderId); // List<OrderItemListVo> selectOrderItemListByOrderId(@Param("orderId") Long orderId);
List<SalesTopSkuVo> selectTopSku(@Param("startDate") String startDate, @Param("endDate") String endDate); List<SalesTopSkuVo> selectTopSku(@Param("startDate") String startDate, @Param("endDate") String endDate);
} }

View File

@ -56,7 +56,7 @@
<select id="selectPageVo" parameterType="cn.qihangerp.model.bo.OrderItemListBo" resultType="cn.qihangerp.model.vo.OrderItemListVo"> <select id="selectPageVo" parameterType="cn.qihangerp.model.bo.OrderItemListBo" resultType="cn.qihangerp.model.vo.OrderItemListVo">
SELECT SELECT
oi.*,o.shop_id,o.order_time,gs.outer_erp_sku_id oi.*,o.shop_id,o.order_create_time as order_time,gs.outer_erp_sku_id
FROM o_order_item as oi FROM o_order_item as oi
left join o_order as o on o.id = oi.order_id left join o_order as o on o.id = oi.order_id
left join o_goods_sku as gs on gs.id = oi.goods_sku_id left join o_goods_sku as gs on gs.id = oi.goods_sku_id
@ -74,10 +74,10 @@
and oi.refund_status = #{qw.refundStatus} and oi.refund_status = #{qw.refundStatus}
</if> </if>
<if test="qw.startTime!=null and qw.startTime != ''"> <if test="qw.startTime!=null and qw.startTime != ''">
and o.order_time &gt;= #{qw.startTime} and o.order_create_time &gt;= #{qw.startTime}
</if> </if>
<if test="qw.endTime!=null and qw.endTime != ''"> <if test="qw.endTime!=null and qw.endTime != ''">
and o.order_time &lt;= #{qw.endTime} and o.order_create_time &lt;= #{qw.endTime}
</if> </if>
<if test="qw.hasLink != null and qw.hasLink == 0"> <if test="qw.hasLink != null and qw.hasLink == 0">
AND (oi.goods_sku_id is NULL or oi.goods_sku_id = 0) AND (oi.goods_sku_id is NULL or oi.goods_sku_id = 0)
@ -88,15 +88,7 @@
</select> </select>
<select id="selectOrderItemListByOrderId" parameterType="Long" resultType="cn.qihangerp.model.vo.OrderItemListVo">
SELECT
oi.*,o.shop_id,o.order_time,gs.outer_erp_sku_id
FROM o_order_item as oi
left join o_order as o on o.id = oi.order_id
left join o_goods_sku as gs on gs.id = oi.goods_sku_id
WHERE oi.order_id = #{orderId}
</select>
<select id="selectTopSku" resultType="cn.qihangerp.model.vo.SalesTopSkuVo"> <select id="selectTopSku" resultType="cn.qihangerp.model.vo.SalesTopSkuVo">
SELECT SELECT
sku_num as `name`, sku_num as `name`,

View File

@ -133,8 +133,8 @@ public class OOrderServiceImpl extends ServiceImpl<OOrderMapper, OOrder>
// 查询子订单 // 查询子订单
if(pages.getRecords()!=null){ if(pages.getRecords()!=null){
for (var order:pages.getRecords()) { for (var order:pages.getRecords()) {
// order.setItemList(orderItemMapper.selectList(new LambdaQueryWrapper<OOrderItem>().eq(OOrderItem::getOrderId, order.getId()))); order.setItemList(orderItemMapper.selectList(new LambdaQueryWrapper<OOrderItem>().eq(OOrderItem::getOrderId, order.getId())));
order.setItemVoList(orderItemMapper.selectOrderItemListByOrderId(Long.parseLong(order.getId()))); // order.setItemVoList(orderItemMapper.selectOrderItemListByOrderId(Long.parseLong(order.getId())));
} }
} }
@ -145,8 +145,8 @@ public class OOrderServiceImpl extends ServiceImpl<OOrderMapper, OOrder>
public OOrder queryDetailById(Long id) { public OOrder queryDetailById(Long id) {
OOrder oOrder = orderMapper.selectById(id); OOrder oOrder = orderMapper.selectById(id);
if(oOrder!=null) { if(oOrder!=null) {
// oOrder.setItemList(orderItemMapper.selectList(new LambdaQueryWrapper<OOrderItem>().eq(OOrderItem::getOrderId, oOrder.getId()))); oOrder.setItemList(orderItemMapper.selectList(new LambdaQueryWrapper<OOrderItem>().eq(OOrderItem::getOrderId, oOrder.getId())));
oOrder.setItemVoList(orderItemMapper.selectOrderItemListByOrderId(id)); // oOrder.setItemVoList(orderItemMapper.selectOrderItemListByOrderId(id));
// 获取优惠信息 // 获取优惠信息
if(oOrder.getShopType()==EnumShopType.TAO.getIndex()){ if(oOrder.getShopType()==EnumShopType.TAO.getIndex()){
oOrder.setDiscounts(orderMapper.getTaoOrderDiscount(oOrder.getOrderNum())); oOrder.setDiscounts(orderMapper.getTaoOrderDiscount(oOrder.getOrderNum()));

View File

@ -127,7 +127,7 @@
</table> </table>
</template> </template>
<template slot-scope="scope" > <template slot-scope="scope" >
<el-table :data="scope.row.itemVoList" :show-header="false" :cell-style="{border:0 + 'px' }" :row-style="{border:0 + 'px' }" > <el-table :data="scope.row.itemList" :show-header="false" :cell-style="{border:0 + 'px' }" :row-style="{border:0 + 'px' }" >
<el-table-column label="商品图片" width="50px"> <el-table-column label="商品图片" width="50px">
<template slot-scope="scope"> <template slot-scope="scope">
<!-- <el-image style="width: 40px; height: 40px;" :src="scope.row.goodsImg" :preview-src-list="[scope.row.goodsImg]"></el-image>--> <!-- <el-image style="width: 40px; height: 40px;" :src="scope.row.goodsImg" :preview-src-list="[scope.row.goodsImg]"></el-image>-->
@ -283,7 +283,7 @@
/> />
<!-- 订单详情对话框 --> <!-- 订单详情对话框 -->
<el-dialog :title="detailTitle" :visible.sync="detailOpen" width="1100px" append-to-body> <el-dialog :title="detailTitle" :visible.sync="detailOpen" width="1200px" append-to-body>
<el-tabs v-model="activeName" > <el-tabs v-model="activeName" >
<el-tab-pane label="订单详情" name="orderDetail"> <el-tab-pane label="订单详情" name="orderDetail">
<el-form ref="form" :model="form" :rules="rules" label-width="80px" inline> <el-form ref="form" :model="form" :rules="rules" label-width="80px" inline>
@ -361,33 +361,33 @@
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="商品列表" name="orderItems" lazy> <el-tab-pane label="商品列表" name="orderItems" lazy>
<el-table :data="form.itemVoList" style="margin-bottom: 10px;"> <el-table :data="form.itemList" style="margin-bottom: 10px;">
<!-- <el-table-column type="selection" width="50" align="center" /> --> <!-- <el-table-column type="selection" width="50" align="center" /> -->
<el-table-column label="序号" align="center" type="index" width="50"/> <el-table-column label="序号" align="center" type="index" width="50"/>
<el-table-column label="商品图片" prop="goodsImg" width="80"> <el-table-column label="图片" prop="goodsImg" width="80">
<template slot-scope="scope"> <template slot-scope="scope">
<el-image style="width: 70px; height: 70px" :src="scope.row.goodsImg"></el-image> <el-image style="width: 40px; height: 40px" :src="scope.row.goodsImg"></el-image>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="商品标题" prop="goodsTitle" ></el-table-column> <el-table-column label="商品标题" prop="goodsTitle" width="300"></el-table-column>
<el-table-column label="规格" prop="goodsSpec" width="150"> <el-table-column label="规格" prop="goodsSpec" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
{{ getSkuValues(scope.row.goodsSpec)}} {{ getSkuValues(scope.row.goodsSpec)}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="sku编码" prop="skuNum"></el-table-column> <!-- <el-table-column label="sku编码" prop="skuNum"></el-table-column>-->
<el-table-column label="商品库SKUID" prop="goodsSkuId"></el-table-column> <el-table-column label="平台SkuId" prop="skuId"></el-table-column>
<el-table-column label="单价" prop="goodsPrice"></el-table-column> <el-table-column label="商品库SkuId" prop="goodsSkuId"></el-table-column>
<el-table-column label="子订单金额" prop="itemAmount"></el-table-column> <!-- <el-table-column label="单价" prop="goodsPrice"></el-table-column>-->
<el-table-column label="实付金额" prop="payment"></el-table-column>
<el-table-column label="数量" prop="quantity"></el-table-column> <el-table-column label="数量" prop="quantity"></el-table-column>
<el-table-column label="金额" prop="itemAmount" :formatter="amountFormatter"></el-table-column>
<!-- <el-table-column label="实付金额" prop="payment"></el-table-column>-->
<el-table-column label="状态" prop="orderStatus"> <el-table-column label="状态" prop="orderStatus">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag v-if="scope.row.orderStatus === 1">待发货</el-tag> <el-tag v-if="scope.row.refundStatus === 1">无售后或售后关闭</el-tag>
<el-tag v-if="scope.row.orderStatus === 2">已发货</el-tag> <el-tag v-else>已退款</el-tag>
<el-tag v-if="scope.row.orderStatus === 3">已完成</el-tag>
<el-tag v-if="scope.row.orderStatus === 11">已取消</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column label="退款状态" prop="refundStatus">--> <!-- <el-table-column label="退款状态" prop="refundStatus">-->