Exemplo n.º 1
0
        public List <CaseAuthorization> GetCaseAuthorizationsAndGeneralHours(int caseID, bool omitBCBAAuths = false)
        {
            List <CaseAuthorization> list = new List <CaseAuthorization>();

            var context = new Models.CoreEntityModel();

            List <Models.CaseAuthCode> entities;

            if (omitBCBAAuths)
            {
                entities = context.CaseAuthCodes.Where(x => x.CaseID == caseID && x.CaseAuthClass.ID == 3).ToList();
            }
            else
            {
                entities = context.CaseAuthCodes.Where(x => x.CaseID == caseID).ToList();
            }

            foreach (var entity in entities)
            {
                var auth = Mappings.AuthorizationMappings.CaseAuthorization(entity);

                var generalHoursEntities = context.CaseAuthCodeGeneralHours.Where(x => x.CaseAuthID == auth.CaseAuthorizationID);
                auth.GeneralHours = Mappings.AuthorizationMappings.CaseAuthorizationGeneralHours(generalHoursEntities.ToList());

                list.Add(auth);
            }

            list = list.OrderBy(x => x.StartDate).ThenBy(x => x.AuthClass.Code).ToList();

            return(list);
        }
Exemplo n.º 2
0
        public List <MonthlyCasePeriod> GetCaseMonthlyPeriods(int caseID, DateTime startDate, DateTime endDate)
        {
            var context = new Models.CoreEntityModel();

            try
            {
                var items = new List <MonthlyCasePeriod>();

                var data = context.Database.SqlQuery <CaseMonthlyPeriodSprocDTO>(
                    "GetCaseMonthlyPeriods @CaseID, @StartDate, @EndDate",
                    new SqlParameter("@CaseID", caseID),
                    new SqlParameter("@StartDate", startDate),
                    new SqlParameter("@EndDate", endDate)
                    ).ToList();

                foreach (var dataItem in data)
                {
                    var item = new Domain.Cases.MonthlyCasePeriod();
                    item.ID = dataItem.ID;
                    item.FirstDayOfMonth = dataItem.PeriodFirstDayOfMonth;
                    items.Add(item);
                }
                return(items);
            }
            catch (Exception e)
            {
                Dymeng.Framework.Exceptions.Handle(e);
                throw e;
            }
        }
Exemplo n.º 3
0
        public List <string> GetZipsByCounty(string state, string county)
        {
            var context = new Models.CoreEntityModel();
            var items   = context.ZipCodes.Where(x => x.ZipState == state && x.ZipCounty == county).Select(x => x.ZipCode1).Distinct().ToList();

            return(items);
        }
Exemplo n.º 4
0
        public List <Service> GetServicesByProviderType(int providerTypeID)
        {
            // get from cache or db
            var cacheKey = "ServicesForProviderType" + providerTypeID;
            var list     = CacheService.Get(cacheKey) as List <Service>;


            if (list != null)
            {
                return(list);
            }
            else
            {
                list = new List <Service>();

                var context = new Models.CoreEntityModel();

                var entities = context.ProviderTypeServices.Where(x => x.ProviderTypeID == providerTypeID).ToList();
                foreach (var entity in entities)
                {
                    var serviceEntity = entity.Service;
                    list.Add(Mappings.CaseMappings.Service(serviceEntity));
                }

                CacheService.Add(cacheKey, list);
            }
            return(list);
        }
Exemplo n.º 5
0
        public Domain.Email.SMTPAccount GetSMTPAccount(string accountName)
        {
            var entity = new Models.CoreEntityModel().SMTPAccounts.Where(x => x.AccountName == accountName).FirstOrDefault();

            if (entity == null)
            {
                return(null);
            }

            var acct = new Domain.Email.SMTPAccount();

            acct.AuthenticationMode = ((int?)entity.AccountAuthMode) ?? 1;
            acct.DisplayName        = entity.AccountDisplayName;
            acct.FromAddress        = entity.AccountDefaultFromAddress;
            acct.ID             = entity.ID;
            acct.Name           = entity.AccountName;
            acct.Password       = entity.AccountPassword;
            acct.Port           = (int?)entity.AccountPort ?? 25;
            acct.ReplyToAddress = entity.AccountDefaultReplyAddress;
            acct.Server         = entity.AccountServer;
            acct.Username       = entity.AccountUsername;
            acct.UseSSL         = entity.AccountUseSSL ?? true;

            return(acct);
        }
