|
|
|
@ -35,10 +35,7 @@ import org.springblade.desk.order.constant.YieldOrderConst; |
|
|
|
import org.springblade.desk.order.mapper.MoldDemandMapper; |
|
|
|
import org.springblade.desk.order.mapper.MoldDemandMapper; |
|
|
|
import org.springblade.desk.order.mapper.YieldOrderMapper; |
|
|
|
import org.springblade.desk.order.mapper.YieldOrderMapper; |
|
|
|
import org.springblade.desk.order.mapper.YieldPlanMapper; |
|
|
|
import org.springblade.desk.order.mapper.YieldPlanMapper; |
|
|
|
import org.springblade.desk.order.pojo.entity.MoldDemand; |
|
|
|
import org.springblade.desk.order.pojo.entity.*; |
|
|
|
import org.springblade.desk.order.pojo.entity.YieldOrder; |
|
|
|
|
|
|
|
import org.springblade.desk.order.pojo.entity.YieldOrderCraft; |
|
|
|
|
|
|
|
import org.springblade.desk.order.pojo.entity.YieldPlan; |
|
|
|
|
|
|
|
import org.springblade.desk.order.pojo.enums.MoldDemandEnum; |
|
|
|
import org.springblade.desk.order.pojo.enums.MoldDemandEnum; |
|
|
|
import org.springblade.desk.order.pojo.enums.YieldOrderEnum; |
|
|
|
import org.springblade.desk.order.pojo.enums.YieldOrderEnum; |
|
|
|
import org.springblade.desk.order.pojo.vo.LineMemoVo; |
|
|
|
import org.springblade.desk.order.pojo.vo.LineMemoVo; |
|
|
|
@ -54,6 +51,9 @@ import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
|
|
|
|
import java.text.MessageFormat; |
|
|
|
import java.text.MessageFormat; |
|
|
|
|
|
|
|
import java.time.LocalDate; |
|
|
|
|
|
|
|
import java.time.LocalDateTime; |
|
|
|
|
|
|
|
import java.time.LocalTime; |
|
|
|
import java.util.*; |
|
|
|
import java.util.*; |
|
|
|
import java.util.concurrent.CompletableFuture; |
|
|
|
import java.util.concurrent.CompletableFuture; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
@ -374,7 +374,6 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
|
|
|
|
|
|
|
DsCraftEntity craft = craftVO.getCraft(); |
|
|
|
DsCraftEntity craft = craftVO.getCraft(); |
|
|
|
DsPartEntity part = dsPartService.getById(craft.getPartId()); |
|
|
|
DsPartEntity part = dsPartService.getById(craft.getPartId()); |
|
|
|
|
|
|
|
|
|
|
|
//石墨模不参与验证
|
|
|
|
//石墨模不参与验证
|
|
|
|
if (YieldOrderEnum.YIELD_TYPE_2.getCode() != yieldOrder.getYieldType() |
|
|
|
if (YieldOrderEnum.YIELD_TYPE_2.getCode() != yieldOrder.getYieldType() |
|
|
|
&& YieldOrderEnum.YIELD_TYPE_6.getCode() != yieldOrder.getYieldType() && ObjectUtil.isEmpty(part.getArea())) { |
|
|
|
&& YieldOrderEnum.YIELD_TYPE_6.getCode() != yieldOrder.getYieldType() && ObjectUtil.isEmpty(part.getArea())) { |
|
|
|
@ -1017,6 +1016,23 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
return list; |
|
|
|
return list; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
|
|
public void calculateCoatingMaterial() { |
|
|
|
|
|
|
|
LocalDate today = LocalDate.now(); |
|
|
|
|
|
|
|
LocalDateTime startOfDay = today.atStartOfDay(); |
|
|
|
|
|
|
|
LocalDateTime endOfDay = today.atTime(LocalTime.MAX); |
|
|
|
|
|
|
|
LambdaQueryWrapper<YieldOrder> wrapper = Wrappers.<YieldOrder>query().lambda() |
|
|
|
|
|
|
|
.between(YieldOrder::getReceiveTime, |
|
|
|
|
|
|
|
DateUtil.toDate(startOfDay), |
|
|
|
|
|
|
|
DateUtil.toDate(endOfDay)).isNull(YieldOrder::getGoodsDemand); |
|
|
|
|
|
|
|
List<YieldOrder> list = this.list(wrapper); |
|
|
|
|
|
|
|
if(CollectionUtils.isNotEmpty(list)){ |
|
|
|
|
|
|
|
for(YieldOrder yieldOrder : list){ |
|
|
|
|
|
|
|
plateGoodsRecordService.calculateCoatingMaterial(yieldOrder); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* 验证零件子件信息 |
|
|
|
* 验证零件子件信息 |
|
|
|
* |
|
|
|
* |
|
|
|
@ -1230,7 +1246,11 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
private Integer judgeRank(YieldOrder yieldOrder) { |
|
|
|
private Integer judgeRank(YieldOrder yieldOrder) { |
|
|
|
DsPartEntity part = dsPartService.selectDsPartByPatCodeAndVersion(yieldOrder.getPartCode(), yieldOrder.getPartVersion()); |
|
|
|
DsPartEntity part = dsPartService.selectDsPartByPatCodeAndVersion(yieldOrder.getPartCode(), yieldOrder.getPartVersion()); |
|
|
|
if(part == null){ |
|
|
|
if(part == null){ |
|
|
|
throw new ServiceException("未查询到零件信息!"); |
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode()); |
|
|
|
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
|
|
|
yieldOrder.setValidationMomo("未查询到零件信息!"); |
|
|
|
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
|
|
|
return null; |
|
|
|
} |
|
|
|
} |
|
|
|
// 工作订单备注中包含大小写的HTBY时,执行二级工艺
|
|
|
|
// 工作订单备注中包含大小写的HTBY时,执行二级工艺
|
|
|
|
if (yieldOrder.getYpMemo() != null && yieldOrder.getYpMemo().toLowerCase(Locale.ROOT).contains("htby")) { |
|
|
|
if (yieldOrder.getYpMemo() != null && yieldOrder.getYpMemo().toLowerCase(Locale.ROOT).contains("htby")) { |
|
|
|
|