Merge remote-tracking branch 'origin/dev' into dev

tags/yfai-mes-ext-v1.0
LML丶 11 months ago
commit ad5889f96e

@ -10,4 +10,6 @@ import cn.estsh.i3plus.pojo.mes.bean.MesProdShiftRecord;
* @Modify: * @Modify:
*/ */
public interface IMesProdShiftRecordService extends IBaseMesService<MesProdShiftRecord> { public interface IMesProdShiftRecordService extends IBaseMesService<MesProdShiftRecord> {
MesProdShiftRecord queryMesProdShiftRecord(MesProdShiftRecord mesProdShiftRecord);
} }

@ -1,10 +1,20 @@
package cn.estsh.i3plus.ext.mes.apiservice.controller.base; 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.ext.mes.pojo.constant.MesCommonConstant;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.mes.bean.MesProdShiftRecord; 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.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* @Description: * @Description:
* @Author: gsz * @Author: gsz
@ -14,4 +24,23 @@ import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@RequestMapping(MesCommonConstant.MES_YANFEN + "/mesProdShiftRecord") @RequestMapping(MesCommonConstant.MES_YANFEN + "/mesProdShiftRecord")
public class MesProdShiftRecordController extends BaseMesController<MesProdShiftRecord>{ public class MesProdShiftRecordController extends BaseMesController<MesProdShiftRecord>{
@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);
}
}
} }

@ -53,7 +53,7 @@ public abstract class BaseMesService<T extends BaseBean> implements IBaseMesServ
@Override @Override
public ListPager<T> queryPager(T bean, Pager pager) { public ListPager<T> queryPager(T bean, Pager pager) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode(), bean.getIsValid()); 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); setPackQueryBean(bean, packBean);
pager = PagerHelper.getPager(pager, baseRDao.findByHqlWhereCount(packBean)); pager = PagerHelper.getPager(pager, baseRDao.findByHqlWhereCount(packBean));
List<T> list = baseRDao.findByHqlWherePage(packBean, pager); List<T> list = baseRDao.findByHqlWherePage(packBean, pager);

