Browse Source

Merge branch 'master' of http://123.57.213.14:3001/zgzt/dosb-java

guoqiang 1 month ago
parent
commit
27865b5cf7

+ 90 - 0
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/billetOriginalProductRecord/controller/BilletOriginalProductRecordController.java

@@ -970,8 +970,28 @@ public class BilletOriginalProductRecordController extends JeecgController<Bille
 		 double totalWeight = calculateTotalWeight(directRollingJson, hotChargeJson, stackingJson);
 		 double totalWeight = calculateTotalWeight(directRollingJson, hotChargeJson, stackingJson);
 		 billetOriginalInfo.setBlankOutputs(totalWeight);
 		 billetOriginalInfo.setBlankOutputs(totalWeight);
 
 
+		 String brandNum = String.format("billet:basic:info:brand:num:%s", ccmNo); // 牌号
+		 String brandNumStr = !oConvertUtils.getString(redisTemplate.opsForValue().get(brandNum)).isEmpty() ? oConvertUtils.getString(redisTemplate.opsForValue().get(brandNum)) : "";
+		 billetOriginalInfo.setBrandNum(brandNumStr);
+
 		 billetOriginalInfo.setShift(shift);
 		 billetOriginalInfo.setShift(shift);
 		 billetOriginalInfo.setShiftGroup(shiftGroup);
 		 billetOriginalInfo.setShiftGroup(shiftGroup);
+
+		 // 遍历billetOriginalProductRecordList,获取BilletOriginalProductRecord中的三个json字段, hotChargeLength、stackLength、rollClubOneDetails,对所有定尺进行统计,统计出定尺、和对应的数量
+		 billetOriginalProductRecordList.forEach(y ->{
+			 Map<String, Integer> lengthCountMap = new HashMap<>();
+			 // 处理热装所有定尺字段
+			 processHotChargeLength(y.getHotChargeLength(), lengthCountMap);
+
+			 // 处理堆垛所有定尺字段
+			 processStackLength(y.getStackLength(), lengthCountMap);
+
+			 // 处理棒一所有定尺字段
+			 processRollClubOneDetails(y.getRollClubOneDetails(), lengthCountMap);
+
+			 y.setLengthDetails(JSON.toJSONString(lengthCountMap));
+		 });
+
 		 billetOriginalInfo.setBilletOriginalProductRecordList(billetOriginalProductRecordList);
 		 billetOriginalInfo.setBilletOriginalProductRecordList(billetOriginalProductRecordList);
 		 billetOriginalInfo.setTotalInfo(billetOriginalProductRecordList.stream().filter(x -> x.getAmount() != null)
 		 billetOriginalInfo.setTotalInfo(billetOriginalProductRecordList.stream().filter(x -> x.getAmount() != null)
 				 .mapToInt(BilletOriginalProductRecord::getAmount)
 				 .mapToInt(BilletOriginalProductRecord::getAmount)
@@ -1220,6 +1240,76 @@ public class BilletOriginalProductRecordController extends JeecgController<Bille
 				 .setScale(4, RoundingMode.HALF_UP);
 				 .setScale(4, RoundingMode.HALF_UP);
 	 }
 	 }
 
 
