diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesProdShiftRecordService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesProdShiftRecordService.java index 916441d..c991c58 100644 --- a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesProdShiftRecordService.java +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesProdShiftRecordService.java @@ -10,4 +10,6 @@ import cn.estsh.i3plus.pojo.mes.bean.MesProdShiftRecord; * @Modify: */ public interface IMesProdShiftRecordService extends IBaseMesService { + + MesProdShiftRecord queryMesProdShiftRecord(MesProdShiftRecord mesProdShiftRecord); } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesProdShiftRecordController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesProdShiftRecordController.java index 5328f7f..8508813 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesProdShiftRecordController.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesProdShiftRecordController.java @@ -1,10 +1,20 @@ package cn.estsh.i3plus.ext.mes.apiservice.controller.base; +import cn.estsh.i3plus.ext.mes.api.base.IMesProdShiftRecordService; +import cn.estsh.i3plus.ext.mes.apiservice.config.AuthUtilExt; import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant; +import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.mes.bean.MesProdShiftRecord; +import cn.estsh.impp.framework.boot.exception.ImppBusiException; +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; +import java.util.List; + /** * @Description: 开关班记录 * @Author: gsz @@ -14,4 +24,23 @@ import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping(MesCommonConstant.MES_YANFEN + "/mesProdShiftRecord") public class MesProdShiftRecordController extends BaseMesController{ + + @Autowired + private IMesProdShiftRecordService prodShiftRecordService; + + @GetMapping(value = "/query-prod-shift-record") + @ApiOperation(value = "查询零件生产组") + public ResultBean queryMesProdShiftRecord(MesProdShiftRecord mesProdShiftRecord) { + try { + mesProdShiftRecord.setOrganizeCode(AuthUtilExt.getOrganizeCode()); + //查询汇总工单数量 + MesProdShiftRecord mesPartProdGroup= prodShiftRecordService.queryMesProdShiftRecord(mesProdShiftRecord); + return ResultBean.success("查询成功") + .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(mesPartProdGroup); + } catch (ImppBusiException e) { + return ResultBean.fail(e).build(); + } catch (Exception e) { + return ResultBean.fail(e); + } + } } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/BaseMesService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/BaseMesService.java index 28d88ff..2c3002e 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/BaseMesService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/BaseMesService.java @@ -53,7 +53,7 @@ public abstract class BaseMesService implements IBaseMesServ @Override public ListPager queryPager(T bean, Pager pager) { DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode(), bean.getIsValid()); - DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"createDatetime"}, packBean); + DdlPreparedPack.getOrderBy(bean.getOrderByParam(), bean.getAscOrDesc(), packBean); setPackQueryBean(bean, packBean); pager = PagerHelper.getPager(pager, baseRDao.findByHqlWhereCount(packBean)); List list = baseRDao.findByHqlWherePage(packBean, pager); diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesCustomerPartService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesCustomerPartService.java index 27c9bf2..5587012 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesCustomerPartService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesCustomerPartService.java @@ -34,11 +34,10 @@ public class MesCustomerPartService extends BaseMesService impl private MesCustomerCarModelDetailRepository mesCustomerCarModelDetailRDao; protected void setPackQueryBean(MesCustomerPart bean, DdlPackBean packBean) { - DdlPreparedPack.getStringEqualPack(bean.getCustPartNo(), "customerPartNo", packBean); - DdlPreparedPack.getStringLikerPack(bean.getErpPartNo(), "erpPartNo", packBean); + DdlPreparedPack.getStringEqualPack(bean.getCustPartNo(), "custPartNo", packBean); + DdlPreparedPack.getStringEqualPack(bean.getErpPartNo(), "erpPartNo", packBean); DdlPreparedPack.getStringLikerPack(bean.getErpPartName(), "erpPartName", packBean); - DdlPreparedPack.getStringLikerPack(bean.getCustCode(), "customerCode", packBean); - + DdlPreparedPack.getStringEqualPack(bean.getCustCode(), "custCode", packBean); } protected void onInsertBean(MesCustomerPart item) { @@ -48,9 +47,9 @@ public class MesCustomerPartService extends BaseMesService impl ValidatorBean.checkNotNull(item.getCustPartNo(), "客户零件号不能为空"); DdlPackBean cellBinPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(item.getCustCode(), "customerCode", cellBinPackBean); + DdlPreparedPack.getStringEqualPack(item.getCustCode(), "custCode", cellBinPackBean); DdlPreparedPack.getStringEqualPack(item.getErpPartNo(), "erpPartNo", cellBinPackBean); - DdlPreparedPack.getStringEqualPack(item.getCustPartNo(), "customerPartNo", cellBinPackBean); + DdlPreparedPack.getStringEqualPack(item.getCustPartNo(), "custPartNo", cellBinPackBean); boolean flg = baseRDao.isExitByHql(cellBinPackBean); if (flg) { throw ImppExceptionBuilder.newInstance() @@ -70,7 +69,7 @@ public class MesCustomerPartService extends BaseMesService impl ValidatorBean.checkNotNull(item.getCustPartNo(), "客户零件号不能为空"); DdlPackBean cellBinPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(item.getCustCode(), "customerCode", cellBinPackBean); + DdlPreparedPack.getStringEqualPack(item.getCustCode(), "custCode", cellBinPackBean); DdlPreparedPack.getStringEqualPack(item.getPartNo(), "partNo", cellBinPackBean); DdlPreparedPack.getStringEqualPack(item.getCustPartNo(), "custPartNo", cellBinPackBean); DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", cellBinPackBean); @@ -97,7 +96,7 @@ public class MesCustomerPartService extends BaseMesService impl } List customerPartNoList = mesCustomerCarModelDetails.stream().map(MesCustomerCarModelDetail::getCustomerPartNo).collect(Collectors.toList()); ddlPackBean = DdlPackBean.getDdlPackBean(mesPartProdGroupDetail.getOrganizeCode()); - DdlPreparedPack.getInPackList(customerPartNoList, "customerPartNo", ddlPackBean); + DdlPreparedPack.getInPackList(customerPartNoList, "custPartNo", ddlPackBean); return baseRDao.findByHqlWhere(ddlPackBean); } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartProdGroupService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartProdGroupService.java index b1a3d9b..a975a12 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartProdGroupService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartProdGroupService.java @@ -50,7 +50,7 @@ public class MesPartProdGroupService extends BaseMesService im DdlPreparedPack.getStringEqualPack(bean.getPartProdGroupCode(), "partProdGroupCode", packBean); DdlPreparedPack.getStringLikerPack(bean.getPartProdGroupName(), "partProdGroupName", packBean); DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean); - + DdlPreparedPack.getStringEqualPack(bean.getCustCode(), "custCode", packBean); } @Override diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesProdShiftRecordServiceImpl.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesProdShiftRecordServiceImpl.java index 86c4417..e540958 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesProdShiftRecordServiceImpl.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesProdShiftRecordServiceImpl.java @@ -8,10 +8,7 @@ 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.base.util.StringUtil; -import cn.estsh.i3plus.pojo.mes.bean.MesCcscTask; -import cn.estsh.i3plus.pojo.mes.bean.MesEnumDetail; -import cn.estsh.i3plus.pojo.mes.bean.MesProdShiftRecord; -import cn.estsh.i3plus.pojo.mes.bean.MesWorkOrder; +import cn.estsh.i3plus.pojo.mes.bean.*; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.util.ValidatorBean; @@ -34,6 +31,7 @@ public class MesProdShiftRecordServiceImpl extends BaseMesService implements IMesShi LocalTime endTime = LocalTime.of(Integer.parseInt(end[0]), Integer.parseInt(end[1]), Integer.parseInt(end[2])); // 计算时间间隔 - long totalMinutes; + long hoursDifference = ChronoUnit.HOURS.between(startTime, endTime); + + // 由于时间跨越了午夜,我们需要手动计算实际的小时差 if (endTime.isBefore(startTime)) { - // 如果结束时间在起始时间之前,说明跨越了午夜 - totalMinutes = ChronoUnit.MINUTES.between(startTime, LocalTime.MAX) - + ChronoUnit.MINUTES.between(LocalTime.MIN, endTime); - } else { - totalMinutes = ChronoUnit.MINUTES.between(startTime, endTime); + // 计算从开始时间到午夜的小时数 + long hoursToMidnight = ChronoUnit.HOURS.between(startTime, LocalTime.MAX); + // 计算从午夜到结束时间的小时数 + long hoursFromMidnight = ChronoUnit.HOURS.between(LocalTime.MIN, endTime); + // 将两部分小时数相加 + hoursDifference = hoursToMidnight + hoursFromMidnight + 1; } - - // 计算小时 - return (double)(totalMinutes / 60); + return (double) hoursDifference; } } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkCellExtendCfgService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkCellExtendCfgService.java index ed0bb75..71a1bf3 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkCellExtendCfgService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkCellExtendCfgService.java @@ -14,6 +14,12 @@ import org.springframework.stereotype.Service; public class MesWorkCellExtendCfgService extends BaseMesService implements IMesWorkCellExtendCfgService { + @Override + protected void setPackQueryBean(MesWorkCellExtendCfg bean, DdlPackBean packBean) { + DdlPreparedPack.getStringEqualPack(bean.getWorkCellCode(), "workCellCode", packBean); + DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean); + } + protected void onInsertBean(MesWorkCellExtendCfg item) { // 数据校验 ValidatorBean.checkNotNull(item.getWorkCenterCode(), "产线不能为空"); diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/excel/MesCustomerCarModelExcelService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/excel/MesCustomerCarModelExcelService.java index c2391f7..4fc7f9c 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/excel/MesCustomerCarModelExcelService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/excel/MesCustomerCarModelExcelService.java @@ -95,7 +95,7 @@ public class MesCustomerCarModelExcelService implements IExcelImportService { // 查询客户零件关系 Map customerPartMap; try { - customerPartMap = MesCommonUtil.getCodeEntityMap(customerPartRepository, "customerPartNo", organizeCode, "客户零件关系表"); + customerPartMap = MesCommonUtil.getCodeEntityMap(customerPartRepository, "custPartNo", organizeCode, "客户零件关系表"); } catch (Exception e) { customerPartMap = null; }