Merge branch 'dev' into cbs

This commit is contained in:
cbs 2025-03-28 16:00:56 +08:00
commit 0a18d3b547
10 changed files with 61 additions and 24 deletions

View File

@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.system.controller.admin.housearea;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaPageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaRespVO;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaSaveReqVO;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLanePageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLaneRespVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLaneSaveReqVO;
@ -47,9 +48,9 @@ public class HouseAreaController {
@PostMapping("/createOrEditOrDel")
@Operation(summary = "创建修改删除库区")
@PreAuthorize("@ss.hasPermission('ware:house-area:create')")
public CommonResult<Boolean> createOrEditOrDel(@Valid @RequestBody HouseAreaSaveReqVO createReqVO) {
houseAreaService.createOrEditOrDel(createReqVO);
return success(true);
public CommonResult<HouseAreaVO> createOrEditOrDel(@Valid @RequestBody HouseAreaSaveReqVO createReqVO) {
HouseAreaVO vo = houseAreaService.createOrEditOrDel(createReqVO);
return success(vo);
}
@GetMapping("/get")

View File

@ -0,0 +1,15 @@
package cn.iocoder.yudao.module.system.controller.admin.housearea.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;
@Data
@Accessors(chain = true)
public class HouseAreaVO {
@Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2922")
private Long id;
@Schema(description = "库区名称", example = "李四")
private String areaName;
}

View File

@ -4,12 +4,10 @@ import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaPageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaRespVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.HouseLaneVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLanePageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLaneRespVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLaneSaveReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.housearea.HouseAreaDO;
import cn.iocoder.yudao.module.system.dal.dataobject.houselane.WareHouseLaneDO;
import cn.iocoder.yudao.module.system.service.houselane.WareHouseLaneService;
import io.swagger.v3.oas.annotations.Operation;
@ -38,9 +36,9 @@ public class WareHouseLaneController {
@PostMapping("/createOrEditOrDel")
@Operation(summary = "创建修改删除线库")
@PreAuthorize("@ss.hasPermission('ware:house-lane:create')")
public CommonResult<Boolean> createOrEditOrDel(@Valid @RequestBody WareHouseLaneSaveReqVO createReqVO) {
houseLaneService.createOrEditOrDel(createReqVO);
return success(true);
public CommonResult<HouseLaneVO> createOrEditOrDel(@Valid @RequestBody WareHouseLaneSaveReqVO createReqVO) {
HouseLaneVO vo = houseLaneService.createOrEditOrDel(createReqVO);
return success(vo);
}
@GetMapping("/get")
@ -78,7 +76,7 @@ public class WareHouseLaneController {
@DeleteMapping("/delete")
@Operation(summary = "删除线库")
@Parameter(name = "id", description = "菜单编号", required= true, example = "1024")
@Parameter(name = "id", description = "菜单编号", required = true, example = "1024")
public CommonResult<Boolean> delete(@RequestParam("id") Long id) {
houseLaneService.delete(id);
return success(true);

View File

@ -0,0 +1,17 @@
package cn.iocoder.yudao.module.system.controller.admin.houselane.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;
@Data
@Accessors(chain = true)
public class HouseLaneVO {
@Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "4293")
private Long id;
@Schema(description = "线库名称", example = "芋艿")
private String laneName;
}

View File

@ -52,7 +52,7 @@ public class TenantSaveReqVO {
// ========== 创建需要传递的字段 ==========
@Schema(description = "用户账号", requiredMode = Schema.RequiredMode.REQUIRED, example = "yudao")
@Pattern(regexp = "^[a-zA-Z0-9]{4,30}$", message = "用户账号由 数字、字母 组成")
@Pattern(regexp = "^[a-zA-Z0-9]{4,30}$", message = "用户名称由 数字、字母 组成")
@Size(min = 4, max = 30, message = "用户账号长度为 4-30 个字符")
private String username;

View File

@ -23,7 +23,7 @@ public class UserSaveReqVO {
@Schema(description = "用户账号", requiredMode = Schema.RequiredMode.REQUIRED, example = "yudao")
@NotBlank(message = "用户账号不能为空")
@Pattern(regexp = "^[a-zA-Z0-9]{4,30}$", message = "用户账号由 数字、字母 组成")
@Pattern(regexp = "^[a-zA-Z0-9]{4,30}$", message = "用户名称由 数字、字母 组成")
@Size(min = 4, max = 30, message = "用户账号长度为 4-30 个字符")
@DiffLogField(name = "用户账号")
private String username;

View File

@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.system.service.housearea;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaPageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaSaveReqVO;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaVO;
import cn.iocoder.yudao.module.system.dal.dataobject.housearea.HouseAreaDO;
import com.baomidou.mybatisplus.extension.service.IService;
@ -59,7 +60,7 @@ public interface HouseAreaService extends IService<HouseAreaDO> {
*
* @param createReqVO
*/
void createOrEditOrDel(@Valid HouseAreaSaveReqVO createReqVO);
HouseAreaVO createOrEditOrDel(@Valid HouseAreaSaveReqVO createReqVO);
/**
* 获得全部库区

View File

@ -10,6 +10,7 @@ import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaPageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaSaveReqVO;
import cn.iocoder.yudao.module.system.controller.admin.housearea.vo.HouseAreaVO;
import cn.iocoder.yudao.module.system.controller.admin.positionmap.dto.PositionMapConditionDTO;
import cn.iocoder.yudao.module.system.dal.dataobject.housearea.HouseAreaDO;
import cn.iocoder.yudao.module.system.dal.dataobject.houselocation.WareHouseLocationDO;
@ -93,7 +94,7 @@ public class HouseAreaServiceImpl extends ServiceImpl<HouseAreaMapper, HouseArea
@Override
@Transactional(rollbackFor = Exception.class)
public void createOrEditOrDel(HouseAreaSaveReqVO createReqVO) {
public HouseAreaVO createOrEditOrDel(HouseAreaSaveReqVO createReqVO) {
// 判断名称唯一
Long count = houseAreaMapper.selectCount(
new LambdaQueryWrapper<HouseAreaDO>()
@ -115,10 +116,10 @@ public class HouseAreaServiceImpl extends ServiceImpl<HouseAreaMapper, HouseArea
//2.查询目前的地图所有的库位点位列表 - 如果没有的话 - 就设为空列表先 -
List<PositionMapItemDO> list = positionMapItemService.getByCondition(new PositionMapConditionDTO()
.setPositionMapId(createReqVO.getPositionMapId())
.setType(NodeTypeEnum.WARE.getType())
.setIds(createReqVO.getMapItemIds())
.setAreaId(createReqVO.getId()));
.setPositionMapId(createReqVO.getPositionMapId())
.setType(NodeTypeEnum.WARE.getType())
.setIds(createReqVO.getMapItemIds())
.setAreaId(createReqVO.getId()));
//3.判定当前这些点位是否已经有包含线库了 -
List<PositionMapItemDO> containList = list.stream().filter(a -> a.getAreaId() != null && !a.getAreaId().equals(createReqVO.getId())).collect(Collectors.toList());
@ -165,6 +166,7 @@ public class HouseAreaServiceImpl extends ServiceImpl<HouseAreaMapper, HouseArea
if (CollUtil.isNotEmpty(wareHouseLocationList)) {
houseLocationService.updateBatchById(wareHouseLocationList);
}
return new HouseAreaVO().setId(houseArea.getId()).setAreaName(houseArea.getAreaName());
}
@Override

View File

@ -1,6 +1,7 @@
package cn.iocoder.yudao.module.system.service.houselane;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.HouseLaneVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLanePageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLaneSaveReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.houselane.WareHouseLaneDO;
@ -37,7 +38,7 @@ public interface WareHouseLaneService extends IService<WareHouseLaneDO> {
*
* @param createReqVO
*/
void createOrEditOrDel(@Valid WareHouseLaneSaveReqVO createReqVO);
HouseLaneVO createOrEditOrDel(@Valid WareHouseLaneSaveReqVO createReqVO);
/**
* 删除线库

View File

@ -7,6 +7,7 @@ import cn.hutool.json.JSONUtil;
import cn.iocoder.yudao.framework.common.enums.NodeTypeEnum;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.HouseLaneVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLanePageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.houselane.vo.WareHouseLaneSaveReqVO;
import cn.iocoder.yudao.module.system.controller.admin.positionmap.dto.PositionMapConditionDTO;
@ -67,7 +68,7 @@ public class WareHouseLaneServiceImpl extends ServiceImpl<WareHouseLaneMapper, W
@Override
@Transactional(rollbackFor = Exception.class)
public void createOrEditOrDel(WareHouseLaneSaveReqVO createReqVO) {
public HouseLaneVO createOrEditOrDel(WareHouseLaneSaveReqVO createReqVO) {
// 判断名称唯一
Long num = houseLaneMapper.selectCount(
new LambdaQueryWrapper<WareHouseLaneDO>()
@ -89,10 +90,10 @@ public class WareHouseLaneServiceImpl extends ServiceImpl<WareHouseLaneMapper, W
//2.查询目前的点位列表 - 如果没有的话 - 就设为空列表先 -
List<PositionMapItemDO> list = positionMapItemService.getByCondition(new PositionMapConditionDTO()
.setPositionMapId(createReqVO.getPositionMapId())
.setLaneId(createReqVO.getId())
.setType(NodeTypeEnum.WARE.getType())
.setIds(createReqVO.getMapItemIds()));
.setPositionMapId(createReqVO.getPositionMapId())
.setLaneId(createReqVO.getId())
.setType(NodeTypeEnum.WARE.getType())
.setIds(createReqVO.getMapItemIds()));
//3.判定当前这些点位是否已经有包含线库了 -
List<PositionMapItemDO> containList = list.stream().filter(a -> a.getLaneId() != null && !a.getLaneId().equals(createReqVO.getId())).collect(Collectors.toList());
@ -150,6 +151,7 @@ public class WareHouseLaneServiceImpl extends ServiceImpl<WareHouseLaneMapper, W
if (CollUtil.isNotEmpty(wareHouseLocationList)) {
houseLocationService.updateBatchById(wareHouseLocationList);
}
return new HouseLaneVO().setId(houseLane.getId()).setLaneName(houseLane.getLaneName());
}
@Override