增加包装箱编码获取包装箱和箱内物料信息接口
This commit is contained in:
parent
21599dcc2d
commit
8c317215a2
|
|
@ -15,14 +15,14 @@ import com.nflg.wms.common.pojo.dto.InventoryInDTO;
|
|||
import com.nflg.wms.common.pojo.dto.InventoryOutDTO;
|
||||
import com.nflg.wms.common.pojo.dto.QrCodeMasterPrintDTO;
|
||||
import com.nflg.wms.common.pojo.qo.*;
|
||||
import com.nflg.wms.common.pojo.vo.PackageInfoVO;
|
||||
import com.nflg.wms.common.pojo.vo.QrCodeItemVO;
|
||||
import com.nflg.wms.common.pojo.vo.QrCodeVO;
|
||||
import com.nflg.wms.common.pojo.vo.StrappingVO;
|
||||
import com.nflg.wms.common.util.NumberUtil;
|
||||
import com.nflg.wms.common.util.StringUtil;
|
||||
import com.nflg.wms.common.util.UserUtil;
|
||||
import com.nflg.wms.common.util.VUtil;
|
||||
import com.nflg.wms.common.util.*;
|
||||
import com.nflg.wms.repository.entity.WmsPackageItem;
|
||||
import com.nflg.wms.repository.entity.WmsQrCodeMaster;
|
||||
import com.nflg.wms.repository.service.IWmsPackageItemService;
|
||||
import com.nflg.wms.repository.service.IWmsQrCodeMasterService;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
|
|
@ -30,6 +30,7 @@ import jakarta.servlet.http.HttpServletResponse;
|
|||
import jakarta.validation.Valid;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.core.io.ClassPathResource;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.HttpStatus;
|
||||
|
|
@ -52,6 +53,7 @@ import java.util.zip.ZipOutputStream;
|
|||
|
||||
/**
|
||||
* 装箱管理
|
||||
*
|
||||
* @author: nflg
|
||||
* @date: 2022/3/17
|
||||
* @description:
|
||||
|
|
@ -63,6 +65,9 @@ public class QrCodeMasterController extends BaseController {
|
|||
@Resource
|
||||
private IWmsQrCodeMasterService qrCodeMasterService;
|
||||
|
||||
@Resource
|
||||
private IWmsPackageItemService wmsPackageItemService;
|
||||
|
||||
/**
|
||||
* 获取包装码信息
|
||||
*/
|
||||
|
|
@ -91,7 +96,7 @@ public class QrCodeMasterController extends BaseController {
|
|||
.eq(WmsQrCodeMaster::getBarcodeCode, request.getBarcodeCode())
|
||||
.one();
|
||||
VUtil.trueThrowBusinessError(ObjectUtil.isNull(qrCodeMaster)).throwMessage("无效码");
|
||||
VUtil.trueThrowBusinessError(qrCodeMaster.getPackagingType()!=1).throwMessage("此码不属于箱码");
|
||||
VUtil.trueThrowBusinessError(qrCodeMaster.getPackagingType() != 1).throwMessage("此码不属于箱码");
|
||||
VUtil.trueThrowBusinessError(qrCodeMaster.getProcessStage() != BarCodeProcessStage.Unpackaged.getState())
|
||||
.throwMessage("此箱码已处于【" + BarCodeProcessStage.findByValue(qrCodeMaster.getProcessStage()).getDescription() + "】状态,不可以操作");
|
||||
List<WmsQrCodeMaster> smallQrCodeMasters = qrCodeMasterService.lambdaQuery()
|
||||
|
|
@ -118,6 +123,39 @@ public class QrCodeMasterController extends BaseController {
|
|||
return ApiResult.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 包装箱编码获取包装箱和箱内物料信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("getContent")
|
||||
@ApiMark(moduleName = "包装箱编码获取获取包装箱信息", apiName = "包装箱编码获取获取包装箱信息")
|
||||
public ApiResult<List<PackageInfoVO>> getPackageInfos(@Valid @RequestBody PackageQO request) {
|
||||
List<WmsPackageItem> wmsPackageItems = wmsPackageItemService.lambdaQuery()
|
||||
.eq(WmsPackageItem::getPackageId,request.getPackageId())
|
||||
.list();
|
||||
List<String> barcodeCodes = wmsPackageItems.stream()
|
||||
.map(WmsPackageItem::getBarcodeCode)
|
||||
.filter(Objects::nonNull)
|
||||
.toList();
|
||||
List<WmsQrCodeMaster> qrCodeMasterList = qrCodeMasterService.lambdaQuery()
|
||||
.in(WmsQrCodeMaster::getBarcodeCode, barcodeCodes)
|
||||
.list();
|
||||
List<PackageInfoVO> packageInfoVOS = Convert.toList(PackageInfoVO.class,qrCodeMasterList);
|
||||
packageInfoVOS.forEach(vo -> {
|
||||
WmsPackageItem item = wmsPackageItems.stream()
|
||||
.filter(p -> StrUtil.equals(p.getBarcodeCode(), vo.getBarcodeCode()))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
if (item != null) {
|
||||
vo.setDeliveryNo(item.getDeliveryNo());
|
||||
vo.setDeliveryLineNo(item.getDeliveryLineNo());
|
||||
}
|
||||
});
|
||||
return ApiResult.success(packageInfoVOS);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 箱码Validation
|
||||
|
|
@ -244,6 +282,7 @@ public class QrCodeMasterController extends BaseController {
|
|||
/**
|
||||
* 换箱
|
||||
* 针对仓库内的物料箱合并,修改物料的箱属性和库存
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -346,9 +385,9 @@ public class QrCodeMasterController extends BaseController {
|
|||
* 物料出入库统一扫码接口
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
* @author
|
||||
* */
|
||||
* @return
|
||||
* @author
|
||||
*/
|
||||
@PostMapping("pda/scan")
|
||||
@ApiMark(moduleName = "扫码", apiName = "扫码获取扫码信息")
|
||||
public ApiResult<QrCodeVO> scan(@Valid @RequestBody QRCodeSearchQO request) {
|
||||
|
|
@ -379,6 +418,7 @@ public class QrCodeMasterController extends BaseController {
|
|||
|
||||
/**
|
||||
* 导出标签图片为ZIP
|
||||
*
|
||||
* @param datas 二维码列表
|
||||
*/
|
||||
@PostMapping(value = "exportToZip", produces = "application/zip")
|
||||
|
|
@ -408,6 +448,7 @@ public class QrCodeMasterController extends BaseController {
|
|||
|
||||
/**
|
||||
* 导出标签图片为PDF
|
||||
*
|
||||
* @param datas 二维码列表
|
||||
*/
|
||||
@PostMapping("exportToPdf")
|
||||
|
|
|
|||
|
|
@ -0,0 +1,13 @@
|
|||
package com.nflg.wms.common.pojo.qo;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class PackageQO {
|
||||
/**
|
||||
* 包装编号Id
|
||||
*/
|
||||
private Long packageId;
|
||||
}
|
||||
|
|
@ -0,0 +1,72 @@
|
|||
package com.nflg.wms.common.pojo.vo;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class PackageInfoVO {
|
||||
/**
|
||||
* 条码号
|
||||
*/
|
||||
private String barcodeCode;
|
||||
/**
|
||||
* 物料编号
|
||||
*/
|
||||
private String materialCode;
|
||||
/**
|
||||
* 物料描述
|
||||
*/
|
||||
private String materialDescription;
|
||||
/**
|
||||
* 条码类型
|
||||
*/
|
||||
private Short packagingType;
|
||||
/**
|
||||
* 数量
|
||||
*/
|
||||
private BigDecimal quantity;
|
||||
/**
|
||||
* 单位
|
||||
*/
|
||||
private String unit;
|
||||
/**
|
||||
* 批次号
|
||||
*/
|
||||
private String batchNo;
|
||||
/**
|
||||
* 序列号
|
||||
*/
|
||||
private String serialNo;
|
||||
/**
|
||||
* 供应商编号
|
||||
*/
|
||||
private String supplierCode;
|
||||
/**
|
||||
* 供应商名称
|
||||
*/
|
||||
private String supplierName;
|
||||
/**
|
||||
* 所属工厂
|
||||
*/
|
||||
private String factoryCode;
|
||||
/**
|
||||
* 仓库
|
||||
*/
|
||||
private String storageLocation;
|
||||
/**
|
||||
* 储位
|
||||
*/
|
||||
private String binLocation;
|
||||
|
||||
/**
|
||||
* 送货单单号
|
||||
*/
|
||||
private String deliveryNo;
|
||||
/**
|
||||
* 送货单行号
|
||||
*/
|
||||
private String deliveryLineNo;
|
||||
}
|
||||
Loading…
Reference in New Issue