res.js 8.4 KB

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