Browse Source

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

jiequan.bi 5 năm trước cách đây
mục cha
commit
28051bc024
17 tập tin đã thay đổi với 38 bổ sung480 xóa
  1. 0 52
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/service/impl/BidWarningServiceImpl.java
  2. 0 50
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/service/impl/CpaBidWarningServiceImpl.java
  3. 3 5
      jeecg-boot-module-system/src/main/resources/application-wps.yml
  4. 17 38
      jeecg-boot-module-system/src/test/java/org/jeecg/SampleTest.java
  5. 0 1
      module-common/src/main/java/cn/com/ctop/common/module/service/ISendMessageService.java
  6. 0 2
      module-common/src/main/java/cn/com/ctop/common/module/service/impl/FileInfoServiceImpl.java
  7. 0 18
      module-common/src/main/java/cn/com/ctop/common/module/service/impl/SendMessageServiceImpl.java
  8. 0 2
      module-ctop/src/main/java/cn/com/ctop/manage/modules/material/service/impl/MaterialUploadServiceImpl.java
  9. 0 102
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/impl/AccountWarningServiceImpl.java
  10. 0 49
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/material/service/impl/KuaishouBidWarningServiceImpl.java
  11. 0 1
      module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/controller/ByteDanceAdvertisePlanController.java
  12. 8 0
      module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/controller/ByteDanceCampaignController.java
  13. 5 13
      module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/entity/ByteDanceCampaign.java
  14. 2 7
      module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/entity/ByteDanceCreative.java
  15. 3 7
      module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/service/impl/ByteDanceCampaignServiceImpl.java
  16. 0 46
      module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/service/impl/BytedanceBidWarningServiceImpl.java
  17. 0 87
      module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/report/service/impl/ByteDanceHourlyAccountWarningServiceImpl.java

+ 0 - 52
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/service/impl/BidWarningServiceImpl.java

@@ -5,7 +5,6 @@ import cn.com.ctop.common.module.entity.Project;
 import cn.com.ctop.common.module.entity.UserAllocation;
 import cn.com.ctop.common.module.mapper.MailLogMapper;
 import cn.com.ctop.common.module.mapper.ProjectMapper;
-import cn.com.ctop.common.module.service.ICorpFeishuUserService;
 import cn.com.ctop.common.module.service.IUserAllocationService;
 import cn.com.ctop.common.module.utils.BigDecimalUtil;
 import cn.com.ctop.common.module.utils.Check;
@@ -13,9 +12,7 @@ import cn.com.ctop.common.module.utils.CorpWexinUtils;
 import cn.com.ctop.common.module.utils.SendMailUtil;
 import cn.com.ctop.kuaishou.modules.batch.mapper.KuaiShouGroupMapper;
 import cn.com.ctop.toutiao.modules.material.service.IByteDanceAdvertisePlanService;
-import cn.com.feishu.provider.MessageProvider;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.util.DateUtils;
@@ -83,7 +80,6 @@ public class BidWarningServiceImpl implements IBidWarningService {
 
                             if (!Check.isNull(unitWarning)) {
                                 sendMessage(project.getMediaId(), accountId, projectId, project.getProjectName(), userAllocation.getAuthName(), unitWarning, maxBid);
-                                sendFeishumessage(project.getMediaId(), accountId, projectId, project.getProjectName(), userAllocation.getAuthName(), unitWarning, maxBid);
                             }
                         }
                     }
@@ -94,55 +90,7 @@ public class BidWarningServiceImpl implements IBidWarningService {
         } catch (Exception e) {
             e.printStackTrace();
         }
-
-
     }
