res.js 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
  2. var Controller = {
  3. index: function () {
  4. // 初始化表格参数配置
  5. Table.api.init({
  6. extend: {
  7. index_url: 'res/index' + location.search,
  8. add_url: 'res/add',
  9. edit_url: 'res/edit',
  10. // del_url: 'res/del',
  11. multi_url: 'res/multi',
  12. import_url: 'res/import',
  13. reports_url:'res/report',
  14. couse_url:'res/couse',
  15. table: 'res',
  16. }
  17. });
  18. var table = $("#table");
  19. // 初始化表格
  20. table.bootstrapTable({
  21. url: $.fn.bootstrapTable.defaults.extend.index_url,
  22. pk: 'id',
  23. sortName: 'id',
  24. fixedColumns: true,
  25. fixedRightNumber: 1,
  26. columns: [
  27. [
  28. {checkbox: true},
  29. {field: 'id', title: __('Id'),operate: false},
  30. {field: 'entrust_no', title: __('Entrust_no'), operate: false},
  31. {field: 'name', title: __('Name'), operate: 'LIKE'},
  32. {field: 'bach', title: __('Bach'), operate: 'LIKE'},
  33. {field: 'dis', title: __('Dis'),operate: false},
  34. {field: 'dis_impurity', title: __('Dis_impurity'),operate: false},
  35. {field: 'ben_total', title: __('Ben_total'),operate: false},
  36. {field: 'ben', title: __('Ben'),operate: false},
  37. {field: 'unit', title: __('Unit'),operate: false},
  38. {field: 'judge', title: __('Judge'), operate: 'LIKE',custom: {0 :'red', 1:'green'},searchList: {"0":'不合格',"1":'合格'}, formatter: Table.api.formatter.status, function (value,row,index) {
  39. if (value == 1){
  40. value = '合格';
  41. return '<span style="color: #18bc9c">' +value+ '</span>';
  42. }else{
  43. value = '不合格';
  44. return '<span style="color: #f75444">' +value+ '</span>';
  45. }
  46. }},
  47. {field: 'sample_info', title: '样品信息',operate: false},
  48. {field: 'send_sample', title: '送样人',operate:false},
  49. {field: 'machine', title: __('Machine'), operate: ''},
  50. {field: 'sample_no', title: __('Sample_no'), operate: 'LIKE'},
  51. // {field: 'standard_id', title: __('Standard_id')},
  52. {field: 'standard_name', title: __('Standard_name'), operate: 'LIKE',searchList: $.getJSON("res/companyselect")},
  53. {field: 'create', title: __('Create'),operate: 'RANGE_DATE', addclass: 'datetimerange', formatter: Table.api.formatter.date,datetimeFormat:'YYYY-MM-DD'},
  54. {field: 'maker', title: __('Maker'),operate: false},
  55. {field: 'remark', title: __('Remark'),operate: false},
  56. {field: 'params', title: __('Params'),operate: false},
  57. // {field: 'userid', title: __('Userid')},
  58. {field: 'status', title: __('Status'), searchList: {"0":__('Status 0'),"1":__('Status 1'),"2":__('Status 2')}, formatter: Table.api.formatter.status},
  59. // {field: 'delete_time', title: __('Delete_time'), operate: 'LIKE'},
  60. {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate,
  61. buttons: [
  62. {
  63. name: 'data',
  64. text: __('检测数据'),
  65. title: __('检测数据'),
  66. classname: 'btn btn-xs btn-primary btn-dialog',
  67. icon: 'fa fa-list',
  68. extend:'data-area=["100%","100%"]',
  69. url: 'res/data/id/{ids}',
  70. callback: function (data) {
  71. },
  72. visible: function (row) {
  73. //返回true时按钮显示,返回false隐藏
  74. return true;
  75. }
  76. },
  77. {
  78. name: 'data',
  79. text: __('导出数据报告'),
  80. title: __('导出数据报告'),
  81. classname: 'btn btn-xs btn-primary',
  82. // classname: 'btn btn-xs btn-primary btn-dialog',
  83. icon: 'fa fa-list',
  84. extend:'data-area=["100%","100%"]',
  85. url: 'res/report/id/{ids}',
  86. callback: function (data) {
  87. },
  88. visible: function (row) {
  89. //返回true时按钮显示,返回false隐藏
  90. return true;
  91. }
  92. }
  93. ],
  94. formatter: Table.api.formatter.operate}
  95. ]
  96. ]
  97. });
  98. $(".btn-edit").data("area", ["100%","100%"]);
  99. table.on('post-body.bs.table', function (e, settings, json, xhr) {
  100. $(".btn-editone").data("area", ["100%", "100%"]);
  101. });
  102. // 为表格绑定事件
  103. Table.api.bindevent(table);
  104. },
  105. add: function () {
  106. Controller.api.bindevent();
  107. },
  108. data: function () {
  109. $(".print-link").on('click', function() {
  110. var printHTML = document.querySelector('#print').innerHTML;
  111. // 将打印的区域赋值,进行打印
  112. window.document.body.innerHTML = printHTML;
  113. window.print();
  114. window.location.reload(); // 打印完成后重新加载页面
  115. Fast.api.close();
  116. });
  117. Controller.api.bindevent();
  118. },
  119. couse: function (){
  120. $('input[name="row[status]"][value="2"]').change(function () {
  121. $('#c-couse').attr('type','text');
  122. });
  123. Controller.api.bindevent();
  124. $('#submit').click(function () {
  125. console.log(1111);
  126. var id = $('#id').val();
  127. if (id == 0 || id == ''){
  128. layer.confirm('未获取到参数!');
  129. return false;
  130. }
  131. var status = $('input:radio:checked').val();
  132. if (status == 0 || status == ''){
  133. layer.confirm('未获取到参数!');
  134. return false;
  135. }
  136. var couse = $('#c-couse').val();
  137. Fast.api.ajax({
  138. url:'res/couses',
  139. data:{id:id,status:status,couse:couse}
  140. },function (data,ret) {
  141. //成功回调
  142. parent.Toastr.success("确认成功");
  143. Fast.api.close();
  144. parent.Fast.api.refreshmenu();
  145. return false;
  146. },function (data,ret) {
  147. parent.Toastr.error("确认失败");
  148. Fast.api.close();
  149. return false;
  150. });
  151. return false;
  152. });
  153. },
  154. edit: function () {
  155. $('input[name="row[status]"][value="2"]').change(function () {
  156. $('#c-couse').attr('type','text');
  157. });
  158. Controller.api.bindevent();
  159. },
  160. api: {
  161. bindevent: function () {
  162. Form.api.bindevent($("form[role=form]"));
  163. }
  164. }
  165. };
  166. return Controller;
  167. });