Exemplo n.º 1
0
        /// <summary>
        /// 添加常规栏目
        /// </summary>
        /// <param name="moduleService"></param>
        /// <param name="categoryType">栏目类型</param>
        /// <returns></returns>
        public async Task <IActionResult> Add([FromServices] InterfaceModuleService moduleService, CategoryType?categoryType)
        {
            switch (categoryType)
            {
            case CategoryType.Page:
                return(View("AddPage", new Category()
                {
                    Type = CategoryType.Page, ParentId = 0, View = "Index", Target = LinkTarget._self
                }));

            case CategoryType.Link:
                return(View("AddLink", new Category()
                {
                    Type = CategoryType.Link, ParentId = 0, LinkUrl = "http://", Target = LinkTarget._self
                }));

            default:
                var modules = await moduleService.FindListAsync(true);

                var modeleArry = modules.Select(m => new SelectListItem {
                    Text = m.Name, Value = m.ModuleId.ToString()
                }).ToList();
                modeleArry.Insert(0, new SelectListItem()
                {
                    Text = "无", Value = "0", Selected = true
                });
                ViewData["Modules"] = modeleArry;
                return(View(new Category()
                {
                    Type = CategoryType.General, ParentId = 0, View = "Index", PageSize = 20, Order = 0, Target = LinkTarget._self
                }));
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 详细(修改)
        /// </summary>
        /// <param name="id">栏目ID</param>
        /// <returns></returns>
        public async Task <IActionResult> Modify([FromServices] InterfaceModuleService moduleService, int id)
        {
            var category = await _categoryService.FindAsync(id);

            if (category == null)
            {
                return(Content("栏目信息能不能为空"));
            }
            switch (category.Type)
            {
            case CategoryType.Page:
                return(View("AddPage", category));

            case CategoryType.Link:
                return(View("AddLink", category));

            default:
                var modules = await moduleService.FindListAsync(true);

                var modeleArry = modules.Select(m => new SelectListItem {
                    Text = m.Name, Value = m.ModuleId.ToString()
                }).ToList();
                modeleArry.Insert(0, new SelectListItem()
                {
                    Text = "无", Value = "0", Selected = true
                });
                ViewData["Modules"] = modeleArry;
                return(View(category));
            }
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Modify([FromServices] InterfaceModuleService moduleService, Category category)
        {
            //模型验证是否通过
            if (ModelState.IsValid)
            {
                var oResult = await _categoryService.UpdateAsync(category);

                if (oResult.Succeed)
                {
                    return(View("UpdateSucceed", category));
                }
                else
                {
                    ModelState.AddModelError("", oResult.Message);
                }
            }
            var modules = await moduleService.FindListAsync(true);

            var modeleArry = modules.Select(m => new SelectListItem {
                Text = m.Name, Value = m.ModuleId.ToString()
            }).ToList();

            modeleArry.Insert(0, new SelectListItem()
            {
                Text = "无", Value = "0", Selected = true
            });
            ViewData["Modules"] = modeleArry;
            return(View(category));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> Add([FromServices] InterfaceModuleService moduleService, Category category)
        {
            if (category == null)
            {
                return(Content("栏目信息能不能为空"));
            }
            if (ModelState.IsValid)
            {
                category.Creater = "洞庭夕照";
                var opsResult = await _categoryService.AddAsync(category);

                if (opsResult.Succeed)
                {
                    return(View("AddSucceed", category));
                }
                else
                {
                    ModelState.AddModelError("", opsResult.Message);
                }
            }
            switch (category.Type)
            {
            case CategoryType.Page:
                return(View("AddPage", category));

            case CategoryType.Link:
                return(View("AddLink", category));

            default:
                var modules = await moduleService.FindListAsync(true);

                var modeleArry = modules.Select(m => new SelectListItem {
                    Text = m.Name, Value = m.ModuleId.ToString()
                }).ToList();
                modeleArry.Insert(0, new SelectListItem()
                {
                    Text = "无", Value = "0", Selected = true
                });
                ViewData["Modules"] = modeleArry;
                return(View(category));
            }
        }
        public async Task <IActionResult> Add([FromServices] InterfaceModuleService moduleService, CategoryType?categoryType)
        {
            var modules = await moduleService.FindListAsync(true);

            var moduleArray = modules.Select(m => new SelectListItem {
                Text = m.Name, Value = m.ModuleId.ToString()
            }).ToList();

            moduleArray.Insert(0, new SelectListItem {
                Text = "无", Value = "0", Selected = true
            });
            ViewData["Modules"] = moduleArray;
            return(View(new Category()
            {
                Type = CategoryType.General, ParentId = 0, View = "Index", Order = 0, Target = LinkTarget._self, General = new CategoryGeneral()
                {
                    ContentView = "Index"
                }
            }));
        }
Exemplo n.º 6
0
 public static void InitializeModule(InterfaceModuleService moduleService)
 {
     if (moduleService.FindList().Count() == 0)
     {
         var modules = new List <Module>();
         var module  = new Module()
         {
             Controller   = "Article",
             Description  = "实现文章功能",
             Enabled      = true,
             Name         = "文章模块",
             ModuleOrders = new List <ModuleOrder> {
                 new ModuleOrder {
                     Name = "ID升序", Order = 0
                 },
                 new ModuleOrder {
                     Name = "ID降序", Order = 1
                 },
                 new ModuleOrder {
                     Name = "发布时间升序", Order = 2
                 },
                 new ModuleOrder {
                     Name = "发布时间降序", Order = 3
                 },
                 new ModuleOrder {
                     Name = "点击升序", Order = 4
                 },
                 new ModuleOrder {
                     Name = "点击降序", Order = 5
                 }
             }
         };
         modules.Add(module);
         moduleService.AddRange(modules.ToArray());
     }
 }
 public ModuleController(InterfaceModuleService interfaceModuleService)
 {
     _interfaceModuleService = interfaceModuleService;
 }
Exemplo n.º 8
0
 public ModuleController(InterfaceModuleService moduleService)
 {
     _moduleService = moduleService;
 }
Exemplo n.º 9
0
 public HomeController(InterfaceModuleService moduleService, InterfaceCategoryService categoryService, IOptions <AppOptions> options)
 {
     _moduleService   = moduleService;
     _categoryService = categoryService;
     _options         = options;
 }
        public async Task <IActionResult> Add([FromServices] InterfaceModuleService moduleService, Category category)
        {
            if (ModelState.IsValid)
            {
                //检查父栏目
                if (category.ParentId > 0)
                {
                    var parentCategory = await _categoryService.FindAsync(category.ParentId);

                    if (parentCategory == null)
                    {
                        ModelState.AddModelError("ParentId", "父栏目不存在");
                    }
                    else if (parentCategory.Type != CategoryType.General)
                    {
                        ModelState.AddModelError("ParentId", "父栏目不能添加子栏目");
                    }
                    else
                    {
                        category.ParentPath = parentCategory.ParentPath + "," + parentCategory.CategoryId;
                    }
                }
                else
                {
                    category.ParentPath = "0";
                }
                //检查栏目类型
                switch (category.Type)
                {
                case CategoryType.General:
                    if (category.General == null)
                    {
                        ModelState.AddModelError("General.Type", "请填写常规栏目内容");
                    }
                    else
                    {
                        if (category.General.ModuleId > 0)
                        {
                            if (string.IsNullOrEmpty(category.General.ContentView))
                            {
                                ModelState.AddModelError("General.ContentView", "请填写栏目视图");
                            }
                            if (category.General.ContentOrder == null)
                            {
                                ModelState.AddModelError("General.ContentOrder", "请选择内容排序方式");
                            }
                        }
                        else
                        {
                            if (category.Page != null)
                            {
                                category.Page = null;
                            }
                            if (category.Link != null)
                            {
                                category.Link = null;
                            }
                        }
                    }
                    break;

                case CategoryType.Page:
                    //检查
                    if (category.Page == null)
                    {
                        ModelState.AddModelError("General.Type", "请填写单页栏目内容");
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(category.Page.Content))
                        {
                            ModelState.AddModelError("Page.Content", "请输入单页栏目内容");
                        }
                        else
                        {
                            if (category.General != null)
                            {
                                category.General = null;
                            }
                            if (category.Link != null)
                            {
                                category.Link = null;
                            }
                        }
                    }
                    break;

                case CategoryType.Link:
                    //检查
                    if (category.Link == null)
                    {
                        ModelState.AddModelError("General.Type", "请填写连接栏目内容");
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(category.Link.Url))
                        {
                            ModelState.AddModelError("Link.Url", "请选择输入链接地址");
                        }
                        else
                        {
                            if (category.General != null)
                            {
                                category.General = null;
                            }
                            if (category.General != null)
                            {
                                category.General = null;
                            }
                        }
                    }
                    break;
                }

                //保存到数据库
                if (ModelState.IsValid)
                {
                    if (await _categoryService.AddAsync(category) > 0)
                    {
                        return(View("AddSucceed", category));
                    }
                    else
                    {
                        ModelState.AddModelError("", "保存数据失败");
                    }
                }
            }
            var modules = await moduleService.FindListAsync(true);

            var modeleArry = modules.Select(m => new SelectListItem {
                Text = m.Name, Value = m.ModuleId.ToString()
            }).ToList();

            modeleArry.Insert(0, new SelectListItem()
            {
                Text = "无", Value = "0", Selected = true
            });
            ViewData["Modules"] = modeleArry;
            return(View(category));
        }
Exemplo n.º 11
0
 public static void Initialize(InterfaceModuleService moduleService)
 {
 }