增加 调拨出库查询接口

master
wanghao 3 months ago
parent ce69970828
commit 76d6d6d154

@ -12,6 +12,7 @@ import org.dromara.wms.service.*;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@ -29,6 +30,7 @@ public class WmsPdaApiController extends BaseController {
private final IWmsInstockPrintService wmsInstockPrintService;
private final IWmsInventoryService wmsInventoryService;
private final IWmsMoveOrderService wmsMoveOrderService;
private final IWmsAllocateOrderDetailService wmsAllocateOrderDetailService;
/**
* 退-
@ -148,17 +150,29 @@ public class WmsPdaApiController extends BaseController {
* @return
*/
@PostMapping("/raw/outSelectByOrderCode")
public R<List<WmsOutstockDetailVo>> outSelectByOrderCode(String orderCode) {
List<WmsOutstockDetailVo> wmsOutstockDetailVo = apiService.outSelectByOrderCode(orderCode);
wmsOutstockDetailVo.forEach(item -> {
WmsInventoryVo inventory = wmsInventoryService.selectOrderBeachCode(item.getMaterialId());
if (inventory != null) {
item.setLocationCode(inventory.getLocationCode());
item.setBatchCode(inventory.getBatchCode());
item.setInventoryQty(inventory.getInventoryQty());
public R<List<WmsOutstockDetailVo>> outSelectByOrderCode(String orderCode, String orderType) {
List<WmsOutstockDetailVo> wmsOutstockDetailVo = null;
if (orderType.equals("5")) {
wmsOutstockDetailVo = apiService.outSelectByOrderCode(orderCode);
wmsOutstockDetailVo.forEach(item -> {
WmsInventoryVo inventory = wmsInventoryService.selectOrderBeachCode(item.getMaterialId());
if (inventory != null) {
item.setLocationCode(inventory.getLocationCode());
item.setBatchCode(inventory.getBatchCode());
item.setInventoryQty(inventory.getInventoryQty());
}
});
} else if (orderType.equals("7")) {
List<WmsAllocateOrderDetailVo> list = wmsAllocateOrderDetailService.selectdetailListByOrderCode(orderCode);
if (list != null && list.size() > 0) {
wmsOutstockDetailVo = new ArrayList<>(list.size());
list.forEach(item -> {
});
}
});
}
if (wmsOutstockDetailVo == null) return R.fail("出库单号不正确");
@ -232,7 +246,7 @@ public class WmsPdaApiController extends BaseController {
moveOrderBo.setTargetLocationCode(vo.getNewLocationCode());
Boolean inserted = wmsMoveOrderService.pdaInsertByBo(moveOrderBo);
if (inserted){
if (inserted) {
boolean result = apiService.moveSubmit(vo);
return result ? R.ok() : R.fail();
}

@ -1,7 +1,7 @@
package org.dromara.wms.service;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.wms.domain.bo.WmsAllocateOrderDetailBo;
import org.dromara.wms.domain.vo.WmsAllocateOrderDetailVo;
@ -69,4 +69,6 @@ public interface IWmsAllocateOrderDetailService {
List<WmsAllocateOrderDetailVo> selectAllocateDetails();
int deleteById(Long aoDId);
List<WmsAllocateOrderDetailVo> selectdetailListByOrderCode(String orderCode);
}

@ -1,30 +1,28 @@
package org.dromara.wms.service.impl;
import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.wms.domain.BaseMaterialInfo;
import org.dromara.wms.domain.WmsAllocateOrderDetail;
import org.dromara.wms.domain.WmsBaseWarehouse;
import org.dromara.wms.domain.WmsMoveOrder;
import org.dromara.wms.domain.bo.WmsAllocateOrderDetailBo;
import org.dromara.wms.domain.bo.WmsMoveOrderBo;
import org.dromara.wms.domain.vo.WmsAllocateOrderDetailVo;
import org.dromara.wms.mapper.WmsAllocateOrderDetailMapper;
import org.dromara.wms.service.IWmsAllocateOrderDetailService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
* Service
@ -45,7 +43,7 @@ public class WmsAllocateOrderDetailServiceImpl implements IWmsAllocateOrderDetai
* @return
*/
@Override
public WmsAllocateOrderDetailVo queryById(Long aoDId){
public WmsAllocateOrderDetailVo queryById(Long aoDId) {
return baseMapper.selectVoById(aoDId);
}
@ -87,11 +85,12 @@ public class WmsAllocateOrderDetailServiceImpl implements IWmsAllocateOrderDetai
lqw.eq(bo.getErpSynchronousQty() != null, WmsAllocateOrderDetail::getErpSynchronousQty, bo.getErpSynchronousQty());
return lqw;
}
private MPJLambdaWrapper<WmsAllocateOrderDetail> buildJoinQueryWrapper(WmsAllocateOrderDetailBo bo) {
Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<WmsAllocateOrderDetail> lqw = JoinWrappers.lambda(WmsAllocateOrderDetail.class)
.selectAll(WmsAllocateOrderDetail.class).select(BaseMaterialInfo::getMaterialCode)
.leftJoin(BaseMaterialInfo.class,BaseMaterialInfo::getMaterialId,WmsAllocateOrderDetail::getMaterialId);
.leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsAllocateOrderDetail::getMaterialId);
lqw.eq(bo.getAoDId() != null, WmsAllocateOrderDetail::getAoDId, bo.getAoDId());
lqw.eq(StringUtils.isNotBlank(bo.getAllocateCode()), WmsAllocateOrderDetail::getAllocateCode, bo.getAllocateCode());
lqw.eq(bo.getMaterialId() != null, WmsAllocateOrderDetail::getMaterialId, bo.getMaterialId());
@ -108,14 +107,14 @@ public class WmsAllocateOrderDetailServiceImpl implements IWmsAllocateOrderDetai
* @return
*/
@Override
@Transactional( rollbackFor = Exception.class )
@Transactional(rollbackFor = Exception.class)
public Boolean insertByBo(List<WmsAllocateOrderDetailBo> bo) {
int i = 0;
for (WmsAllocateOrderDetailBo detailBo : bo) {
WmsAllocateOrderDetail add = MapstructUtils.convert(detailBo, WmsAllocateOrderDetail.class);
/* add.setCreateBy(LoginHelper.getUsername());
add.setTenantId(LoginHelper.getTenantId());*/
i = baseMapper.insert(add);
i = baseMapper.insert(add);
}
// int i = baseMapper.insertDetails(list);
return i > 0;
@ -138,7 +137,7 @@ public class WmsAllocateOrderDetailServiceImpl implements IWmsAllocateOrderDetai
/**
*
*/
private void validEntityBeforeSave(WmsAllocateOrderDetail entity){
private void validEntityBeforeSave(WmsAllocateOrderDetail entity) {
//TODO 做一些数据校验,如唯一约束
}
@ -151,7 +150,7 @@ public class WmsAllocateOrderDetailServiceImpl implements IWmsAllocateOrderDetai
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
if (isValid) {
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
@ -166,4 +165,15 @@ public class WmsAllocateOrderDetailServiceImpl implements IWmsAllocateOrderDetai
public List<WmsAllocateOrderDetailVo> selectAllocateDetails() {
return null;
}
@Override
public List<WmsAllocateOrderDetailVo> selectdetailListByOrderCode(String orderCode) {
MPJLambdaWrapper<WmsAllocateOrderDetail> lqw = JoinWrappers.lambda(WmsAllocateOrderDetail.class)
.selectAll(WmsAllocateOrderDetail.class)
.select(BaseMaterialInfo::getMaterialCode, BaseMaterialInfo::getMaterialName, BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec)
.leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsAllocateOrderDetail::getMaterialId)
.eq(WmsAllocateOrderDetail::getAllocateCode, orderCode);
return baseMapper.selectVoList(lqw);
}
}

@ -230,7 +230,9 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService {
public List<WmsOutstockDetailVo> outSelectByOrderCode(String orderCode) {
MPJLambdaWrapper<WmsOutstockDetail> lqw = JoinWrappers.lambda(WmsOutstockDetail.class)
.selectAll(WmsOutstockDetail.class)
.select(BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec).leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockDetail::getMaterialId).eq(WmsOutstockDetail::getOutstockCode, orderCode);
.select(BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec)
.leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockDetail::getMaterialId)
.eq(WmsOutstockDetail::getOutstockCode, orderCode);
return wmsOutstockDetailMapper.selectVoList(lqw);
}

Loading…
Cancel
Save