Esempio n. 1
0
        public async Task <ActionResult> ExportAppUser([FromBody] Organization_AppUserFilterDTO Organization_AppUserFilterDTO)
        {
            if (UnAuthorization)
            {
                return(Forbid());
            }
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            AppUserFilter AppUserFilter = new AppUserFilter();

            AppUserFilter.Skip    = 0;
            AppUserFilter.Take    = int.MaxValue;
            AppUserFilter.Selects = AppUserSelect.Id | AppUserSelect.Username | AppUserSelect.Username | AppUserSelect.Address | AppUserSelect.Phone | AppUserSelect.Sex
                                    | AppUserSelect.Birthday | AppUserSelect.Organization | AppUserSelect.Status;
            AppUserFilter.OrganizationId = Organization_AppUserFilterDTO.OrganizationId;
            AppUserFilter = AppUserService.ToFilter(AppUserFilter);

            List <AppUser> AppUsers = await AppUserService.List(AppUserFilter);

            MemoryStream memoryStream = new MemoryStream();

            using (ExcelPackage excel = new ExcelPackage(memoryStream))
            {
                var AppUserHeaders = new List <string[]>()
                {
                    new string[] { "STT", "Tên đăng nhập", "Tên hiển thị", "Địa chỉ", "Điện thoại", "Email", "Giới tính", "Ngày sinh", "Đơn vị quản lý", "Trạng thái" }
                };
                List <object[]> data = new List <object[]>();
                for (int i = 0; i < AppUsers.Count; i++)
                {
                    var appUser = AppUsers[i];
                    data.Add(new Object[]
                    {
                        i + 1,
                        appUser.Username,
                        appUser.DisplayName,
                        appUser.Address,
                        appUser.Phone,
                        appUser.Email,
                        appUser.Sex.Name,
                        appUser.Birthday?.ToString("dd-MM-yyyy"),
                        appUser.Organization.Code,
                        appUser.Status.Name,
                    });
                }
                excel.GenerateWorksheet("Tài khoản", AppUserHeaders, data);
                excel.Save();
            }
            return(File(memoryStream.ToArray(), "application/octet-stream", "Organization_AppUser" + ".xlsx"));
        }
Esempio n. 2
0
        public async Task <ActionResult <List <Organization_AppUserDTO> > > SingleListAppUser([FromBody] Organization_AppUserFilterDTO Organization_AppUserFilterDTO)
        {
            if (UnAuthorization)
            {
                return(Forbid());
            }
            AppUserFilter AppUserFilter = new AppUserFilter();

            AppUserFilter.Skip           = 0;
            AppUserFilter.Take           = 20;
            AppUserFilter.OrderBy        = AppUserOrder.Id;
            AppUserFilter.OrderType      = OrderType.ASC;
            AppUserFilter.Selects        = AppUserSelect.ALL;
            AppUserFilter.Id             = Organization_AppUserFilterDTO.Id;
            AppUserFilter.Username       = Organization_AppUserFilterDTO.Username;
            AppUserFilter.Password       = Organization_AppUserFilterDTO.Password;
            AppUserFilter.DisplayName    = Organization_AppUserFilterDTO.DisplayName;
            AppUserFilter.Address        = Organization_AppUserFilterDTO.Address;
            AppUserFilter.Email          = Organization_AppUserFilterDTO.Email;
            AppUserFilter.Phone          = Organization_AppUserFilterDTO.Phone;
            AppUserFilter.Department     = Organization_AppUserFilterDTO.Department;
            AppUserFilter.OrganizationId = Organization_AppUserFilterDTO.OrganizationId;
            AppUserFilter.SexId          = Organization_AppUserFilterDTO.SexId;
            AppUserFilter.StatusId       = new IdFilter {
                Equal = Enums.StatusEnum.ACTIVE.Id
            };

            //if (AppUserFilter.Id == null) AppUserFilter.Id = new IdFilter();
            //AppUserFilter.Id.In = await FilterAppUser(AppUserService, OrganizationService, CurrentContext);

            List <AppUser> AppUsers = await AppUserService.List(AppUserFilter);

            List <Organization_AppUserDTO> Organization_AppUserDTOs = AppUsers
                                                                      .Select(x => new Organization_AppUserDTO(x)).ToList();

            return(Organization_AppUserDTOs);
        }