diff --git a/OpenAuth.App/OrgManagerApp.cs b/OpenAuth.App/OrgManagerApp.cs
index 066450fd..ee9251cf 100644
--- a/OpenAuth.App/OrgManagerApp.cs
+++ b/OpenAuth.App/OrgManagerApp.cs
@@ -68,14 +68,22 @@ namespace OpenAuth.App
return _repository.Find(u => u.ParentId == orgId);
}
- //得到部门的所有子部门
+ ///
+ /// 得到部门的所有子部门
+ /// 如果orgId为0,表示取得所有部门
+ ///
public IEnumerable LoadAllChildren(int orgId)
{
- var org = _repository.FindSingle(u => u.Id == orgId);
- if (org == null)
- throw new Exception("未能找到指定对象信息");
+ string cascadeId = "0.";
+ if (orgId != 0)
+ {
+ var org = _repository.FindSingle(u => u.Id == orgId);
+ if (org == null)
+ throw new Exception("未能找到指定对象信息");
+ cascadeId = org.CascadeId;
+ }
- return _repository.Find(u => u.CascadeId.Contains(org.CascadeId) && u.Id != orgId);
+ return _repository.Find(u => u.CascadeId.Contains(cascadeId) && u.Id != orgId);
}
///
@@ -109,4 +117,4 @@ namespace OpenAuth.App
#endregion 私有方法
}
-}
\ No newline at end of file
+}
diff --git a/OpenAuth.Mvc/Controllers/OrgManagerController.cs b/OpenAuth.Mvc/Controllers/OrgManagerController.cs
index 3b22b597..52e79618 100644
--- a/OpenAuth.Mvc/Controllers/OrgManagerController.cs
+++ b/OpenAuth.Mvc/Controllers/OrgManagerController.cs
@@ -6,13 +6,14 @@ using System.Web.Mvc;
using Infrastructure;
using OpenAuth.App;
using OpenAuth.Domain;
+using OpenAuth.Mvc.Models;
namespace OpenAuth.Mvc.Controllers
{
public class OrgManagerController : BaseController
{
private OrgManagerApp _orgApp;
- private Response _response = new Response();
+ private BjuiResponse _bjuiResponse = new BjuiResponse();
public OrgManagerController()
{
@@ -25,12 +26,39 @@ namespace OpenAuth.Mvc.Controllers
return View();
}
+ ///
+ /// 选择上级机构页面
+ ///
+ /// ActionResult.
public ActionResult LookupParent()
{
return View();
}
+ public ActionResult AddOrg()
+ {
+ return View();
+ }
+
+ //添加组织提交
+ [HttpPost]
+ public string AddOrg(Org org)
+ {
+ try
+ {
+ _orgApp.AddOrg(org);
+ }
+ catch (Exception ex)
+ {
+ _bjuiResponse.statusCode = "300";
+ _bjuiResponse.message = ex.Message;
+ }
+ return JsonHelper.Instance.Serialize(_bjuiResponse);
+
+ }
+
+
public string LoadOrg()
{
return JsonHelper.Instance.Serialize(_orgApp.GetAll());
@@ -41,23 +69,28 @@ namespace OpenAuth.Mvc.Controllers
return JsonHelper.Instance.Serialize(_orgApp.LoadAllChildren(id));
}
- public string DelOrg(string json)
+ ///
+ /// 删除指定ID的组织
+ /// Id为逗号分开的字符串
+ ///
+ /// System.String.
+ public string DelOrg(string Id)
{
try
{
- var delObj = JsonHelper.Instance.Deserialize(json);
- foreach (var obj in delObj)
+
+ foreach (var obj in Id.Split(','))
{
- _orgApp.DelOrg(obj.Id);
+ _orgApp.DelOrg(int.Parse(obj));
}
}
catch (Exception e)
{
- _response.Status = false;
- _response.Message = e.Message;
+ _bjuiResponse.statusCode = "300";
+ _bjuiResponse.message = e.Message;
}
- return JsonHelper.Instance.Serialize(_response);
+ return JsonHelper.Instance.Serialize(_bjuiResponse);
}
}
diff --git a/OpenAuth.Mvc/Models/BJUIResponse.cs b/OpenAuth.Mvc/Models/BJUIResponse.cs
new file mode 100644
index 00000000..e39cb7a0
--- /dev/null
+++ b/OpenAuth.Mvc/Models/BJUIResponse.cs
@@ -0,0 +1,57 @@
+// ***********************************************************************
+// Assembly : OpenAuth.Mvc
+// Author : yubaolee
+// Created : 11-05-2015
+//
+// Last Modified By : yubaolee
+// Last Modified On : 11-05-2015
+// ***********************************************************************
+//
+// Copyright (c) www.cnblogs.com/yubaolee. All rights reserved.
+//
+// B-JUI框架返回
+// ***********************************************************************
+
+namespace OpenAuth.Mvc.Models
+{
+ public class BjuiResponse
+ {
+ public string statusCode
+ {
+ get; set;
+
+ }
+
+ public string message
+ {
+ get; set;
+
+ }
+
+ public string tabid
+ {
+ get; set;
+
+ }
+
+ public bool closeCurrent
+ {
+ get; set;
+
+ }
+
+ public string forward { get; set; }
+ public string forwardConfirm { get; set; }
+
+
+ public BjuiResponse()
+ {
+ statusCode = "200";
+ message = "操作成功";
+ tabid = "";
+ closeCurrent = false;
+ forward = "";
+ forwardConfirm = "";
+ }
+ }
+}
\ No newline at end of file
diff --git a/OpenAuth.Mvc/OpenAuth.Mvc.csproj b/OpenAuth.Mvc/OpenAuth.Mvc.csproj
index d610d182..814e1877 100644
--- a/OpenAuth.Mvc/OpenAuth.Mvc.csproj
+++ b/OpenAuth.Mvc/OpenAuth.Mvc.csproj
@@ -130,6 +130,7 @@
Global.asax
+
@@ -611,6 +612,7 @@
+
diff --git a/OpenAuth.Mvc/Views/OrgManager/AddOrg.cshtml b/OpenAuth.Mvc/Views/OrgManager/AddOrg.cshtml
new file mode 100644
index 00000000..d0d20df4
--- /dev/null
+++ b/OpenAuth.Mvc/Views/OrgManager/AddOrg.cshtml
@@ -0,0 +1,47 @@
+
+@{
+ ViewBag.Title = "title";
+ Layout = null;
+}
+
+
+
diff --git a/OpenAuth.Mvc/Views/OrgManager/Index.cshtml b/OpenAuth.Mvc/Views/OrgManager/Index.cshtml
index 81f11e79..fc7f773a 100644
--- a/OpenAuth.Mvc/Views/OrgManager/Index.cshtml
+++ b/OpenAuth.Mvc/Views/OrgManager/Index.cshtml
@@ -5,7 +5,7 @@
@@ -17,23 +17,30 @@
});
//加载数据到datagrid
function loadDataGrid(data) {
- $('#test-datagrid-array').datagrid({
+ //b-jui的datagrid需要重新处理HTML
+ $('#ztree-detail').empty()
+ .append('');
+ $('#mainGrid').datagrid({
gridTitle: '机构列表显示',
showToolbar: true,
- toolbarItem: 'add, edit, refresh, |, del',
- //toolbarCustom: '' +
- // '',
+ toolbarItem: 'refresh, |, del',
+ toolbarCustom: '添加' +
+ '',
columns: [
- {
- name: 'Id',
- label:'Id',
- hide: true,
- edit:false
- },
+ {
+ name: 'Id',
+ label: 'Id',
+ hide: true
+ },
+ {
+ name: 'ParentId',
+ label: '上级机构ID',
+ hide: true
+ },
{
name: 'CascadeId',
- label: '唯一标识',
- edit:false
+ label: '唯一标识'
},
{
name: 'Name',
@@ -41,9 +48,7 @@
},
{
name: 'ParentName',
- label: '上级机构',
- type: 'lookup',
- attrs: { 'data-url': 'OrgManager/LookupParent' }
+ label: '上级机构'
},
{
name: 'Status',
@@ -58,12 +63,15 @@
},
{
name: 'CreateTime',
- label: '登记日期'
+ label: '登记日期',
+ type: 'date',
+ pattern: 'yyyy-MM-dd HH:mm:ss'
}
],
data: data,
addUrl: 'OrgManager/AddOrg',
delUrl: 'OrgManager/DelOrg',
+ delPK: "Id",
editUrl: 'OrgManager/EditOrg',
editMode: 'dialog',
fullGrid: true,
@@ -73,10 +81,10 @@
filterMult: false,
showTfoot: true,
delCallback: function (delResult) {
- if (delResult.Status == true)
+ if (delResult.statusCode == "200")
Init(selectedId);
else {
- $(this).alertmsg('warn', delResult.Message);
+ $(this).alertmsg('warn', delResult.message);
}
}
});
@@ -86,10 +94,10 @@
$.getJSON('OrgManager/LoadChildren', {
id: treeNode.Id
}, function (json) {
- $('#ztree-detail').empty().append('');
loadDataGrid(json);
});
}
+
function Init(selectedId) {
var setting = {
view: {
@@ -114,37 +122,47 @@
$.getJSON('OrgManager/LoadOrg', function (json) {
var zTreeObj = $.fn.zTree.init($('#orgTree'), setting, json);
zTreeObj.expandAll(true);
- if (selectedId == 0) {
- loadDataGrid(json);
- } else {
- //TODO:设置ztree选中,不过没看到效果..
- var selectedNod = zTreeObj.getNodesByParam('Id', selectedId, null);
- zTreeObj.selectNode(selectedNod, false);
- $.getJSON('OrgManager/LoadChildren', {
- id: selectedId
- }, function (data) {
- $('#ztree-detail').empty().append('');
- loadDataGrid(data);
- });
- }
+
+ $.getJSON('OrgManager/LoadChildren', {
+ id: selectedId
+ }, function (data) {
+ loadDataGrid(data);
+ });
+
+ //TODO:设置ztree选中,不过没看到效果..
+ var selectedNod = zTreeObj.getNodesByParam('Id', selectedId, null);
+ zTreeObj.selectNode(selectedNod, false);
+
});
}
- function getSelected() {
- var selected = $('#test-datagrid-array').data('selectedTrs');
- if (selected == null) {
+
+ //获取勾选的值
+ //column:为从0开始的列标识
+ function getSelected(column) {
+ var selected = $('#mainGrid').data('selectedTrs');
+ if (selected == null || selected.length == 0) {
$(this).alertmsg('warn', '至少选择一个对象', {
displayMode: 'slide',
title: '重要提示'
});
+ return null;
}
- return selected;
+
+ var records = new Array();
+ selected.each(function () {
+ records[records.length] = this.children[column].innerText;
+ });
+
+ return records;
}
+
+
//自定义的编辑按钮
function editOrg() {
- var selected = getSelected();
+ var selected = getSelected(2);
if (selected == null) return;
}
//@@ sourceURL=orgIndex.js
-
\ No newline at end of file
+