From e39d80c3ea8356882fe508f213caec02184fa64c Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 14 Jul 2021 15:00:54 +0800
Subject: [PATCH] add /distrib/headInfo

---
 gc-core/src/main/resources/application.properties                          |    2 
 gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java          |   14 ++++++
 gc-user/src/main/resources/mapper/user/UserHeadRelateMapper.xml            |   11 +++++
 gc-user/src/main/java/com/xzx/gc/user/vo/HeadInfoVo.java                   |   29 ++++++++++++++
 gc-user/src/main/java/com/xzx/gc/user/mapper/UserHeadRelateMapper.java     |    3 +
 gc-user/src/main/java/com/xzx/gc/user/controller/ApiDistribController.java |    7 +++
 6 files changed, 64 insertions(+), 2 deletions(-)

diff --git a/gc-core/src/main/resources/application.properties b/gc-core/src/main/resources/application.properties
index 832738b..b09f250 100644
--- a/gc-core/src/main/resources/application.properties
+++ b/gc-core/src/main/resources/application.properties
@@ -11,7 +11,7 @@
 
 
 #log
-project.log.path=/xzx/logs
+project.log.path=xzx/logs
 logstash.server.url=localhost:4560
 
 #spring
diff --git a/gc-user/src/main/java/com/xzx/gc/user/controller/ApiDistribController.java b/gc-user/src/main/java/com/xzx/gc/user/controller/ApiDistribController.java
index 780dc79..405159a 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/controller/ApiDistribController.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/controller/ApiDistribController.java
@@ -4,6 +4,7 @@
 import com.xzx.gc.model.JsonResult;
 import com.xzx.gc.user.dto.DistribJoinDto;
 import com.xzx.gc.user.service.DistribService;
+import com.xzx.gc.user.vo.HeadInfoVo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
@@ -32,4 +33,10 @@
         return JsonResult.success();
     }
 
+
+    @ApiOperation("获取团长信息")
+    @PostMapping(value = "/distrib/headInfo")
+    public JsonResult<HeadInfoVo> headInfo(HttpServletRequest request) {
+        return JsonResult.success(distribService.findHeadInfo(getUserId(request)));
+    }
 }
diff --git a/gc-user/src/main/java/com/xzx/gc/user/mapper/UserHeadRelateMapper.java b/gc-user/src/main/java/com/xzx/gc/user/mapper/UserHeadRelateMapper.java
index d538306..25015d6 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/mapper/UserHeadRelateMapper.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/mapper/UserHeadRelateMapper.java
@@ -1,10 +1,13 @@
 package com.xzx.gc.user.mapper;
 
 import com.xzx.gc.entity.UserHeadRelate;
+import com.xzx.gc.user.vo.HeadInfoVo;
 import com.xzx.gc.util.GcMapper;
 import org.apache.ibatis.annotations.Param;
 
 public interface UserHeadRelateMapper extends GcMapper<UserHeadRelate> {
 
     UserHeadRelate selectMemberByUserId(@Param("userId") String userId);
+
+    HeadInfoVo selectHeadStatisticsData(@Param("userId") String userId);
 }
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 e06dd0d..87bcbb9 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
@@ -11,6 +11,7 @@
 import com.xzx.gc.user.mapper.SysMessageMapper;
 import com.xzx.gc.user.mapper.UserHeadRelateMapper;
 import com.xzx.gc.user.mapper.UserShareInfoMapper;
+import com.xzx.gc.user.vo.HeadInfoVo;
 import com.xzx.gc.user.vo.ViewSettingVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -28,7 +29,6 @@
 
     @Autowired
     private AccountMapper accountMapper;
-
     @Autowired
     private UserShareInfoMapper userShareInfoMapper;
     @Autowired
@@ -77,4 +77,16 @@
         sysMessage.setFlag("2");
         sysMessageMapper.insert(sysMessage);
     }
+
+    public HeadInfoVo findHeadInfo(String userId) {
+        AccountInfo accountInfo = accountMapper.selectOneByUserId(userId);
+
+        HeadInfoVo headInfoVo = userHeadRelateMapper.selectHeadStatisticsData(userId);
+        if (headInfoVo == null) {
+            headInfoVo = new HeadInfoVo();
+        }
+
+        headInfoVo.setIsHead(accountInfo.getIsHead());
+        return headInfoVo;
+    }
 }
diff --git a/gc-user/src/main/java/com/xzx/gc/user/vo/HeadInfoVo.java b/gc-user/src/main/java/com/xzx/gc/user/vo/HeadInfoVo.java
new file mode 100644
index 0000000..a4e976d
--- /dev/null
+++ b/gc-user/src/main/java/com/xzx/gc/user/vo/HeadInfoVo.java
@@ -0,0 +1,29 @@
+package com.xzx.gc.user.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.models.auth.In;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author wzy
+ * @date 2021-07-14
+ **/
+@Data
+@ApiModel(value = "HeadInfoVo", description = "团长信息接口返回参数类")
+public class HeadInfoVo {
+
+    @ApiModelProperty(value = "是否团长 1-是 2-否")
+    private Integer isHead;
+
+    @ApiModelProperty(value = "环保币")
+    private BigDecimal amount;
+
+    @ApiModelProperty(value = "积分")
+    private BigDecimal score;
+
+    @ApiModelProperty(value = "团队")
+    private Integer cnt;
+}
diff --git a/gc-user/src/main/resources/mapper/user/UserHeadRelateMapper.xml b/gc-user/src/main/resources/mapper/user/UserHeadRelateMapper.xml
index 3715898..0b0db58 100644
--- a/gc-user/src/main/resources/mapper/user/UserHeadRelateMapper.xml
+++ b/gc-user/src/main/resources/mapper/user/UserHeadRelateMapper.xml
@@ -5,4 +5,15 @@
     <select id="selectMemberByUserId" resultType="com.xzx.gc.entity.UserHeadRelate">
         select * from xzx_user_head_relate where user_id=#{userId}
     </select>
+
+
+    <select id="selectHeadStatisticsData" resultType="com.xzx.gc.user.vo.HeadInfoVo">
+        select
+            IFNULL(sum(a.score), 0) score,
+            IFNULL(sum(a.amount), 0) amount,
+            IFNULL(count(1), 0) cnt
+        from xzx_user_head_relate a
+        where a.head_user_id=#{userId}
+        group by a.head_user_id
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1