Quellcode durchsuchen

分成收益列表

wwl vor 3 Jahren
Ursprung
Commit
73ad497d7a

+ 50 - 0
twzd-admin/src/main/java/com/miaxis/app/controller/extension/WxExtensionIncomeController.java

@@ -0,0 +1,50 @@
+package com.miaxis.app.controller.extension;
+
+import com.miaxis.common.constant.Constants;
+import com.miaxis.common.core.controller.BaseController;
+import com.miaxis.common.core.domain.Response;
+import com.miaxis.common.core.domain.entity.UserInfo;
+import com.miaxis.common.core.page.ResponsePageInfo;
+import com.miaxis.common.utils.SecurityUtils;
+import com.miaxis.extension.service.IWxExtensionIncomeService;
+import com.miaxis.extension.vo.WxGzhExtensionIncomeVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * @author wwl
+ * @version 1.0
+ * @date 2021/11/29 15:58
+ */
+@RestController
+@RequestMapping(Constants.STUDENT_PREFIX + "/extension/income")
+@Api(tags={"【H5-分成收益】"})
+@AllArgsConstructor
+public class WxExtensionIncomeController extends BaseController {
+
+    private final IWxExtensionIncomeService extensionIncomeService;
+
+    /**
+     * 查询收益列表
+     */
+    @GetMapping(value = "/extensionIncomeList")
+    @ApiOperation("查询收益列表")
+    @ApiImplicitParam(name = "nickName", value = "微信昵称", dataType = "string", required = false)
+    public ResponsePageInfo<WxGzhExtensionIncomeVo> extensionIncomeList(String nickName) {
+        UserInfo userInfo = SecurityUtils.getLoginUser().getStudent();
+        startPage();
+        List<WxGzhExtensionIncomeVo> incomeDtos = extensionIncomeService.extensionIncomeList(userInfo.getOpenid(),nickName);
+        return toResponsePageInfo(incomeDtos);
+    }
+
+
+
+
+}

+ 3 - 3
twzd-admin/src/main/java/com/miaxis/pc/controller/extension/ExtensionIncomeController.java

@@ -5,7 +5,7 @@ import com.miaxis.common.core.domain.Response;
 import com.miaxis.common.core.page.ResponsePageInfo;
 import com.miaxis.extension.domain.WxExtensionIncome;
 import com.miaxis.extension.service.IWxExtensionIncomeService;
-import com.miaxis.extension.vo.WxExtensionIncomeVo;
+import com.miaxis.extension.vo.ExtensionIncomeVo;
 import io.swagger.annotations.*;
 import lombok.AllArgsConstructor;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -38,9 +38,9 @@ public class ExtensionIncomeController extends BaseController {
             @ApiImplicitParam(name = "pageNum",value = "当前页码" ,dataType = "int", paramType = "query", required = false),
             @ApiImplicitParam(name = "pageSize",value = "每页数据量" , dataType = "int", paramType = "query", required = false),
     })
