Esempio n. 1
0
 public void LogDebug(string issue, IssueDetail issueDetail, string content)
 {
     this.Log(issue, issueDetail, content, IssueLog.LOG_LEVEL_DEBUG);
 }
Esempio n. 2
0
        private void Log(string issue, IssueDetail issueDetail, string content, string logLevel)
        {
            IssueLog log = new IssueLog();
            log.Level = logLevel;
            log.Content = content;

            if (!string.IsNullOrWhiteSpace(issue))
            {
                log.Issue = issue;
            }
            if (issueDetail != null)
            {
                log.Email = issueDetail.User.Email;
                log.MPhone = issueDetail.User.MobilePhone;
                log.IssueDetail = issueDetail.Id;
                log.IsSMS = issueDetail.IsSMS;
                log.IsEmail = issueDetail.IsEmail;
                log.EmailStatus = issueDetail.EmailStatus.ToString();
                log.SMSStatus = issueDetail.SMSStatus.ToString();
            }
            this.genericMgr.Create(log);
        }
Esempio n. 3
0
 public void LogWarn(string issue, IssueDetail issueDetail, string content)
 {
     this.Log(issue, issueDetail, content, IssueLog.LOG_LEVEL_WARN);
 }
Esempio n. 4
0
 public void LogInfo(string issue, IssueDetail issueDetail, string content)
 {
     this.Log(issue, issueDetail, content, IssueLog.LOG_LEVEL_INFO);
 }
Esempio n. 5
0
 public void LogFatal(string issue, IssueDetail issueDetail, string content)
 {
     this.Log(issue, issueDetail, content, IssueLog.LOG_LEVEL_FATAL);
 }
Esempio n. 6
0
 public void LogError(string issue, IssueDetail issueDetail, string content)
 {
     this.Log(issue, issueDetail, content, IssueLog.LOG_LEVEL_ERROR);
 }
Esempio n. 7
0
        public void Release(IssueMaster issue)
        {
            //try
            //{

                IssueLevel issueLevel = this.GetDefaultIssueLevel();
                if (issueLevel == null)
                {
                    throw new BusinessException(Resources.ISS.IssueMaster.Errors_DefaultLevelNotFound, issue.IssueType.Description);
                }

                if (issue.Status == com.Sconit.CodeMaster.IssueStatus.Create)
                {
                    User user = SecurityContextHolder.Get();

                    issue.Status = com.Sconit.CodeMaster.IssueStatus.Submit;
                    issue.ReleaseDate = DateTime.Now;
                    issue.ReleaseUser = user.Id;
                    issue.ReleaseUserName = user.FullName;
                    this.genericMgr.Update(issue);

                    #region 创建IssueDetail

                    #region 用户

                    string hql = "select ittud from IssueTypeToUserDetail ittud ";
                    hql += "                    join ittud.IssueTypeTo ittm ";
                    hql += "                    join ittm.IssueLevel il ";
                    hql += "                    join ittm.IssueType it ";
                    hql += "                    join ittud.User u ";
                    hql += "                    where ((ittud.IsEmail = true and u.Email is not null and u.Email != '') ";
                    hql += "                            or (ittud.IsSMS = true and u.MobilePhone is not null and u.MobilePhone != '')) ";
                    hql += "                      and il.IsActive = true and ittm.IsActive = true ";
                    hql += "                      and ittud.IssueTypeTo=ittm.Code and it.Code =? ";
                    hql += "                    order by il.Sequence asc ";

                    IList<IssueTypeToUserDetail> issueTypeToUserDetailList = this.genericMgr.FindAll<IssueTypeToUserDetail>(hql, issue.IssueTypeCode);

                    IList<IssueDetail> submitSendUser = new List<IssueDetail>();
                    foreach (IssueTypeToUserDetail issueTypeToUserDetail in issueTypeToUserDetailList)
                    {
                        IssueDetail issueDeatail = new IssueDetail();
                        issueDeatail.User = issueTypeToUserDetail.User;
                        //issueDeatail.UserName = issueTypeToUserDetail.User.FullName;
                        issueDeatail.MobilePhone = issueTypeToUserDetail.User.MobilePhone;
                        issueDeatail.Email = issueTypeToUserDetail.User.Email;
                        issueDeatail.IsActive = true;
                        issueDeatail.EmailCount = 0;
                        issueDeatail.SMSCount = 0;
                        issueDeatail.EmailStatus = com.Sconit.CodeMaster.SendStatus.NotSend;
                        issueDeatail.SMSStatus = com.Sconit.CodeMaster.SendStatus.NotSend;
                        issueDeatail.IssueLevel = issueTypeToUserDetail.IssueTypeTo.IssueLevel.Code;
                        issueDeatail.IsInProcess = issueTypeToUserDetail.IssueTypeTo.IssueLevel.IsInProcess;
                        issueDeatail.IsSubmit = issueTypeToUserDetail.IssueTypeTo.IssueLevel.IsSubmit;
                        issueDeatail.IsDefault = issueTypeToUserDetail.IssueTypeTo.IssueLevel.IsDefault;
                        issueDeatail.IssueCode = issue.Code;
                        issueDeatail.IsSMS = issueTypeToUserDetail.IsSMS;
                        issueDeatail.IsEmail = issueTypeToUserDetail.IsEmail;
                        issueDeatail.Sequence = issueTypeToUserDetail.IssueTypeTo.IssueLevel.Sequence;
                        issueDeatail.IssueTypeToUserDetailId = issueTypeToUserDetail.Id;
                        this.genericMgr.Create(issueDeatail);

                        if (issueDeatail.IsDefault)
                        {
                            submitSendUser.Add(issueDeatail);
                        }
                    }
                    #endregion

                    #region 角色 暂不支持
                    #endregion

                    #endregion

                    this.SendMailAndSMS(issue, issueLevel, submitSendUser);
                }
                else
                {
                    throw new BusinessException(Resources.ISS.IssueMaster.Errors_StatusErrorWhenRelease, issue.Code, systemMgr.GetCodeDetailDescription(com.Sconit.CodeMaster.CodeMaster.IssueStatus, ((int)issue.Status).ToString()));
                }


            //}
            //catch (Exception e)
            //{
            //    log.Error(e.Message, e);
            //}
        }