Ejemplo n.º 1
0
        public async Task <ActionResult <int> > Count([FromBody] Place_PlaceFilterDTO Place_PlaceFilterDTO)
        {
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            PlaceFilter PlaceFilter = ConvertFilterDTOToFilterEntity(Place_PlaceFilterDTO);

            PlaceFilter = await PlaceService.ToFilter(PlaceFilter);

            int count = await PlaceService.Count(PlaceFilter);

            return(count);
        }
Ejemplo n.º 2
0
        public async Task <ActionResult <List <Place_PlaceDTO> > > List([FromBody] Place_PlaceFilterDTO Place_PlaceFilterDTO)
        {
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            PlaceFilter PlaceFilter = ConvertFilterDTOToFilterEntity(Place_PlaceFilterDTO);

            PlaceFilter = await PlaceService.ToFilter(PlaceFilter);

            List <Place> Places = await PlaceService.List(PlaceFilter);

            List <Place_PlaceDTO> Place_PlaceDTOs = Places
                                                    .Select(c => new Place_PlaceDTO(c)).ToList();

            return(Place_PlaceDTOs);
        }
Ejemplo n.º 3
0
        private PlaceFilter ConvertFilterDTOToFilterEntity(Place_PlaceFilterDTO Place_PlaceFilterDTO)
        {
            PlaceFilter PlaceFilter = new PlaceFilter();

            PlaceFilter.Selects   = PlaceSelect.ALL;
            PlaceFilter.Skip      = Place_PlaceFilterDTO.Skip;
            PlaceFilter.Take      = Place_PlaceFilterDTO.Take;
            PlaceFilter.OrderBy   = Place_PlaceFilterDTO.OrderBy;
            PlaceFilter.OrderType = Place_PlaceFilterDTO.OrderType;

            PlaceFilter.Id           = Place_PlaceFilterDTO.Id;
            PlaceFilter.Name         = Place_PlaceFilterDTO.Name;
            PlaceFilter.PlaceGroupId = Place_PlaceFilterDTO.PlaceGroupId;
            PlaceFilter.Radius       = Place_PlaceFilterDTO.Radius;
            PlaceFilter.Latitude     = Place_PlaceFilterDTO.Latitude;
            PlaceFilter.Longtitude   = Place_PlaceFilterDTO.Longtitude;
            PlaceFilter.CreatedAt    = Place_PlaceFilterDTO.CreatedAt;
            PlaceFilter.UpdatedAt    = Place_PlaceFilterDTO.UpdatedAt;
            return(PlaceFilter);
        }
Ejemplo n.º 4
0
        public async Task <ActionResult> ExportTemplate([FromBody] Place_PlaceFilterDTO Place_PlaceFilterDTO)
        {
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            string path = "Templates/Place_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", "Place.xlsx"));
        }
Ejemplo n.º 5
0
        public async Task <ActionResult> Export([FromBody] Place_PlaceFilterDTO Place_PlaceFilterDTO)
        {
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            MemoryStream memoryStream = new MemoryStream();

            using (ExcelPackage excel = new ExcelPackage(memoryStream))
            {
                #region Place
                var PlaceFilter = ConvertFilterDTOToFilterEntity(Place_PlaceFilterDTO);
                PlaceFilter.Skip = 0;
                PlaceFilter.Take = int.MaxValue;
                PlaceFilter      = await PlaceService.ToFilter(PlaceFilter);

                List <Place> Places = await PlaceService.List(PlaceFilter);

                var PlaceHeaders = new List <string[]>()
                {
                    new string[] {
                        "Id",
                        "Name",
                        "PlaceGroupId",
                        "Radius",
                        "Latitude",
                        "Longtitude",
                    }
                };
                List <object[]> PlaceData = new List <object[]>();
                for (int i = 0; i < Places.Count; i++)
                {
                    var Place = Places[i];
                    PlaceData.Add(new Object[]
                    {
                        Place.Id,
                        Place.Name,
                        Place.PlaceGroupId,
                        Place.Radius,
                        Place.Latitude,
                        Place.Longtitude,
                    });
                }
                excel.GenerateWorksheet("Place", PlaceHeaders, PlaceData);
                #endregion

                #region PlaceGroup
                var PlaceGroupFilter = new PlaceGroupFilter();
                PlaceGroupFilter.Selects   = PlaceGroupSelect.ALL;
                PlaceGroupFilter.OrderBy   = PlaceGroupOrder.Id;
                PlaceGroupFilter.OrderType = OrderType.ASC;
                PlaceGroupFilter.Skip      = 0;
                PlaceGroupFilter.Take      = int.MaxValue;
                List <PlaceGroup> PlaceGroups = await PlaceGroupService.List(PlaceGroupFilter);

                var PlaceGroupHeaders = new List <string[]>()
                {
                    new string[] {
                        "Id",
                        "ParentId",
                        "Name",
                        "Code",
                    }
                };
                List <object[]> PlaceGroupData = new List <object[]>();
                for (int i = 0; i < PlaceGroups.Count; i++)
                {
                    var PlaceGroup = PlaceGroups[i];
                    PlaceGroupData.Add(new Object[]
                    {
                        PlaceGroup.Id,
                        PlaceGroup.ParentId,
                        PlaceGroup.Name,
                        PlaceGroup.Code,
                    });
                }
                excel.GenerateWorksheet("PlaceGroup", PlaceGroupHeaders, PlaceGroupData);
                #endregion
                excel.Save();
            }
            return(File(memoryStream.ToArray(), "application/octet-stream", "Place.xlsx"));
        }