-    public ResponsePageInfo<WxExtensionIncomeVo> list(@ModelAttribute WxExtensionIncomeVo wxExtensionIncome){
+    public ResponsePageInfo<ExtensionIncomeVo> list(@ModelAttribute ExtensionIncomeVo wxExtensionIncome){
         startPage();
-        List<WxExtensionIncomeVo> list = wxExtensionIncomeService.selectWxExtensionIncomeList(wxExtensionIncome);
+        List<ExtensionIncomeVo> list = wxExtensionIncomeService.selectWxExtensionIncomeList(wxExtensionIncome);
         return toResponsePageInfo(list);
     }
 

+ 12 - 2
twzd-service/src/main/java/com/miaxis/extension/mapper/WxExtensionIncomeMapper.java

@@ -2,7 +2,9 @@ package com.miaxis.extension.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.miaxis.extension.domain.WxExtensionIncome;
-import com.miaxis.extension.vo.WxExtensionIncomeVo;
+import com.miaxis.extension.vo.ExtensionIncomeVo;
+import com.miaxis.extension.vo.WxGzhExtensionIncomeVo;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -19,5 +21,13 @@ public interface WxExtensionIncomeMapper extends BaseMapper<WxExtensionIncome> {
      * @param wxExtensionIncome 分成收益
      * @return 分成收益集合
      */
-    List<WxExtensionIncomeVo> selectWxExtensionIncomeList(WxExtensionIncomeVo wxExtensionIncome);
+    List<ExtensionIncomeVo> selectWxExtensionIncomeList(ExtensionIncomeVo wxExtensionIncome);
+
+    /**
+     *
+     * @param openid
+     * @param nickName
+     * @return
+     */
+    List<WxGzhExtensionIncomeVo> extensionIncomeList(@Param("openid")String openid, @Param("nickName")String nickName);
 }

+ 10 - 2
twzd-service/src/main/java/com/miaxis/extension/service/IWxExtensionIncomeService.java

@@ -2,7 +2,8 @@ package com.miaxis.extension.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.miaxis.extension.domain.WxExtensionIncome;
-import com.miaxis.extension.vo.WxExtensionIncomeVo;
+import com.miaxis.extension.vo.ExtensionIncomeVo;
+import com.miaxis.extension.vo.WxGzhExtensionIncomeVo;
 
 import java.util.List;
 
@@ -20,7 +21,7 @@ public interface IWxExtensionIncomeService extends IService<WxExtensionIncome> {
      * @param wxExtensionIncome 分成收益
      * @return 分成收益集合
      */
-    List<WxExtensionIncomeVo> selectWxExtensionIncomeList(WxExtensionIncomeVo wxExtensionIncome);
+    List<ExtensionIncomeVo> selectWxExtensionIncomeList(ExtensionIncomeVo wxExtensionIncome);
 
 
     /**
@@ -32,4 +33,11 @@ public interface IWxExtensionIncomeService extends IService<WxExtensionIncome> {
      */
     void addExtensionIncomeBySourceId(String outTradeNo, String openid, Integer total);
 
+    /**
+     * 查询收益列表
+     * @param openid openid
+     * @param nickName 微信昵称
+     * @return
+     */
+    List<WxGzhExtensionIncomeVo> extensionIncomeList(String openid, String nickName);
 }

+ 14 - 2
twzd-service/src/main/java/com/miaxis/extension/service/impl/WxExtensionIncomeServiceImpl.java

@@ -6,7 +6,8 @@ import com.miaxis.common.core.domain.entity.SysDictData;
 import com.miaxis.extension.domain.WxExtensionIncome;
 import com.miaxis.extension.mapper.WxExtensionIncomeMapper;
 import com.miaxis.extension.service.IWxExtensionIncomeService;
-import com.miaxis.extension.vo.WxExtensionIncomeVo;
+import com.miaxis.extension.vo.ExtensionIncomeVo;
+import com.miaxis.extension.vo.WxGzhExtensionIncomeVo;
 import com.miaxis.spread.domain.WxSpreadRelation;
 import com.miaxis.spread.service.IWxSpreadRelationService;
 import com.miaxis.system.service.ISysDictDataService;
@@ -45,7 +46,7 @@ public class WxExtensionIncomeServiceImpl extends ServiceImpl<WxExtensionIncomeM
      * @return 分成收益
      */
     @Override
-    public List<WxExtensionIncomeVo> selectWxExtensionIncomeList(WxExtensionIncomeVo wxExtensionIncome){
+    public List<ExtensionIncomeVo> selectWxExtensionIncomeList(ExtensionIncomeVo wxExtensionIncome){
         return wxExtensionIncomeMapper.selectWxExtensionIncomeList(wxExtensionIncome);
     }
 
@@ -101,4 +102,15 @@ public class WxExtensionIncomeServiceImpl extends ServiceImpl<WxExtensionIncomeM
         this.saveBatch(extensionIncomes);
     }
 
+    /**
+     * 查询收益列表
+     * @param openid openid
+     * @param nickName 微信昵称
+     * @return
+     */
+    @Override
+    public List<WxGzhExtensionIncomeVo> extensionIncomeList(String openid, String nickName) {
+        return wxExtensionIncomeMapper.extensionIncomeList(openid,nickName);
+    }
+
 }

