根据物料查看图纸
辅料查询只查出用到辅料的数据
master
limy135302065 3 years ago
parent fbd2eb3f29
commit a4798c9a8a

@ -90,22 +90,47 @@ public class FileServiceImpl implements FileService {
public Map<String, String> getFilePathsByItemBo(String itemBo) throws IOException { public Map<String, String> getFilePathsByItemBo(String itemBo) throws IOException {
FTPClient connect = null; FTPClient connect = null;
Map<String,String> pathMap = new HashMap<>(); Map<String,String> pathMap = new HashMap<>();
List<Integer> list=new ArrayList<Integer>();
try { try {
connect = cappFtpClient.login(); // connect = cappFtpClient.login();
String vision= GetDrawingVersionUtil.GetDrawingVerson(itemBo, connect); String vision= GetDrawingVersionUtil.GetDrawingVerson(itemBo, connect);
String path="/"+ StringUtil.trimHandle(itemBo)+"_"+vision+"/"; String path="/"+ StringUtil.trimHandle(itemBo)+"_"+vision+"/";
// connect.changeWorkingDirectory(path);
connect.changeWorkingDirectory(path); // connect.enterLocalPassiveMode();
//
// FTPFile[] files = connect.listFiles();
// if(files!=null){
// for (int i = 0; i < files.length; i++) {
// if(files[i].isFile()){
// String filename=files[i].getName();
// pathMap.put(filename,path+filename);
// }
// }
// }
// connect.disconnect();
connect = cappFtpClient.login();
boolean flag=connect.changeWorkingDirectory(path);
connect.enterLocalPassiveMode(); connect.enterLocalPassiveMode();
FTPFile[] files = connect.listFiles(); FTPFile[] files = connect.listFiles();
if(files!=null){ if(files!=null&&flag){
for (int i = 0; i < files.length; i++) { for (FTPFile ftpFile:files){
if(files[i].isFile()){ String tmp=ftpFile.getName().substring(ftpFile.getName().lastIndexOf("_")+1,ftpFile.getName().lastIndexOf("_")+2);
String filename=files[i].getName(); Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");
pathMap.put(filename,path+filename); if (pattern.matcher(tmp).matches()){
list.add(Integer.parseInt(tmp));
}
if (ftpFile.getName().equals(path.substring(1,path.length()-1)+".pdf")&&ftpFile.isFile()){
pathMap.put(ftpFile.getName(),path+ftpFile.getName());
} }
} }
int max = (int) Collections.max(list);
for (FTPFile ftpFile:files){
if (ftpFile.getName().substring(ftpFile.getName().lastIndexOf("_")+1,ftpFile.getName().lastIndexOf("_")+2).equals(String.valueOf(max))&&ftpFile.isFile()){
pathMap.put(ftpFile.getName(),path+ftpFile.getName());
}
}
}else {
throw new BaseException("未找到当前工序的图纸版本号和工艺卡片相应信息,请联系计划部门确认");
} }
connect.disconnect(); connect.disconnect();
}catch (Exception e){ }catch (Exception e){
@ -116,6 +141,9 @@ public class FileServiceImpl implements FileService {
connect.disconnect(); connect.disconnect();
} }
} }
if (pathMap==null){
throw new BaseException("未找到当前工序的图纸版本号和工艺卡片相应信息,请联系计划部门确认");
}
return pathMap; return pathMap;
} }