Exemplo n.º 6
0
        public Domain.Cases.Authorization GetAuthorization(int id)
        {
            var context = new Models.CoreEntityModel();
            var entity  = context.AuthCodes.Find(id);

            return(Mappings.AuthorizationMappings.Authorization(entity));
        }
Exemplo n.º 7
0
        public Domain.Cases.Authorization GetAuthorization(string authCode)
        {
            var context = new Models.CoreEntityModel();
            var entity  = context.AuthCodes.Where(x => x.CodeCode == authCode).FirstOrDefault();

            return(Mappings.AuthorizationMappings.Authorization(entity));
        }
Exemplo n.º 8
0
        public List <AABC.Domain.Providers.PayrollHours> GetPayrollHoursByPeriod(DateTime periodFirstDayOfMonth, int filter)
        {
            // filter has to match with AABC.Web.App.Providers.Models.PayrollFilter
            // due to this being an old structure, this isn't the ideal way to handle it
            // (this data project should be refactored so it doesn't need the filter, but
            //  it's a big project, so we'll cheat for now)
            //  int filter:
            //    0: non
            //    1: NY only
            //    2: non-NY

            var context = new Models.CoreEntityModel();

            var data = context.Database.SqlQuery <PayrollHoursByPeriodSprocDTO>(
                "webreports.PayablesByPeriod @FirstDayOfMonth, @StateFilter",
                new System.Data.SqlClient.SqlParameter("@FirstDayOfMonth", periodFirstDayOfMonth),
                new System.Data.SqlClient.SqlParameter("@StateFilter", filter)
                ).ToList();

            var items = new List <Domain.Providers.PayrollHours>();

            foreach (var dataItem in data)
            {
                var item = new Domain.Providers.PayrollHours();
                item.ID         = dataItem.ID;
                item.PayrollID  = dataItem.PayrollID;
                item.FirstName  = dataItem.ProviderFirstName;
                item.LastName   = dataItem.ProviderLastName;
                item.TotalHours = (double)dataItem.TotalPayable;
                item.EntriesMissingCatalystData = dataItem.EntriesMissingCatalystData;
                items.Add(item);
            }

            return(items);
        }
Exemplo n.º 9
0
        public List <Domain.Cases.Authorization> GetAuthorizations()
        {
            var context = new Models.CoreEntityModel();

            var entities = context.AuthCodes.ToList();

            return(Mappings.AuthorizationMappings.Authorizations(entities));
        }
Exemplo n.º 10
0
        public bool ProviderNumberExists(string providerNumber)
        {
            var context = new Models.CoreEntityModel();

            var data = context.Providers.Where(x => x.ProviderNPI == providerNumber || x.ProviderNumber == providerNumber).FirstOrDefault();

            return(data == null ? false : true);
        }
Exemplo n.º 11
0
        public Case GetCase(int caseID)
        {
            var context = new Models.CoreEntityModel();

            var c = context.Cases.Find(caseID);

            return(Mappings.CaseMappings.Case(c));
        }
Exemplo n.º 12
0
        public IEnumerable <Domain.Providers.Provider> GetActiveProviders()
        {
            var context = new Models.CoreEntityModel();

            var data = context.Providers.ToList();

            return(Mappings.ProviderMappings.Providers(data));
        }