+ 2 - 2
twzd-service/src/main/java/com/miaxis/extension/vo/WxExtensionIncomeVo.java → twzd-service/src/main/java/com/miaxis/extension/vo/ExtensionIncomeVo.java

@@ -12,8 +12,8 @@ import lombok.Data;
  * @date 2021/11/26 10:33
  */
 @Data
-@ApiModel(value = "WxExtensionIncomeVo", description = "分成收益对象返回参")
-public class WxExtensionIncomeVo {
+@ApiModel(value = "ExtensionIncomeVo", description = "分成收益对象返回参")
+public class ExtensionIncomeVo {
 
     @TableField("nick_name")
     @ApiModelProperty(value = "微信昵称")

+ 49 - 0
twzd-service/src/main/java/com/miaxis/extension/vo/WxGzhExtensionIncomeVo.java

@@ -0,0 +1,49 @@
+package com.miaxis.extension.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 分成收益对象入参
+ * @author wwl
+ * @version 1.0
+ * @date 2021/11/29 17:13
+ */
+@Data
+@ApiModel(value = "WxExtensionIncome", description = "分成收益对象入参")
+public class WxGzhExtensionIncomeVo {
+
+    @TableField("openid")
+    @ApiModelProperty(value = "openid----用户唯一标识(微信)")
+    private String openid;
+
+    @TableField("nick_name")
+    @ApiModelProperty(value = "微信昵称")
+    private String nickName;
+
+    @TableField("head_image")
+    @ApiModelProperty(value = "微信头像地址")
+    private String headImage;
+
+    @TableField("profit_price")
+    @ApiModelProperty(value = "收益金额(分)-----根据层级分成百分比计算")
+    private Integer profitPrice;
+
+    @TableField("percentage")
+    @ApiModelProperty(value = "分成百分比(%)")
+    private String percentage;
+
+    @TableField("hierarchy")
+    @ApiModelProperty(value = "层级,1:一级 ,2:二级(受益人 相对于收益来源人 层级关系)")
+    private String hierarchy;
+
+    @ApiModelProperty(value = "创建时间"  ,hidden = true)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+
+}

+ 27 - 1
twzd-service/src/main/resources/mapper/extension/WxExtensionIncomeMapper.xml

@@ -21,7 +21,7 @@
         select * from wx_extension_income
     </sql>
 
-    <select id="selectWxExtensionIncomeList" resultType="com.miaxis.extension.vo.WxExtensionIncomeVo">
+    <select id="selectWxExtensionIncomeList" resultType="com.miaxis.extension.vo.ExtensionIncomeVo">
         SELECT
             ui.nick_name,
             ui.head_image,
@@ -39,4 +39,30 @@
         </where>
     </select>
 
+    <select id="extensionIncomeList" resultType = "com.miaxis.extension.vo.WxGzhExtensionIncomeVo">
+        SELECT
+            u.openid,
+            u.nick_name,
+            u.head_image,
+            CASE ei.hierarchy
+                WHEN 1 THEN
+                  '一级'
+                WHEN 2 THEN
+                  '二级'
+                ELSE '未知'
+            END AS hierarchy,
+            CONCAT( ei.percentage, '%' ) AS percentage,
+            ei.profit_price,
+            ei.create_time
+        FROM
+            user_info u
+            LEFT JOIN wx_extension_income ei ON ei.source_openid = u.openid
+        <where>
+            ei.beneficiary_openid = #{openid}
+            <if test="nickName != null  and nickName != ''"> and u.nick_name LIKE CONCAT('%',#{nickName},'%')</if>
+        </where>
+        ORDER BY
+	        ei.create_time DESC
+    </select>
+
 </mapper>