diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentCheckDetailService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentCheckDetailService.java deleted file mode 100644 index cef57cc..0000000 --- a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentCheckDetailService.java +++ /dev/null @@ -1,13 +0,0 @@ -package cn.estsh.i3plus.ext.mes.api.base; - -import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentCheckDetail; - -/** - * @Description: - * @CreateDate 2024/04/16 - * @Author mingliang.li - */ -public interface IMesEquipmentCheckDetailService extends IBaseMesService { - - -} diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentCheckService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentCheckService.java deleted file mode 100644 index aa283ed..0000000 --- a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentCheckService.java +++ /dev/null @@ -1,13 +0,0 @@ -package cn.estsh.i3plus.ext.mes.api.base; - -import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentCheck; - -/** - * @Description: - * @CreateDate 2024/04/16 - * @Author mingliang.li - */ -public interface IMesEquipmentCheckService extends IBaseMesService { - - -} diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentSpotCheckDetailService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentSpotCheckDetailService.java new file mode 100644 index 0000000..ad593e1 --- /dev/null +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentSpotCheckDetailService.java @@ -0,0 +1,16 @@ +package cn.estsh.i3plus.ext.mes.api.base; + +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentProdParamCfg; +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentSpotCheckDetail; + +/** + * @Description : 设备加工参数维护 + * @Reference : + * @Author : junsheng.li + * @CreateDate 2024/5/14 14:07 + * @Modify: + **/ +public interface IMesEquipmentSpotCheckDetailService extends IBaseMesService{ + + +} diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentSpotCheckService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentSpotCheckService.java new file mode 100644 index 0000000..4f9d1c1 --- /dev/null +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesEquipmentSpotCheckService.java @@ -0,0 +1,16 @@ +package cn.estsh.i3plus.ext.mes.api.base; + +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentSpotCheck; +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentSpotCheckDetail; + +/** + * @Description : 设备加工参数维护 + * @Reference : + * @Author : junsheng.li + * @CreateDate 2024/5/14 14:07 + * @Modify: + **/ +public interface IMesEquipmentSpotCheckService extends IBaseMesService{ + + +} diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSpotCheckOrderPartService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSpotCheckOrderPartService.java new file mode 100644 index 0000000..0f10ba2 --- /dev/null +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSpotCheckOrderPartService.java @@ -0,0 +1,18 @@ +package cn.estsh.i3plus.ext.mes.api.busi; + +import cn.estsh.i3plus.ext.mes.api.base.IBaseMesService; +import cn.estsh.i3plus.ext.mes.pojo.model.MaximoParamModel; +import cn.estsh.i3plus.pojo.mes.bean.MesSpotCheckOrderPart; + +import java.util.Map; + +/** + * @Description : IMaximoService + * @Author :gsz + * @Date 2024/5/15 13:16 + * @Modify + **/ +public interface IMesSpotCheckOrderPartService extends IBaseMesService { + + +} diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSpotCheckOrderResultService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSpotCheckOrderResultService.java new file mode 100644 index 0000000..932c23f --- /dev/null +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSpotCheckOrderResultService.java @@ -0,0 +1,15 @@ +package cn.estsh.i3plus.ext.mes.api.busi; + +import cn.estsh.i3plus.ext.mes.api.base.IBaseMesService; +import cn.estsh.i3plus.pojo.mes.bean.MesSpotCheckOrderResult; + +/** + * @Description : IMaximoService + * @Author :gsz + * @Date 2024/5/15 13:16 + * @Modify + **/ +public interface IMesSpotCheckOrderResultService extends IBaseMesService { + + +} diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSpotCheckOrderService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSpotCheckOrderService.java new file mode 100644 index 0000000..3675773 --- /dev/null +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSpotCheckOrderService.java @@ -0,0 +1,16 @@ +package cn.estsh.i3plus.ext.mes.api.busi; + +import cn.estsh.i3plus.ext.mes.api.base.IBaseMesService; +import cn.estsh.i3plus.pojo.mes.bean.MesSpotCheckOrder; +import cn.estsh.i3plus.pojo.mes.bean.MesSpotCheckOrderPart; + +/** + * @Description : IMaximoService + * @Author :gsz + * @Date 2024/5/15 13:16 + * @Modify + **/ +public interface IMesSpotCheckOrderService extends IBaseMesService { + + +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentCheckDetailController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentCheckDetailController.java index c7aad09..b547f79 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentCheckDetailController.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentCheckDetailController.java @@ -1,7 +1,7 @@ package cn.estsh.i3plus.ext.mes.apiservice.controller.base; import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant; -import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentCheckDetail; +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentSpotCheckDetail; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -10,5 +10,5 @@ import org.springframework.web.bind.annotation.RestController; */ @RestController @RequestMapping(MesCommonConstant.MES_YANFEN + "/mesEquipmentCheckDetail") -public class MesEquipmentCheckDetailController extends BaseMesController{ +public class MesEquipmentCheckDetailController extends BaseMesController{ } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentCheckController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentSpotCheckController.java similarity index 70% rename from modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentCheckController.java rename to modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentSpotCheckController.java index 6ac4bbb..76534d8 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentCheckController.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesEquipmentSpotCheckController.java @@ -1,7 +1,7 @@ package cn.estsh.i3plus.ext.mes.apiservice.controller.base; import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant; -import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentCheck; +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentSpotCheck; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -11,5 +11,5 @@ import org.springframework.web.bind.annotation.RestController; */ @RestController @RequestMapping(MesCommonConstant.MES_YANFEN + "/mesEquipmentCheck") -public class MesEquipmentCheckController extends BaseMesController{ +public class MesEquipmentSpotCheckController extends BaseMesController { } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/MesSpotCheckOrderController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/MesSpotCheckOrderController.java new file mode 100644 index 0000000..33c2f2d --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/MesSpotCheckOrderController.java @@ -0,0 +1,16 @@ +package cn.estsh.i3plus.ext.mes.apiservice.controller.busi; + +import cn.estsh.i3plus.ext.mes.apiservice.controller.base.BaseMesController; +import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant; +import cn.estsh.i3plus.pojo.mes.bean.MesSpotCheckOrder; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +@Api("点检单") +@RestController +@RequestMapping(MesCommonConstant.MES_YANFEN + "/mesSpotCheckOrder") +public class MesSpotCheckOrderController extends BaseMesController { + +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentCheckDetailService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentCheckDetailService.java index 05ee7d8..3af9e71 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentCheckDetailService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentCheckDetailService.java @@ -1,13 +1,12 @@ package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; -import cn.estsh.i3plus.ext.mes.api.base.IMesEquipmentCheckDetailService; -import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentCheckDetail; -import cn.estsh.i3plus.pojo.mes.bean.MesPartProdGroup; +import cn.estsh.i3plus.ext.mes.api.base.IBaseMesService; +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentSpotCheckDetail; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @Service @Slf4j -public class MesEquipmentCheckDetailService extends BaseMesService implements IMesEquipmentCheckDetailService { +public class MesEquipmentCheckDetailService extends BaseMesService implements IBaseMesService { } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentCheckService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentCheckService.java deleted file mode 100644 index d517dd1..0000000 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentCheckService.java +++ /dev/null @@ -1,14 +0,0 @@ -package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; - -import cn.estsh.i3plus.ext.mes.api.base.IMesCustomerMessagePointService; -import cn.estsh.i3plus.ext.mes.api.base.IMesEquipmentCheckService; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerMessagePoint; -import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentCheck; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - -@Service -@Slf4j -public class MesEquipmentCheckService extends BaseMesService implements IMesEquipmentCheckService { - -} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentService.java index 90a86fd..8295830 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentService.java @@ -1,9 +1,7 @@ package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; -import cn.estsh.i3plus.ext.mes.api.base.IMesEquipmentCheckService; import cn.estsh.i3plus.ext.mes.api.base.IMesEquitmentService; import cn.estsh.i3plus.pojo.mes.bean.MesEquipment; -import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentCheck; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentSpotCheckService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentSpotCheckService.java new file mode 100644 index 0000000..8eb552e --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesEquipmentSpotCheckService.java @@ -0,0 +1,12 @@ +package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; + +import cn.estsh.i3plus.ext.mes.api.base.IBaseMesService; +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentSpotCheck; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Service +@Slf4j +public class MesEquipmentSpotCheckService extends BaseMesService implements IBaseMesService { + +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSpotCheckOrderPartService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSpotCheckOrderPartService.java new file mode 100644 index 0000000..614c2c2 --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSpotCheckOrderPartService.java @@ -0,0 +1,12 @@ +package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.busi; + +import cn.estsh.i3plus.ext.mes.api.busi.IMesSpotCheckOrderPartService; +import cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base.BaseMesService; +import cn.estsh.i3plus.pojo.mes.bean.MesSpotCheckOrderPart; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Service +@Slf4j +public class MesSpotCheckOrderPartService extends BaseMesService implements IMesSpotCheckOrderPartService { +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSpotCheckOrderResultService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSpotCheckOrderResultService.java new file mode 100644 index 0000000..01d1d9c --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSpotCheckOrderResultService.java @@ -0,0 +1,12 @@ +package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.busi; + +import cn.estsh.i3plus.ext.mes.api.base.IBaseMesService; +import cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base.BaseMesService; +import cn.estsh.i3plus.pojo.mes.bean.MesSpotCheckOrderResult; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Service +@Slf4j +public class MesSpotCheckOrderResultService extends BaseMesService implements IBaseMesService { +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSpotCheckOrderService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSpotCheckOrderService.java new file mode 100644 index 0000000..789fddf --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSpotCheckOrderService.java @@ -0,0 +1,290 @@ +package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.busi; + +import cn.estsh.i3plus.ext.mes.api.base.IBaseMesService; +import cn.estsh.i3plus.ext.mes.api.base.IMesEquipmentSpotCheckService; +import cn.estsh.i3plus.ext.mes.api.busi.IMesSpotCheckOrderPartService; +import cn.estsh.i3plus.ext.mes.api.busi.IMesSpotCheckOrderResultService; +import cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base.BaseMesService; +import cn.estsh.i3plus.ext.mes.pojo.util.MesExtEnumUtil; +import cn.estsh.i3plus.mes.api.iservice.busi.ISyncFuncService; +import cn.estsh.i3plus.platform.common.convert.ConvertBean; +import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; +import cn.estsh.i3plus.pojo.mes.bean.*; +import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; +import cn.estsh.i3plus.pojo.mes.repository.MesEquipmentSpotCheckDetailRepository; +import cn.estsh.i3plus.pojo.mes.repository.MesEquipmentSpotCheckPartRepository; +import cn.estsh.i3plus.pojo.mes.repository.MesSpotCheckOrderPartRepository; +import cn.estsh.i3plus.pojo.mes.repository.MesSpotCheckOrderResultRepository; +import cn.estsh.impp.framework.boot.auth.AuthUtil; +import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; +import cn.estsh.impp.framework.boot.util.ValidatorBean; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; + +import java.util.ArrayList; +import java.util.List; + +@Service +@Slf4j +public class MesSpotCheckOrderService extends BaseMesService implements IBaseMesService { + + + @Autowired + private IMesEquipmentSpotCheckService equipmentSpotCheckService; + @Autowired + private IMesSpotCheckOrderResultService spotCheckOrderResultService; + @Autowired + private MesSpotCheckOrderResultRepository spotCheckOrderResultRepository; + @Autowired + private IMesSpotCheckOrderPartService spotCheckOrderPartService; + + @Autowired + private MesSpotCheckOrderPartRepository spotCheckOrderPartRepository; + + @Autowired + private MesEquipmentSpotCheckDetailRepository equipmentSpotCheckDetailRepository; + + @Autowired + private MesEquipmentSpotCheckPartRepository equipmentSpotCheckPartRepository; + + @Autowired + private ISyncFuncService syncFuncService; + + @Override + public MesSpotCheckOrder insert(MesSpotCheckOrder bean) { + onInsertBean(bean); + + //查询点检方案 点检单点检方案 spotCheckId-id关联 + MesEquipmentSpotCheck equipmentSpotCheck = equipmentSpotCheckService.get(bean.getSpotCheckId()); + + if (StringUtils.isEmpty(equipmentSpotCheck)) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("【%s】点检方案不存在,请检查数据", bean.getSpotCheckId()) + .build(); + } + + //查询点检明细 主表明细表 spotCheckId-pid关联 + DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode()); + DdlPreparedPack.getNumberBiggerEqualPack(bean.getSpotCheckId(), "pid", packBean); + List detailList = equipmentSpotCheckDetailRepository.findByHqlWhere(packBean); + + if (CollectionUtils.isEmpty(detailList)) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("【%s】点检方案明细不存在,请检查数据", bean.getSpotCheckId()) + .build(); + } + + //查询点检零件 主表零件表 spotCheckId-pid关联 + List equipmentSpotCheckPartList = equipmentSpotCheckPartRepository.findByHqlWhere(packBean); + + if (CollectionUtils.isEmpty(equipmentSpotCheckPartList) && + equipmentSpotCheck.getSpotCheckOrderType() == MesExtEnumUtil.SPOT_CHECK_ORDER_TYPE.FIRST_PRODUCT_INSPECTION.getValue()) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("【%s】点检方案类型为【%s】配置零件号为空,请检查数据", bean.getSpotCheckId(), MesExtEnumUtil.SPOT_CHECK_ORDER_TYPE.FIRST_PRODUCT_INSPECTION.getDescription()) + .build(); + } + + //生成单据号 + GenSerialNoModel genSerialNoModel = new GenSerialNoModel(); + List resultList = syncFuncService.syncSerialNo(genSerialNoModel, bean.getCreateUser(), bean.getOrganizeCode(), 1).getResultList(); + + //保存单据 + BeanUtils.copyProperties(equipmentSpotCheck, bean, "id"); + bean.setSpotCheckOrderNo(resultList.get(0)); +// ConvertBean.serviceModelInitialize(bean, AuthUtil.getSessionUser().getUserName()); + bean = baseRDao.insert(bean); + + //保存单据明细 + List spotCheckOrderResults = new ArrayList<>(); + MesSpotCheckOrder finalBean = bean; + detailList.forEach(k -> { + MesSpotCheckOrderResult result = new MesSpotCheckOrderResult(); + BeanUtils.copyProperties(k, result, "id"); + result.setPid(finalBean.getId()); + ConvertBean.serviceModelInitialize(result, AuthUtil.getSessionUser().getUserName()); +// ConvertBean.serviceModelInitialize(result, "LML"); + spotCheckOrderResults.add(result); + }); + + //保存单据零件 + if (!CollectionUtils.isEmpty(equipmentSpotCheckPartList)) { + + List spotCheckOrderPartList = new ArrayList<>(); + equipmentSpotCheckPartList.forEach(k -> { + MesSpotCheckOrderPart spotCheckOrderPart = new MesSpotCheckOrderPart(); + spotCheckOrderPart.setSpotCheckOrderId(finalBean.getId()); + BeanUtils.copyProperties(k, spotCheckOrderPart, "id"); +// ConvertBean.serviceModelInitialize(spotCheckOrderPart, AuthUtil.getSessionUser().getUserName()); + ConvertBean.serviceModelInitialize(spotCheckOrderPart, "LML"); + spotCheckOrderPartList.add(spotCheckOrderPart); + }); + spotCheckOrderPartService.insertBatch(spotCheckOrderPartList); + } + + spotCheckOrderResultService.insertBatch(spotCheckOrderResults); + + return bean; + } + + @Override + public MesSpotCheckOrder update(MesSpotCheckOrder bean) { + onUpdateBean(bean); + //获取点检单 + MesSpotCheckOrder originBean = baseRDao.getById(bean.getId()); + + //获取点检单明细 + DdlPackBean orderResultPackBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode()); + DdlPreparedPack.getNumEqualPack(bean.getId(), "pid", orderResultPackBean); + List oldOrderResultList = spotCheckOrderResultRepository.findByHqlWhere(orderResultPackBean); + + //软删点检单明细 + oldOrderResultList.forEach(k -> { + k.setIsDeleted(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + ConvertBean.serviceModelUpdate(k, AuthUtil.getSessionUser().getUserName()); + }); + spotCheckOrderResultRepository.saveAll(oldOrderResultList); + + //获取点检单零件号 + List oldOrderPartList = spotCheckOrderPartRepository.findByHqlWhere(orderResultPackBean); + + //软删点检单零件号及条码 + oldOrderPartList.forEach(k -> { + k.setIsDeleted(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + ConvertBean.serviceModelUpdate(k, AuthUtil.getSessionUser().getUserName()); + }); + spotCheckOrderPartRepository.saveAll(oldOrderPartList); + + //获取点检方案 点检单点检方案 spotCheckId-id关联 + MesEquipmentSpotCheck equipmentSpotCheck = equipmentSpotCheckService.get(bean.getSpotCheckId()); + + if (StringUtils.isEmpty(equipmentSpotCheck)) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("【%s】点检方案不存在,请检查数据", bean.getSpotCheckId()) + .build(); + } + + //获取点检方案明细 主表明细表 spotCheckId-pid关联 + DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode()); + DdlPreparedPack.getNumberBiggerEqualPack(bean.getSpotCheckId(), "pid", packBean); + List detailList = equipmentSpotCheckDetailRepository.findByHqlWhere(packBean); + + if (CollectionUtils.isEmpty(detailList)) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("【%s】点检方案明细不存在,请检查数据", bean.getSpotCheckId()) + .build(); + } + + //获取点检方案零件 主表零件表 spotCheckId-pid关联 + List equipmentSpotCheckPartList = equipmentSpotCheckPartRepository.findByHqlWhere(packBean); + + if (CollectionUtils.isEmpty(equipmentSpotCheckPartList) && + equipmentSpotCheck.getSpotCheckOrderType() == MesExtEnumUtil.SPOT_CHECK_ORDER_TYPE.FIRST_PRODUCT_INSPECTION.getValue()) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("【%s】点检方案类型为【%s】配置零件号为空,请检查数据", bean.getSpotCheckId(), MesExtEnumUtil.SPOT_CHECK_ORDER_TYPE.FIRST_PRODUCT_INSPECTION.getDescription()) + .build(); + } + + List spotCheckOrderResults = new ArrayList<>(); + MesSpotCheckOrder finalBean = bean; + detailList.forEach(k -> { + MesSpotCheckOrderResult result = new MesSpotCheckOrderResult(); + BeanUtils.copyProperties(k, result, "id"); + result.setPid(finalBean.getId()); + ConvertBean.serviceModelInitialize(result, AuthUtil.getSessionUser().getUserName()); + spotCheckOrderResults.add(result); + }); + + if (!CollectionUtils.isEmpty(equipmentSpotCheckPartList)) { + + List spotCheckOrderPartList = new ArrayList<>(); + equipmentSpotCheckPartList.forEach(k -> { + MesSpotCheckOrderPart spotCheckOrderPart = new MesSpotCheckOrderPart(); + spotCheckOrderPart.setSpotCheckOrderId(finalBean.getId()); + BeanUtils.copyProperties(k, spotCheckOrderPart, "id"); + ConvertBean.serviceModelInitialize(spotCheckOrderPart, AuthUtil.getSessionUser().getUserName()); + spotCheckOrderPartList.add(spotCheckOrderPart); + }); + spotCheckOrderPartService.insertBatch(spotCheckOrderPartList); + } + + + spotCheckOrderResultService.insertBatch(spotCheckOrderResults); + ConvertBean.serviceModelUpdate(bean, AuthUtil.getSessionUser().getUserName()); + baseRDao.update(bean); + return originBean; + } + + @Override + public void deleteWeaklyByIds(Long[] ids, String userName) { + + for (Long id : ids) { + MesSpotCheckOrder bean = baseRDao.getById(id); + if (StringUtils.isEmpty(bean)) continue; + //获取点检方案明细 + DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode()); + DdlPreparedPack.getNumberBiggerEqualPack(bean.getSpotCheckId(), "pid", packBean); + List detailList = equipmentSpotCheckDetailRepository.findByHqlWhere(packBean); + detailList.forEach(k -> { + k.setIsDeleted(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + ConvertBean.serviceModelUpdate(k, AuthUtil.getSessionUser().getUserName()); + }); + equipmentSpotCheckDetailRepository.saveAll(detailList); + + //获取点检方案零件 主表零件表 spotCheckId-pid关联 + List equipmentSpotCheckPartList = equipmentSpotCheckPartRepository.findByHqlWhere(packBean); + + if (CollectionUtils.isEmpty(equipmentSpotCheckPartList)) { + equipmentSpotCheckPartList.forEach(k -> { + k.setIsDeleted(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + ConvertBean.serviceModelUpdate(k, AuthUtil.getSessionUser().getUserName()); + }); + equipmentSpotCheckPartRepository.saveAll(equipmentSpotCheckPartList); + } + + } + } + + protected void onInsertBean(MesSpotCheckOrder bean) { + + // 数据校验 + ValidatorBean.checkNotNull(bean.getSpotCheckId(), "点检方案不能为空"); + + DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode()); + DdlPreparedPack.getNumEqualPack(bean.getSpotCheckId(), "spotCheckId", packBean); + DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.SPOT_CHECK_ORDER_STATUS.CREATE.getValue(), "status", packBean); + boolean flg = baseRDao.isExitByHql(packBean); + if (flg) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("存在相同配置状态为【%s】 id:【%s】的点检单,请检查数据", MesExtEnumUtil.SPOT_CHECK_ORDER_STATUS.CREATE.getDescription(), bean.getSpotCheckId()) + .build(); + } + } + + protected void onUpdateBean(MesSpotCheckOrder bean) { + + // 数据校验 + ValidatorBean.checkNotNull(bean.getSpotCheckId(), "点检方案不能为空"); + } + +} diff --git a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtEnumUtil.java b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtEnumUtil.java index d14c0ab..633c5b3 100644 --- a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtEnumUtil.java +++ b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtEnumUtil.java @@ -2119,4 +2119,88 @@ public class MesExtEnumUtil { } } + /** + * 设备加工参数维护-数据来源 + */ + @JsonFormat( + shape = JsonFormat.Shape.OBJECT + ) + public static enum SPOT_CHECK_ORDER_STATUS { + CREATE(10, "创建"), + COMPLETE(20, "完成"), + CLOSE(30, "关闭"); + + private int value; + private String description; + + private SPOT_CHECK_ORDER_STATUS(int value, String description) { + this.value = value; + this.description = description; + } + + public static String valueOfDescription(int val) { + String tmp = null; + + for (int i = 0; i < values().length; ++i) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + + return tmp; + } + + public int getValue() { + return this.value; + } + + public String getDescription() { + return this.description; + } + } + + /** + * 设备加工参数维护-数据来源 + */ + @JsonFormat( + shape = JsonFormat.Shape.OBJECT + ) + public static enum SPOT_CHECK_ORDER_TYPE { + PROCESS_PARAMETER_INSPECTION(1, "⼯艺参数点检"), + EQUIPMENT_INSPECTION(2, "设备点检"), + FIRST_PRODUCT_INSPECTION(3, "产品首检"), + ERROR_PROOF_VERIFICATION(4, "防错验证"), + MOLD_INSPECTION(5, "模具点检"), + ASSEMBLY_INSPECTION(6, "⼯装点检"), + SPECIAL_INSPECTION(7, "专检"); + + private int value; + private String description; + + private SPOT_CHECK_ORDER_TYPE(int value, String description) { + this.value = value; + this.description = description; + } + + public static String valueOfDescription(int val) { + String tmp = null; + + for (int i = 0; i < values().length; ++i) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + + return tmp; + } + + public int getValue() { + return this.value; + } + + public String getDescription() { + return this.description; + } + } + }