judge.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334
  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: 'item/judge/index' + location.search,
  8. add_url: 'item/judge/add',
  9. edit_url: 'item/judge/edit',
  10. del_url: 'item/judge/del',
  11. multi_url: 'item/judge/multi',
  12. import_url: 'item/judge/import',
  13. table: 'item_judge',
  14. }
  15. });
  16. var table = $("#table");
  17. // 初始化表格
  18. table.bootstrapTable({
  19. url: $.fn.bootstrapTable.defaults.extend.index_url,
  20. pk: 'id',
  21. sortName: 'id',
  22. columns: [
  23. [
  24. {checkbox: true},
  25. {field: 'id', title: __('Id')},
  26. {field: 'no', title: __('No'), operate: 'LIKE'},
  27. {field: 'name', title: __('Name'), operate: 'LIKE'},
  28. {field: 'list_name', title: __('List_name'), operate: 'LIKE'},
  29. // {field: 'userid', title: __('Userid')},
  30. {field: 'create', title: __('Create'), operate: 'LIKE',addclass:'datetimerange', autocomplete:false},
  31. {field: 'update', title: __('Update'), operate: 'LIKE',addclass:'datetimerange', autocomplete:false},
  32. // {field: 'delete', title: __('Delete'), operate: 'LIKE'},
  33. {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
  34. ]
  35. ]
  36. });
  37. table.on('post-body.bs.table',function(){
  38. $(".btn-add").data("area", ["100%","100%"]);
  39. $(".btn-edit").data("area",["100%","100%"]);
  40. $(".btn-editone").data("area",["100%","100%"]);
  41. });
  42. // 为表格绑定事件
  43. Table.api.bindevent(table);
  44. },
  45. add: function () {
  46. //增加一行
  47. $(document).on('click','.add',function () {
  48. var html = '';
  49. html += '<tr><td><input class="form-control pro_name" name="row[pro_name]" type="text" value=""></td>';
  50. html += '<td><input class="form-control params" name="row[params]" type="text"></td>';
  51. html += '<td><input class="form-control standard" name="row[standard]" type="text" value="数值型"></td>';
  52. html += '<td><input class="form-control max_character" name="row[max_character]" type="text" value="≤"></td>';
  53. html += '<td><input class="form-control max" name="row[max]" type="text"></td>';
  54. html += '<td><input class="form-control min_character" name="row[min_character]" type="text" value="≥"></td>';
  55. html += '<td><input class="form-control min" name="row[min]" type="text" value=""></td>';
  56. html += '<td style="text-align: center"> <button type="button" class="btn btn-success add">添加</button>&nbsp;&nbsp; <button type="button" class="btn btn-danger del">删除</button></td>';
  57. html += '</tr>';
  58. $('#check_child').append(html);
  59. });
  60. //删除一行
  61. $(document).on('click','.del',function () {
  62. var num = document.getElementById("check_child").getElementsByTagName("tr").length;
  63. if (num <= 2){
  64. layer.confirm('已经是最后一行了');
  65. }else{
  66. $(this).parent().parent().remove();
  67. }
  68. });
  69. Controller.api.bindevent();
  70. $(document).on('click','.submit',function () {
  71. Form.api.bindevent($("form[role=form]"), function(data, ret){
  72. Toastr.success('111');//成功
  73. }, function(data, ret){
  74. Toastr.success("222");
  75. }, function(success, error){
  76. //判定标准编号
  77. var no = $('#c-no').val();
  78. if (no == '' || no== undefined) {
  79. layer.confirm("判定标准编号不能为空");return false;
  80. }
  81. // 判定标准名称
  82. var name = $('#c-name').val();
  83. if (name == '' || name== undefined) {
  84. layer.confirm("判定标准名称不能为空");return false;
  85. }
  86. // 检测项目集
  87. // var list_name = $('#c-list_name').val();
  88. // if (list_name == '' || list_name== undefined) {
  89. // layer.confirm("检测项目集不能为空");return false;
  90. // }
  91. // 用户id
  92. var userid = $('#c-userid').val();
  93. if (userid == '' || userid== undefined) {
  94. layer.confirm("用户不能为空");return false;
  95. }
  96. var create = $('#c-create').val(); //创建时间
  97. var update = $('#c-update').val(); //修改时间
  98. // var delete_date = $('#c-delete').val(); //删除时间
  99. //基础数据
  100. var baseData = [];
  101. baseData.push(userid);
  102. baseData.push(no);
  103. baseData.push(name);
  104. baseData.push(create);
  105. baseData.push(update);
  106. var data = [];
  107. var formulaTrList = $("#check_child").find("tr");//行数
  108. for (var i = 1; i < formulaTrList.length; i++) {
  109. var formulaData = [];
  110. var formulaTrArr=formulaTrList.eq(i);
  111. var tdOne = formulaTrArr.children("td").eq(0).find("input").val();
  112. var tdTwo = formulaTrArr.children("td").eq(1).find("input").val();
  113. var tdThr = formulaTrArr.children("td").eq(2).find("input").val();
  114. var tdFou = formulaTrArr.children("td").eq(3).find("input").val();
  115. var tdFiv = formulaTrArr.children("td").eq(4).find("input").val();
  116. var tdSix = formulaTrArr.children("td").eq(5).find("input").val();
  117. var tdSeven = formulaTrArr.children("td").eq(6).find("input").val();
  118. formulaData.push(tdOne);
  119. formulaData.push(tdTwo);
  120. formulaData.push(tdThr);
  121. formulaData.push(tdFou);
  122. formulaData.push(tdFiv);
  123. formulaData.push(tdSix);
  124. formulaData.push(tdSeven);
  125. data.push(formulaData);
  126. }
  127. console.log(baseData);
  128. console.log(data);
  129. // return false;
  130. Fast.api.ajax({
  131. url:'item/judge/add',
  132. data:{baseData:baseData,data:data}
  133. },function (data,ret) {
  134. //成功回调
  135. parent.Toastr.success("添加成功");
  136. Fast.api.close();
  137. parent.Fast.api.refreshmenu();
  138. return false;
  139. },function (data,ret) {
  140. parent.Toastr.error("添加失败");
  141. Fast.api.close();
  142. return false;
  143. });
  144. return false;
  145. });
  146. });
  147. },
  148. edit: function () {
  149. //增加一行
  150. $(document).on('click','.add',function () {
  151. var html = '';
  152. html += '<tr><td><input class="form-control pro_name" name="row[][pro_name]" type="text"></td>';
  153. html += '<td><input class="form-control params" name="row[][params]" type="text"></td>';
  154. html += '<td><input class="form-control standard" name="row[][standard]" type="text" value="数值型"></td>';
  155. html += '<td><input class="form-control max_character" name="row[][max_character]" type="text" value="≤"></td>';
  156. html += '<td><input class="form-control max" name="row[][max]" type="text"></td>';
  157. html += '<td><input class="form-control min_character" name="row[][min_character]" type="text" value="≥"></td>';
  158. html += '<td><input class="form-control min" name="row[][min]" type="text"></td>';
  159. html += '<td style="text-align: center"><input type="hidden" value=""> <button type="button" class="btn btn-success add">添加</button>&nbsp;&nbsp; <button type="button" class="btn btn-danger del">删除</button></td>';
  160. html += '</tr>';
  161. $('#check_child').append(html);
  162. });
  163. //删除一行
  164. $(document).on('click','.del',function () {
  165. var num = document.getElementById("check_child").getElementsByTagName("tr").length;
  166. if (num <= 2){
  167. layer.confirm('已经是最后一行了');
  168. }else{
  169. $(this).parent().parent().remove();
  170. }
  171. });
  172. Controller.api.bindevent();
  173. $(document).on('click','.submit',function () {
  174. Form.api.bindevent($("form[role=form]"), function(data, ret){
  175. Toastr.success('111');//成功
  176. }, function(data, ret){
  177. Toastr.success("222");
  178. }, function(success, error){
  179. //判定标准编号
  180. var no = $('#c-no').val();
  181. if (no == '' || no== undefined) {
  182. layer.confirm("判定标准编号不能为空");return false;
  183. }
  184. // 判定标准名称
  185. var name = $('#c-name').val();
  186. if (name == '' || name== undefined) {
  187. layer.confirm("判定标准名称不能为空");return false;
  188. }
  189. // 检测项目集
  190. // var list_name = $('#c-list_name').val();
  191. // if (list_name == '' || list_name== undefined) {
  192. // layer.confirm("检测项目集不能为空");return false;
  193. // }
  194. // 用户id
  195. var userid = $('#c-userid').val();
  196. if (userid == '' || userid== undefined) {
  197. layer.confirm("用户不能为空");return false;
  198. }
  199. var create = $('#c-create').val(); //创建时间
  200. var update = $('#c-update').val(); //修改时间
  201. // var delete_date = $('#c-delete').val(); //删除时间
  202. var pid = $('#pid').val();//id
  203. //基础数据
  204. var baseData = [];
  205. baseData.push(pid); //项目id
  206. baseData.push(no); //判定标准编号
  207. baseData.push(name); //判定标准名称
  208. baseData.push(update); //修改时间
  209. baseData.push(userid); //用户id
  210. var data = [];
  211. var formulaTrList = $("#check_child").find("tr");//行数
  212. for (var i = 1; i < formulaTrList.length; i++) {
  213. var formulaData = [];
  214. var formulaTrArr=formulaTrList.eq(i);
  215. var tdOne = formulaTrArr.children("td").eq(0).find("input").val();
  216. var tdTwo = formulaTrArr.children("td").eq(1).find("input").val();
  217. var tdThr = formulaTrArr.children("td").eq(2).find("input").val();
  218. var tdFou = formulaTrArr.children("td").eq(3).find("input").val();
  219. var tdFiv = formulaTrArr.children("td").eq(4).find("input").val();
  220. var tdSix = formulaTrArr.children("td").eq(5).find("input").val();
  221. var tdSeven = formulaTrArr.children("td").eq(6).find("input").val();
  222. var tdeight = formulaTrArr.children("td").eq(7).find("input").val();
  223. if (tdeight == '' || tdeight == 'undefined'){
  224. tdeight = 0;
  225. }
  226. formulaData.push(tdOne);
  227. formulaData.push(tdTwo);
  228. formulaData.push(tdThr);
  229. formulaData.push(tdFou);
  230. formulaData.push(tdFiv);
  231. formulaData.push(tdSix);
  232. formulaData.push(tdSeven);
  233. formulaData.push(tdeight);
  234. data.push(formulaData);
  235. }
  236. console.log(baseData);
  237. console.log(data);
  238. // return false;
  239. Fast.api.ajax({
  240. url:'item/judge/edit',
  241. data:{baseData:baseData,data:data}
  242. },function (data,ret) {
  243. //成功回调
  244. // return false;
  245. parent.Toastr.success("添加成功");
  246. Fast.api.close();
  247. parent.Fast.api.refreshmenu();
  248. return false;
  249. },function (data,ret) {
  250. // return false;
  251. parent.Toastr.error("添加失败");
  252. Fast.api.close();
  253. return false;
  254. });
  255. return false;
  256. });
  257. });
  258. },
  259. restore: function () {
  260. // 初始化表格参数配置
  261. Table.api.init({
  262. extend: {
  263. 'dragsort_url': '',
  264. }
  265. });
  266. var table = $("#table");
  267. // 初始化表格
  268. table.bootstrapTable({
  269. url: 'item/judge/restore' + location.search,
  270. pk: 'id',
  271. sortName: 'id',
  272. columns: [
  273. [
  274. {checkbox: true},
  275. {field: 'id', title: '序号'},
  276. {field: 'name', title: __('Name'), operate: 'LIKE'},
  277. {
  278. field: 'delete',
  279. title: __('Delete'),
  280. operate: 'RANGE',
  281. addclass: 'datetimerange',
  282. formatter: Table.api.formatter.datetime
  283. },
  284. {
  285. field: 'operate',
  286. width: '140px',
  287. title: __('Operate'),
  288. table: table,
  289. events: Table.api.events.operate,
  290. buttons: [
  291. {
  292. name: 'Restore',
  293. text: __('Restore'),
  294. classname: 'btn btn-xs btn-info btn-ajax btn-restoreit',
  295. icon: 'fa fa-rotate-left',
  296. url: 'item/check/restore',
  297. refresh: true
  298. },
  299. {
  300. name: 'Destroy',
  301. text: __('Destroy'),
  302. classname: 'btn btn-xs btn-danger btn-ajax btn-destroyit',
  303. icon: 'fa fa-times',
  304. url: 'item/check/destroy',
  305. refresh: true
  306. }
  307. ],
  308. formatter: Table.api.formatter.operate
  309. }
  310. ]
  311. ]
  312. });
  313. // 为表格绑定事件
  314. Table.api.bindevent(table);
  315. },
  316. api: {
  317. bindevent: function () {
  318. Form.api.bindevent($("form[role=form]"));
  319. }
  320. }
  321. };
  322. return Controller;
  323. });