示例#1
0
        public async Task <FileResult> ExportTemplate([FromBody] SmsTemplate_SmsTemplateFilterDTO SmsTemplate_SmsTemplateFilterDTO)
        {
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            MemoryStream memoryStream = new MemoryStream();

            using (ExcelPackage excel = new ExcelPackage(memoryStream))
            {
                #region SmsTemplate
                var SmsTemplateHeaders = new List <string[]>()
                {
                    new string[] {
                        "Số thứ tự",
                        "Mã *",
                        "Tiêu đề *",
                        "Nội dung",
                        "Trạng thái",
                    }
                };
                List <object[]> SmsTemplateData = new List <object[]>();
                excel.GenerateWorksheet("Mẫu tin nhắn - File template tải mẫu", SmsTemplateHeaders, SmsTemplateData);
                #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[] {
                        "Mã",
                        "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("Trạng thái tin nhắn", StatusHeaders, StatusData);
                #endregion
                excel.Save();
            }
            return(File(memoryStream.ToArray(), "application/octet-stream", "SmsTemplate.xlsx"));
        }
示例#2
0
        public async Task <ActionResult <int> > Count([FromBody] SmsTemplate_SmsTemplateFilterDTO SmsTemplate_SmsTemplateFilterDTO)
        {
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            SmsTemplateFilter SmsTemplateFilter = ConvertFilterDTOToFilterEntity(SmsTemplate_SmsTemplateFilterDTO);

            SmsTemplateFilter = SmsTemplateService.ToFilter(SmsTemplateFilter);
            int count = await SmsTemplateService.Count(SmsTemplateFilter);

            return(count);
        }
示例#3
0
        public async Task <ActionResult <List <SmsTemplate_SmsTemplateDTO> > > List([FromBody] SmsTemplate_SmsTemplateFilterDTO SmsTemplate_SmsTemplateFilterDTO)
        {
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            SmsTemplateFilter SmsTemplateFilter = ConvertFilterDTOToFilterEntity(SmsTemplate_SmsTemplateFilterDTO);

            SmsTemplateFilter = SmsTemplateService.ToFilter(SmsTemplateFilter);
            List <SmsTemplate> SmsTemplates = await SmsTemplateService.List(SmsTemplateFilter);

            List <SmsTemplate_SmsTemplateDTO> SmsTemplate_SmsTemplateDTOs = SmsTemplates
                                                                            .Select(c => new SmsTemplate_SmsTemplateDTO(c)).ToList();

            return(SmsTemplate_SmsTemplateDTOs);
        }
示例#4
0
        private SmsTemplateFilter ConvertFilterDTOToFilterEntity(SmsTemplate_SmsTemplateFilterDTO SmsTemplate_SmsTemplateFilterDTO)
        {
            SmsTemplateFilter SmsTemplateFilter = new SmsTemplateFilter();

            SmsTemplateFilter.Selects   = SmsTemplateSelect.ALL;
            SmsTemplateFilter.Skip      = SmsTemplate_SmsTemplateFilterDTO.Skip;
            SmsTemplateFilter.Take      = SmsTemplate_SmsTemplateFilterDTO.Take;
            SmsTemplateFilter.OrderBy   = SmsTemplate_SmsTemplateFilterDTO.OrderBy;
            SmsTemplateFilter.OrderType = SmsTemplate_SmsTemplateFilterDTO.OrderType;

            SmsTemplateFilter.Id        = SmsTemplate_SmsTemplateFilterDTO.Id;
            SmsTemplateFilter.Code      = SmsTemplate_SmsTemplateFilterDTO.Code;
            SmsTemplateFilter.Name      = SmsTemplate_SmsTemplateFilterDTO.Name;
            SmsTemplateFilter.Content   = SmsTemplate_SmsTemplateFilterDTO.Content;
            SmsTemplateFilter.StatusId  = SmsTemplate_SmsTemplateFilterDTO.StatusId;
            SmsTemplateFilter.CreatedAt = SmsTemplate_SmsTemplateFilterDTO.CreatedAt;
            SmsTemplateFilter.UpdatedAt = SmsTemplate_SmsTemplateFilterDTO.UpdatedAt;
            return(SmsTemplateFilter);
        }
示例#5
0
        public async Task <FileResult> Export([FromBody] SmsTemplate_SmsTemplateFilterDTO SmsTemplate_SmsTemplateFilterDTO)
        {
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            MemoryStream memoryStream = new MemoryStream();

            using (ExcelPackage excel = new ExcelPackage(memoryStream))
            {
                #region SmsTemplate
                var SmsTemplateFilter = ConvertFilterDTOToFilterEntity(SmsTemplate_SmsTemplateFilterDTO);
                SmsTemplateFilter.Skip = 0;
                SmsTemplateFilter.Take = int.MaxValue;
                SmsTemplateFilter      = SmsTemplateService.ToFilter(SmsTemplateFilter);
                List <SmsTemplate> SmsTemplates = await SmsTemplateService.List(SmsTemplateFilter);

                var SmsTemplateHeaders = new List <string[]>()
                {
                    new string[] {
                        "Id",
                        "Code",
                        "Name",
                        "Content",
                        "StatusId",
                    }
                };
                List <object[]> SmsTemplateData = new List <object[]>();
                for (int i = 0; i < SmsTemplates.Count; i++)
                {
                    var SmsTemplate = SmsTemplates[i];
                    SmsTemplateData.Add(new Object[]
                    {
                        SmsTemplate.Id,
                        SmsTemplate.Code,
                        SmsTemplate.Name,
                        SmsTemplate.Content,
                        SmsTemplate.StatusId,
                    });
                }
                excel.GenerateWorksheet("SmsTemplate", SmsTemplateHeaders, SmsTemplateData);
                #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", "SmsTemplate.xlsx"));
        }