Ver código fonte

Merge remote-tracking branch 'origin/test' into test

yumeng 2 anos atrás
pai
commit
92076c7cca
15 arquivos alterados com 267 adições e 176 exclusões
  1. 4 0
      jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/entity/vo/KuaiShouOperateGroupVo.java
  2. 3 0
      jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/entity/vo/KuaiShouOperateProjectVo.java
  3. 3 0
      jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/entity/vo/KuaiShouOperateVo.java
  4. 1 0
      jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/mapper/xml/MaterialStareMapper.xml
  5. 20 16
      jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/service/impl/MaterialStareServiceImpl.java
  6. 17 3
      jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/controller/FinancePaymentApplicationController.java
  7. 1 1
      jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/controller/FinancePaymentPoolController.java
  8. 3 1
      jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/mapper/FinancePaymentApplicationMapper.java
  9. 44 19
      jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/mapper/xml/FinancePaymentApplicationMapper.xml
  10. 26 21
      jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/mapper/xml/FinancePaymentRechargeApplicationMapper.xml
  11. 5 3
      jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/service/IFinancePaymentApplicationService.java
  12. 1 1
      jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/service/IFinancePaymentRechargeApplicationService.java
  13. 52 45
      jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/service/impl/FinancePaymentApplicationServiceImpl.java
  14. 72 51
      jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/service/impl/FinancePaymentRechargeApplicationServiceImpl.java
  15. 15 15
      jeecg-cloud-module/jeecg-cloud-system-start/src/main/resources/application-dev.yml

+ 4 - 0
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/entity/vo/KuaiShouOperateGroupVo.java

