You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
116 lines
4.4 KiB
Java
116 lines
4.4 KiB
Java
|
2 months ago
|
import com.matrixone.apps.domain.util.MqlUtil;
|
||
|
|
import matrix.db.Context;
|
||
|
|
import org.apache.poi.ss.usermodel.*;
|
||
|
|
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||
|
|
|
||
|
|
import java.io.BufferedWriter;
|
||
|
|
import java.io.FileInputStream;
|
||
|
|
import java.io.FileWriter;
|
||
|
|
|
||
|
|
public class AegBomOmitInfo_mxJPO {
|
||
|
|
public void omitInfo(Context context, String[] args) throws Exception {
|
||
|
|
FileInputStream fileInputStream = new FileInputStream("/jpo/6000.xlsx");
|
||
|
|
Workbook workbook = new XSSFWorkbook(fileInputStream);
|
||
|
|
|
||
|
|
Sheet sheet = workbook.getSheetAt(0);
|
||
|
|
|
||
|
|
String firstPartNumber = "";
|
||
|
|
|
||
|
|
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("1.txt"));
|
||
|
|
|
||
|
|
for (Row row : sheet){
|
||
|
|
Cell firstCell = row.getCell(0);
|
||
|
|
String firstColumnValue = getCellValueAsString(firstCell);
|
||
|
|
boolean isFlag = false;
|
||
|
|
|
||
|
|
// String getObjId = "temp query bus VPMReference * * where \"attribute[AEGVPMReference.AEGmaterial_text_zh].value == '" + firstColumnValue + "'\" select id dump |";
|
||
|
|
// System.out.println(getObjId);
|
||
|
|
|
||
|
|
if(!firstColumnValue.equals(firstPartNumber)) {
|
||
|
|
String getObjId = "temp query bus VPMReference * * where 'attribute[EnterpriseExtension.V_PartNumber].value == " + firstColumnValue + "' select id dump |";
|
||
|
|
String objInfo = MqlUtil.mqlCommand(context, getObjId);
|
||
|
|
firstPartNumber = firstColumnValue;
|
||
|
|
|
||
|
|
if("".equals(objInfo) || objInfo.split("\\|").length != 4){
|
||
|
|
bufferedWriter.write("==>" + firstColumnValue);
|
||
|
|
isFlag = true;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
bufferedWriter.write(" ");
|
||
|
|
|
||
|
|
// 获取第五列单元格
|
||
|
|
Cell fifthCell = row.getCell(3);
|
||
|
|
String fifthColumnValue = getCellValueAsString(fifthCell);
|
||
|
|
String getObjId = "temp query bus VPMReference * * where 'attribute[EnterpriseExtension.V_PartNumber].value == " + fifthColumnValue + "' select id dump |";
|
||
|
|
String childObjInfo = MqlUtil.mqlCommand(context, getObjId);
|
||
|
|
|
||
|
|
if("".equals(childObjInfo) || childObjInfo.split("\\|").length != 4){
|
||
|
|
bufferedWriter.write("==>" + fifthColumnValue);
|
||
|
|
isFlag = true;
|
||
|
|
}
|
||
|
|
|
||
|
|
if (isFlag){
|
||
|
|
bufferedWriter.newLine();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
public void getEstablishedInfo(Context context, String[] args) throws Exception {
|
||
|
|
FileInputStream fileInputStream = new FileInputStream("/jpo/6000.xlsx");
|
||
|
|
Workbook workbook = new XSSFWorkbook(fileInputStream);
|
||
|
|
|
||
|
|
Sheet sheet = workbook.getSheetAt(0);
|
||
|
|
|
||
|
|
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("/jpo/1.txt"));
|
||
|
|
|
||
|
|
int i = 0;
|
||
|
|
|
||
|
|
for (Row row : sheet){
|
||
|
|
|
||
|
|
Cell secondCell = row.getCell(0);
|
||
|
|
Cell firstCell = row.getCell(3);
|
||
|
|
String firstColumnValue = getCellValueAsString(firstCell);
|
||
|
|
String documentName = getCellValueAsString(secondCell);
|
||
|
|
if("".equals(firstColumnValue)){
|
||
|
|
continue;
|
||
|
|
}
|
||
|
|
|
||
|
|
String getObjId = "temp query bus VPMReference * * where 'attribute[EnterpriseExtension.V_PartNumber].value == " + firstColumnValue + "' select id dump |";
|
||
|
|
String objInfo = MqlUtil.mqlCommand(context, getObjId);
|
||
|
|
if(!"".equals(objInfo) && objInfo.split("\\|").length == 4){
|
||
|
|
i++;
|
||
|
|
bufferedWriter.write(firstColumnValue);
|
||
|
|
bufferedWriter.newLine();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
//
|
||
|
|
System.out.println(i);
|
||
|
|
bufferedWriter.flush();
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
private static String getCellValueAsString(Cell cell) {
|
||
|
|
if (cell == null) {
|
||
|
|
return "";
|
||
|
|
}
|
||
|
|
CellType cellType = cell.getCellType();
|
||
|
|
switch (cellType) {
|
||
|
|
case STRING:
|
||
|
|
return cell.getStringCellValue();
|
||
|
|
case NUMERIC:
|
||
|
|
if (DateUtil.isCellDateFormatted(cell)) {
|
||
|
|
return cell.getDateCellValue().toString();
|
||
|
|
} else {
|
||
|
|
return String.valueOf(cell.getNumericCellValue());
|
||
|
|
}
|
||
|
|
case BOOLEAN:
|
||
|
|
return String.valueOf(cell.getBooleanCellValue());
|
||
|
|
case FORMULA:
|
||
|
|
return cell.getCellFormula();
|
||
|
|
default:
|
||
|
|
return "";
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|