Selaa lähdekoodia

标签用户订单详情

zoujiajian 2 vuotta sitten
vanhempi
sitoutus
712d0e860b

+ 2 - 0
netflix-dao/src/main/java/com/cyksj/mapper/OrderDonMapper.java

@@ -68,4 +68,6 @@ public interface OrderDonMapper extends BaseMapper<OrderDon> {
 	UserOrderDetailView getTagUserData(@Param("tagIdStr") String tagIdStr, @Param("startTime") String startTime, @Param("endTime") String endTime);
 
 	Page<UserOrderDetailView> getTagUserDataPage(@Param("page") Page<UserOrderDetailView> page, @Param("tagIdStr") String tagIdStr, @Param("startTime") String startTime, @Param("endTime") String endTime);
+
+	Page<CorpTagUserOrderDataView> getTagUserTimeOrderData(@Param("page") Page<Object> objectPage, @Param("tagIdStr") String tagIdStr, @Param("toDate") String toDate, @Param("startTime") String startTime, @Param("endTime") String endTime);
 }

+ 37 - 0
netflix-dao/src/main/java/com/cyksj/model/views/CorpTagUserOrderDataView.java

@@ -0,0 +1,37 @@
+package com.cyksj.model.views;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 项目名: yhlxj2
+ * 文件名: CorpTagUserOrderDataView
+ * 创建者: JavaZou
+ * 创建时间:2024/1/11 14:57
+ */
+@Getter
+@Setter
+public class CorpTagUserOrderDataView {
+	private Long orderId;
+
+	private Long userId;
+
+	private String nickname;
+
+	private String orderNo;
+
+	private Long goodsId;
+
+	private String title;
+
+	private Long skuId;
+
+	private String specVal;
+
+	private BigDecimal money;
+
+	private Date createdTime;
+}

+ 30 - 0
netflix-dao/src/main/resources/mapper/OrderDonMapper.xml

@@ -359,4 +359,34 @@
         group by date_format(o.created_time,'%Y-%m-%d')
         order by date_format(o.created_time,'%Y-%m-%d') desc
     </select>
+
+    <select id="getTagUserTimeOrderData" resultType="com.cyksj.model.views.CorpTagUserOrderDataView">
+        select o.id as order_id,o.user_id,
+        (select nickname from user u where u.id = o.user_id limit 1),
+        o.order_no,o.goods_id,g.title,o.sku_id,sku.spec_val,
+        o.money/100 as money,o.created_time
+        from (select
+        cu.user_id
+        from (select relation_id
+        from `corp_user_tag` ct
+        where tag_id = #{tagIdStr}
+        <if test="startTime != null">
+            and ct.created_time >= #{startTime}
+        </if>
+        <if test="endTime != null">
+            and ct.created_time &lt; #{endTime}
+        </if>) s
+        left join corp_user_follow_relation cufr on cufr.id = s.relation_id
+        left join corp_user_auth ca on ca.external_userid = cufr.corp_user_id
+        left join corp_user cu on cu.id = ca.corp_user_id where cu.user_id != 0) s inner join order_don o on o.user_id =
+        s.user_id
+        and o.status not in ('close', 'noPayment','refund')
+        and o.money > 0
+        <if test="toDate != null and toDate != ''">
+            and date_format(o.created_time,'%Y-%m-%d') = #{toDate}
+        </if>
+        left join goods_don g on g.id = o.goods_id
+        left join goods_don_sku sku on sku.id = o.sku_id
+        order by o.created_time desc
+    </select>
 </mapper>

+ 2 - 0
netflix-service/src/main/java/com/cyksj/service/corp/CorpTagService.java

@@ -46,4 +46,6 @@ public interface CorpTagService {
 	CorpTagGroupView addGroup(CorpTagGroupView tagGroup) throws Exception;
 
 	UserOrderDetailView getTagUserData(Integer start, Integer limit, String tagIdStr, String startTime, String endTime);
+
+	Page<CorpTagUserOrderDataView> getTagUserTimeOrderData(Integer start, Integer limit, String tagIdStr, String toDate, String startTime, String endTime);
 }

+ 6 - 0
netflix-service/src/main/java/com/cyksj/service/corp/impl/CorpTagServiceImpl.java

@@ -434,4 +434,10 @@ public class CorpTagServiceImpl implements CorpTagService {
 		u.setRecords(records);
 		return u;
 	}
+
+	@Override
+	public Page<CorpTagUserOrderDataView> getTagUserTimeOrderData(Integer start, Integer limit, String tagIdStr, String toDate, String startTime, String endTime) {
+		Page<CorpTagUserOrderDataView> records = orderDonMapper.getTagUserTimeOrderData(new Page<>(start, limit), tagIdStr, toDate, startTime, endTime);
+		return records;
+	}
 }

+ 12 - 2
netflix-web/src/main/java/com/cyksj/web/controller/manage/corp/CorpTagController.java

@@ -14,6 +14,7 @@ import com.cyksj.model.views.*;
 import com.cyksj.service.corp.CorpTagService;
 import com.cyksj.web.util.EasyExcelUtils;
 import com.ejlchina.searcher.BeanSearcher;
+import com.ejlchina.searcher.SearchResult;
 import com.ejlchina.searcher.util.MapUtils;
 import lombok.RequiredArgsConstructor;
 import org.springframework.web.bind.annotation.*;
@@ -120,8 +121,8 @@ public class CorpTagController {
 	 * 标签管理详情
 	 */
 	@GetMapping("/get/corpTag")
-	public Result<Page<CorpTagBackView>> getCorpTagBackView(@RequestParam(defaultValue = "0") Integer start, @RequestParam(defaultValue = "10") Integer limit, @RequestParam(required = false, defaultValue = "1") Integer type, String name,  String[] groupIds, String sort, String order) throws Exception {
-		Page<CorpTagBackView> corpTagBackViews = corpTagService.getCorpTagBackView(start, limit, type, name,groupIds, sort, order);
+	public Result<Page<CorpTagBackView>> getCorpTagBackView(@RequestParam(defaultValue = "0") Integer start, @RequestParam(defaultValue = "10") Integer limit, @RequestParam(required = false, defaultValue = "1") Integer type, String name, String[] groupIds, String sort, String order) throws Exception {
+		Page<CorpTagBackView> corpTagBackViews = corpTagService.getCorpTagBackView(start, limit, type, name, groupIds, sort, order);
 		return GatewayResponse.SUCCESS.newBuilder().toResult(corpTagBackViews);
 	}
 
@@ -178,4 +179,13 @@ public class CorpTagController {
 		UserOrderDetailView userOrderDetailView = corpTagService.getTagUserData(start, limit, tagIdStr, startTime, endTime);
 		return GatewayResponse.SUCCESS.newBuilder().toResult(userOrderDetailView);
 	}
+
+	/**
+	 * 今日标签用户订单详情
+	 */
+	@GetMapping("/get/tagUser/time/orderData")
+	public Result<Page<CorpTagUserOrderDataView>> getTagUserTimeOrderData(@RequestParam(defaultValue = "1") Integer start, @RequestParam(defaultValue = "10") Integer limit, @RequestParam(required = true) String tagIdStr, String toDate, String startTime, String endTime) {
+		Page<CorpTagUserOrderDataView> page = corpTagService.getTagUserTimeOrderData(start, limit, tagIdStr, toDate, startTime, endTime);
+		return GatewayResponse.SUCCESS.newBuilder().toResult(page);
+	}
 }