团单号兼容

This commit is contained in:
2025-12-18 09:49:14 +08:00
parent ade9f4d5f9
commit 87d786c8a1
5 changed files with 37 additions and 9 deletions

View File

@@ -79,8 +79,11 @@ public class UGbOrderController {
* 拼团订单详情
*/
@GetMapping("/record/detail")
public CzgResult<GbOrderDetailVO> getGoodsRecordDetail(@RequestParam Long shopId, @RequestParam Long detailId) {
return CzgResult.success(orderService.getGoodsRecordDetail(shopId, detailId));
public CzgResult<GbOrderDetailVO> getGoodsRecordDetail(
@RequestParam Long shopId,
@RequestParam(required = false) Long detailId,
@RequestParam(required = false) String groupOrderNo) {
return CzgResult.success(orderService.getGoodsRecordDetail(shopId, detailId, groupOrderNo));
}

View File

@@ -26,7 +26,7 @@ public interface GbOrderService extends IService<GbOrder> {
Page<GbOrderDetailVO> getGbOrderPage(GbOrderQueryParam param);
//拼团订单详情
GbOrderDetailVO getGoodsRecordDetail(Long shopId, Long detailId);
GbOrderDetailVO getGoodsRecordDetail(Long shopId, Long detailId, String groupOrderNo);
//商品详情
GbWareVO getWareDetail(Long shopId, Long wareId, Long userId);

View File

@@ -18,7 +18,9 @@ public interface GbOrderMapper extends BaseMapper<GbOrder> {
List<GbOrderDetailVO> getGbOrderPage(GbOrderQueryParam param, Long shopId, Long mainShopId);
GbOrderDetailVO getGbOrderDetail(Long mainShopId, Long shopId, Long detailId);
GbOrderDetailVO getDetailByDetailId(Long mainShopId, Long shopId, Long detailId);
GbOrderDetailVO getDetailByGroupNo(Long mainShopId, Long shopId, String groupOrderNo, Long userId);
List<GbOrderUserVO> getGbOrderDetailUsers(Long mainShopId, Long shopId, String groupOrderNo);
}

View File

@@ -99,10 +99,19 @@ public class GbOrderServiceImpl extends ServiceImpl<GbOrderMapper, GbOrder> impl
}
@Override
public GbOrderDetailVO getGoodsRecordDetail(Long shopId, Long detailId) {
public GbOrderDetailVO getGoodsRecordDetail(Long shopId, Long detailId, String groupOrderNo) {
if (StrUtil.isBlank(groupOrderNo) && detailId == null) {
throw new CzgException("参数错误");
}
Long mainIdByShopId = shopInfoService.getMainIdByShopId(shopId);
GbOrderDetailVO gbOrderDetail = mapper.getGbOrderDetail(mainIdByShopId, shopId, detailId);
GbOrderDetailVO gbOrderDetail;
if (detailId != null) {
gbOrderDetail = mapper.getDetailByDetailId(mainIdByShopId, shopId, detailId);
AssertUtil.isNull(gbOrderDetail, "记录不存在");
} else {
gbOrderDetail = mapper.getDetailByGroupNo(mainIdByShopId, shopId, groupOrderNo, StpKit.USER.getLoginIdAsLong());
gbOrderDetail.setGroupOrderNo(groupOrderNo);
}
List<GbOrderUserVO> users = mapper.getGbOrderDetailUsers(mainIdByShopId, shopId, gbOrderDetail.getGroupOrderNo());
gbOrderDetail.setUsers(users);
return gbOrderDetail;

View File

@@ -42,7 +42,7 @@
order by detail.create_time desc
</select>
<select id="getGbOrderDetail" resultType="com.czg.order.vo.GbOrderDetailVO">
<select id="getDetailByDetailId" resultType="com.czg.order.vo.GbOrderDetailVO">
SELECT
detail.* ,`order`.ware_json as wareJson,`order`.group_end_time as groupEndTime,`order`.group_people_num as groupPeopleNum,`order`.ware_group_price as wareGroupPrice,
`order`.ware_original_price as wareOriginalPrice,`user`.nick_name as userName,`user`.phone as userPhone,shop.shop_name as shopName,shop.address as shopAddress
@@ -52,7 +52,21 @@
left join tb_shop_user `user` on `user`.main_shop_id = #{mainShopId} and `user`.user_id = detail.user_id
LEFT JOIN tb_shop_info shop on detail.shop_id = shop.id
WHERE
detail.shop_id = #{shopId} and detail.id=#{detailId}
detail.shop_id = #{shopId} and detail.id=#{detailId} and detail.is_del = 0
order by detail.create_time desc
</select>
<select id="getDetailByGroupNo" resultType="com.czg.order.vo.GbOrderDetailVO">
SELECT
detail.* ,`order`.ware_json as wareJson,`order`.group_end_time as groupEndTime,`order`.group_people_num as groupPeopleNum,`order`.ware_group_price as wareGroupPrice,
`order`.ware_original_price as wareOriginalPrice,`user`.nick_name as userName,`user`.phone as userPhone,shop.shop_name as shopName,shop.address as shopAddress
FROM
gb_order `order`
LEFT JOIN gb_order_detail detail on detail.group_order_no = `order`.group_order_no and `detail`.shop_id = #{shopId} and `detail`.user_id = #{userId} and `detail`.is_del = 0
LEFT JOIN tb_shop_user `user` on `user`.main_shop_id = #{mainShopId} and `user`.user_id = detail.user_id
LEFT JOIN tb_shop_info shop on detail.shop_id = shop.id
WHERE
`order`.group_order_no = #{groupOrderNo}
order by detail.create_time desc
</select>