AmstruckInwardRequirementServiceImpl.java 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. package com.steerinfo.dil.service.impl;
  2. import com.steerinfo.dil.mapper.AmstruckInwardRequirementMapper;
  3. import com.steerinfo.dil.mapper.AmstruckRequirementMaterialMapper;
  4. import com.steerinfo.dil.model.AmstruckInwardRequirement;
  5. import com.steerinfo.dil.model.AmstruckRequirementMaterial;
  6. import com.steerinfo.dil.service.IAmstruckInwardRequirementService;
  7. import com.steerinfo.dil.util.DataChange;
  8. import com.steerinfo.framework.mapper.IBaseMapper;
  9. import com.steerinfo.framework.service.impl.BaseServiceImpl;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.stereotype.Service;
  12. import org.springframework.transaction.annotation.Transactional;
  13. import java.math.BigDecimal;
  14. import java.util.Date;
  15. import java.util.HashMap;
  16. import java.util.List;
  17. import java.util.Map;
  18. /**
  19. * AmstruckInwardRequirement服务实现:
  20. * @author generator
  21. * @version 1.0-SNAPSHORT 2021-10-25 11:30
  22. * 类描述
  23. * 修订历史:
  24. * 日期:2021-10-25
  25. * 作者:generator
  26. * 参考:
  27. * 描述:AmstruckInwardRequirement服务实现
  28. * @see null
  29. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  30. */
  31. @Service(value = "amstruckInwardRequirementService")
  32. public class AmstruckInwardRequirementServiceImpl extends BaseServiceImpl<AmstruckInwardRequirement, BigDecimal> implements IAmstruckInwardRequirementService {
  33. @Autowired
  34. private AmstruckInwardRequirementMapper amstruckInwardRequirementMapper;
  35. @Autowired
  36. AmstruckRequirementMaterialMapper amstruckRequirementMaterialMapper;
  37. @Override
  38. protected IBaseMapper<AmstruckInwardRequirement, BigDecimal> getMapper() {
  39. return amstruckInwardRequirementMapper;
  40. }
  41. @Transactional
  42. @Override
  43. public int insert(Map<String,Object> mapValue) {
  44. Integer purchaseOrderId = (Integer) mapValue.get("purchaseOrderId");
  45. String requirementType = (String) mapValue.get("requirementType");
  46. Integer capacityTypeId = (Integer) mapValue.get("capacityTypeId");
  47. Date requirementTruckTime = new Date((Long) mapValue.get("requirementTruckTime"));
  48. Integer requirementShipperId = (Integer) mapValue.get("requirementShipperId");
  49. String requirementWorkType = (String) mapValue.get("requirementWorkType");
  50. String requirementWorkContent = (String) mapValue.get("requirementWorkContent");
  51. String requirementWorkEnvironment = (String) mapValue.get("requirementWorkEnvironment");
  52. String requirementEstimatedDuration = (String) mapValue.get("requirementEstimatedDuration");
  53. Integer requiremntUnitId = (Integer) mapValue.get("requiremntUnitId");
  54. String requirementOverlimit = (String) mapValue.get("requirementOverlimit");
  55. String materialWeight = (String) mapValue.get("materialWeight");
  56. String materialCount = (String) mapValue.get("materialNumber");
  57. AmstruckInwardRequirement amstruckInwardRequirement = new AmstruckInwardRequirement();
  58. //设置主键
  59. BigDecimal requirementId = amstruckInwardRequirementMapper.selectOtherId();
  60. amstruckInwardRequirement.setRequirementId(requirementId);
  61. DataChange dataChange=new DataChange();
  62. amstruckInwardRequirement.setRequirementNumber(dataChange.generateEightDigitsNumber("YSXQ",amstruckInwardRequirementMapper.selectOtherId().intValue()));
  63. amstruckInwardRequirement.setRequirementStatus(new BigDecimal(0));
  64. amstruckInwardRequirement.setPurchaseOrderId(new BigDecimal(purchaseOrderId));
  65. amstruckInwardRequirement.setRequirementType(requirementType);
  66. amstruckInwardRequirement.setCapacityTypeId(new BigDecimal(capacityTypeId));
  67. amstruckInwardRequirement.setRequirementTruckTime(requirementTruckTime);
  68. amstruckInwardRequirement.setRequirementWorkType(new BigDecimal(requirementWorkType));
  69. amstruckInwardRequirement.setRequirementWorkContent(requirementWorkContent);
  70. amstruckInwardRequirement.setRequirementWorkEnvironment(requirementWorkEnvironment);
  71. amstruckInwardRequirement.setRequirementEstimatedDuration(new BigDecimal(requirementEstimatedDuration));
  72. amstruckInwardRequirement.setRequiremntUnitId(new BigDecimal(requiremntUnitId));
  73. amstruckInwardRequirement.setRequirementOverlimit(requirementOverlimit);
  74. amstruckInwardRequirement.setRequirementShipperId(new BigDecimal(requirementShipperId));
  75. // 设置常规字段
  76. amstruckInwardRequirement.setInsertTime(new Date());
  77. amstruckInwardRequirement.setInsertUsername("admin");
  78. amstruckInwardRequirement.setInsertUpdateRemark("无");
  79. amstruckInwardRequirement.setDeleted(new BigDecimal(0));
  80. int result = 0;
  81. result += amstruckInwardRequirementMapper.insertSelective(amstruckInwardRequirement);
  82. // 物资中间表
  83. BigDecimal materialId = amstruckInwardRequirementMapper.getMaterialId(new BigDecimal(purchaseOrderId));
  84. AmstruckRequirementMaterial amstruckRequirementMaterial = new AmstruckRequirementMaterial();
  85. BigDecimal requirementMaterialId = amstruckRequirementMaterialMapper.selectRequirementMaterialId();
  86. amstruckRequirementMaterial.setRequirementMaterialId(requirementMaterialId);
  87. amstruckRequirementMaterial.setRequirementId(requirementId);
  88. amstruckRequirementMaterial.setMaterialCount(new BigDecimal(materialCount));
  89. amstruckRequirementMaterial.setMaterialWeight(new BigDecimal(materialWeight));
  90. amstruckRequirementMaterial.setMaterialId(materialId);
  91. amstruckRequirementMaterial.setInsertTime(new Date());
  92. amstruckRequirementMaterial.setInsertUsername("admin");
  93. amstruckRequirementMaterial.setInsertUpdateRemark("无");
  94. amstruckRequirementMaterial.setUpdateTime(new Date());
  95. amstruckRequirementMaterial.setUpdateUsername("admin");
  96. result += amstruckRequirementMaterialMapper.insertSelective(amstruckRequirementMaterial);
  97. return result;
  98. }
  99. /**
  100. * 查询用车需求
  101. * @param mapValue
  102. * @return
  103. */
  104. @Override
  105. public List<Map<String, Object>> getTruckRequirementList(Map<String, Object> mapValue) {
  106. List<Map<String, Object>> mapList;
  107. if (((Integer) mapValue.get("requirementStatus")) == 2) {
  108. mapList = amstruckInwardRequirementMapper.getFinishTruckRequirementList(mapValue);
  109. }
  110. else {
  111. mapList = amstruckInwardRequirementMapper.getTruckRequirementList(mapValue);
  112. }
  113. return mapList;
  114. }
  115. /**
  116. * 删除用车需求
  117. * @param requirementId
  118. * @return
  119. */
  120. @Override
  121. public int deleteTruckRequirement(BigDecimal requirementId) {
  122. AmstruckInwardRequirement amstruckInwardRequirement = amstruckInwardRequirementMapper.selectByPrimaryKey(requirementId);
  123. amstruckInwardRequirement.setDeleted(new BigDecimal(1));
  124. int result = amstruckInwardRequirementMapper.updateByPrimaryKeySelective(amstruckInwardRequirement);
  125. return result;
  126. }
  127. /**
  128. * 修改用车需求
  129. * @param amstruckInwardRequirement
  130. * @return
  131. */
  132. @Override
  133. public int updateTruckRequirement(AmstruckInwardRequirement amstruckInwardRequirement) {
  134. int result = amstruckInwardRequirementMapper.updateByPrimaryKeySelective(amstruckInwardRequirement);
  135. return result;
  136. }
  137. /**
  138. * 查询修改渲染
  139. * @param requirementId
  140. * @return
  141. */
  142. @Override
  143. public List<Map<String, Object>> selectRequirement(Integer requirementId) {
  144. return amstruckInwardRequirementMapper.selectRequirement(new BigDecimal(requirementId));
  145. }
  146. /**
  147. * 下发需求
  148. * @param requirementIds
  149. * @return
  150. */
  151. @Override
  152. public int downRequirement(List<Map<String,Object>> requirementIds) {
  153. int result = 0;
  154. for (Map<String,Object> map : requirementIds) {
  155. Integer requirementId = (Integer) map.get("requirementId");
  156. AmstruckInwardRequirement amstruckInwardRequirement = amstruckInwardRequirementMapper.selectByPrimaryKey(new BigDecimal(requirementId));
  157. amstruckInwardRequirement.setRequirementStatus(new BigDecimal(1));
  158. result += amstruckInwardRequirementMapper.updateByPrimaryKeySelective(amstruckInwardRequirement);
  159. }
  160. return result;
  161. }
  162. /**
  163. * 接收需求
  164. * @param requirementId
  165. * @return
  166. */
  167. @Override
  168. public int receiveRequirement(Integer requirementId) {
  169. AmstruckInwardRequirement amstruckInwardRequirement = amstruckInwardRequirementMapper.selectByPrimaryKey(new BigDecimal(requirementId));
  170. amstruckInwardRequirement.setRequirementStatus(new BigDecimal(2));
  171. amstruckInwardRequirement.setUpdateTime(new Date());
  172. amstruckInwardRequirement.setUpdateUsername("admin");
  173. int result = amstruckInwardRequirementMapper.updateByPrimaryKeySelective(amstruckInwardRequirement);
  174. return result;
  175. }
  176. /**
  177. * 批次信息
  178. * @param mapValue
  179. * @return
  180. */
  181. @Override
  182. public List<Map<String, Object>> getPurchaseIdByBatch(Map<String, Object> mapValue) {
  183. List<Map<String, Object>> mapList = amstruckInwardRequirementMapper.getPurchaseIdByBatch(mapValue);
  184. // for (Map<String,Object> map : mapList) {
  185. // BigDecimal purchaseOrderId = (BigDecimal) map.get("purchaseOrderId");
  186. // Map<String,Object> purchaseMap = new HashMap<>();
  187. // purchaseMap.put("purchaseOrderId",purchaseOrderId);
  188. // List<AmstruckInwardRequirement> amstruckInwardRequirements = amstruckInwardRequirementMapper.selectByParameters(purchaseMap);
  189. // if (amstruckInwardRequirements.size() == 0 || amstruckInwardRequirements == null) {
  190. // }
  191. // else {
  192. // mapList.remove(map);
  193. // }
  194. // }
  195. return mapList;
  196. }
  197. /**
  198. * 车型下拉
  199. * @return
  200. */
  201. @Override
  202. public List<Map<String, Object>> getCapacityType() {
  203. return amstruckInwardRequirementMapper.getCapacityType();
  204. }
  205. /**
  206. * 用车单位下拉
  207. * @return
  208. */
  209. @Override
  210. public List<Map<String, Object>> getShipperUser() {
  211. return amstruckInwardRequirementMapper.getShipperUser();
  212. }
  213. /**
  214. * 查询所有仓库
  215. * @param mapValue
  216. * @return
  217. */
  218. @Override
  219. public List<Map<String, Object>> getWareHouse(Map<String, Object> mapValue) {
  220. return amstruckInwardRequirementMapper.getWareHouse(mapValue);
  221. }
  222. }