Index.cshtml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249
  1. @{
  2. ViewBag.Title = "字典管理";
  3. Layout = "~/Views/Shared/_LayoutIndex.cshtml";
  4. }
  5. <script>
  6. $(function () {
  7. InitialPage();
  8. GetTree();
  9. GetGrid();
  10. });
  11. //初始化页面
  12. function InitialPage() {
  13. //layout布局
  14. $('#layout').layout({
  15. applyDemoStyles: true,
  16. onresize: function () {
  17. $(window).resize()
  18. }
  19. });
  20. //resize重设(表格、树形)宽高
  21. $(window).resize(function (e) {
  22. window.setTimeout(function () {
  23. $('#gridTable').setGridWidth(($('.gridPanel').width()));
  24. $("#gridTable").setGridHeight($(window).height() - 141);
  25. $("#itemTree").setTreeHeight($(window).height() - 52);
  26. }, 200);
  27. e.stopPropagation();
  28. });
  29. }
  30. //加载树
  31. var _itemId = "";
  32. var _itemName = "";
  33. var _isTree = "";
  34. function GetTree() {
  35. var item = {
  36. height: $(window).height() - 52,
  37. url: "../../SystemManage/DataItem/GetTreeJson",
  38. onnodeclick: function (item) {
  39. _itemId = item.id;
  40. _itemName = item.text;
  41. _isTree = item.isTree;
  42. $("#titleinfo").html(_itemName + "(" + item.value + ")");
  43. $("#txt_Keyword").val("");
  44. $('#btn_Search').trigger("click");
  45. }
  46. };
  47. //初始化
  48. $("#itemTree").treeview(item);
  49. }
  50. //加载表格
  51. function GetGrid() {
  52. var selectedRowIndex = 0;
  53. var $gridTable = $("#gridTable");
  54. $gridTable.jqGrid({
  55. datatype: "json",
  56. height: $(window).height() - 141,
  57. autowidth: true,
  58. colModel: [
  59. { label: '主键', name: 'ItemDetailId', hidden: true },
  60. { label: '&nbsp;&nbsp;&nbsp;&nbsp;项目名', name: 'ItemName', index: 'ItemName', width: 200, align: 'left', sortable: false },
  61. { label: '项目值', name: 'ItemValue', index: 'ItemValue', width: 200, align: 'left', sortable: false },
  62. { label: '简拼', name: 'SimpleSpelling', index: 'SimpleSpelling', width: 150, align: 'left', sortable: false },
  63. { label: '排序', name: 'SortCode', index: 'SortCode', width: 80, align: 'center', sortable: false },
  64. {
  65. label: "默认", name: "IsDefault", index: "IsDefault", width: 50, align: "center", sortable: false,
  66. formatter: function (cellvalue) {
  67. return cellvalue == 1 ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
  68. }
  69. },
  70. {
  71. label: "有效", name: "EnabledMark", index: "EnabledMark", width: 50, align: "center", sortable: false,
  72. formatter: function (cellvalue) {
  73. return cellvalue == 1 ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
  74. }
  75. },
  76. { label: "备注", name: "Description", index: "Description", width: 200, align: "left", sortable: false }
  77. ],
  78. treeGrid: true,
  79. treeGridModel: "nested",
  80. ExpandColumn: "ItemValue",
  81. rowNum: "10000",
  82. rownumbers: true,
  83. onSelectRow: function () {
  84. selectedRowIndex = $("#" + this.id).getGridParam('selrow');
  85. },
  86. gridComplete: function () {
  87. $("#" + this.id).setSelection(selectedRowIndex, false);
  88. }
  89. });
  90. $gridTable.authorizeColModel();
  91. //查询条件
  92. $("#queryCondition .dropdown-menu li").click(function () {
  93. var text = $(this).find('a').html();
  94. var value = $(this).find('a').attr('data-value');
  95. $("#queryCondition .dropdown-text").html(text).attr('data-value', value)
  96. });
  97. //查询事件
  98. $("#btn_Search").click(function () {
  99. $gridTable.jqGrid('setGridParam', {
  100. url: "../../SystemManage/DataItemDetail/GetTreeListJson",
  101. postData: {
  102. itemId: _itemId,
  103. condition: $("#queryCondition").find('.dropdown-text').attr('data-value'),
  104. keyword: $("#txt_Keyword").val()
  105. },
  106. }).trigger('reloadGrid');
  107. });
  108. //查询回车
  109. $('#txt_Keyword').bind('keypress', function (event) {
  110. if (event.keyCode == "13") {
  111. $('#btn_Search').trigger("click");
  112. }
  113. });
  114. }
  115. //新增
  116. function btn_add() {
  117. if (!_itemId) {
  118. return false;
  119. }
  120. var parentId = $("#gridTable").jqGridRowValue("ItemDetailId");
  121. if (_isTree != 1) {
  122. parentId = 0;
  123. }
  124. dialogOpen({
  125. id: "Form",
  126. title: '添加字典',
  127. url: '/SystemManage/DataItemDetail/Form?parentId=' + parentId + "&itemId=" + _itemId,
  128. width: "500px",
  129. height: "370px",
  130. callBack: function (iframeId) {
  131. top.frames[iframeId].AcceptClick();
  132. }
  133. });
  134. };
  135. //编辑
  136. function btn_edit() {
  137. var keyValue = $("#gridTable").jqGridRowValue("ItemDetailId");
  138. if (checkedRow(keyValue)) {
  139. dialogOpen({
  140. id: "Form",
  141. title: '编辑字典',
  142. url: '/SystemManage/DataItemDetail/Form?keyValue=' + keyValue,
  143. width: "500px",
  144. height: "370px",
  145. callBack: function (iframeId) {
  146. top.frames[iframeId].AcceptClick();
  147. }
  148. });
  149. }
  150. }
  151. //删除
  152. function btn_delete() {
  153. var keyValue = $("#gridTable").jqGridRowValue("ItemDetailId");
  154. if (keyValue) {
  155. $.RemoveForm({
  156. url: "../../SystemManage/DataItemDetail/RemoveForm",
  157. param: { keyValue: keyValue },
  158. success: function (data) {
  159. $("#gridTable").resetSelection();
  160. $("#gridTable").trigger("reloadGrid");
  161. }
  162. })
  163. } else {
  164. dialogMsg('请选择需要删除的字典!', 0);
  165. }
  166. }
  167. //详细
  168. function btn_detail() {
  169. var keyValue = $("#gridTable").jqGridRowValue("ItemDetailId");
  170. if (checkedRow(keyValue)) {
  171. dialogOpen({
  172. id: "Detail",
  173. title: '字典信息',
  174. url: '/SystemManage/DataItemDetail/Detail?keyValue=' + keyValue,
  175. width: "500px",
  176. height: "480px",
  177. btn: null
  178. });
  179. }
  180. }
  181. //字典分类
  182. function btn_datacategory() {
  183. dialogOpen({
  184. id: "DataItemSort",
  185. title: '字典分类',
  186. url: '/SystemManage/DataItem/Index',
  187. width: "800px",
  188. height: "500px",
  189. btn: null
  190. });
  191. }
  192. </script>
  193. <div class="ui-layout" id="layout" style="height: 100%; width: 100%;">
  194. <div class="ui-layout-west">
  195. <div class="west-Panel">
  196. <div class="panel-Title">字典分类</div>
  197. <div id="itemTree"></div>
  198. </div>
  199. </div>
  200. <div class="ui-layout-center">
  201. <div class="center-Panel">
  202. <div class="panel-Title">
  203. 字典数据 - <span id="titleinfo">未选择分类</span>
  204. </div>
  205. <div class="titlePanel">
  206. <div class="title-search">
  207. <table>
  208. <tr>
  209. <td>
  210. <div id="queryCondition" class="btn-group">
  211. <a class="btn btn-default dropdown-text" data-toggle="dropdown">选择条件</a>
  212. <a class="btn btn-default dropdown-toggle" data-toggle="dropdown"><span class="caret"></span></a>
  213. <ul class="dropdown-menu">
  214. <li><a data-value="ItemName">项目名</a></li>
  215. <li><a data-value="ItemValue">项目值</a></li>
  216. <li><a data-value="SimpleSpelling">拼音</a></li>
  217. </ul>
  218. </div>
  219. </td>
  220. <td style="padding-left: 2px;">
  221. <input id="txt_Keyword" type="text" class="form-control" placeholder="请输入要查询关键字" style="width: 200px;" />
  222. </td>
  223. <td style="padding-left: 5px;">
  224. <a id="btn_Search" class="btn btn-primary"><i class="fa fa-search"></i>&nbsp;查询</a>
  225. </td>
  226. </tr>
  227. </table>
  228. </div>
  229. <div class="toolbar">
  230. <div class="btn-group">
  231. <a id="lr-replace" class="btn btn-default" onclick="reload();"><i class="fa fa-refresh"></i>&nbsp;刷新</a>
  232. <a id="lr-add" class="btn btn-default" onclick="btn_add()"><i class="fa fa-plus"></i>&nbsp;新增</a>
  233. <a id="lr-edit" class="btn btn-default" onclick="btn_edit()"><i class="fa fa-pencil-square-o"></i>&nbsp;编辑</a>
  234. <a id="lr-delete" class="btn btn-default" onclick="btn_delete()"><i class="fa fa-trash-o"></i>&nbsp;删除</a>
  235. <a id="lr-detail" class="btn btn-default" onclick="btn_detail()"><i class="fa fa-list-alt"></i>&nbsp;详细</a>
  236. </div>
  237. <div class="btn-group">
  238. <a id="lr-datacategory" class="btn btn-default" onclick="btn_datacategory()"><i class="fa fa-tags"></i>&nbsp;字典分类</a>
  239. </div>
  240. <script>$('.toolbar').authorizeButton()</script>
  241. </div>
  242. </div>
  243. <div class="gridPanel">
  244. <table id="gridTable"></table>
  245. </div>
  246. </div>
  247. </div>
  248. </div>