コード例 #1
0
        public static string GeneratePayrollReport(DateTime firstDayOfPeriod, App.Providers.Models.PayrollFilter filter)
        {
            var data         = new DataHelper();
            var baseReportID = data.GetPayrollBaseReportID();

            data.InsertPayablesRecord(baseReportID, firstDayOfPeriod, filter);
            return(baseReportID.ToString());
        }
コード例 #2
0
ファイル: HoursRepo.cs プロジェクト: weedkiller/AABCMaster
        public List <Models.Providers.PayrollGridItemVM> GetPayablesByPeriod(DateTime firstDayOfMonthOfPeriod, App.Providers.Models.PayrollFilter filter)
        {
            var domainList = new Data.Services.HoursService().GetPayrollHoursByPeriod(firstDayOfMonthOfPeriod, (int)filter);

            var list = new List <Models.Providers.PayrollGridItemVM>();

            foreach (var di in domainList)
            {
                var item = new Models.Providers.PayrollGridItemVM();
                item.ID        = di.ID;
                item.PayrollID = di.PayrollID;
                item.FirstName = di.FirstName;
                item.LastName  = di.LastName;
                item.Hours     = di.TotalHours;
                item.EntriesMissingCatalystData = di.EntriesMissingCatalystData;
                list.Add(item);
            }

            return(list);
        }
コード例 #3
0
            public void InsertPayablesRecord(int reportID, DateTime firstDayOfPeriod, App.Providers.Models.PayrollFilter filter)
            {
                using (var conn = new SqlConnection(connectionString))
                    using (var cmd = new SqlCommand())
                    {
                        cmd.Connection  = conn;
                        cmd.CommandText = "INSERT INTO dbo.CasePayableReports (ReportBaseID, ReportID) " +
                                          "VALUES (@BaseID, @ReportID);";
                        cmd.Parameters.AddWithValue("@BaseID", reportID);
                        cmd.Parameters.AddWithValue("@ReportID", reportID.ToString());
                        cmd.InsertToIdentity();
                        cmd.Parameters.Clear();
                        switch (filter)
                        {
                        case App.Providers.Models.PayrollFilter.NYOnly:
                            cmd.CommandText =
                                "UPDATE cah SET cah.HoursPayableRef = @ReportID FROM dbo.CaseAuthHours AS cah INNER JOIN dbo.Providers AS p ON cah.CaseProviderID = p.ID " +
                                "WHERE HoursDate >= @StartDate AND HoursDate <= @EndDate AND HoursStatus = 3 AND HoursPayableRef IS NULL " +
                                "  AND p.ProviderState = 'NY';";
                            break;

                        case App.Providers.Models.PayrollFilter.NonNY:
                            cmd.CommandText =
                                "UPDATE cah SET cah.HoursPayableRef = @ReportID FROM dbo.CaseAuthHours AS cah INNER JOIN dbo.Providers AS p ON cah.CaseProviderID = p.ID " +
                                "WHERE HoursDate >= @StartDate AND HoursDate <= @EndDate AND HoursStatus = 3 AND HoursPayableRef IS NULL " +
                                "  AND (p.ProviderState IS NULL OR p.ProviderState <> 'NY');";
                            break;

                        default:
                            cmd.CommandText = "UPDATE dbo.CaseAuthHours SET HoursPayableRef = @ReportID " +
                                              "WHERE HoursDate >= @StartDate AND HoursDate <= @EndDate AND HoursStatus = 3 AND HoursPayableRef IS NULL;";
                            break;
                        }
                        cmd.Parameters.AddWithValue("@StartDate", firstDayOfPeriod);
                        cmd.Parameters.AddWithValue("@EndDate", firstDayOfPeriod.AddMonths(1).AddDays(-1));
                        cmd.Parameters.AddWithValue("@ReportID", reportID.ToString());
                        cmd.ExecuteNonQueryToInt();
                    }
            }