Няма описание

equipRun.js 6.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260
  1. /**
  2. * 设备巡检计划
  3. * */
  4. $(function() {
  5. $('.tool_bars').authorizeButton();
  6. //系统名称
  7. //helper.getDropList.getlistDropByDic($('#sc_sysname'), 'XTMC');
  8. //项目下拉
  9. helper.getDropList.getProlistDrop($('#sc_pro'));
  10. laydate.render({
  11. elem: '#sc_times',
  12. range: '~',
  13. theme: '#249fea',
  14. });
  15. initTable();
  16. //搜索
  17. $("#sc_btns").click(function() {
  18. initTable();
  19. })
  20. });
  21. function initTable() {
  22. //先销毁表格
  23. $('#table_all').bootstrapTable('destroy');
  24. //初始化表格,动态从服务器加载数据
  25. $('#table_all').bootstrapTable({
  26. method: "get", //使用get请求到服务器获取数据
  27. url: huayi.config.callcenter_url + "equipmentapi/api/WoEquipmentRunningPlan/getlistsbypage", //获取数据的Servlet地址
  28. contentType: "application/x-www-form-urlencoded",
  29. striped: true, //表格显示条纹
  30. pagination: true, //启动分页
  31. pageSize: 10, //每页显示的记录数
  32. pageNumber: 1, //当前第几页
  33. pageList: [10, 20, 50, 100], //记录数可选列表
  34. search: false, //是否启用查询
  35. showColumns: false, //显示下拉框勾选要显示的列
  36. showRefresh: false, //显示刷新按钮
  37. sidePagination: "server", //表示服务端请求
  38. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  39. //设置为limit可以获取limit, offset, search, sort, order
  40. queryParamsType: "undefined",
  41. queryParams: function queryParams(params) { //设置查询参数
  42. var param = {
  43. pageindex: params.pageNumber, //否 int 页码
  44. pagesize: params.pageSize, //否 int 条数
  45. keyword: $('#sc_keyWords').val(), //计划名称
  46. projectid: $('#sc_pro').val(),// 否 string 项目id
  47. stime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[0], //开始时间
  48. etime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[1], //结束时间
  49. };
  50. return param;
  51. },
  52. responseHandler: function(res) {
  53. //格式化数据
  54. return {
  55. "total": res.data && res.data.total, //总页数
  56. "rows": res.data && res.data.rows,
  57. }
  58. },
  59. onLoadSuccess: function(res) { //加载成功时执行
  60. //layer.msg("加载成功");
  61. $('.tool_down').authorizeOperateButton();
  62. },
  63. onLoadError: function() { //加载失败时执行
  64. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  65. }
  66. });
  67. }
  68. //查看项目详情
  69. function btn_details(edit_id) {
  70. layer.open({
  71. type: 2,
  72. content: "template/seeEqupRunDetails.html?edit_id=" + edit_id, //iframe的url,no代表不显示滚动条
  73. title: '查看设备巡检计划',
  74. resize: false,
  75. area: ['80%', '90%'], //宽高
  76. });
  77. }
  78. //添加
  79. function btn_add() {
  80. layer.open({
  81. type: 2,
  82. content: "template/addOrEditRun.html", //iframe的url,no代表不显示滚动条
  83. title: '添加设备巡检计划',
  84. resize: false,
  85. area: ['80%', '90%'], //宽高
  86. });
  87. }
  88. //编辑
  89. function btn_edit(edit_id) {
  90. layer.open({
  91. type: 2,
  92. content: "template/addOrEditRun.html?edit_id=" + edit_id, //iframe的url,no代表不显示滚动条
  93. title: '编辑设备巡检计划',
  94. resize: false,
  95. area: ['80%', '90%'], //宽高
  96. });
  97. }
  98. //批量删除
  99. function btn_deletes() {
  100. var ids = $.map($('#table_all').bootstrapTable('getSelections'),
  101. function(row) {
  102. return row.id;
  103. });
  104. /*判断长度*/
  105. if(ids.length <= 0) {
  106. layer.confirm('请选择要删除的选项', {
  107. icon: 7,
  108. btn: ['确定'] //按钮
  109. });
  110. return;
  111. }
  112. btn_delete(ids);
  113. }
  114. //删除
  115. function btn_delete(del_id) {
  116. layer.confirm('您确定要删除当前设备巡检计划吗?', {
  117. icon: 7,
  118. btn: ['确定', '取消'],
  119. yes: function(index, layero) {
  120. $.post(huayi.config.callcenter_url + "equipmentapi/api/WoEquipmentRunningPlan/delete", {
  121. ids: del_id,
  122. }, function(result) {
  123. result = JSON.parse(result);
  124. if(result.state.toLowerCase() == "success") {
  125. layer.msg("删除成功");
  126. $('#table_all').bootstrapTable('refresh');
  127. }
  128. })
  129. },
  130. });
  131. }
  132. //格式化操作
  133. function formatterOperate(val, row) {
  134. var str = '';
  135. str = '<div class="task_tools" onclick = helper.methods.taskTools(this)>' +
  136. '<a title="操作"><i class="fa fa-cogs" aria-hidden="true"></i></a>' +
  137. '<ul class="tool_down">' +
  138. '<li><a class="aBtn" authorize="yes" id="HY_details_' + row.id + '" onclick="btn_details(\'' + row.id + '\')"><i class="fa icon-detail tub"></i>详情</a><li>' +
  139. '<li><a class="aBtn" authorize="yes" id="HY_edit_' + row.id + '" onclick="btn_edit(\'' + row.id + '\')"><i class="fa icon-edit tub"></i>编辑</a><li>' +
  140. '<li><a class="aBtn" authorize="yes" id="HY_delete_' + row.id + '" onclick="btn_delete(\'' + row.id + '\')"><i class="fa icon-delete tub"></i>删除</a><li>' +
  141. '</ul></div>'
  142. return str;
  143. }
  144. //格式化设备名称
  145. function formatterEquipname(val, row) {
  146. if(val && val.length > 1) {
  147. return val[0] + '...';
  148. } else if(val && val.length === 1 && val[0] != "") {
  149. return val;
  150. } else {
  151. return '-';
  152. }
  153. }
  154. //格式化开始日期
  155. function formatterSdate(val, row) {
  156. return val && val.split(' ')[0];
  157. }
  158. //格式化定时周期
  159. function formatterPlancycle(val, row) {
  160. //定时周期:1年,2月,3周,4日,5时,6分;巡检中只需要使用:4日,5时,6分
  161. var stateClass, stateName;
  162. switch(val) {
  163. case 1:
  164. stateName = '每年';
  165. break;
  166. case 2:
  167. stateName = '每月';
  168. break;
  169. case 3:
  170. stateName = '每周';
  171. break;
  172. case 4:
  173. stateName = '每天';
  174. break;
  175. case 5:
  176. stateName = '每小时';
  177. break;
  178. case 6:
  179. stateName = '每分钟';
  180. break;
  181. default:
  182. stateName = '-';
  183. break;
  184. }
  185. return stateName;
  186. }
  187. //格式化 执行计划间隔
  188. function formatterPlaninterval(val, row) {
  189. //执行间隔,每几天
  190. var str = '-'
  191. var idays = ['天', '两天', '三天', '四天', '五天', '六天', '七天', '十五天'];
  192. if(val === 15){
  193. val = 8;
  194. }
  195. if(Number(val)){
  196. str = '每' + idays[Number(val) - 1];
  197. }
  198. return str;
  199. }
  200. //格式化 执行频率
  201. function formatterPlantimes(val, row) {
  202. return val + '次';
  203. }
  204. //格式化计划状态
  205. function formatterPlanstate(val, row) {
  206. //计划状态 0开始 1结束 2挂起
  207. var stateClass, stateName;
  208. switch(val) {
  209. case 0:
  210. stateClass = 'state_audit_done';
  211. stateName = '开始';
  212. break;
  213. case 1:
  214. stateClass = 'state_audit_doned';
  215. stateName = '结束';
  216. break;
  217. case 2:
  218. stateClass = 'state_audit_revoke';
  219. stateName = '挂起';
  220. break;
  221. default:
  222. stateClass = 'text-block';
  223. stateName = '-';
  224. break;
  225. }
  226. return '<a class="state_audit ' + stateClass + '" href="javascript:;">' + stateName + '</a>';
  227. }
  228. //结束时间 超期变红
  229. function formatterEndTime(val, row) {
  230. if(val) {
  231. var d = val.replace(/-/g, "/");
  232. var curDate = helper.DateFormat.getNowDateTime();
  233. curDate = curDate.replace(/-/g, "/");
  234. var str = '';
  235. if(Date.parse(d) >= Date.parse(curDate)) {
  236. str = '<div>' + val.split(' ')[0] + '</div>';
  237. } else {
  238. str = '<div style="color:red;">' + val.split(' ')[0] + '</div>';
  239. }
  240. return str
  241. } else {
  242. return "-";
  243. }
  244. }