Browse Source
feat(wcs): 新增立库空托盘类型管理功能
feat(wcs): 新增立库空托盘类型管理功能
- 在PalletData实体中增加stationCode字段 - 新增三个数据库操作接口:查询立库空托盘、根据家族获取托盘类型、修改托盘类型 - 实现对应的XML映射SQL逻辑 - 新增EmptyPalletTypeController控制器提供REST接口 - 支持分页查询立库内空托盘列表 - 提供根据托盘家族获取可用托盘类型的接口 - 实现修改托盘类型的业务逻辑 - 注释掉SOIssueNotifyOrderMaterialListDetailMapper中的task_ref条件限制master
5 changed files with 233 additions and 1 deletions
-
128src/main/java/com/gaotao/modules/automatedWarehouse/controller/EmptyPalletTypeController.java
-
29src/main/java/com/gaotao/modules/warehouse/dao/PalletMapper.java
-
6src/main/java/com/gaotao/modules/warehouse/entity/PalletData.java
-
2src/main/resources/mapper/notify/SOIssueNotifyOrderMaterialListDetailMapper.xml
-
69src/main/resources/mapper/warehouse/PalletMapper.xml
@ -0,0 +1,128 @@ |
|||||
|
package com.gaotao.modules.automatedWarehouse.controller; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.gaotao.common.utils.PageUtils; |
||||
|
import com.gaotao.common.utils.R; |
||||
|
import com.gaotao.modules.base.entity.PalletType; |
||||
|
import com.gaotao.modules.sys.controller.AbstractController; |
||||
|
import com.gaotao.modules.warehouse.dao.PalletMapper; |
||||
|
import com.gaotao.modules.warehouse.entity.PalletData; |
||||
|
import lombok.extern.slf4j.Slf4j; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* @Description 立库内空托盘类型修改Controller - rqrq |
||||
|
* |
||||
|
* <p><b>功能说明:</b></p> |
||||
|
* <ul> |
||||
|
* <li>查询立库内的空托盘(wcs_location不为空且empty_flag='Y')</li> |
||||
|
* <li>根据pallet_family获取可选的托盘类型</li> |
||||
|
* <li>修改托盘的pallet_type</li> |
||||
|
* </ul> |
||||
|
* |
||||
|
* @Author rqrq |
||||
|
* @Date 2025/12/11 |
||||
|
*/ |
||||
|
@Slf4j |
||||
|
@RestController |
||||
|
@RequestMapping("/wcsSystem/emptyPalletType") |
||||
|
public class EmptyPalletTypeController extends AbstractController { |
||||
|
|
||||
|
@Autowired |
||||
|
private PalletMapper palletMapper; |
||||
|
|
||||
|
/** |
||||
|
* @Description 查询立库内空托盘列表 - rqrq |
||||
|
* @param data 查询条件 |
||||
|
* @return R |
||||
|
* @author rqrq |
||||
|
*/ |
||||
|
@PostMapping(value="/list") |
||||
|
@ResponseBody |
||||
|
public R list(@RequestBody PalletData data) throws Exception { |
||||
|
log.info("开始查询立库内空托盘列表 - rqrq"); |
||||
|
|
||||
|
// 参数校验 - rqrq |
||||
|
if (!StringUtils.hasText(data.getSite())) { |
||||
|
throw new RuntimeException("工厂编码不能为空"); |
||||
|
} |
||||
|
|
||||
|
// 设置分页参数 - rqrq |
||||
|
int pageNum = data.getPage() != null ? data.getPage() : 1; |
||||
|
int pageSize = data.getLimit() != null ? data.getLimit() : 20; |
||||
|
|
||||
|
// 查询立库内空托盘 - rqrq |
||||
|
IPage<PalletData> pageResult = palletMapper.selectEmptyPalletsInWarehouse( |
||||
|
new Page<>(pageNum, pageSize), |
||||
|
data |
||||
|
); |
||||
|
|
||||
|
PageUtils pageUtils = new PageUtils(pageResult); |
||||
|
|
||||
|
log.info("查询立库内空托盘列表完成 - rqrq,共{}条", pageResult.getTotal()); |
||||
|
return R.ok().put("page", pageUtils); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Description 根据pallet_family获取可选的托盘类型列表 - rqrq |
||||
|
* @param params 参数(site, palletFamily) |
||||
|
* @return R |
||||
|
* @author rqrq |
||||
|
*/ |
||||
|
@PostMapping(value="/getPalletTypes") |
||||
|
@ResponseBody |
||||
|
public R getPalletTypes(@RequestBody Map<String, Object> params) throws Exception { |
||||
|
log.info("开始获取托盘类型列表 - rqrq"); |
||||
|
|
||||
|
String site = (String) params.get("site"); |
||||
|
String palletFamily = (String) params.get("palletFamily"); |
||||
|
|
||||
|
// 参数校验 - rqrq |
||||
|
if (!StringUtils.hasText(site) || !StringUtils.hasText(palletFamily)) { |
||||
|
throw new RuntimeException("参数不能为空"); |
||||
|
} |
||||
|
|
||||
|
// 查询托盘类型 - rqrq |
||||
|
List<PalletType> rows = palletMapper.getPalletTypesByFamily(site, palletFamily); |
||||
|
|
||||
|
log.info("获取托盘类型列表完成 - rqrq,共{}条", rows.size()); |
||||
|
return R.ok().put("rows", rows); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Description 修改托盘类型 - rqrq |
||||
|
* @param params 参数(site, palletId, palletType) |
||||
|
* @return R |
||||
|
* @author rqrq |
||||
|
*/ |
||||
|
@PostMapping(value="/updateType") |
||||
|
@ResponseBody |
||||
|
public R updateType(@RequestBody Map<String, Object> params) throws Exception { |
||||
|
log.info("开始修改托盘类型 - rqrq"); |
||||
|
|
||||
|
String site = (String) params.get("site"); |
||||
|
String palletId = (String) params.get("palletId"); |
||||
|
String palletType = (String) params.get("palletType"); |
||||
|
|
||||
|
// 参数校验 - rqrq |
||||
|
if (!StringUtils.hasText(site) || !StringUtils.hasText(palletId) || !StringUtils.hasText(palletType)) { |
||||
|
throw new RuntimeException("参数不能为空"); |
||||
|
} |
||||
|
|
||||
|
// 获取当前用户 - rqrq |
||||
|
String username = getUser() != null ? getUser().getUsername() : "SYSTEM"; |
||||
|
|
||||
|
// 修改托盘类型 - rqrq |
||||
|
palletMapper.updatePalletType(site, palletId, palletType, username); |
||||
|
|
||||
|
log.info("修改托盘类型完成 - rqrq,palletId={},newType={}", palletId, palletType); |
||||
|
return R.ok(); |
||||
|
} |
||||
|
} |
||||
|
|
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue