formula.js 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411
  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: 'formula/index' + location.search,
  8. add_url: 'formula/add',
  9. edit_url: 'formula/edit',
  10. del_url: 'formula/del',
  11. multi_url: 'formula/multi',
  12. import_url: 'formula/import',
  13. table: 'formula',
  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') ,operate: false},
  28. // {field: 'user_id', title: __('User_id')},
  29. // {field: 'company_id', title: __('Company_id')},
  30. // {field: 'no', title: __('No'), operate: 'LIKE'},
  31. // {field: 'formula_no', title: __('Formula_no'), operate: 'LIKE'},
  32. {field: 'name', title: __('Name'), operate: 'LIKE'},
  33. {field: 'version', title: __('Version'),operate: false},
  34. // {field: 'date', title: __('Date'), operate: 'LIKE'},
  35. // {field: 'charge_name', title: __('Charge_name'), operate: 'LIKE'},
  36. // {field: 'examine_name', title: __('Examine_name'), operate: 'LIKE'},
  37. {field: 'examine_status', title: __('Examine_status'), searchList: {"1":__('Examine_status 1'),"2":__('Examine_status 2'),"3":__('Examine_status 3')}, formatter: Table.api.formatter.status},
  38. // {field: 'remark', title: __('Remark'), operate: 'LIKE'},
  39. // {field: 'level', title: __('Level')},
  40. // {field: 'usability', title: __('Usability'), operate: 'LIKE'},
  41. // {field: 'status', title: __('Status'), searchList: {"1":__('Status 1'),"2":__('Status 2')}, formatter: Table.api.formatter.status},
  42. {field: 'create', title: __('Create'),operate: false, addclass:'datetimerange', autocomplete:false},
  43. {field: 'operate', title: '操作', buttons:[{
  44. name:'task',
  45. text:'生成作业票',
  46. title:'生成作业票',
  47. icon:'fa fa-add',
  48. extend: 'data-area=["100%","100%"]',
  49. classname:'btn btn-xs btn-info btn-fields btn-dialog task',
  50. url:'formula/task',
  51. }],
  52. table: table,
  53. events: Table.api.events.operate, formatter: Table.api.formatter.operate
  54. },
  55. // {field: 'operate', title: __('Operate'),table: table, events: Table.api.events.operate,formatter: Table.api.formatter.operate}
  56. ]
  57. ]
  58. });
  59. table.on('post-body.bs.table',function(){
  60. $(".btn-editone").data("area",["100%","100%"]);
  61. })
  62. // 为表格绑定事件
  63. Table.api.bindevent(table);
  64. },
  65. add: function () {
  66. $('#add').click(function () {
  67. var html = '';
  68. html += '<tr><td><input class="form-control material" type="text" value=""></td>';
  69. html += '<td><input class="form-control percentage" type="text" value=""></td>';
  70. html += '<td><input class="form-control gy_name" type="text" value=""></td>';
  71. html += '<td><input class="form-control gy_num" type="text" value=""></td>';
  72. html += '<td><button type="button" class="btn btn-danger del">删除</button></td></tr>';
  73. $('#gy').append(html);
  74. });
  75. $(document).on('click','.del',function () {
  76. $(this).parent().parent().remove();
  77. });
  78. Controller.api.bindevent();
  79. $(document).on('click','.submit',function () {
  80. Form.api.bindevent($("form[role=form]"), function(data, ret){
  81. Toastr.success('111');//成功
  82. }, function(data, ret){
  83. Toastr.success("222");
  84. }, function(success, error){
  85. var verify = 1;
  86. var name = $('#c-name').val();
  87. if (name == '' || name== undefined) {
  88. verify = -1;
  89. }
  90. var formula_no = $('#c-formula_no').val();
  91. if (formula_no == '' || formula_no== undefined) {
  92. verify = -1;
  93. }
  94. var charge_name = $('#c-charge_name').val();
  95. if (charge_name == '' || charge_name== undefined) {
  96. verify = -1;
  97. }
  98. var examine_name = $('#c-examine_name').val();
  99. if (examine_name == '' || examine_name== undefined) {
  100. verify = -1;
  101. }
  102. var remark = $('#c-remark').val();
  103. var version = $('#c-version').val();
  104. var date = $('#c-date').val();
  105. var usability = $('#c-usability').selectPageText();
  106. if (usability == ''){
  107. usability = 99;
  108. }
  109. // console.log(usability);return false;
  110. if (verify == -1){
  111. layer.confirm("数据格式不对,请仔细核查!");return false;
  112. }
  113. //基础数据
  114. var baseData = [];
  115. baseData.push(name);
  116. baseData.push(formula_no);
  117. baseData.push(charge_name);
  118. baseData.push(examine_name);
  119. baseData.push(remark);
  120. baseData.push(version);
  121. baseData.push(date);
  122. baseData.push(usability);
  123. console.log(baseData);
  124. //配方数据
  125. var data = [];
  126. var formulaTrList = $("#gy").find("tr");//行数
  127. for (var i = 1; i < formulaTrList.length; i++) {
  128. var formulaData = [];
  129. var formulaTrArr=formulaTrList.eq(i);
  130. var tdOne = formulaTrArr.children("td").eq(0).find("input").val();
  131. var tdTwo = formulaTrArr.children("td").eq(1).find("input").val();
  132. var tdThr = formulaTrArr.children("td").eq(2).find("input").val();
  133. var tdFou = formulaTrArr.children("td").eq(3).find("input").val();
  134. if (tdOne == '' && tdTwo == '' && tdThr==''){
  135. layer.confirm('工艺信息不能全部为空!');return false;
  136. }
  137. if (tdFou == ''){
  138. layer.confirm('工序号不能为空!');return false;
  139. }
  140. formulaData.push(tdOne);
  141. formulaData.push(tdTwo);
  142. formulaData.push(tdThr);
  143. formulaData.push(tdFou);
  144. data.push(formulaData);
  145. }
  146. if (data.length == 0){
  147. layer.confirm('工艺信息不能为空!');return false;
  148. }
  149. console.log(data);
  150. // return false;
  151. Fast.api.ajax({
  152. url:'formula/add',
  153. data:{baseData:baseData,formulaData:data}
  154. },function (data,ret) {
  155. //成功回调
  156. parent.Toastr.success("添加成功");
  157. Fast.api.close();
  158. parent.Fast.api.refreshmenu();
  159. return false;
  160. },function (data,ret) {
  161. parent.Toastr.error("添加失败");
  162. Fast.api.close();
  163. return false;
  164. });
  165. return false;
  166. });
  167. });
  168. },
  169. edit: function () {
  170. $('#add').click(function () {
  171. var html = '';
  172. html += '<tr><td><input class="form-control material" type="text" value=""></td>';
  173. html += '<td><input class="form-control percentage" type="text" value=""></td>';
  174. html += '<td><input class="form-control gy_name" type="text" value=""></td>';
  175. html += '<td><input class="form-control gy_num" type="text" value=""></td>';
  176. html += '<td><button type="button" class="btn btn-danger del">删除</button></td></tr>';
  177. $('#gy').append(html);
  178. });
  179. $(document).on('click','.del',function () {
  180. $(this).parent().parent().remove();
  181. });
  182. Controller.api.bindevent();
  183. $(document).on('click','.submit',function () {
  184. Form.api.bindevent($("form[role=form]"), function(data, ret){
  185. Toastr.success('111');//成功
  186. }, function(data, ret){
  187. Toastr.success("222");
  188. }, function(success, error){
  189. var verify = 1;
  190. var ids = $('#ids').attr('data-value');
  191. var name = $('#c-name').val();
  192. if (name == '' || name== undefined) {
  193. verify = -1;
  194. }
  195. var formula_no = $('#c-formula_no').val();
  196. if (formula_no == '' || formula_no== undefined) {
  197. verify = -1;
  198. }
  199. var charge_name = $('#c-charge_name').val();
  200. if (charge_name == '' || charge_name== undefined) {
  201. verify = -1;
  202. }
  203. var examine_name = $('#c-examine_name').val();
  204. if (examine_name == '' || examine_name== undefined) {
  205. verify = -1;
  206. }
  207. var remark = $('#c-remark').val();
  208. var version = $('#c-version').val();
  209. var date = $('#c-date').val();
  210. var usability = $('#c-usability').selectPageText();
  211. if (usability == ''){
  212. usability = 99;
  213. }
  214. // console.log(usability);return false;
  215. if (verify == -1){
  216. layer.confirm("数据格式不对,请仔细核查!");return false;
  217. }
  218. //基础数据
  219. var baseData = [];
  220. baseData.push(name);
  221. baseData.push(formula_no);
  222. baseData.push(charge_name);
  223. baseData.push(examine_name);
  224. baseData.push(remark);
  225. baseData.push(version);
  226. baseData.push(date);
  227. baseData.push(usability);
  228. console.log(baseData);
  229. //配方数据
  230. var data = [];
  231. var formulaTrList = $("#gy").find("tr");//行数
  232. for (var i = 1; i < formulaTrList.length; i++) {
  233. var formulaData = [];
  234. var formulaTrArr=formulaTrList.eq(i);
  235. var tdOne = formulaTrArr.children("td").eq(0).find("input").val();
  236. var tdTwo = formulaTrArr.children("td").eq(1).find("input").val();
  237. var tdThr = formulaTrArr.children("td").eq(2).find("input").val();
  238. var tdFou = formulaTrArr.children("td").eq(3).find("input").val();
  239. if (tdOne == '' && tdTwo == '' && tdThr==''){
  240. layer.confirm('工艺信息不能全部为空!');return false;
  241. }
  242. if (tdFou == ''){
  243. layer.confirm('工序号不能为空!');return false;
  244. }
  245. formulaData.push(tdOne);
  246. formulaData.push(tdTwo);
  247. formulaData.push(tdThr);
  248. formulaData.push(tdFou);
  249. data.push(formulaData);
  250. }
  251. if (data.length == 0){
  252. layer.confirm('工艺信息不能为空!');return false;
  253. }
  254. console.log(ids);
  255. console.log(data);
  256. // return false;
  257. Fast.api.ajax({
  258. url:'formula/edit?ids='+ids,
  259. data:{baseData:baseData,formulaData:data}
  260. },function (data,ret) {
  261. //成功回调
  262. parent.Toastr.success("添加成功");
  263. Fast.api.close();
  264. parent.Fast.api.refreshmenu();
  265. return false;
  266. },function (data,ret) {
  267. parent.Toastr.error("添加失败");
  268. Fast.api.close();
  269. return false;
  270. });
  271. return false;
  272. });
  273. });
  274. },
  275. task: function () {
  276. $('#add').click(function () {
  277. //配方获取和计算
  278. var ids = $('#ids').val();
  279. var number = $('#c-number').val();
  280. if (number == ''){
  281. layer.confirm('生产量不能为空');
  282. return false;
  283. }
  284. //给打印界面赋值
  285. $('.total').text(number);
  286. var remark = $('#c-remark').val();
  287. remark = '备注:'+remark;
  288. $('.remark').text(remark);
  289. //给打印表头赋值
  290. var bach = $('#c-bach').val();
  291. $('#bach').text(bach);
  292. var formula = $('#c-name').val();
  293. $('#formula').val(formula);
  294. var drawer_name = $('#c-drawer_name').val();
  295. $('#drawer_name').text(drawer_name);
  296. var examine_name = $('#c-examine_name').val();
  297. $('#examine_name').text(examine_name);
  298. $.ajax({
  299. type: "POST",
  300. url: "formula/getNumber",
  301. data: {
  302. 'ids': ids,
  303. 'number': number
  304. },
  305. success:function(data) {
  306. if (1 == data.status)
  307. {
  308. var formulaTrList = $("#gy").find("tr");//行数
  309. for (var i = 1; i < formulaTrList.length; i++) {
  310. var formulaTrArr=formulaTrList.eq(i);
  311. var id = formulaTrArr.children("td").eq(2).find('input').attr('data-id');//应加量
  312. $.each(data.data,function (key,value){
  313. if (id == value.id){
  314. $('#input-'+id).val(value.num);
  315. }
  316. })
  317. }
  318. var print_gyList = $("#print_gy").find("tr");//行数
  319. for (var i = 1; i < print_gyList.length; i++) {
  320. var formulaTrArr=print_gyList.eq(i);
  321. var id = formulaTrArr.children("td").eq(1).attr('data-id');//应加量
  322. $.each(data.data,function (key,value){
  323. if (id == value.id){
  324. $('#text-'+id).text(value.num);
  325. }
  326. })
  327. }
  328. $('#formula_no').text(data.formula_no);
  329. $('#date').text(data.date);
  330. }else {
  331. layer.confirm(data.msg);
  332. }
  333. }
  334. })
  335. })
  336. Controller.api.bindevent();
  337. $(document).on('click','.submit',function () {
  338. Form.api.bindevent($("form[role=form]"), function(data, ret){
  339. Toastr.success('111');//成功
  340. }, function(data, ret){
  341. Toastr.success("222");
  342. }, function(success, error){
  343. var verify = 1;
  344. var ids = $('#ids').attr('value');
  345. var name = $('#c-name').val();
  346. if (name == '' || name== undefined) {
  347. verify = -1;
  348. }
  349. var bach = $('#c-bach').val();
  350. if (bach == '' || bach== undefined) {
  351. verify = -1;
  352. }
  353. var drawer_name = $('#c-drawer_name').val();
  354. if (drawer_name == '' || drawer_name== undefined) {
  355. verify = -1;
  356. }
  357. var examine_name = $('#c-examine_name').val();
  358. if (examine_name == '' || examine_name== undefined) {
  359. verify = -1;
  360. }
  361. var number = $('#c-number').val();
  362. var remark = $('#c-remark').val();
  363. if (verify == -1){
  364. layer.confirm("数据格式不对,请仔细核查!");return false;
  365. }
  366. //基础数据
  367. var baseData = [];
  368. baseData.push(ids);
  369. baseData.push(name);
  370. baseData.push(bach);
  371. baseData.push(drawer_name);
  372. baseData.push(examine_name);
  373. baseData.push(number);
  374. baseData.push(remark);
  375. Fast.api.ajax({
  376. url:'formula/task?ids='+ids,
  377. data:{baseData:baseData}
  378. },function (data,ret) {
  379. //成功回调
  380. parent.Toastr.success("添加成功");
  381. Fast.api.close();
  382. parent.Fast.api.refreshmenu();
  383. return false;
  384. },function (data,ret) {
  385. parent.Toastr.error("添加失败");
  386. Fast.api.close();
  387. return false;
  388. });
  389. return false;
  390. });
  391. });
  392. },
  393. api: {
  394. bindevent: function () {
  395. Form.api.bindevent($("form[role=form]"));
  396. }
  397. }
  398. };
  399. return Controller;
  400. });