Procházet zdrojové kódy

利润表调整图片大小

yangzian před 3 roky
rodič
revize
d0c0f796bb

+ 64 - 4
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/settlement/mapper/xml/ReportSettlementMapper.xml

@@ -174,7 +174,7 @@
 
     <!-- 查询 头条利润表 所用账户-->
     <select id="getProfitBytedanceAccountCost" resultType="java.util.LinkedHashMap">
-        SELECT
+      <!--  SELECT
         d.advertiser_id AS accountId,
         SUM( d.cost ) AS cost,
         SUM( d.cash_cost ) AS cashCost,
@@ -198,13 +198,40 @@
             </if>
         GROUP BY
             d.advertiser_id;
+-->
+
+        SELECT
+        d.advertiser_id AS accountId,
+        SUM( d.cost ) AS cost,
+        SUM( d.cash_cost ) AS cashCost,
+        SUM( d.reward_cost ) rewardCost,
+        p.id AS productId,
+        p.product_name AS productName
+        FROM
+        ctop_account_transaction_day d,
+        ctop_cwjs_settlement_info c,
+        ctop_product p
+        WHERE
+        d.advertiser_id = c.account_id
+        AND c.product_id = p.id
+        <if test="accountId !=null and accountId != ''">
+            AND d.advertiser_id = #{accountId}
+        </if>
+        <if test="startTime !=null and startTime != ''">
+            AND d.date &gt;= #{startTime}
+        </if>
+        <if test="endTime !=null and endTime != ''">
+            AND d.date &lt;= #{endTime}
+        </if>
+        GROUP BY
+        d.advertiser_id;
 
     </select>
 
 
     <!-- 查询 头条利润表 总花费-->
     <select id="getProfitBytedanceCost" resultType="java.util.LinkedHashMap">
-        SELECT
+       <!-- SELECT
         d.advertiser_id AS accountId,
         SUM( d.cost ) AS cost,
         SUM( d.cash_cost ) AS cashCost,
@@ -226,6 +253,25 @@
             <if test="endTime !=null and endTime != ''">
                 AND d.date &lt;= #{endTime}
             </if>
+-->
+
+        SELECT
+        d.advertiser_id AS accountId,
+        SUM( d.cost ) AS cost,
+        SUM( d.cash_cost ) AS cashCost,
+        SUM( d.reward_cost ) rewardCost
+        FROM
+        ctop_account_transaction_day d
+        <if test="accountId !=null and accountId != ''">
+            AND d.advertiser_id = #{accountId}
+        </if>
+        <if test="startTime !=null and startTime != ''">
+            AND d.date &gt;= #{startTime}
+        </if>
+        <if test="endTime !=null and endTime != ''">
+            AND d.date &lt;= #{endTime}
+        </if>
+
     </select>
 
 
@@ -312,7 +358,7 @@
 
     <!-- 查询 头条利润表  广告主和运营和运营所属区域-->
     <select id="getProfitBytedanceOperate" resultType="java.util.LinkedHashMap">
-        select
+        <!--select
         u.advertiser_id,
         u.advertiser_name as advertiserName,
         u.user_id,
@@ -326,7 +372,21 @@
               <if test="accountId !=null and accountId != ''">
                   AND u.account_id = #{accountId}
               </if>
-          </where>
+          </where>-->
+        SELECT
+        c.create_user_id AS operateUserId,
+        p.user_name AS operateName,
+        IFNULL( p.nick_name, '' ) AS operateArea,
+        d.NAME AS advertiserName
+        FROM
+        ctop_cwjs_settlement_file_info c
+        LEFT JOIN user_company p on c.create_user_id = p.user_id
+        LEFT JOIN ctop_advertiser d on d.id = c.advertiser_id
+        where c.del_flag = 0
+        <if test="accountId !=null and accountId != ''">
+            AND c.account_id = #{accountId}
+        </if>
+
     </select>
 
 

+ 14 - 15
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/settlement/service/serviceImpl/ReportSettlementServiceImpl.java

@@ -224,7 +224,7 @@ public class ReportSettlementServiceImpl implements IReportSettlementService {
                         ImageIO.write(bufferImg, imagePath.substring(imagePath.lastIndexOf(".") + 1), byteArrayOut);
                         int startIndex = settlementList.size() +6;
                         //anchor主要用于设置图片的属性
-                        HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 255, 255, (short) 2, startIndex+(5*j)+50*j, (short) 10, startIndex+(5*j)+50*(j+1));
+                        HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 255, 255, (short) 0, startIndex+(5*j)+50*j, (short) 25, startIndex+(5*j)+50*(j+1));
                         //HSSFClientAnchor anchor2 = new HSSFClientAnchor(0, 0, 255, 255, (short) 5, settlementList.size() + 40, (short) 10, 40 * 2);
                         anchor.setAnchorType(ClientAnchor.AnchorType.DONT_MOVE_AND_RESIZE);
                         //插入图片
