Açıklama Yok

roleManage.js 9.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397
  1. /***
  2. * 角色管理
  3. * */
  4. var table = $('#table1');
  5. var jsid;
  6. $(function() {
  7. autosize($('textarea'));
  8. $('.tool_bars').authorizeButton();
  9. laydate.render({
  10. elem: '#sc_times',
  11. range: '~',
  12. theme: '#249fea',
  13. });
  14. //左边表格
  15. initTable();
  16. //搜索功能
  17. $('#sc_btns').click(function() {
  18. initTable()
  19. })
  20. });
  21. //========================添加功能开始=========================
  22. function btn_add() {
  23. $('.addModel').css('display', 'block');
  24. }
  25. //关闭按钮
  26. $('.addBtr').click(function() {
  27. $('.addModel').css('display', 'none');
  28. })
  29. //保存按钮
  30. $('.addCun').click(function() {
  31. if ($('.add_jsz').val() == '') {
  32. $('.addJsz_kong').css('display', 'inline-block');
  33. return;
  34. }
  35. if ($('#roleCode').val() == '') {
  36. $('.addJsc_kong').css('display', 'inline-block');
  37. return;
  38. }
  39. if ($('#project_num').val() == '' || $('#project_num').val() == 0) {
  40. $('.addJsn_kong').css('display', 'inline-block');
  41. return;
  42. }
  43. if ($.trim($('#project_num').val())) {
  44. var val = Number($.trim($('#project_num').val()));
  45. if (isNaN(val)) {
  46. layer.confirm('项目数量只能输入-1和1到6的正整数', {
  47. icon: 2,
  48. btn: ['确定'] //按钮
  49. });
  50. return;
  51. }
  52. if (val != -1 && !(val > 0 && val < 7)) {
  53. layer.confirm('项目数量只能输入-1和1到6的正整数', {
  54. icon: 2,
  55. btn: ['确定'] //按钮
  56. });
  57. return;
  58. }
  59. }
  60. if ($('#roleSort').val() == '') {
  61. $('.addJss_kong').css('display', 'inline-block');
  62. return;
  63. }
  64. if (!regexs.phoneNum.test($.trim($('#roleSort').val()))) {
  65. layer.confirm('排序只能输入正整数', {
  66. icon: 2,
  67. btn: ['确定'] //按钮
  68. });
  69. return;
  70. }
  71. $('.addModel').css('display', 'none');
  72. ad();
  73. });
  74. function ad() {
  75. $.ajax({
  76. type: "post",
  77. url: huayi.config.callcenter_url + "configurationapi/api/roleinfo/add",
  78. async: true,
  79. dataType: 'json',
  80. data: {
  81. role_name: $('.add_jsz').val(), //角色名称
  82. role_code: $('#roleCode').val(), //角色名称
  83. project_num: $('#project_num').val(), //项目数量
  84. sort: $('#roleSort').val(), //是 int 排序字段
  85. role_remark: $('.add_bz').val(), //备注
  86. },
  87. success: function(data) {
  88. if (data.state.toLowerCase() == 'success') {
  89. layer.msg("添加成功!");
  90. $('.add_jsz').val(''); //角色名称
  91. $('#roleCode').val(''); //角色名称
  92. $('#roleSort').val(''); //排序
  93. $('.add_bz').val(''); //备注
  94. table.bootstrapTable('refresh');
  95. }
  96. }
  97. });
  98. }
  99. //*************************添加功能结束=========================
  100. //========================修改功能开始=========================
  101. function btn_edit() {
  102. if (jsid) {
  103. $('.changeModel').css('display', 'block');
  104. cg(jsid)
  105. } else {
  106. layer.confirm('请选择修改行!', {
  107. icon: 7,
  108. btn: ['确定']
  109. });
  110. return;
  111. }
  112. }
  113. //关闭按钮
  114. $('.changeBtr').click(function() {
  115. $('.changeModel').css('display', 'none');
  116. })
  117. //保存按钮
  118. $('.changeCun').click(function() {
  119. if ($('.change_jsz').val() == '') {
  120. $('.change_kong').css('display', 'inline-block');
  121. return;
  122. }
  123. if ($('#roleCodeEdit').val() == '') {
  124. $('.changes_kong').css('display', 'inline-block');
  125. return;
  126. }
  127. if ($('#project_numEdit').val() == '' || $('#project_numEdit').val() == 0) {
  128. $('.changesn_kong').css('display', 'inline-block')
  129. return;
  130. }
  131. if ($.trim($('#project_numEdit').val())) {
  132. var val = Number($.trim($('#project_numEdit').val()));
  133. if (isNaN(val)) {
  134. layer.confirm('项目数量只能输入-1和1到6的正整数', {
  135. icon: 2,
  136. btn: ['确定'] //按钮
  137. });
  138. return;
  139. }
  140. if (val != -1 && !(val > 0 && val < 7)) {
  141. layer.confirm('项目数量只能输入-1和1到6的正整数', {
  142. icon: 2,
  143. btn: ['确定'] //按钮
  144. });
  145. return;
  146. }
  147. }
  148. if ($('#roleSortEdit').val() == '') {
  149. $('.changess_kong').css('display', 'inline-block')
  150. return;
  151. }
  152. if (!regexs.phoneNum.test($.trim($('#roleSortEdit').val()))) {
  153. layer.confirm('排序只能输入正整数', {
  154. icon: 2,
  155. btn: ['确定'] //按钮
  156. });
  157. return;
  158. }
  159. $('.changeModel').css('display', 'none');
  160. cc(jsid);
  161. })
  162. function cg(jsid) {
  163. $.ajax({
  164. type: "get",
  165. url: huayi.config.callcenter_url + "configurationapi/api/roleinfo/getdetailes",
  166. async: true,
  167. dataType: 'json',
  168. data: {
  169. id: jsid //角色id
  170. },
  171. success: function(data) {
  172. var con = data.data;
  173. if (data.state.toLowerCase() == 'success') {
  174. $('.change_jsz').val(con.role_name);
  175. $('#roleCodeEdit').val(con.role_code);
  176. $('#project_numEdit').val(con.project_num);
  177. $('#roleSortEdit').val(con.sort);
  178. $('.change_bz').val(con.role_remark);
  179. }
  180. }
  181. });
  182. }
  183. function cc(jsid) {
  184. $.ajax({
  185. type: "post",
  186. url: huayi.config.callcenter_url + "configurationapi/api/roleinfo/update",
  187. async: true,
  188. dataType: 'json',
  189. data: {
  190. role_id: jsid, //角色id
  191. role_name: $('.change_jsz').val(), //角色名称
  192. role_code: $('#roleCodeEdit').val(), //角色名称
  193. project_num: $('#project_numEdit').val(), //项目数量
  194. sort: $('#roleSortEdit').val(), //是 int 排序字段
  195. role_remark: $('.change_bz').val() //备注
  196. },
  197. success: function(data) {
  198. if (data.state.toLowerCase() == 'success') {
  199. layer.msg("修改成功!");
  200. $('.change_jsz').val(''); //角色名称
  201. $('#roleCodeEdit').val(''); //角色名称
  202. $('#project_numEdit').val(''); //项目数量
  203. $('#roleSortEdit').val(''); //排序字段
  204. $('.change_bz').val(''); //备注
  205. table.bootstrapTable('refresh');
  206. }
  207. }
  208. });
  209. }
  210. //*************************修改功能结束=========================
  211. //========================删除功能开始=========================
  212. function btn_delete() {
  213. if (jsid) {
  214. if (jsid == '5aaa5a54b9c1893cb015df26') {
  215. layer.confirm('系统维护不能删除!', {
  216. icon: 7,
  217. btn: ['确定']
  218. });
  219. return;
  220. }
  221. layer.confirm('您确定要删除当前角色吗?', {
  222. icon: 7,
  223. btn: ['确定', '取消'],
  224. yes: function(index, layero) {
  225. $.ajax({
  226. type: "post",
  227. url: huayi.config.callcenter_url + "configurationapi/api/roleinfo/delete",
  228. async: true,
  229. dataType: 'json',
  230. data: {
  231. ids: jsid //角色id
  232. },
  233. success: function(data) {
  234. if (data.state.toLowerCase() == 'success') {
  235. layer.msg("删除成功!");
  236. table.bootstrapTable('refresh');
  237. }
  238. }
  239. });
  240. },
  241. });
  242. } else {
  243. layer.confirm('请选择要删除的角色!', {
  244. icon: 7,
  245. btn: ['确定']
  246. });
  247. return;
  248. }
  249. }
  250. //*************************删除功能结束=========================
  251. //右边树形结构
  252. tree(jsid);
  253. function tree(jid) {
  254. $.get(huayi.config.callcenter_url + "configurationapi/api/rolefunction/getrolefunction", {
  255. role_id: jid
  256. }, function(result) {
  257. result = $.parseJSON(result);
  258. $(result.data).each(function(i, n) {
  259. if (n.ischecked == true) {
  260. n.checked = "true";
  261. }
  262. })
  263. $.fn.zTree.init($("#treeDemo"), setting1, result.data); //实例化树形图
  264. });
  265. }
  266. var setting1 = {
  267. check: {
  268. enable: true,
  269. chkboxType: {
  270. "Y": "ps", //勾选 关联父,关联子
  271. "N": "s" //取消勾选 不关联父,关联子
  272. },
  273. },
  274. data: {
  275. simpleData: {
  276. enable: true,
  277. idKey: "id",
  278. pIdKey: "pid",
  279. rootPId: 0
  280. }
  281. },
  282. callback: {
  283. onCheck: zTreeOnClick
  284. }
  285. };
  286. function zTreeOnClick(event, treeId, treeNode) {
  287. var name = treeNode.name;
  288. };
  289. //保存权限
  290. function pro(app, jsid) {
  291. $.ajax({
  292. type: "post",
  293. url: huayi.config.callcenter_url + "configurationapi/api/rolefunction/saverolefunction",
  294. async: true,
  295. dataType: 'json',
  296. data: {
  297. role_id: jsid, //角色id
  298. ids: app // 选中权限树的id值
  299. },
  300. success: function(data) {
  301. if (data.state.toLowerCase() == 'success') {
  302. layer.confirm('保存权限成功!', {
  303. icon: 1,
  304. btn: ['确定']
  305. });
  306. return;
  307. }
  308. }
  309. });
  310. }
  311. function btn_save() {
  312. var app = [];
  313. var ztree = $.fn.zTree.getZTreeObj("treeDemo").getCheckedNodes(true);
  314. $.each(ztree, function(i, n) {
  315. app.push(n.id);
  316. });
  317. if (jsid) {
  318. pro(app, jsid);
  319. } else {
  320. layer.confirm('请选择用户角色!', {
  321. icon: 7,
  322. btn: ['确定']
  323. });
  324. return;
  325. }
  326. }
  327. function initTable() {
  328. //先销毁表格
  329. table.bootstrapTable('destroy');
  330. //初始化表格,动态从服务器加载数据
  331. table.bootstrapTable({
  332. method: "get", //使用get请求到服务器获取数据
  333. url: huayi.config.callcenter_url + "configurationapi/api/roleinfo/getlistbypage", //获取数据的Servlet地址
  334. contentType: "application/x-www-form-urlencoded",
  335. striped: true,
  336. striped: true, //表格显示条纹
  337. pagination: true, //启动分页
  338. pageSize: 10, //每页显示的记录数
  339. pageNumber: 1, //当前第几页
  340. pageList: [10, 15, 20, 30, 50, 100], //记录数可选列表
  341. search: false, //是否启用查询
  342. showColumns: false, //显示下拉框勾选要显示的列
  343. showRefresh: false, //显示刷新按钮
  344. sidePagination: "server", //表示服务端请求
  345. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  346. //设置为limit可以获取limit, offset, search, sort, order
  347. queryParamsType: "undefined",
  348. queryParams: function queryParams(params) { //设置查询参数
  349. var param = {
  350. pageindex: params.pageNumber,
  351. pagesize: params.pageSize,
  352. stime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[0], //否 datetime 起始时间
  353. etime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[1], //否 datetime 结束时间
  354. keyword: $('#searJsz').val(), //角色名称
  355. };
  356. return param;
  357. },
  358. onLoadSuccess: function() { //加载成功时执行
  359. //layer.msg("加载成功");
  360. },
  361. onLoadError: function() { //加载失败时执行
  362. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  363. }
  364. });
  365. }
  366. /*选中行添加背景颜色*/
  367. table.on("click-row.bs.table", function(e, row, ele) {
  368. $('.success').removeClass('success'); //去除之前选中的行的,选中样式
  369. $(ele).addClass('success'); //添加当前选中的 success样式用于区别
  370. jsid = row.id;
  371. tree(jsid);
  372. });
  373. function setCode(val, row, index) {
  374. var page = table.bootstrapTable("getPageCode");
  375. return page.pageSize * (page.pageNumber - 1) + index + 1;
  376. }