成本中心退库列表和详情信息

This commit is contained in:
zhangke 2025-08-03 14:39:12 +08:00
parent 590fe80e24
commit bd804a13f5
3 changed files with 63 additions and 9 deletions

View File

@ -1,10 +1,12 @@
package com.nflg.wms.admin.controller; package com.nflg.wms.admin.controller;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.convert.Convert;
import com.nflg.wms.common.pojo.ApiResult; import com.nflg.wms.common.pojo.ApiResult;
import com.nflg.wms.common.pojo.PageData; import com.nflg.wms.common.pojo.PageData;
import com.nflg.wms.common.pojo.qo.C_MaterialReturnSearchQO; import com.nflg.wms.common.pojo.qo.C_MaterialReturnSearchQO;
import com.nflg.wms.common.pojo.vo.*; import com.nflg.wms.common.pojo.vo.*;
import com.nflg.wms.common.util.PageUtil;
import com.nflg.wms.repository.entity.WmsCenterReturnItem; import com.nflg.wms.repository.entity.WmsCenterReturnItem;
import com.nflg.wms.repository.entity.WmsCenterReturnScan; import com.nflg.wms.repository.entity.WmsCenterReturnScan;
import com.nflg.wms.repository.service.IWmsCenterReturnItemService; import com.nflg.wms.repository.service.IWmsCenterReturnItemService;
@ -43,11 +45,14 @@ public class CenterReturnController {
@PostMapping("search") @PostMapping("search")
@ApiMark(moduleName = "中心物料退库管理", apiName = "退库单列表") @ApiMark(moduleName = "中心物料退库管理", apiName = "退库单列表")
public ApiResult<PageData<C_MaterialReturnVO>> search(@Valid @RequestBody C_MaterialReturnSearchQO request) { public ApiResult<PageData<C_MaterialReturnVO>> search(@Valid @RequestBody C_MaterialReturnSearchQO request) {
// return ApiResult.success(wmsSrmOrderService.search(request)); PageData<C_MaterialReturnVO> pageData = PageUtil.convert(wmsCenterReturnService.searchDictionary(request), d -> Convert.convert(C_MaterialReturnVO.class, d));
return ApiResult.success(pageData);
} }
/** /**
* 获取退库单详情 * 获取退库单详情
*
* @param orderId 退库单ID不能为空 * @param orderId 退库单ID不能为空
* @return 退库单详情列表 * @return 退库单详情列表
*/ */
@ -73,7 +78,6 @@ public class CenterReturnController {
return ApiResult.success(vos); return ApiResult.success(vos);
} }
private C_MaterialReturnItemVO convertToVO(WmsCenterReturnItem item) { private C_MaterialReturnItemVO convertToVO(WmsCenterReturnItem item) {
C_MaterialReturnItemVO vo = new C_MaterialReturnItemVO(); C_MaterialReturnItemVO vo = new C_MaterialReturnItemVO();
if (item != null) { if (item != null) {
@ -90,11 +94,6 @@ public class CenterReturnController {
return vo; return vo;
} }
// 根据预留单号查询退货信息
//用户确认退货
/** /**
* 根据订单项ID获取扫码信息列表 * 根据订单项ID获取扫码信息列表
* *
@ -129,4 +128,12 @@ public class CenterReturnController {
return scanCodeVO; return scanCodeVO;
} }
// 根据预留单号查询退货信息
//用户确认退货
} }

View File

@ -1,7 +1,10 @@
package com.nflg.wms.repository.service; package com.nflg.wms.repository.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.nflg.wms.common.pojo.qo.C_MaterialReturnSearchQO;
import com.nflg.wms.repository.entity.WmsCenterReturn; import com.nflg.wms.repository.entity.WmsCenterReturn;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import jakarta.validation.Valid;
/** /**
* <p> * <p>
@ -13,4 +16,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface IWmsCenterReturnService extends IService<WmsCenterReturn> { public interface IWmsCenterReturnService extends IService<WmsCenterReturn> {
IPage<WmsCenterReturn> searchDictionary(@Valid C_MaterialReturnSearchQO request);
} }

View File

@ -1,5 +1,10 @@
package com.nflg.wms.repository.service.impl; package com.nflg.wms.repository.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.wms.common.pojo.qo.C_MaterialReturnSearchQO;
import com.nflg.wms.repository.entity.WmsCenterReturn; import com.nflg.wms.repository.entity.WmsCenterReturn;
import com.nflg.wms.repository.mapper.WmsCenterReturnMapper; import com.nflg.wms.repository.mapper.WmsCenterReturnMapper;
import com.nflg.wms.repository.service.IWmsCenterReturnService; import com.nflg.wms.repository.service.IWmsCenterReturnService;
@ -17,4 +22,42 @@ import org.springframework.stereotype.Service;
@Service @Service
public class WmsCenterReturnServiceImpl extends ServiceImpl<WmsCenterReturnMapper, WmsCenterReturn> implements IWmsCenterReturnService { public class WmsCenterReturnServiceImpl extends ServiceImpl<WmsCenterReturnMapper, WmsCenterReturn> implements IWmsCenterReturnService {
/**
* 根据搜索条件分页查询退货单信息
*
* @param request 搜索请求参数对象包含分页信息和搜索条件
* - page: 页码默认为1
* - pageSize: 每页大小默认为10
* - orderNumber: 订单号用于模糊搜索
* - reservedNumber: 预留号用于模糊搜索
* @return 分页查询结果包含退货单信息列表和分页信息
* @throws IllegalArgumentException 当请求参数为空时抛出异常
*/
@Override
public IPage<WmsCenterReturn> searchDictionary(C_MaterialReturnSearchQO request) {
// 参数非空校验
if (request == null) {
throw new IllegalArgumentException("请求参数不能为空");
}
// 分页参数校验
int page = request.getPage() <= 0 ? 1 : request.getPage();
int pageSize = request.getPageSize() <= 0 ? 10 : request.getPageSize();
LambdaQueryWrapper<WmsCenterReturn> queryWrapper = new LambdaQueryWrapper<>();
if (StrUtil.isNotBlank(request.getOrderNumber())) {
// 对用户输入进行转义防止SQL注入
String orderNumber = request.getOrderNumber().replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_");
queryWrapper.like(WmsCenterReturn::getOrderNumber, orderNumber);
}
if (StrUtil.isNotBlank(request.getReservedNumber())) {
// 对用户输入进行转义防止SQL注入
String reservedNumber = request.getReservedNumber().replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_");
queryWrapper.like(WmsCenterReturn::getReservedNumber, reservedNumber);
}
queryWrapper.orderByDesc(WmsCenterReturn::getId);
return baseMapper.selectPage(new Page<>(page, pageSize), queryWrapper);
}
} }