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,43 +1602,75 @@ 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 {
|
||||||
|
/* 新建工单*/
|
||||||
|
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;
|
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(
|
||||||
"from Item i where i.code=:code",
|
"from Item i where i.code=:code",
|
||||||
|
|
@ -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