AmsSalePlanServiceImpl.java 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. package com.steerinfo.dil.service.impl;
  2. import com.steerinfo.dil.mapper.AmsSalePlanMapper;
  3. import com.steerinfo.dil.mapper.AmsSalePlanMaterialMapper;
  4. import com.steerinfo.dil.model.AmsSalePlan;
  5. import com.steerinfo.dil.model.AmsSalePlanMaterial;
  6. import com.steerinfo.dil.service.IAmsSalePlanService;
  7. import org.springframework.beans.BeanUtils;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Service;
  10. import java.math.BigDecimal;
  11. import java.text.ParseException;
  12. import java.text.SimpleDateFormat;
  13. import java.util.Date;
  14. import java.util.List;
  15. import java.util.Map;
  16. /**
  17. * AmsSalePlan服务实现:
  18. * @author generator
  19. * @version 1.0-SNAPSHORT 2021-09-06 07:10
  20. * 类描述
  21. * 修订历史:
  22. * 日期:2021-09-06
  23. * 作者:generator
  24. * 参考:
  25. * 描述:AmsSalePlan服务实现
  26. * @see null
  27. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  28. */
  29. @Service(value = "amsSalePlanService")
  30. public class AmsSalePlanServiceImpl implements IAmsSalePlanService {
  31. @Autowired
  32. private AmsSalePlanMapper amsSalePlanMapper;
  33. @Autowired
  34. private AmsSalePlanMaterialMapper amsSalePlanMaterialMapper;
  35. @Override
  36. public int deleteAmsSalePlan(BigDecimal planId) {
  37. AmsSalePlan amsSalePlan = amsSalePlanMapper.selectByPrimaryKey(planId);
  38. amsSalePlan.setDeleted(new BigDecimal(1));
  39. return amsSalePlanMapper.updateByPrimaryKey(amsSalePlan);
  40. }
  41. /**
  42. * 查询所有的钢材物资
  43. * @param map
  44. * @return
  45. */
  46. @Override
  47. public List<Map<String, Object>> getAllSteelMaterialMes(Map<String, Object> map) {
  48. return amsSalePlanMapper.getAllSteelMaterialMes(map);
  49. }
  50. @Override
  51. public List<Map<String, Object>> getSalePlanInfo(Map<String, Object> map) {
  52. return amsSalePlanMapper.getSalePlanInfo(map);
  53. }
  54. @Override
  55. public int addAmsSalePlan(Map<String, Object> map) throws Exception {
  56. Map<String,Object> map1 = (Map<String, Object>) map.get("amsSalePlan");
  57. long planDate = (long) map1.get("planDate");
  58. Date planDate1 = new Date(planDate);
  59. Integer saleAreaId = (Integer) map1.get("saleAreaId");
  60. String insertUsername = (String) map1.get("insertUsername");
  61. long insertTime = (long) map1.get("insertTime");
  62. Date insertTime1 = new Date(insertTime);
  63. String insertUpdateRemark = (String) map1.get("insertUpdateRemark");
  64. AmsSalePlan amsSalePlan = new AmsSalePlan();
  65. amsSalePlan.setPlanDate(planDate1);
  66. amsSalePlan.setSaleAreaId(new BigDecimal(saleAreaId));
  67. amsSalePlan.setInsertUsername(insertUsername);
  68. amsSalePlan.setInsertTime(insertTime1);
  69. amsSalePlan.setInsertUpdateRemark(insertUpdateRemark);
  70. List<Map<String,Object>> selectionList = (List<Map<String, Object>>) map.get("selectionList");
  71. //新增销售计划
  72. long id;
  73. if(amsSalePlanMapper.selectMaxId()==null){
  74. id = 1;
  75. }else {
  76. id = amsSalePlanMapper.selectMaxId().longValue()+1;
  77. }
  78. //生成主键id
  79. amsSalePlan.setPlanId(new BigDecimal(id));
  80. //获取销售片区名
  81. BigDecimal areaId = amsSalePlan.getSaleAreaId();
  82. String areaName = amsSalePlanMapper.getAreaNameByAreaId(areaId);
  83. //获取计划日期
  84. Date planDate2 = amsSalePlan.getPlanDate();
  85. SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
  86. String DateString = simpleDateFormat1.format(planDate2);
  87. //拼接片区名和日期
  88. String PlanName = areaName + DateString;
  89. amsSalePlan.setPlanName(PlanName);
  90. amsSalePlan.setUpdateUsername("admin");
  91. amsSalePlan.setUpdateTime(new Date());
  92. amsSalePlan.setDeleted(new BigDecimal(0));
  93. //新增
  94. int i = amsSalePlanMapper.insert(amsSalePlan);
  95. if(i==1){
  96. for (Map<String, Object> stringObjectMap : selectionList) {
  97. Integer materialId = (Integer) stringObjectMap.get("materialId");
  98. Integer materialNumber = (Integer) stringObjectMap.get("orderPlanWeight");
  99. AmsSalePlanMaterial amsSalePlanMaterial =new AmsSalePlanMaterial();
  100. amsSalePlanMaterial.setSalePlanId(new BigDecimal(id));
  101. amsSalePlanMaterial.setMaterialId(new BigDecimal(materialId));
  102. amsSalePlanMaterial.setMaterialNumber(new BigDecimal(materialNumber));
  103. addAmsSalePlanMaterial(amsSalePlanMaterial);
  104. }
  105. }
  106. return i;
  107. }
  108. //新增销售计划物资信息
  109. public int addAmsSalePlanMaterial(AmsSalePlanMaterial amsSalePlanMaterial) {
  110. long id;
  111. if(amsSalePlanMaterialMapper.selectMaxId()==null){
  112. id = 1;
  113. }else {
  114. id = amsSalePlanMaterialMapper.selectMaxId().longValue()+1;
  115. }
  116. //生成主键id
  117. amsSalePlanMaterial.setPlanMaterialId(new BigDecimal(id));
  118. //常规字段
  119. amsSalePlanMaterial.setInsertUsername("admin");
  120. amsSalePlanMaterial.setInsertTime(new Date());
  121. amsSalePlanMaterial.setUpdateUsername("admin");
  122. amsSalePlanMaterial.setUpdateTime(new Date());
  123. amsSalePlanMaterial.setInsertUpdateRemark("无");
  124. return amsSalePlanMaterialMapper.insert(amsSalePlanMaterial);
  125. }
  126. @Override
  127. public List<Map<String, Object>> getMaterialName() {
  128. return amsSalePlanMapper.getMaterialName();
  129. }
  130. @Override
  131. public List<Map<String, Object>> getAreaName() {
  132. return amsSalePlanMapper.getAreaName();
  133. }
  134. @Override
  135. public List<Map<String, Object>> selectByPlanId(BigDecimal planId) {
  136. return amsSalePlanMapper.selectByPlanId(planId);
  137. }
  138. @Override
  139. public int updateAmsSalePlan(AmsSalePlan amsSalePlan) {
  140. amsSalePlan.setUpdateTime(new Date());
  141. return amsSalePlanMapper.updateByPrimaryKeySelective(amsSalePlan);
  142. }
  143. }