zoukankan      html  css  js  c++  java
  • EventInbox 在线发送消息与Email给用户

    #server static void markEmailAs(SysEmailItemId _emailItemId,SysEmailStatus _emailStatus, boolean _increaseRetryCount = false)
            #{
            #    SysOutgoingEmailTable outgoingEmailTable;
            #    SAG_BanKIntegrationLog logs;
            #    EventInbox inbox;
            #    EventInboxId inboxId;
            #    ;
            #    ttsbegin;
            #
            #        select forupdate outgoingEmailTable
            #            index hint EmailIdx
            #            where outgoingEmailTable.EmailItemId == _emailItemId;
            #
            #        outgoingEmailTable.Status = _emailStatus;
            #
            #        if (_emailStatus != SysEmailStatus::Executing)
            #        {
            #            outgoingEmailTable.LatestStatusChangeDateTime = DateTimeUtil::getSystemDateTime();
            #        }
            #
            #        if (_increaseRetryCount)
            #            outgoingEmailTable.RetryNum = outgoingEmailTable.RetryNum + 1;
            #
            #        outgoingEmailTable.update();
            #
            #    ttscommit;
            #
            #    ttsbegin;
            #    if(_emailStatus != SysEmailStatus::Unsent)
            #    {
            #        logs = logs.find(outgoingEmailTable.SAG_LogRecId);
            #        if(logs.EmailRec == outgoingEmailTable.RecId)
            #        {
            #            logs.Status = _emailStatus;
            #            logs.EmailUpdateDT = DateTimeUtil::getSystemDateTime();
            #            logs.update();
            #        }
            #    }
            #    ttscommit;
            #    //send alert to user
            #    ttsbegin;
            #    if((_emailStatus == SysEmailStatus::Failed) && outgoingEmailTable.SAG_LogRecId)
            #    {
            #        inboxId = EventInbox::nextEventId();
            #        inbox.initValue();
            #        inbox.ShowPopup = NoYes::Yes;
            #        inbox.Subject = "@HFM1708";
            #        inbox.Message = outgoingEmailTable.Origin;
            #        inbox.AlertedFor = "@HFM1709";
            #        inbox.SendEmail = NoYes::No;
            #        inbox.UserId = outgoingEmailTable.UserId;
            #        inbox.TypeId = classnum(EventType);
            #        inbox.AlertTableId = TableNum(SysOutgoingEmailTable);
            #        inbox.AlertFieldId = fieldNum(SysOutgoingEmailTable ,Status);
            #        inbox.TypeTrigger = EventTypeTrigger::FieldChanged;
            #        inbox.CompanyId = CurExt();
            #        inbox.InboxId = inboxId;
            #        inbox.AlertCreatedDateTime = DateTimeUtil::getSystemDateTime();
            #        inbox.insert();
            #    }
            #    ttscommit;
            #}
          ENDSOURCE

  • 相关阅读:
    EXTJS4.2——0.简介
    什么是JDBC?
    Applet和普通的Java应用程序有什么区别?
    final关键字、finally代码块和finalize()方法有什么区别?
    throw和throws有什么区别
    Java中的两种异常类型是什么?他们有什么区别?
    Java堆的结构是什么样子的?什么是堆中的永久代(Perm Gen space)?
    flash插件
    算法复杂度分析中的符号(大Θ符号、大Ο符号...)
    Enumeration接口和Iterator接口的区别有哪些?
  • 原文地址:https://www.cnblogs.com/perock/p/2294351.html
Copyright © 2011-2022 走看看