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.
 
 
 
 
 
 

220 lines
10 KiB

  1. /*
  2. * 版 本 Learun-ADMS V7.0.3 力软敏捷开发框架(http://www.learun.cn)
  3. * Copyright (c) 2013-2018 上海力软信息技术有限公司
  4. * 创建人:力软-前端开发组
  5. * 日 期:2017.03.22
  6. * 描 述:功能模块
  7. */
  8. var refreshGirdData; // 更新数据
  9. var selectedRow;
  10. var formHeight;
  11. var keyValue;
  12. var moduleType = true;
  13. var bootstrap = function ($, learun) {
  14. "use strict";
  15. var moduleId = '0';
  16. var page = {
  17. init: function () {
  18. page.inittree();
  19. page.initGrid();
  20. page.bind();
  21. },
  22. bind: function () {
  23. // 查询
  24. $('#btn_Search').on('click', function () {
  25. var keyword = $('#txt_Keyword').val();
  26. page.search({ parentId: moduleId, keyword: keyword });
  27. });
  28. // 刷新
  29. $('#lr_refresh').on('click', function () {
  30. location.reload();
  31. });
  32. // 编辑
  33. $('#lr_edit').on('click', function () {
  34. selectedRow = $('#gridtable').jfGridGet('rowdata');
  35. if (learun.checkrow(selectedRow)) {
  36. learun.layerForm({
  37. id: 'form',
  38. title: '编辑',
  39. url: top.$.rootUrl + '/LR_LGManager/LGMap/AddForm?keyValue=' + keyValue,
  40. width: 400,
  41. height: formHeight,
  42. callBack: function (id) {
  43. return top[id].acceptClick(function(){
  44. page.search({ parentId: moduleId });
  45. });
  46. }
  47. });
  48. }
  49. });
  50. },
  51. inittree: function () {
  52. $('#module_tree').lrtree({
  53. url: top.$.rootUrl + '/LR_SystemModule/Module/GetModuleTree',
  54. nodeClick: page.treeNodeClick
  55. });
  56. },
  57. treeNodeClick: function (item) {
  58. moduleId = item.id;
  59. moduleType = item.hasChildren
  60. $('#titleinfo').text(item.text);
  61. page.search({ parentId: moduleId });
  62. },
  63. initGrid: function () {
  64. var data = [];
  65. //获取语言类型
  66. learun.httpAsyncGet(top.$.rootUrl + '/LR_LGManager/LGType/GetList', function (res) {
  67. if (res.data) {
  68. data.push({ label: "名称", name: res.data[0].F_Code, width: 200, align: "left" });
  69. keyValue = res.data[0].F_Code;//主语言
  70. for (var i = 1; i < res.data.length; i++) {
  71. var obj = { label: res.data[i].F_Name, name: res.data[i].F_Code, width: 200, align: "left" };
  72. data.push(obj);
  73. }
  74. $('#gridtable').jfGrid({
  75. headData: data,
  76. dblclick: function (row) {
  77. if (learun.checkrow(row)) {
  78. selectedRow = row;
  79. learun.layerForm({
  80. id: 'form',
  81. title: '编辑',
  82. url: top.$.rootUrl + '/LR_LGManager/LGMap/AddForm?keyValue=' + keyValue,
  83. width: 400,
  84. height: formHeight,
  85. callBack: function (id) {
  86. return top[id].acceptClick(function () {
  87. page.search({ parentId: moduleId });
  88. });
  89. }
  90. });
  91. }
  92. }
  93. });
  94. page.search({ parentId: moduleId });
  95. if (res.data.length <= 3) {
  96. formHeight = 230;
  97. }
  98. else {
  99. formHeight = 230 + (res.data.length - 3) * 40;
  100. }
  101. }
  102. });
  103. },
  104. search: function (param) {
  105. //获取表数据并赋值
  106. var rowData = [];
  107. var obj = {};
  108. if (moduleType) {//判断是否有下级
  109. learun.httpAsyncGet(top.$.rootUrl + '/LR_SystemModule/Module/GetModuleListByParentId?parentId=' + param.parentId, function (res) {
  110. learun.httpAsyncGet(top.$.rootUrl + '/LR_LGManager/LGMap/GetList', function (mapRes) {
  111. if (res.data && mapRes.data) {
  112. for (var i = 0; i < res.data.length; i++) {
  113. var val = mapRes.data.find(function (element) {
  114. return element.F_Name == res.data[i].F_FullName;
  115. });
  116. if (typeof val != 'undefined') {
  117. var list = mapRes.data.filter(function (element) {
  118. return element.F_Code == val.F_Code;
  119. });
  120. for (var j = 0; j < list.length; j++) {
  121. obj[list[j].F_TypeCode] = list[j].F_Name;
  122. obj.F_Code = list[j].F_Code;//每一行数据的F_Code
  123. }
  124. }
  125. else {
  126. obj[keyValue] = res.data[i].F_FullName;
  127. obj.F_Code = "";
  128. }
  129. rowData.push(obj);
  130. obj = {};
  131. }
  132. $('#gridtable').jfGridSet('refreshdata', rowData);
  133. rowData = [];
  134. }
  135. });
  136. });
  137. }
  138. else {//展示按钮与列
  139. learun.httpAsyncGet(top.$.rootUrl + '/LR_SystemModule/Module/GetFormData?keyValue=' + param.parentId, function (res) {
  140. learun.httpAsyncGet(top.$.rootUrl + '/LR_LGManager/LGMap/GetList', function (mapRes) {
  141. if (res.data && mapRes.data) {
  142. // 按钮信息
  143. for (var i = 0; i < res.data.moduleButtons.length; i++) {
  144. var val = mapRes.data.find(function (element) {
  145. return element.F_Name == res.data.moduleButtons[i].F_FullName;
  146. });
  147. if (typeof val != 'undefined') {
  148. var list = mapRes.data.filter(function (element) {
  149. return element.F_Code == val.F_Code;
  150. });
  151. for (var j = 0; j < list.length; j++) {
  152. obj[list[j].F_TypeCode] = list[j].F_Name;
  153. obj.F_Code = list[j].F_Code;//每一行数据的F_Code
  154. }
  155. }
  156. else {
  157. obj[keyValue] = res.data.moduleButtons[i].F_FullName;
  158. obj.F_Code = "";
  159. }
  160. rowData.push(obj);
  161. obj = {};
  162. }
  163. // 列表信息
  164. for (var i = 0; i < res.data.moduleColumns.length; i++) {
  165. var val = mapRes.data.find(function (element) {
  166. return element.F_Name == res.data.moduleColumns[i].F_FullName;
  167. });
  168. if (typeof val != 'undefined') {
  169. var list = mapRes.data.filter(function (element) {
  170. return element.F_Code == val.F_Code;
  171. });
  172. for (var j = 0; j < list.length; j++) {
  173. obj[list[j].F_TypeCode] = list[j].F_Name;
  174. obj.F_Code = list[j].F_Code;//每一行数据的F_Code
  175. }
  176. }
  177. else {
  178. obj[keyValue] = res.data.moduleColumns[i].F_FullName;
  179. obj.F_Code = "";
  180. }
  181. rowData.push(obj);
  182. obj = {};
  183. }
  184. // 表单字段
  185. for (var i = 0; i < res.data.moduleFields.length; i++) {
  186. var val = mapRes.data.find(function (element) {
  187. return element.F_Name == res.data.moduleFields[i].F_FullName;
  188. });
  189. if (typeof val != 'undefined') {
  190. var list = mapRes.data.filter(function (element) {
  191. return element.F_Code == val.F_Code;
  192. });
  193. for (var j = 0; j < list.length; j++) {
  194. obj[list[j].F_TypeCode] = list[j].F_Name;
  195. obj.F_Code = list[j].F_Code;//每一行数据的F_Code
  196. }
  197. }
  198. else {
  199. obj[keyValue] = res.data.moduleFields[i].F_FullName;
  200. obj.F_Code = "";
  201. }
  202. rowData.push(obj);
  203. obj = {};
  204. }
  205. $('#gridtable').jfGridSet('refreshdata', rowData);
  206. rowData = [];
  207. }
  208. });
  209. });
  210. }
  211. }
  212. };
  213. // 保存数据后回调刷新
  214. refreshGirdData = function () {
  215. page.search({ parentId: moduleId });
  216. }
  217. page.init();
  218. }