产品报废检索所有

master
philip 3 years ago
parent ce00e5e1c8
commit 1e8589f8fc

@ -48,4 +48,6 @@ public interface AbnormalBillMapper extends BaseMapper<AbnormalBill> {
IPage getAbnormalSFCPage(IPage page, @Param("paramMap")Map<String,String> paramMap,@Param("keyword")String keyword);
Map<String,String> findReplaceMessageByAbnormal(@Param("abnormalBill")AbnormalBill abnormalBill);
List<ScrapDto> findScrapDtoList(String site);
}

@ -1553,7 +1553,9 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
if(StringUtil.isBlank(site)){
site = CommonMethods.getSite();
}
List<ScrapDto> scrapDtoBySfc = null;
//根据用户提报上来的sfc和异常单查找主SFC
if (StringUtils.notBlank(abnormalNo)||StringUtils.notBlank(sfc)){
Map<String, String> map = this.jgProductionIsScrap(abnormalNo, site, sfc);
String mainSfc = null;
String abnormalBo = null;
@ -1591,7 +1593,7 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
splitSfc.setSfc(mainSfc);
splitSfcs = splitSfcService.selectList(splitSfc);
}
List<ScrapDto> scrapDtoBySfc = abnormalBillMapper.findScrapDtoBySfc(site, mainSfc,splitSfcs);
scrapDtoBySfc = abnormalBillMapper.findScrapDtoBySfc(site, mainSfc,splitSfcs);
//如果用户提报上来的sfc不为空并且不是主sfc则把主sfc从scrapDtoBySfc去掉
if(!StringUtil.isBlank(sfc) && !sfc.equals(mainSfc)){
@ -1605,7 +1607,6 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
if(scrapDtoBySfc.size() <= 0){
throw new BaseException("该产品条码的异常方案不是报废");
}
//查找到责任人,放到表里
AbnormalBillDispose abnormalBillDispose = new AbnormalBillDispose();
abnormalBillDispose.setAbnormalBillBo(abnormalBo);
@ -1615,6 +1616,9 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
scrapDtoBySfc.get(i).setDutyUser(abnormalBillDisposes.get(0).getPrincipalUser());
}
}
}else {
scrapDtoBySfc = abnormalBillMapper.findScrapDtoList(site);
}
return scrapDtoBySfc;
}
void creatInspectionTask(String site,String inspectionTaskBo,String sfc,String stepId,String comments){

@ -76,6 +76,7 @@
<result column="BOM" property="bom"/>
<result column="REASON" property="reason"/>
<result column="TYPE" property="type"/>
<result column="DUTY_USER" property="dutyUser"/>
</resultMap>
<!-- 通用查询结果列 -->
@ -1234,6 +1235,50 @@
</where>
</select>
<select id="findScrapDtoList" resultMap="scrapDto">
SELECT NVL(ZSSF.SPLIT_SfC,S.SFC ) SFC,ZABD.PRINCIPAL_USER DUTY_USER,
S2.STATUS STATUS,
CASE WHEN ZAB.OPERATION IS NOT NULL AND ZAB.STEP_ID IS NOT NULL THEN ZAB.OPERATION || '/' || ZAB.STEP_ID
ELSE SUBSTR(SS.OPERATION_BO ,INSTR(SS.OPERATION_BO ,',',1)+1,(INSTR(SS.OPERATION_BO ,'#',1)-1)-(INSTR(SS.OPERATION_BO ,',',1)+1)) || '/' || SS.STEP_ID
END OPERATION,
CASE WHEN ZAB.RESRCE IS NOT NULL THEN ZAB.RESRCE
ELSE ZSD2.RESRCE
END RESRCE,
CASE WHEN ZAB.SHOP_ORDER IS NOT NULL THEN ZAB.SHOP_ORDER
ELSE SO.SHOP_ORDER
END SHOP_ORDER,
CASE WHEN I.ITEM != 'NULL' THEN I.ITEM || '/' || I.REVISION END ITEM,
CASE WHEN R.ROUTER != 'NULL' THEN R.ROUTER || '/' || R.REVISION END ROUTER ,
CASE WHEN B.BOM != 'NULL' THEN B.BOM || '/' || B.REVISION END BOM,
CASE WHEN ZSS.HANDLE != 'NULL' THEN ZSS.REASON
ELSE ZABV.PB_DESCRIPTION
END REASON,
ZSS.TYPE TYPE
FROM SFC S
JOIN SFC_ROUTING SR ON SR.SFC_BO = S.HANDLE
JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE AND ST.IN_USE = 'true'
JOIN SFC_STEP SS ON SS.SFC_ROUTER_BO = ST.HANDLE AND (SS.QTY_IN_QUEUE > 0 OR SS.QTY_IN_WORK > 0)
INNER JOIN STATUS S2 ON S2.HANDLE = S.STATUS_BO
JOIN Z_SFC_DISPATCH ZSD2 ON ZSD2.DISPATCH_NO = S.SFC || '-' || SS.STEP_ID
INNER JOIN SHOP_ORDER SO ON SO.HANDLE = S.SHOP_ORDER_BO AND SO.SITE = S.SITE
INNER JOIN ITEM I ON I.HANDLE = SO.PLANNED_ITEM_BO
JOIN ROUTER R ON R.HANDLE = ST.ROUTER_BO
LEFT JOIN Z_SFC_SCRAP ZSS ON ZSS.SFC = S.SFC AND ZSS.SITE = S.SITE
JOIN BOM B ON B.HANDLE = SO.PLANNED_BOM_BO
JOIN (
SELECT ZABV.*
FROM Z_ABNORMAL_BILL_VIEW ZABV
JOIN (SELECT MAX(HANDLE) handle
FROM Z_ABNORMAL_BILL_VIEW ZABV2
GROUP BY sfc ) ma ON ZABV.HANDLE = ma.HANDLE
) ZABV
ON ZABV.SFC = S.SFC AND ZABV.SITE= S.SITE
JOIN Z_ABNORMAL_BILL ZAB ON ZAB.HANDLE = ZABV.HANDLE
JOIN Z_ABNORMAL_BILL_DISPOSE ZABD ON ZABD.ABNORMAL_BILL_BO= ZAB.HANDLE
LEFT JOIN Z_SPLIT_SFC ZSSF ON s.site=ZSSF.site and ZSSF.sfc=s.SFC
LEFT JOIN SFC SPSFC ON SPSFC.site=ZSSF.site and ZSSF.sfc=SPSFC.SFC AND spsfc.STATUS_BO!='StatusBO:'||#{site}||',407'
WHERE s.STATUS_BO!='StatusBO:'||#{site}||',407'
</select>
<select id="getQCAbnormalList" resultMap="BaseResultMap">
SELECT * FROM Z_ABNORMAL_BILL zab
JOIN sfc s ON zab.SITE=s.SITE AND zab.SFC=s.SFC

Loading…
Cancel
Save