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