仓库业务逻辑补全2.0 : 1、出库修改删除数据时库存相应改变;2、出库的列表查询 新增更多查询参数 ;3、修复一些BUG
This commit is contained in:
@@ -4,6 +4,8 @@ import java.util.List;
|
||||
import java.util.Arrays;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import com.ruoyi.oa.domain.bo.SysOaOutWarehouseBoList;
|
||||
import com.ruoyi.oa.domain.vo.SysOaOutWarehouseListVo;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.constraints.*;
|
||||
@@ -46,7 +48,7 @@ public class SysOaOutWarehouseController extends BaseController {
|
||||
*/
|
||||
@SaCheckPermission("oa:oaOutWarehouse:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<SysOaOutWarehouseVo> list(SysOaOutWarehouseBo bo, PageQuery pageQuery) {
|
||||
public TableDataInfo<SysOaOutWarehouseListVo> list(SysOaOutWarehouseBo bo, PageQuery pageQuery) {
|
||||
return iSysOaOutWarehouseService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@@ -98,6 +100,18 @@ public class SysOaOutWarehouseController extends BaseController {
|
||||
return toAjax(iSysOaOutWarehouseService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量新增仓库出库
|
||||
*/
|
||||
@SaCheckPermission("oa:oaOutWarehouse:add")
|
||||
@Log(title = "仓库批量出库",businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping("/insertOutBatch")
|
||||
public R<Void> addAll(@Validated(AddGroup.class) @RequestBody SysOaOutWarehouseBoList boList) {
|
||||
return toAjax(iSysOaOutWarehouseService.insertByBoList(boList));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 修改仓库出库
|
||||
*/
|
||||
|
||||
@@ -26,8 +26,8 @@ public class SysOaOutWarehouseBo extends BaseEntity {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@NotNull(message = "出库数量不能为空", groups = { EditGroup.class })
|
||||
@TableId(value = "id",type = IdType.AUTO)
|
||||
@NotNull(message = "主键id不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
@@ -52,5 +52,13 @@ public class SysOaOutWarehouseBo extends BaseEntity {
|
||||
@NotNull(message = "出库对象id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long warehouseId;
|
||||
|
||||
/**
|
||||
* 项目名
|
||||
*/
|
||||
private String projectName;
|
||||
|
||||
/**
|
||||
* 物料名
|
||||
*/
|
||||
private String warehouseName;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.ruoyi.oa.domain.bo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import com.ruoyi.common.core.validate.AddGroup;
|
||||
import com.ruoyi.common.core.validate.EditGroup;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 仓库出库业务对象 sys_oa_out_warehouse
|
||||
*
|
||||
* @author liuzongkun999
|
||||
* @date 2024-11-02
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysOaOutWarehouseBo2 extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 物料id
|
||||
*/
|
||||
@NotNull(message = "出库对象id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long warehouseId;
|
||||
|
||||
/**
|
||||
* 出库数量
|
||||
*/
|
||||
@NotNull(message = "出库数量不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long amount;
|
||||
|
||||
/**
|
||||
* 出库备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 对应项目id
|
||||
*/
|
||||
private Long projectId;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.ruoyi.oa.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import com.ruoyi.common.core.validate.AddGroup;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
/**
|
||||
* 仓库批量出库业务对象 sys_oa_out_warehouse
|
||||
*
|
||||
* @author liuzongkun999
|
||||
* @date 2024-11-05
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysOaOutWarehouseBoList extends BaseEntity {
|
||||
/**
|
||||
* 该项目对应的出库数据
|
||||
*/
|
||||
private List<SysOaOutWarehouseBo2> outWareHouseList;
|
||||
|
||||
/**
|
||||
* 项目id
|
||||
*/
|
||||
@NotNull(message = "项目id不能为空", groups = AddGroup.class)
|
||||
private Long projectId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package com.ruoyi.oa.domain.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 仓库出库查询对象 sys_oa_out_warehouse
|
||||
*
|
||||
* @author liuzongkun999
|
||||
* @date 2024-11-02
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class SysOaOutWarehouseListVo {
|
||||
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 出库后对应的项目id
|
||||
*/
|
||||
private Long projectId;
|
||||
|
||||
/**
|
||||
* 出库数量
|
||||
*/
|
||||
private Long amount;
|
||||
|
||||
/**
|
||||
* 项目名称
|
||||
*/
|
||||
private String projectName;
|
||||
|
||||
/**
|
||||
* 出库备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 出库对象id
|
||||
*/
|
||||
private Long warehouseId;
|
||||
|
||||
/**
|
||||
* 出库物料名称
|
||||
*/
|
||||
private String warehouseName;
|
||||
|
||||
|
||||
}
|
||||
@@ -2,10 +2,7 @@ package com.ruoyi.oa.domain.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.ruoyi.common.annotation.ExcelDictFormat;
|
||||
import com.ruoyi.common.convert.ExcelDictConvert;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,8 +1,16 @@
|
||||
package com.ruoyi.oa.mapper;
|
||||
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.oa.domain.SysOaOutWarehouse;
|
||||
import com.ruoyi.oa.domain.bo.SysOaOutWarehouseBo;
|
||||
import com.ruoyi.oa.domain.bo.SysOaOutWarehouseBo2;
|
||||
import com.ruoyi.oa.domain.vo.SysOaOutWarehouseListVo;
|
||||
import com.ruoyi.oa.domain.vo.SysOaOutWarehouseVo;
|
||||
import com.ruoyi.common.core.mapper.BaseMapperPlus;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 仓库出库Mapper接口
|
||||
@@ -12,4 +20,10 @@ import com.ruoyi.common.core.mapper.BaseMapperPlus;
|
||||
*/
|
||||
public interface SysOaOutWarehouseMapper extends BaseMapperPlus<SysOaOutWarehouseMapper, SysOaOutWarehouse, SysOaOutWarehouseVo> {
|
||||
|
||||
/**
|
||||
* 仓库出库筛选(联查)
|
||||
*/
|
||||
List<SysOaOutWarehouseListVo> defineselectList(@Param(value = "bo") SysOaOutWarehouseBo bo, @Param(value = "page") PageQuery pageQuery);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.ruoyi.oa.mapper;
|
||||
|
||||
import com.ruoyi.oa.domain.SysOaOutWarehouse;
|
||||
import com.ruoyi.oa.domain.SysOaProject;
|
||||
import com.ruoyi.oa.domain.vo.SysOaProjectVo;
|
||||
import com.ruoyi.common.core.mapper.BaseMapperPlus;
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package com.ruoyi.oa.service;
|
||||
|
||||
import com.ruoyi.oa.domain.SysOaOutWarehouse;
|
||||
import com.ruoyi.oa.domain.bo.SysOaOutWarehouseBoList;
|
||||
import com.ruoyi.oa.domain.vo.SysOaOutWarehouseListVo;
|
||||
import com.ruoyi.oa.domain.vo.SysOaOutWarehouseVo;
|
||||
import com.ruoyi.oa.domain.bo.SysOaOutWarehouseBo;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
@@ -32,7 +34,7 @@ public interface ISysOaOutWarehouseService {
|
||||
/**
|
||||
* 查询仓库出库列表
|
||||
*/
|
||||
TableDataInfo<SysOaOutWarehouseVo> queryPageList(SysOaOutWarehouseBo bo, PageQuery pageQuery);
|
||||
TableDataInfo<SysOaOutWarehouseListVo> queryPageList(SysOaOutWarehouseBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询仓库出库列表
|
||||
@@ -44,6 +46,11 @@ public interface ISysOaOutWarehouseService {
|
||||
*/
|
||||
Boolean insertByBo(SysOaOutWarehouseBo bo);
|
||||
|
||||
/**
|
||||
* 仓库批量出库
|
||||
*/
|
||||
Boolean insertByBoList(SysOaOutWarehouseBoList boList);
|
||||
|
||||
/**
|
||||
* 修改仓库出库
|
||||
*/
|
||||
@@ -55,5 +62,4 @@ public interface ISysOaOutWarehouseService {
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,13 +1,20 @@
|
||||
package com.ruoyi.oa.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.ruoyi.oa.domain.SysOaProject;
|
||||
import com.ruoyi.oa.domain.SysOaWarehouse;
|
||||
import com.ruoyi.oa.domain.bo.SysOaOutWarehouseBo2;
|
||||
import com.ruoyi.oa.domain.bo.SysOaOutWarehouseBoList;
|
||||
import com.ruoyi.oa.domain.vo.SysOaOutWarehouseListVo;
|
||||
import com.ruoyi.oa.mapper.SysOaProjectMapper;
|
||||
import com.ruoyi.oa.mapper.SysOaWarehouseMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -17,10 +24,13 @@ import com.ruoyi.oa.domain.SysOaOutWarehouse;
|
||||
import com.ruoyi.oa.mapper.SysOaOutWarehouseMapper;
|
||||
import com.ruoyi.oa.service.ISysOaOutWarehouseService;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
import static cn.hutool.core.bean.BeanUtil.*;
|
||||
|
||||
/**
|
||||
* 仓库出库Service业务层处理
|
||||
*
|
||||
@@ -61,9 +71,19 @@ public class SysOaOutWarehouseServiceImpl implements ISysOaOutWarehouseService {
|
||||
* 查询仓库出库列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<SysOaOutWarehouseVo> queryPageList(SysOaOutWarehouseBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<SysOaOutWarehouse> lqw = buildQueryWrapper(bo);
|
||||
Page<SysOaOutWarehouseVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
public TableDataInfo<SysOaOutWarehouseListVo> queryPageList(SysOaOutWarehouseBo bo, PageQuery pageQuery) {
|
||||
// LambdaQueryWrapper<SysOaOutWarehouse> lqw = buildQueryWrapper(bo);
|
||||
// Page<SysOaOutWarehouseVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
pageQuery.setPageNum(ObjectUtil.defaultIfNull(pageQuery.getPageNum(), 1));
|
||||
pageQuery.setPageSize(ObjectUtil.defaultIfNull(pageQuery.getPageSize(), Integer.MAX_VALUE));
|
||||
if (pageQuery.getPageNum() <= 0) {
|
||||
pageQuery.setPageNum(1);
|
||||
}
|
||||
if (pageQuery.getPageSize() <= 0) {
|
||||
pageQuery.setPageSize(Integer.MAX_VALUE);
|
||||
}
|
||||
pageQuery.setPageNum((pageQuery.getPageNum() - 1)*pageQuery.getPageSize());
|
||||
List<SysOaOutWarehouseListVo> result = baseMapper.defineselectList(bo, pageQuery);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@@ -79,9 +99,11 @@ public class SysOaOutWarehouseServiceImpl implements ISysOaOutWarehouseService {
|
||||
private LambdaQueryWrapper<SysOaOutWarehouse> buildQueryWrapper(SysOaOutWarehouseBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<SysOaOutWarehouse> lqw = Wrappers.lambdaQuery();
|
||||
|
||||
lqw.eq(bo.getProjectId() != null, SysOaOutWarehouse::getProjectId, bo.getProjectId());
|
||||
lqw.eq(bo.getAmount() != null, SysOaOutWarehouse::getAmount, bo.getAmount());
|
||||
lqw.eq(bo.getWarehouseId() != null, SysOaOutWarehouse::getWarehouseId, bo.getWarehouseId());
|
||||
|
||||
return lqw;
|
||||
}
|
||||
|
||||
@@ -90,10 +112,13 @@ public class SysOaOutWarehouseServiceImpl implements ISysOaOutWarehouseService {
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(SysOaOutWarehouseBo bo) {
|
||||
SysOaOutWarehouse decrease = BeanUtil.toBean(bo, SysOaOutWarehouse.class);
|
||||
SysOaOutWarehouse decrease = toBean(bo, SysOaOutWarehouse.class);
|
||||
validEntityBeforeSave(decrease);
|
||||
SysOaWarehouse warehouse = baseMapper2.selectById(decrease.getWarehouseId());
|
||||
// 1 如果对应仓库表项目数量-将要出库数量<0,出库失败, 繁殖 , 增加该条
|
||||
if(warehouse == null) {
|
||||
throw new Error("已不存在该物料"+decrease.getWarehouseId());
|
||||
}
|
||||
if(warehouse.getInventory() - decrease.getAmount() < 0) {
|
||||
throw new Error("剩余数量不足,出库失败");
|
||||
}
|
||||
@@ -106,14 +131,74 @@ public class SysOaOutWarehouseServiceImpl implements ISysOaOutWarehouseService {
|
||||
return baseMapper.insert(decrease) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 仓库批量出库
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBoList(SysOaOutWarehouseBoList boList) {
|
||||
|
||||
// 只进行了插入出库表
|
||||
// 还缺少 检验数量是否足够,以及删除对应库存数量的业务逻辑
|
||||
Long projectId = boList.getProjectId();
|
||||
List<SysOaOutWarehouseBo2> list = boList.getOutWareHouseList();
|
||||
|
||||
list.forEach((sysOaOutWarehouseBo2 -> {
|
||||
|
||||
sysOaOutWarehouseBo2.setProjectId(projectId);
|
||||
SysOaOutWarehouseBo sysOaOutWarehouse = toBean(sysOaOutWarehouseBo2, SysOaOutWarehouseBo.class);
|
||||
insertByBo(sysOaOutWarehouse);
|
||||
}));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改仓库出库
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(SysOaOutWarehouseBo bo) {
|
||||
SysOaOutWarehouse update = BeanUtil.toBean(bo, SysOaOutWarehouse.class);
|
||||
SysOaOutWarehouse update = toBean(bo, SysOaOutWarehouse.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
|
||||
// 修改后的数量
|
||||
Long amount1 = update.getAmount();
|
||||
|
||||
//获得 修改前的数量
|
||||
SysOaOutWarehouse sysOaOutWarehouse = baseMapper.selectById(update.getId());
|
||||
Long amount = sysOaOutWarehouse.getAmount();
|
||||
|
||||
//找出库存表对应的那条数据 的库存数量
|
||||
LambdaQueryWrapper<SysOaWarehouse> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(SysOaWarehouse::getId, update.getWarehouseId());
|
||||
SysOaWarehouse warehouse = baseMapper2.selectOne(lqw);
|
||||
Long inventory = warehouse.getInventory();
|
||||
|
||||
//出库多了
|
||||
if(amount1 > amount) {
|
||||
//确保出库不超余量
|
||||
if(amount1-amount<=inventory) {
|
||||
//可以减少差值
|
||||
baseMapper.updateById(update);
|
||||
warehouse.setInventory(inventory -( amount1 - amount));
|
||||
baseMapper2.updateById(warehouse);
|
||||
}
|
||||
else {
|
||||
throw new Error("库存数量不足,无法增加出库数量");
|
||||
}
|
||||
}
|
||||
else {
|
||||
//确保出库不能为负
|
||||
if (amount1 > 0) {
|
||||
//此时增加差值
|
||||
baseMapper.updateById(update);
|
||||
warehouse.setInventory(warehouse.getInventory() + amount - amount1);
|
||||
baseMapper2.updateById(warehouse);
|
||||
}
|
||||
else {
|
||||
throw new Error("出库数量不能为负");
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -131,7 +216,28 @@ public class SysOaOutWarehouseServiceImpl implements ISysOaOutWarehouseService {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
|
||||
|
||||
//需要增加的对应物料数量
|
||||
LambdaQueryWrapper<SysOaOutWarehouse> lqw = Wrappers.lambdaQuery();
|
||||
lqw.in(SysOaOutWarehouse::getId, ids.toArray());
|
||||
|
||||
List<SysOaOutWarehouse> sysOaOutWarehouses = baseMapper.selectList(lqw); //出库表中的所有删除的数据
|
||||
|
||||
sysOaOutWarehouses.forEach(sysOaOutWarehouse -> { //其中一条
|
||||
|
||||
|
||||
//选出相对应的 库存表中那一条的数据
|
||||
LambdaQueryWrapper<SysOaWarehouse> lqw2 = Wrappers.lambdaQuery();
|
||||
lqw2.eq(SysOaWarehouse::getId, sysOaOutWarehouse.getWarehouseId());
|
||||
SysOaWarehouse warehouse = baseMapper2.selectOne(lqw2);
|
||||
|
||||
// 恢复原本出库的数量
|
||||
warehouse.setInventory(warehouse.getInventory() + sysOaOutWarehouse.getAmount());
|
||||
baseMapper2.updateById(warehouse);
|
||||
});
|
||||
boolean flag = baseMapper.deleteBatchIds(ids) > 0;
|
||||
return flag;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -7,6 +7,8 @@ import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.ruoyi.oa.domain.SysOaOutWarehouse;
|
||||
import com.ruoyi.oa.mapper.SysOaOutWarehouseMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.ruoyi.oa.domain.bo.SysOaWarehouseBo;
|
||||
@@ -15,6 +17,7 @@ import com.ruoyi.oa.domain.SysOaWarehouse;
|
||||
import com.ruoyi.oa.mapper.SysOaWarehouseMapper;
|
||||
import com.ruoyi.oa.service.ISysOaWarehouseService;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
@@ -31,6 +34,8 @@ public class SysOaWarehouseServiceImpl implements ISysOaWarehouseService {
|
||||
|
||||
private final SysOaWarehouseMapper baseMapper;
|
||||
|
||||
private final SysOaOutWarehouseMapper outWareMapper;
|
||||
|
||||
/**
|
||||
* 查询仓库管理
|
||||
*/
|
||||
@@ -122,6 +127,13 @@ public class SysOaWarehouseServiceImpl implements ISysOaWarehouseService {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
LambdaQueryWrapper<SysOaWarehouse> lqw = Wrappers.lambdaQuery();
|
||||
lqw.in(SysOaWarehouse::getId, ids);
|
||||
List<SysOaWarehouse> sysOaWarehouses = baseMapper.selectList(lqw);
|
||||
sysOaWarehouses.forEach(sysOaWarehouse -> {
|
||||
sysOaWarehouse.setDelFlag(1L);
|
||||
});
|
||||
|
||||
return baseMapper.updateBatchById(sysOaWarehouses);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,4 +18,49 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</resultMap>
|
||||
|
||||
|
||||
<!-- 仓库出库筛选(联查) -->
|
||||
<select id="defineselectList" resultType="com.ruoyi.oa.domain.vo.SysOaOutWarehouseListVo">
|
||||
select
|
||||
ware.id as id,
|
||||
ware.project_id as projectId,
|
||||
ware.amount as amount,
|
||||
ware.remark as remark,
|
||||
ware.warehouse_id as warehouseId,
|
||||
project.project_name as projectName
|
||||
from
|
||||
sys_oa_out_warehouse ware
|
||||
join
|
||||
sys_oa_project project on ware.project_id = project.project_id
|
||||
<if test="bo.warehouseName != null and bo.warehouseName != ''">
|
||||
join sys_oa_warehouse warehouse on warehouse.id = ware.warehouse_id
|
||||
</if>
|
||||
<where>
|
||||
<if test="bo.projectName != null and bo.projectName != ''">
|
||||
and project.project_name like concat('%', #{bo.projectName}, '%')
|
||||
</if>
|
||||
<if test="bo.id != null and bo.id != ''">
|
||||
and ware.id = #{bo.id}
|
||||
</if>
|
||||
<if test="bo.projectId != null and bo.projectId != ''">
|
||||
and project.project_id = #{bo.projectId}
|
||||
</if>
|
||||
<if test="bo.amount != null and bo.amount != ''">
|
||||
and ware.amount = #{bo.amount}
|
||||
</if>
|
||||
<if test="bo.remark != null and bo.remark != ''">
|
||||
and ware.remark like concat('%', #{bo.remark}, '%')
|
||||
</if>
|
||||
<if test="bo.warehouseId != null and bo.warehouseId != ''">
|
||||
and ware.warehouse_id = #{bo.warehouseId}
|
||||
</if>
|
||||
<if test="bo.warehouseName != null and bo.warehouseName != ''">
|
||||
and warehouse.name like concat('%', #{bo.warehouseName}, '%')
|
||||
</if>
|
||||
</where>
|
||||
<if test="page != null and page.pageNum != null and page.pageSize != null">
|
||||
limit #{page.pageNum}, #{page.pageSize}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
||||
@@ -34,5 +34,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</resultMap>
|
||||
|
||||
|
||||
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user