@ -34,11 +34,10 @@ public class MesCustomerPartService extends BaseMesService<MesCustomerPart> impl
private MesCustomerCarModelDetailRepository mesCustomerCarModelDetailRDao; private MesCustomerCarModelDetailRepository mesCustomerCarModelDetailRDao;
protected void setPackQueryBean(MesCustomerPart bean, DdlPackBean packBean) { protected void setPackQueryBean(MesCustomerPart bean, DdlPackBean packBean) {
DdlPreparedPack.getStringEqualPack(bean.getCustPartNo(), "customerPartNo", packBean); DdlPreparedPack.getStringEqualPack(bean.getCustPartNo(), "custPartNo", packBean);
DdlPreparedPack.getStringLikerPack(bean.getErpPartNo(), "erpPartNo", packBean); DdlPreparedPack.getStringEqualPack(bean.getErpPartNo(), "erpPartNo", packBean);
DdlPreparedPack.getStringLikerPack(bean.getErpPartName(), "erpPartName", packBean); DdlPreparedPack.getStringLikerPack(bean.getErpPartName(), "erpPartName", packBean);
DdlPreparedPack.getStringLikerPack(bean.getCustCode(), "customerCode", packBean); DdlPreparedPack.getStringEqualPack(bean.getCustCode(), "custCode", packBean);
} }
protected void onInsertBean(MesCustomerPart item) { protected void onInsertBean(MesCustomerPart item) {
@ -48,9 +47,9 @@ public class MesCustomerPartService extends BaseMesService<MesCustomerPart> impl
ValidatorBean.checkNotNull(item.getCustPartNo(), "客户零件号不能为空"); ValidatorBean.checkNotNull(item.getCustPartNo(), "客户零件号不能为空");
DdlPackBean cellBinPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); 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.getErpPartNo(), "erpPartNo", cellBinPackBean);
DdlPreparedPack.getStringEqualPack(item.getCustPartNo(), "customerPartNo", cellBinPackBean); DdlPreparedPack.getStringEqualPack(item.getCustPartNo(), "custPartNo", cellBinPackBean);
boolean flg = baseRDao.isExitByHql(cellBinPackBean); boolean flg = baseRDao.isExitByHql(cellBinPackBean);
if (flg) { if (flg) {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
@ -70,7 +69,7 @@ public class MesCustomerPartService extends BaseMesService<MesCustomerPart> impl
ValidatorBean.checkNotNull(item.getCustPartNo(), "客户零件号不能为空"); ValidatorBean.checkNotNull(item.getCustPartNo(), "客户零件号不能为空");
DdlPackBean cellBinPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); 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.getPartNo(), "partNo", cellBinPackBean);
DdlPreparedPack.getStringEqualPack(item.getCustPartNo(), "custPartNo", cellBinPackBean); DdlPreparedPack.getStringEqualPack(item.getCustPartNo(), "custPartNo", cellBinPackBean);
DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", cellBinPackBean); DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", cellBinPackBean);
@ -97,7 +96,7 @@ public class MesCustomerPartService extends BaseMesService<MesCustomerPart> impl
} }
List<String> customerPartNoList = mesCustomerCarModelDetails.stream().map(MesCustomerCarModelDetail::getCustomerPartNo).collect(Collectors.toList()); List<String> customerPartNoList = mesCustomerCarModelDetails.stream().map(MesCustomerCarModelDetail::getCustomerPartNo).collect(Collectors.toList());
ddlPackBean = DdlPackBean.getDdlPackBean(mesPartProdGroupDetail.getOrganizeCode()); ddlPackBean = DdlPackBean.getDdlPackBean(mesPartProdGroupDetail.getOrganizeCode());
DdlPreparedPack.getInPackList(customerPartNoList, "customerPartNo", ddlPackBean); DdlPreparedPack.getInPackList(customerPartNoList, "custPartNo", ddlPackBean);
return baseRDao.findByHqlWhere(ddlPackBean); return baseRDao.findByHqlWhere(ddlPackBean);
} }

@ -50,7 +50,7 @@ public class MesPartProdGroupService extends BaseMesService<MesPartProdGroup> im
DdlPreparedPack.getStringEqualPack(bean.getPartProdGroupCode(), "partProdGroupCode", packBean); DdlPreparedPack.getStringEqualPack(bean.getPartProdGroupCode(), "partProdGroupCode", packBean);
DdlPreparedPack.getStringLikerPack(bean.getPartProdGroupName(), "partProdGroupName", packBean); DdlPreparedPack.getStringLikerPack(bean.getPartProdGroupName(), "partProdGroupName", packBean);
DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean); DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean);
DdlPreparedPack.getStringEqualPack(bean.getCustCode(), "custCode", packBean);
} }
@Override @Override

