首页 > 其他分享 >1.代码发送钉钉警报

1.代码发送钉钉警报

时间:2023-04-28 14:14:20浏览次数:32  
标签:cn 代码 transferService 发送 警报 ecrp import sg asset

1.yml配置:

alert:
dingdingToken: b77968b5ac150902f2a23858ecd1ba3e822521b3f21a47f047b07ef2ea9c5a86       // 机器人生成的群code
services:
groupMessage:                                                    // 执行的方法别名
owners:
- 13616546418                                                    // 员工手机号
lagAfterAlert: 3h                                                  // 间隔时间发送消息

  

 

 

2.代码:

package cn.nascent.ecrp.sg.asset.warning;

import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.nascent.ecrp.sg.alert.annotation.AlertPoint;
import cn.nascent.ecrp.sg.asset.entity.AssetTransferTaskDO;
import cn.nascent.ecrp.sg.asset.service.AssetMemberTransferService;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;

/**
 * 导购资产(会员、会员+好友、好友、群)类型的转移异常进行警报
 *
 * @author liuYiBo
 * @since 2023/4/28 10:39
 */
@Component("cn.nascent.ecrp.sg.asset.warning.GuideAssertTransferWarning")
@Slf4j
public class GuideAssertTransferWarning {
    private final AssetMemberTransferService transferService;

    public GuideAssertTransferWarning(AssetMemberTransferService transferService) {
        this.transferService = transferService;
    }


    /**
     * 检查sg_customer_transfer_task
     * 员工资产转移半个小时还没转移完成进行钉钉警报
     */
    @AlertPoint("sg-service-asset-transfer:unTransferGuideAssert")
    public void unTransferGuideAsset() {
        DateTime dateTime = DateUtil.offsetMinute(DateUtil.parse(DateUtil.now()), -10);
        long unMarkCount = transferService.findUnTransferGuideAssetCount(dateTime.toDateStr());
        if (unMarkCount > 0) {
            List<AssetTransferTaskDO> unTransferGuideAssetData = transferService.findUnTransferGuideAssetData(dateTime.toDateStr());
            Set<Long> taskIdList = unTransferGuideAssetData.stream().map(AssetTransferTaskDO::getTaskId).collect(Collectors.toSet());
            String message = "[导购资产转移] 在 " + dateTime + " 之前有" + unMarkCount + " 批(会员或者会员+好友或者好友或者群)转移任务未转移完成!转移批次是:" + JSON.toJSONString(taskIdList) + ",请及时处理呀。 ";
            throw new BusinessWarningRuntimeException(message);
        }
    }
}

 

 

 

 

3.获取钉钉群code的方式:

 

 1

 

 2
 

 

 4

 

 

 6

标签:cn,代码,transferService,发送,警报,ecrp,import,sg,asset
From: https://www.cnblogs.com/hongda-88/p/17361875.html

相关文章

  • 写代码犹如写文章: “大师级程序员把系统当故事来讲,而不是当做程序来写” | 如何架构
    “大师级程序员把系统当故事来讲,而不是当做程序来写”写代码犹如写文章好的代码应该如好文章一样表达思想,被人读懂。中心思想:突出明确程序是开发者用编程语言写成的一本书,首先应该是记录开发者对业务需求分析、系统分析,最终用软件实现所思所想的知识的记录与传承。然后再是完成程......
  • redisson-2.10.4源代码分析
       redis学习问题总结http://aperise.iteye.com/blog/2310639ehcachememcachedredis缓存技术总结http://aperise.iteye.com/blog/2296219redis-stat离线安装http://aperise.iteye.com/blog/2310254redis cluster非ruby方式启动http://aperise.iteye.com/blog/2310254re......
  • 如何实现Spring中服务关闭时对象销毁执行代码
    spring提供了两种方式用于实现对象销毁时去执行操作1.实现DisposableBean接口的destroy2.在bean类的方法上增加@PreDestroy方法,那么这个方法会在DisposableBean.destory方法前触发3.实现SmartLifecycle接口的stop方法packagecom.wyf.service;importorg.springframework.be......
  • 基础备忘(发送htm正文带图片并且带附件的邮件)
    需求背景如下:发送htm正文带图片并且带附件的邮件。如题所示,任务拆解关键字为:html正文带图片带附件先介绍普通发邮件的方式添加maven引用<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</ar......
  • 超大文件上传和断点续传的源代码
    ​ 前言文件上传是一个老生常谈的话题了,在文件相对比较小的情况下,可以直接把文件转化为字节流上传到服务器,但在文件比较大的情况下,用普通的方式进行上传,这可不是一个好的办法,毕竟很少有人会忍受,当文件上传到一半中断后,继续上传却只能重头开始上传,这种让人不爽的体验。那有没有......
  • 多通道振弦传感器无线采集仪发送数据到 FTP 服务器
    多通道振弦传感器无线采集仪发送数据到FTP服务器配置工具的参数配置区列出了与设备工作相关的所有参数项,每个参数项有【读取】和【修改】两个按钮,点击【读取】按钮获得设备的当前参数值,点击【设置】按钮将当前界面显示的值写入设备。注:参数修改后,必须点击【系统】面板内的【......
  • 前端代码规范
    前端代码规范引用自:公众号:前端小川大多数具有一定规模的公司,都有自己的前端代码规范,没有或者准备要制定自己公司代码规范的可以参考这些代码规范9个秘籍里面有6个文档、1本书籍和2个工具,认真看完这9个秘籍,一定会提升代码质量,让你写出漂亮的代码  秘籍一:京东凹凸实验室前端......
  • 一些常用代码示例
    反正记不住1.获取世界UWorld1UWorld*World=GEngine->GetWorldFromContextObjectChecked(GetOuter());//GetOuter()返回该对象所在的UObject 2.判断是在游戏模式下运行(Game、PIE)if(GWorld->IsGameWorld()){//在游戏模式下运行}***************************......
  • 【Dotnet 工具箱】JIEJIE.NET - 强大的 .NET 代码混淆工具
    你好,这里是Dotnet工具箱,定期分享Dotnet有趣,实用的工具和组件,希望对您有用!JIEJIE.NET-强大的.NET代码混淆工具JIEJIE.NETJIEJIE.NET是一个使用C#开发的开源.NET代码加密工具。很多.NET开发人员担心他们的软件被破解,版权受到侵犯,所以他们使用一些工具来混淆IL......
  • 上篇:带你手工体验从写代码、编译、打包镜像、部署到K8S的全过程
    本篇使用的gowebdemo,页面很简单,功能也是很简单,写代码不是本篇的重点,重点是先体验一下整个流程:开发环境准备、写代码、提交到仓库、拉取代码构建并打包镜像、推送到镜像仓库,部署到K8S。本篇的分享分为上篇和下篇,上篇是手动,计划在下篇再讲自动。只有手动体验过,才能更能深入的理......