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