@@ -57,6 +57,10 @@ public class KuaiShouOperateGroupVo implements Serializable {
     @Excel(name = "基建数量",width = 15)
     private long unitNum;//组
 
+    @Excel(name = "新上项目数",width = 15)
+    private Integer newProjectNum;
+
+
 
     public KuaiShouOperateGroupVo() {}
     public KuaiShouOperateGroupVo(String userId,String realname) {

+ 3 - 0
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/entity/vo/KuaiShouOperateProjectVo.java

@@ -122,6 +122,9 @@ public class KuaiShouOperateProjectVo {
     @ApiModelProperty(value = "基建数")
     private Integer newUnitNum;
 
+    @Excel(name = "新上项目数",width = 15)
+    private Integer newProjectNum;
+
     @Excel(name = "上传助手素材数")
     @ApiModelProperty(value = "上传助手素材数")
     private long adspNum;

+ 3 - 0
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/entity/vo/KuaiShouOperateVo.java

@@ -43,6 +43,9 @@ public class KuaiShouOperateVo implements Serializable {
     @Excel(name = "新上组数",width = 15)
     private Integer newUnitNum;
 
+    @Excel(name = "新上项目数",width = 15)
+    private Integer newProjectNum;
+
 
 
 

+ 1 - 0
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/mapper/xml/MaterialStareMapper.xml

@@ -322,6 +322,7 @@
         IFNULL((SUM(abi.new_ad_num) - SUM(abi.trust_campaign_num)),0) as trustUnitNum,
         IFNULL(SUM( abi.new_video_num ),0) AS newVideoNum,
         IFNULL(SUM( abi.new_hot_num ),0) AS newHotNum,
+        IFNULL(SUM( abi.new_cpd_project_num ),0) AS newCpdProjectNum,
         IFNULL(SUM( abi.new_ad_num ),0) AS newUnitNum
         from application.app_bytedance_account_base_info_d abi,
         `jeecg-boot`.ctop_user_allocation u

+ 20 - 16
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/service/impl/MaterialStareServiceImpl.java

@@ -6,19 +6,19 @@ import cn.afterturn.easypoi.excel.entity.ExportParams;
 import com.alibaba.fastjson.JSONObject;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
-import com.google.gson.JsonObject;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.ss.usermodel.Workbook;
-import org.checkerframework.checker.units.qual.A;
 import org.jeecg.common.api.vo.Result;
-import org.jeecg.common.system.entity.SysUser;
 import org.jeecg.common.util.DateUtils;
 import org.jeecg.ctop.material.constants.Check;
-import org.jeecg.ctop.material.entity.vo.*;
+import org.jeecg.ctop.material.entity.vo.KuaiShouAccountPieVo;
+import org.jeecg.ctop.material.entity.vo.KuaiShouOperateAccountVo;
+import org.jeecg.ctop.material.entity.vo.KuaiShouOperateGroupVo;
+import org.jeecg.ctop.material.entity.vo.KuaiShouOperateProjectVo;
+import org.jeecg.ctop.material.entity.vo.KuaiShouOperateVo;
 import org.jeecg.ctop.material.mapper.MaterialStareMapper;
 import org.jeecg.ctop.material.service.MaterialStareService;
-import org.jeecg.ctop.material.utils.FeidNotNullUtils;
 import org.jeecg.ctop.material.utils.LinkUtil;
 import org.jeecg.ctop.material.utils.ListPageUtil;
 import org.springframework.stereotype.Service;
@@ -29,10 +29,14 @@ import java.math.BigDecimal;
 import java.net.URLEncoder;
 import java.text.DecimalFormat;
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import java.util.stream.Collectors;
-import java.util.stream.DoubleStream;
-import java.util.stream.IntStream;
 
 /**
  * 盯盘接口
@@ -493,6 +497,7 @@ public class MaterialStareServiceImpl implements MaterialStareService {
                     //operate.setNewEffectNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("newEffectNum"));//有效
                     operate.setNewCampaignNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("newCampaignNum"));//计划
                     operate.setNewUnitNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("newUnitNum") + newUnitNumNow);//组
+                    operate.setNewProjectNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("newCpdProjectNum"));//组
 
                     //List<KuaiShouOperateVo> userOperate = materialStareMapper.getKuaiShouOperateInfo(lastTimeStart,lastTimeEnd,userSet);
                     List<KuaiShouOperateVo> userOperate = materialStareMapper.getBytedanceOperateInfo(lastTimeStart, lastTimeEnd, ids);
@@ -751,6 +756,7 @@ public class MaterialStareServiceImpl implements MaterialStareService {
                     projectInfo.setNewVideoNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("newVideoNum"));//上新
                     projectInfo.setNewHotNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("newHotNum"));//爆款
                     projectInfo.setNewUnitNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("newUnitNum"));//基建数
+                    projectInfo.setNewProjectNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("newCpdProjectNum"));//基建数
                     //projectInfo.setTrustUnitNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("trustUnitNum"));//智能托管
 
 
@@ -1561,24 +1567,22 @@ public class MaterialStareServiceImpl implements MaterialStareService {
                 //当天
                 int newUnitNumNow = 0;
                 if (startDate == nowDate || entDate == nowDate) {
-                    JSONObject newEffect = new JSONObject();
-                    if (mediaType.equals("1")) {
-                        //查询 当天有效 上新计划 上新组
-                        newEffect = materialStareMapper.getBytedanceAccountBaseByUserId(operatorUserIds, null, null, nowDate, nowDate);
-                    } else {
+                    if (!mediaType.equals("1")) {
                         //查询 当天有效 上新计划 上新组
-                        newEffect = materialStareMapper.getKuaiShouAccountNowBaseByUserId(operatorUserIds, null, null, nowDate, nowDate);
+                        JSONObject newEffect = materialStareMapper.getKuaiShouAccountNowBaseByUserId(operatorUserIds, null, null, nowDate, nowDate);
+                        newUnitNumNow = Check.isNull(newEffect) ? 0 : newEffect.getInteger("newUnitNum");//组
                     }
-                    newUnitNumNow = Check.isNull(newEffect) ? 0 : newEffect.getInteger("newUnitNum");//组
                 }
 
                 if (mediaType.equals("1")) {
+                    JSONObject newEffect = materialStareMapper.getBytedanceAccountBaseByUserId(operatorUserIds, null, null, startDate, entDate);
+                    newUnitNumNow = Check.isNull(newEffect) ? 0 : newEffect.getInteger("newUnitNum");//组
+                    groupVo.setNewProjectNum(Check.isNull(newEffect) ? 0 : newEffect.getInteger("newCpdProjectNum"));
                 } else {
                     //查询 历史上新组
                     JSONObject newEffect = materialStareMapper.getKuaiShouAccountBaseByUserId(operatorUserIds, null, null, startDate, entDate);
                     newUnitNumNow = Check.isNull(newEffect) ? 0 : newEffect.getInteger("newUnitNum") + newUnitNumNow;
                 }
-
                 //基建数量
                 groupVo.setUnitNum(newUnitNumNow);//组
             }

+ 17 - 3
jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/controller/FinancePaymentApplicationController.java

@@ -83,7 +83,7 @@ public class FinancePaymentApplicationController {
             queryWrapper.ge("create_time", application.getStartDate() + " 00:00:00");
             queryWrapper.le("create_time", application.getEndDate() + " 23:59:59");
         }
-        queryWrapper.orderByDesc("update_time");
+        queryWrapper.orderByDesc("create_time");
         Page<FinancePaymentApplication> page = new Page<FinancePaymentApplication>(pageNo, pageSize);
         IPage<FinancePaymentApplication> pageList = financePaymentApplicationService.page(page, queryWrapper);
         result.setSuccess(true);
@@ -199,9 +199,9 @@ public class FinancePaymentApplicationController {
      * 获取广告主
      */
     @GetMapping(value = "/getAdvertisers")
-    public Result<Object> getAdvertisers() {
+    public Result<Object> getAdvertisers(String mediaType) {
         try {
-            return financePaymentApplicationService.getAdvertisers();
+            return financePaymentApplicationService.getAdvertisers(mediaType);
         } catch (Exception e) {
             e.printStackTrace();
         }
@@ -242,4 +242,18 @@ public class FinancePaymentApplicationController {
     }
 
 
+    @GetMapping(value = "/queryCwjsPolicyInfo")
+    public Result<Object> queryCwjsPolicyInfo(String advertiserName, String productName, String type) {
+        try {
+            if (Check.isNull(advertiserName) || Check.isNull(productName) || Check.isNull(type)) {
+                return Result.error("缺少参数");
+            }
+            return financePaymentApplicationService.queryCwjsPolicyInfo(advertiserName, productName, type);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return Result.error("查询异常");
+    }
+
+
 }

+ 1 - 1
jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/controller/FinancePaymentPoolController.java

@@ -73,7 +73,7 @@ public class FinancePaymentPoolController {
             queryWrapper.ge("create_time", pool.getStartDate() + " 00:00:00");
             queryWrapper.le("create_time", pool.getEndDate() + " 23:59:59");
         }
-        queryWrapper.orderByDesc("update_time");
+        queryWrapper.orderByDesc("create_time");
         Page<FinancePaymentPool> page = new Page<FinancePaymentPool>(pageNo, pageSize);
         IPage<FinancePaymentPool> pageList = financePaymentPoolService.page(page, queryWrapper);
         result.setSuccess(true);

+ 3 - 1
jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/mapper/FinancePaymentApplicationMapper.java

@@ -16,7 +16,7 @@ import java.util.List;
  */
 public interface FinancePaymentApplicationMapper extends BaseMapper<FinancePaymentApplication> {
 
-    List<JSONObject> getAdvertisers();
+    List<JSONObject> getAdvertisers(String mediaType);
 
     List<JSONObject> getProductByAdvertiserIds(@Param("advertiserIds") List<String> advertiserIds);
 
@@ -25,4 +25,6 @@ public interface FinancePaymentApplicationMapper extends BaseMapper<FinancePayme
     List<JSONObject> queryAuditProcess(@Param("id") Long id);
 
     FinancePaymentApplication queryInfo(String advertiserId, String productId, String type);
+
+    JSONObject queryCwjsPolicyInfo(String advertiserName, String productName, String type);
 }

+ 44 - 19
jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/mapper/xml/FinancePaymentApplicationMapper.xml

@@ -8,6 +8,7 @@
                  LEFT JOIN
              ctop_advertiser t2 ON t1.advertiser_name = t2.name
         WHERE t2.id is not null
+          AND media_type = #{mediaType}
         GROUP BY t1.advertiser_name
     </select>
 
@@ -78,27 +79,51 @@
         order by update_time desc Limit 1;
     </select>
 
+    <select id="queryCwjsPolicyInfo" resultType="com.alibaba.fastjson.JSONObject">
+        SELECT
+            t1.id as 'id',
+            t1.advertiser_name as 'advertiserName',
+            t1.media_type as 'mediaType',
+            t2.policy_product_name as 'policyProductName',
+            approved_status as 'approvedStatus',
+            advance_pay as 'advancePay',
+            rebate_type as 'rebateType',
+            rebate_rate as 'rebateRate',
+            policy_start_date as 'policyStartDate',
+            policy_end_date as 'policyEndDate'
+        FROM
+            `ctop_cwjs_policy_info` t1
+                LEFT JOIN ctop_cwjs_policy_product t2 ON t1.id = t2.policy_id
+        WHERE t1.advertiser_name =#{advertiserName}
+          AND t1.media_type =#{type}
+          AND t2.policy_product_name =#{productName}
+        ORDER BY policy_start_date desc,policy_end_date desc
+            LIMIT 1
+    </select>
 
     <select id="queryAuditProcess" resultType="com.alibaba.fastjson.JSONObject">
-        (SELECT t1.audit_status as 'auditStatus', t1.revieweder_id as 'userId', t2.realname as 'userName', t4.role_name as 'roleName', t1.approval_content as 'approvalContent', t1.files as 'files', t1.create_time as 'time'
-         FROM finance_payment_application_record t1
-                  LEFT JOIN sys_user t2 ON t1.revieweder_id = t2.id
-                  LEFT JOIN sys_user_role t3 ON t2.id = t3.user_id
-                  LEFT JOIN sys_role t4 ON t3.role_id = t4.id
-         WHERE t1.application_id = #{id}
-         ORDER BY t1.create_time)
-        UNION ALL
-        SELECT t1.audit_status,
-               t1.applicanter_id,
-               t1.applicanter,
-               t4.role_name,
-               t1.approval_content,
-               t1.files,
-               t1.update_time
-        FROM finance_payment_application t1
-                 LEFT JOIN sys_user_role t3 ON t1.applicanter_id = t3.user_id
-                 LEFT JOIN sys_role t4 ON t3.role_id = t4.id
-        WHERE t1.id = #{id}
+        SELECT *
+        FROM (
+                 SELECT t1.audit_status as 'auditStatus', t1.revieweder_id as 'userId', t2.realname as 'userName', t4.role_name as 'roleName', t1.approval_content as 'approvalContent', t1.files as 'files', t1.create_time as 'time'
+                 FROM finance_payment_application_record t1
+                          LEFT JOIN sys_user t2 ON t1.revieweder_id = t2.id
+                          LEFT JOIN sys_user_role t3 ON t2.id = t3.user_id
+                          LEFT JOIN sys_role t4 ON t3.role_id = t4.id
+                 WHERE t1.application_id = #{id}
+                 UNION ALL
+                 SELECT t1.audit_status,
+                        IFNULL(t1.revieweder_id, '-'),
+                        IFNULL(t1.revieweder, '-'),
+                        IFNULL(t4.role_name, '-'),
+                        t1.approval_content,
+                        t1.files,
+                        t1.update_time
+                 FROM finance_payment_application t1
+                          LEFT JOIN sys_user_role t3 ON t1.revieweder_id = t3.user_id
+                          LEFT JOIN sys_role t4 ON t3.role_id = t4.id
+                 WHERE t1.id = #{id}
+             ) t
+        ORDER BY t.time
     </select>
 
 </mapper>

+ 26 - 21
jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/mapper/xml/FinancePaymentRechargeApplicationMapper.xml

@@ -3,25 +3,28 @@
 <mapper namespace="cn.com.ctop.finance.payment.mapper.FinancePaymentRechargeApplicationMapper">
 
     <select id="queryAuditProcess" resultType="com.alibaba.fastjson.JSONObject">
-        (SELECT t1.audit_status as 'auditStatus', t1.recharge_id as 'userId', t2.realname as 'userName', t4.role_name as 'roleName', t1.approval_content as 'approvalContent', t1.files as 'files', t1.create_time as 'time'
-         FROM finance_payment_recharge_application_record t1
-                  LEFT JOIN sys_user t2 ON t1.revieweder_id = t2.id
-                  LEFT JOIN sys_user_role t3 ON t2.id = t3.user_id
-                  LEFT JOIN sys_role t4 ON t3.role_id = t4.id
-         WHERE t1.recharge_id = #{id}
-         ORDER BY t1.create_time)
-        UNION ALL
-        SELECT t1.audit_status,
-               t1.applicanter_id,
-               t1.applicanter,
-               t4.role_name,
-               t1.approval_content,
-               t1.files,
-               t1.update_time
-        FROM finance_payment_recharge_application t1
-                 LEFT JOIN sys_user_role t3 ON t1.applicanter_id = t3.user_id
-                 LEFT JOIN sys_role t4 ON t3.role_id = t4.id
-        WHERE t1.id = #{id}
+        SELECT *
+        FROM (
+                 SELECT t1.audit_status as 'auditStatus', t1.recharge_id as 'userId', t2.realname as 'userName', t4.role_name as 'roleName', t1.approval_content as 'approvalContent', t1.files as 'files', t1.create_time as 'time'
+                 FROM finance_payment_recharge_application_record t1
+                          LEFT JOIN sys_user t2 ON t1.revieweder_id = t2.id
+                          LEFT JOIN sys_user_role t3 ON t2.id = t3.user_id
+                          LEFT JOIN sys_role t4 ON t3.role_id = t4.id
+                 WHERE t1.recharge_id = #{id}
+                 UNION ALL
+                 SELECT t1.audit_status,
+                        IFNULL(t1.revieweder_id, '-'),
+                        IFNULL(t1.revieweder, '-'),
+                        IFNULL(t4.role_name, '-'),
+                        t1.approval_content,
+                        t1.files,
+                        t1.update_time
+                 FROM finance_payment_recharge_application t1
+                          LEFT JOIN sys_user_role t3 ON t1.revieweder_id = t3.user_id
+                          LEFT JOIN sys_role t4 ON t3.role_id = t4.id
+                 WHERE t1.id = #{id}
+             ) t
+        ORDER BY t.time
     </select>
 
 
@@ -44,7 +47,9 @@
         t1.audit_status as 'auditStatus',
         t1.payment_media as 'paymentMedia',
         t1.recharge_type as 'rechargeType',
-        t2.rebate_rate as 'rebateRate'
+        t2.rebate_rate as 'rebateRate',
+        t1.revieweder_id as 'reviewederId',
+        t1.revieweder as 'revieweder'
         FROM finance_payment_recharge_application t1
         LEFT JOIN finance_payment_recharge_account t2 ON t1.id = t2.recharge_id
         <where>
@@ -75,7 +80,7 @@
             </if>
         </where>
         GROUP BY t1.id
-        order by t1.update_time desc
+        order by t1.create_time desc
     </select>
 
 </mapper>

+ 5 - 3
jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/service/IFinancePaymentApplicationService.java

@@ -13,15 +13,15 @@ import org.jeecg.common.api.vo.Result;
  */
 public interface IFinancePaymentApplicationService extends IService<FinancePaymentApplication> {
 
-    void add(JSONObject request);
+    void add(JSONObject request) throws InterruptedException;
 
-    Result<Object> getAdvertisers();
+    Result<Object> getAdvertisers(String mediaType);
 
     Result<Object> getProductByAdvertiserIds(String ids);
 
     Result<Object> updateStatus(FinancePaymentApplication application);
 
-    Result<Object> edit(FinancePaymentApplication application);
+    Result<Object> edit(FinancePaymentApplication application) throws InterruptedException;
 
     Result<Object> queryPoolInfo(String advertiserId, String productId, String type);
 
@@ -30,4 +30,6 @@ public interface IFinancePaymentApplicationService extends IService<FinancePayme
     Result<Object> queryAuditProcess(Long id);
 
     Result<Object> queryInfo(String advertiserId, String productId, String type);
+
+    Result<Object> queryCwjsPolicyInfo(String advertiserName, String productName, String type);
 }

+ 1 - 1
jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/service/IFinancePaymentRechargeApplicationService.java

@@ -20,7 +20,7 @@ public interface IFinancePaymentRechargeApplicationService extends IService<Fina
 
     Result add(JSONObject data);
 
-    Result<Object> edit(JSONObject data);
+    Result<Object> edit(JSONObject data) throws InterruptedException;
 
     Result<Object> updateStatus(JSONObject data);
 

+ 52 - 45
jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/service/impl/FinancePaymentApplicationServiceImpl.java

@@ -22,6 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -54,7 +55,7 @@ public class FinancePaymentApplicationServiceImpl extends ServiceImpl<FinancePay
     private IMessageTemplate messageTemplate;
 
     @Override
-    public void add(JSONObject request) {
+    public void add(JSONObject request) throws InterruptedException {
         FinancePaymentApplication application = JSONObject.parseObject(JSONObject.toJSONString(request), FinancePaymentApplication.class);
         SysUser user = userService.getById(application.getApplicanterId());
         if (!Check.isNull(user)) {
@@ -72,29 +73,28 @@ public class FinancePaymentApplicationServiceImpl extends ServiceImpl<FinancePay
         }
         //获取审核人
         getRevieweder(application);
+        //添加申请记录 0 创建
+        insertRecord(application.getId(), application.getApplicanterId(), "0", null, application.getFiles(), new Date());
+        Thread.sleep(100);
         //添加申请
-        boolean save = this.save(application);
-        if (save) {
-            //添加申请记录 0 创建
-            insertRecord(application.getId(), application.getApplicanterId(), "0", null, application.getFiles());
-            //消息通知内容
-            String message = messageTemplate.getFinancePaymentApplicationMessage(application);
-            //审核人为 财务审核角色
-            if ("financialReview".equals(application.getReviewederId())) {
-                //roleID:32825ea6b43cb61bffa09bf05ad69cf2
-                List<SysUser> users = userService.getUserListByRoleId("32825ea6b43cb61bffa09bf05ad69cf2");
-                for (SysUser u : users) {
-                    sendMessageService.sendMessage(u.getId(), message);
-                }
-            } else {
-                sendMessageService.sendMessage(application.getReviewederId(), message);
+        this.save(application);
+        //消息通知内容
+        String message = messageTemplate.getFinancePaymentApplicationMessage(application);
+        //审核人为 财务审核角色
+        if ("financialReview".equals(application.getReviewederId())) {
+            //roleID:32825ea6b43cb61bffa09bf05ad69cf2
+            List<SysUser> users = userService.getUserListByRoleId("32825ea6b43cb61bffa09bf05ad69cf2");
+            for (SysUser u : users) {
+                sendMessageService.sendMessage(u.getId(), message);
             }
+        } else {
+            sendMessageService.sendMessage(application.getReviewederId(), message);
         }
     }
 
     @Override
-    public Result<Object> getAdvertisers() {
-        return Result.ok(baseMapper.getAdvertisers());
+    public Result<Object> getAdvertisers(String mediaType) {
+        return Result.ok(baseMapper.getAdvertisers(mediaType));
     }
 
     @Override
@@ -114,9 +114,9 @@ public class FinancePaymentApplicationServiceImpl extends ServiceImpl<FinancePay
         if ("3".equals(auditStatus) || "4".equals(auditStatus)) {
             if ("financialReview".equals(reviewederId)) {
                 application.setReviewederId(application.getUserId());
-                SysUser user = userService.getById(application.getApplicanterId());
+                SysUser user = userService.getById(application.getUserId());
                 if (!Check.isNull(user)) {
-                    application.setApplicanter(user.getRealname());
+                    application.setRevieweder(user.getRealname());
                 }
             }
             this.updateById(application);
@@ -127,13 +127,13 @@ public class FinancePaymentApplicationServiceImpl extends ServiceImpl<FinancePay
             }
             application.setFiles(Check.isNull(application.getFiles()) ? "-" : application.getFiles());
             application.setReviewederId(application.getUserId());
-            SysUser user = userService.getById(application.getApplicanterId());
+            SysUser user = userService.getById(application.getUserId());
             if (!Check.isNull(user)) {
-                application.setApplicanter(user.getRealname());
+                application.setRevieweder(user.getRealname());
             }
             this.updateById(application);
             //添加记录
-            insertRecord(application.getId(), application.getUserId(), oldApplication.getAuditStatus(), oldApplication.getApprovalContent(), oldApplication.getFiles());
+            insertRecord(application.getId(), application.getUserId(), oldApplication.getAuditStatus(), oldApplication.getApprovalContent(), oldApplication.getFiles(), oldApplication.getUpdateTime());
             String failMessage = messageTemplate.getFinancePaymentApplicationFailMessage(oldApplication);
             sendMessageService.sendMessage(oldApplication.getApplicanterId(), failMessage);
         }
@@ -141,7 +141,7 @@ public class FinancePaymentApplicationServiceImpl extends ServiceImpl<FinancePay
     }
 
     @Override
-    public Result<Object> edit(FinancePaymentApplication application) {
+    public Result<Object> edit(FinancePaymentApplication application) throws InterruptedException {
         FinancePaymentApplication oldApplication = this.getById(application.getId());
         if (Check.isNull(oldApplication)) {
             return Result.error("未查询到申请");
@@ -156,11 +156,14 @@ public class FinancePaymentApplicationServiceImpl extends ServiceImpl<FinancePay
         if (!Check.isNull(advertiser)) {
             application.setAdvertiserName(advertiser.getName());
         }
+        //添加拒绝记录
+        insertRecord(application.getId(), oldApplication.getReviewederId(), oldApplication.getAuditStatus(), oldApplication.getApprovalContent(), oldApplication.getFiles(), oldApplication.getUpdateTime());
+        //添加修改记录
+        insertRecord(application.getId(), application.getApplicanterId(), "-1", null, application.getFiles(), new Date());
+        Thread.sleep(100);
         //获取审核人
         getRevieweder(application);
         this.updateById(application);
-        //添加修改记录
-        insertRecord(application.getId(), application.getApplicanterId(), "-1", null, application.getFiles());
         //消息通知内容
         String message = messageTemplate.getFinancePaymentApplicationMessage(application);
         //审核人为 财务审核角色
@@ -190,15 +193,15 @@ public class FinancePaymentApplicationServiceImpl extends ServiceImpl<FinancePay
         String auditStatus = oldApplication.getAuditStatus();//4-临时通过
         if ("4".equals(auditStatus)) {
             application.setAuditStatus("3");
-            application.setApprovalContent(Check.isNull(application.getApprovalContent()) ? "补传文件" : application.getApprovalContent());
+            application.setApprovalContent(Check.isNull(application.getApprovalContent()) ? "-" : application.getApprovalContent());
             application.setReviewederId(application.getUserId());
-            SysUser user = userService.getById(application.getApplicanterId());
+            SysUser user = userService.getById(application.getUserId());
             if (!Check.isNull(user)) {
-                application.setApplicanter(user.getRealname());
+                application.setRevieweder(user.getRealname());
             }
             this.updateById(application);
             //添加审核记录
-            insertRecord(application.getId(), oldApplication.getRevieweder(), auditStatus, oldApplication.getApprovalContent(), oldApplication.getFiles());
+            insertRecord(application.getId(), oldApplication.getReviewederId(), auditStatus, oldApplication.getApprovalContent(), oldApplication.getFiles(), oldApplication.getUpdateTime());
         }
         return Result.ok();
     }
@@ -213,6 +216,11 @@ public class FinancePaymentApplicationServiceImpl extends ServiceImpl<FinancePay
         return Result.ok(baseMapper.queryInfo(advertiserId, productId, type));
     }
 
+    @Override
+    public Result<Object> queryCwjsPolicyInfo(String advertiserName, String productName, String type) {
+        return Result.ok(baseMapper.queryCwjsPolicyInfo(advertiserName, productName, type));
+    }
+
     /**
      * 获取审核人
      * 1、磁力金牛    垫款        审核人 --吴睿刚(4aba62011120ac565c7f2b9f8f4aa96b)
@@ -225,38 +233,37 @@ public class FinancePaymentApplicationServiceImpl extends ServiceImpl<FinancePay
         if ("1".equals(rebateType)) {
             //返回财务
             application.setReviewederId("financialReview");
+            application.setRevieweder("-");
         } else {
-            String paymentMedia = application.getPaymentMedia();//媒体类型 1-头条、2-快手、3-磁力金牛、4-广点通
-            if ("3".equals(paymentMedia)) {
+            String paymentMedia = application.getPaymentMedia();//媒体类型 1-头条、2-快手、7-磁力金牛、9-广点通
+            if ("7".equals(paymentMedia)) {
                 //吴睿刚(4aba62011120ac565c7f2b9f8f4aa96b)
-//TODO            application.setReviewederId("4aba62011120ac565c7f2b9f8f4aa96b");
-//                application.setRevieweder("吴睿刚");
-                application.setReviewederId("1b3deb8258e84df994f1371a51cfc14a");
-                application.setRevieweder("赵西安");
+                application.setReviewederId("4aba62011120ac565c7f2b9f8f4aa96b");
+                application.setRevieweder("吴睿刚");
             } else {
                 //临时垫款
                 if ("1".equals(application.getTemporaryAdvances())) {
-//TODO                    application.setReviewederId("b161b7d9793942f980dbfe8c931cd1b0");
-//                    application.setRevieweder("丁兆明");
-                    application.setReviewederId("1506873789009489921");
-                    application.setRevieweder("芮珊珊 ");
+                    application.setReviewederId("b161b7d9793942f980dbfe8c931cd1b0");
+                    application.setRevieweder("丁兆明");
                 } else {
-//TODO                    application.setReviewederId("00d630a129e4487cba5427788a1f08ce");
-//                    application.setRevieweder("赵旺");
-                    application.setReviewederId("113dee46c7df464da78c07a985e92cd1");
-                    application.setRevieweder("于蒙");
+                    application.setReviewederId("00d630a129e4487cba5427788a1f08ce");
+                    application.setRevieweder("赵旺");
                 }
             }
         }
     }
 
-    private void insertRecord(Long applicationId, String operatorId, String status, String txt, String files) {
+    private void insertRecord(Long applicationId, String operatorId, String status, String txt, String files, Date time) {
+        if ("1".equals(status)) {
+            return;
+        }
         FinancePaymentApplicationRecord record = new FinancePaymentApplicationRecord();
         record.setApplicationId(applicationId);
         record.setReviewederId(operatorId);
         record.setAuditStatus(status);
         record.setApprovalContent(txt);
         record.setFiles(files);
+        record.setCreateTime(time);
         recordMapper.insert(record);
     }
 

+ 72 - 51
jeecg-boot-module-system/src/main/java/cn/com/ctop/finance/payment/service/impl/FinancePaymentRechargeApplicationServiceImpl.java

@@ -3,6 +3,7 @@ package cn.com.ctop.finance.payment.service.impl;
 import cn.com.ctop.common.module.entity.Advertiser;
 import cn.com.ctop.common.module.entity.Product;
 import cn.com.ctop.common.module.entity.Project;
+import cn.com.ctop.common.module.entity.UserAllocation;
 import cn.com.ctop.common.module.service.IMessageTemplate;
 import cn.com.ctop.common.module.service.IProductService;
 import cn.com.ctop.common.module.service.IProjectService;
@@ -32,6 +33,7 @@ import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -83,37 +85,42 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
 
     @Override
     public Result add(JSONObject data) {
-        JSONArray list = data.getJSONArray("list");
-        FinancePaymentRechargeApplication recharge = JSONObject.parseObject(JSONObject.toJSONString(data), FinancePaymentRechargeApplication.class);
-        FinancePaymentPool pool = financePaymentPoolService.getIdByUniqueKey(recharge.getAdvertiserId(), recharge.getProductId(), recharge.getPaymentMedia());
-        if (Check.isNull(pool) || Check.isNull(list)) {
-            return Result.error("数据异常");
-        }
-        SysUser user = userService.getById(recharge.getApplicanterId());
-        if (!Check.isNull(user)) {
-            recharge.setApplicanter(user.getRealname());
-        }
-        Product product = productService.getById(recharge.getProductId());
-        if (!Check.isNull(product)) {
-            recharge.setProductName(product.getProductName());
-            data.put("productName", product.getProductName());
-        }
-        List<String> advertiserIds = Arrays.asList(recharge.getAdvertiserId().split(","));
-        Advertiser advertiser = advertiserService.getById(advertiserIds.get(0));
-        if (!Check.isNull(advertiser)) {
-            recharge.setAdvertiserName(advertiser.getName());
-            data.put("advertiserName", advertiser.getName());
-        }
-        Project project = projectService.getById(recharge.getProjectId());
-        if (!Check.isNull(project)) {
-            recharge.setProjectName(project.getProjectName());
-            data.put("projectName", project.getProjectName());
-        }
-        //判断审核人和状态
-        getReviewedRole(recharge);
-        recharge.setPoolId(pool.getId());
-        boolean save = this.save(recharge);
-        if (save) {
+        try {
+            JSONArray list = data.getJSONArray("list");
+            FinancePaymentRechargeApplication recharge = JSONObject.parseObject(JSONObject.toJSONString(data), FinancePaymentRechargeApplication.class);
+            FinancePaymentPool pool = financePaymentPoolService.getIdByUniqueKey(recharge.getAdvertiserId(), recharge.getProductId(), recharge.getPaymentMedia());
+            if (Check.isNull(pool) || Check.isNull(list)) {
+                return Result.error("数据异常");
+            }
+            SysUser user = userService.getById(recharge.getApplicanterId());
+            if (!Check.isNull(user)) {
+                recharge.setApplicanter(user.getRealname());
+            }
+            Product product = productService.getById(recharge.getProductId());
+            if (!Check.isNull(product)) {
+                recharge.setProductName(product.getProductName());
+                data.put("productName", product.getProductName());
+            }
+            List<String> advertiserIds = Arrays.asList(recharge.getAdvertiserId().split(","));
+            Advertiser advertiser = advertiserService.getById(advertiserIds.get(0));
+            if (!Check.isNull(advertiser)) {
+                recharge.setAdvertiserName(advertiser.getName());
+                data.put("advertiserName", advertiser.getName());
+            }
+            Project project = projectService.getById(recharge.getProjectId());
+            if (!Check.isNull(project)) {
+                recharge.setProjectName(project.getProjectName());
+                data.put("projectName", project.getProjectName());
+            }
+            //判断审核人和状态
+            getReviewedRole(recharge);
+            recharge.setPoolId(pool.getId());
+            //添加申请记录
+            insertRecord(recharge.getId(), recharge.getApplicanterId(), "0", null, recharge.getFiles(), new Date());
+
+            Thread.sleep(100);
+
+            this.save(recharge);
             //添加充值账户信息
             List<FinancePaymentRechargeAccount> accountList = new ArrayList<>();
             String accountIds = "";
@@ -123,7 +130,10 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
                 account.setRechargeId(recharge.getId());
                 account.setProjectId(recharge.getProjectId());
                 account.setAccountId(obj.getLong("accountId"));
-                account.setAccountName(userAllocationService.getByAccountId(obj.getLong("accountId")).getAuthName());
+                UserAllocation allocation = userAllocationService.getByAccountId(obj.getLong("accountId"));
+                if (!Check.isNull(allocation)) {
+                    account.setAccountName(allocation.getAuthName());
+                }
                 account.setCashAmount(obj.getBigDecimal("cashAmount"));
                 account.setReceivedAmount(obj.getBigDecimal("receivedAmount"));
                 account.setRebateType(obj.getString("rebateType"));
@@ -132,8 +142,6 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
                 accountIds += obj.getLong("accountId") + ",";
             }
             rechargeAccountService.saveBatch(accountList);
-            //添加申请记录
-            insertRecord(recharge.getId(), recharge.getApplicanterId(), "0", null, recharge.getFiles());
             //消息通知内容
             String message = null;
             List<SysUser> users = null;
@@ -150,14 +158,17 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
             for (SysUser u : users) {
                 sendMessageService.sendMessage(u.getId(), message);
             }
+        } catch (InterruptedException e) {
+            e.printStackTrace();
         }
         return Result.ok();
     }
 
     @Override
-    public Result<Object> edit(JSONObject data) {
+    public Result<Object> edit(JSONObject data) throws InterruptedException {
         JSONArray list = data.getJSONArray("list");
         FinancePaymentRechargeApplication recharge = JSONObject.parseObject(JSONObject.toJSONString(data), FinancePaymentRechargeApplication.class);
+        FinancePaymentRechargeApplication oldRecharge = this.getById(recharge.getId());
         FinancePaymentPool pool = financePaymentPoolService.getIdByUniqueKey(recharge.getAdvertiserId(), recharge.getProductId(), recharge.getPaymentMedia());
         if (Check.isNull(pool) || Check.isNull(list)) {
             return Result.error("数据异常");
@@ -185,6 +196,13 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
         //判断审核人和状态
         getReviewedRole(recharge);
         recharge.setPoolId(pool.getId());
+
+        //添 拒绝记录
+        insertRecord(recharge.getId(), oldRecharge.getReviewederId(), oldRecharge.getAuditStatus(), oldRecharge.getApprovalContent(), oldRecharge.getFiles(), oldRecharge.getUpdateTime());
+        //添加申请记录 -1 退回修改
+        insertRecord(recharge.getId(), recharge.getApplicanterId(), "-1", null, recharge.getFiles(), new Date());
+        Thread.sleep(100);
+
         this.updateById(recharge);
 
         //添加充值账户信息
@@ -196,7 +214,10 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
             account.setRechargeId(recharge.getId());
             account.setProjectId(recharge.getProjectId());
             account.setAccountId(obj.getLong("accountId"));
-            account.setAccountName(userAllocationService.getByAccountId(obj.getLong("accountId")).getAuthName());
+            UserAllocation acco = userAllocationService.getByAccountId(obj.getLong("accountId"));
+            if (!Check.isNull(acco)) {
+                account.setAccountName(acco.getAuthName());
+            }
             account.setCashAmount(obj.getBigDecimal("cashAmount"));
             account.setReceivedAmount(obj.getBigDecimal("receivedAmount"));
             account.setRebateType(obj.getString("rebateType"));
@@ -206,9 +227,6 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
         }
         rechargeAccountService.delByRechargeId(recharge.getId());
         rechargeAccountService.saveBatch(accountList);
-
-        //添加申请记录 -1 退回修改
-        insertRecord(recharge.getId(), recharge.getApplicanterId(), "-1", null, recharge.getFiles());
         //消息通知内容
         String message = null;
         List<SysUser> users = null;
@@ -240,12 +258,10 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
         String reviewederId = oldRecharge.getReviewederId();
         String auditStatus = recharge.getAuditStatus();//1-待审核、2-待充值、3-充值完成、4-临时充值、5-审核拒绝
         if ("2".equals(auditStatus)) {
-            recharge.setReviewederId(recharge.getUserId());
-            SysUser user = userService.getById(recharge.getUserId());
-            if (!Check.isNull(user)) {
-                recharge.setRevieweder(user.getRealname());
-            }
-            this.updateById(recharge);
+            recharge.setReviewederId("meidaManager");
+            recharge.setRevieweder("-");
+            //添加审核记录 1:财务审核完成
+            insertRecord(recharge.getId(), recharge.getUserId(), "6", recharge.getApprovalContent(), recharge.getFiles(), new Date());
             JSONObject oldData = JSONObject.parseObject(JSONObject.toJSONString(oldRecharge)).toJavaObject(JSONObject.class);
             JSONObject amount = rechargeAccountService.queryAmounts(recharge.getId());
             if (!Check.isNull(amount)) {
@@ -257,8 +273,7 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
             for (SysUser u : users) {
                 sendMessageService.sendMessage(u.getId(), message);
             }
-            //添加审核记录 1:财务审核完成
-            insertRecord(recharge.getId(), recharge.getUserId(), "1", recharge.getApprovalContent(), recharge.getFiles());
+            this.updateById(recharge);
         } else if ("3".equals(auditStatus) || "4".equals(auditStatus)) {
             recharge.setReviewederId(recharge.getUserId());
             SysUser user = userService.getById(recharge.getUserId());
@@ -279,7 +294,7 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
             }
             this.updateById(recharge);
             //添加审核记录
-            insertRecord(recharge.getId(), recharge.getUserId(), oldRecharge.getAuditStatus(), oldRecharge.getApprovalContent(), oldRecharge.getFiles());
+            insertRecord(recharge.getId(), recharge.getUserId(), oldRecharge.getAuditStatus(), oldRecharge.getApprovalContent(), oldRecharge.getFiles(), oldRecharge.getUpdateTime());
             JSONObject oldData = JSONObject.parseObject(JSONObject.toJSONString(oldRecharge)).toJavaObject(JSONObject.class);
             String failMessage = null;
             List<SysUser> users = null;
@@ -307,7 +322,7 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
         String auditStatus = oldApplication.getAuditStatus();//4-临时通过
         if ("4".equals(auditStatus)) {
             recharge.setAuditStatus("3");
-            recharge.setApprovalContent(Check.isNull(recharge.getApprovalContent()) ? "补传文件" : recharge.getApprovalContent());
+            recharge.setApprovalContent(Check.isNull(recharge.getApprovalContent()) ? "-" : recharge.getApprovalContent());
             recharge.setReviewederId(recharge.getUserId());
             SysUser user = userService.getById(recharge.getUserId());
             if (!Check.isNull(user)) {
@@ -315,7 +330,7 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
             }
             this.updateById(recharge);
             //添加审核记录
-            insertRecord(recharge.getId(), oldApplication.getRevieweder(), auditStatus, oldApplication.getApprovalContent(), oldApplication.getFiles());
+            insertRecord(recharge.getId(), oldApplication.getReviewederId(), auditStatus, oldApplication.getApprovalContent(), oldApplication.getFiles(), oldApplication.getUpdateTime());
         }
         return Result.ok();
     }
@@ -329,21 +344,27 @@ public class FinancePaymentRechargeApplicationServiceImpl extends ServiceImpl<Fi
         String financialReview = recharge.getFinancialReview();
         if (!Check.isNull(financialReview) && "1".equals(financialReview)) {
             recharge.setReviewederId("financialReview");
+            recharge.setRevieweder("-");
             recharge.setAuditStatus("1");//待审核
         } else {
             //媒介
             recharge.setReviewederId("meidaManager");
+            recharge.setRevieweder("-");
             recharge.setAuditStatus("2");//待充值
         }
     }
 
-    private void insertRecord(Long rechargeId, String operatorId, String status, String txt, String files) {
+    private void insertRecord(Long rechargeId, String operatorId, String status, String txt, String files, Date time) {
+        if ("1".equals(status) || "2".equals(status)) {
+            return;
+        }
         FinancePaymentRechargeApplicationRecord record = new FinancePaymentRechargeApplicationRecord();
         record.setRechargeId(rechargeId);
         record.setReviewederId(operatorId);
         record.setAuditStatus(status);
         record.setApprovalContent(txt);
         record.setFiles(files);
+        record.setCreateTime(time);
         recordMapper.insert(record);
     }
 

+ 15 - 15
jeecg-cloud-module/jeecg-cloud-system-start/src/main/resources/application-dev.yml

@@ -50,8 +50,8 @@ spring:
   ## quartz定时任务,采用数据库方式
   #json 时间戳统一转换
   jackson:
-    date-format:   yyyy-MM-dd HH:mm:ss
-    time-zone:   GMT+8
+    date-format: yyyy-MM-dd HH:mm:ss
+    time-zone: GMT+8
   aop:
     proxy-target-class: true
   #配置freemarker
@@ -81,10 +81,10 @@ spring:
     #    username: readonly
     #    password: hcst@2021
     #---------------------测试库
-    url: jdbc:mysql://139.186.165.84:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&allowMultiQueries=true
-    username: hcst
-    password: hcst@2020
-    driver-class-name: com.mysql.jdbc.Driver
+    #    url: jdbc:mysql://139.186.165.84:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&allowMultiQueries=true
+    #    username: hcst
+    #    password: hcst@2020
+    #    driver-class-name: com.mysql.jdbc.Driver
     druid:
       stat-view-servlet:
         loginUsername: admin
@@ -121,15 +121,15 @@ spring:
         connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
       datasource:
         master:
-#---------------------线上库
-          url: jdbc:mysql://139.186.27.96:3390/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=GMT%2B8
-          username: data
-          password: hcst@2021
-#---------------------测试库
-#          url: jdbc:mysql://139.186.165.84:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&allowMultiQueries=true
-#          username: hcst
-#          password: hcst@2020
-#          driver-class-name: com.mysql.jdbc.Driver
+          #---------------------线上库
+          #          url: jdbc:mysql://139.186.27.96:3390/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=GMT%2B8
+          #          username: data
+          #          password: hcst@2021
+          #---------------------测试库
+          url: jdbc:mysql://139.186.165.84:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&allowMultiQueries=true&serverTimezone=Asia/Shanghai
+          username: hcst
+          password: hcst@2020
+          driver-class-name: com.mysql.jdbc.Driver
   #redis 配置
   redis:
     database: 0