|
|
|
|
@ -13,10 +13,7 @@ import org.springblade.common.exception.BusinessException; |
|
|
|
|
import org.springblade.core.log.exception.ServiceException; |
|
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl; |
|
|
|
|
import org.springblade.core.tool.utils.Func; |
|
|
|
|
import org.springblade.desk.basic.pojo.entity.BsAssignEntity; |
|
|
|
|
import org.springblade.desk.basic.pojo.entity.Oem; |
|
|
|
|
import org.springblade.desk.basic.pojo.entity.OemCraftAbilityEntity; |
|
|
|
|
import org.springblade.desk.basic.pojo.entity.WorkCenter; |
|
|
|
|
import org.springblade.desk.basic.pojo.entity.*; |
|
|
|
|
import org.springblade.desk.basic.service.*; |
|
|
|
|
import org.springblade.desk.dashboard.pojo.entity.BsCraftAbilityEntity; |
|
|
|
|
import org.springblade.desk.dashboard.pojo.entity.BsProcessSetEntity; |
|
|
|
|
@ -30,7 +27,6 @@ import org.springblade.desk.order.mapper.YieldOrderMapper; |
|
|
|
|
import org.springblade.desk.order.pojo.dto.YieldOrderAssignCount; |
|
|
|
|
import org.springblade.desk.order.pojo.entity.YieldOrder; |
|
|
|
|
import org.springblade.desk.order.pojo.entity.YieldOrderAssignDaily; |
|
|
|
|
import org.springblade.desk.order.pojo.entity.YieldOrderAssignSteer; |
|
|
|
|
import org.springblade.desk.order.pojo.entity.YieldOrderCraft; |
|
|
|
|
import org.springblade.desk.order.service.IYieldOrderAssignSteerService; |
|
|
|
|
import org.springblade.desk.order.service.IYieldOrderCraftService; |
|
|
|
|
@ -54,7 +50,7 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM |
|
|
|
|
|
|
|
|
|
private final IWorkCenterService workCenterService; |
|
|
|
|
private final IOemService oemService; |
|
|
|
|
private final IOemCraftAbilityService oemCraftAbilityService; |
|
|
|
|
private final IPlanAssignSteerService planAssignSteerService; |
|
|
|
|
private final IBsCraftAbilityService craftAbilityService; |
|
|
|
|
private final IBsAssignService assignService; |
|
|
|
|
private final IYieldOrderDailyAssignService dailyAssignService; |
|
|
|
|
@ -534,12 +530,12 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM |
|
|
|
|
List<Long> thisLst = new ArrayList<>(); |
|
|
|
|
thisLst.add(assign.getOemId()); |
|
|
|
|
//查询当前外协商是否满足生产当前这批活的条件,若不满足,则考虑其他满足的供应商
|
|
|
|
|
YieldOrderAssignSteer planAssignSteer = assignSteerService.findByOcIdLstAndCaId(thisLst, null, yieldOrder.getPartCode()); |
|
|
|
|
PlanAssignSteer planAssignSteer = planAssignSteerService.findByOcIdLstAndCaId(ocList, null, yieldOrder.getPartCode()); |
|
|
|
|
//用于标识匹配规则是按零件还是工艺能力
|
|
|
|
|
boolean bool = true; |
|
|
|
|
if (planAssignSteer == null) { |
|
|
|
|
bool = false; |
|
|
|
|
planAssignSteer = assignSteerService.findByOcIdLstAndCaId(thisLst, hostCaId, null); |
|
|
|
|
planAssignSteer = planAssignSteerService.findByOcIdLstAndCaId(ocList, null, yieldOrder.getPartCode()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (planAssignSteer != null) { |
|
|
|
|
@ -574,7 +570,7 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM |
|
|
|
|
// 外协商
|
|
|
|
|
Oem oemCustomer = null; |
|
|
|
|
// 首先根据零件号查询是否存在零件级的分派规则
|
|
|
|
|
YieldOrderAssignSteer planAssignSteer = assignSteerService.findByOcIdLstAndCaId(ocList, null, yieldOrder.getPartCode()); |
|
|
|
|
PlanAssignSteer planAssignSteer = planAssignSteerService.findByOcIdLstAndCaId(ocList, null, yieldOrder.getPartCode()); |
|
|
|
|
//用于标识匹配规则是按零件还是工艺能力
|
|
|
|
|
boolean bool = true; |
|
|
|
|
if (planAssignSteer == null) { |
|
|
|
|
@ -583,9 +579,9 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM |
|
|
|
|
// 获取到满足条件的供应商
|
|
|
|
|
// 对有能力做这个单子厂家按照偏差因子排序
|
|
|
|
|
if (!ocList.isEmpty()) { |
|
|
|
|
List<YieldOrderAssignSteer> bsPlanAssignSteerList = assignSteerService.sortDataByFactor(ocList, hostCaId); |
|
|
|
|
List<PlanAssignSteer> bsPlanAssignSteerList = planAssignSteerService.sortDataByFactor(ocList, hostCaId); |
|
|
|
|
CraftAbilityEntity craftAbility = iCraftAbilityService.getById(hostCaId); |
|
|
|
|
for (YieldOrderAssignSteer bsPlanAssignSteer : bsPlanAssignSteerList) { |
|
|
|
|
for (PlanAssignSteer bsPlanAssignSteer : bsPlanAssignSteerList) { |
|
|
|
|
oemCustomer = oemService.getById(bsPlanAssignSteer.getOemId()); |
|
|
|
|
String oemCode = oemCustomer.getCode(); |
|
|
|
|
|
|
|
|
|
|