OmstruckOrderMaterialServiceImpl.java 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256
  1. package com.steerinfo.dil.service.impl;
  2. import com.steerinfo.dil.mapper.OmstruckOrderMaterialMapper;
  3. import com.steerinfo.dil.mapper.RmsCapacityMapper;
  4. import com.steerinfo.dil.mapper.RmsPwarehouseGridMapper;
  5. import com.steerinfo.dil.model.OmstruckOrderMaterial;
  6. import com.steerinfo.dil.model.RmsPwarehouseGrid;
  7. import com.steerinfo.dil.service.IOmstruckOrderMaterialService;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Service;
  10. import java.math.BigDecimal;
  11. import java.util.List;
  12. import java.util.Map;
  13. /**
  14. * OmstruckOrderMaterial服务实现:
  15. *
  16. * @author TXF
  17. * @version 1.0-SNAPSHORT 2021-09-03 04:55
  18. * 类描述
  19. * 修订历史:
  20. * 日期:2021-09-03
  21. * 作者:generator
  22. * 参考:
  23. * 描述:OmstruckOrderMaterial服务实现
  24. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  25. * @see null
  26. */
  27. @Service(value = "omstruckOrderMaterialService")
  28. public class OmstruckOrderMaterialServiceImpl implements IOmstruckOrderMaterialService {
  29. @Autowired
  30. private OmstruckOrderMaterialMapper omstruckOrderMaterialMapper;
  31. @Autowired
  32. RmsCapacityMapper rmsCapacityMapper;
  33. @Autowired
  34. RmsPwarehouseGridMapper rmsPwarehouseGridMapper;
  35. /**
  36. * 远程调用订单子表新增
  37. *
  38. * @param omstruckOrderMaterial
  39. * @return
  40. */
  41. @Override
  42. public int insertSelective(OmstruckOrderMaterial omstruckOrderMaterial) {
  43. return omstruckOrderMaterialMapper.insertSelective(omstruckOrderMaterial);
  44. }
  45. /**
  46. * 仓库
  47. * @return
  48. */
  49. @Override
  50. public List<Map<String, Object>> warehouseId() {
  51. return rmsCapacityMapper.warehouseId();
  52. }
  53. /**
  54. * 月台
  55. * @return
  56. */
  57. @Override
  58. public List<Map<String, Object>> platformId() {
  59. return rmsCapacityMapper.platformId();
  60. }
  61. /**
  62. * 垛位
  63. * @return
  64. */
  65. @Override
  66. public List<Map<String, Object>> stackingId() {
  67. return rmsCapacityMapper.stackingId();
  68. }
  69. /**
  70. * 主键
  71. * @return
  72. */
  73. @Override
  74. public BigDecimal gridId() {
  75. return rmsCapacityMapper.gridId();
  76. }
  77. @Override
  78. public int insertSelective(RmsPwarehouseGrid rmsPwarehouseGrid) {
  79. return rmsPwarehouseGridMapper.insertSelective(rmsPwarehouseGrid);
  80. }
  81. @Override
  82. public int insertGrid() {
  83. int count = 0;
  84. // 仓库
  85. List<Map<String, Object>> warehouseIdList = warehouseId();
  86. // 月台
  87. List<Map<String, Object>> platformIdList = platformId();
  88. // 垛位
  89. List<Map<String, Object>> stackingIdList = stackingId();
  90. // 遍历仓库
  91. for (Map<String,Object> warehouseIdMap : warehouseIdList) {
  92. BigDecimal warehouseId = (BigDecimal) warehouseIdMap.get("warehouseId");
  93. // 遍历月台
  94. for (Map<String,Object> platformIdMap : platformIdList) {
  95. BigDecimal platformId = (BigDecimal) platformIdMap.get("platformId");
  96. // 遍历垛位
  97. for (Map<String,Object> stackingIdMap : stackingIdList) {
  98. BigDecimal stackingId = (BigDecimal) stackingIdMap.get("stackingId");
  99. // 遍历层次
  100. for (int i = 1; i <= 8; i++) {
  101. // 遍历层序
  102. for (int j = 1; j <= 24; j++) {
  103. // 一棒库时
  104. if (warehouseId.intValue() == 1) {
  105. // A月台
  106. if (platformId.intValue() == 1) {
  107. // A月台的垛位
  108. if (stackingId.intValue() == 1) {
  109. RmsPwarehouseGrid rmsPwarehouseGrid = new RmsPwarehouseGrid();
  110. BigDecimal gridId = gridId();
  111. rmsPwarehouseGrid.setGridId(gridId);
  112. rmsPwarehouseGrid.setWarehouseId(warehouseId);
  113. rmsPwarehouseGrid.setStackingId(stackingId);
  114. rmsPwarehouseGrid.setGridGradationNumber(new BigDecimal(i));
  115. rmsPwarehouseGrid.setGridSequenceNumber(new BigDecimal(j));
  116. insertSelective(rmsPwarehouseGrid);
  117. count++;
  118. }
  119. }
  120. // B月台
  121. if (platformId.intValue() == 1) {
  122. // B月台的垛位: 2-8
  123. if (stackingId.intValue() >= 2 && stackingId.intValue() <= 8) {
  124. RmsPwarehouseGrid rmsPwarehouseGrid = new RmsPwarehouseGrid();
  125. BigDecimal gridId = gridId();
  126. rmsPwarehouseGrid.setGridId(gridId);
  127. rmsPwarehouseGrid.setWarehouseId(warehouseId);
  128. rmsPwarehouseGrid.setPlatformId(platformId);
  129. rmsPwarehouseGrid.setStackingId(stackingId);
  130. rmsPwarehouseGrid.setGridGradationNumber(new BigDecimal(i));
  131. rmsPwarehouseGrid.setGridSequenceNumber(new BigDecimal(j));
  132. insertSelective(rmsPwarehouseGrid);
  133. count++;
  134. }
  135. }
  136. }
  137. // 二棒库时:
  138. if (warehouseId.intValue() == 2) {
  139. // A月台
  140. if (platformId.intValue() == 3) {
  141. // A月台的垛位 : 1-3
  142. if (stackingId.intValue() >= 41 && stackingId.intValue() <= 43) {
  143. RmsPwarehouseGrid rmsPwarehouseGrid = new RmsPwarehouseGrid();
  144. BigDecimal gridId = gridId();
  145. rmsPwarehouseGrid.setGridId(gridId);
  146. rmsPwarehouseGrid.setWarehouseId(warehouseId);
  147. rmsPwarehouseGrid.setPlatformId(platformId);
  148. rmsPwarehouseGrid.setStackingId(stackingId);
  149. rmsPwarehouseGrid.setGridGradationNumber(new BigDecimal(i));
  150. rmsPwarehouseGrid.setGridSequenceNumber(new BigDecimal(j));
  151. insertSelective(rmsPwarehouseGrid);
  152. count++;
  153. }
  154. }
  155. // B月台
  156. if (platformId.intValue() == 4) {
  157. }
  158. // C月台
  159. if (platformId.intValue() == 5) {
  160. // C月台的垛位:4-18
  161. if (stackingId.intValue() >= 44 && stackingId.intValue() <= 58) {
  162. RmsPwarehouseGrid rmsPwarehouseGrid = new RmsPwarehouseGrid();
  163. BigDecimal gridId = gridId();
  164. rmsPwarehouseGrid.setGridId(gridId);
  165. rmsPwarehouseGrid.setWarehouseId(warehouseId);
  166. rmsPwarehouseGrid.setPlatformId(platformId);
  167. rmsPwarehouseGrid.setStackingId(stackingId);
  168. rmsPwarehouseGrid.setGridGradationNumber(new BigDecimal(i));
  169. rmsPwarehouseGrid.setGridSequenceNumber(new BigDecimal(j));
  170. insertSelective(rmsPwarehouseGrid);
  171. count++;
  172. }
  173. }
  174. // D月台
  175. if (platformId.intValue() == 6) {
  176. // D月台的垛位:19
  177. if (stackingId.intValue() == 59) {
  178. RmsPwarehouseGrid rmsPwarehouseGrid = new RmsPwarehouseGrid();
  179. BigDecimal gridId = gridId();
  180. rmsPwarehouseGrid.setGridId(gridId);
  181. rmsPwarehouseGrid.setWarehouseId(warehouseId);
  182. rmsPwarehouseGrid.setPlatformId(platformId);
  183. rmsPwarehouseGrid.setStackingId(stackingId);
  184. rmsPwarehouseGrid.setGridGradationNumber(new BigDecimal(i));
  185. rmsPwarehouseGrid.setGridSequenceNumber(new BigDecimal(j));
  186. insertSelective(rmsPwarehouseGrid);
  187. count++;
  188. }
  189. }
  190. }
  191. // 高线库时
  192. if (warehouseId.intValue() == 3) {
  193. // A月台
  194. if (platformId.intValue() == 7) {
  195. // RmsPwarehouseGrid rmsPwarehouseGrid = new RmsPwarehouseGrid();
  196. }
  197. }
  198. // 配送库时:
  199. if (warehouseId.intValue() == 4) {
  200. // A月台
  201. if (platformId.intValue() == 8) {
  202. // A月台的垛位:8-14 || 24-32
  203. if ((stackingId.intValue() >= 16 && stackingId.intValue() <= 22) || (stackingId.intValue() >= 32 && stackingId.intValue() <= 40)) {
  204. RmsPwarehouseGrid rmsPwarehouseGrid = new RmsPwarehouseGrid();
  205. BigDecimal gridId = gridId();
  206. rmsPwarehouseGrid.setGridId(gridId);
  207. rmsPwarehouseGrid.setWarehouseId(warehouseId);
  208. rmsPwarehouseGrid.setPlatformId(platformId);
  209. rmsPwarehouseGrid.setStackingId(stackingId);
  210. rmsPwarehouseGrid.setGridGradationNumber(new BigDecimal(i));
  211. rmsPwarehouseGrid.setGridSequenceNumber(new BigDecimal(j));
  212. insertSelective(rmsPwarehouseGrid);
  213. count++;
  214. }
  215. }
  216. // B月台
  217. if (platformId.intValue() == 9) {
  218. // B月台的垛位:1-7 || 15-23
  219. if ((stackingId.intValue() >= 9 && stackingId.intValue() <= 15) || (stackingId.intValue() >= 23 && stackingId.intValue() <= 31)) {
  220. RmsPwarehouseGrid rmsPwarehouseGrid = new RmsPwarehouseGrid();
  221. BigDecimal gridId = gridId();
  222. rmsPwarehouseGrid.setGridId(gridId);
  223. rmsPwarehouseGrid.setWarehouseId(warehouseId);
  224. rmsPwarehouseGrid.setPlatformId(platformId);
  225. rmsPwarehouseGrid.setStackingId(stackingId);
  226. rmsPwarehouseGrid.setGridGradationNumber(new BigDecimal(i));
  227. rmsPwarehouseGrid.setGridSequenceNumber(new BigDecimal(j));
  228. insertSelective(rmsPwarehouseGrid);
  229. count++;
  230. }
  231. }
  232. }
  233. }
  234. }
  235. }
  236. }
  237. }
  238. System.out.println(count);
  239. return count;
  240. }
  241. }