@@ -421,7 +421,7 @@ public class ReportSettlementServiceImpl implements IReportSettlementService {
                         ImageIO.write(bufferImg, imagePath.substring(imagePath.lastIndexOf(".") + 1), byteArrayOut);
                         //anchor主要用于设置图片的属性
                         int startIndex = settlementList.size()+7;
-                        HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 255, 255, (short) 2, startIndex+(5*j)+50*j, (short) 10, startIndex+(5*j)+50*(j+1));
+                        HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 255, 255, (short) 0, startIndex+(5*j)+50*j, (short) 25, startIndex+(5*j)+50*(j+1));
                         //HSSFClientAnchor anchor2 = new HSSFClientAnchor(0, 0, 255, 255, (short) 5, settlementList.size() + 40, (short) 10, 40 * 2);
                         anchor.setAnchorType(ClientAnchor.AnchorType.DONT_MOVE_AND_RESIZE);
                         //插入图片
@@ -478,7 +478,7 @@ public class ReportSettlementServiceImpl implements IReportSettlementService {
             }
             List<ProfitReportBytedanceVo> resultList = new ArrayList<>(list.size());
             for (Map<String, Object> map : list) {
-                //查看该账户 状态信息
+              /*  //查看该账户 状态信息
                 QueryWrapper<CtopCwjsSettlementInfo> settlementAccountQw = new QueryWrapper<>();
                 settlementAccountQw.eq("account_id",map.get("accountId"));
                 //账户状态 0-开 1-关
@@ -488,7 +488,7 @@ public class ReportSettlementServiceImpl implements IReportSettlementService {
                 List<CtopCwjsSettlementInfo> settlementAccountList =  settlementInfoMapper.selectList(settlementAccountQw);
                 if (Check.isNull(settlementAccountList)){
                     continue;
-                }
+                }*/
 
                 ProfitReportBytedanceVo voSource = new ProfitReportBytedanceVo();
                 //查询销售
@@ -530,19 +530,18 @@ public class ReportSettlementServiceImpl implements IReportSettlementService {
                     ProfitReportBytedanceVo vo = new ProfitReportBytedanceVo();
                     //使用政策 返点类型和比例
                     Map<String,Object>  policyRateMap = reportSettlementMapper.getProfitRebate(map.get("productName")+"",stringMap.get("startDate"),stringMap.get("endDate"));
-                  //  vo.setRebateType(policyRateMap.getOrDefault("rebateType","")+"");//返点类型
-
-                    if(policyRateMap.getOrDefault("rebateType","").equals("0")){
-                        vo.setRebateType("返现");//返点类型
-                    }else if (policyRateMap.getOrDefault("rebateType","").equals("1")){
-                        vo.setRebateType("返货");
-                    }else if (policyRateMap.getOrDefault("rebateType","").equals("2")){
-                        vo.setRebateType("返现+返货");
+                    if (!Check.isNull(policyRateMap)){
+                        if(Integer.valueOf(policyRateMap.get("rebateType").toString())== 0){
+                            vo.setRebateType("返现");//返点类型
+                        }else if (Integer.valueOf(policyRateMap.get("rebateType").toString())== 1){
+                            vo.setRebateType("返货");
+                        }else if (Integer.valueOf(policyRateMap.get("rebateType").toString())== 2){
+                            vo.setRebateType("返现+返货");
+                        }
+                        vo.setRebateRate(policyRateMap.getOrDefault("rebateRate","")+"%");//返点比列
                     }else {
                         vo.setRebateType("");
                     }
-
-                    vo.setRebateRate(policyRateMap.getOrDefault("rebateRate","")+"");//返点比列
                     // 时间段内 账户流水 信息
                     List<Map<String,Object>> listAccount = reportSettlementMapper.getProfitBytedanceCost(map.get("accountId")+"",stringMap.get("startDate"),stringMap.get("endDate"));
                     listAccount.removeAll(Collections.singleton(null));
@@ -681,7 +680,7 @@ public class ReportSettlementServiceImpl implements IReportSettlementService {
                         }else if (Integer.valueOf(policyRateMap.get("rebateType").toString())== 2){
                             vo.setRebateType("返现+返货");
                         }
-                        vo.setRebateRate(policyRateMap.getOrDefault("rebateRate","")+"");//返点比列
+                        vo.setRebateRate(policyRateMap.getOrDefault("rebateRate","")+"%");//返点比列
                     }else {
                         vo.setRebateType("");
                     }