no message
							parent
							
								
									8553b089ba
								
							
						
					
					
						commit
						030554aa7b
					
				| 
						 | 
					@ -73,6 +73,7 @@ import java.util.List;
 | 
				
			||||||
import java.util.Map;
 | 
					import java.util.Map;
 | 
				
			||||||
import java.util.regex.Matcher;
 | 
					import java.util.regex.Matcher;
 | 
				
			||||||
import java.util.regex.Pattern;
 | 
					import java.util.regex.Pattern;
 | 
				
			||||||
 | 
					import java.util.stream.Collectors;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.apache.pdfbox.pdfparser.PDFParser;
 | 
					import org.apache.pdfbox.pdfparser.PDFParser;
 | 
				
			||||||
import org.apache.pdfbox.pdmodel.PDDocument;
 | 
					import org.apache.pdfbox.pdmodel.PDDocument;
 | 
				
			||||||
| 
						 | 
					@ -87,6 +88,7 @@ import java.io.OutputStreamWriter;
 | 
				
			||||||
import java.io.FileOutputStream;
 | 
					import java.io.FileOutputStream;
 | 
				
			||||||
import java.io.FileReader; 
 | 
					import java.io.FileReader; 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
//import org.pdfbox.pdfparser.PDFParser;   
 | 
					//import org.pdfbox.pdfparser.PDFParser;   
 | 
				
			||||||
//import org.pdfbox.pdmodel.PDDocument;  
 | 
					//import org.pdfbox.pdmodel.PDDocument;  
 | 
				
			||||||
//import org.pdfbox.util.PDFTextStripper;  
 | 
					//import org.pdfbox.util.PDFTextStripper;  
 | 
				
			||||||
| 
						 | 
					@ -1545,15 +1547,11 @@ public class DefaultImportFileManager extends DefaultBaseManager implements Impo
 | 
				
			||||||
					break;
 | 
										break;
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			    String code=sheet.getCell(j++,i).getContents().trim();//工单号
 | 
								    String code=sheet.getCell(j++,i).getContents().trim();//工单号
 | 
				
			||||||
			    String orderDate1=sheet.getCell(j++,i).getContents().trim();//需求日期
 | 
								    
 | 
				
			||||||
			    String billTypeName=sheet.getCell(j++,i).getContents().trim();//单据类型
 | 
					//			    String packageQuantity=sheet.getCell(j++,i).getContents().trim();//需求行数
 | 
				
			||||||
			    String status=sheet.getCell(j++,i).getContents().trim();//状态
 | 
					//			    String BOLQuantity=sheet.getCell(j++,i).getContents().trim();//完成行数
 | 
				
			||||||
			    String packageQuantity=sheet.getCell(j++,i).getContents().trim();//需求行数
 | 
					//			    String orderQuantity=sheet.getCell(j++,i).getContents().trim();//需求数量
 | 
				
			||||||
			    String BOLQuantity=sheet.getCell(j++,i).getContents().trim();//完成行数
 | 
								    
 | 
				
			||||||
			    String orderQuantity=sheet.getCell(j++,i).getContents().trim();//需求数量
 | 
					 | 
				
			||||||
			    String allocatedQuantity=sheet.getCell(j++,i).getContents().trim();//预分配数量
 | 
					 | 
				
			||||||
			    String pickedQuantity=sheet.getCell(j++,i).getContents().trim();//拣货数量
 | 
					 | 
				
			||||||
			    String shippedQuantity=sheet.getCell(j++,i).getContents().trim();//发运数量
 | 
					 | 
				
			||||||
			    String relatedBill3=sheet.getCell(j++,i).getContents().trim();//头物料
 | 
								    String relatedBill3=sheet.getCell(j++,i).getContents().trim();//头物料
 | 
				
			||||||
			    String workerName1=sheet.getCell(j++,i).getContents().trim();//工厂
 | 
								    String workerName1=sheet.getCell(j++,i).getContents().trim();//工厂
 | 
				
			||||||
			    String printCount=sheet.getCell(j++,i).getContents().trim();//SAP状态
 | 
								    String printCount=sheet.getCell(j++,i).getContents().trim();//SAP状态
 | 
				
			||||||
