示例#1
0
        public CodeSet GetCodeSet(Guid agencyId, string category)
        {
            // Return Special Officer CodeSet
            if (string.Equals(category, Infrastructure.CodeValues.Categories.SystemCodes.OFFLIST, StringComparison.OrdinalIgnoreCase))
            {
                return(GetOfficerCodes(agencyId));
            }

            // Return Special Agency CodeSet
            if (string.Equals(category, Infrastructure.CodeValues.Categories.SystemCodes.AGENCYLIST, StringComparison.OrdinalIgnoreCase))
            {
                return(GetAgencyCodes());
            }

            // Return Normal CodeSet
            var normalCodeSet = UnitOfWork.GetEntityQuery <Domain.Administration.Aggregates.Agency.CodeSet>()
                                .FirstOrDefault(x => x.AgencyId == agencyId && x.Category == category)
                                .As <CodeSet>();

            if (normalCodeSet == null)
            {
                Log.Error(string.Format("Code category: {0} not found in agencyId: {1}", category, agencyId));
                normalCodeSet = new CodeSet()
                {
                    Id          = Guid.Empty,
                    AgencyId    = agencyId,
                    Category    = category,
                    Codes       = new List <Code>(),
                    Description = string.Empty,
                    Name        = string.Empty
                };
            }

            return(normalCodeSet);
        }
示例#2
0
        public CodeSet GetAgencyCodes()
        {
            var codeSet = new CodeSet()
            {
                Id          = Guid.Empty,
                AgencyId    = Guid.Empty,
                Category    = Infrastructure.CodeValues.Categories.SystemCodes.AGENCYLIST,
                Codes       = ReferenceDataHelper.Agencies.AsListOf <Code>(),
                Description = "Agency Code List",
                Name        = "Agency Code List",
            };

            return(codeSet);
        }
示例#3
0
        public CodeSet GetOfficerCodes(Guid agencyId)
        {
            var officers = UnitOfWork.GetEntityQuery <Officer>()
                           .Where(x => x.AgencyId == agencyId && x.IncludeInOfficerDropdown);

            //avoid null, return empty codeset.
            officers = officers ?? new List <Officer>().AsQueryable <Officer>();

            var codeSet = new CodeSet()
            {
                Id          = Guid.Empty,
                AgencyId    = agencyId,
                Category    = Infrastructure.CodeValues.Categories.SystemCodes.OFFLIST,
                Codes       = officers.AsListOf <Contracts.Administration.DTO.CodeSetAdmin.Code>(),
                Description = "Officer Code List",
                Name        = "Officer Code List",
            };

            return(codeSet);
        }