+	 /**
+	  * 处理hotChargeLength字段,合并相同定尺
+	  */
+	 private void processHotChargeLength(String jsonStr, Map<String, Integer> lengthCountMap) {
+		 if (oConvertUtils.isNotEmpty(jsonStr)) {
+			 try {
+				 JSONArray jsonArray = JSON.parseArray(jsonStr);
+				 for (int i = 0; i < jsonArray.size(); i++) {
+					 JSONObject item = jsonArray.getJSONObject(i);
+					 String length = item.getString("hotChargeLength");
+					 Integer count = item.getInteger("totalCount");
+
+					 if (length != null && count != null) {
+						 // 使用merge方法自动合并相同定尺
+						 lengthCountMap.merge(length, count, Integer::sum);
+					 }
+				 }
+			 } catch (Exception e) {
+				 log.error("解析hotChargeLength失败: {}", jsonStr, e);
+			 }
+		 }
+	 }
+
+	 /**
+	  * 处理stackLength字段,合并相同定尺
+	  */
+	 private void processStackLength(String jsonStr, Map<String, Integer> lengthCountMap) {
+		 if (oConvertUtils.isNotEmpty(jsonStr)) {
+			 try {
+				 JSONArray jsonArray = JSON.parseArray(jsonStr);
+				 for (int i = 0; i < jsonArray.size(); i++) {
+					 JSONObject item = jsonArray.getJSONObject(i);
+					 String length = item.getString("stackingLength");
+					 Integer count = item.getInteger("stackingCount");
+
+					 if (length != null && count != null) {
+						 // 使用merge方法自动合并相同定尺
+						 lengthCountMap.merge(length, count, Integer::sum);
+					 }
+				 }
+			 } catch (Exception e) {
+				 log.error("解析stackLength失败: {}", jsonStr, e);
+			 }
+		 }
+	 }
+
+	 /**
+	  * 处理rollClubOneDetails字段,合并相同定尺
+	  */
+	 private void processRollClubOneDetails(String jsonStr, Map<String, Integer> lengthCountMap) {
+		 if (oConvertUtils.isNotEmpty(jsonStr)) {
+			 try {
+				 JSONObject jsonObj = JSON.parseObject(jsonStr);
+				 JSONObject lengthGroupCount = jsonObj.getJSONObject("lengthGroupCount");
+
+				 if (lengthGroupCount != null) {
+					 for (Map.Entry<String, Object> entry : lengthGroupCount.entrySet()) {
+						 String length = entry.getKey();
+						 Integer count = Integer.valueOf(entry.getValue().toString());
+
+						 // 使用merge方法自动合并相同定尺
+						 lengthCountMap.merge(length, count, Integer::sum);
+					 }
+				 }
+			 } catch (Exception e) {
+				 log.error("解析rollClubOneDetails失败: {}", jsonStr, e);
+			 }
+		 }
+	 }
+
 	 /**
 	 /**
 	  * 棒一统计明细查询
 	  * 棒一统计明细查询
 	  * @param ccmNo
 	  * @param ccmNo

+ 7 - 3
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/billetOriginalProductRecord/vo/BilletOriginalInfo.java

@@ -24,8 +24,12 @@ public class BilletOriginalInfo {
     @ApiModelProperty(value = "总重量")
     @ApiModelProperty(value = "总重量")
     private double blankOutputs;
     private double blankOutputs;
 
 
-    /**班组*/
-    private String shiftGroup;
-    /**班别*/
+    @ApiModelProperty(value = "班别")
     private String shift;
     private String shift;
+
+    @ApiModelProperty(value = "班组")
+    private String shiftGroup;
+
+    @ApiModelProperty(value = "牌号")
+    private String brandNum;
 }
 }

+ 2 - 2
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/rollClubOne/controller/RollClubOneController.java

@@ -211,8 +211,8 @@ public class RollClubOneController {
 	}
 	}
 
 
 
 
-	@ApiOperation(value = "导出储运中心车次信息", notes = "导出储运中心车次信息")
-	@PostMapping("/exportOneXls")
+	@ApiOperation(value = "棒一工作台导出", notes = "棒一工作台导出")
+	@GetMapping("/exportOneXls")
 	public void exportOneXls(HttpServletResponse response, RollClubOneQueryDTO queryDTO) throws IOException {
 	public void exportOneXls(HttpServletResponse response, RollClubOneQueryDTO queryDTO) throws IOException {
 
 
 		List<RollClubOneVO> rollClubOneVOS = rollClubOneService.rollClubOneList(queryDTO);
 		List<RollClubOneVO> rollClubOneVOS = rollClubOneService.rollClubOneList(queryDTO);

+ 1 - 1
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/rollClubThree/controller/RollClubThreeDetailsController.java

@@ -234,7 +234,7 @@ public class RollClubThreeDetailsController extends JeecgController<RollClubThre
      * @param response
      * @param response
      * @param storageBillPrint
      * @param storageBillPrint
      */
      */
-    @RequestMapping(value = "/exportThreeXls")
+    @GetMapping(value = "/exportThreeXls")
     public void exportThreeXls(HttpServletResponse response, StorageBillPrint storageBillPrint) {
     public void exportThreeXls(HttpServletResponse response, StorageBillPrint storageBillPrint) {
         try {
         try {
             QueryWrapper<StorageBillPrint> queryWrapper = new QueryWrapper<>();
             QueryWrapper<StorageBillPrint> queryWrapper = new QueryWrapper<>();

+ 1 - 1
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/rollOutShipp/controller/RollOutShippDetailsController.java

@@ -229,7 +229,7 @@ public class RollOutShippDetailsController extends JeecgController<RollOutShippD
 	 * @param response
 	 * @param response
 	 * @param storageBillPrint
 	 * @param storageBillPrint
 	 */
 	 */
-	@RequestMapping(value = "/exportOutXls")
+	@GetMapping(value = "/exportOutXls")
 	public void exportOutXls(HttpServletResponse response, StorageBillPrint storageBillPrint) {
 	public void exportOutXls(HttpServletResponse response, StorageBillPrint storageBillPrint) {
 		try {
 		try {
 			QueryWrapper<StorageBillPrint> queryWrapper = new QueryWrapper<>();
 			QueryWrapper<StorageBillPrint> queryWrapper = new QueryWrapper<>();