ReceiveGoodsSerivceImpl.java 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. package com.tld.service.impl;
  2. import com.github.pagehelper.PageHelper;
  3. import com.github.pagehelper.PageInfo;
  4. import com.tld.mapper.ReceiveGoodsMapper;
  5. import com.tld.model.ReceiveGoods;
  6. import com.tld.service.ReceiveGoodsSerivce;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.stereotype.Service;
  9. import org.springframework.transaction.annotation.Transactional;
  10. import java.util.*;
  11. @Service
  12. public class ReceiveGoodsSerivceImpl implements ReceiveGoodsSerivce {
  13. @Autowired
  14. private ReceiveGoodsMapper receiveGoodsMapper;
  15. @Override
  16. public Map<String, Object> getReceiveGoods(ReceiveGoods receiveGoods) {
  17. Map<String, Object> map = new HashMap<>();
  18. try{
  19. PageHelper.startPage(receiveGoods.getPage(), receiveGoods.getLimit());
  20. PageInfo<ReceiveGoods> pageInfo = new PageInfo<>(receiveGoodsMapper.getReceiveGoods(receiveGoods));
  21. map.put("data", pageInfo);
  22. map.put("msg", "200");
  23. }catch (Exception e){
  24. e.printStackTrace();
  25. map.put("msg", "500");
  26. map.put("errMsg", "服务器请求异常,请稍后再试");
  27. }
  28. return map;
  29. }
  30. @Override
  31. public Map<String, Object> getPastReceiveGoods(ReceiveGoods receiveGoods) {
  32. Map<String, Object> map = new HashMap<>();
  33. try{
  34. PageHelper.startPage(receiveGoods.getPage(), receiveGoods.getLimit());
  35. PageInfo<ReceiveGoods> pageInfo = new PageInfo<>(receiveGoodsMapper.getPastReceiveGoods(receiveGoods));
  36. map.put("data", pageInfo);
  37. map.put("msg", "200");
  38. }catch (Exception e){
  39. e.printStackTrace();
  40. map.put("msg", "500");
  41. map.put("errMsg", "服务器请求异常,请稍后再试");
  42. }
  43. return map;
  44. }
  45. @Override
  46. @Transactional(rollbackFor = Exception.class)
  47. public Map<String, Object> addReceiveGoods( List<Map<String,Object>> jsonData) {
  48. Map<String, Object> map = new HashMap<>();
  49. try{
  50. List<ReceiveGoods> receiveGoodsList = new LinkedList<ReceiveGoods>();
  51. //List<Map> jsonList = jsonData.toJavaList(Map.class);
  52. for(Map<String,Object> jsonMap:jsonData) {
  53. List<Map<String, Object>> list = (List) jsonMap.get("datalist");
  54. for (Map<String, Object> element : list) {
  55. ReceiveGoods rg = new ReceiveGoods();
  56. rg.setType("0");
  57. //父表信息
  58. rg.setOrderNumber((String)jsonMap.get("poId"));
  59. rg.setOrderCode((String) jsonMap.get("poNo"));
  60. rg.setCompanyNumber((String) jsonMap.get("companyNo"));
  61. rg.setSupplierId((String) jsonMap.get("supplierNo"));
  62. rg.setArrivalTime((String) jsonMap.get("poDate"));
  63. rg.setOrderType((String) jsonMap.get("poType"));
  64. rg.setSourceType((String) jsonMap.get("sourceType"));
  65. rg.setMoveType((String) jsonMap.get("moveType"));
  66. //子表
  67. rg.setEntryNumber((String) element.get("entryNumber"));
  68. rg.setMaterialId((String) element.get("materialId"));
  69. rg.setWbs((String) element.get("WBS"));
  70. rg.setMeasurementId((String) element.get("measUnitId"));
  71. rg.setPurchaseNum(element.get("purchaseCount").toString().split("\\.")[0]);
  72. rg.setArrivalNum((element.get("receiveCount").toString().split("\\.")[0]));
  73. rg.setQualifiedNum(element.get("curOkCount").toString().split("\\.")[0]);
  74. rg.setDisqualificationNum(element.get("curNgCount").toString().split("\\.")[0]);
  75. receiveGoodsList.add(rg);
  76. }
  77. for (ReceiveGoods receiveGoods : receiveGoodsList) {
  78. receiveGoods.setType("0");
  79. //存在一个采购单发送多次的情况 如果是一个采购单多次传输 则改变原数据的数量
  80. ReceiveGoods receiveGoods1 = new ReceiveGoods().setOrderCode(receiveGoods.getOrderCode()).setMaterialId(receiveGoods.getMaterialId());
  81. List<ReceiveGoods> listRepeat = receiveGoodsMapper.getReceiveGoods(receiveGoods1);
  82. if (listRepeat.size() != 0) {
  83. receiveGoods.setArrivalNum(String.valueOf(Integer.parseInt(listRepeat.get(0).getArrivalNum()) + Integer.parseInt(receiveGoods.getArrivalNum())));
  84. receiveGoodsMapper.updateReceiveGoods(receiveGoods);
  85. } else {
  86. if (receiveGoodsMapper.getReceiveGoodsf(receiveGoods1) == 0) {
  87. receiveGoodsMapper.addReceiveGoodsf(receiveGoods);
  88. }
  89. receiveGoodsMapper.addReceiveGoods(receiveGoods);
  90. }
  91. receiveGoodsMapper.updatePurchaseType(receiveGoods);
  92. //采购单日志
  93. receiveGoodsMapper.addReceiveGoodsLog(receiveGoods);
  94. }
  95. }
  96. map.put("status", "0000");
  97. map.put("msg","成功");
  98. } catch (Exception e) {
  99. e.printStackTrace();
  100. map.put("status", "0009");
  101. map.put("msg", "服务器请求异常,请稍后再试");
  102. }
  103. return map;
  104. }
  105. @Override
  106. @Transactional(rollbackFor = Exception.class)
  107. public Map<String, Object> addReceiveGoodsConfirm(ReceiveGoods receiveGoods) {
  108. Map<String, Object> map = new HashMap<>();
  109. try{
  110. receiveGoods.setType("1");
  111. receiveGoodsMapper.updateReceiveGoods(receiveGoods);
  112. map.put("msg", "200");
  113. } catch (Exception e) {
  114. e.printStackTrace();
  115. map.put("msg", "500");
  116. map.put("errMsg", "服务器请求异常,请稍后再试");
  117. }
  118. return map;
  119. }
  120. @Override
  121. public Map<String, Object> addPurchase(List<Map<String, Object>> jsonData) {
  122. Map<String, Object> map = new HashMap<>();
  123. try{
  124. receiveGoodsMapper.addPurchase(jsonData);
  125. map.put("status", "0000");
  126. map.put("msg","成功");
  127. } catch (Exception e) {
  128. e.printStackTrace();
  129. map.put("status", "0009");
  130. map.put("msg", "服务器请求异常,请稍后再试");
  131. }
  132. return map;
  133. }
  134. }