order.js 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266
  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: 'order/index' + location.search,
  8. add_url: 'order/add',
  9. edit_url: 'order/edit',
  10. del_url: 'order/del',
  11. multi_url: 'order/multi',
  12. import_url: 'order/import',
  13. table: 'order',
  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. fixedColumns: true,
  23. fixedRightNumber: 1,
  24. columns: [
  25. [
  26. {checkbox: true},
  27. {field: 'id', title: __('Id')},
  28. // {field: 'user_id', title: __('User_id')},
  29. {field: 'no', title: __('No'), operate: 'LIKE'},
  30. {field: 'customer', title: __('Customer'), operate: 'LIKE'},
  31. {field: 'product', title: __('Product'), operate: 'LIKE'},
  32. {field: 'specs', title: __('Specs'), operate: 'LIKE'},
  33. {field: 'unit', title: __('Unit'), operate: 'LIKE'},
  34. {field: 'number', title: __('Number')},
  35. {field: 'completed', title: __('Completed'), operate: 'LIKE'},
  36. {field: 'price', title: __('Price'), operate: 'LIKE'},
  37. {field: 'ese', title: __('Ese'), operate: 'LIKE', searchList: {"1":__('烟标'),"2":__('非烟标')},custom: {"1": "green", "2": "red"}, formatter: Table.api.formatter.status},
  38. {field: 'status', title: __('Status'), searchList: {"1":__('计划中'),"2":__('生产中'),"3":__('已完成'),"4":__('待申购')}, formatter: Table.api.formatter.status},
  39. {field: 'remark', title: __('Remark'), operate: 'LIKE'},
  40. {field: 'date', title: __('Date'), operate:'RANGE', addclass:'datetimerange', autocomplete:false},
  41. {field: 'user_name', title: __('User_name'), operate: 'LIKE'},
  42. {field: 'examine', title: __('Examine'), operate: 'LIKE'},
  43. {field: 'delivery_date', title: __('Delivery_date'), operate: 'LIKE'},
  44. // {field: 'create', title: __('Create'), operate:'RANGE', addclass:'datetimerange', autocomplete:false},
  45. // {field: 'update', title: __('Update'), operate:'RANGE', addclass:'datetimerange', autocomplete:false},
  46. // {field: 'company_id', title: __('Company_id')},
  47. // {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
  48. {field: 'operate', title: '操作', buttons:[{
  49. name:'task',
  50. text:'生成作业票',//订单管理点击作业票标题
  51. title:'生成作业票',//点击作业票内标题
  52. icon:'fa fa-add',
  53. extend: 'data-area=["100%","100%"]',
  54. classname:'btn btn-xs btn-info btn-fields btn-dialog task',
  55. url:'order/task',
  56. }],
  57. table: table,
  58. events: Table.api.events.operate, formatter: Table.api.formatter.operate
  59. },
  60. ]
  61. ]
  62. });
  63. table.on('post-body.bs.table',function(){
  64. $(".btn-editone").data("area",["100%","100%"]);
  65. });
  66. table.on('post-body.bs.table',function(){
  67. $(".btn-add").data("area",["100%","100%"]);
  68. });
  69. table.on('post-body.bs.table',function(){
  70. $(".btn-edit").data("area",["100%","100%"]);
  71. })
  72. // 为表格绑定事件
  73. Table.api.bindevent(table);
  74. },
  75. add: function () {
  76. Controller.api.bindevent();
  77. },
  78. edit: function () {
  79. Controller.api.bindevent();
  80. },
  81. task: function () {
  82. $('#add').click(function () {
  83. //配方获取和计算
  84. var ids = $('#c-name').val();
  85. // console.log(ids);return false;
  86. var number = $('#c-number').val();
  87. if (number == ''){
  88. layer.confirm('生产量不能为空');
  89. return false;
  90. }
  91. //给打印界面赋值
  92. $('.total').text(number);
  93. var remark = $('#c-remark').val();
  94. remark = '备注:'+remark;
  95. var pc = $('#hidden').val();//当前批次号
  96. // if($('#hidden').val() > $('#c-bach').val()){
  97. // layer.confirm("批次号不能小于当前的批次,当前批次为"+pc, {
  98. // title: ['信息'],
  99. // btn: ['确认'],
  100. // icon: 0,
  101. // closeBtn: 2,
  102. // shade: [0.3, '#000'],
  103. // shadeClose: true,
  104. // id: "one",
  105. // anim: 2,
  106. // isOutAnim: false,
  107. // area: ['30%', '30%'],
  108. // });
  109. // return false;
  110. // }
  111. //给打印表头赋值
  112. var bach = $('#c-bach').val();
  113. $('#bach').text(bach);
  114. //获取配方名称,去掉版本号
  115. var formula = $('#c-name').find("option:selected").text();
  116. var n = formula.indexOf("v");
  117. if (n >= 0){
  118. formula = formula.slice(0,n);
  119. }
  120. // console.log(formula);return false;
  121. $('#formula').val(formula);
  122. var drawer_name = $('#c-drawer_name').val();
  123. $('#drawer_name').text(drawer_name);
  124. var examine_name = $('#c-examine_name').val();
  125. $('#examine_name').text(examine_name);
  126. $.ajax({
  127. type: "POST",
  128. url: "formula/getNumber",
  129. data: {
  130. 'ids': ids,
  131. 'number': number
  132. },
  133. success:function(data) {
  134. if (1 == data.status)
  135. {
  136. var html = '';
  137. var str = '';
  138. $.each(data.data,function (key,value){
  139. html += '<tr><td><input class="form-control material" type="text" value="'+value.material+'"></td>';
  140. html += '<td><input class="form-control percentage" type="text" value="'+value.percentage+'"></td>';
  141. html += '<td><input class="form-control num" type="text" value="'+value.num+'"></td>';
  142. html += '<td><input class="form-control gy_name" type="text" value="'+value.gy_name+'"></td>';
  143. html += '<td><input class="form-control gy_num" type="text" value="'+value.gy_num+'"></td>';
  144. str += '<tr><td style="width: 100px;text-align: center">'+value.material+'</td>';
  145. str += '<td style="width: 100px;text-align: center">'+value.num+'</td>';
  146. str += '<td style="width: 100px;text-align: center"> </td>';
  147. str += '<td style="width: 400px;">'+value.gy_name+'</td></tr>';
  148. })
  149. $('#gy').text('');
  150. $('#gy').append(html);
  151. str += '<tr><td style="width: 100px;text-align: center;">总计</td><td class="total" style="width: 100px;text-align: center">'+number+'</td> <td></td><td></td></tr>';
  152. str += '<tr> <td colspan="5" class="remark">'+remark+'</td></tr>';
  153. $('#print').text('');
  154. $('#print').append(str);
  155. $('#formula_no').text(data.formula_no);
  156. $('#date').text(data.date);
  157. }else {
  158. layer.confirm(data.msg);
  159. }
  160. }
  161. });
  162. });
  163. Controller.api.bindevent();
  164. $(document).on('click','.submit',function () {
  165. var pc = $('#hidden').val();//当前批次号
  166. // if($('#hidden').val() > $('#c-bach').val()){
  167. // layer.confirm("批次号不能小于当前的批次,当前批次为"+pc, {
  168. // title: ['信息'],
  169. // btn: ['确认'],
  170. // icon: 0,
  171. // closeBtn: 2,
  172. // shade: [0.3, '#000'],
  173. // shadeClose: true,
  174. // id: "one",
  175. // anim: 2,
  176. // isOutAnim: false,
  177. // area: ['30%', '30%'],
  178. // });
  179. // return false;
  180. // }else{
  181. Form.api.bindevent($("form[role=form]"), function(data, ret){
  182. Toastr.success('111');//成功
  183. }, function(data, ret){
  184. Toastr.success("222");
  185. }, function(success, error){
  186. var verify = 1;
  187. var ids = $('#c-name').val();
  188. //获取配方名称,去掉版本号
  189. var name = $('#c-name').find("option:selected").text();
  190. var n = name.indexOf("v");
  191. var mid = $('#c-mid').val();
  192. var oid = $('#ids').val();
  193. if (n >= 0){
  194. name = name.slice(0,n);
  195. }
  196. // console.log(formula);return false;
  197. if (name == '' || name== undefined) {
  198. verify = -1;
  199. }
  200. var bach = $('#c-bach').val();
  201. if (bach == '' || bach== undefined) {
  202. verify = -1;
  203. }
  204. var drawer_name = $('#c-drawer_name').val();
  205. if (drawer_name == '' || drawer_name== undefined) {
  206. verify = -1;
  207. }
  208. var examine_name = $('#c-examine_name').val();
  209. if (examine_name == '' || examine_name== undefined) {
  210. verify = -1;
  211. }
  212. var number = $('#c-number').val();
  213. if (number == '' || number== undefined) {
  214. verify = -1;
  215. }
  216. var remark = $('#c-remark').val();
  217. if (verify == -1){
  218. layer.confirm("数据格式不对,请仔细核查!");return false;
  219. }
  220. //基础数据
  221. var baseData = [];
  222. baseData.push(ids);//配方id
  223. baseData.push(name);//配方名称
  224. baseData.push(bach);//批次号
  225. baseData.push(drawer_name);//开票人
  226. baseData.push(examine_name);//审核人
  227. baseData.push(number);//生产量
  228. baseData.push(remark);//备注
  229. baseData.push(mid);//机台id
  230. baseData.push(oid);//订单id
  231. Fast.api.ajax({
  232. url:'formula/task?ids='+ids,
  233. data:{baseData:baseData}
  234. },function (data,ret) {
  235. //成功回调
  236. parent.Toastr.success("添加成功");
  237. Fast.api.close();
  238. parent.Fast.api.refreshmenu();
  239. return false;
  240. },function (data,ret) {
  241. parent.Toastr.error("添加失败");
  242. Fast.api.close();
  243. return false;
  244. });
  245. return false;
  246. });
  247. // }
  248. });
  249. },
  250. api: {
  251. bindevent: function () {
  252. Form.api.bindevent($("form[role=form]"));
  253. }
  254. }
  255. };
  256. return Controller;
  257. });