Quellcode durchsuchen

otd0小于95%的标红

zhouxingyu vor 3 Tagen
Ursprung
Commit
d2c7e99022

+ 28 - 8
lg-code/src/main/java/org/jeecg/modules/ProdPlan/service/impl/ProdPlanServiceImpl.java

@@ -620,25 +620,45 @@ public class ProdPlanServiceImpl extends ServiceImpl<ProdPlanMapper, ProdPlan> i
         createCell(lossrow,startColumn+12,"",dataStyle);
         createCell(lossrow,startColumn+13,"",dataStyle);
         createCell(lossrow,startColumn+14,"",dataStyle);
+
+        CellStyle noForegroundRedPercentStyle = createRedPercentStyle(workbook);
+        noForegroundRedPercentStyle.setFillForegroundColor(IndexedColors.WHITE1.getIndex());
+        noForegroundRedPercentStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
         if(totalVo.getWeek3()!=null && deliveredQuantityMap.get("W" + (currentWeek - 1))!=null) {
-            createCell(lossrow, startColumn+6, (double)totalVo.getWeek3()/ deliveredQuantityMap.get("W" + (currentWeek - 1)), percentStyle);
-            createCell(otdrow, startColumn+6, 1-(double)totalVo.getWeek3()/ deliveredQuantityMap.get("W" + (currentWeek - 1)), percentStyle);
+            Double lossCellValue = (double)totalVo.getWeek3()/ deliveredQuantityMap.get("W" + (currentWeek - 1));
+            Double otdCellValue = 1-(double)totalVo.getWeek3()/ deliveredQuantityMap.get("W" + (currentWeek - 1));
+            CellStyle limitLossStyle = lossCellValue < 0.95 ? noForegroundRedPercentStyle : percentStyle;
+            CellStyle limitOTDStyle = otdCellValue < 0.95 ? noForegroundRedPercentStyle : percentStyle;
+            createCell(lossrow, startColumn+6, lossCellValue, limitLossStyle);
+            createCell(otdrow, startColumn+6, otdCellValue, limitOTDStyle);
         }else{
 
             createCell(lossrow, startColumn+6, "", percentStyle);
             createCell(otdrow, startColumn+6, "", percentStyle);
         }
         if(totalVo.getWeek4()!=null && deliveredQuantityMap.get("W" + (currentWeek))!=null) {
-            createCell(lossrow, startColumn+7, (double)totalVo.getWeek4()/ deliveredQuantityMap.get("W" + (currentWeek)), percentStyle);
-            createCell(otdrow, startColumn+7, 1-(double)totalVo.getWeek4()/ deliveredQuantityMap.get("W" + (currentWeek)), percentStyle);
+            Double lossCellValue = (double)totalVo.getWeek4()/ deliveredQuantityMap.get("W" + (currentWeek));
+            Double otdCellValue = 1-(double)totalVo.getWeek4()/ deliveredQuantityMap.get("W" + (currentWeek));
+            CellStyle limitLossStyle = lossCellValue < 0.95 ? noForegroundRedPercentStyle : percentStyle;
+            CellStyle limitOTDStyle = otdCellValue < 0.95 ? noForegroundRedPercentStyle : percentStyle;
+            createCell(lossrow, startColumn+7, lossCellValue, limitLossStyle);
+            createCell(otdrow, startColumn+7, otdCellValue, limitOTDStyle);
         }
         if(totalVo.getWeek5()!=null && deliveredQuantityMap.get("W" + (currentWeek+1))!=null) {
-            createCell(lossrow, startColumn+8, (double)totalVo.getWeek5()/ deliveredQuantityMap.get("W" + (currentWeek+1)), percentStyle);
-            createCell(otdrow, startColumn+8, 1-(double)totalVo.getWeek5()/ deliveredQuantityMap.get("W" + (currentWeek+1)), percentStyle);
+            Double lossCellValue = (double)totalVo.getWeek5()/ deliveredQuantityMap.get("W" + (currentWeek+1));
+            Double otdCellValue = 1-(double)totalVo.getWeek5()/ deliveredQuantityMap.get("W" + (currentWeek+1));
+            CellStyle limitLossStyle = lossCellValue < 0.95 ? noForegroundRedPercentStyle : percentStyle;
+            CellStyle limitOTDStyle = otdCellValue < 0.95 ? noForegroundRedPercentStyle : percentStyle;
+            createCell(lossrow, startColumn+8, lossCellValue, limitLossStyle);
+            createCell(otdrow, startColumn+8, otdCellValue, limitOTDStyle);
         }
         if(totalVo.getWeek6()!=null && deliveredQuantityMap.get("W" + (currentWeek+2))!=null) {
-            createCell(lossrow, startColumn+9, (double)totalVo.getWeek6()/ deliveredQuantityMap.get("W" + (currentWeek+2)), percentStyle);
-            createCell(otdrow, startColumn+9, 1-(double)totalVo.getWeek6()/ deliveredQuantityMap.get("W" + (currentWeek+2)), percentStyle);
+            Double lossCellValue = (double)totalVo.getWeek6()/ deliveredQuantityMap.get("W" + (currentWeek+2));
+            Double otdCellValue = 1-(double)totalVo.getWeek6()/ deliveredQuantityMap.get("W" + (currentWeek+2));
+            CellStyle limitLossStyle = lossCellValue < 0.95 ? noForegroundRedPercentStyle : percentStyle;
+            CellStyle limitOTDStyle = otdCellValue < 0.95 ? noForegroundRedPercentStyle : percentStyle;
+            createCell(lossrow, startColumn+9, lossCellValue, limitLossStyle);
+            createCell(otdrow, startColumn+9, otdCellValue, limitOTDStyle);
         }
 
         // 第二部分:产品需求数据