Example #1
0
        protected Report(ICustomerAccount account, IReportLetter reportLetter, ReportStatuses reportStatus, string reportErrorMessage)
        {
            Account = account;
            ModelPortfolio = account.ModelPortfolio;
            SetContactsNAW(account);

            ReportLetter = reportLetter;
            ReportStatusId = (int)reportStatus;
            ErrorMessage = reportErrorMessage;

            CreationDate = DateTime.Now;
        }
Example #2
0
        public usrReportStatus()
        {
            InitializeComponent();
            DataContext = this;
            var enums = Enum.GetValues(typeof(ReportStatus));

            foreach (ReportStatus status in enums)
            {
                ReportStatuses.Add(new ListItem <ReportStatus>(EnumLocalizer.Default.Translate(status), status));
            }

            Statuses.Add(new ListItem <EntryObjectStatus>(EnumLocalizer.Default.Translate(EntryObjectStatus.Done), EntryObjectStatus.Done));
            Statuses.Add(new ListItem <EntryObjectStatus>(EnumLocalizer.Default.Translate(EntryObjectStatus.Planned), EntryObjectStatus.Planned));
        }
Example #3
0
        public static List<IReport> GetReports(IDalSession session, int reportLetterYear, ReportLetterTypes reportLetterType, 
                                               int? managementCompanyId, int[] accountIds, ReportStatuses? reportStatus)
        {
            Hashtable parameters = new Hashtable();
            Hashtable parameterLists = new Hashtable();

            string hql = @"FROM  Report R
                           WHERE R.ReportLetter.ReportLetterYear = :ReportLetterYear
                             AND R.ReportLetter.ReportLetterTypeId = :ReportLetterType";

            parameters.Add("ReportLetterYear", reportLetterYear);
            parameters.Add("ReportLetterType", (int)reportLetterType);

            if (managementCompanyId != null)
            {
                parameters.Add("CompanyId", managementCompanyId);
                hql += @" AND R.Account.Key IN (SELECT AI.Key FROM AccountTypeInternal AI
                                                 WHERE AI.AccountOwner.Key = :CompanyId)";
            }

            if (accountIds != null)
            {
                if (accountIds.Length == 0)
                    accountIds = new int[] { 0 };
                parameterLists.Add("AccountIds", accountIds);
                hql += " AND R.Account.Key IN (:AccountIds)";
            }

            if (reportStatus != null)
            {
                parameters.Add("ReportStatus", (int)reportStatus);
                hql += " AND R.ReportStatusId = :ReportStatus";
            }

            hql += " ORDER BY R.Account.Number";

            return session.GetTypedListByHQL<IReport>(hql, parameters, parameterLists);
        }
Example #4
0
        private static void logReport(int oldAccountId, int oldReportLetterYear, ReportLetterTypes oldReportLetterType,
                                      int newReportLetterId, ReportStatuses newReportStatus, string newErrorMessage,
                                      string pdfFileName, string pdfFilePath, bool? sentByPost)
        {
            IDalSession session = NHSessionFactory.CreateSession();
            try
            {
                IReportLetter reportLetter = ReportLetterMapper.GetReportLetter(session, newReportLetterId);
                ICustomerAccount account = AccountMapper.GetAccount(session, oldAccountId) as ICustomerAccount;

                if (newErrorMessage.Length > 200)
                    newErrorMessage = newErrorMessage.Substring(0, 200);

                IReport report = ReportMapper.GetReport(session, oldAccountId, oldReportLetterYear, oldReportLetterType);
                if (report == null)
                    report = Report.CreateReport(account, reportLetter, newReportStatus, newErrorMessage);
                else
                {
                    report.ModelPortfolio = account.ModelPortfolio;
                    report.SetContactsNAW(account);
                    report.ReportLetter = reportLetter;
                    report.ReportStatusId = (int)newReportStatus;
                    report.ErrorMessage = newErrorMessage;
                    report.CreationDate = DateTime.Now;
                }

                if (pdfFileName != null)
                {
                    if (report.Document == null)
                        report.Document = new FinancialReportDocument();
                    report.Document.FileName = pdfFileName;
                    report.Document.FilePath = pdfFilePath;
                    report.Document.SentByPost = (bool)sentByPost;
                    session.InsertOrUpdate(report.Document);
                }
                else
                    report.Document = null;

                session.InsertOrUpdate(report);
            }
            finally
            {
                session.Close();
            }
        }
Example #5
0
 private static int[] getAccountIdsByReportStatus(int reportLetterYear, ReportLetterTypes reportLetterType, int[] accountIds, 
                                                  ReportStatuses reportStatus)
 {
     IDalSession session = NHSessionFactory.CreateSession();
     try
     {
         List<IReport> reports = ReportMapper.GetReports(session, reportLetterYear, reportLetterType, accountIds, reportStatus);
         return reports.ConvertAll<int>(report => report.Account.Key).ToArray();
     }
     finally
     {
         session.Close();
     }
 }
Example #6
0
 public ReportEOY(ICustomerAccount account, IReportLetter reportLetter, ReportStatuses reportStatus, string reportErrorMessage)
     : base(account, reportLetter, reportStatus, reportErrorMessage)
 {
 }
Example #7
0
 public static IReport CreateReport(ICustomerAccount account, IReportLetter reportLetter,
                                    ReportStatuses reportStatus, string reportErrorMessage)
 {
     if (reportLetter.ReportLetterTypeId == (int)ReportLetterTypes.EOY)
         return new ReportEOY(account, reportLetter, reportStatus, reportErrorMessage);
     else
         return new ReportQuarter(account, reportLetter, reportStatus, reportErrorMessage);
 }
Example #8
0
 public static List<IReport> GetReports(IDalSession session, int reportLetterYear, ReportLetterTypes reportLetterType, int[] accountIds, 
                                        ReportStatuses reportStatus)
 {
     return GetReports(session, reportLetterYear, reportLetterType, null, accountIds, reportStatus);
 }