AmsRailOffsetDayplanServiceImpl.java 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  1. package com.steerinfo.dil.service.impl;
  2. import com.steerinfo.dil.mapper.AmsRailOffsetDayplanMapper;
  3. import com.steerinfo.dil.mapper.AmsRailOffsetMaterialMapper;
  4. import com.steerinfo.dil.model.AmsRailOffsetDayplan;
  5. import com.steerinfo.dil.model.AmsRailOffsetMaterial;
  6. import com.steerinfo.dil.service.IAmsRailOffsetDayplanService;
  7. import com.steerinfo.dil.util.DataChange;
  8. import com.steerinfo.framework.mapper.IBaseMapper;
  9. import com.steerinfo.framework.service.impl.BaseServiceImpl;
  10. import io.swagger.models.auth.In;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.cglib.core.Local;
  13. import org.springframework.stereotype.Service;
  14. import java.math.BigDecimal;
  15. import java.time.LocalDate;
  16. import java.util.Date;
  17. import java.util.List;
  18. import java.util.Map;
  19. /**
  20. * AmsRailOffsetDayplan服务实现:
  21. * @author generator
  22. * @version 1.0-SNAPSHORT 2021-10-16 04:17
  23. * 类描述
  24. * 修订历史:
  25. * 日期:2021-10-16
  26. * 作者:generator
  27. * 参考:
  28. * 描述:AmsRailOffsetDayplan服务实现
  29. * @see null
  30. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  31. */
  32. @Service(value = "amsRailOffsetDayplanService")
  33. public class AmsRailOffsetDayplanServiceImpl extends BaseServiceImpl<AmsRailOffsetDayplan, BigDecimal> implements IAmsRailOffsetDayplanService {
  34. @Autowired
  35. private AmsRailOffsetDayplanMapper amsRailOffsetDayplanMapper;
  36. @Autowired
  37. private AmsRailOffsetMaterialMapper amsRailOffsetMaterialMapper;
  38. @Override
  39. protected IBaseMapper<AmsRailOffsetDayplan, BigDecimal> getMapper() {
  40. return amsRailOffsetDayplanMapper;
  41. }
  42. /**
  43. * 查询最大id
  44. * @return
  45. */
  46. @Override
  47. public BigDecimal selectMaxId() {
  48. return amsRailOffsetDayplanMapper.selectMaxId();
  49. }
  50. /**
  51. * 展示钢材发往异地库计划
  52. * @param mapValue
  53. * @return
  54. */
  55. public List<Map<String, Object>> getRailOffsetDayplan(Map<String, Object> mapValue) {
  56. return amsRailOffsetDayplanMapper.getRailOffsetDayplan(mapValue);
  57. }
  58. /**
  59. * 新增发运钢材到异地库计划
  60. * @param mapValue
  61. * @return
  62. */
  63. @Override
  64. public int insert(Map<String,Object> mapValue) {
  65. BigDecimal dayPlanId = selectMaxId();
  66. AmsRailOffsetDayplan amsRailOffsetDayplan = new AmsRailOffsetDayplan();
  67. Date dayPlanDate = new Date((Long) mapValue.get("dayPlanDate"));
  68. Integer shipperId = (Integer) mapValue.get("shipperId");
  69. Date dayPlanDeliveryDate = new Date((Long) mapValue.get("dayPlanDeliveryDate"));
  70. String dayPlanOwnCarsAmount = (String) mapValue.get("dayPlanOwnCarsAmount");
  71. Integer dayPlanToTheStationId = (Integer) mapValue.get("dayPlanToTheStationId");
  72. String dayPlanWagonNumber = (String) mapValue.get("dayPlanWagonNumber");
  73. String dayPlanConsigneeName = (String) mapValue.get("dayPlanConsigneeName");
  74. String dayPlanConsigneeTel = (String) mapValue.get("dayPlanConsigneeTel");
  75. Integer unitId = (Integer) mapValue.get("unitId");
  76. // Integer dayPlanSendStationId = (Integer) mapValue.get("dayPlanSendStationId");
  77. // DataChange dataChange=new DataChange();
  78. LocalDate now = LocalDate.now();
  79. //获取计划数量
  80. String count=dayPlanId+"";
  81. //用当前时间和需求数量组成流水号
  82. String number="JH"+ now.getYear()+now.getMonthValue()+"-"+count;
  83. amsRailOffsetDayplan.setDayplanNo(number);
  84. //设置计划状态为未下发
  85. amsRailOffsetDayplan.setDayplanId(dayPlanId);
  86. amsRailOffsetDayplan.setDayplanDate(dayPlanDate);
  87. amsRailOffsetDayplan.setShipperId(new BigDecimal(shipperId));
  88. amsRailOffsetDayplan.setDayplanDeliveryDate(dayPlanDeliveryDate);
  89. amsRailOffsetDayplan.setDayplanOwnCarsAmout(new BigDecimal(dayPlanOwnCarsAmount));
  90. amsRailOffsetDayplan.setDayplanToTheStationId(new BigDecimal(dayPlanToTheStationId));
  91. amsRailOffsetDayplan.setDayplanWagonNumber(new BigDecimal(dayPlanWagonNumber));
  92. amsRailOffsetDayplan.setDayplanConsigneeName(dayPlanConsigneeName);
  93. amsRailOffsetDayplan.setDayplanConsigneeTel(dayPlanConsigneeTel);
  94. amsRailOffsetDayplan.setReceivingUnitId(new BigDecimal(unitId));
  95. // amsRailOffsetDayplan.setDayplanSendStationId(new BigDecimal(dayPlanSendStationId));
  96. amsRailOffsetDayplan.setDayplanReceiveStatus(new BigDecimal(0));
  97. amsRailOffsetDayplan.setDeleted(new BigDecimal(0));
  98. //遍历物资列表添加所有发运计划物资中间表
  99. List<Map<String, Object>> mapList = (List<Map<String, Object>>) mapValue.get("selectionList");
  100. for (Map<String, Object> map : mapList) {
  101. AmsRailOffsetMaterial amsRailOffsetMaterial = new AmsRailOffsetMaterial();
  102. amsRailOffsetMaterial.setOffsetMaterialId(amsRailOffsetMaterialMapper.selectMaxId());
  103. // 设置发运计划ID
  104. amsRailOffsetMaterial.setDayplanId(dayPlanId);
  105. amsRailOffsetMaterial.setMaterialId(DataChange.dataToBigDecimal(map.get("materialId")));
  106. amsRailOffsetMaterial.setOffsetMaterialNumber(DataChange.dataToBigDecimal(map.get("orderPlanWeight")));
  107. amsRailOffsetMaterial.setInsertTime(new Date());
  108. amsRailOffsetMaterial.setInsertUsername("admin");
  109. amsRailOffsetMaterialMapper.insertSelective(amsRailOffsetMaterial);
  110. }
  111. amsRailOffsetDayplan.setInsertTime(new Date());
  112. amsRailOffsetDayplan.setInsertUsername("admin");
  113. return amsRailOffsetDayplanMapper.insertSelective(amsRailOffsetDayplan);
  114. }
  115. public int update(AmsRailOffsetDayplan amsRailOffsetDayplan) {
  116. return amsRailOffsetDayplanMapper.updateByPrimaryKey(amsRailOffsetDayplan);
  117. }
  118. /**
  119. * 删除钢材发往异地库日计划
  120. * @param dayplanId
  121. * @return
  122. */
  123. @Override
  124. public int deleteTruckRailDayPlan(BigDecimal dayplanId) {
  125. AmsRailOffsetDayplan amsRailOffsetDayplan = amsRailOffsetDayplanMapper.selectByPrimaryKey(dayplanId);
  126. amsRailOffsetDayplan.setDeleted(new BigDecimal(1));
  127. int result = amsRailOffsetDayplanMapper.updateByPrimaryKeySelective(amsRailOffsetDayplan);
  128. return result;
  129. }
  130. /**
  131. * 下发钢材发往异地库日计划
  132. * @param mapList
  133. * @return
  134. */
  135. @Override
  136. public int issueRailOffsetDayplan(List<Map<String, Object>> mapList) {
  137. int result = 0;
  138. for (Map<String,Object> map : mapList) {
  139. Integer dayPlanId = (Integer) map.get("dayPlanId");
  140. AmsRailOffsetDayplan amsRailOffsetDayplan = amsRailOffsetDayplanMapper.selectByPrimaryKey(new BigDecimal(dayPlanId));
  141. amsRailOffsetDayplan.setDayplanReceiveStatus(new BigDecimal(1));
  142. amsRailOffsetDayplan.setCarrierId(new BigDecimal(9));
  143. result += amsRailOffsetDayplanMapper.updateByPrimaryKeySelective(amsRailOffsetDayplan);
  144. }
  145. return result;
  146. }
  147. /**
  148. * 通过发运计划主键查询关联所有物资信息
  149. * @param mapValue
  150. * @return
  151. */
  152. @Override
  153. public List<Map<String, Object>> getMaterialMesByDayPlanId(Map<String, Object> mapValue) {
  154. return amsRailOffsetDayplanMapper.getMaterialMesByDayPlanId(mapValue);
  155. }
  156. /**
  157. * 接收钢材发往异地库计划
  158. * @param dayplanId
  159. * @return
  160. */
  161. @Override
  162. public int receiveRailOffsetDayplan(Integer dayplanId) {
  163. AmsRailOffsetDayplan amsRailOffsetDayplan = amsRailOffsetDayplanMapper.selectByPrimaryKey(new BigDecimal(dayplanId));
  164. amsRailOffsetDayplan.setDayplanReceiveStatus(new BigDecimal(2));
  165. int result = amsRailOffsetDayplanMapper.updateByPrimaryKeySelective(amsRailOffsetDayplan);
  166. return result;
  167. }
  168. /**
  169. * 到站下拉框
  170. * @return
  171. */
  172. @Override
  173. public List<Map<String, Object>> getdayPlanToTheStationId() {
  174. return amsRailOffsetDayplanMapper.getdayPlanToTheStationId();
  175. }
  176. @Override
  177. public List<Map<String, Object>> getRailOffsetDayplanId(Map<String, Object> mapValue) {
  178. return amsRailOffsetDayplanMapper.getRailOffsetDayplanId(mapValue);
  179. }
  180. }