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

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 "";
}
}
}