PCN发运单打印页面1

tags/yfai-pcn-ext-v2.3
gsz 8 months ago
parent ad5934cfd8
commit 44f72a56a6

@ -2,6 +2,8 @@ package cn.estsh.i3plus.ext.mes.pcn.api.busi;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.mes.bean.MesPartShippingGroup;
import cn.estsh.i3plus.pojo.mes.bean.MesPullingOrderInfo;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement;
import io.swagger.annotations.ApiOperation;
import java.util.List;
@ -20,4 +22,6 @@ public interface IMesPartShippingGroupService {
@ApiOperation(value = "查询发运组数据")
MesPartShippingGroup getMesPartShippingGroup(String organizeCode,String shippingGroupCode);
@ApiOperation(value = "打印发运单数据")
List<MesShippingOrderManagement> doMesMesShippingOrderManagementPrint(MesShippingOrderManagement model, String userName);
}

@ -3,18 +3,21 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.controller.busi;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPartShippingGroupService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.constant.MesCommonConstant;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.mes.bean.MesPartShippingGroup;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
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 cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @Description :
@ -50,5 +53,20 @@ public class MesPartShippingGroupController {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@PostMapping(value = "/doPrint")
@ApiOperation(value = "打印未打印拉动单后修改状态")
public ResultBean doMesMesShippingOrderManagementPrint(@RequestBody MesShippingOrderManagement model) {
try {
// 数据校验
ValidatorBean.checkNotNull(model.getShippingGroupCode(), "发运组代码不能为空");
List<MesShippingOrderManagement> shippingOrderManagementList = shippingGroupService.doMesMesShippingOrderManagementPrint(model, AuthUtil.getSessionUser().getUserName());
return ResultBean.success("拉动单打印成功")
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode())
.setResultList(shippingOrderManagementList);
} catch (ImppBusiException e) {
return ResultBean.fail(e).build();
} catch (Exception e) {
return ResultBean.fail(e);
}
}
}

@ -1,14 +1,24 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPartShippingGroupService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
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.MesPartShippingGroup;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagementDetail;
import cn.estsh.i3plus.pojo.mes.repository.MesPartShippingGroupRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesShippingOrderManagementDetailRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesShippingOrderManagementRepository;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.Arrays;
import java.util.List;
@Service
@ -19,6 +29,11 @@ public class MesPartShippingGroupService implements IMesPartShippingGroupService
@Autowired
private MesPartShippingGroupRepository shippingGroupRepository;
@Autowired
private MesShippingOrderManagementRepository shippingOrderManagementRepository;
@Autowired
private MesShippingOrderManagementDetailRepository shippingOrderManagementDetailRepository;
public List<MesPartShippingGroup> findAll( DdlPackBean packBean) {
List<MesPartShippingGroup> detailDeleteList = shippingGroupRepository.findByHqlWhere(packBean);
return detailDeleteList;
@ -31,4 +46,36 @@ public class MesPartShippingGroupService implements IMesPartShippingGroupService
return shippingGroupRepository.getByProperty(packBean);
}
@Override
public List<MesShippingOrderManagement> doMesMesShippingOrderManagementPrint(MesShippingOrderManagement bean, String userName) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode());
//多选
if (!StringUtil.isEmpty(bean.getShippingGroupCode())) {
DdlPreparedPack.getInPackList(Arrays.asList(bean.getShippingGroupCode().split(",")), "shippingGroupCode", packBean);
}
DdlPreparedPack.getStringEqualPack(bean.getShippingCode(), "shippingCode", packBean);
DdlPreparedPack.getIsNull("lastPrintTime", packBean);
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"createDatetime"}, packBean);
List<MesShippingOrderManagement> pullingOrderInfos = shippingOrderManagementRepository.findByHqlWhere(packBean);
if (!CollectionUtils.isEmpty(pullingOrderInfos)) {
//把查出来的拉动单打印并修改打印状态为已打印
for (MesShippingOrderManagement pullingOrderInfo : pullingOrderInfos) {
//查询拉动组明细
DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(pullingOrderInfo.getOrganizeCode());
DdlPreparedPack.getNumEqualPack(pullingOrderInfo.getId(), "pid", partPackBean);
List<MesShippingOrderManagementDetail> shipOrderPartInfos = shippingOrderManagementDetailRepository.findByHqlWhere(partPackBean);
if (!CollectionUtils.isEmpty(shipOrderPartInfos)) {
pullingOrderInfo.setShipOrderPartInfos(shipOrderPartInfos);
}
pullingOrderInfo.setPrintCount(StringUtil.isEmpty(pullingOrderInfo.getPrintCount())?1:pullingOrderInfo.getPrintCount()+1);
pullingOrderInfo.setLastPrintTime(TimeTool.getNowTime(true));
pullingOrderInfo.setLastPrintUser(userName);
ConvertBean.serviceModelUpdate(pullingOrderInfo, userName);
}
shippingOrderManagementRepository.saveAll(pullingOrderInfos);
}
return pullingOrderInfos;
}
}

Loading…
Cancel
Save