Нет описания

appRelation.js 4.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. /**
  2. * APP项目关联模块
  3. * */
  4. $(function() {
  5. $('.tool_bars').authorizeButton();
  6. helper.getDropList.getProlistDrop($('#sc_pro')); //项目下拉
  7. initTable();
  8. $('#sc_pro').on('change', initTable);
  9. //搜索
  10. $("#sc_btns").on('click', initTable);
  11. });
  12. function initTable() {
  13. $.ajax({
  14. url: huayi.config.callcenter_url + 'configurationapi/api/appmenufunction/getappmodule',
  15. type: 'get',
  16. data: {
  17. project_id: $('#sc_pro').val(), // 否 string 项目id
  18. type: $('#sc_type').val(), // 否 int 201228添加 类型字段,默认为1可以不传 1表示APP,2表示微信
  19. },
  20. dataType: "json",
  21. async: true,
  22. success: function(res) {
  23. if (res.state.toLowerCase() === 'success') {
  24. //异步获取数据
  25. var resultData = res.data;
  26. $('#table_all').bootstrapTable('load', resultData);
  27. $('.tool_downs').authorizeOperateButton();
  28. } else {
  29. layer.confirm(res.message, {
  30. icon: 7,
  31. btn: ['确定'] //按钮
  32. });
  33. }
  34. }
  35. });
  36. $('#table_all').bootstrapTable('destroy').bootstrapTable({
  37. striped: true
  38. });
  39. }
  40. //禁用
  41. function btn_stop(mid) {
  42. if(!$.trim($('#sc_pro').val())) {
  43. layer.confirm('请先选择项目!', {
  44. icon: 7,
  45. btn: ['确定'] //按钮
  46. });
  47. return;
  48. }
  49. layer.confirm('您确定要禁用当前模块吗?', {
  50. icon: 7,
  51. btn: ['确定', '取消'],
  52. yes: function(index, layero) {
  53. $.post(huayi.config.callcenter_url + "configurationapi/api/appmenufunction/delete", {
  54. mid: mid,
  55. }, function(result) {
  56. result = JSON.parse(result);
  57. if (result.state.toLowerCase() === "success") {
  58. layer.msg("禁用成功");
  59. initTable();
  60. }
  61. })
  62. },
  63. });
  64. }
  65. //启用
  66. function btn_start(mid) {
  67. if(!$.trim($('#sc_pro').val())) {
  68. layer.confirm('请先选择项目!', {
  69. icon: 7,
  70. btn: ['确定'] //按钮
  71. });
  72. return;
  73. }
  74. layer.prompt({
  75. formType: 0,
  76. value: '1',
  77. title: '请输入模块在项目中的排序',
  78. area: ['300px', '150px'] //自定义文本域宽高
  79. }, function(value, index, elem){
  80. if(!regexs.integerReg.test($.trim(value))) {
  81. layer.confirm('请输入有效的排序编号(正整数、负整数、0)!', {
  82. icon: 2,
  83. btn: ['确定'] //按钮
  84. });
  85. return;
  86. }
  87. $.post(huayi.config.callcenter_url + "configurationapi/api/appmenufunction/add", {
  88. module_id: mid,// 是 string 模块id
  89. project_id: $('#sc_pro').val(),// 是 string 项目id
  90. sort: value,// 是 int 排序字段默认为1 此排序为项目中的模块排序
  91. }, function(result) {
  92. result = JSON.parse(result);
  93. if (result.state.toLowerCase() === "success") {
  94. layer.msg("启用成功");
  95. initTable();
  96. layer.close(index);
  97. }
  98. });
  99. });
  100. }
  101. //格式化操作
  102. function formatterOperate(val, row) {
  103. var str = '<ul class="tool_downs">';
  104. if(row.flag === 0){
  105. str += '<li><a class="aBtn" authorize="yes" id="HY_start_' + row.module_id + '" onclick="btn_start(\'' + row.module_id + '\')">启用</a></li>';
  106. }
  107. if(row.flag === 1){
  108. str += '<li><a class="aBtn" authorize="yes" id="HY_stop_' + row.module_id + '" onclick="btn_stop(\'' + row.function_id + '\')">禁用</a></li>';
  109. }
  110. str += '</ul>';
  111. return str;
  112. }
  113. //格式化是否可用
  114. function formatterState(val, row) {
  115. var stateClass, stateName;
  116. switch (val) {
  117. case 1:
  118. stateClass = 'state_audit_done';
  119. stateName = '可用';
  120. break;
  121. case 0:
  122. stateClass = 'state_audit_wait';
  123. stateName = '不可用';
  124. break;
  125. default:
  126. stateClass = 'text-block';
  127. stateName = '-';
  128. break;
  129. }
  130. return '<a class="state_audit ' + stateClass + '" href="javascript:;">' + stateName + '</a>';
  131. }
  132. //格式化 类型
  133. function formatterType(val, row) {
  134. var stateName;
  135. switch (val) {
  136. case 1:
  137. stateName = 'APP';
  138. break;
  139. case 2:
  140. stateName = '微信';
  141. break;
  142. case 3:
  143. stateName = '大数据';
  144. break;
  145. default:
  146. stateName = '-';
  147. break;
  148. }
  149. return stateName;
  150. }
  151. //格式化图片
  152. function formatterImg(val, row) {
  153. if(val && val.length > 0) {
  154. return '<img class="module_img" src="'+ val[0].filesmallurl +'" alt="模块图片" onerror="this.src=\'../img/user_icons.png\'">';
  155. }else {
  156. return '-';
  157. }
  158. }