コード例 #1
0
        public (string receivers, string msg) ParseHookMsg(WekanHookMsg hookMsg)
        {
            //logger.LogInformation($"新成员加入,cardid:{hookMsg.cardId}");
            var card = repository.GetCardinfo(hookMsg.cardId);

            return(ParseReceivers(card), ParseMsgText(card, hookMsg));
        }
コード例 #2
0
 protected override void DoMore(Boardinfo board, WekanHookMsg hookMsg)
 {
     if (board.Members.Any(c => c.IsActive == false))
     {
         repository.RefreshBoardMember(hookMsg.boardId);
     }
 }
コード例 #3
0
 public IActionResult Ding([FromBody] WekanHookMsg obj)
 {
     //logger.LogInformation(obj.GetActioUrl());
     Task.Factory.StartNew(async(state) =>
     {
         await dingNotify.Notify((WekanHookMsg)state);
     }, obj);
     return(new ContentResult()
     {
         Content = "回调了"
     });
 }
コード例 #4
0
        public async Task Notify(WekanHookMsg msg)
        {
            IHookAction hookMsgWapper = hookActionFactory.GetHookAction(msg.description);

            if (hookMsgWapper?.NeedNotify == true)
            {
                await Task.Delay(1000);

                var dingmsg = hookMsgWapper.ParseHookMsg(msg);
                dingWapper.SendDingMsg(dingmsg.receivers, dingmsg.msg);
            }
            await Task.CompletedTask;
        }
コード例 #5
0
        public (string receivers, string msg) ParseHookMsg(WekanHookMsg hookMsg)
        {
            if (string.IsNullOrEmpty(hookMsg.boardId))
            {
                return(null, null);
            }
            var board = repository.GetBoardinfo(hookMsg.boardId);

            if (board == null)
            {
                return(null, null);
            }
            DoMore(board, hookMsg);
            return(
                board.Members.Select(c => c.Username).ToArray().JoinToString(),
                hookMsg.text
                );
        }
コード例 #6
0
 protected override string ParseMsgText(Cardinfo card, WekanHookMsg hookMsg)
 {
     return(hookMsg.text.Replace("act-joinAssignee", $"被指派到任务[{hookMsg.card}]中"));
 }
コード例 #7
0
 protected override string ParseMsgText(Cardinfo card, WekanHookMsg hookMsg)
 {
     return(hookMsg.text);
 }
コード例 #8
0
 protected abstract string ParseMsgText(Cardinfo card, WekanHookMsg hookMsg);
コード例 #9
0
 protected virtual void DoMore(Boardinfo board, WekanHookMsg hookMsg)
 {
 }