-    private void sendFeishumessage(String mediaId, Long accountId, Long projectId, String projectName, String authName, List<String> unitWarning, Long maxBid) throws Exception {
-        String createTime = DateUtils.getNowDate("yyyy-MM-dd");
-        Integer count = mailLogMapper.selectCountByAccountIdAndDate(accountId, createTime, Integer.getInteger(mediaId));
-        StringBuilder text = new StringBuilder();
-        String s = "";
-        for (int i = 0; i < unitWarning.size(); i++) {
-            s += unitWarning.get(i) + "," + "\n\r";
-
-        }
-        text.append("项目出价预警").append("\n\r").append("您的项目:").append(projectName + ",").append("\n\r")
-                .append("授权名称为:" + authName + " 下的,").append("\n\r").append(s)
-                .append("大于项目设置的最高出价:").append(maxBid / 1000).append(" 元! 请您及时调整。");
-        if (count < 3) {
-            List<String> mailList = mailLogMapper.selectMailList(projectId);
-            String subject;
-            if ("1".equals(mediaId)) {
-                subject = "头条-广告计划出价预警";
-
-            } else {
-                subject = "快手-广告组出价预警";
-            }
-            try {
-                SendMailUtil.sendMail(mailList, subject, text.toString());
-                MailLog mailLog = new MailLog();
-                mailLog.setAccountId(accountId);
-                mailLog.setMailType(1);
-                mailLog.setContent(text.toString());
-                mailLog.setSendEmil(JSON.toJSONString(mailList));
-                mailLog.setSubject(subject);
-                mailLogMapper.insert(mailLog);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-
-        JSONArray openIds = corpFeishuUserService.getOpenIdByParams(projectId);
-        if(null == openIds||openIds.isEmpty()){
-            log.error("该项目下运营飞书账号尚未绑定邮箱=>projectId:{}",projectId);
-            return;
-        }
-        MessageProvider.batchSend(null,openIds,null,text.toString());
-    }
-
-    @Autowired
-    private ICorpFeishuUserService corpFeishuUserService;
-
     private void sendMessage(String mediaId, Long accountId, Long projectId, String projectName, String authName, List<String> unitWarning, Long maxBid) {
         String createTime = DateUtils.getNowDate("yyyy-MM-dd");
         Integer count = mailLogMapper.selectCountByAccountIdAndDate(accountId, createTime, 1);

+ 0 - 50
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/service/impl/CpaBidWarningServiceImpl.java

@@ -4,7 +4,6 @@ import cn.com.ctop.common.module.entity.MailLog;
 import cn.com.ctop.common.module.entity.Project;
 import cn.com.ctop.common.module.entity.UserAllocation;
 import cn.com.ctop.common.module.mapper.MailLogMapper;
-import cn.com.ctop.common.module.service.ICorpFeishuUserService;
 import cn.com.ctop.common.module.service.IUserAllocationService;
 import cn.com.ctop.common.module.utils.BigDecimalUtil;
 import cn.com.ctop.common.module.utils.Check;
@@ -12,9 +11,7 @@ import cn.com.ctop.common.module.utils.CorpWexinUtils;
 import cn.com.ctop.common.module.utils.SendMailUtil;
 import cn.com.ctop.kuaishou.modules.batch.mapper.KuaiShouGroupMapper;
 import cn.com.ctop.toutiao.modules.material.service.IByteDanceAdvertisePlanService;
-import cn.com.feishu.provider.MessageProvider;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.util.DateUtils;
 import org.jeecg.modules.ctop.service.ICpaBidWarningService;
@@ -40,8 +37,6 @@ public class CpaBidWarningServiceImpl implements ICpaBidWarningService {
     private MailLogMapper mailLogMapper;
     @Autowired
     private IByteDanceAdvertisePlanService byteDanceAdvertisePlanService;
-    @Autowired
-    private ICorpFeishuUserService corpFeishuUserService;
 
     /**
      * 预警
@@ -67,7 +62,6 @@ public class CpaBidWarningServiceImpl implements ICpaBidWarningService {
 
                     if (!Check.isNull(unitWarning)) {
                         sendMessage(project.getMediaId(), accountId, project.getId(), project.getProjectName(), userAllocation.getAuthName(), unitWarning, maxDeepCpaBid);
-                        sendFeishuMessage(project.getMediaId(), accountId, project.getId(), project.getProjectName(), userAllocation.getAuthName(), unitWarning, maxDeepCpaBid);
                     }
                 }
             }
@@ -77,50 +71,6 @@ public class CpaBidWarningServiceImpl implements ICpaBidWarningService {
         }
     }
 
-    private void sendFeishuMessage(String mediaId, Long accountId, Long projectId, String projectName, String authName, List<String> unitWarning, BigDecimal maxCpaBid) throws Exception {
-        BigDecimal maxBid = BigDecimalUtil.divideBigDecimal(maxCpaBid, new BigDecimal(1000));
-        String createTime = DateUtils.getNowDate("yyyy-MM-dd");
-        Integer count = mailLogMapper.selectCountByAccountIdAndDate(accountId, createTime, Integer.getInteger(mediaId));
-        StringBuilder text = new StringBuilder();
-        String s = "";
-        for (int i = 0; i < unitWarning.size(); i++) {
-            s += unitWarning.get(i) + "," + "\n\r";
-
-        }
-        text.append("项目深度出价预警").append("\n\r").append("您的项目:").append(projectName + ",").append("\n\r")
-                .append("授权名称为:" + authName + " 下的,").append("\n\r").append(s)
-                .append("大于项目设置的最高深度转化出价:").append(maxBid).append(" 元! 请您及时调整。");
-        if (count < 3) {
-            List<String> mailList = mailLogMapper.selectMailList(projectId);
-            String subject;
-            if ("1".equals(mediaId)) {
-                subject = "头条-广告计划深度转化出价预警";
-
-            } else {
-                subject = "快手-广告组深度转化出价预警";
-            }
-
-            try {
-                SendMailUtil.sendMail(mailList, subject, text.toString());
-                MailLog mailLog = new MailLog();
-                mailLog.setAccountId(accountId);
-                mailLog.setMailType(1);
-                mailLog.setContent(text.toString());
-                mailLog.setSendEmil(JSON.toJSONString(mailList));
-                mailLog.setSubject(subject);
-                mailLogMapper.insert(mailLog);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-        JSONArray openIds = corpFeishuUserService.getOpenIdByParams(projectId);
-        if(null == openIds||openIds.isEmpty()){
-            log.error("该项目下运营飞书账号尚未绑定邮箱=>projectId:{}",projectId);
-            return;
-        }
-        MessageProvider.batchSend(null,openIds,null,text.toString());
-    }
-
     private void sendMessage(String mediaId, Long accountId, Long projectId, String projectName, String authName, List<String> unitWarning, BigDecimal maxCpaBid) {
         BigDecimal maxBid = BigDecimalUtil.divideBigDecimal(maxCpaBid, new BigDecimal(1000));
         String createTime = DateUtils.getNowDate("yyyy-MM-dd");

+ 3 - 5
jeecg-boot-module-system/src/main/resources/application-wps.yml

@@ -56,11 +56,8 @@ spring:
   autoconfigure:
     exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
   datasource:
-#    url: jdbc:mysql://139.186.27.96:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
-#    username: hcst
-#    password: test@20190531
-#    driver-class-name: com.mysql.jdbc.Driver
-    url: jdbc:mysql://39.106.184.70:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
+    url: jdbc:mysql://139.186.27.96:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
+#    url: jdbc:mysql://39.106.184.70:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
     username: hcst
     password: test@20190531
     driver-class-name: com.mysql.jdbc.Driver
@@ -99,6 +96,7 @@ spring:
         connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
       datasource:
         master:
+#          url: jdbc:mysql://139.186.27.96:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
           url: jdbc:mysql://39.106.184.70:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
           username: hcst
           password: test@20190531

+ 17 - 38
jeecg-boot-module-system/src/test/java/org/jeecg/SampleTest.java

@@ -6,24 +6,23 @@ import cn.com.ctop.common.module.service.IBindAccountLoginService;
 import cn.com.ctop.common.module.service.ICtopOauthTokenService;
 import cn.com.ctop.common.module.utils.CloudVideoProcessUtil;
 import cn.com.ctop.common.module.utils.CtopAdConstant;
+import cn.com.ctop.crawler.modules.pangolin.entity.PangolinApp;
 import cn.com.ctop.crawler.modules.pangolin.service.PangolinAppService;
 import cn.com.ctop.crawler.modules.pangolin.service.PangolinCrawlerService;
 import cn.com.ctop.crawler.modules.pangolin.service.PangolinLoginService;
 import cn.com.ctop.kuaishou.modules.graphql.service.IKuaishouWebInterfaceService;
 import cn.com.ctop.toutiao.modules.material.service.IByteDanceAdvertiserDataService;
+import cn.com.ctop.toutiao.modules.material.service.IByteDanceCampaignService;
 import cn.com.ctop.toutiao.modules.report.service.IReportService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.util.DateUtils;
-import org.jeecg.modules.ctop.entity.KuaishouMatcostAccountMay;
-import org.jeecg.modules.ctop.service.IKuaishouMatcostAccountMayService;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
-import java.math.BigDecimal;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -123,33 +122,6 @@ public class SampleTest {
         }
     }
 
-    @Autowired
-    private IKuaishouMatcostAccountMayService matcostAccountMayService;
-    @Test
-    public void testLoadMinDate(){
-        loadData();
-    }
-
-    private void loadData(){
-        KuaishouMatcostAccountMay matcostAccountMay = matcostAccountMayService.getOne();
-        if(null!=matcostAccountMay){
-            BigDecimal cost = matcostAccountMayService.getCostByParams(matcostAccountMay);
-            if(null!=cost&&!cost.toString().trim().equals("")){
-                matcostAccountMayService.updateCostByCode(matcostAccountMay.getVideoCode(),cost);
-            }else{
-                matcostAccountMayService.updateCostByCode(matcostAccountMay.getVideoCode(),BigDecimal.ZERO);
-            }
-//            String minDate = matcostAccountMayService.getMinDate(matcostAccountMay.getVideoCode());
-//            if(null == minDate||minDate.trim().equals("")){
-//                matcostAccountMayService.updateByCode(matcostAccountMay.getVideoCode(),"-");
-//            }else{
-//                matcostAccountMayService.updateByCode(matcostAccountMay.getVideoCode(),minDate);
-//            }
-
-            loadData();
-        }
-    }
-
     @Test
     public void testPangolinData() {
         QueryWrapper<BindAccountLogin> queryWrapper = new QueryWrapper<>();
@@ -160,17 +132,24 @@ public class SampleTest {
         if (list != null && !list.isEmpty()) {
             for (BindAccountLogin bindAccountLogin : list) {
                 pangolinCrawlerService.getChannelList(bindAccountLogin);
-//                pangolinCrawlerService.getActivationList(bindAccountLogin, DateUtils.getNowDate("yyyy-MM-dd"), 1);
-//                pangolinCrawlerService.getCheckList(bindAccountLogin);
-//                QueryWrapper<PangolinApp> queryWrapper1 = new QueryWrapper<>();
-//                queryWrapper1.eq("account_name", bindAccountLogin.getAccountName());
-//                List<PangolinApp> appList = pangolinAppService.list(queryWrapper1);
-//                if (appList != null && !appList.isEmpty()) {
-//                    appList.forEach(pangolinApp -> pangolinCrawlerService.getRealTimeList(bindAccountLogin, pangolinApp.getAppId()));
-//                }
+                pangolinCrawlerService.getActivationList(bindAccountLogin, DateUtils.getNowDate("yyyy-MM-dd"), 1);
+                pangolinCrawlerService.getCheckList(bindAccountLogin);
+                QueryWrapper<PangolinApp> queryWrapper1 = new QueryWrapper<>();
+                queryWrapper1.eq("account_name", bindAccountLogin.getAccountName());
+                List<PangolinApp> appList = pangolinAppService.list(queryWrapper1);
+                if (appList != null && !appList.isEmpty()) {
+                    appList.forEach(pangolinApp -> pangolinCrawlerService.getRealTimeList(bindAccountLogin, pangolinApp.getAppId()));
+                }
             }
         }
     }
+    @Autowired
+    private IByteDanceCampaignService campaignService;
+    @Test
+    public void testGetCampaign(){
+        CtopOauthToken token = oauthTokenService.getOauthTokenByAccountId("1649600126891015");
+        campaignService.getAdvertiserCampaign(token,"1672261893872756",null);
+    }
 }
 
 

+ 0 - 1
module-common/src/main/java/cn/com/ctop/common/module/service/ISendMessageService.java

@@ -2,5 +2,4 @@ package cn.com.ctop.common.module.service;
 
 public interface ISendMessageService {
     void sendMessage(String id, String text);
-    void sendFeishuMessage(String userId, String text);
 }

+ 0 - 2
module-common/src/main/java/cn/com/ctop/common/module/service/impl/FileInfoServiceImpl.java

@@ -73,9 +73,7 @@ public class FileInfoServiceImpl extends ServiceImpl<FileInfoMapper, FileInfo> i
                 } else {
                     UserAllocation allocation = userAllocationService.getByAccountId(Long.valueOf(accountId));
                     String message = messageTemplate.getMaterialSyncTemplate(allocation.getProjectName(), Long.valueOf(accountId), allocation.getAuthName(), materialName, jsonObject.getString("message"));
-                    String feishuMessage = messageTemplate.getFeishuMaterialSyncTemplate(allocation.getProjectName(), Long.valueOf(accountId), allocation.getAuthName(), materialName, jsonObject.getString("message"));
                     sendMessageService.sendMessage(userId, message);
-                    sendMessageService.sendFeishuMessage(userId,feishuMessage);
                 }
 
             }else{

+ 0 - 18
module-common/src/main/java/cn/com/ctop/common/module/service/impl/SendMessageServiceImpl.java

@@ -1,13 +1,10 @@
 package cn.com.ctop.common.module.service.impl;
 
-import cn.com.ctop.common.module.entity.CorpFeishuUser;
 import cn.com.ctop.common.module.mapper.MailLogMapper;
 import cn.com.ctop.common.module.service.ICorpFeishuUserService;
 import cn.com.ctop.common.module.service.ISendMessageService;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.CorpWexinUtils;
-import cn.com.feishu.provider.MessageProvider;
-import com.alibaba.fastjson.JSONArray;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -27,19 +24,4 @@ public class SendMessageServiceImpl implements ISendMessageService {
             log.info("消息发送成功,userId:{}", userId);
         }
     }
-
-    @Override
-    public void sendFeishuMessage(String userId, String text) {
-        CorpFeishuUser user = corpFeishuUserService.getByUserId(userId);
-        if(null!=user){
-            JSONArray openIds = new JSONArray();
-            openIds.add(user.getOpenId());
-            try {
-                MessageProvider.batchSend(null,openIds,null,text);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-    }
-
 }

+ 0 - 2
module-ctop/src/main/java/cn/com/ctop/manage/modules/material/service/impl/MaterialUploadServiceImpl.java

@@ -237,8 +237,6 @@ public class MaterialUploadServiceImpl implements IMaterialUploadService {
                                         UserAllocation allocation = userAllocationService.getByAccountId(accountId);
                                         String message = messageTemplate.getMaterialSyncTemplate(allocation.getProjectName(), accountId, allocation.getAuthName(), materialInfo.getMaterialName(), resultJson.getString("message"));
                                         sendMessageService.sendMessage(userId, message);
-                                        String feishuMessage = messageTemplate.getFeishuMaterialSyncTemplate(allocation.getProjectName(), accountId, allocation.getAuthName(), materialInfo.getMaterialName(), resultJson.getString("message"));
-                                        sendMessageService.sendFeishuMessage(userId, feishuMessage);
                                     }
                                 }
 

+ 0 - 102
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/impl/AccountWarningServiceImpl.java

@@ -4,15 +4,12 @@ import cn.com.ctop.common.module.entity.MailLog;
 import cn.com.ctop.common.module.entity.UserAllocation;
 import cn.com.ctop.common.module.mapper.MailLogMapper;
 import cn.com.ctop.common.module.mapper.UserAllocationMapper;
-import cn.com.ctop.common.module.service.ICorpFeishuUserService;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.CorpWexinUtils;
 import cn.com.ctop.common.module.utils.SendMailUtil;
 import cn.com.ctop.kuaishou.modules.batch.service.IAccountWarningService;
 import cn.com.ctop.kuaishou.modules.report.mapper.KuaishouReportHourlyAccountMapper;
-import cn.com.feishu.provider.MessageProvider;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -69,7 +66,6 @@ public class AccountWarningServiceImpl implements IAccountWarningService {
                         BigDecimal divide = nowCost.divide(lastHourCost, 2, RoundingMode.HALF_UP);
                         if (subtract.compareTo(warningAmount) > -1 && divide.compareTo(warningProportion) > -1) {
                             sendMessage(accountId, userAllocation.getAuthName(), maxHour, nowCost, userAllocation.getProjectId(), userAllocation.getProjectName());
-                            sendFeishuMessage(accountId, userAllocation.getAuthName(), maxHour, nowCost, userAllocation.getProjectId(), userAllocation.getProjectName());
                         }
                     }
                 }
@@ -82,7 +78,6 @@ public class AccountWarningServiceImpl implements IAccountWarningService {
                     BigDecimal divide = nowCost.divide(yesterdayHourCost, 2, RoundingMode.HALF_UP);
                     if (subtract.compareTo(warningAmount) > -1 && divide.compareTo(warningProportion) > -1) {
                         sendYesterdayMessage(accountId, userAllocation.getAuthName(), maxHour, nowCost, userAllocation.getProjectId(), userAllocation.getProjectName());
-                        sendYesterdayFeishuMessage(accountId, userAllocation.getAuthName(), maxHour, nowCost, userAllocation.getProjectId(), userAllocation.getProjectName());
                     }
                 }
             }
@@ -93,103 +88,6 @@ public class AccountWarningServiceImpl implements IAccountWarningService {
 
     }
 
-    private void sendYesterdayFeishuMessage(Long accountId, String authName, Integer maxHour, BigDecimal nowCost, Long projectId, String projectName) {
-
-        StringBuilder text = new StringBuilder();
-        text.append("较昨日同时段消耗预警").append("\n\r")
-                .append("您的项目:" + projectName + "下的,").append("\n\r")
-                .append("账号:").append(accountId + ",").append("授权名称为:" + authName).append("\n\r")
-                .append("相较于昨日 " + maxHour + "时").append("\n\r")
-                .append("出现消耗暴涨,").append("消耗金额为:" + nowCost).append("\n\r")
-                .append("请您及时查看!");
-
-
-        QueryWrapper<MailLog> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("account_id", accountId);
-        queryWrapper.eq("hour", maxHour);
-        queryWrapper.eq("mail_type", 3);
-        queryWrapper.orderByDesc("create_time");
-        queryWrapper.last("limit 1");
-        MailLog checkMailLog = mailLogMapper.selectOne(queryWrapper);
-        if (Check.isNull(checkMailLog)) {
-            List<String> mailList = mailLogMapper.selectMailList(projectId);
-            String subject = "快手-较昨日同时段账户消耗预警";
-            try {
-                SendMailUtil.sendMail(mailList, subject, text.toString());
-                MailLog mailLog = new MailLog();
-                mailLog.setAccountId(accountId);
-                mailLog.setMailType(3);
-                mailLog.setHour(maxHour);
-                mailLog.setContent(text.toString());
-                mailLog.setSendEmil(JSON.toJSONString(mailList));
-                mailLog.setSubject(subject);
-                mailLogMapper.insert(mailLog);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-            JSONArray openIds = corpFeishuUserService.getOpenIdByParams(projectId);
-            if(null == openIds||openIds.isEmpty()){
-                log.error("该项目下运营飞书账号尚未绑定邮箱=>projectId:{}",projectId);
-                return;
-            }
-            try {
-                MessageProvider.batchSend(null,openIds,null,text.toString());
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-    }
-
-    @Autowired
-    private ICorpFeishuUserService corpFeishuUserService;
-
-    private void sendFeishuMessage(Long accountId, String authName, Integer hour, BigDecimal amount, Long projectId, String projectName) {
-
-        StringBuilder text = new StringBuilder();
-        text.append("较上时段消耗预警").append("\n\r")
-                .append("您的项目:" + projectName + " 下的").append("\n\r")
-                .append("账号:").append(accountId + ",").append("授权名称为:" + authName).append("\n\r")
-                .append(hour + " 时").append("相较于 " + (hour - 1) + " 时").append("<br/>")
-                .append("出现消耗暴涨,").append("消耗金额为:" + amount).append("<br/>")
-                .append("请您及时查看!");
-
-        QueryWrapper<MailLog> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("account_id", accountId);
-        queryWrapper.eq("hour", hour);
-        queryWrapper.eq("mail_type", 2);
-        queryWrapper.orderByDesc("create_time");
-        queryWrapper.last("limit 1");
-        MailLog checkMailLog = mailLogMapper.selectOne(queryWrapper);
-        if (Check.isNull(checkMailLog)) {
-            List<String> mailList = mailLogMapper.selectMailList(projectId);
-            String subject = "快手-账户消耗预警";
-            try {
-                SendMailUtil.sendMail(mailList, subject, text.toString());
-                MailLog mailLog = new MailLog();
-                mailLog.setAccountId(accountId);
-                mailLog.setMailType(2);
-                mailLog.setHour(hour);
-                mailLog.setContent(text.toString());
-                mailLog.setSendEmil(JSON.toJSONString(mailList));
-                mailLog.setSubject(subject);
-                mailLogMapper.insert(mailLog);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-        JSONArray openIds = corpFeishuUserService.getOpenIdByParams(projectId);
-        if(null == openIds||openIds.isEmpty()){
-            log.error("该项目下运营飞书账号尚未绑定邮箱=>projectId:{}",projectId);
-            return;
-        }
-        try {
-            MessageProvider.batchSend(null,openIds,null,text.toString());
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-
-    }
-
     private void sendYesterdayMessage(Long accountId, String authName, Integer maxHour, BigDecimal nowCost, Long projectId, String projectName) {
 
         StringBuilder text = new StringBuilder();

+ 0 - 49
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/material/service/impl/KuaishouBidWarningServiceImpl.java

@@ -4,7 +4,6 @@ import cn.com.ctop.common.module.entity.MailLog;
 import cn.com.ctop.common.module.entity.Project;
 import cn.com.ctop.common.module.entity.UserAllocation;
 import cn.com.ctop.common.module.mapper.MailLogMapper;
-import cn.com.ctop.common.module.service.ICorpFeishuUserService;
 import cn.com.ctop.common.module.service.IProjectService;
 import cn.com.ctop.common.module.service.IUserAllocationService;
 import cn.com.ctop.common.module.utils.Check;
@@ -12,9 +11,7 @@ import cn.com.ctop.common.module.utils.CorpWexinUtils;
 import cn.com.ctop.common.module.utils.SendMailUtil;
 import cn.com.ctop.kuaishou.modules.batch.mapper.KuaiShouGroupMapper;
 import cn.com.ctop.kuaishou.modules.material.service.IKuaishouBidWarningService;
-import cn.com.feishu.provider.MessageProvider;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.xxl.job.core.log.XxlJobLogger;
 import org.jeecg.common.util.DateUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -65,7 +62,6 @@ public class KuaishouBidWarningServiceImpl implements IKuaishouBidWarningService
                         if ("2".equals(userAllocation.getMediaId())) {
                             unitWarning = groupMapper.selectWarningGroup(accountId, maxBid);
                             sendMessage(project.getMediaId(), accountId, projectId, project.getProjectName(), userAllocation.getAuthName(), unitWarning, maxBid);
-                            sendFeishumessage(project.getMediaId(), accountId, projectId, project.getProjectName(), userAllocation.getAuthName(), unitWarning, maxBid);
                         }
                     }
                 }
@@ -75,51 +71,6 @@ public class KuaishouBidWarningServiceImpl implements IKuaishouBidWarningService
             e.printStackTrace();
         }
     }
-    private void sendFeishumessage(String mediaId, Long accountId, Long projectId, String projectName, String authName, List<String> unitWarning, Long maxBid) throws Exception {
-        String createTime = DateUtils.getNowDate("yyyy-MM-dd");
-        Integer count = mailLogMapper.selectCountByAccountIdAndDate(accountId, createTime, Integer.getInteger(mediaId));
-        StringBuilder text = new StringBuilder();
-        String s = "";
-        for (int i = 0; i < unitWarning.size(); i++) {
-            s += unitWarning.get(i) + "," + "\n\r";
-
-        }
-        text.append("项目出价预警").append("\n\r").append("您的项目:").append(projectName + ",").append("\n\r")
-                .append("授权名称为:" + authName + " 下的,").append("\n\r").append(s)
-                .append("大于项目设置的最高出价:").append(maxBid / 1000).append(" 元! 请您及时调整。");
-        if (count < 3) {
-            List<String> mailList = mailLogMapper.selectMailList(projectId);
-            String subject;
-            if ("1".equals(mediaId)) {
-                subject = "头条-广告计划出价预警";
-
-            } else {
-                subject = "快手-广告组出价预警";
-            }
-            try {
-                SendMailUtil.sendMail(mailList, subject, text.toString());
-                MailLog mailLog = new MailLog();
-                mailLog.setAccountId(accountId);
-                mailLog.setMailType(1);
-                mailLog.setContent(text.toString());
-                mailLog.setSendEmil(JSON.toJSONString(mailList));
-                mailLog.setSubject(subject);
-                mailLogMapper.insert(mailLog);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-
-        JSONArray openIds = corpFeishuUserService.getOpenIdByParams(projectId);
-        if(null == openIds||openIds.isEmpty()){
-            XxlJobLogger.log("该项目下运营飞书账号尚未绑定邮箱=>projectId:{}",projectId);
-            return;
-        }
-        MessageProvider.batchSend(null,openIds,null,text.toString());
-    }
-
-    @Autowired
-    private ICorpFeishuUserService corpFeishuUserService;
 
     private void sendMessage(String mediaId, Long accountId, Long projectId, String projectName, String authName, List<String> unitWarning, Long maxBid) {
         String createTime = DateUtils.getNowDate("yyyy-MM-dd");

+ 0 - 1
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/controller/ByteDanceAdvertisePlanController.java

@@ -100,7 +100,6 @@ public class ByteDanceAdvertisePlanController {
                 result.error500("未知错误");
             }
         }
-
         return result;
     }
 

+ 8 - 0
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/controller/ByteDanceCampaignController.java

@@ -17,6 +17,8 @@ import org.springframework.web.bind.annotation.*;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * @Description: 今日头条广告组信息
@@ -62,9 +64,15 @@ public class ByteDanceCampaignController {
         if(null!=endDate&&!"".equals(endDate)){
             queryWrapper.le("campaign_create_time",endDate+" 11:59:59");
         }
+        queryWrapper.ne("status","CAMPAIGN_STATUS_DELETE");
         queryWrapper.orderByDesc("campaign_create_time");
         Page<ByteDanceCampaign> page = new Page<>(pageNo, pageSize);
         IPage<ByteDanceCampaign> pageList = byteDanceCampaignService.page(page, queryWrapper);
+        List<ByteDanceCampaign> records = pageList.getRecords();
+        if(null!=records&&!records.isEmpty()){
+            List<ByteDanceCampaign> campaigns = records.stream().map(campaign-> campaign.setCampaignStatus(campaign.getStatus().equalsIgnoreCase("CAMPAIGN_STATUS_ENABLE"))).collect(Collectors.toList());
+            pageList.setRecords(campaigns);
+        }
         result.setSuccess(true);
         result.setResult(pageList);
         return result;

+ 5 - 13
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/entity/ByteDanceCampaign.java

@@ -1,6 +1,7 @@
 package cn.com.ctop.toutiao.modules.material.entity;
 
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
@@ -67,16 +68,9 @@ public class ByteDanceCampaign {
     @Excel(name = "广告组时间戳,用于更新时提交,服务端判断是否基于最新信息修改", width = 15)
     @ApiModelProperty(value = "广告组时间戳,用于更新时提交,服务端判断是否基于最新信息修改")
     private String modifyTime;
-    @Excel(name = "广告组状态", width = 15)
-    @ApiModelProperty(value = "广告组状态")
+    @Dict(dicCode = "item_value", dictTable = "sys_dict_item", dicText = "item_text",extendsKey = "dict_id",extendsValue = "fbc3e2fc9e6f5cfa5f6aeddd4c3bf818")
     private String status;
     /**
-     * optStatus
-     */
-    @Excel(name = "optStatus", width = 15)
-    @ApiModelProperty(value = "optStatus")
-    private String optStatus;
-    /**
      * 广告组创建时间
      */
     @Excel(name = "广告组创建时间", width = 15)
@@ -99,6 +93,9 @@ public class ByteDanceCampaign {
     @ApiModelProperty(value = "updateTime")
     private Date updateTime;
 
+    @TableField(exist = false)
+    private Boolean campaignStatus;
+
     public ByteDanceCampaign() {
     }
 
@@ -111,7 +108,6 @@ public class ByteDanceCampaign {
         this.landingType = landingType;
         this.modifyTime = modifyTime;
         this.status = status;
-        this.optStatus = optStatus;
         this.campaignCreateTime = campaignCreateTime;
         this.campaignModifyTime = campaignModifyTime;
         this.createTime = createTime;
@@ -146,10 +142,6 @@ public class ByteDanceCampaign {
         if (null != status && !"".equals(status.trim())) {
             this.status = status;
         }
-        String optStatus = dataObject.getString("opt_status");
-        if (null != optStatus && !"".equals(optStatus.trim())) {
-            this.optStatus = optStatus;
-        }
         String campaignCreateTime = dataObject.getString("campaign_create_time");
         if (null != campaignCreateTime && !"".equals(campaignCreateTime.trim())) {
             this.campaignCreateTime = campaignCreateTime;

+ 2 - 7
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/entity/ByteDanceCreative.java

@@ -8,6 +8,7 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.experimental.Accessors;
+import org.jeecg.common.aspect.annotation.Dict;
 import org.jeecgframework.poi.excel.annotation.Excel;
 
 import java.util.Date;
@@ -35,14 +36,9 @@ public class ByteDanceCreative {
      */
     @Excel(name = "广告计划id", width = 15)
     @ApiModelProperty(value = "广告计划id")
+    @Dict(dicCode = "id",dictTable="ctop_bytedance_advertise_plan",dicText="name")
     private Long planId;
     /**
-     * 头条平台id
-     */
-    @Excel(name = "头条平台id", width = 15)
-    @ApiModelProperty(value = "头条平台id")
-    private Long toutiaoId;
-    /**
      * 本平台广告主id
      */
     @Excel(name = "本平台广告主id", width = 15)
@@ -138,7 +134,6 @@ public class ByteDanceCreative {
     public ByteDanceCreative(JSONObject dataObject, CtopOauthToken token) {
         this.id = dataObject.getLong("creative_id");
         this.planId = dataObject.getLong("ad_id");
-        this.toutiaoId = dataObject.getLong("advertiser_id");
         this.accountId = token.getAccountId()+"";
         String title = dataObject.getString("title");
         if (null != title && !"".equals(title.trim())) {

+ 3 - 7
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/service/impl/ByteDanceCampaignServiceImpl.java

@@ -149,6 +149,7 @@ public class ByteDanceCampaignServiceImpl extends ServiceImpl<ByteDanceCampaignM
 
         TreeMap<String, Object> params = new TreeMap<>();
         JSONObject filtering = new JSONObject();
+        filtering.put("status","CAMPAIGN_STATUS_ALL");
         if (null != ids && !"".equals(ids.trim())) {
             String[] idsArray = ids.split(StringUtils.COMMA);
             JSONArray filterIdsArray = new JSONArray();
@@ -165,9 +166,9 @@ public class ByteDanceCampaignServiceImpl extends ServiceImpl<ByteDanceCampaignM
         params.put("advertiser_id", token.getAccountId());
         params.put("page", pageNumber + "");
         String result = HttpUtils.httpGetRequest(url, headers, params);
+        System.out.println(result);
         JSONObject jsonObject = JSONObject.parseObject(result);
         Integer code = jsonObject.getInteger("code");
-
         if (null == code || !code.equals(0)) {
             log.error("获取广告组信息接口异常==》accountId:{},message:{}", token.getAccountId(), jsonObject.getString("message"));
             return;
@@ -177,7 +178,6 @@ public class ByteDanceCampaignServiceImpl extends ServiceImpl<ByteDanceCampaignM
             log.error("获取广告组信息不存在==》accountId:{},message:{}", token.getAccountId(), jsonObject.getString("message"));
             return;
         }
-        System.out.println(data.toJSONString());
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
             ByteDanceCampaign campaign = new ByteDanceCampaign(dataObject,token.getAccountId());
@@ -227,11 +227,7 @@ public class ByteDanceCampaignServiceImpl extends ServiceImpl<ByteDanceCampaignM
         if (null != getCampaignIds && !getCampaignIds.isEmpty()) {
             for (int i = 0; i < getCampaignIds.size(); i++) {
                 Long id = getCampaignIds.getLong(i);
-                ByteDanceCampaign campaign = this.getById(id);
-                if (null != campaign) {
-                    campaign.setOptStatus(optStatus);
-                }
-                this.updateById(campaign);
+                getAdvertiserCampaign(token,id+"",null);
             }
         }
         resultMap.put("code", 0);

+ 0 - 46
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/service/impl/BytedanceBidWarningServiceImpl.java

@@ -13,9 +13,7 @@ import cn.com.ctop.common.module.utils.CorpWexinUtils;
 import cn.com.ctop.common.module.utils.SendMailUtil;
 import cn.com.ctop.toutiao.modules.material.service.IByteDanceAdvertisePlanService;
 import cn.com.ctop.toutiao.modules.material.service.IBytedanceBidWarningService;
-import cn.com.feishu.provider.MessageProvider;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.xxl.job.core.log.XxlJobLogger;
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.util.DateUtils;
@@ -72,7 +70,6 @@ public class BytedanceBidWarningServiceImpl implements IBytedanceBidWarningServi
                         unitWarning = byteDanceAdvertisePlanService.selectWarningGroup(accountId, bigDecimal);
                         if (!Check.isNull(unitWarning)) {
                             sendMessage(project.getMediaId(), accountId, projectId, project.getProjectName(), userAllocation.getAuthName(), unitWarning, maxBid);
-                            sendFeishumessage(project.getMediaId(), accountId, projectId, project.getProjectName(), userAllocation.getAuthName(), unitWarning, maxBid);
                         }
                     }
                 }
@@ -85,49 +82,6 @@ public class BytedanceBidWarningServiceImpl implements IBytedanceBidWarningServi
 
     }
 
-    private void sendFeishumessage(String mediaId, Long accountId, Long projectId, String projectName, String authName, List<String> unitWarning, Long maxBid) throws Exception {
-        String createTime = DateUtils.getNowDate("yyyy-MM-dd");
-        Integer count = mailLogMapper.selectCountByAccountIdAndDate(accountId, createTime, Integer.getInteger(mediaId));
-        StringBuilder text = new StringBuilder();
-        String s = "";
-        for (int i = 0; i < unitWarning.size(); i++) {
-            s += unitWarning.get(i) + "," + "\n\r";
-
-        }
-        text.append("项目出价预警").append("\n\r").append("您的项目:").append(projectName + ",").append("\n\r")
-                .append("授权名称为:" + authName + " 下的,").append("\n\r").append(s)
-                .append("大于项目设置的最高出价:").append(maxBid / 1000).append(" 元! 请您及时调整。");
-        if (count < 3) {
-            List<String> mailList = mailLogMapper.selectMailList(projectId);
-            String subject;
-            if ("1".equals(mediaId)) {
-                subject = "头条-广告计划出价预警";
-
-            } else {
-                subject = "快手-广告组出价预警";
-            }
-            try {
-                SendMailUtil.sendMail(mailList, subject, text.toString());
-                MailLog mailLog = new MailLog();
-                mailLog.setAccountId(accountId);
-                mailLog.setMailType(1);
-                mailLog.setContent(text.toString());
-                mailLog.setSendEmil(JSON.toJSONString(mailList));
-                mailLog.setSubject(subject);
-                mailLogMapper.insert(mailLog);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-
-        JSONArray openIds = corpFeishuUserService.getOpenIdByParams(projectId);
-        if(null == openIds||openIds.isEmpty()){
-            log.error("该项目下运营飞书账号尚未绑定邮箱=>projectId:{}",projectId);
-            return;
-        }
-        MessageProvider.batchSend(null,openIds,null,text.toString());
-    }
-
     private void sendMessage(String mediaId, Long accountId, Long projectId, String projectName, String authName, List<String> unitWarning, Long maxBid) {
         String createTime = DateUtils.getNowDate("yyyy-MM-dd");
         Integer count = mailLogMapper.selectCountByAccountIdAndDate(accountId, createTime, 1);

+ 0 - 87
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/report/service/impl/ByteDanceHourlyAccountWarningServiceImpl.java

@@ -3,16 +3,13 @@ package cn.com.ctop.toutiao.modules.report.service.impl;
 import cn.com.ctop.common.module.entity.MailLog;
 import cn.com.ctop.common.module.entity.UserAllocation;
 import cn.com.ctop.common.module.mapper.MailLogMapper;
-import cn.com.ctop.common.module.service.ICorpFeishuUserService;
 import cn.com.ctop.common.module.service.IUserAllocationService;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.CorpWexinUtils;
 import cn.com.ctop.common.module.utils.SendMailUtil;
 import cn.com.ctop.toutiao.modules.report.mapper.BytedanceAdvertiserHourlyReportMapper;
 import cn.com.ctop.toutiao.modules.report.service.IByteDanceHourlyAccountWarningService;
-import cn.com.feishu.provider.MessageProvider;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -77,7 +74,6 @@ public class ByteDanceHourlyAccountWarningServiceImpl implements IByteDanceHourl
                     BigDecimal divide = nowCost.divide(yesterdayHourCost, 2, RoundingMode.HALF_UP);
                     if (subtract.compareTo(warningAmount) > -1 && divide.compareTo(warningProportion) > -1) {
                         sendYesterdayMessage(accountId, userAllocation.getAuthName(), maxHour, cost, userAllocation.getProjectId(), userAllocation.getProjectName());
-                        sendYesterdayFeishuMessage(accountId, userAllocation.getAuthName(), maxHour, cost, userAllocation.getProjectId(), userAllocation.getProjectName());
                     }
                 }
             }
@@ -122,89 +118,6 @@ public class ByteDanceHourlyAccountWarningServiceImpl implements IByteDanceHourl
             CorpWexinUtils.sendMessage(wexinIds, text.toString());
         }
     }
-
-    private void sendYesterdayFeishuMessage(Long accountId, String authName, Integer maxHour, BigDecimal nowCost, Long projectId, String projectName) throws Exception {
-        StringBuilder text = new StringBuilder();
-        text.append("较昨日同时段消耗预警").append("\n\r")
-                .append("您的项目:" + projectName + "下的,").append("\n\r")
-                .append("账号:").append(accountId + ",").append("授权名称为:" + authName).append("\n\r")
-                .append("相较于昨日 " + maxHour + "时").append("\n\r")
-                .append("出现消耗暴涨,").append("消耗金额为:" + nowCost).append("\n\r")
-                .append("请您及时查看!");
-        QueryWrapper<MailLog> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("account_id", accountId);
-        queryWrapper.eq("hour", maxHour);
-        queryWrapper.eq("mail_type", 3);
-        queryWrapper.orderByDesc("create_time");
-        queryWrapper.last("limit 1");
-        MailLog checkMailLog = mailLogMapper.selectOne(queryWrapper);
-        if (Check.isNull(checkMailLog)) {
-            List<String> mailList = mailLogMapper.selectMailList(projectId);
-            String subject = "头条-较昨日同时段账户消耗预警";
-            try {
-                SendMailUtil.sendMail(mailList, subject, text.toString());
-                MailLog mailLog = new MailLog();
-                mailLog.setAccountId(accountId);
-                mailLog.setMailType(3);
-                mailLog.setHour(maxHour);
-                mailLog.setContent(text.toString());
-                mailLog.setSendEmil(JSON.toJSONString(mailList));
-                mailLog.setSubject(subject);
-                mailLogMapper.insert(mailLog);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-            JSONArray openIds = feishuUserService.getOpenIdByParams(projectId);
-            MessageProvider.batchSend(null,openIds,null,text.toString());
-        }
-    }
-
-
-
-    private void sendFeishuMessage(Long accountId, String authName, Integer hour, BigDecimal amount, Long projectId, String projectName) throws Exception {
-        StringBuilder text = new StringBuilder();
-        text.append("较上时段消耗预警").append("\n\r")
-                .append("您的项目:" + projectName + " 下的").append("\n\r")
-                .append("账号:").append(accountId + ",").append("授权名称为:" + authName).append("\n\r")
-                .append(hour + " 时").append("相较于 " + (hour - 1) + " 时").append("\n\r")
-                .append("出现消耗暴涨,").append("消耗金额为:" + amount).append("\n\r")
-                .append("请您及时查看!");
-
-        QueryWrapper<MailLog> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("account_id", accountId);
-        queryWrapper.eq("hour", hour);
-        queryWrapper.eq("mail_type", 2);
-        queryWrapper.orderByDesc("create_time");
-        queryWrapper.last("limit 1");
-        MailLog checkMailLog = mailLogMapper.selectOne(queryWrapper);
-        if (Check.isNull(checkMailLog)) {
-            List<String> mailList = mailLogMapper.selectMailList(projectId);
-            String subject = "头条-账户消耗预警";
-            try {
-                SendMailUtil.sendMail(mailList, subject, text.toString());
-                MailLog mailLog = new MailLog();
-                mailLog.setAccountId(accountId);
-                mailLog.setMailType(2);
-                mailLog.setHour(hour);
-                mailLog.setContent(text.toString());
-                mailLog.setSendEmil(JSON.toJSONString(mailList));
-                mailLog.setSubject(subject);
-                mailLogMapper.insert(mailLog);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-        JSONArray openIds = feishuUserService.getOpenIdByParams(projectId);
-        if(null == openIds&&openIds.isEmpty()){
-            log.error("该项目下运营飞书账号尚未绑定邮箱=>projectId:{}",projectId);
-            return;
-        }
-        MessageProvider.batchSend(null,openIds,null, text.toString());
-    }
-
-    @Autowired
-    private ICorpFeishuUserService feishuUserService;
-
     private void sendMessage(Long accountId, String authName, Integer hour, BigDecimal amount, Long projectId, String projectName) {
 
         StringBuilder text = new StringBuilder();