增加 调拨出库查询接口

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

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

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

Loading…
Cancel
Save