public async Task <ActionResult <int> > Count([FromBody] CustomerGrouping_CustomerGroupingFilterDTO CustomerGrouping_CustomerGroupingFilterDTO) { if (UnAuthorization) { return(Forbid()); } if (!ModelState.IsValid) { throw new BindException(ModelState); } CustomerGroupingFilter CustomerGroupingFilter = ConvertFilterDTOToFilterEntity(CustomerGrouping_CustomerGroupingFilterDTO); CustomerGroupingFilter = await CustomerGroupingService.ToFilter(CustomerGroupingFilter); int count = await CustomerGroupingService.Count(CustomerGroupingFilter); return(count); }
private CustomerGroupingFilter ConvertFilterDTOToFilterEntity(CustomerGrouping_CustomerGroupingFilterDTO CustomerGrouping_CustomerGroupingFilterDTO) { CustomerGroupingFilter CustomerGroupingFilter = new CustomerGroupingFilter(); CustomerGroupingFilter.Selects = CustomerGroupingSelect.ALL; CustomerGroupingFilter.Skip = 0; CustomerGroupingFilter.Take = 99999; CustomerGroupingFilter.OrderBy = CustomerGrouping_CustomerGroupingFilterDTO.OrderBy; CustomerGroupingFilter.OrderType = CustomerGrouping_CustomerGroupingFilterDTO.OrderType; CustomerGroupingFilter.Id = CustomerGrouping_CustomerGroupingFilterDTO.Id; CustomerGroupingFilter.Code = CustomerGrouping_CustomerGroupingFilterDTO.Code; CustomerGroupingFilter.Name = CustomerGrouping_CustomerGroupingFilterDTO.Name; CustomerGroupingFilter.CustomerTypeId = CustomerGrouping_CustomerGroupingFilterDTO.CustomerTypeId; CustomerGroupingFilter.ParentId = CustomerGrouping_CustomerGroupingFilterDTO.ParentId; CustomerGroupingFilter.Path = CustomerGrouping_CustomerGroupingFilterDTO.Path; CustomerGroupingFilter.Level = CustomerGrouping_CustomerGroupingFilterDTO.Level; CustomerGroupingFilter.StatusId = CustomerGrouping_CustomerGroupingFilterDTO.StatusId; CustomerGroupingFilter.Description = CustomerGrouping_CustomerGroupingFilterDTO.Description; CustomerGroupingFilter.CreatedAt = CustomerGrouping_CustomerGroupingFilterDTO.CreatedAt; CustomerGroupingFilter.UpdatedAt = CustomerGrouping_CustomerGroupingFilterDTO.UpdatedAt; return(CustomerGroupingFilter); }
public async Task <ActionResult> ExportTemplate([FromBody] CustomerGrouping_CustomerGroupingFilterDTO CustomerGrouping_CustomerGroupingFilterDTO) { if (UnAuthorization) { return(Forbid()); } if (!ModelState.IsValid) { throw new BindException(ModelState); } string path = "Templates/CustomerGrouping_Template.xlsx"; byte[] arr = System.IO.File.ReadAllBytes(path); MemoryStream input = new MemoryStream(arr); MemoryStream output = new MemoryStream(); dynamic Data = new ExpandoObject(); using (var document = StaticParams.DocumentFactory.Open(input, output, "xlsx")) { document.Process(Data); }; return(File(output.ToArray(), "application/octet-stream", "CustomerGrouping.xlsx")); }
public async Task <ActionResult <List <CustomerGrouping_CustomerGroupingDTO> > > List([FromBody] CustomerGrouping_CustomerGroupingFilterDTO CustomerGrouping_CustomerGroupingFilterDTO) { if (UnAuthorization) { return(Forbid()); } if (!ModelState.IsValid) { throw new BindException(ModelState); } CustomerGroupingFilter CustomerGroupingFilter = ConvertFilterDTOToFilterEntity(CustomerGrouping_CustomerGroupingFilterDTO); CustomerGroupingFilter = await CustomerGroupingService.ToFilter(CustomerGroupingFilter); List <CustomerGrouping> CustomerGroupings = await CustomerGroupingService.List(CustomerGroupingFilter); List <CustomerGrouping_CustomerGroupingDTO> CustomerGrouping_CustomerGroupingDTOs = CustomerGroupings .Select(c => new CustomerGrouping_CustomerGroupingDTO(c)).ToList(); return(CustomerGrouping_CustomerGroupingDTOs); }
public async Task <ActionResult> Export([FromBody] CustomerGrouping_CustomerGroupingFilterDTO CustomerGrouping_CustomerGroupingFilterDTO) { if (UnAuthorization) { return(Forbid()); } if (!ModelState.IsValid) { throw new BindException(ModelState); } MemoryStream memoryStream = new MemoryStream(); using (ExcelPackage excel = new ExcelPackage(memoryStream)) { #region CustomerGrouping var CustomerGroupingFilter = ConvertFilterDTOToFilterEntity(CustomerGrouping_CustomerGroupingFilterDTO); CustomerGroupingFilter.Skip = 0; CustomerGroupingFilter.Take = int.MaxValue; CustomerGroupingFilter = await CustomerGroupingService.ToFilter(CustomerGroupingFilter); List <CustomerGrouping> CustomerGroupings = await CustomerGroupingService.List(CustomerGroupingFilter); var CustomerGroupingHeaders = new List <string[]>() { new string[] { "Id", "Code", "Name", "CustomerTypeId", "ParentId", "Path", "Level", "StatusId", "Description", } }; List <object[]> CustomerGroupingData = new List <object[]>(); for (int i = 0; i < CustomerGroupings.Count; i++) { var CustomerGrouping = CustomerGroupings[i]; CustomerGroupingData.Add(new Object[] { CustomerGrouping.Id, CustomerGrouping.Code, CustomerGrouping.Name, CustomerGrouping.CustomerTypeId, CustomerGrouping.ParentId, CustomerGrouping.Path, CustomerGrouping.Level, CustomerGrouping.StatusId, CustomerGrouping.Description, }); } excel.GenerateWorksheet("CustomerGrouping", CustomerGroupingHeaders, CustomerGroupingData); #endregion #region CustomerType var CustomerTypeFilter = new CustomerTypeFilter(); CustomerTypeFilter.Selects = CustomerTypeSelect.ALL; CustomerTypeFilter.OrderBy = CustomerTypeOrder.Id; CustomerTypeFilter.OrderType = OrderType.ASC; CustomerTypeFilter.Skip = 0; CustomerTypeFilter.Take = int.MaxValue; List <CustomerType> CustomerTypes = await CustomerTypeService.List(CustomerTypeFilter); var CustomerTypeHeaders = new List <string[]>() { new string[] { "Id", "Code", "Name", "Description", "StatusId", "Used", "RowId", } }; List <object[]> CustomerTypeData = new List <object[]>(); for (int i = 0; i < CustomerTypes.Count; i++) { var CustomerType = CustomerTypes[i]; CustomerTypeData.Add(new Object[] { CustomerType.Id, CustomerType.Code, CustomerType.Name, }); } excel.GenerateWorksheet("CustomerType", CustomerTypeHeaders, CustomerTypeData); #endregion #region Status var StatusFilter = new StatusFilter(); StatusFilter.Selects = StatusSelect.ALL; StatusFilter.OrderBy = StatusOrder.Id; StatusFilter.OrderType = OrderType.ASC; StatusFilter.Skip = 0; StatusFilter.Take = int.MaxValue; List <Status> Statuses = await StatusService.List(StatusFilter); var StatusHeaders = new List <string[]>() { new string[] { "Id", "Code", "Name", } }; List <object[]> StatusData = new List <object[]>(); for (int i = 0; i < Statuses.Count; i++) { var Status = Statuses[i]; StatusData.Add(new Object[] { Status.Id, Status.Code, Status.Name, }); } excel.GenerateWorksheet("Status", StatusHeaders, StatusData); #endregion excel.Save(); } return(File(memoryStream.ToArray(), "application/octet-stream", "CustomerGrouping.xlsx")); }
public async Task <ActionResult <List <CustomerGrouping_CustomerGroupingDTO> > > FilterListCustomerGroupinging([FromBody] CustomerGrouping_CustomerGroupingFilterDTO CustomerGrouping_CustomerGroupingFilterDTO) { if (UnAuthorization) { return(Forbid()); } if (!ModelState.IsValid) { throw new BindException(ModelState); } CustomerGroupingFilter CustomerGroupingFilter = new CustomerGroupingFilter(); CustomerGroupingFilter.Skip = 0; CustomerGroupingFilter.Take = int.MaxValue; CustomerGroupingFilter.OrderBy = CustomerGroupingOrder.Id; CustomerGroupingFilter.OrderType = OrderType.ASC; CustomerGroupingFilter.Selects = CustomerGroupingSelect.ALL; CustomerGroupingFilter.Id = CustomerGrouping_CustomerGroupingFilterDTO.Id; CustomerGroupingFilter.Code = CustomerGrouping_CustomerGroupingFilterDTO.Code; CustomerGroupingFilter.Name = CustomerGrouping_CustomerGroupingFilterDTO.Name; CustomerGroupingFilter.CustomerTypeId = CustomerGrouping_CustomerGroupingFilterDTO.CustomerTypeId; CustomerGroupingFilter.ParentId = CustomerGrouping_CustomerGroupingFilterDTO.ParentId; CustomerGroupingFilter.Path = CustomerGrouping_CustomerGroupingFilterDTO.Path; CustomerGroupingFilter.Level = CustomerGrouping_CustomerGroupingFilterDTO.Level; CustomerGroupingFilter.StatusId = CustomerGrouping_CustomerGroupingFilterDTO.StatusId; CustomerGroupingFilter.Description = CustomerGrouping_CustomerGroupingFilterDTO.Description; List <CustomerGrouping> CustomerGroupings = await CustomerGroupingService.List(CustomerGroupingFilter); List <CustomerGrouping_CustomerGroupingDTO> CustomerGrouping_CustomerGroupingDTOs = CustomerGroupings .Select(x => new CustomerGrouping_CustomerGroupingDTO(x)).ToList(); return(CustomerGrouping_CustomerGroupingDTOs); }