@ -535,7 +535,7 @@
SD.ACTUAL_START_DATE, SD.ACTUAL_COMPLETE_DATE, SD.REMARK, SD.DISPATCH_SEQ, SD.DISPATCH_SEQ-1 BEFORE_SEQ, SD.DISPATCH_SEQ+1 AFTER_SEQ, SD.EARLIEST_START_DATE, SD.LATEST_END_DATE, SD.ACTUAL_START_DATE, SD.ACTUAL_COMPLETE_DATE, SD.REMARK, SD.DISPATCH_SEQ, SD.DISPATCH_SEQ-1 BEFORE_SEQ, SD.DISPATCH_SEQ+1 AFTER_SEQ, SD.EARLIEST_START_DATE, SD.LATEST_END_DATE,
CASE WHEN CC.VALUE = '9' THEN N'是' ELSE N'否' END IS_MAJOR, CASE WHEN SD.TURN_OPERATION = 'true' THEN N'是' ELSE N'否' END TURN_OPERATION, SD.IS_UPDATE_ZJH_COMPLETE, SD.BLANKING_SIZE, MAX(BC.COMPONENT_GBO) COMPONENT_BO, CASE WHEN CC.VALUE = '9' THEN N'是' ELSE N'否' END IS_MAJOR, CASE WHEN SD.TURN_OPERATION = 'true' THEN N'是' ELSE N'否' END TURN_OPERATION, SD.IS_UPDATE_ZJH_COMPLETE, SD.BLANKING_SIZE, MAX(BC.COMPONENT_GBO) COMPONENT_BO,
WR.WORK_CENTER RESOURCE_WORK_CENTER,WT.DESCRIPTION WORK_CENTER_DESCRIPTION, MAX(CP.ITEM) COMPONENT, MAX(CT.DESCRIPTION) COMPONENT_DESCRIPTION, MAX(C3.VALUE) TEXTURE, MAX(C4.VALUE) MAT_SPEC ,SD.OTHER_2, WR.WORK_CENTER RESOURCE_WORK_CENTER,WT.DESCRIPTION WORK_CENTER_DESCRIPTION, MAX(CP.ITEM) COMPONENT, MAX(CT.DESCRIPTION) COMPONENT_DESCRIPTION, MAX(C3.VALUE) TEXTURE, MAX(C4.VALUE) MAT_SPEC ,SD.OTHER_2,
ZAL.ITEM ACCESSORY_ITEM,NVL2(ZAL.ITEM, IT.DESCRIPTION, NULL) ACCESSORY_DESCRIPTION,ZAL.QTY ACCESSORY_QTY ZAL.ITEM ACCESSORY_ITEM,IT1.DESCRIPTION ACCESSORY_DESCRIPTION,ZAL.QTY ACCESSORY_QTY
FROM Z_SFC_DISPATCH SD FROM Z_SFC_DISPATCH SD
INNER JOIN SFC SC ON SC.SITE = SD.SITE AND SC.SFC = SD.SFC INNER JOIN SFC SC ON SC.SITE = SD.SITE AND SC.SFC = SD.SFC
LEFT JOIN RESRCE RS ON SD.SITE = RS.SITE AND SD.RESRCE = RS.RESRCE LEFT JOIN RESRCE RS ON SD.SITE = RS.SITE AND SD.RESRCE = RS.RESRCE
@ -557,8 +557,10 @@
LEFT JOIN WORK_CENTER WR ON WR.HANDLE = WCM.WORK_CENTER_BO LEFT JOIN WORK_CENTER WR ON WR.HANDLE = WCM.WORK_CENTER_BO
LEFT JOIN WORK_CENTER WR1 ON WR1.WORK_CENTER = SD.WORK_CENTER LEFT JOIN WORK_CENTER WR1 ON WR1.WORK_CENTER = SD.WORK_CENTER
LEFT JOIN WORK_CENTER_T WT ON WT.WORK_CENTER_BO = WR1.HANDLE AND WT.LOCALE = 'zh' LEFT JOIN WORK_CENTER_T WT ON WT.WORK_CENTER_BO = WR1.HANDLE AND WT.LOCALE = 'zh'
LEFT JOIN Z_ACCESSORY_LOG ZAL ON ZAL.SFC = SD.SFC AND ZAL.SHOP_ORDER = SD.SHOP_ORDER AND ZAL.STEP_ID = SD.STEP_ID LEFT JOIN Z_ACCESSORY_LOG ZAL ON ZAL.SFC = SD.SFC AND ZAL.STEP_ID = SD.STEP_ID
WHERE SD.SITE = #{site} INNER JOIN ITEM IM1 ON IM1.ITEM = ZAL.ITEM
LEFT JOIN ITEM_T IT1 ON IT1.ITEM_BO = IM1.HANDLE AND IT1.LOCALE = 'zh'
WHERE SD.SITE = #{site} AND ZAL.ITEM IS NOT NULL
<if test="workCenter != null and workCenter != ''"> <if test="workCenter != null and workCenter != ''">
AND SD.OPERATION LIKE #{workCenter}||'%' AND SD.OPERATION LIKE #{workCenter}||'%'
</if> </if>
@ -638,7 +640,7 @@
SD.STEP_ID, SD.OPERATION, OT.DESCRIPTION, SD.RESOURCE_TYPE, SD.RESRCE, SD.EMPLOYEE, SD.EMPLOYEE, SD.DISPATCH_QTY, SD.PROD_HOURS, RS.DESCRIPTION, SD.STEP_ID, SD.OPERATION, OT.DESCRIPTION, SD.RESOURCE_TYPE, SD.RESRCE, SD.EMPLOYEE, SD.EMPLOYEE, SD.DISPATCH_QTY, SD.PROD_HOURS, RS.DESCRIPTION,
SD.DISPATCH_STATUS, SD.DISPATCH_QTY, SD.PLANNED_START_DATE, SD.PLANNED_COMP_DATE, SD.WORK_CENTER, SD.IS_DISPATCH, SD.EMPLOYEE_DESCRIPTION, SD.DISPATCH_STATUS, SD.DISPATCH_QTY, SD.PLANNED_START_DATE, SD.PLANNED_COMP_DATE, SD.WORK_CENTER, SD.IS_DISPATCH, SD.EMPLOYEE_DESCRIPTION,
SD.ACTUAL_START_DATE, SD.ACTUAL_COMPLETE_DATE, SD.REMARK, SD.DISPATCH_SEQ, SD.EARLIEST_START_DATE, SD.LATEST_END_DATE, SD.ACTUAL_START_DATE, SD.ACTUAL_COMPLETE_DATE, SD.REMARK, SD.DISPATCH_SEQ, SD.EARLIEST_START_DATE, SD.LATEST_END_DATE,
CC.VALUE, SD.TURN_OPERATION,SD.IS_UPDATE_ZJH_COMPLETE, SD.BLANKING_SIZE, WR.WORK_CENTER ,SD.OTHER_2,ZAL.ITEM ,ZAL.QTY,WT.DESCRIPTION CC.VALUE, SD.TURN_OPERATION,SD.IS_UPDATE_ZJH_COMPLETE, SD.BLANKING_SIZE, WR.WORK_CENTER ,SD.OTHER_2,ZAL.ITEM ,ZAL.QTY,WT.DESCRIPTION,IT1.DESCRIPTION
) WIP ) WIP
LEFT JOIN Z_SFC_DISPATCH V1 ON V1.SITE = WIP.SITE AND V1.SFC = WIP.SFC AND V1.ROUTER_BO = WIP.ROUTER_BO AND V1.DISPATCH_SEQ = WIP.BEFORE_SEQ LEFT JOIN Z_SFC_DISPATCH V1 ON V1.SITE = WIP.SITE AND V1.SFC = WIP.SFC AND V1.ROUTER_BO = WIP.ROUTER_BO AND V1.DISPATCH_SEQ = WIP.BEFORE_SEQ
LEFT JOIN Z_SFC_DISPATCH V2 ON V2.SITE = WIP.SITE AND V2.SFC = WIP.SFC AND V2.ROUTER_BO = WIP.ROUTER_BO AND V2.DISPATCH_SEQ = WIP.AFTER_SEQ LEFT JOIN Z_SFC_DISPATCH V2 ON V2.SITE = WIP.SITE AND V2.SFC = WIP.SFC AND V2.ROUTER_BO = WIP.ROUTER_BO AND V2.DISPATCH_SEQ = WIP.AFTER_SEQ

Loading…
Cancel
Save