Пример #1
0
        private KnowledgeArticleFilter ConvertFilterDTOToFilterEntity(KnowledgeArticle_KnowledgeArticleFilterDTO KnowledgeArticle_KnowledgeArticleFilterDTO)
        {
            KnowledgeArticleFilter KnowledgeArticleFilter = new KnowledgeArticleFilter();

            KnowledgeArticleFilter.Selects   = KnowledgeArticleSelect.ALL;
            KnowledgeArticleFilter.Skip      = KnowledgeArticle_KnowledgeArticleFilterDTO.Skip;
            KnowledgeArticleFilter.Take      = KnowledgeArticle_KnowledgeArticleFilterDTO.Take;
            KnowledgeArticleFilter.OrderBy   = KnowledgeArticle_KnowledgeArticleFilterDTO.OrderBy;
            KnowledgeArticleFilter.OrderType = KnowledgeArticle_KnowledgeArticleFilterDTO.OrderType;

            KnowledgeArticleFilter.Id           = KnowledgeArticle_KnowledgeArticleFilterDTO.Id;
            KnowledgeArticleFilter.Title        = KnowledgeArticle_KnowledgeArticleFilterDTO.Title;
            KnowledgeArticleFilter.Detail       = KnowledgeArticle_KnowledgeArticleFilterDTO.Detail;
            KnowledgeArticleFilter.StatusId     = KnowledgeArticle_KnowledgeArticleFilterDTO.StatusId;
            KnowledgeArticleFilter.GroupId      = KnowledgeArticle_KnowledgeArticleFilterDTO.GroupId;
            KnowledgeArticleFilter.CreatorId    = KnowledgeArticle_KnowledgeArticleFilterDTO.CreatorId;
            KnowledgeArticleFilter.DisplayOrder = KnowledgeArticle_KnowledgeArticleFilterDTO.DisplayOrder;
            KnowledgeArticleFilter.CreatedAt    = KnowledgeArticle_KnowledgeArticleFilterDTO.CreatedAt;
            KnowledgeArticleFilter.UpdatedAt    = KnowledgeArticle_KnowledgeArticleFilterDTO.UpdatedAt;

            KnowledgeArticleFilter.FromDate       = KnowledgeArticle_KnowledgeArticleFilterDTO.FromDate;
            KnowledgeArticleFilter.ToDate         = KnowledgeArticle_KnowledgeArticleFilterDTO.ToDate;
            KnowledgeArticleFilter.ItemId         = KnowledgeArticle_KnowledgeArticleFilterDTO.ItemId;
            KnowledgeArticleFilter.KMSStatusId    = KnowledgeArticle_KnowledgeArticleFilterDTO.KMSStatusId;
            KnowledgeArticleFilter.OrganizationId = KnowledgeArticle_KnowledgeArticleFilterDTO.OrganizationId;
            return(KnowledgeArticleFilter);
        }
Пример #2
0
        public async Task <ActionResult <int> > Count([FromBody] KnowledgeArticle_KnowledgeArticleFilterDTO KnowledgeArticle_KnowledgeArticleFilterDTO)
        {
            if (UnAuthorization)
            {
                return(Forbid());
            }
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            KnowledgeArticleFilter KnowledgeArticleFilter = ConvertFilterDTOToFilterEntity(KnowledgeArticle_KnowledgeArticleFilterDTO);

            KnowledgeArticleFilter = await KnowledgeArticleService.ToFilter(KnowledgeArticleFilter);

            int count = await KnowledgeArticleService.Count(KnowledgeArticleFilter);

            return(count);
        }
Пример #3
0
        public async Task <ActionResult <List <KnowledgeArticle_KnowledgeArticleDTO> > > List([FromBody] KnowledgeArticle_KnowledgeArticleFilterDTO KnowledgeArticle_KnowledgeArticleFilterDTO)
        {
            if (UnAuthorization)
            {
                return(Forbid());
            }
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            KnowledgeArticleFilter KnowledgeArticleFilter = ConvertFilterDTOToFilterEntity(KnowledgeArticle_KnowledgeArticleFilterDTO);

            KnowledgeArticleFilter = await KnowledgeArticleService.ToFilter(KnowledgeArticleFilter);

            List <KnowledgeArticle> KnowledgeArticles = await KnowledgeArticleService.List(KnowledgeArticleFilter);

            List <KnowledgeArticle_KnowledgeArticleDTO> KnowledgeArticle_KnowledgeArticleDTOs = KnowledgeArticles
                                                                                                .Select(c => new KnowledgeArticle_KnowledgeArticleDTO(c)).ToList();

            return(KnowledgeArticle_KnowledgeArticleDTOs);
        }
