diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/report/IMesYfReportService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/report/IMesYfReportService.java index 1cf7195..373322f 100644 --- a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/report/IMesYfReportService.java +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/report/IMesYfReportService.java @@ -4,6 +4,8 @@ import cn.estsh.i3plus.ext.mes.pojo.model.report.MesDeviceDataQueryReportConditi import cn.estsh.i3plus.ext.mes.pojo.model.report.MesDeviceDataQueryReportResultModel; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; +import cn.estsh.i3plus.pojo.mes.bean.MesWorkCellExtendCfg; /** * @Description : 报表-业务方法 @@ -22,4 +24,5 @@ public interface IMesYfReportService { */ ListPager queryMesDeviceDataByPager(MesDeviceDataQueryReportConditionModel queryReportModel, Pager pager); + ListPager queryMesSuspiciousSnMsgByPager(MesProduceSn mesProduceSn, Pager pager); } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/MesReportBusiController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/MesReportBusiController.java new file mode 100644 index 0000000..4d56c75 --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/MesReportBusiController.java @@ -0,0 +1,46 @@ +package cn.estsh.i3plus.ext.mes.apiservice.controller.busi; + +import cn.estsh.i3plus.ext.mes.api.busi.report.IMesYfReportService; +import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant; +import cn.estsh.i3plus.pojo.base.bean.ListPager; +import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; +import cn.estsh.impp.framework.boot.exception.ImppBusiException; +import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; +import cn.estsh.impp.framework.boot.util.ResultBean; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +/** + * @Description: 报表 + * @Author: gsz + * @Date: 2024/6/17 15:16 + * @Modify: + */ +@RestController +@RequestMapping(MesCommonConstant.MES_YANFEN + "/report") +public class MesReportBusiController { + + @Autowired + private IMesYfReportService mesYfReportService; + + @GetMapping("/query-suspicious-sn") + @ApiOperation(value = "分页查询可疑品条码信息") + public ResultBean queryMesSuspiciousSnMsgByPager(MesProduceSn mesProduceSn, Pager pager) { + try { + + ListPager mesWorkCellExtendCfgByPager = mesYfReportService.queryMesSuspiciousSnMsgByPager(mesProduceSn, pager); + return ResultBean.success("查询主子工位关系成功").setListPager(mesWorkCellExtendCfgByPager); + } catch (ImppBusiException imppException) { + return ResultBean.fail(imppException); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/report/MesYfReportServiceImpl.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/report/MesYfReportServiceImpl.java index 3f77032..40344f7 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/report/MesYfReportServiceImpl.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/report/MesYfReportServiceImpl.java @@ -4,11 +4,20 @@ import cn.estsh.i3plus.ext.mes.api.busi.report.IMesYfReportService; import cn.estsh.i3plus.ext.mes.apiservice.dao.report.IMesYfReportDao; import cn.estsh.i3plus.ext.mes.pojo.model.report.MesDeviceDataQueryReportConditionModel; import cn.estsh.i3plus.ext.mes.pojo.model.report.MesDeviceDataQueryReportResultModel; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.base.common.PagerHelper; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; +import cn.estsh.i3plus.pojo.base.util.StringUtil; +import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; +import cn.estsh.i3plus.pojo.mes.repository.MesProduceSnRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** * @Description : 报表-业务方法实现 * @Reference : @@ -21,10 +30,32 @@ public class MesYfReportServiceImpl implements IMesYfReportService { @Autowired private IMesYfReportDao mesYfReportDao; + @Autowired + private MesProduceSnRepository mesProduceSnRDao; @Override public ListPager queryMesDeviceDataByPager(MesDeviceDataQueryReportConditionModel queryReportModel, Pager pager) { return mesYfReportDao.queryMesDeviceDataByPager(queryReportModel, pager); } + @Override + public ListPager queryMesSuspiciousSnMsgByPager(MesProduceSn bean, Pager pager) { + DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(bean.getPartNo(), "partNo", packBean); + DdlPreparedPack.getStringLikerPack(bean.getPartName(), "partName", packBean); + DdlPreparedPack.getNumEqualPack(bean.getQcStatus(), "qcStatus", packBean); + DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean); + DdlPreparedPack.getStringEqualPack(bean.getProductSn(), "productSn", packBean); + DdlPreparedPack.getStringEqualPack(bean.getLotNo(), "lotNo", packBean); + if(!StringUtil.isEmpty(bean.orderBy())){ + packBean.setOrderByStr(bean.orderBy()); + }else { + DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"createDatetime"}, packBean); + } + pager = PagerHelper.getPager(pager, mesProduceSnRDao.findByHqlWhereCount(packBean)); + + List resultList = mesProduceSnRDao.findByHqlWherePage(packBean, pager); + + return new ListPager<>(resultList, pager); + } }