From bf9a238e4b6db75c28ee9efae265f36f33301d83 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 15 Jul 2021 16:15:04 +0800
Subject: [PATCH] 202107015
---
gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java | 3
gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java | 9 ++
gc-user/src/main/resources/mapper/user/AccountMapper.xml | 144 +++++++++++++++++++++++++++--------
gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java | 8 +
gc-user/src/main/java/com/xzx/gc/user/dto/DistribDataInfoDto.java | 7 +
gc-user/src/main/java/com/xzx/gc/user/vo/DistribDataInfoVo.java | 20 +++++
gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java | 22 +++++
7 files changed, 178 insertions(+), 35 deletions(-)
diff --git a/gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java b/gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java
index 4769299..23bd701 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java
@@ -7,10 +7,12 @@
import com.xzx.gc.common.request.BaseController;
import com.xzx.gc.entity.AccountInfo;
import com.xzx.gc.entity.RedPaperRule;
+import com.xzx.gc.entity.UserHeadRelate;
import com.xzx.gc.model.JsonResult;
import com.xzx.gc.user.dto.*;
import com.xzx.gc.user.mapper.AccountMapper;
import com.xzx.gc.user.mapper.RedPaperRuleMapper;
+import com.xzx.gc.user.mapper.UserHeadRelateMapper;
import com.xzx.gc.user.service.DistribService;
import com.xzx.gc.user.vo.*;
import io.swagger.annotations.Api;
@@ -38,6 +40,9 @@
@Autowired
private AccountMapper accountMapper;
+
+ @Autowired
+ private UserHeadRelateMapper userHeadRelateMapper;
/**
* 查看分銷系統设置详情
@@ -108,6 +113,12 @@
|| accountInfo.getIsProhibit() == "1"){
return JsonResult.failMessage("账户已冻结!");
}
+ //团员不能当团长
+ String userId = accountInfo.getUserId();
+ UserHeadRelate userHeadRelate = userHeadRelateMapper.selectMemberByUserId(userId);
+ if(ObjectUtil.isNotEmpty(userHeadRelate)){
+ return JsonResult.failMessage("账户不能申请成为团长!");
+ }
distribService.adddistrib(model);
OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request))
.methodName(Constants.USER_MODUL_NAME).operateAction("分銷系統管理--新增团长-"+id).build();
@@ -176,7 +187,16 @@
return JsonResult.success("操作成功!");
}
- @ApiOperation(value = "团长数据")
+ @ApiOperation(value = "团长数据--头部")
+ @ApiResponses(
+ @ApiResponse(code = 200, message = "success", response = DistribDataInfoVo.class)
+ )
+ @PostMapping(value = Constants.ADMIN_VIEW_PREFIX + "/distrib/distribDataInfo.json")
+ public JsonResult<DistribDataInfoVo> distribDataInfo(@RequestBody DistribDataInfoDto distribDataInfoDto) {
+ return JsonResult.success(distribService.distribDataInfo(distribDataInfoDto));
+ }
+
+ @ApiOperation(value = "团长数据--列表")
@ApiResponses(
@ApiResponse(code = 200, message = "success", response = DistribDataListVo.class)
)
diff --git a/gc-user/src/main/java/com/xzx/gc/user/dto/DistribDataInfoDto.java b/gc-user/src/main/java/com/xzx/gc/user/dto/DistribDataInfoDto.java
new file mode 100644
index 0000000..dd3d8ef
--- /dev/null
+++ b/gc-user/src/main/java/com/xzx/gc/user/dto/DistribDataInfoDto.java
@@ -0,0 +1,7 @@
+package com.xzx.gc.user.dto;
+
+import lombok.Data;
+
+@Data
+public class DistribDataInfoDto {
+}
diff --git a/gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java b/gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java
index 012e5a0..1a1ab2d 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java
@@ -23,6 +23,9 @@
@ApiModelProperty(value="结束时间")
private Date reserveTimeEnd;
+ @ApiModelProperty(value = "是否禁用 0:未冻结,1:冻结")
+ private String isProhibit;
+
@ApiModelProperty(value="第几页",required=true)
private int page;
diff --git a/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java b/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java
index 5029c4f..fddab8c 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java
@@ -62,6 +62,12 @@
List<JhyOrderItems> selectOrderById(@Param("orderId")Long orderId);
- List<DistribDataListVo> distribDataList(DistribDataListDto distribDataListDto);
+ List<DistribDataListVo> distribDataList(@Param("record")DistribDataListDto distribDataListDto);
+
+ String selectOrderByHeadUserId(@Param("accountId")String accountId);
+
+ String selectJDSLByHeadUserId(@Param("accountId")String id);
+
+ DistribDataInfoVo selectDistribDataInfoVo();
}
diff --git a/gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java b/gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java
index 861f591..a2078b6 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java
@@ -325,6 +325,11 @@
if(CollUtil.isNotEmpty(distribDataListVos)){
for(DistribDataListVo distribDataListVo : distribDataListVos){
if(ObjectUtil.isNotEmpty(distribDataListVo)){
+ String id = distribDataListVo.getId();
+ String kg = accountMapper.selectOrderByHeadUserId(id);
+ distribDataListVo.setKg(kg);
+ String jdsl = accountMapper.selectJDSLByHeadUserId(id);
+ distribDataListVo.setJdsl(jdsl);
}
}
}
@@ -336,4 +341,8 @@
data.put("code", 0);
return data;
}
+
+ public DistribDataInfoVo distribDataInfo(DistribDataInfoDto distribDataInfoDto) {
+ return accountMapper.selectDistribDataInfoVo();
+ }
}
diff --git a/gc-user/src/main/java/com/xzx/gc/user/vo/DistribDataInfoVo.java b/gc-user/src/main/java/com/xzx/gc/user/vo/DistribDataInfoVo.java
new file mode 100644
index 0000000..51813a9
--- /dev/null
+++ b/gc-user/src/main/java/com/xzx/gc/user/vo/DistribDataInfoVo.java
@@ -0,0 +1,20 @@
+package com.xzx.gc.user.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "DistribDataInfoVo", description = "返回参数类")
+public class DistribDataInfoVo {
+
+ @ApiModelProperty(value = "团长人数")
+ private Integer cnt;
+
+ @ApiModelProperty(value = "累计收益")
+ private String amount;
+
+ @ApiModelProperty(value = "累计交易订单")
+ private String orderCnt;
+
+}
diff --git a/gc-user/src/main/resources/mapper/user/AccountMapper.xml b/gc-user/src/main/resources/mapper/user/AccountMapper.xml
index 1d90ccf..41fcbc0 100644
--- a/gc-user/src/main/resources/mapper/user/AccountMapper.xml
+++ b/gc-user/src/main/resources/mapper/user/AccountMapper.xml
@@ -191,6 +191,9 @@
<if test="record.phone != null and record.phone != ''">
and b.mobile_phone like concat('%',#{record.phone},'%')
</if>
+ <if test="record.phone != null and record.phone != ''">
+ and a.is_prohibit = #{record.isProhibit}
+ </if>
<if test="record.reserveTimeStart != null">
and b.regist_time >= #{record.reserveTimeStart}
</if>
@@ -237,7 +240,8 @@
a.order_no orderNo,
a.score scoreReward,
a.amount amountReward,
- sum(c.score) amount
+ sum(c.score) score,
+ sum(c.score/40) amount
FROM
xzx_user_head_details a
LEFT JOIN xzx_jhy_order b on a.order_no = b.order_no
@@ -256,38 +260,112 @@
</select>
<select id="distribDataList" resultType="com.xzx.gc.user.vo.DistribDataListVo">
- SELECT
- a.account_id id,
- b.nick_name nickname,
- b.mobile_phone phone,
- b.regist_time registTime,
- a.is_head isHead,
- (select IFNULL(count(1), 0) from xzx_user_head_relate where head_user_id = a.user_id) cnt,
- (select IFNULL(count(1), 0) from xzx_user_head_details where head_user_id = a.user_id) orderCnt,
- (select IFNULL(sum(amount), 0) from xzx_user_head_relate where head_user_id = a.user_id) amount,
- (select IFNULL(sum(score), 0) from xzx_user_head_relate where head_user_id = a.user_id ) score,
- a.is_prohibit isProhibit
- FROM
- xzx_account_info a
- LEFT JOIN xzx_user_info b on a.user_id = b.user_id
- <where>
- 1=1
- and a.is_head = 1
- <if test="record.name != null and record.name != ''">
- and b.nick_name like concat('%',#{record.name},'%')
- </if>
- <if test="record.phone != null and record.phone != ''">
- and b.mobile_phone like concat('%',#{record.phone},'%')
- </if>
- <if test="record.reserveTimeStart != null">
- and b.regist_time >= #{record.reserveTimeStart}
- </if>
+ SELECT
+ a.account_id id,
+ b.nick_name nickname,
+ b.mobile_phone phone,
+ b.regist_time registTime,
+ a.is_head isHead,
+ (select IFNULL(count(1), 0) from xzx_user_head_relate where head_user_id = a.user_id) cnt,
+ (select IFNULL(count(1), 0) from xzx_user_head_details where head_user_id = a.user_id) orderCnt,
+ (select IFNULL(sum(amount), 0) from xzx_user_head_relate where head_user_id = a.user_id) amount,
+ (select IFNULL(sum(score), 0) from xzx_user_head_relate where head_user_id = a.user_id ) score,
+ a.is_prohibit isProhibit
+ FROM
+ xzx_account_info a
+ LEFT JOIN xzx_user_info b on a.user_id = b.user_id
+ <where>
+ 1=1
+ and a.is_head = 1
+ <if test="record.name != null and record.name != ''">
+ and b.nick_name like concat('%',#{record.name},'%')
+ </if>
+ <if test="record.phone != null and record.phone != ''">
+ and b.mobile_phone like concat('%',#{record.phone},'%')
+ </if>
+ <if test="record.reserveTimeStart != null">
+ and b.regist_time >= #{record.reserveTimeStart}
+ </if>
- <if test="record.reserveTimeEnd != null">
- and b.regist_time <= #{record.reserveTimeEnd}
- </if>
- </where>
- order by id desc
-</select>
+ <if test="record.reserveTimeEnd != null">
+ and b.regist_time <= #{record.reserveTimeEnd}
+ </if>
+ </where>
+ order by id desc
+ </select>
+
+ <select id="selectOrderByHeadUserId" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(weight),0) as kg
+ FROM
+ xzx_jhy_order_items
+ WHERE
+ order_id in (
+ SELECT
+ id
+ FROM
+ xzx_jhy_order
+ WHERE
+ order_no in (
+ SELECT
+ order_no
+ FROM
+ xzx_user_head_details
+ WHERE
+ head_user_id = (
+ SELECT
+ user_id
+ FROM
+ xzx_account_info
+ WHERE
+ account_id = #{accountId}
+ )
+ )
+ )
+ </select>
+
+ <select id="selectJDSLByHeadUserId" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(a.weight),0) as jdsl
+ FROM
+ xzx_jhy_order_items a
+ left join xzx_sys_environmental_info b on a.item_type = b.id
+ WHERE
+ b.item_unit = '台' and
+ a.order_id in (
+ SELECT
+ id
+ FROM
+ xzx_jhy_order
+ WHERE
+ order_no in (
+ SELECT
+ order_no
+ FROM
+ xzx_user_head_details
+ WHERE
+ head_user_id = (
+ SELECT
+ user_id
+ FROM
+ xzx_account_info
+ WHERE
+ account_id = #{accountId}
+ )
+ )
+ )
+ </select>
+
+ <select id="selectDistribDataInfoVo" resultType="com.xzx.gc.user.vo.DistribDataInfoVo">
+ SELECT
+ IFNULL(count(1), 0) cnt,
+ SUM((select IFNULL(count(1), 0) from xzx_user_head_details where head_user_id = a.user_id) ) orderCnt,
+ SUM((select IFNULL(sum(amount), 0) from xzx_user_head_details where head_user_id = a.user_id) ) amount
+ FROM
+ xzx_account_info a
+ where
+ 1=1
+ and a.is_head = 1
+ </select>
</mapper>
--
Gitblit v1.9.1