@ -30,6 +30,7 @@ import org.springblade.desk.produce.pojo.dto.MakeRecDTO;
import org.springblade.desk.produce.pojo.dto.RetrospectDefendDTO ;
import org.springblade.desk.produce.pojo.dto.WorkPlanDto ;
import org.springblade.desk.produce.pojo.entity.* ;
import org.springblade.desk.produce.pojo.enums.WorkOrderEnum ;
import org.springblade.desk.produce.pojo.vo.MesMakeRecVO ;
import org.springblade.desk.produce.pojo.vo.WorkPlanLoadVO ;
import org.springblade.desk.produce.service.* ;
@ -81,15 +82,15 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
@Override
public WorkPlanDto loadCurrentWp ( String cardNo ) {
WorkOrder wo = workOrderMapper . getWorkOrderByCardNo ( cardNo , ( short ) 0 ) ;
WorkOrder wo = workOrderMapper . getWorkOrderByCardNo ( cardNo , ( short ) 0 ) ;
if ( wo = = null ) {
throw new ServiceException ( "pda.prWorkOrder.absent" ) ;
}
if ( ! WorkOrder . RUN_STATUS_RECEIVE . equals ( wo . getRunStatus ( ) ) ) {
throw new ServiceException ( "pda.prWorkOrder.runStatus" + wo . getRunStatus ( ) ) ;
throw new ServiceException ( "pda.prWorkOrder.runStatus" + wo . getRunStatus ( ) ) ;
}
//验证当前当前登陆人是否可以填写加工记录
WorkPlan wp = workPlanMapper . selectById ( wo . getWpId ( ) ) ;
WorkPlan wp = workPlanMapper . selectById ( wo . getWpId ( ) ) ;
if ( ! WorkPlan . STATUS_START . equals ( wp . getStatus ( ) ) ) {
throw new ServiceException ( "product.prWorkPlan.workOk" ) ;
@ -102,12 +103,12 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
isBinging = true ;
}
YieldOrder yieldOrder = yieldOrderService . getById ( wo . getYoId ( ) ) ;
return WorkPlanDto . builder ( ) . workPlan ( wp ) . workOrder ( wo ) . yieldOrder ( yieldOrder ) . isBinging ( isBinging ) . build ( ) ;
return WorkPlanDto . builder ( ) . workPlan ( wp ) . workOrder ( wo ) . yieldOrder ( yieldOrder ) . isBinging ( isBinging ) . build ( ) ;
}
@Override
public void saveMakeRec ( MakeRecDTO makeRecDTO ) {
WorkPlan wp = workPlanMapper . selectById ( makeRecDTO . getWpId ( ) ) ;
WorkPlan wp = workPlanMapper . selectById ( makeRecDTO . getWpId ( ) ) ;
if ( ! WorkPlan . STATUS_START . equals ( wp . getStatus ( ) ) ) {
throw new ServiceException ( "product.prWorkPlan.workOk" ) ;
}
@ -121,19 +122,19 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
throw new ServiceException ( "product.prWorkPlan.not.bing.bsRackSet" ) ;
}
// 如果上序是上挂工序、并且本序是主工序,则代表本序是 需要绑定飞靶及设备的工序 或者手动维护生产追溯信息
} else if ( wp . getFrontWpId ( ) ! = null & & dsProcess . getProcessName ( ) . equals ( "上挂" ) & & wp . getCruxProcess ( ) . equals ( "是" ) ) {
} else if ( wp . getFrontWpId ( ) ! = null & & dsProcess . getProcessName ( ) . equals ( "上挂" ) & & wp . getCruxProcess ( ) . equals ( "是" ) ) {
mtu = macToolUseService . getOne ( Wrappers . < MacToolUse > lambdaQuery ( ) . eq ( MacToolUse : : getWpId , wp . getId ( ) )
. isNotNull ( MacToolUse : : getBsRackSet ) . isNotNull ( MacToolUse : : getBsFeiBaSet ) . isNotNull ( MacToolUse : : getEquipmentCard ) ) ;
if ( mtu = = null ) {
// 验证是否维护了生产追溯信息
List < String > mtnCodeList = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( ) . eq ( MacToolUse : : getWpId , wp . getId ( ) ) . select ( MacToolUse : : getMtnCode ) ) ;
List < String > mtnCodeList = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( ) . eq ( MacToolUse : : getWpId , wp . getId ( ) ) . select ( MacToolUse : : getMtnCode ) ) ;
List < MesQcProduceRunEntity > qcProduceRunList = mesQcProduceRunService . list ( Wrappers . < MesQcProduceRunEntity > lambdaQuery ( )
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList ) ) ;
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList ) ) ;
if ( ! ( qcProduceRunList ! = null & & qcProduceRunList . size ( ) > 0 ) ) {
throw new ServiceException ( "product.prWorkPlan.not.bing" ) ;
}
}
} else if ( dsProcess . getProcessName ( ) . contains ( "镀金" ) ) {
} else if ( dsProcess . getProcessName ( ) . contains ( "镀金" ) ) {
mtu = macToolUseService . getOne ( Wrappers . < MacToolUse > lambdaQuery ( ) . eq ( MacToolUse : : getWpId , wp . getId ( ) )
. isNotNull ( MacToolUse : : getBsFeiBaSet ) ) ;
if ( mtu = = null ) {
@ -144,21 +145,21 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
. isNotNull ( MacToolUse : : getBsRackSet ) . isNotNull ( MacToolUse : : getBsFeiBaSet ) . isNotNull ( MacToolUse : : getEquipmentCard ) ) ;
if ( mtu = = null ) {
List < MesQcProduceRunEntity > produceRunList = null ;
List < String > mtnCodeList = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( )
. eq ( MacToolUse : : getWpId , wp . getId ( ) ) . eq ( MacToolUse : : getMtuIndex , 1 ) . select ( MacToolUse : : getMtnCode ) ) ;
List < String > mtnCodeList = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( )
. eq ( MacToolUse : : getWpId , wp . getId ( ) ) . eq ( MacToolUse : : getMtuIndex , 1 ) . select ( MacToolUse : : getMtnCode ) ) ;
produceRunList = mesQcProduceRunService . list ( Wrappers . < MesQcProduceRunEntity > lambdaQuery ( )
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList ) . ne ( MesQcProduceRunEntity : : getWorkSlot , "烘箱" ) ) ;
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList ) . ne ( MesQcProduceRunEntity : : getWorkSlot , "烘箱" ) ) ;
if ( produceRunList = = null | | produceRunList . size ( ) = = 0 ) {
List < String > mtnCodeList2 = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( )
. eq ( MacToolUse : : getWpId , wp . getId ( ) ) . eq ( MacToolUse : : getMtuIndex , 2 ) . select ( MacToolUse : : getMtnCode ) ) ;
List < String > mtnCodeList2 = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( )
. eq ( MacToolUse : : getWpId , wp . getId ( ) ) . eq ( MacToolUse : : getMtuIndex , 2 ) . select ( MacToolUse : : getMtnCode ) ) ;
produceRunList = mesQcProduceRunService . list ( Wrappers . < MesQcProduceRunEntity > lambdaQuery ( )
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList2 ) . ne ( MesQcProduceRunEntity : : getWorkSlot , "烘箱" ) ) ;
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList2 ) . ne ( MesQcProduceRunEntity : : getWorkSlot , "烘箱" ) ) ;
}
if ( ! ( produceRunList ! = null & & produceRunList . size ( ) > 0 ) ) {
throw new ServiceException ( "未绑定飞跋和设备或未维护生产追溯信息!!!" ) ;
}
}
} else if ( dsProcess . getProcessName ( ) . equals ( "玻璃封接清洗" ) | | dsProcess . getProcessName ( ) . equals ( "玻璃封接退火" ) | |
} else if ( dsProcess . getProcessName ( ) . equals ( "玻璃封接清洗" ) | | dsProcess . getProcessName ( ) . equals ( "玻璃封接退火" ) | |
dsProcess . getProcessName ( ) . equals ( "玻璃封接预氧化(箱式炉)" ) | | dsProcess . getProcessName ( ) . equals ( "玻璃封接预氧化(链式炉)" ) | |
dsProcess . getProcessName ( ) . equals ( "玻璃封接(链式炉)" ) | | dsProcess . getProcessName ( ) . equals ( "玻璃封接(真空炉)" ) | |
dsProcess . getProcessName ( ) . equals ( "玻璃封接灌胶" ) | | dsProcess . getProcessName ( ) . equals ( "玻璃饼压制" ) | |
@ -174,10 +175,10 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
if ( mtu = = null ) {
// 验证是否维护了生产追溯信息
List < MesQcProduceRunEntity > qcProduceRunList = null ;
List < String > mtnCodeList = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( )
List < String > mtnCodeList = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( )
. eq ( MacToolUse : : getWpId , wp . getId ( ) ) . select ( MacToolUse : : getMtnCode ) ) ;
qcProduceRunList = mesQcProduceRunService . list ( Wrappers . < MesQcProduceRunEntity > lambdaQuery ( )
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList ) ) ;
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList ) ) ;
if ( ! ( qcProduceRunList ! = null & & qcProduceRunList . size ( ) > 0 ) ) {
throw new ServiceException ( "product.prWorkPlan.not.bing" ) ;
}
@ -188,15 +189,15 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
if ( ! aBoolean ) {
throw new ServiceException ( "生产记录未填写完整,不允许报工!!!!" ) ;
}
MakeRec mr = new MakeRec ( ) ;
BeanUtils . copyProperties ( makeRecDTO , MakeRec . class ) ;
MakeRec mr = new MakeRec ( ) ;
BeanUtils . copyProperties ( makeRecDTO , MakeRec . class ) ;
mr . setWpId ( wp . getId ( ) ) ;
mr . setWorker ( makeRecDTO . getWorker ( ) ) ;
mr . setMakeTime ( new Date ( ) ) ;
baseMapper . insertOrUpdate ( mr ) ;
baseMapper . insertOrUpdate ( mr ) ;
if ( mr . getScrapQty ( ) > 0 ) {
wp . setScrapQty ( wp . getScrapQty ( ) + mr . getScrapQty ( ) ) ;
WorkOrder wo = null ; //workOrderService.getById(wp.getWoId());
WorkOrder wo = null ; //workOrderService.getById(wp.getWoId());
wo . setMakeQty ( wo . getMakeQty ( ) - mr . getScrapQty ( ) ) ;
}
wp . setWorkQty ( wp . getWorkQty ( ) + mr . getWorkQty ( ) ) ;
@ -232,7 +233,7 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
mesQcProduceRunService . save ( qcProduceRun ) ;
}
// 保存引用文件或版本号
WorkOrder prWorkOrder = null ; //workOrderService.getById(wp.getWoId());
WorkOrder prWorkOrder = null ; //workOrderService.getById(wp.getWoId());
if ( prWorkOrder ! = null & & prWorkOrder . getId ( ) ! = null ) {
YieldOrder pjYieldOrder = yieldOrderService . getById ( prWorkOrder . getYoId ( ) ) ;
if ( pjYieldOrder ! = null & & pjYieldOrder . getId ( ) ! = null ) {
@ -244,7 +245,7 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
. eq ( AuditFile : : getPpsId , procedureSet . getId ( ) ) ) ;
} else {
// 如果不是优先判断是否有生产标识
String prodIdent = pjYieldOrder . getProductIdent ( ) ;
String prodIdent = pjYieldOrder . getProductIdent ( ) ;
BsTeamSetEntity bsTeamSet = teamSetService . getOne ( Wrappers . < BsTeamSetEntity > lambdaQuery ( )
. eq ( BsTeamSetEntity : : getId , wp . getMakeTeam ( ) ) ) ;
if ( ! "AH" . equals ( prodIdent ) ) {
@ -254,8 +255,8 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
// BsCenterTeamEntity bsCenterTeam = bsCenterTeamService.getByTsId(bsTeamSet.getTsId());
DsPartEntity dsPart = partService . getOne ( Wrappers . < DsPartEntity > lambdaQuery ( ) . eq ( DsPartEntity : : getPartCode , pjYieldOrder . getPartCode ( ) ) ) ;
String productApparea = null ;
if ( dsPart ! = null & & dsPart . getId ( ) ! = null ) {
productApparea = dsPart . getProductSeries ( ) ;
if ( dsPart ! = null & & dsPart . getId ( ) ! = null ) {
productApparea = dsPart . getProductSeries ( ) ;
}
// if (productApparea!=null){
// dsAuditFile = dsAuditFileDao.getDataByPpsIdAndApparea(procedureSet.getPpsId(), bsCenterTeam.getBsWorkCenter().getWcId(),productApparea);
@ -273,7 +274,7 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
// 2025-07-23 线上迁移修改
MacToolUse macToolUse = macToolUseService . getOne ( Wrappers . < MacToolUse > lambdaQuery ( )
. eq ( MacToolUse : : getWpId , wp . getId ( ) ) ) ;
if ( macToolUse ! = null & & macToolUse . getRfpId ( ) ! = null & & macToolUse . getFinished ( ) ! = 1 ) {
if ( macToolUse ! = null & & macToolUse . getRfpId ( ) ! = null & & macToolUse . getFinished ( ) ! = 1 ) {
macToolUse . setFinished ( 1 ) ;
String deviceCode = macToolUse . getEquipmentCard ( ) ! = null ? macToolUse . getMtnCode ( ) : "" ;
log . info ( "修改设备绑定状态:设备编号:{},批次号:{},槽号:{},方法名:addMakeRec(),{}" , deviceCode , macToolUse . getHangNum ( ) , macToolUse . getMtnCode ( ) , macToolUse . getFinished ( ) ) ;
@ -290,29 +291,27 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
@Override
public List < WorkPlanLoadVO > loadNotReceived ( String cardNo ) {
List < Long > tsIds = relTeamSetUserService . list ( Wrappers . lambdaQuery ( RelTeamSetUser . class ) . eq ( RelTeamSetUser : : getUserId , AuthUtil . getUserId ( ) ) ) . stream ( ) . map ( RelTeamSetUser : : getTeamSetId ) . collect ( Collectors . toList ( ) ) ;
List < Long > tsIds = relTeamSetUserService . list ( Wrappers . lambdaQuery ( RelTeamSetUser . class ) . eq ( RelTeamSetUser : : getUserId , 1297 ) ) . stream ( ) . map ( RelTeamSetUser : : getTeamSetId ) . collect ( Collectors . toList ( ) ) ;
List < WorkPlanLoadVO > rtnList = new ArrayList < > ( ) ;
if ( CollectionUtils . isEmpty ( tsIds ) ) {
return rtnList ;
}
WorkOrder wo = workOrderMapper . getWorkOrderByCardNo ( cardNo , ( short ) 0 ) ;
Optional . ofNullable ( wo ) . orElseThrow ( ( ) - > new ServiceException ( "车间订单不存在!" ) ) ;
// List<WorkPlan> wpList= workPlanMapper.selectList(Wrappers.<WorkPlan>lambdaQuery().eq(WorkPlan::getWoId, wo.getId()).in(WorkPlan::getMakeTeam, tsIds));
List < WorkPlan > wpList = workPlanMapper . loadNotReceived ( tsIds , wo . getId ( ) ) ;
if ( CollectionUtils . isNotEmpty ( wpList ) ) {
rtnList = wpList . stream ( ) . map ( wp - > {
WorkPlanLoadVO wpLoad = new WorkPlanLoadVO ( ) ;
BeanUtils . copyProperties ( wp , wpLoad ) ;
return wpLoad ;
} ) . collect ( Collectors . toList ( ) ) ;
List < WorkPlanLoadVO > wpList = workPlanMapper . loadNotReceived ( tsIds , wo . getId ( ) ) ;
for ( WorkPlanLoadVO workPlanLoadVO : wpList ) {
workPlanLoadVO . setRunStatusTitle ( WorkOrderEnum . getName ( workPlanLoadVO . getRunStatus ( ) ) ) ;
workPlanLoadVO . setPriorityTitle ( WorkOrder . priorityMap . get ( workPlanLoadVO . getPriority ( ) ) ) ;
workPlanLoadVO . setPickingStatusTitle ( WorkOrder . pickingStatusMap . get ( workPlanLoadVO . getPickingStatus ( ) ) ) ;
workPlanLoadVO . setIsBing ( 0 ) ;
}
return rtn List;
return wpList ;
}
@Override
public List < WorkPlan > afterPlaReceive ( String cardNo ) {
WorkOrder wo = workOrderMapper . getWorkOrderByCardNo ( cardNo , ( short ) 0 ) ;
List < WorkPlan > wpList = workPlanMapper . selectList ( Wrappers . < WorkPlan > lambdaQuery ( )
List < WorkPlan > wpList = workPlanMapper . selectList ( Wrappers . < WorkPlan > lambdaQuery ( )
. eq ( WorkPlan : : getWoId , wo . getId ( ) ) ) ;
return wpList ;
}
@ -330,13 +329,13 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
prWorkPlan . setPrintType ( ( short ) 1 ) ;
if ( prWorkPlan . getStatus ( ) . equals ( WorkPlan . STATUS_START ) ) {
throw new ServiceException ( "流程卡为 " + prWorkPlan . getCaId ( ) + " 的订单对应的工序不在加工中暂时不可再维护!" ) ;
throw new ServiceException ( "流程卡为 " + prWorkPlan . getCaId ( ) + " 的订单对应的工序不在加工中暂时不可再维护!" ) ;
}
// 查询自动生产追溯是否已经开始
List < String > mtnCodeList = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( )
. eq ( MacToolUse : : getWpId , wpId ) . eq ( MacToolUse : : getMtuIndex , 2 ) . select ( MacToolUse : : getMtnCode ) ) ;
List < String > mtnCodeList = macToolUseService . listObjs ( Wrappers . < MacToolUse > lambdaQuery ( )
. eq ( MacToolUse : : getWpId , wpId ) . eq ( MacToolUse : : getMtuIndex , 2 ) . select ( MacToolUse : : getMtnCode ) ) ;
produceRunList = mesQcProduceRunService . list ( Wrappers . < MesQcProduceRunEntity > lambdaQuery ( )
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList ) . ne ( MesQcProduceRunEntity : : getWorkSlot , "烘箱" ) ) ;
. in ( MesQcProduceRunEntity : : getMtnCode , mtnCodeList ) . ne ( MesQcProduceRunEntity : : getWorkSlot , "烘箱" ) ) ;
// 上线前 没有生产追溯数据
if ( retrospectDefendDTO . getLine ( ) . equals ( Boolean . TRUE ) ) {
if ( produceRunList ! = null & & produceRunList . size ( ) > 0 ) {
@ -348,8 +347,8 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
throw new ServiceException ( "流程卡为 " + prWorkPlan . getId ( ) + " 的订单对应的工序还未下线,不可再维护!" ) ;
}
MacToolUse macToolUse = macToolUseService . getOne ( Wrappers . < MacToolUse > lambdaQuery ( ) . eq ( MacToolUse : : getWpId , wpId )
. eq ( MacToolUse : : getMtuIndex , 2 ) ) ;
if ( macToolUse ! = null & & macToolUse . getRfpId ( ) ! = null & & macToolUse . getFinished ( ) ! = 1 ) {
. eq ( MacToolUse : : getMtuIndex , 2 ) ) ;
if ( macToolUse ! = null & & macToolUse . getRfpId ( ) ! = null & & macToolUse . getFinished ( ) ! = 1 ) {
macToolUse . setFinished ( 1 ) ;
String deviceCode = macToolUse . getEquipmentCard ( ) ! = null ? macToolUse . getMtnCode ( ) : "" ;
log . info ( "修改设备绑定状态:设备编号:{},批次号:{},槽号:{},方法名:saveRetrospectDefend(),{}" , deviceCode , macToolUse . getHangNum ( ) , macToolUse . getMtnCode ( ) , macToolUse . getFinished ( ) ) ;
@ -370,7 +369,7 @@ public class MakeRecServiceImpl extends BaseServiceImpl<MakeRecMapper, MakeRec>
prMacToolUse . setMtnCode ( code ) ;
prMacToolUse . setMtuIndex ( String . valueOf ( retrospectDefendDTO . getLine ( ) ? 1 : 3 ) ) ;
macToolUseService . save ( prMacToolUse ) ;
String deviceCode = prMacToolUse . getEquipmentCard ( ) ! = null ? prMacToolUse . getMtnCode ( ) : "" ;
String deviceCode = prMacToolUse . getEquipmentCard ( ) ! = null ? prMacToolUse . getMtnCode ( ) : "" ;
log . info ( "修改设备绑定状态:设备编号:{},批次号:{},槽号:{},方法名:saveRetrospectDefend(),{}" , deviceCode , prMacToolUse . getHangNum ( ) , prMacToolUse . getMtnCode ( ) , prMacToolUse . getFinished ( ) ) ;
}
}