| 
						 | 
					@ -1577,56 +1575,12 @@ public class DefaultImportFileManager extends DefaultBaseManager implements Impo
 | 
				
			||||||
				}else {
 | 
									}else {
 | 
				
			||||||
					pickTicket=new PickTicket();
 | 
										pickTicket=new PickTicket();
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			    pickTicket.setSourceType(sourceType);
 | 
								    
 | 
				
			||||||
			    pickTicket.setCode(code);
 | 
								    
 | 
				
			||||||
			    try {
 | 
								    
 | 
				
			||||||
			    	pickTicket.setOrderDate(sdf.parse(orderDate1));    
 | 
								   
 | 
				
			||||||
		        } catch (Exception e) {
 | 
								   
 | 
				
			||||||
		            e.printStackTrace();
 | 
								  
 | 
				
			||||||
		        }
 | 
					 | 
				
			||||||
			    for (BillType billType : billTypes) {
 | 
					 | 
				
			||||||
					if (billType.getName().equals(billTypeName)) {
 | 
					 | 
				
			||||||
						pickTicket.setBillType(billType);
 | 
					 | 
				
			||||||
						break;
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
			    if (status.equals("交单完成")) {
 | 
					 | 
				
			||||||
			    	status="JIAODAN";
 | 
					 | 
				
			||||||
				}else if (status.equals("未处理")){
 | 
					 | 
				
			||||||
					status="OPEN";
 | 
					 | 
				
			||||||
				}else if (status.equals("已完成")){
 | 
					 | 
				
			||||||
					status="CLOSE";
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
			    pickTicket.setStatus(status);
 | 
					 | 
				
			||||||
			    pickTicket.setPackageQuantity(Double.valueOf(packageQuantity));
 | 
					 | 
				
			||||||
			    pickTicket.setBOLQuantity(Double.valueOf(BOLQuantity));
 | 
					 | 
				
			||||||
			    pickTicket.setOrderQuantity(Double.valueOf(orderQuantity));
 | 
					 | 
				
			||||||
			    pickTicket.setAllocatedQuantity(Double.valueOf(allocatedQuantity));
 | 
					 | 
				
			||||||
			    pickTicket.setPickedQuantity(Double.valueOf(pickedQuantity));
 | 
					 | 
				
			||||||
			    pickTicket.setShippedQuantity(Double.valueOf(shippedQuantity));
 | 
					 | 
				
			||||||
			    pickTicket.setRelatedBill3(relatedBill3);
 | 
					 | 
				
			||||||
			    pickTicket.setWorkerName1(workerName1);
 | 
					 | 
				
			||||||
			    pickTicket.setPrintCount(Integer.valueOf(printCount));
 | 
					 | 
				
			||||||
			    pickTicket.setPriority(Integer.valueOf(priority));
 | 
					 | 
				
			||||||
			    try {
 | 
					 | 
				
			||||||
			    	pickTicket.setUpdateTime(sdfa.parse(updateTime1+" "+updateTime2));    
 | 
					 | 
				
			||||||
			    	pickTicket.getUpdateTime();
 | 
					 | 
				
			||||||
		        } catch (Exception e) {
 | 
					 | 
				
			||||||
		            e.printStackTrace();
 | 
					 | 
				
			||||||
		        }
 | 
					 | 
				
			||||||
			    pickTicket.setRelatedBill1(relatedBill1);
 | 
					 | 
				
			||||||
			    pickTicket.setRelatedBill2(relatedBill2);
 | 
					 | 
				
			||||||
			    try {
 | 
					 | 
				
			||||||
			    	pickTicket.setShipDate(sdfa.parse(shipDateStart1+" "+shipDateStart2));
 | 
					 | 
				
			||||||
		        } catch (Exception e) {
 | 
					 | 
				
			||||||
		            e.printStackTrace();
 | 
					 | 
				
			||||||
		        }
 | 
					 | 
				
			||||||
			    pickTicket.setLictrailer(lictrailer);
 | 
					 | 
				
			||||||
			    pickTicket.setLogisticsCompany(logisticsCompany);
 | 
					 | 
				
			||||||
			    pickTicket.setDriverName(driverName);
 | 
					 | 
				
			||||||
			    pickTicket.setUserName(userName);
 | 
					 | 
				
			||||||
			    pickTicket.setWarehouse(warehouse);
 | 
					 | 
				
			||||||
			    commonDao.store(pickTicket);
 | 
					 | 
				
			||||||
		    }
 | 
							    }
 | 
				
			||||||
		} catch (BiffException e) {
 | 
							} catch (BiffException e) {
 | 
				
			||||||
			// TODO Auto-generated catch block
 | 
								// TODO Auto-generated catch block
 | 
				
			||||||
| 
						 | 
					@ -1639,6 +1593,7 @@ public class DefaultImportFileManager extends DefaultBaseManager implements Impo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	@Override
 | 
						@Override
 | 
				
			||||||
	public void importOrderDetail(File file) {
 | 
						public void importOrderDetail(File file) {
 | 
				
			||||||
 | 
							List<PickTicket> pickTickets=new ArrayList<PickTicket>();
 | 
				
			||||||
		try {
 | 
							try {
 | 
				
			||||||
			Workbook workbook = Workbook.getWorkbook(file);
 | 
								Workbook workbook = Workbook.getWorkbook(file);
 | 
				
			||||||
			Sheet sheet = workbook.getSheet(0);// 得到excel第一页的内容
 | 
								Sheet sheet = workbook.getSheet(0);// 得到excel第一页的内容
 | 
				
			||||||
| 
						 | 
					@ -1647,42 +1602,74 @@ public class DefaultImportFileManager extends DefaultBaseManager implements Impo
 | 
				
			||||||
					"from BillType bt");
 | 
										"from BillType bt");
 | 
				
			||||||
			Warehouse warehouse=this.load(Warehouse.class, 1l);
 | 
								Warehouse warehouse=this.load(Warehouse.class, 1l);
 | 
				
			||||||
		    for (int i = 1; i <sheet.getRows(); i++) {
 | 
							    for (int i = 1; i <sheet.getRows(); i++) {
 | 
				
			||||||
 | 
							    	
 | 
				
			||||||
			    int j=0;
 | 
								    int j=0;
 | 
				
			||||||
			    j++;
 | 
								    String sourceType=sheet.getCell(j++,i).getContents().trim();//出库类型
 | 
				
			||||||
 | 
								    if (sourceType.length()<1) {
 | 
				
			||||||
 | 
										break;
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
			    String code=sheet.getCell(j++,i).getContents().trim();//工单号
 | 
								    String code=sheet.getCell(j++,i).getContents().trim();//工单号
 | 
				
			||||||
			    if (code.length()<1) {
 | 
								    if (code.length()<1) {
 | 
				
			||||||
					break;
 | 
										break;
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			    j++;
 | 
								    String orderDate1=sheet.getCell(j++,i).getContents().trim();//需求日期
 | 
				
			||||||
			    String SOI=sheet.getCell(j++,i).getContents().trim();//优先级
 | 
								    String SOI=sheet.getCell(j++,i).getContents().trim();//优先级
 | 
				
			||||||
			    j++;
 | 
								    String billTypeName=sheet.getCell(j++,i).getContents().trim();//单据类型
 | 
				
			||||||
			    j++;
 | 
								    String status=PickTicketStatus.OPEN;//状态
 | 
				
			||||||
			    String itemCode=sheet.getCell(j++,i).getContents().trim();//料号
 | 
								    String itemCode=sheet.getCell(j++,i).getContents().trim();//料号
 | 
				
			||||||
			    j++;
 | 
								    j++;
 | 
				
			||||||
			    j++;
 | 
								    j++;
 | 
				
			||||||
			    String orderQuantity=sheet.getCell(j++,i).getContents().trim();//需求数量
 | 
								    String orderQuantity=sheet.getCell(j++,i).getContents().trim();//需求数量
 | 
				
			||||||
			    String allocatedQuantity=sheet.getCell(j++,i).getContents().trim();//预分配数量
 | 
					 | 
				
			||||||
			    String pickedQuantity=sheet.getCell(j++,i).getContents().trim();//拣货数量
 | 
					 | 
				
			||||||
			    String lotPropC2=sheet.getCell(j++,i).getContents().trim();//LOC
 | 
								    String lotPropC2=sheet.getCell(j++,i).getContents().trim();//LOC
 | 
				
			||||||
			    String lotPropC9=sheet.getCell(j++,i).getContents().trim();//工厂
 | 
								    String lotPropC9=sheet.getCell(j++,i).getContents().trim();//工厂
 | 
				
			||||||
			    j++;
 | 
								    String relatedBill2=sheet.getCell(j++,i).getContents().trim();//相关单号
 | 
				
			||||||
			    String lineNumber=sheet.getCell(j++,i).getContents().trim();//项号
 | 
								    String lineNumber=sheet.getCell(j++,i).getContents().trim();//项号
 | 
				
			||||||
			    String strBill2=sheet.getCell(j++,i).getContents().trim();//更新标识
 | 
								    String packageQuantity=sheet.getCell(j++,i).getContents().trim();//需求行数
 | 
				
			||||||
			    String updateTime1 = sheet.getCell(j++,i).getContents().trim();//创建日期
 | 
					 | 
				
			||||||
			    j++;
 | 
					 | 
				
			||||||
			    j++;
 | 
					 | 
				
			||||||
			    j++;
 | 
					 | 
				
			||||||
			    String strBill12=sheet.getCell(j++,i).getContents().trim();//机台号
 | 
								    String strBill12=sheet.getCell(j++,i).getContents().trim();//机台号
 | 
				
			||||||
			    j++;
 | 
								    String relatedBill3=sheet.getCell(j++,i).getContents().trim();//头物料
 | 
				
			||||||
			    j++;
 | 
								    String logisticsCompany=sheet.getCell(j++,i).getContents().trim();//工作中心
 | 
				
			||||||
			    PickTicket pickTicket=null;
 | 
					
 | 
				
			||||||
			    List<PickTicket> pickTickets=commonDao.findByQuery(
 | 
								    
 | 
				
			||||||
						"from PickTicket pt where pt.code=:code and CONVERT(varchar(10), pt.updateTime, 120)=:updateTime1",
 | 
								    
 | 
				
			||||||
						new String[] { "code","updateTime1" }, new Object[] { code,updateTime1 });
 | 
								    PickTicket pickTicket=new PickTicket();
 | 
				
			||||||
			    if (pickTickets.size()>0) {
 | 
								    List<PickTicket> resultList = pickTickets.stream()
 | 
				
			||||||
 | 
					                        .filter(PickTicket -> PickTicket.getCode() == code)
 | 
				
			||||||
 | 
					                        .collect(Collectors.toList());
 | 
				
			||||||
 | 
								    if (resultList.size()>0) {
 | 
				
			||||||
					pickTicket=pickTickets.get(0);
 | 
										pickTicket=pickTickets.get(0);
 | 
				
			||||||
				}else {
 | 
									}else {
 | 
				
			||||||
					break;
 | 
										/* 新建工单*/
 | 
				
			||||||
 | 
										pickTicket.setSourceType(sourceType);
 | 
				
			||||||
 | 
									    pickTicket.setCode(code);
 | 
				
			||||||
 | 
									    try {
 | 
				
			||||||
 | 
									    	pickTicket.setOrderDate(sdf.parse(orderDate1));    
 | 
				
			||||||
 | 
								        } catch (Exception e) {
 | 
				
			||||||
 | 
								            e.printStackTrace();
 | 
				
			||||||
 | 
								        }
 | 
				
			||||||
 | 
									    pickTicket.setStatus(status);
 | 
				
			||||||
 | 
										pickTickets.add(pickTicket);
 | 
				
			||||||
 | 
										pickTicket.setPackageQuantity(0);
 | 
				
			||||||
 | 
									    pickTicket.setBOLQuantity(0);
 | 
				
			||||||
 | 
									    pickTicket.setOrderQuantity(0);
 | 
				
			||||||
 | 
									    pickTicket.setAllocatedQuantity(0);
 | 
				
			||||||
 | 
									    pickTicket.setPickedQuantity(0);
 | 
				
			||||||
 | 
									    pickTicket.setShippedQuantity(0);
 | 
				
			||||||
 | 
									    for (BillType billType : billTypes) {
 | 
				
			||||||
 | 
											if (billType.getName().equals(billTypeName)) {
 | 
				
			||||||
 | 
												pickTicket.setBillType(billType);
 | 
				
			||||||
 | 
												break;
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									    pickTicket.setRelatedBill3(relatedBill3);
 | 
				
			||||||
 | 
									    pickTicket.setWorkerName1(lotPropC9);
 | 
				
			||||||
 | 
									    pickTicket.setRelatedBill2(relatedBill2);
 | 
				
			||||||
 | 
									    pickTicket.setUpdateTime(new Date());
 | 
				
			||||||
 | 
									    pickTicket.setLogisticsCompany(logisticsCompany);				    
 | 
				
			||||||
 | 
									    pickTicket.setWarehouse(warehouse);
 | 
				
			||||||
 | 
									    commonDao.store(pickTicket);
 | 
				
			||||||
 | 
									    
 | 
				
			||||||
 | 
									    pickTickets.add(pickTicket);
 | 
				
			||||||
 | 
									    
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			    Item item=null;
 | 
								    Item item=null;
 | 
				
			||||||
			    List<Item> itemList=commonDao.findByQuery(
 | 
								    List<Item> itemList=commonDao.findByQuery(
 | 
				
			||||||
| 
						 | 
					@ -1699,6 +1686,13 @@ public class DefaultImportFileManager extends DefaultBaseManager implements Impo
 | 
				
			||||||
						new String[] { "ptId","lineNumber","itemCode" }, new Object[] { pickTicket.getId(),lineNumber,itemCode });
 | 
											new String[] { "ptId","lineNumber","itemCode" }, new Object[] { pickTicket.getId(),lineNumber,itemCode });
 | 
				
			||||||
			    if (pickTicketDetailList.size()>0) {
 | 
								    if (pickTicketDetailList.size()>0) {
 | 
				
			||||||
			    	pickTicketDetail=pickTicketDetailList.get(0);
 | 
								    	pickTicketDetail=pickTicketDetailList.get(0);
 | 
				
			||||||
 | 
								    	pickTicket.setOrderQuantity(pickTicket.getOrderQuantity()+Double.valueOf(orderQuantity)-pickTicketDetail.getOrderQuantity());
 | 
				
			||||||
 | 
										commonDao.store(pickTicket);
 | 
				
			||||||
 | 
									}else {
 | 
				
			||||||
 | 
										/* 出库单*/
 | 
				
			||||||
 | 
										pickTicket.setOrderQuantity(pickTicket.getOrderQuantity()+Double.valueOf(orderQuantity));
 | 
				
			||||||
 | 
										pickTicket.setPackageQuantity(pickTicket.getPackageQuantity()+1);
 | 
				
			||||||
 | 
										commonDao.store(pickTicket);
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			    pickTicketDetail.setItem(item);
 | 
								    pickTicketDetail.setItem(item);
 | 
				
			||||||
				pickTicketDetail.setLineNumber(lineNumber);
 | 
									pickTicketDetail.setLineNumber(lineNumber);
 | 
				
			||||||
| 
						 | 
					@ -1706,13 +1700,12 @@ public class DefaultImportFileManager extends DefaultBaseManager implements Impo
 | 
				
			||||||
				pickTicketDetail.getLineNumber();
 | 
									pickTicketDetail.getLineNumber();
 | 
				
			||||||
			    pickTicketDetail.setSOI(SOI);
 | 
								    pickTicketDetail.setSOI(SOI);
 | 
				
			||||||
			    pickTicketDetail.setOrderQuantity(Double.valueOf(orderQuantity));
 | 
								    pickTicketDetail.setOrderQuantity(Double.valueOf(orderQuantity));
 | 
				
			||||||
			    pickTicketDetail.setAllocatedQuantity(Double.valueOf(allocatedQuantity));
 | 
								    pickTicketDetail.setAllocatedQuantity(0);
 | 
				
			||||||
			    pickTicketDetail.setPickedQuantity(Double.valueOf(pickedQuantity));
 | 
								    pickTicketDetail.setPickedQuantity(0);
 | 
				
			||||||
			    NewLotInfo newLotInfo=new NewLotInfo();
 | 
								    NewLotInfo newLotInfo=new NewLotInfo();
 | 
				
			||||||
			    newLotInfo.setPropC2(lotPropC2);
 | 
								    newLotInfo.setPropC2(lotPropC2);
 | 
				
			||||||
			    newLotInfo.setPropC9(lotPropC9);
 | 
								    newLotInfo.setPropC9(lotPropC9);
 | 
				
			||||||
			    pickTicketDetail.setNewLotInfo(newLotInfo);
 | 
								    pickTicketDetail.setNewLotInfo(newLotInfo);
 | 
				
			||||||
			    pickTicketDetail.setStrBill2(strBill2);
 | 
					 | 
				
			||||||
			    pickTicketDetail.setStrBill12(strBill12);
 | 
								    pickTicketDetail.setStrBill12(strBill12);
 | 
				
			||||||
			    commonDao.store(pickTicketDetail);
 | 
								    commonDao.store(pickTicketDetail);
 | 
				
			||||||
		    }
 | 
							    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue