Browse Source

预装箱单excel导入报错提示

huxy 2 years ago
parent
commit
6575e1f0f8

+ 21 - 5
jeecg-boot-module-system/src/main/java/org/jeecg/modules/spapl/controller/SyPreAssembledPackingListController.java

@@ -17,6 +17,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
+import org.apache.commons.collections.map.HashedMap;
 import org.apache.poi.hssf.usermodel.HSSFCellStyle;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.hssf.util.HSSFColor;
@@ -1097,6 +1098,17 @@ public class SyPreAssembledPackingListController extends JeecgController<SyPreAs
             List<SyPreAssembledPackingListItem> items=new ArrayList<SyPreAssembledPackingListItem>();
             Sheet sheet=(Sheet) sheets.next();
             List<String> strs3=new ArrayList<String>();//获取尺码名称
+            List<String > list=new ArrayList<>();
+            List<Integer> nums=new ArrayList<>();
+            list.add("item NO./SKU NO./UPC NO./PACKS CODE");
+            list.add("PREACKSKU");
+            list.add("计划尺码数量");
+            list.add("净净重");
+            list.add("备注");
+            list.add("订单号");
+            list.add("尺码范围");
+            list.add("款号");
+            list.add("客户简称");
             for (int x=0;x<=sheet.getLastRowNum();x++){
                 Row row=sheet.getRow(x);//列
                 Cell cell2=row.getCell(0);
@@ -1112,22 +1124,27 @@ public class SyPreAssembledPackingListController extends JeecgController<SyPreAs
                                 sheet.getRow(0).getCell(i).getStringCellValue()+"未填值!");
                     }
                     cell.setCellType(CellType.STRING);//获取的都转换成String
+                    if(cell.getStringCellValue().length()<1&&x>0&&!nums.contains(i)){ 
+                        throw new JeecgBootException("第"+num+"页的"+"第"+(x+1)+"行的"+
+                                sheet.getRow(0).getCell(i).getStringCellValue()+"未填值!");
+                    }
                     if(x==0){
                         if((i>9&&i<row.getLastCellNum()-28)||i==row.getLastCellNum()-9){
                             strs3.add(cell.getStringCellValue());
-                            System.out.print(String.format("\033[%dm%s\033[0m", 31, cell.getStringCellValue())+"\t");//颜色
+                        }
+                        if(list.contains(cell.getStringCellValue())){
+                            nums.add(i);
+                            System.out.println("字段\t"+cell.getStringCellValue()+"\t"+i);
                         }
                     }else{
                         if((i>9&&i<row.getLastCellNum()-28)||i==row.getLastCellNum()-9){
                             strs2.add(cell.getStringCellValue());
-                            System.out.print(String.format("\033[%dm%s\033[0m", 31, cell.getStringCellValue())+"\t");//颜色
                         }else{
                             strs.add(cell.getStringCellValue());
-                            System.out.print(cell.getStringCellValue()+"\t");
                         }
                     }
                 }
-                System.out.println();
+                System.out.println("nums\t"+nums);
                 if(x>0){
                     SyPreAssembledPackingListItem item=
                             new SyPreAssembledPackingListItem(strs.toArray(new String[strs.size()]),
@@ -1141,7 +1158,6 @@ public class SyPreAssembledPackingListController extends JeecgController<SyPreAs
             mains.add(main);
             //break;
         }
-        System.out.println("\nmains\t"+mains);
         boolean bool= syPreAssembledPackingListService.add(mains);
     //    System.out.println("bool\t"+bool);
     }

+ 1 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splt/mapper/xml/syPackingListTailoringItemMapper.xml

@@ -91,6 +91,7 @@
 		pieces_box,
 		box_number,/*箱数*/
 		SUM(total) total,/*件数*/
+		SUM(plan_Quantity) planQuantity,/*件数*/
 		net_weight,
 		sum(total_net_weight) total_net_weight,/*总净重*/
 		gross_weight,

+ 1 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splt/service/impl/SyPackingListTailoringServiceImpl.java

@@ -490,6 +490,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 						SyPackingListTailoringItem item1=item;
 						BigDecimal boxNumber=boxNumber1.multiply(new BigDecimal(size.getProportion()));//获取该尺码件数
 						item1.setTotal(boxNumber);//该尺码件数
+						item1.setPlanQuantity(boxNumber);//计划装箱数量
 						item1.setActualPackingQty(boxNumber);//实际装箱数量
 						item1.setPlanQuantity(boxNumber);//计划装箱数量
 						item1.setSize(size.getSize());//获取尺码