把拉动单打印产线 拉动组多选

tags/yfai-pcn-ext-v2.3
gsz 8 months ago
parent 03bf31ef50
commit 430d3556da

@ -20,9 +20,9 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
*
*
*/
@Api("拉动")
@Api("拉动")
@RestController
@RequestMapping(MesCommonConstant.MES_YANFEN+ "/mesPartPull")
public class MesPartPullController {
@ -31,7 +31,7 @@ public class MesPartPullController {
private IMesPartPullService mesPartPullService;
@GetMapping(value = "/query")
@ApiOperation(value = "查询拉动")
@ApiOperation(value = "查询拉动")
public ResultBean queryMesPartPull(MesPartPull mesPartPull) {
try {
mesPartPull.setOrganizeCode(mesPartPull.getOrganizeCode());

@ -54,7 +54,7 @@ public class MesPullingOrderInfoService implements IMesPullingOrderInfoService {
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"createDatetime"}, packBean);
}
//
if(!StringUtil.isEmpty(bean.getCreateDatetime())){
if (!StringUtil.isEmpty(bean.getCreateDatetime())) {
DdlPreparedPack.getStringBiggerPack(bean.getCreateDatetime(), "createDatetime", packBean);
}
pager = PagerHelper.getPager(pager, mesPullingOrderInfoRepository.findByHqlWhereCount(packBean));
@ -71,12 +71,12 @@ public class MesPullingOrderInfoService implements IMesPullingOrderInfoService {
DdlPreparedPack.getNumEqualPack(bean.getPullOrderType(), "pullOrderType", packBean);
DdlPreparedPack.getNumEqualPack(bean.getPrintStatus(), "printStatus", packBean);
//已确认、已扫描、已发送设备
if (StringUtil.isEmpty(bean.getPullOrderStatus())){
if (StringUtil.isEmpty(bean.getPullOrderStatus())) {
DdlPreparedPack.getInPackList(Arrays.asList(
MesExtEnumUtil.PULL_ORDER_STATUS.KITTING_PULL.getValue(),
MesExtEnumUtil.PULL_ORDER_STATUS.JIS_PULL.getValue(),
MesExtEnumUtil.PULL_ORDER_STATUS.SPS_PULL.getValue()), "pullOrderStatus", packBean);
}else {
} else {
DdlPreparedPack.getNumEqualPack(bean.getPullOrderStatus(), "pullOrderStatus", packBean);
}
DdlPreparedPack.getStringEqualPack(bean.getWorkOrderNo(), "workOrderNo", packBean);
@ -93,40 +93,41 @@ public class MesPullingOrderInfoService implements IMesPullingOrderInfoService {
// DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.PULL_ORDER_STATUS.KITTING_PULL.getValue(), "pullOrderStatus", packBeanOne);
MesPullingOrderInfo mesPullingOrderInfo = mesPullingOrderInfoRepository.getByProperty(packBeanOne);
if (StringUtil.isEmpty(mesPullingOrderInfo)) {
MesPcnException.throwMesBusiException("扫描拉动单号【%s】查询数据为空",bean.getPullingOrderNo());
MesPcnException.throwMesBusiException("扫描拉动单号【%s】查询数据为空", bean.getPullingOrderNo());
}
if (mesPullingOrderInfo.getPullOrderStatus()!=MesExtEnumUtil.PULL_ORDER_STATUS.KITTING_PULL.getValue()) {
MesPcnException.throwMesBusiException("扫描拉动单号【%s】拉动单状态不是【已确认】",bean.getPullingOrderNo());
if (mesPullingOrderInfo.getPullOrderStatus() != MesExtEnumUtil.PULL_ORDER_STATUS.KITTING_PULL.getValue()) {
MesPcnException.throwMesBusiException("扫描拉动单号【%s】拉动单状态不是【已确认】", bean.getPullingOrderNo());
}
//强过码 todo
if((!Objects.isNull(bean.getIsPass()) && CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == bean.getIsPass())){
//强过码 如果强过为true 不校验顺序 直接扫描完成修改状态为已扫描 todo
if ((!Objects.isNull(bean.getIsPass()) && CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == bean.getIsPass())) {
mesPullingOrderInfo.setPullOrderStatus(MesExtEnumUtil.PULL_ORDER_STATUS.JIS_PULL.getValue());
ConvertBean.serviceModelUpdate(mesPullingOrderInfo, userName);
mesPullingOrderInfoRepository.update(mesPullingOrderInfo);
}else {
} else {
DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(bean.getPullCode(), "pullCode", packBean);
DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean);
DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.PULL_ORDER_STATUS.KITTING_PULL.getValue(), "pullOrderStatus", 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);
}
// if (!StringUtil.isEmpty(bean.orderBy())) {
// packBean.setOrderByStr(bean.orderBy());
// } else {
//顺序校验 根据未扫描单号 1 、2 、3如果没有强过码 必须先扫1 再扫2
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"pullingOrderNo"}, packBean);
// }
List<MesPullingOrderInfo> pullingOrderInfos = mesPullingOrderInfoRepository.findByHqlWhere(packBean);
if (!CollectionUtils.isEmpty(pullingOrderInfos)){
if (!CollectionUtils.isEmpty(pullingOrderInfos)) {
//按照排序 依次扫描,如果扫描不按照顺序 报错
MesPullingOrderInfo pullingOrderInfo = pullingOrderInfos.get(0);
if (pullingOrderInfo.getPullOrderStatus().equals(mesPullingOrderInfo.getPullOrderStatus())){
if (pullingOrderInfo.getPullOrderStatus().equals(mesPullingOrderInfo.getPullOrderStatus())) {
mesPullingOrderInfo.setPullOrderStatus(MesExtEnumUtil.PULL_ORDER_STATUS.JIS_PULL.getValue());
ConvertBean.serviceModelUpdate(mesPullingOrderInfo, userName);
mesPullingOrderInfoRepository.update(mesPullingOrderInfo);
}else{
MesPcnException.throwMesBusiException("扫描拉动单号【%s】SPS排序单校验顺序错误",bean.getPullingOrderNo());
} else {
MesPcnException.throwMesBusiException("扫描拉动单号【%s】SPS排序单校验顺序错误", bean.getPullingOrderNo());
}
}else {
MesPcnException.throwMesBusiException("扫描拉动单号产线拉动组【%s】数据为空",bean.getPullingOrderNo());
} else {
MesPcnException.throwMesBusiException("扫描拉动单号产线拉动组【%s】数据为空", bean.getPullingOrderNo());
}
}
@ -135,20 +136,25 @@ public class MesPullingOrderInfoService implements IMesPullingOrderInfoService {
@Override
public List<MesPullingOrderInfo> doMesPullingOrderInfoPrint(MesPullingOrderInfo bean, String userName) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(bean.getPullCode(), "pullCode", packBean);
//多选
if(!StringUtil.isEmpty(bean.getPullCode())){
DdlPreparedPack.getInPackList(Arrays.asList(bean.getPullCode().split(",")), "pullCode", packBean);
}
if(!StringUtil.isEmpty(bean.getWorkCenterCode())){
DdlPreparedPack.getInPackList(Arrays.asList(bean.getWorkCenterCode().split(",")), "workCenterCode", packBean);
}
DdlPreparedPack.getStringEqualPack(bean.getPullingOrderNo(), "pullingOrderNo", packBean);
DdlPreparedPack.getStringEqualPack(bean.getWorkCenterCode(), "workCenterCode", packBean);
DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.PRINT_STATUS.UNPRINT.getValue(), "printStatus", packBean);
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"createDatetime"}, packBean);
List<MesPullingOrderInfo> pullingOrderInfos = mesPullingOrderInfoRepository.findByHqlWhere(packBean);
if (!CollectionUtils.isEmpty(pullingOrderInfos)){
if (!CollectionUtils.isEmpty(pullingOrderInfos)) {
//把查出来的拉动单打印并修改打印状态为已打印
for (MesPullingOrderInfo pullingOrderInfo : pullingOrderInfos) {
//查询拉动组明细
DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(pullingOrderInfo.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(pullingOrderInfo.getPullingOrderNo(), "pullingOrderNo", partPackBean);
List<MesPullingOrderPartInfo> pullingOrderPartInfos = mesPullingOrderPartInfoRepository.findByHqlWhere(partPackBean);
if (!CollectionUtils.isEmpty(pullingOrderPartInfos)){
if (!CollectionUtils.isEmpty(pullingOrderPartInfos)) {
pullingOrderInfo.setPartCount(pullingOrderPartInfos.size());
pullingOrderInfo.setPullingOrderPartInfos(pullingOrderPartInfos);
}

Loading…
Cancel
Save