mesDevicePreventSelect.html 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. <%/* Copyright (c) 2013-Now http://jeesite.com All rights reserved.
  2. * No deletion without permission, or be held responsible to law. */ %>
  3. <% layout('/layouts/default.html', {title: '任务清单', libs: ['dataGrid']}){ %>
  4. <div class="main-content">
  5. <div class="box box-main">
  6. <div class="box-body">
  7. <#form:form id="searchForm" model="${warehouse}" action="${ctx}/mes/mesDevicePrevent/listData" method="post" class="form-inline "
  8. data-page-no="${parameter.pageNo}" data-page-size="${parameter.pageSize}" data-order-by="${parameter.orderBy}">
  9. <#form:hidden name="status" value="${isNotBlank(warehouse.status) ? warehouse.status : '0'}"/>
  10. <div class="form-group">
  11. <label class="control-label">${text('名称')}:</label>
  12. <div class="control-inline">
  13. <#form:input path="title" maxlength="255" class="form-control width-120"/>
  14. </div>
  15. </div>
  16. <div class="form-group">
  17. <label class="control-label">${text('技术类型')}:</label>
  18. <div class="control-inline">
  19. <#form:input path="cate" maxlength="100" class="form-control width-120"/>
  20. </div>
  21. </div>
  22. <div class="form-group">
  23. <label class="control-label">${text('周期')}:</label>
  24. <div class="control-inline">
  25. <#form:input path="cycle" maxlength="100" class="form-control width-120"/>
  26. </div>
  27. </div>
  28. <div class="form-group">
  29. <label class="control-label">${text('工时')}:</label>
  30. <div class="control-inline">
  31. <#form:input path="laborHour" maxlength="100" class="form-control width-120"/>
  32. </div>
  33. </div>
  34. <div class="form-group">
  35. <button type="submit" class="btn btn-primary btn-sm">${text('查询')}</button>
  36. <button type="reset" class="btn btn-default btn-sm">${text('重置')}</button>
  37. </div>
  38. </#form:form>
  39. <div class="row">
  40. <div class="col-xs-10 pr10">
  41. <table id="dataGrid"></table>
  42. <div id="dataGridPage"></div>
  43. </div>
  44. <div class="col-xs-2 pl0">
  45. <div id="selectData" class="tags-input"></div>
  46. </div>
  47. </div>
  48. </div>
  49. </div>
  50. </div>
  51. <% } %>
  52. <script>
  53. var selectData = ${isNotBlank(selectData!) ? selectData! : "{\}"},
  54. selectNum = 0, dataGrid = $('#dataGrid').dataGrid({
  55. searchForm: $("#searchForm"),
  56. columnModel: [
  57. {header:'${text("名称")}', name:'title', index:'a.title', width:150, align:"center", frozen:true},
  58. {header:'${text("技术类型")}', name:'cate', index:'a.cate', width:150, align:"center"},
  59. {header:'${text("周期")}', name:'cycle', index:'a.cycle', width:150, align:"center"},
  60. {header:'${text("工时")}', name:'laborHour', index:'a.labor_hour', width:150, align:"center"},
  61. {header:'${text("状态")}', name:'status', index:'a.status', width:150, align:"center", formatter: function(val, obj, row, act){
  62. return js.getDictLabel(${@DictUtils.getDictListJson('sys_search_status')}, val, '${text("未知")}', true);
  63. }},
  64. {header:'${text("更新时间")}', name:'updateDate', index:'a.update_date', width:150, align:"center"},
  65. {header:'行数据', name:'rowData', hidden:true, formatter: function(val, obj, row, act){
  66. return JSON.stringify(row);
  67. }}
  68. ],
  69. autoGridHeight: function(){
  70. var height = $(window).height() - $('#searchForm').height() - $('#dataGridPage').height() - 74;
  71. $('.tags-input').height($('.ui-jqgrid').height() - 10);
  72. return height;
  73. },
  74. showCheckbox: '${parameter.checkbox}' == 'true',
  75. multiboxonly: false, // 单击复选框时再多选
  76. ajaxSuccess: function(data){
  77. $.each(selectData, function(key, value){
  78. dataGrid.dataGrid('setSelectRow', key);
  79. });
  80. initSelectTag();
  81. },
  82. onSelectRow: function(id, isSelect, event){
  83. if ('${parameter.checkbox}' == 'true'){
  84. if(isSelect){
  85. selectData[id] = JSON.parse(dataGrid.dataGrid('getRowData', id).rowData);
  86. }else{
  87. delete selectData[id];
  88. }
  89. }else{
  90. selectData = {};
  91. selectData[id] = JSON.parse(dataGrid.dataGrid('getRowData', id).rowData);
  92. }
  93. initSelectTag();
  94. },
  95. onSelectAll: function(ids, isSelect){
  96. if ('${parameter.checkbox}' == 'true'){
  97. for (var i=0; i<ids.length; i++){
  98. if(isSelect){
  99. selectData[ids[i]] = JSON.parse(dataGrid.dataGrid('getRowData', ids[i]).rowData);
  100. }else{
  101. delete selectData[ids[i]];
  102. }
  103. }
  104. }
  105. initSelectTag();
  106. },
  107. ondblClickRow: function(id, rownum, colnum, event){
  108. if ('${parameter.checkbox}' != 'true'){
  109. js.layer.$('#' + window.name).closest('.layui-layer')
  110. .find(".layui-layer-btn0").trigger("click");
  111. }
  112. initSelectTag();
  113. }
  114. });
  115. function initSelectTag(){
  116. selectNum = 0;
  117. var html = [];
  118. $.each(selectData, function(key, value){
  119. selectNum ++;
  120. html.push('<span class="tag" id="'+key+'_tags-input"><span>'+value.title+' </span>'
  121. + '<a href="#" onclick="removeSelectTag(\''+key+'\');" title="${text("取消选择")}">x</a></span>');
  122. });
  123. html.unshift('<div class="title">${text("当前已选择 {0\} 项", "<span id=\"selectNum\">'+selectNum+'</span>")}:</div>');
  124. $('#selectData').empty().append(html.join(''));
  125. }
  126. function removeSelectTag(key){
  127. delete selectData[key];
  128. dataGrid.dataGrid('resetSelection', key);
  129. $('#selectNum').html(--selectNum);
  130. $('#'+key+'_tags-input').remove();
  131. }
  132. function getSelectData(){
  133. return selectData;
  134. }
  135. </script>