From 72a6cb4a44abe356a444788ec92015c25766d9df Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Wed, 25 Aug 2021 14:58:24 +0800 Subject: [PATCH] add inviteUserQsOrderDetails.json --- gc-order/src/main/java/com/xzx/gc/order/mapper/JhyOrderMapper.java | 4 + gc-order/src/main/resources/mapper/order/JhyOrderMapper.xml | 20 ++++++ gc-order/src/main/java/com/xzx/gc/order/controller/OrderController.java | 18 ++++-- gc-order/src/main/java/com/xzx/gc/order/dto/InviteUserOrderDetailsDto.java | 29 +++++++++ gc-order/src/main/java/com/xzx/gc/order/mapper/OrderMapper.java | 3 + gc-order/src/main/resources/mapper/order/OrderMapper.xml | 26 ++++++++ gc-order/src/main/java/com/xzx/gc/order/vo/InviteUserOrderVo.java | 49 ++++++++++++++++ gc-order/src/main/java/com/xzx/gc/order/service/OrderService.java | 20 ++++++ 8 files changed, 163 insertions(+), 6 deletions(-) diff --git a/gc-order/src/main/java/com/xzx/gc/order/controller/OrderController.java b/gc-order/src/main/java/com/xzx/gc/order/controller/OrderController.java index 62f6304..4efdaba 100644 --- a/gc-order/src/main/java/com/xzx/gc/order/controller/OrderController.java +++ b/gc-order/src/main/java/com/xzx/gc/order/controller/OrderController.java @@ -34,11 +34,9 @@ import com.xzx.gc.order.dto.*; import com.xzx.gc.order.mapper.*; import com.xzx.gc.order.service.*; +import com.xzx.gc.order.vo.InviteUserOrderVo; import com.xzx.gc.util.DoubleUtil; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiImplicitParams; -import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.*; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -1186,7 +1184,15 @@ return Result.success(); } - - + @ApiOperation("邀请好友下单明细") + @ApiResponses( + @ApiResponse(code = 200, message = "success", response = InviteUserOrderVo.class) + ) + @PostMapping(value = Constants.ADMIN_VIEW_PREFIX + "/user/inviteUserQsOrderDetails.json") + public JsonResult<Object> inviteUserQsOrderDetails(@RequestBody InviteUserOrderDetailsDto detailsDto, HttpServletRequest request) { + String userId = getUserId(request); + detailsDto.setUserId(userId); + return JsonResult.success(orderService.inviteUserOrderDetail(detailsDto)); + } } diff --git a/gc-order/src/main/java/com/xzx/gc/order/dto/InviteUserOrderDetailsDto.java b/gc-order/src/main/java/com/xzx/gc/order/dto/InviteUserOrderDetailsDto.java new file mode 100644 index 0000000..18ac4b4 --- /dev/null +++ b/gc-order/src/main/java/com/xzx/gc/order/dto/InviteUserOrderDetailsDto.java @@ -0,0 +1,29 @@ +package com.xzx.gc.order.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author wzy + * @date 2021-08-25 + **/ +@Data +@ApiModel(value = "InviteUserOrderDetailsDto", description = "邀请好友下单明细接收参数类") +public class InviteUserOrderDetailsDto { + + @ApiModelProperty(value = "第几页", required = true) + private int page; + + @ApiModelProperty(value = "每一页数量", required = true) + private int limit; + + @ApiModelProperty(hidden = true) + private String userId; + + @ApiModelProperty(value = "1-骑手单 2-集货员单") + private Integer type; + + @ApiModelProperty(hidden = true) + private String phone; +} diff --git a/gc-order/src/main/java/com/xzx/gc/order/mapper/JhyOrderMapper.java b/gc-order/src/main/java/com/xzx/gc/order/mapper/JhyOrderMapper.java index 6f1dd8f..aa96484 100644 --- a/gc-order/src/main/java/com/xzx/gc/order/mapper/JhyOrderMapper.java +++ b/gc-order/src/main/java/com/xzx/gc/order/mapper/JhyOrderMapper.java @@ -2,7 +2,9 @@ import com.xzx.gc.entity.JhyInfo; import com.xzx.gc.entity.JhyOrder; +import com.xzx.gc.order.dto.InviteUserOrderDetailsDto; import com.xzx.gc.order.dto.JhyOrderListDto; +import com.xzx.gc.order.vo.InviteUserOrderVo; import com.xzx.gc.order.vo.JhyOrderListVo; import com.xzx.gc.order.vo.JhyStatusCountVo; import com.xzx.gc.util.GcMapper; @@ -21,4 +23,6 @@ List<JhyOrder> selectJhyOrderListByStatus(@Param("list") List<String> list, @Param("userId") String userId); List<JhyOrder> selectJhyOrderNoWaitAndCancel(@Param("userId") String userId); + + List<InviteUserOrderVo> selectInviteUserOrderList(@Param("record") InviteUserOrderDetailsDto detailsDto); } diff --git a/gc-order/src/main/java/com/xzx/gc/order/mapper/OrderMapper.java b/gc-order/src/main/java/com/xzx/gc/order/mapper/OrderMapper.java index 4ed2f82..560eec5 100644 --- a/gc-order/src/main/java/com/xzx/gc/order/mapper/OrderMapper.java +++ b/gc-order/src/main/java/com/xzx/gc/order/mapper/OrderMapper.java @@ -14,7 +14,9 @@ import com.xzx.gc.model.user.UserInfoVo; import com.xzx.gc.order.dto.CustomOrderDto; import com.xzx.gc.order.dto.FindOrderByTimeDto; +import com.xzx.gc.order.dto.InviteUserOrderDetailsDto; import com.xzx.gc.order.dto.OrderCustomDto; +import com.xzx.gc.order.vo.InviteUserOrderVo; import com.xzx.gc.util.GcMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -223,5 +225,6 @@ List<OrderInfo> selectOrderNoWaitAndCancel(@Param("userId") String userId); + List<InviteUserOrderVo> selectInviteUserOrderList(@Param("record") InviteUserOrderDetailsDto detailsDto); } diff --git a/gc-order/src/main/java/com/xzx/gc/order/service/OrderService.java b/gc-order/src/main/java/com/xzx/gc/order/service/OrderService.java index 940ca37..2d46c1c 100644 --- a/gc-order/src/main/java/com/xzx/gc/order/service/OrderService.java +++ b/gc-order/src/main/java/com/xzx/gc/order/service/OrderService.java @@ -40,6 +40,7 @@ import com.xzx.gc.model.user.*; import com.xzx.gc.order.dto.*; import com.xzx.gc.order.mapper.*; +import com.xzx.gc.order.vo.InviteUserOrderVo; import com.xzx.gc.service.AccountContext; import com.xzx.gc.util.DoubleUtil; import lombok.extern.slf4j.Slf4j; @@ -229,6 +230,8 @@ @Autowired private DistribService distribService; + @Autowired + private JhyOrderMapper jhyOrderMapper; public OrderReserveResDto getReserveTimeNew(OrderReserveResDto orderReserveResDto, String partnerId) { @@ -3796,4 +3799,21 @@ } orderDetailService.updateAllById(orderDetailInfo); } + + public PageInfo<InviteUserOrderVo> inviteUserOrderDetail(InviteUserOrderDetailsDto detailsDto) { + UserInfo userInfo = userMapper.selectByPrimaryKey(detailsDto.getUserId()); + if (userInfo == null) { + throw new RestException("用户不存在"); + } + + detailsDto.setPhone(userInfo.getMobilePhone()); + List<InviteUserOrderVo> orderVos = new ArrayList<>(); + PageHelper.startPage(detailsDto.getPage(), detailsDto.getLimit()); + if (detailsDto.getType() == 1) { + orderVos = orderMapper.selectInviteUserOrderList(detailsDto); + } else { + orderVos = jhyOrderMapper.selectInviteUserOrderList(detailsDto); + } + return new PageInfo<>(orderVos); + } } diff --git a/gc-order/src/main/java/com/xzx/gc/order/vo/InviteUserOrderVo.java b/gc-order/src/main/java/com/xzx/gc/order/vo/InviteUserOrderVo.java new file mode 100644 index 0000000..ff1df07 --- /dev/null +++ b/gc-order/src/main/java/com/xzx/gc/order/vo/InviteUserOrderVo.java @@ -0,0 +1,49 @@ +package com.xzx.gc.order.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author wzy + * @date 2021-08-25 + **/ +@Data +@ApiModel(value = "InviteUserOrderVo", description = "邀请好友下单明细返回参数类") +public class InviteUserOrderVo { + + @ApiModelProperty(value = "订单编号") + private String orderNo; + + @ApiModelProperty(value = "用户名称") + private String username; + + @ApiModelProperty(value = "联系方式") + private String phone; + + @ApiModelProperty(value = "订单用户") + private String orderName; + + @ApiModelProperty(value = "订单联系方式") + private String orderPhone; + + @ApiModelProperty(value = "预约时间") + private String time; + + @ApiModelProperty(value = "地址") + private String address; + + @ApiModelProperty(value = "回收类型") + private String recycleType; + + @ApiModelProperty(value = "环保币") + private BigDecimal coin; + + @ApiModelProperty(value = "积分") + private BigDecimal score; + + @ApiModelProperty(value = "状态 骑手(1为待接单,2为服务中,3为待确认,4为待入库,5为完成,6为取消,7为入库中) 集物员(1-待接单2-已接单3-已收款(用户)/待入库(集物员)4-已完成5-已取消)") + private Integer status; +} diff --git a/gc-order/src/main/resources/mapper/order/JhyOrderMapper.xml b/gc-order/src/main/resources/mapper/order/JhyOrderMapper.xml index 480e24e..dc5bd28 100644 --- a/gc-order/src/main/resources/mapper/order/JhyOrderMapper.xml +++ b/gc-order/src/main/resources/mapper/order/JhyOrderMapper.xml @@ -84,4 +84,24 @@ select * from xzx_jhy_order where status not in (1, 2, 5) and user_id=#{userId} </select> + + <select id="selectInviteUserOrderList" resultType="com.xzx.gc.order.vo.InviteUserOrderVo"> + select + c.order_no orderNo, + from_base64(b.nick_name) username, + b.mobile_phone phone, + c.username orderName, + c.phone orderPhone, + concat(c.reserve_date, ' ', c.reserve_time) time, + concat(area, address) address, + group_concat(d.title) recycleType, + c.status status, + sum(d.score) score + from xzx_user_share_info a + inner join xzx_user_info b on a.register_mobile_phone=b.mobile_phone + inner join xzx_jhy_order c on b.user_id=c.user_id + inner join xzx_jhy_order_items d on c.id=d.order_id + where register_mobile_phone=#{record.phone} + group by c.order_no + </select> </mapper> \ No newline at end of file diff --git a/gc-order/src/main/resources/mapper/order/OrderMapper.xml b/gc-order/src/main/resources/mapper/order/OrderMapper.xml index 20093e6..eed1db4 100644 --- a/gc-order/src/main/resources/mapper/order/OrderMapper.xml +++ b/gc-order/src/main/resources/mapper/order/OrderMapper.xml @@ -1527,4 +1527,30 @@ select * from xzx_order_info where order_status not in ('1', '2', '6') and create_user_id=#{userId} </select> + + <select id="selectInviteUserOrderList" resultType="com.xzx.gc.order.vo.InviteUserOrderVo"> + select + a.order_id orderNo, + a.username, + a.mobile_phone phone, + a.rela_name orderName, + a.rela_phone orderPhone, + a.reserve_time time, + a.address, + a.order_status status, + group_concat(a.title) recycleType, + sum(a.money) coin + from ( + select c.order_id, b.mobile_phone, from_base64(b.nick_name) username, c.order_status, c.reserve_time, c.rela_name, c.rela_phone, concat(address_area, address, house_name, house_number, unit_name) address, d.money, e.title + from xzx_user_share_info a + inner join xzx_user_info b on a.register_mobile_phone=b.mobile_phone + inner join xzx_order_info c on b.user_id=c.create_user_id + left join xzx_order_item_info d on c.order_id=d.order_id and d.weight!='0.0' + left join xzx_sys_environmental_info e on d.item_type=e.item_type + where a.mobile_phone=#{record.phone} + group by c.order_id,c.create_time, d.item_type + order by c.create_time desc + ) a + group by a.order_id + </select> </mapper> -- Gitblit v1.9.1