예제 #1
0
        public async Task <ActionResult> Export([FromBody] Organization_OrganizationFilterDTO Organization_OrganizationFilterDTO)
        {
            if (UnAuthorization)
            {
                return(Forbid());
            }
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            OrganizationFilter OrganizationFilter = ConvertFilterDTOToFilterEntity(Organization_OrganizationFilterDTO);

            OrganizationFilter = OrganizationService.ToFilter(OrganizationFilter);

            OrganizationFilter.Skip = 0;
            OrganizationFilter.Take = int.MaxValue;
            OrganizationFilter      = OrganizationService.ToFilter(OrganizationFilter);

            List <Organization> Organizations = await OrganizationService.List(OrganizationFilter);

            MemoryStream memoryStream = new MemoryStream();

            using (ExcelPackage excel = new ExcelPackage(memoryStream))
            {
                var OrganizationHeaders = new List <string[]>()
                {
                    new string[] { "Mã tổ chức", "Tên tổ chức", "Mã tổ chức" }
                };
                List <object[]> data = new List <object[]>();
                for (int i = 0; i < Organizations.Count; i++)
                {
                    var Organization = Organizations[i];
                    data.Add(new Object[]
                    {
                        Organization.Name,
                        Organization.Code,
                        Organization.Parent?.Code ?? "",
                    });
                }
                excel.GenerateWorksheet("Organization", OrganizationHeaders, data);
                excel.Save();
            }

            return(File(memoryStream.ToArray(), "application/octet-stream", "Organization.xlsx"));
        }
예제 #2
0
        public async Task <ActionResult <int> > Count([FromBody] Organization_OrganizationFilterDTO Organization_OrganizationFilterDTO)
        {
            if (UnAuthorization)
            {
                return(Forbid());
            }
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            OrganizationFilter OrganizationFilter = ConvertFilterDTOToFilterEntity(Organization_OrganizationFilterDTO);

            OrganizationFilter = OrganizationService.ToFilter(OrganizationFilter);
            int count = await OrganizationService.Count(OrganizationFilter);

            return(count);
        }
예제 #3
0
        private OrganizationFilter ConvertFilterDTOToFilterEntity(Organization_OrganizationFilterDTO Organization_OrganizationFilterDTO)
        {
            OrganizationFilter OrganizationFilter = new OrganizationFilter();

            OrganizationFilter.Selects   = OrganizationSelect.ALL;
            OrganizationFilter.Skip      = 0;
            OrganizationFilter.Take      = 99999;
            OrganizationFilter.OrderBy   = OrganizationOrder.Id;
            OrganizationFilter.OrderType = OrderType.ASC;

            OrganizationFilter.Id       = Organization_OrganizationFilterDTO.Id;
            OrganizationFilter.Code     = Organization_OrganizationFilterDTO.Code;
            OrganizationFilter.Name     = Organization_OrganizationFilterDTO.Name;
            OrganizationFilter.ParentId = Organization_OrganizationFilterDTO.ParentId;
            OrganizationFilter.Path     = Organization_OrganizationFilterDTO.Path;
            OrganizationFilter.Level    = Organization_OrganizationFilterDTO.Level;
            OrganizationFilter.StatusId = Organization_OrganizationFilterDTO.StatusId;
            OrganizationFilter.Phone    = Organization_OrganizationFilterDTO.Phone;
            OrganizationFilter.Address  = Organization_OrganizationFilterDTO.Address;
            OrganizationFilter.Email    = Organization_OrganizationFilterDTO.Email;
            return(OrganizationFilter);
        }
예제 #4
0
        public async Task <ActionResult <List <Organization_OrganizationDTO> > > List([FromBody] Organization_OrganizationFilterDTO Organization_OrganizationFilterDTO)
        {
            if (UnAuthorization)
            {
                return(Forbid());
            }
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            OrganizationFilter OrganizationFilter = ConvertFilterDTOToFilterEntity(Organization_OrganizationFilterDTO);

            OrganizationFilter = OrganizationService.ToFilter(OrganizationFilter);
            List <Organization> Organizations = await OrganizationService.List(OrganizationFilter);

            List <Organization_OrganizationDTO> Organization_OrganizationDTOs = Organizations
                                                                                .Select(c => new Organization_OrganizationDTO(c)).ToList();

            return(Organization_OrganizationDTOs);
        }
예제 #5
0
        public async Task <ActionResult <List <Organization_OrganizationDTO> > > SingleListOrganization([FromBody] Organization_OrganizationFilterDTO Organization_OrganizationFilterDTO)
        {
            if (UnAuthorization)
            {
                return(Forbid());
            }
            OrganizationFilter OrganizationFilter = new OrganizationFilter();

            OrganizationFilter.Skip      = 0;
            OrganizationFilter.Take      = 99999;
            OrganizationFilter.OrderBy   = OrganizationOrder.Id;
            OrganizationFilter.OrderType = OrderType.ASC;
            OrganizationFilter.Selects   = OrganizationSelect.ALL;
            OrganizationFilter.Id        = Organization_OrganizationFilterDTO.Id;
            OrganizationFilter.Code      = Organization_OrganizationFilterDTO.Code;
            OrganizationFilter.Name      = Organization_OrganizationFilterDTO.Name;
            OrganizationFilter.ParentId  = Organization_OrganizationFilterDTO.ParentId;
            OrganizationFilter.Path      = Organization_OrganizationFilterDTO.Path;
            OrganizationFilter.Level     = Organization_OrganizationFilterDTO.Level;
            OrganizationFilter.StatusId  = new IdFilter {
                Equal = Enums.StatusEnum.ACTIVE.Id
            };

            if (OrganizationFilter.Id == null)
            {
                OrganizationFilter.Id = new IdFilter();
            }
            OrganizationFilter.Id.In = await FilterOrganization(OrganizationService, CurrentContext);

            List <Organization> Organizations = await OrganizationService.List(OrganizationFilter);

            List <Organization_OrganizationDTO> Organization_OrganizationDTOs = Organizations
                                                                                .Select(x => new Organization_OrganizationDTO(x)).ToList();

            return(Organization_OrganizationDTOs);
        }