Exemplo n.º 13
0
        public List <CaseAuthorizationHours> GetCaseHoursByCaseByProvider(int caseID, int providerID, DateTime?cutoffDate = null)
        {
            var context = new Models.CoreEntityModel();

            IQueryable <Models.CaseAuthHour> q;

            if (cutoffDate == null)
            {
                q =
                    (from auths in context.CaseAuthCodes
                     join hours in context.CaseAuthHours on auths.ID equals hours.CaseAuthID
                     where auths.CaseID == caseID && hours.CaseProviderID == providerID
                     select hours)
                    .Union(
                        from hours in context.CaseAuthHours
                        where hours.CaseID == caseID && hours.CaseProviderID == providerID
                        select hours
                        );
            }
            else
            {
                q =
                    (from auths in context.CaseAuthCodes
                     join hours in context.CaseAuthHours on auths.ID equals hours.CaseAuthID
                     where auths.CaseID == caseID && hours.CaseProviderID == providerID && hours.HoursDate >= cutoffDate.Value
                     select hours)
                    .Union(
                        from hours in context.CaseAuthHours
                        where hours.CaseID == caseID && hours.CaseProviderID == providerID && hours.HoursDate >= cutoffDate.Value
                        select hours
                        );
            }



            var providerHours = q.ToList();

            var list = Mappings.AuthorizationMappings.CaseAuthorizationHours(providerHours);

            var services = GetServices();

            var providerService = new ProviderService();

            foreach (var hours in list)
            {
                hours.Service = services.Where(x => x.ID == hours.Service.ID).FirstOrDefault();
                var provider = providerService.GetProvider(hours.ProviderID);
                Domain.Cases.CaseProvider cp = new CaseProvider();
                cp.FirstName   = provider.FirstName;
                cp.LastName    = provider.LastName;
                hours.Provider = cp;
            }

            return(list);
        }
Exemplo n.º 14
0
        public List <Models.Sprocs.PeriodHoursMatrixByCase> PeriodHoursMatrix(int caseID, DateTime startDate, DateTime endDate)
        {
            var context = new Models.CoreEntityModel();

            return(context.Database.SqlQuery <Models.Sprocs.PeriodHoursMatrixByCase>(
                       "dbo.GetPeriodHoursMatrixByCase @CaseID, @StartDate, @EndDate",
                       new SqlParameter("@CaseID", caseID),
                       new SqlParameter("@StartDate", startDate),
                       new SqlParameter("@EndDate", endDate)
                       ).ToList());
        }
Exemplo n.º 15
0
        public List <CaseAuthorizationHours> GetCaseHoursByCaseAndDate(int caseID, DateTime date)
        {
            List <CaseAuthorizationHours> list = new List <CaseAuthorizationHours>();

            var context = new Models.CoreEntityModel();

            var entities = context.CaseAuthHours.Where(x => x.CaseID == caseID && x.HoursDate == date).ToList();

            list = Mappings.AuthorizationMappings.CaseAuthorizationHours(entities);

            return(list);
        }
Exemplo n.º 16
0
        public List <CaseAuthorizationHours> GetCaseHoursByDateRange(DateTime startDate, DateTime endDate)
        {
            var list = new List <CaseAuthorizationHours>();

            var context = new Models.CoreEntityModel();

            var entities = context.CaseAuthHours.Where(x => x.HoursDate >= startDate && x.HoursDate <= endDate).ToList();

            list = Mappings.AuthorizationMappings.CaseAuthorizationHours(entities);

            return(list);
        }
Exemplo n.º 17
0
        public List <string> GetCountiesList(string state)
        {
            if (state == null)
            {
                return(new List <string>());
            }

            var context = new Models.CoreEntityModel();
            var items   = context.ZipCodes.Where(x => x.ZipState == state && x.ZipCounty != null).Select(x => x.ZipCounty).Distinct().ToList();

            return(items);
        }
Exemplo n.º 18
0
        public List <Case> GetCasesByPatientName(string firstName, string lastName)
        {
            var context = new Models.CoreEntityModel();

            var q = from cases in context.Cases
                    join patients in context.Patients on cases.PatientID equals patients.ID
                    where patients.PatientFirstName == firstName && patients.PatientLastName == lastName
                    select cases;

            var entities = q.ToList();

            return(Mappings.CaseMappings.Cases(q, true).ToList());
        }
Exemplo n.º 19
0
        public List <Domain.Hours.HoursDownload> GetHoursForDownload(int providerID, int caseID, int month, int year)
        {
            var context  = new Models.CoreEntityModel();
            var entities = context.Database.SqlQuery <Domain.Hours.HoursDownload>(
                "[dbo].GetHoursForDownload @ProviderID, @CaseID, @Month, @Year",
                new SqlParameter("@ProviderID", providerID),
                new SqlParameter("@CaseID", caseID),
                new SqlParameter("@Month", month),
                new SqlParameter("@Year", year)
                ).ToList();

            return(entities);
        }
