Pārlūkot izejas kodu

fix 分销人数订单详情接口

zoujiajian 3 gadi atpakaļ
vecāks
revīzija
a17cedcdcd

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/model/views/DistributeOrdersView.java

@@ -16,7 +16,7 @@ import java.util.Date;
  */
 @Getter
 @Setter
-@SearchBean(tables = "order_don od left join distribute_waiting_send_points dp on dp.order_id = od.id",
+@SearchBean(tables = "order_don od inner join distribute_waiting_send_points dp on dp.order_id = od.id",
 		where = "od.is_distribute is true and od.status not in ('close','noPayment')")
 public class DistributeOrdersView {
 	@DbField("od.id")

+ 3 - 3
netflix-dao/src/main/java/com/cyksj/model/views/RegisterDistributeOrdersDetailView.java

@@ -19,7 +19,7 @@ import java.util.Date;
  */
 @Getter
 @Setter
-@SearchBean(tables = "user_distribute_shared us left join order_don od on od.user_id = us.user_id" +
+@SearchBean(tables = "distribute_waiting_send_points dp left join order_don od on od.id = dp.order_id" +
 		" left join goods_don gd on gd.id = od.goods_id")
 public class RegisterDistributeOrdersDetailView {
 
@@ -32,11 +32,11 @@ public class RegisterDistributeOrdersDetailView {
 	@DbField("od.status")
 	private OrderDon.Status status;
 
-	@DbField("us.shared_id")
+	@DbField("dp.shared_id")
 	@JsonIgnore
 	private Long sharedId;
 
-	@DbField("us.user_id")
+	@DbField("dp.user_id")
 	private Long userId;
 
 	@DbIgnore

+ 42 - 0
netflix-dao/src/main/java/com/cyksj/model/views/RegisterDistributeOrdersView.java

@@ -0,0 +1,42 @@
+package com.cyksj.model.views;
+
+import com.ejlchina.searcher.bean.DbField;
+import com.ejlchina.searcher.bean.DbIgnore;
+import com.ejlchina.searcher.bean.SearchBean;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/*
+ *项目名: netflix
+ *文件名: RegisterDistributeOrdersView
+ *创建者: JavaZou
+ *创建时间:2022/12/16 17:04
+ */
+@Getter
+@Setter
+@SearchBean(tables = "user_distribute_shared us left join user u on u.id = us.user_id")
+public class RegisterDistributeOrdersView {
+	@DbField("us.id")
+	private Long id;
+
+	@DbField("us.shared_id")
+	private Long sharedId;
+
+	@DbField("u.created_time")
+	private Date registerDate;
+
+	@DbField("u.nickname")
+	private String nickname;
+
+	@DbField("us.user_id")
+	private Long userId;
+
+	@DbIgnore
+	private Integer orderNums;
+
+	@DbIgnore
+	private BigDecimal money;
+}

+ 16 - 1
netflix-web/src/main/java/com/cyksj/web/controller/manage/distribute/DistributeController.java

@@ -141,10 +141,25 @@ public class DistributeController {
 		return GatewayResponse.SUCCESS.newBuilder().toResult(search);
 	}
 
+	/**
+	 * 新注册分销人数
+	 */
+	@GetMapping("/get/register/distribute/user")
+	public Result<SearchResult<RegisterDistributeOrdersView>> getRegisterDistributeUserDetail(HttpServletRequest request) {
+		SearchResult<RegisterDistributeOrdersView> search = beanSearcher.search(RegisterDistributeOrdersView.class, MapUtils.flatBuilder(request.getParameterMap()).build());
+		search.getDataList().forEach(data->{
+			List<RegisterDistributeOrdersDetailView> ordersDetailViewList = beanSearcher.searchAll(RegisterDistributeOrdersDetailView.class, MapUtils.builder().field(RegisterDistributeOrdersDetailView::getUserId, data.getUserId()).op(Operator.Equal).build());
+			data.setOrderNums(ordersDetailViewList.size());
+			Optional<BigDecimal> money = ordersDetailViewList.stream().map(RegisterDistributeOrdersDetailView::getMoney).reduce(BigDecimal::add);
+			data.setMoney(money.isPresent() ? money.get() : BigDecimal.ZERO);
+		});
+		return GatewayResponse.SUCCESS.newBuilder().toResult(search);
+	}
+
 	/**
 	 * 获取新注册的分销用户订单数据
 	 */
-	@GetMapping("/get/register/distribute/order/detail")
+	@GetMapping("/get/register/distribute/user/order/detail")
 	public Result<SearchResult<RegisterDistributeOrdersDetailView>> getRegisterDistributeOrderDetail(HttpServletRequest request) {
 		SearchResult<RegisterDistributeOrdersDetailView> search = beanSearcher.search(RegisterDistributeOrdersDetailView.class, MapUtils.flatBuilder(request.getParameterMap()).build());
 		search.getDataList().forEach(data -> {