You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
using NFine.Application.SystemManage; using NFine.Code; using NFine.Domain._03_Entity.SystemManage; using NFine.Domain.Entity.SystemManage; using NPOI.SS.Formula.Functions; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Web.Mvc; using System.Web.Razor.Tokenizer.Symbols;
namespace NFine.Web.Areas.SystemManage.Controllers { public class OrganizeByVendorController : ControllerBase { private OrganizeByVendorApp organizeApp = new OrganizeByVendorApp();
[HttpGet] [HandlerAjaxOnly] public ActionResult GetTreeSelectJson() { string RoleEnCode = NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode; string RoleFullName = NFine.Code.OperatorProvider.Provider.GetCurrent().RoleFullName; var data = organizeApp.GetList(); var treeList = new List<TreeSelectModel>(); if (RoleFullName.Contains("采购")) { var mainddata = data.Where(x => x.F_EnCode.Contains(RoleEnCode)).ToList(); var detailpart = new List<OrganizeByVendorEntity>(); //var query = from a in data
// join b in data on a.F_Id equals b.F_ParentId into ab
// from detail in ab.DefaultIfEmpty()
// where a.F_EnCode == RoleEnCode
// select new {
// main=a,
// dets=detail
// };
foreach (var item in mainddata) { detailpart = data.Where(x => item.F_Id == x.F_ParentId).ToList(); TreeSelectModel treeModel = new TreeSelectModel(); treeModel.id = item.F_Id; treeModel.text = item.F_FullName; treeModel.parentId = item.F_ParentId; treeModel.data = item; treeList.Add(treeModel); foreach (var detail in detailpart) { TreeSelectModel treeModeldetail = new TreeSelectModel(); treeModeldetail.id = detail.F_Id; treeModeldetail.text = detail.F_FullName; ; treeModeldetail.parentId = detail.F_ParentId; treeModel.data = detail; treeList.Add(treeModeldetail); } } } else { foreach (OrganizeByVendorEntity item in data) { TreeSelectModel treeModel = new TreeSelectModel(); //bool hasChildren = data.Count(t => t.F_ParentId == item.F_Id) == 0 ? false : true;
treeModel.id = item.F_Id; treeModel.text = item.F_FullName; treeModel.parentId = item.F_ParentId; treeModel.data = item; treeList.Add(treeModel); } }
return Content(treeList.TreeSelectJson()); }
[HttpGet] [HandlerAjaxOnly] public ActionResult GetTreeJson() { var data = organizeApp.GetList(); var treeList = new List<TreeViewModel>(); foreach (OrganizeByVendorEntity item in data) { TreeViewModel tree = new TreeViewModel(); bool hasChildren = data.Count(t => t.F_ParentId == item.F_Id) == 0 ? false : true; tree.id = item.F_Id; tree.text = item.F_FullName; tree.value = item.F_EnCode; tree.parentId = item.F_ParentId; tree.isexpand = true; tree.complete = true; tree.hasChildren = hasChildren; treeList.Add(tree); } return Content(treeList.TreeViewJson()); }
[HttpGet] [HandlerAjaxOnly] public ActionResult GetTreeGridJson(string keyword) { string RoleEnCode = NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode; string RoleFullName = NFine.Code.OperatorProvider.Provider.GetCurrent().RoleFullName; var data = organizeApp.GetList(); if (!string.IsNullOrEmpty(keyword)) { data = data.Where(x=>x.F_FullName.Contains(keyword)).ToList(); } var treeList = new List<TreeGridModel>(); if (RoleFullName.Contains("采购")) { var mainddata = data.Where(x => x.F_EnCode.Contains(RoleEnCode)).ToList(); var detailpart = new List<OrganizeByVendorEntity>(); //var query = from a in data
// join b in data on a.F_Id equals b.F_ParentId into ab
// from detail in ab.DefaultIfEmpty()
// where a.F_EnCode == RoleEnCode
// select new {
// main=a,
// dets=detail
// };
foreach (var item in mainddata) { detailpart = data.Where(x => item.F_Id == x.F_ParentId).ToList(); TreeGridModel treeModel = new TreeGridModel(); treeModel.id = item.F_Id; treeModel.isLeaf = true; treeModel.parentId = item.F_ParentId; treeModel.expanded = true; treeModel.entityJson = item.ToJson(); treeList.Add(treeModel); foreach (var detail in detailpart) { TreeGridModel treeModeldetail = new TreeGridModel(); treeModeldetail.id = detail.F_Id; treeModeldetail.isLeaf = false; treeModeldetail.parentId = detail.F_ParentId; treeModeldetail.expanded = false; treeModeldetail.entityJson = detail.ToJson(); treeList.Add(treeModeldetail); } } } else { foreach (OrganizeByVendorEntity item in data) { TreeGridModel treeModel = new TreeGridModel(); bool hasChildren = data.Count(t => t.F_ParentId == item.F_Id) == 0 ? false : true; treeModel.id = item.F_Id; treeModel.isLeaf = hasChildren; treeModel.parentId = item.F_ParentId; treeModel.expanded = hasChildren; treeModel.entityJson = item.ToJson(); treeList.Add(treeModel); } } //foreach (var item in query)
//{
// TreeGridModel treeModel = new TreeGridModel();
// bool hasChildren = data.Count(t => t.F_ParentId == item.F_Id) == 0 ? false : true;
// treeModel.id = item.main.F_Id;
// treeModel.isLeaf = hasChildren;
// treeModel.parentId = item.F_ParentId;
// treeModel.expanded = hasChildren;
// treeModel.entityJson = item.ToJson();
// treeList.Add(treeModel);
//}
return Content(treeList.TreeGridJson()); }
[HttpGet] [HandlerAjaxOnly] public ActionResult GetFormJson(string keyValue) { var data = organizeApp.GetForm(keyValue); return Content(data.ToJson()); }
[HttpPost] [HandlerAjaxOnly] [ValidateAntiForgeryToken] public ActionResult SubmitForm(OrganizeByVendorEntity organizeEntity, string keyValue) { organizeApp.SubmitForm(organizeEntity, keyValue); return Success("操作成功。"); }
[HttpPost] [HandlerAjaxOnly] [HandlerAuthorize] [ValidateAntiForgeryToken] public ActionResult DeleteForm(string keyValue) { organizeApp.DeleteForm(keyValue); return Success("删除成功。"); } } }
|