Exemplo n.º 20
0
        public AuthorizationClass GetAuthClassByCode(string authClassCode)
        {
            var context = new Models.CoreEntityModel();

            var entity = context.CaseAuthClasses.Where(x => x.AuthClassCode == authClassCode).FirstOrDefault();

            if (entity == null)
            {
                return(null);
            }
            else
            {
                return(Mappings.AuthorizationMappings.AuthorizationClass(entity));
            }
        }
Exemplo n.º 21
0
        public CaseProvider GetCaseProviderByProviderAndCaseIDs(int providerID, int caseID)
        {
            var context = new Models.CoreEntityModel();

            var entity = context.CaseProviders.Where(x => x.ProviderID == providerID && x.CaseID == caseID).FirstOrDefault();

            entity.Provider = context.Providers.Where(x => x.ID == providerID).FirstOrDefault();
            if (entity == null)
            {
                return(null);
            }
            else
            {
                return(Mappings.CaseMappings.CaseProvider(entity));
            }
        }
Exemplo n.º 22
0
        public List <CaseAuthorizationHours> GetCaseHoursByCase(int caseID, DateTime?cutoff = null)
        {
            List <CaseAuthorizationHours> list = new List <CaseAuthorizationHours>();

            var context = new Models.CoreEntityModel();

            IQueryable <Models.CaseAuthHour> q;

            if (cutoff == null)
            {
                q = (from hours in context.CaseAuthHours
                     where hours.CaseID == caseID
                     select hours)
                    .Union(
                    from hours in context.CaseAuthHours
                    join auths in context.CaseAuthCodes on hours.CaseAuthID equals auths.ID
                    where auths.CaseID == caseID && hours.CaseAuthID == auths.ID
                    select hours
                    );
            }
            else
            {
                q = (from hours in context.CaseAuthHours
                     where hours.CaseID == caseID && hours.HoursDate >= cutoff.Value
                     select hours)
                    .Union(
                    from hours in context.CaseAuthHours
                    join auths in context.CaseAuthCodes on hours.CaseAuthID equals auths.ID
                    where auths.CaseID == caseID && hours.CaseAuthID == auths.ID && hours.HoursDate >= cutoff.Value
                    select hours
                    );
            }



            var entities = q.ToList();

            list = Mappings.AuthorizationMappings.CaseAuthorizationHours(entities);

            foreach (var hours in list)
            {
                hours.Provider      = Mappings.CaseMappings.CaseProvider(context.CaseProviders.Where(x => x.ProviderID == hours.Provider.ID.Value).FirstOrDefault());
                hours.Authorization = Mappings.AuthorizationMappings.CaseAuthorization(context.CaseAuthCodes.Where(x => x.ID == hours.Authorization.ID).FirstOrDefault());
            }

            return(list);
        }
Exemplo n.º 23
0
        public List <Provider> GetProviders()
        {
            var context = new Models.CoreEntityModel();

            var entityProviders     = context.Providers.ToList();
            var entityProviderUsers = context.ProviderPortalUsers.ToList();

            var providers = Mappings.ProviderMappings.Providers(entityProviders);
            var users     = Mappings.ProviderPortalMappings.ProviderPortalUsers(entityProviderUsers);

            foreach (var p in providers)
            {
                p.PortalUser = users.Where(x => x.ProviderID == p.ID).FirstOrDefault();
            }

            return(providers.ToList());
        }
Exemplo n.º 24
0
        public CaseAuthorizationHours GetCaseHoursItem(int hoursID)
        {
            var item = new CaseAuthorizationHours();

            var context = new Models.CoreEntityModel();

            var entity = context.CaseAuthHours.Find(hoursID);

            if (entity == null)
            {
                return(null);
            }
            else
            {
                return(Mappings.AuthorizationMappings.CaseAuthorizationHour(entity));
            }
        }
Exemplo n.º 25
0
        public IEnumerable <Domain.General.GeneralLanguage> GetCommonLanguages()
        {
            var cache = CacheService.Get(CacheServiceItems.CommonLanguageList);

            if (cache == null)
            {
                var context = new Models.CoreEntityModel();
                var data    = context.CommonLanguages.ToList();
                var models  = Mappings.GeneralMappings.GeneralLanguages(data);
                CacheService.Add(CacheServiceItems.CommonLanguageList, models, 120);
                return(models);
            }
            else
            {
                return(cache as List <Domain.General.GeneralLanguage>);
            }
        }
