OutMMwaitSubmitCtrl.js 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. define([ 'app/app','service/Purc','service/SupportServices' ], function(app) {
  2. app.register.controller('OutMMwaitSubmitCtrl',['$scope', '$rootScope','$stateParams','$filter', 'ngTableParams','Online','SupportUtil','OutOper','toaster', 'Ring',function($scope, $rootScope,$stateParams,$filter, ngTableParams,Online,SupportUtil,OutOper,toaster,Ring){
  3. $scope.grid = $rootScope.outMMgrid;
  4. var getOrder = function(code) {//根据路径中的id号获取对应的单据
  5. var result = null;
  6. angular.forEach($rootScope.outMMOrders, function(value, key){
  7. if(value.PI_INOUTNO == code) {
  8. result = value;
  9. return result;
  10. }
  11. });
  12. return result;
  13. };
  14. $scope.order = getOrder($stateParams.ioNocode);
  15. if($scope.grid){
  16. $scope.tableParams = new ngTableParams({//未完成料号名称规格及剩余数量表格
  17. page: 1,
  18. count: 10,
  19. filter: {
  20. },
  21. sorting: {
  22. }
  23. }, {
  24. total: $scope.grid.length,
  25. getData: function ($defer, params) {
  26. var filteredData = params.filter() ?
  27. $filter('filter')($scope.grid, params.filter()) :
  28. data;
  29. var orderedData = params.sorting() ?
  30. $filter('orderBy')(filteredData, params.orderBy()) :
  31. data;
  32. params.total(orderedData.length); // set total for recalc pagination
  33. $defer.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
  34. }
  35. });
  36. }
  37. $scope.deleteAll = function (){//全部删除
  38. if(confirm("确定删除全部?")){
  39. angular.forEach($rootScope.outMMOrders, function(value, key) {//反写剩余数
  40. if (value.PI_INOUTNO == $scope.order.PI_INOUTNO) {
  41. for (var n in value.product) {
  42. for (var gs in $scope.grid){
  43. if (value.product[n].PD_ID == $scope.grid[gs].bi_pdid) {
  44. value.product[n].PD_OUTQTY = eval($scope.grid[gs].bi_outqty+"+"+value.product[n].PD_OUTQTY);
  45. }
  46. }
  47. }
  48. }
  49. });
  50. $rootScope.outMMgrid = $scope.grid ='';
  51. $scope.tableParams.reload();
  52. toaster.pop('success', '删除成功');
  53. }
  54. };
  55. $scope.deleteWaitSubmitItem = function (s){
  56. angular.forEach($rootScope.outMMOrders, function(value, key) {
  57. if (value.PI_INOUTNO == $scope.order.PI_INOUTNO) {
  58. for (var n in value.product) {
  59. if (value.product[n].PD_ID == s.bi_pdid) {
  60. value.product[n].PD_OUTQTY = eval(s.bi_outqty+"+"+value.product[n].PD_OUTQTY);
  61. }
  62. }
  63. }
  64. });
  65. for (var n in $scope.grid){
  66. if(s.bi_barcode && ($scope.grid[n].bi_barcode == s.bi_barcode)){
  67. $scope.grid.splice(n,1);
  68. }
  69. if(s.bi_outboxcode && ($scope.grid[n].bi_outboxcode == s.bi_outboxcode)){
  70. $scope.grid.splice(n,1);
  71. }
  72. }
  73. $rootScope.outMMgrid = $scope.grid;
  74. $scope.tableParams.reload();
  75. };
  76. $scope.submitGet = function(){//提交采集操作,与后台交互
  77. OutOper.saveOutBarcode({}, JSON.stringify($scope.grid),function(data) {//获取成功
  78. if(data.exceptionInfo){
  79. toaster.pop('error', '提交失败',data.exceptionInfo);
  80. Ring.error();
  81. }else{
  82. $rootScope.outMMgrid = $scope.grid ='';
  83. toaster.pop('success', '提交成功');
  84. }
  85. }, function(response){//获取失败处理
  86. if(response.status == 0){ //无网络错误
  87. Online.setOnline(false);//修改网络状态
  88. toaster.pop('error', '提交失败',"网络连接不可用,请稍后再试");
  89. }
  90. else {
  91. toaster.pop('error', '提交失败',response.exceptionInfo);
  92. }
  93. });
  94. };
  95. }])
  96. });