diff --git a/src/main/java/com/glxp/api/controller/inout/IoCodeController.java b/src/main/java/com/glxp/api/controller/inout/IoCodeController.java index e3983d154..f47aec5d0 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeController.java @@ -71,5 +71,17 @@ public class IoCodeController extends BaseController { return ResultVOUtils.success(pageSimpleResponse); } + /** + * 单据编辑,查询条码列表 + * + * @param filterCodeRequest + * @return + */ + @GetMapping("/udiwms/inout/code/getCodeListForEdit") + public BaseResponse getCodeListForEdit(FilterCodeRequest filterCodeRequest) { + List list = ioCodeService.getCodeListForEdit(filterCodeRequest); + PageInfo pageInfo = new PageInfo<>(list); + return ResultVOUtils.page(pageInfo); + } } diff --git a/src/main/java/com/glxp/api/service/inout/IoCodeService.java b/src/main/java/com/glxp/api/service/inout/IoCodeService.java index 7ef7b356e..4ad1e0772 100644 --- a/src/main/java/com/glxp/api/service/inout/IoCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/IoCodeService.java @@ -40,5 +40,11 @@ public interface IoCodeService { */ BaseResponse deleteCodeByOrderId(String orderId); - + /** + * 查询单据编辑条码列表 + * + * @param filterCodeRequest + * @return + */ + List getCodeListForEdit(FilterCodeRequest filterCodeRequest); } diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoCodeServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoCodeServiceImpl.java index 657bb3909..93e27dabe 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoCodeServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoCodeServiceImpl.java @@ -1,5 +1,6 @@ package com.glxp.api.service.inout.impl; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; @@ -7,13 +8,18 @@ import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.dao.inout.IoCodeDao; +import com.glxp.api.dao.inout.IoCodeTempDao; +import com.glxp.api.dao.inout.IoOrderDao; import com.glxp.api.entity.inout.IoCodeEntity; +import com.glxp.api.entity.inout.IoOrderEntity; import com.glxp.api.req.inout.FilterCodeRequest; import com.glxp.api.res.inout.IoCodeResponse; +import com.glxp.api.res.inout.IoCodeTempResponse; import com.glxp.api.service.inout.IoCodeService; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -22,6 +28,10 @@ public class IoCodeServiceImpl implements IoCodeService { @Resource private IoCodeDao ioCodeDao; + @Resource + private IoOrderDao orderDao; + @Resource + private IoCodeTempDao ioCodeTempDao; @Override public int insert(IoCodeEntity codeEnttity) { @@ -80,5 +90,26 @@ public class IoCodeServiceImpl implements IoCodeService { return ResultVOUtils.success("删除成功"); } + @Override + public List getCodeListForEdit(FilterCodeRequest filterCodeRequest) { + List ioCodeResponses = new ArrayList<>(); + //查询此单的数据 + IoOrderEntity order = orderDao.selectOne(new QueryWrapper().eq("billNo", filterCodeRequest.getOrderId())); + //根据单据状态判断查询正式码表还是临时码表 + if (order.getStatus() > 4) { + //查询正式码表 + ioCodeResponses = ioCodeDao.filterList(filterCodeRequest); + } else { + //查询临时码表 + List list = ioCodeTempDao.selectCodeList(filterCodeRequest); + for (IoCodeTempResponse ioCodeTempResponse : list) { + IoCodeResponse ioCodeResponse = new IoCodeResponse(); + BeanUtil.copyProperties(ioCodeTempResponse, ioCodeResponse); + ioCodeResponses.add(ioCodeResponse); + } + } + return ioCodeResponses; + } + } diff --git a/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml b/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml index 8211966be..372730bca 100644 --- a/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml @@ -10,6 +10,9 @@ orderId = #{orderId} + + AND code = #{code} +