Exemplo n.º 26
0
        private User setupUser(string username)
        {
            var context = new Models.CoreEntityModel();

            var entity = context.WebUsers.Where(x => x.UserName == username).FirstOrDefault();

            if (entity == null)
            {
                return(null);
            }

            var user = Mappings.WebUserMappings.User(entity);

            user.Permissions = Mappings.WebUserMappings.Permissions(context.WebUserPermissions.Where(x => x.WebUserID == user.ID).ToList());
            user.Options     = Mappings.WebUserMappings.Options(context.WebUserOptions.Where(x => x.WebUserID == user.ID).ToList());

            return(user);
        }
Exemplo n.º 27
0
        public ProviderPortalUser GetPortalUserByAspNetUsername(string aspNetUsername)
        {
            var context = new Models.CoreEntityModel();

            var entity = context.ProviderPortalUsers.Where(x => x.ProviderUserNumber == aspNetUsername).FirstOrDefault();

            if (entity == null)
            {
                return(null);
            }

            var ppu      = Mappings.ProviderPortalMappings.ProviderPortalUser(entity, false);
            var provider = context.Providers.Find(ppu.ProviderID);

            ppu.FirstName = provider.ProviderFirstName;
            ppu.LastName  = provider.ProviderLastName;

            return(ppu);
        }
Exemplo n.º 28
0
        public List <Domain.Cases.Case> GetActiveCasesByProvider(int providerID, int visibleAfterEndDateDays)
        {
            var context = new Models.CoreEntityModel();

            DateTime cutoff = DateTime.Now.AddDays(visibleAfterEndDateDays * -1);

            var q = from c in context.Cases
                    join cp in context.CaseProviders on c.ID equals cp.CaseID
                    where cp.ProviderID == providerID &&
                    cp.Active == true &&
                    c.CaseStatus != (int)Domain.Cases.CaseStatus.History &&
                    (!cp.ActiveStartDate.HasValue || cp.ActiveStartDate.Value <= DateTime.Now) &&
                    (!cp.ActiveEndDate.HasValue || cp.ActiveEndDate.Value >= cutoff)
                    select c;

            var entities = q.ToList();

            return(Mappings.CaseMappings.Cases(entities).ToList());
        }
Exemplo n.º 29
0
        public List <Domain.General.GuardianRelationship> GetGuardianRelationships()
        {
            CacheServiceItems key = CacheServiceItems.GuardianRelationship;
            var list = CacheService.Get(key) as List <Domain.General.GuardianRelationship>;

            if (list != null)
            {
                return(list);
            }
            else
            {
                list = new List <Domain.General.GuardianRelationship>();
                var context  = new Models.CoreEntityModel();
                var entities = context.GuardianRelationships.ToList();
                list = Mappings.GeneralMappings.GuardianRelationships(entities).ToList();
                CacheService.Add(key, list);

                return(list);
            }
        }
Exemplo n.º 30
0
        //public List<Domain.Cases.Case> GetActiveCasesByProvider(int providerID) {

        //    var context = new Models.CoreEntityModel();

        //    var q = from c in context.Cases
        //            join cp in context.CaseProviders on c.ID equals cp.CaseID
        //            where cp.ProviderID == providerID && cp.Active == true
        //            select c;

        //    var entities = q.ToList();

        //    return Mappings.CaseMappings.Cases(entities).ToList();

        //}

        public List <CaseAuthorization> GetCaseAuthorizationsAndHours(int caseID)
        {
            List <CaseAuthorization> list = new List <CaseAuthorization>();

            var context = new Models.CoreEntityModel();

            var entities = context.CaseAuthCodes.Where(x => x.CaseID == caseID).ToList();

            foreach (var entity in entities)
            {
                var auth = Mappings.AuthorizationMappings.CaseAuthorization(entity);

                var hoursEntities = context.CaseAuthHours.Where(x => x.CaseAuthID == auth.CaseAuthorizationID);
                auth.Hours = Mappings.AuthorizationMappings.CaseAuthorizationHours(hoursEntities.ToList());

                list.Add(auth);
            }

            return(list);
        }