Пример #4
0
        public async Task <ActionResult> ExportTemplate([FromBody] KnowledgeArticle_KnowledgeArticleFilterDTO KnowledgeArticle_KnowledgeArticleFilterDTO)
        {
            if (UnAuthorization)
            {
                return(Forbid());
            }
            if (!ModelState.IsValid)
            {
                throw new BindException(ModelState);
            }

            MemoryStream memoryStream = new MemoryStream();

            using (ExcelPackage excel = new ExcelPackage(memoryStream))
            {
                #region KnowledgeArticle
                var KnowledgeArticleHeaders = new List <string[]>()
                {
                    new string[] {
                        "Id",
                        "Title",
                        "Detail",
                        "StatusId",
                        "GroupId",
                        "CreatorId",
                        "DisplayOrder",
                    }
                };
                List <object[]> KnowledgeArticleData = new List <object[]>();
                excel.GenerateWorksheet("KnowledgeArticle", KnowledgeArticleHeaders, KnowledgeArticleData);
                #endregion

                #region AppUser
                var AppUserFilter = new AppUserFilter();
                AppUserFilter.Selects   = AppUserSelect.ALL;
                AppUserFilter.OrderBy   = AppUserOrder.Id;
                AppUserFilter.OrderType = OrderType.ASC;
                AppUserFilter.Skip      = 0;
                AppUserFilter.Take      = int.MaxValue;
                List <AppUser> AppUsers = await AppUserService.List(AppUserFilter);

                var AppUserHeaders = new List <string[]>()
                {
                    new string[] {
                        "Id",
                        "Username",
                        "DisplayName",
                        "Address",
                        "Email",
                        "Phone",
                        "SexId",
                        "Birthday",
                        "Avatar",
                        "PositionId",
                        "Department",
                        "OrganizationId",
                        "ProvinceId",
                        "Longitude",
                        "Latitude",
                        "StatusId",
                    }
                };
                List <object[]> AppUserData = new List <object[]>();
                for (int i = 0; i < AppUsers.Count; i++)
                {
                    var AppUser = AppUsers[i];
                    AppUserData.Add(new Object[]
                    {
                        AppUser.Id,
                        AppUser.Username,
                        AppUser.DisplayName,
                        AppUser.Address,
                        AppUser.Email,
                        AppUser.Phone,
                        AppUser.SexId,
                        AppUser.Birthday,
                        AppUser.Avatar,
                        AppUser.PositionId,
                        AppUser.Department,
                        AppUser.OrganizationId,
                        AppUser.ProvinceId,
                        AppUser.Longitude,
                        AppUser.Latitude,
                        AppUser.StatusId,
                    });
                }
                excel.GenerateWorksheet("AppUser", AppUserHeaders, AppUserData);
                #endregion
                #region KnowledgeGroup
                var KnowledgeGroupFilter = new KnowledgeGroupFilter();
                KnowledgeGroupFilter.Selects   = KnowledgeGroupSelect.ALL;
                KnowledgeGroupFilter.OrderBy   = KnowledgeGroupOrder.Id;
                KnowledgeGroupFilter.OrderType = OrderType.ASC;
                KnowledgeGroupFilter.Skip      = 0;
                KnowledgeGroupFilter.Take      = int.MaxValue;
                List <KnowledgeGroup> KnowledgeGroups = await KnowledgeGroupService.List(KnowledgeGroupFilter);

                var KnowledgeGroupHeaders = new List <string[]>()
                {
                    new string[] {
                        "Id",
                        "Name",
                        "Code",
                        "StatusId",
                        "DisplayOrder",
                        "Description",
                    }
                };
                List <object[]> KnowledgeGroupData = new List <object[]>();
                for (int i = 0; i < KnowledgeGroups.Count; i++)
                {
                    var KnowledgeGroup = KnowledgeGroups[i];
                    KnowledgeGroupData.Add(new Object[]
                    {
                        KnowledgeGroup.Id,
                        KnowledgeGroup.Name,
                        KnowledgeGroup.Code,
                        KnowledgeGroup.StatusId,
                        KnowledgeGroup.DisplayOrder,
                        KnowledgeGroup.Description,
                    });
                }
                excel.GenerateWorksheet("KnowledgeGroup", KnowledgeGroupHeaders, KnowledgeGroupData);
                #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", "KnowledgeArticle.xlsx"));
        }