Compare commits

..

No commits in common. "9e0ff6cfd4b6cb728f875feb3619700bf02bb42f" and "752f9d6c66e187833977df44440e5c123a63c759" have entirely different histories.

10 changed files with 78 additions and 136 deletions

View File

@ -60,7 +60,8 @@ public class ComponentPackingController {
*/
@PostMapping("search")
public ApiResult<PageData<ComponentPackingVO>> search(@Valid @RequestBody ComponentPackingQO request) {
return ApiResult.success(wmscomponentPackingService.search(request));
PageData<ComponentPackingVO> pageData = PageUtil.convert(wmscomponentPackingService.search(request), d -> Convert.convert(ComponentPackingVO.class, d));
return ApiResult.success(pageData);
}
/**

View File

@ -159,45 +159,6 @@ public class InProduceOrderController extends BaseController {
.setBatchNo(date + index)
.setSernr(request.getSernr());
produceOrderItemService.save(parent);
if (request.getList()) {
List<WmsBom> children = bomService.getChildren(request.getMatnr());
VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(children)).throwMessage("请先添加齐套物料");
List<WmsInProduceOrderItem> items = children.stream()
.map(it -> new WmsInProduceOrderItem()
.setId(IdUtil.getSnowflakeNextId())
.setOrderId(order.getId())
.setParentId(parent.getId())
.setNum(request.getNum().multiply(it.getNum()))
.setMaterialNo(it.getNo())
.setMaterialDesc(it.getDescribe())
.setUnit(request.getMeins())
.setFactoryNo(request.getPwerk())
.setWarehouseNo(request.getLgort())
.setOrderNum(request.getPsmng())
.setBatchNo(parent.getBatchNo())
.setSernr(request.getSernr())
)
.toList();
produceOrderItemService.saveBatch(items);
qrCodeMasterService.saveBatch(
items.stream().map(it -> new WmsQrCodeMaster()
.setBarcodeCode(KeyUtil.next())
.setProcessStage(BarCodeProcessStage.ForStorage.getState())
.setBarcodeType(BarCodeType.Production.getState())
.setMaterialCode(it.getMaterialNo())
.setMaterialDescription(it.getMaterialDesc())
.setPackagingType((short) 0)
.setQuantity(it.getNum())
.setUnit(it.getUnit())
.setBatchNo(it.getBatchNo())
.setSerialNo(it.getSernr())
.setExtendId(it.getId())
.setCreateUserId(UserUtil.getUserId())
.setCreateUserName(UserUtil.getUserName())
.setCreateTime(LocalDateTime.now())
).toList()
);
} else {
qrCodeMasterService.save(new WmsQrCodeMaster()
.setBarcodeCode(KeyUtil.next())
.setProcessStage(BarCodeProcessStage.ForStorage.getState())
@ -214,6 +175,21 @@ public class InProduceOrderController extends BaseController {
.setCreateUserName(UserUtil.getUserName())
.setCreateTime(LocalDateTime.now())
);
if (request.getList()) {
List<WmsBom> children = bomService.getChildren(request.getMatnr());
VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(children)).throwMessage("请先添加齐套信息");
produceOrderItemService.saveBatch(children.stream().map(it -> new WmsInProduceOrderItem()
.setOrderId(order.getId())
.setParentId(parent.getId())
.setNum(request.getNum().multiply(it.getNum()))
.setMaterialNo(it.getNo())
.setMaterialDesc(it.getDescribe())
.setUnit(request.getMeins())
.setFactoryNo(request.getPwerk())
.setWarehouseNo(request.getLgort())
.setOrderNum(request.getPsmng())
).toList()
);
}
return ApiResult.success(order.getId());
}
@ -272,13 +248,16 @@ public class InProduceOrderController extends BaseController {
, @Valid @RequestParam @NotNull Integer type) throws Exception {
WmsInProduceOrder order = produceOrderService.getById(id);
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
List<WmsInProduceOrderItem> items = produceOrderItemService.lambdaQuery()
List<QrCodeMasterPrintDTO> datas = convertToPrintDTO(qrCodeMasterService.getByExtendIds(
produceOrderItemService.lambdaQuery()
.select(WmsInProduceOrderItem::getId)
.eq(WmsInProduceOrderItem::getOrderId, id)
.list();
if (order.getList()) {
items.removeIf(it -> it.getParentId() == 0);
}
List<QrCodeMasterPrintDTO> datas = convertToPrintDTO(qrCodeMasterService.getByExtendIds(items.stream().map(WmsInProduceOrderItem::getId).toList()));
.list()
.stream()
.map(WmsInProduceOrderItem::getId)
.toList()
)
);
Map<String, Object> variables = new HashMap<>();
variables.put("list", datas);
if (Objects.equals(type, 1)) {
@ -300,13 +279,16 @@ public class InProduceOrderController extends BaseController {
public ResponseEntity<byte[]> exportItemImageZip(@Valid @RequestParam @NotNull Long id) throws Exception {
WmsInProduceOrder order = produceOrderService.getById(id);
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
List<WmsInProduceOrderItem> items = produceOrderItemService.lambdaQuery()
List<QrCodeMasterPrintDTO> datas = convertToPrintDTO(qrCodeMasterService.getByExtendIds(
produceOrderItemService.lambdaQuery()
.select(WmsInProduceOrderItem::getId)
.eq(WmsInProduceOrderItem::getOrderId, id)
.list();
if (order.getList()) {
items.removeIf(it -> it.getParentId() == 0);
}
List<QrCodeMasterPrintDTO> datas = convertToPrintDTO(qrCodeMasterService.getByExtendIds(items.stream().map(WmsInProduceOrderItem::getId).toList()));
.list()
.stream()
.map(WmsInProduceOrderItem::getId)
.toList()
)
);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
try (ZipOutputStream zos = new ZipOutputStream(baos)) {
for (QrCodeMasterPrintDTO it : datas) {
@ -354,7 +336,7 @@ public class InProduceOrderController extends BaseController {
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
List<InProduceOrderItemVO> list = produceOrderItemService.getVOByOrderId(id);
if (order.getList()) {
list.removeIf(item -> item.getParentId() != 0L);
list.removeIf(item -> Objects.equals(item.getParentId(), 0L));
}
InProduceOrderItemVO first = list.get(0);
Map<String, String> base = new HashMap<>();
@ -380,32 +362,33 @@ public class InProduceOrderController extends BaseController {
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
VUtil.trueThrowBusinessError(!Objects.equals(order.getState(), (short) 0))
.throwMessage("该订单非待收货状态");
InProduceOrderVO vo = Convert.convert(InProduceOrderVO.class, order);
InProduceOrderVO vo=Convert.convert(InProduceOrderVO.class,order);
List<InProduceOrderItemVO> list = produceOrderItemService.getVOByOrderId(order.getId());
list.forEach(it -> {
if (it.getParentId() == 0) {
it.setBinNo(binService.getBinNo(it.getMaterialNo(), it.getFactoryNo(), it.getWarehouseNo()));
it.setIsDisableLocation(warehouseService.isEnableLocation(it.getFactoryNo(), it.getWarehouseNo()));
vo.getItems().add(it);
if (order.getList()) {
List<InProduceOrderItemVO> datas = new ArrayList<>();
list.stream().filter(it -> Objects.equals(it.getParentId(), 0L)).forEach(it -> {
List<InProduceOrderItemVO> children = list.stream()
.filter(child -> Objects.equals(child.getParentId(), it.getId()))
.toList();
Integer type = bomService.getScanType(it.getMaterialNo());
it.setQiTao(type > 0);
if (Objects.equals(type, 0)) {
it.setMustScan(false);
}
children.forEach(child -> {
child.setQiTao(it.isQiTao());
child.setMustScan(it.isMustScan());
child.setQiTao(type > 0);
if (Objects.equals(type, 0)) {
child.setMustScan(false);
}
child.setBinNo(binService.getBinNo(child.getMaterialNo(), child.getFactoryNo(), child.getWarehouseNo()));
child.setIsDisableLocation(warehouseService.isEnableLocation(child.getFactoryNo(), child.getWarehouseNo()));
});
it.setChildren(children);
}
}
datas.addAll(children);
});
vo.setItems(datas);
} else {
list.forEach(it -> {
it.setBinNo(binService.getBinNo(it.getMaterialNo(), it.getFactoryNo(), it.getWarehouseNo()));
it.setIsDisableLocation(warehouseService.isEnableLocation(it.getFactoryNo(), it.getWarehouseNo()));
});
vo.setItems(list);
}
return ApiResult.success(vo);
}
@ -448,9 +431,7 @@ public class InProduceOrderController extends BaseController {
.flatMap(Collection::stream)
.map(InventoryInItemQRCodeQO::getQrCode)
.collect(Collectors.toSet());
List<WmsQrCodeMaster> qrCodeMasters = CollectionUtil.isEmpty(allQrCodes)
? Collections.emptyList()
: qrCodeMasterService.lambdaQuery()
List<WmsQrCodeMaster> qrCodeMasters = CollectionUtil.isEmpty(allQrCodes) ? Collections.emptyList() : qrCodeMasterService.lambdaQuery()
.ne(WmsQrCodeMaster::getProcessStage, BarCodeProcessStage.InBound.getState())
.in(WmsQrCodeMaster::getBarcodeCode, allQrCodes)
.list();
@ -600,7 +581,7 @@ public class InProduceOrderController extends BaseController {
);
}
OptRecordDTO optRecordDTO = new OptRecordDTO();
optRecordDTO.setOperationType((short) 1);
optRecordDTO.setOperationType((short)1);
optRecordDTO.setOrderId(order.getNo());
optRecordService.add(optRecordDTO);
//同步入库信息到SAP

View File

@ -1,6 +1,5 @@
package com.nflg.wms.common.pojo.qo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.experimental.Accessors;
@ -20,7 +19,6 @@ public class ComponentPackingQO extends SearchBaseQO {
/**
* 办事处代理商
*/
@JsonProperty("pName")
private String pName;

View File

@ -25,6 +25,11 @@ public class MaterialCodeSearchQO extends SearchBaseQO {
*/
private String customerName;
/**
* 装箱状态
*/
private Integer packingStatus;
/**
* 下单开始日期
*/

View File

@ -1,10 +1,7 @@
package com.nflg.wms.common.pojo.qo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.util.List;
@Data
public class OutAssistanceSearchQO extends SearchBaseQO {
@ -27,12 +24,4 @@ public class OutAssistanceSearchQO extends SearchBaseQO {
* 供应商
*/
private String lifnr;
/**
* 物料号
*/
private String matnr;
@JsonIgnore
private List<Long> ids;
}

View File

@ -5,7 +5,6 @@ import lombok.Data;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.util.List;
@Data
@Accessors(chain = true)
@ -84,9 +83,4 @@ public class InProduceOrderItemVO {
*/
@JsonProperty("isDisableLocation")
private Boolean isDisableLocation = true;
/**
* 清点件的齐套物料列表
*/
private List<InProduceOrderItemVO> children;
}

View File

@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@Data
@ -68,5 +67,5 @@ public class InProduceOrderVO {
*/
private LocalDateTime updateTime;
private List<InProduceOrderItemVO> items=new ArrayList<>();
private List<InProduceOrderItemVO> items;
}

View File

@ -1,12 +1,10 @@
package com.nflg.wms.repository.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nflg.wms.common.pojo.qo.OutAssistanceSearchQO;
import com.nflg.wms.repository.entity.WmsOutAssistance;
import com.nflg.wms.repository.entity.WmsOutAssistanceItem;
import com.nflg.wms.repository.mapper.WmsOutAssistanceMapper;
import com.nflg.wms.repository.service.IWmsOutAssistanceItemService;
import com.nflg.wms.repository.service.IWmsOutAssistanceService;
@ -28,19 +26,6 @@ public class WmsOutAssistanceServiceImpl extends ServiceImpl<WmsOutAssistanceMap
@Override
public IPage<WmsOutAssistance> search(OutAssistanceSearchQO request) {
if (StrUtil.isNotBlank(request.getMatnr())) {
request.setIds(
wmsOutAssistanceItemService.lambdaQuery()
.like(WmsOutAssistanceItem::getMatnr, request.getMatnr())
.or()
.like(WmsOutAssistanceItem::getMatnr1, request.getMatnr())
.list()
.stream()
.map(WmsOutAssistanceItem::getOrderId)
.toList()
);
}
return baseMapper.search(request, new Page<>(request.getPage(), request.getPageSize()));
}
}

View File

@ -6,17 +6,6 @@
SELECT *
FROM wms_out_assistance
<where>
<if test="request.ids != null">
<if test="request.ids.isEmpty()">
and 1=2
</if>
<if test="!request.ids.isEmpty()">
and id in
<foreach item="item" collection="request.ids" separator="," open="(" close=")">
#{item}
</foreach>
</if>
</if>
<if test="request.no != null and request.no!=''">
AND "no" ilike CONCAT('%', #{request.no}, '%')
</if>

View File

@ -161,7 +161,8 @@ public class MaterialCodeController extends BaseController {
.like(StrUtil.isNotBlank(request.getNo()), WmsShipmentMaterialCode::getNo, request.getNo())
.like(StrUtil.isNotBlank(request.getSoNo()), WmsShipmentMaterialCode::getSoNo, request.getSoNo())
.like(StrUtil.isNotBlank(request.getMaterialNo()), WmsShipmentMaterialCode::getMaterialNo, request.getMaterialNo())
.like(StrUtil.isNotBlank(request.getCustomerName()), WmsShipmentMaterialCode::getCustomerName, request.getCustomerName()) .orderByAsc(WmsShipmentMaterialCode::getStatus)
.like(StrUtil.isNotBlank(request.getCustomerName()), WmsShipmentMaterialCode::getCustomerName, request.getCustomerName())
.eq(Objects.nonNull(request.getPackingStatus()), WmsShipmentMaterialCode::getStatus, request.getPackingStatus()) .orderByAsc(WmsShipmentMaterialCode::getStatus)
.orderByDesc(WmsShipmentMaterialCode::getId)
.page(new Page<>(request.getPage(), request.getPageSize()))
);