@ -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.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.base.util.StringUtil; import cn.estsh.i3plus.pojo.base.util.StringUtil;
import cn.estsh.i3plus.pojo.mes.bean.MesCcscTask; import cn.estsh.i3plus.pojo.mes.bean.*;
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.util.MesExtEnumUtil; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.util.ValidatorBean; import cn.estsh.impp.framework.boot.util.ValidatorBean;
@ -34,6 +31,7 @@ public class MesProdShiftRecordServiceImpl extends BaseMesService<MesProdShiftRe
DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean); DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean);
DdlPreparedPack.getStringEqualPack(bean.getShiftGroup(), "shiftGroup", packBean); DdlPreparedPack.getStringEqualPack(bean.getShiftGroup(), "shiftGroup", packBean);
DdlPreparedPack.getStringEqualPack(bean.getShiftCode(), "shiftCode", packBean); DdlPreparedPack.getStringEqualPack(bean.getShiftCode(), "shiftCode", packBean);
packBean.setOrderByStr(bean.orderBy());
} }
@Override @Override
public MesProdShiftRecord insert(MesProdShiftRecord item) { public MesProdShiftRecord insert(MesProdShiftRecord item) {
@ -44,6 +42,17 @@ public class MesProdShiftRecordServiceImpl extends BaseMesService<MesProdShiftRe
} }
return baseRDao.insert(item); return baseRDao.insert(item);
} }
@Override
public MesProdShiftRecord queryMesProdShiftRecord(MesProdShiftRecord bean) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean);
DdlPreparedPack.getStringEqualPack(bean.getShiftGroup(), "shiftGroup", packBean);
packBean.setOrderByStr(bean.orderBy());
return baseRDao.getByProperty(packBean);
}
@Override @Override
protected void onInsertBean(MesProdShiftRecord item) { protected void onInsertBean(MesProdShiftRecord item) {
// 数据校验 // 数据校验

@ -30,6 +30,8 @@ public class MesShiftGroupCenterCfgService extends BaseMesService<MesShiftGroupC
protected void setPackQueryBean(MesShiftGroupCenterCfg bean, DdlPackBean packBean) { protected void setPackQueryBean(MesShiftGroupCenterCfg bean, DdlPackBean packBean) {
DdlPreparedPack.getStringEqualPack(bean.getShiftGroup(), "shiftGroup", packBean); DdlPreparedPack.getStringEqualPack(bean.getShiftGroup(), "shiftGroup", packBean);
DdlPreparedPack.getStringLikerPack(bean.getShiftGroupName(), "shiftGroupName", packBean); DdlPreparedPack.getStringLikerPack(bean.getShiftGroupName(), "shiftGroupName", packBean);
DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean);
DdlPreparedPack.getStringLikerPack(bean.getWorkCenterName(), "workCenterName", packBean);
} }

@ -119,16 +119,17 @@ public class MesShiftService extends BaseMesService<MesShift> implements IMesShi
LocalTime endTime = LocalTime.of(Integer.parseInt(end[0]), Integer.parseInt(end[1]), Integer.parseInt(end[2])); 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)) { if (endTime.isBefore(startTime)) {
// 如果结束时间在起始时间之前,说明跨越了午夜 // 计算从开始时间到午夜的小时数
totalMinutes = ChronoUnit.MINUTES.between(startTime, LocalTime.MAX) long hoursToMidnight = ChronoUnit.HOURS.between(startTime, LocalTime.MAX);
+ ChronoUnit.MINUTES.between(LocalTime.MIN, endTime); // 计算从午夜到结束时间的小时数
} else { long hoursFromMidnight = ChronoUnit.HOURS.between(LocalTime.MIN, endTime);
totalMinutes = ChronoUnit.MINUTES.between(startTime, endTime); // 将两部分小时数相加
hoursDifference = hoursToMidnight + hoursFromMidnight + 1;
} }
return (double) hoursDifference;
// 计算小时
return (double)(totalMinutes / 60);
} }
} }

@ -14,6 +14,12 @@ import org.springframework.stereotype.Service;
public class MesWorkCellExtendCfgService extends BaseMesService<MesWorkCellExtendCfg> implements IMesWorkCellExtendCfgService { public class MesWorkCellExtendCfgService extends BaseMesService<MesWorkCellExtendCfg> 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) { protected void onInsertBean(MesWorkCellExtendCfg item) {
// 数据校验 // 数据校验
ValidatorBean.checkNotNull(item.getWorkCenterCode(), "产线不能为空"); ValidatorBean.checkNotNull(item.getWorkCenterCode(), "产线不能为空");

@ -95,7 +95,7 @@ public class MesCustomerCarModelExcelService implements IExcelImportService {
// 查询客户零件关系 // 查询客户零件关系
Map<String, Object> customerPartMap; Map<String, Object> customerPartMap;
try { try {
customerPartMap = MesCommonUtil.getCodeEntityMap(customerPartRepository, "customerPartNo", organizeCode, "客户零件关系表"); customerPartMap = MesCommonUtil.getCodeEntityMap(customerPartRepository, "custPartNo", organizeCode, "客户零件关系表");
} catch (Exception e) { } catch (Exception e) {
customerPartMap = null; customerPartMap = null;
} }

Loading…
Cancel
Save