Example #1
0
        public IActionResult Create(OrgCategory model)
        {
            string errorMessage = string.Empty;

            if (ModelState.IsValid)
            {
                // TODO : Get Org Id from Claims
                var orgCatObj = new Church.API.Models.OrganizationCategory()
                {
                    OrganizationId = 2, CategoryName = model.CategoryName, UserAdded = "smathe"
                };

                var apiOrgCategory = new Church.API.Client.ApiCallerOrganizationCategory(_apiUrl.SSChurch);

                try
                {
                    apiOrgCategory.PostAddOrganizationCategory(orgCatObj);
                }
                catch (Exception ex)
                {
                    errorMessage = ex.Message;
                    ModelState.AddModelError("OrgCategoryError", errorMessage);
                }
            }

            ViewBag.ErrorMessage = errorMessage;

            return(PartialView("_AddEditOrgCategoryModalPartial", model));
        }
Example #2
0
        public IActionResult Create()
        {
            var model = new OrgCategory {
            };

            return(PartialView("_AddEditOrgCategoryModalPartial", model));
        }
        public JsonResult DelCategory(string ids)
        {
            bool   result  = true;
            string message = string.Empty;

            return(ExecuteFunctionRun(() =>
            {
                string[] idArr = ids.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);

                foreach (string id in idArr)
                {
                    OrgCategory c = this.Engine.Organization.GetCategoryByObjectID(id);
                    if (this.Engine.Organization.GetCategoryReferences(c.Code).Count > 0)
                    {
                        result = false;
                        message += "组织类型:" + c.DisplayName + "已经绑定组织,请先解除绑定再删除;";
                        continue;
                    }

                    if (!this.Engine.Organization.RemoveOrgCategory(id))
                    {
                        result = false;
                        message += "EditCategory.DelFailed,EditCategory.ObjectID=" + id;
                    }
                }

                //这里更改主要是考虑作为服务方法,如果执行出现错误,那么服务端应该尽量将关键信息传递给前端知道
                ActionResult actionResult = new ActionResult(result,
                                                             result ? "msgGlobalString.SaveSucced" : "msgGlobalString.SaveFailed");

                actionResult.Extend = message;

                return Json(actionResult, JsonRequestBehavior.AllowGet);
            }));
        }
Example #4
0
        public IActionResult Edit(int id)
        {
            var orgCategory = apiOrgCategory.GetOrganizationCategoryById(id);

            var model = new OrgCategory {
                OrganizationCategoryId = orgCategory.OrganizationCategoryId, OrganizationId = orgCategory.OrganizationId, CategoryName = orgCategory.CategoryName
            };

            return(PartialView("_AddEditOrgCategoryModalPartial", model));
        }
        /// <summary>
        /// 获取绑定了指定组织类型的组织
        /// </summary>
        /// <param name="categoryCode">组织类型编码</param>
        /// <returns>返回绑定了指定组织类型的组织</returns>
        public JsonResult GetOrgListByCategoryCode(string categoryCode)
        {
            return(ExecuteFunctionRun(() =>
            {
                List <OThinker.Organization.Unit> listUnit = this.Engine.Organization.GetCategoryReferences(categoryCode);
                OrgCategory category = this.Engine.Organization.GetCategoryByCode(categoryCode);
                if (category == null)
                {
                    return null;
                }

                if (listUnit == null || listUnit.Count == 0)
                {
                    //没有数据时直接返回空对象
                    return Json(new Dictionary <string, string>());
                }

                List <string> ids = new List <string>();
                foreach (Unit unit in listUnit)
                {
                    ids.Add(unit.ObjectID);
                }
                Dictionary <string, string> fullNames = this.Engine.Organization.GetFullNames(ids.ToArray());

                List <object> objs = new List <object>();
                foreach (string key in fullNames.Keys)
                {
                    objs.Add(new {
                        ObjectID = key,
                        OrgFullPath = fullNames[key],
                        Category = category.DisplayName
                    });
                }

                var gridData = CreateLigerUIGridData(objs.ToArray());

                return Json(gridData, JsonRequestBehavior.AllowGet);
            }));
        }