فهرست منبع

1.新增接口myAssetsIncomeExport资产业务我的提成导出excel

GouGengquan 1 سال پیش
والد
کامیت
496d5c530e

+ 26 - 0
biz-base/src/main/java/com/dayou/controller/BusinessIncomeController.java

@@ -1,8 +1,11 @@
 package com.dayou.controller;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.dayou.common.RestResponse;
+import com.dayou.exception.ErrorCode;
 import com.dayou.service.IBusinessIncomeService;
+import com.dayou.vo.RealFundAssetsStatVO;
 import com.dayou.vo.UserCommissionProdVO;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -10,6 +13,12 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
 /**
  * 业务收入
  *
@@ -50,6 +59,23 @@ public class BusinessIncomeController extends BaseController {
         return RestResponse.data(ret);
     }
 
+    /**
+     * 资产业务我的提成导出excel
+     * @param vo 查询条件
+     */
+    @GetMapping("/my/assets/export")
+    public void myAssetsIncomeExport(HttpServletResponse response, UserCommissionProdVO vo) throws IOException {
+        List<UserCommissionProdVO> list = businessIncomeService.myAssetsIncomeExport(vo);
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        if (ObjectUtil.isNull(vo.getStartDate()) || ObjectUtil.isNull(vo.getEndDate())){
+            ErrorCode.throwBusinessException("起始时间和结束时间必填!", "500");
+        }if (ObjectUtil.isNull(list) || list.isEmpty()){
+            ErrorCode.throwBusinessException("条件筛选结果数量为0,不可导出!", "500");
+        }else {
+            exportPlus(response, "资产我的提成_" + dateFormat.format(new Date()),list, UserCommissionProdVO.class);
+        }
+    }
+
 
 }
 

+ 9 - 0
dao/src/main/java/com/dayou/mapper/BusinessIncomeMapper.java

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.dayou.vo.UserCommissionProdVO;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * 类说明:
  *
@@ -23,4 +25,11 @@ public interface BusinessIncomeMapper {
      * @return Page<UserCommissionProdVO>
      */
     Page<UserCommissionProdVO> myAssetsIncome(Page page, @Param("vo") UserCommissionProdVO vo);
+
+    /**
+     * 资产业务我的提成导出excel
+     * @param vo 查询条件
+     * @return Page<UserCommissionProdVO>
+     */
+    List<UserCommissionProdVO> myAssetsIncomeExport(@Param("vo") UserCommissionProdVO vo);
 }

+ 13 - 3
dao/src/main/resources/mapper/BusinessIncomeMapper.xml

@@ -66,8 +66,8 @@
         order by settleDate DESC
     </select>
 
-    <!--资产业务我的提成-->
-    <select id="myAssetsIncome" resultType="com.dayou.vo.UserCommissionProdVO">
+    <!--资产实收款统计-->
+    <sql id="myAssetsIncomeSql">
         SELECT bpd.id,
                a.name                                                                           AS name,
                fc.claim_amount                                                                  AS realAmount,
@@ -83,7 +83,7 @@
                      fc.claim_amount *  (cd.ratio / 100) * (bpd.performance_distribution / 100),
                      cd.defined_low_limit_amount * (cd.ratio / 100) * (bpd.performance_distribution / 100)
                   )
-                  ,fc.claim_amount *  (bcr.min_ratio / 100) * (bpd.performance_distribution / 100)
+                   ,fc.claim_amount *  (bcr.min_ratio / 100) * (bpd.performance_distribution / 100)
                ) AS commissionAmount,
                IF(bpd.user_type = '评估人员',
                   IF(cd.defined_low_limit_amount &lt; fc.claim_amount,
@@ -148,6 +148,16 @@
                  LEFT JOIN user u ON u.id = bpd.member_id
         WHERE u.id = #{vo.userId}
         ORDER BY settleDate DESC
+    </sql>
+
+    <!--资产业务我的提成-->
+    <select id="myAssetsIncome" resultType="com.dayou.vo.UserCommissionProdVO">
+        <include refid="myAssetsIncomeSql" />
+    </select>
+
+    <!--资产业务我的提成导出excel-->
+    <select id="myAssetsIncomeExport" resultType="com.dayou.vo.UserCommissionProdVO">
+        <include refid="myAssetsIncomeSql" />
     </select>
 
 </mapper>

+ 9 - 0
service/src/main/java/com/dayou/service/IBusinessIncomeService.java

@@ -3,6 +3,8 @@ package com.dayou.service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.dayou.vo.UserCommissionProdVO;
 
+import java.util.List;
+
 /**
  * 类说明:
  *
@@ -20,4 +22,11 @@ public interface IBusinessIncomeService {
      * @return Page<UserCommissionProdVO>
      */
     Page<UserCommissionProdVO> myAssetsIncome(Page page, UserCommissionProdVO vo);
+
+    /**
+     * 资产业务我的提成导出excel
+     * @param vo 查询条件
+     * @return Page<UserCommissionProdVO>
+     */
+    List<UserCommissionProdVO> myAssetsIncomeExport(UserCommissionProdVO vo);
 }

+ 14 - 0
service/src/main/java/com/dayou/service/impl/BusinessIncomeServiceImpl.java

@@ -9,6 +9,8 @@ import com.dayou.vo.UserCommissionProdVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * 类说明:
  *
@@ -42,4 +44,16 @@ public class BusinessIncomeServiceImpl implements IBusinessIncomeService {
         Page<UserCommissionProdVO> ret = businessIncomeMapper.myAssetsIncome(page,vo);
         return ret;
     }
+
+    /**
+     * 资产业务我的提成到处excel
+     * @param vo 查询条件
+     * @return Page<UserCommissionProdVO>
+     */
+    @Override
+    public List<UserCommissionProdVO> myAssetsIncomeExport(UserCommissionProdVO vo) {
+        Long currentUserId = LoginContext.getCurrentUserId();
+        vo.setUserId(currentUserId);
+        return businessIncomeMapper.myAssetsIncomeExport(vo);
+    }
 }