1.添加货位实体类及相关接口

feature-order-fix
x_z 3 years ago
parent 45942aa7c7
commit 1b686aadf2

@ -28,7 +28,7 @@ public class InvCountCodesController {
* @param codesRequest
* @return
*/
@GetMapping("/invCount/codes/filterList")
@GetMapping("/invCount/codes/filter")
public BaseResponse filterList(FilterInvCountCodesRequest codesRequest) {
List<InvCountCodes> list = invCountCodesService.filterList(codesRequest);
PageInfo<InvCountCodes> pageInfo = new PageInfo<>(list);

@ -31,7 +31,7 @@ public class InvCountOrderController {
* @param filterInvCountOrderRequest
* @return
*/
@GetMapping("/invCount/order/filterList")
@GetMapping("/invCount/order/filter")
public BaseResponse filterList(FilterInvCountOrderRequest filterInvCountOrderRequest) {
List<InvCountOrderResponse> list = invCountOrderService.filterList(filterInvCountOrderRequest);
PageInfo<InvCountOrderResponse> pageInfo = new PageInfo<>(list);

@ -29,7 +29,7 @@ public class InvCountOrderDetailController {
*
* @return
*/
@GetMapping("/invCount/order/detail")
@GetMapping("/invCount/order/detail/filter")
public BaseResponse filterList(FilterInvCountOrderDetailRequest detailRequest) {
List<InvCountOrderDetail> list = invCountOrderDetailService.filterList(detailRequest);
PageInfo<InvCountOrderDetail> pageInfo = new PageInfo<>(list);

@ -0,0 +1,93 @@
package com.glxp.api.admin.controller.inventory;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.admin.entity.business.InvSpace;
import com.glxp.api.admin.req.inout.DeleteRequest;
import com.glxp.api.admin.req.inventory.FilterInvSpaceRequest;
import com.glxp.api.admin.res.PageSimpleResponse;
import com.glxp.api.admin.res.inventory.InvSpaceResponse;
import com.glxp.api.admin.service.inventory.InvSpaceService;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
*
*/
@Slf4j
@RestController
public class InvSpaceController {
@Resource
private InvSpaceService invSpaceService;
@GetMapping("/spms/inv/space/filter")
public BaseResponse filterList(FilterInvSpaceRequest filterInvSpaceRequest) {
List<InvSpaceResponse> list = invSpaceService.filterList(filterInvSpaceRequest);
PageInfo<InvSpaceResponse> pageInfo = new PageInfo<>(list);
PageSimpleResponse<InvSpaceResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setList(list);
pageSimpleResponse.setTotal(pageInfo.getTotal());
return ResultVOUtils.success(pageSimpleResponse);
}
/**
*
*
* @param invSpace
* @return
*/
@PostMapping("/spms/inv/space/add")
public BaseResponse addSpace(@RequestBody InvSpace invSpace, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
if (null == invSpace) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
return invSpaceService.addSpace(invSpace);
}
/**
*
*
* @param deleteRequest
* @return
*/
@PostMapping("/spms/inv/space/delete")
public BaseResponse deleteSpace(@RequestBody DeleteRequest deleteRequest) {
if (null == deleteRequest || StrUtil.isBlank(deleteRequest.getId())) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "参数不能为空");
}
return invSpaceService.deleteSpace(deleteRequest.getId());
}
/**
*
*
* @param invSpace
* @param bindingResult
* @return
*/
@PostMapping("/spms/inv/space/update")
public BaseResponse updateSpace(@RequestBody InvSpace invSpace, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
if (null == invSpace) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "参数不能为空");
}
return invSpaceService.updateSpace(invSpace);
}
}

@ -0,0 +1,46 @@
package com.glxp.api.admin.dao.business;
import com.glxp.api.admin.entity.business.InvSpace;
import com.glxp.api.admin.req.inventory.FilterInvSpaceRequest;
import com.glxp.api.admin.res.inventory.InvSpaceResponse;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface InvSpaceDao {
int deleteByPrimaryKey(Integer id);
int insert(InvSpace record);
int insertSelective(InvSpace record);
InvSpace selectByPrimaryKey(Integer id);
int updateByPrimaryKeySelective(InvSpace record);
int updateByPrimaryKey(InvSpace record);
int updateBatch(List<InvSpace> list);
int updateBatchSelective(List<InvSpace> list);
int batchInsert(@Param("list") List<InvSpace> list);
/**
*
*
* @param filterInvSpaceRequest
* @return
*/
List<InvSpaceResponse> filterList(FilterInvSpaceRequest filterInvSpaceRequest);
/**
*
*
* @param invSpace
* @return
*/
List<InvSpace> selectList(InvSpace invSpace);
}

@ -40,4 +40,14 @@ public interface InvCountOrderDao {
* @return
*/
String selectOrderIdById(@Param("id") String id);
/**
*
*
* @param invStorageCode
* @param invWarehouseCode
* @param invSpaceCode
* @return
*/
Integer countBySpaceCode(@Param("invStorageCode") String invStorageCode, @Param("invWarehouseCode") String invWarehouseCode, @Param("invSpaceCode") String invSpaceCode);
}

@ -0,0 +1,64 @@
package com.glxp.api.admin.entity.business;
import lombok.Data;
import java.util.Date;
/**
*
*/
@Data
public class InvSpace {
private Integer id;
/**
*
*/
private String code;
/**
*
*/
private String name;
/**
*
*/
private String invStorageCode;
/**
*
*/
private String invWarehouseCode;
/**
*
*/
private Boolean status;
/**
*
*/
private Date createTime;
/**
*
*/
private Date updateTime;
/**
*
*/
private String createUser;
/**
*
*/
private String updateUser;
/**
*
*/
private String remark;
}

@ -0,0 +1,52 @@
package com.glxp.api.admin.req.inventory;
import com.glxp.api.admin.req.ListPageRequest;
import lombok.Data;
/**
*
*/
@Data
public class FilterInvSpaceRequest extends ListPageRequest {
/**
* ID
*/
private String customerId;
/**
*
*/
private String invWarehouseCode;
/**
*
*/
private String invStorageCode;
/**
*
*/
private String key;
/**
*
*/
private String code;
/**
*
*/
private String name;
/**
*
*/
private Boolean status;
/**
*
*/
private String remark;
}

@ -0,0 +1,19 @@
package com.glxp.api.admin.res.inventory;
import com.glxp.api.admin.entity.business.InvSpace;
import lombok.Data;
@Data
public class InvSpaceResponse extends InvSpace {
/**
*
*/
private String invStorageName;
/**
*
*/
private String invSubStorageName;
}

@ -0,0 +1,43 @@
package com.glxp.api.admin.service.inventory;
import com.glxp.api.admin.entity.business.InvSpace;
import com.glxp.api.admin.req.inventory.FilterInvSpaceRequest;
import com.glxp.api.admin.res.inventory.InvSpaceResponse;
import com.glxp.api.common.res.BaseResponse;
import java.util.List;
public interface InvSpaceService {
/**
*
*
* @param filterInvSpaceRequest
* @return
*/
List<InvSpaceResponse> filterList(FilterInvSpaceRequest filterInvSpaceRequest);
/**
*
*
* @param invSpace
* @return
*/
BaseResponse addSpace(InvSpace invSpace);
/**
*
*
* @param id
* @return
*/
BaseResponse deleteSpace(String id);
/**
*
*
* @param invSpace
* @return
*/
BaseResponse updateSpace(InvSpace invSpace);
}

@ -0,0 +1,135 @@
package com.glxp.api.admin.service.inventory.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper;
import com.glxp.api.admin.dao.business.InvSpaceDao;
import com.glxp.api.admin.dao.inventory.InvCountOrderDao;
import com.glxp.api.admin.entity.auth.AuthAdmin;
import com.glxp.api.admin.entity.business.InvSpace;
import com.glxp.api.admin.req.inventory.FilterInvSpaceRequest;
import com.glxp.api.admin.res.inventory.InvSpaceResponse;
import com.glxp.api.admin.service.auth.CustomerService;
import com.glxp.api.admin.service.inventory.InvSpaceService;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@Slf4j
@Service
@Transactional(rollbackFor = Exception.class)
public class InvSpaceServiceImpl implements InvSpaceService {
@Resource
private InvSpaceDao invSpaceDao;
@Resource
private InvCountOrderDao invCountOrderDao;
@Resource
private CustomerService customerService;
@Override
public List<InvSpaceResponse> filterList(FilterInvSpaceRequest filterInvSpaceRequest) {
if (null == filterInvSpaceRequest) {
return Collections.emptyList();
}
if (null != filterInvSpaceRequest.getPage() && null != filterInvSpaceRequest.getLimit()) {
PageHelper.offsetPage((filterInvSpaceRequest.getPage() - 1) * filterInvSpaceRequest.getLimit(), filterInvSpaceRequest.getLimit());
}
return invSpaceDao.filterList(filterInvSpaceRequest);
}
@Override
public BaseResponse addSpace(InvSpace invSpace) {
BaseResponse PARAM_VERIFY_FALL = verifySpaceParams(invSpace);
if (PARAM_VERIFY_FALL != null) return PARAM_VERIFY_FALL;
String result = verifyExist(invSpace);
if (!"success".equals(result)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, result);
}
Date date = new Date();
AuthAdmin user = customerService.getUserBean();
invSpace.setCreateTime(date);
invSpace.setUpdateTime(date);
invSpace.setCreateUser(user.getUserName());
invSpace.setUpdateUser(user.getUserName());
invSpaceDao.insert(invSpace);
return ResultVOUtils.success();
}
/**
*
*
* @param invSpace
* @return
*/
private static BaseResponse verifySpaceParams(InvSpace invSpace) {
//校验参数
if (StrUtil.isBlank(invSpace.getCode()) || StrUtil.isBlank(invSpace.getName())) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "货位名称和货位号不能为空!");
}
if (StrUtil.isBlank(invSpace.getInvStorageCode()) || StrUtil.isBlank(invSpace.getInvWarehouseCode())) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "请指定所属仓库和分库!");
}
return ResultVOUtils.success();
}
@Override
public BaseResponse deleteSpace(String id) {
//校验此货位是否已经被使用,如果已经被使用,不能删除
Integer spaceId = Integer.valueOf(id);
InvSpace invSpace = invSpaceDao.selectByPrimaryKey(spaceId);
Integer count = invCountOrderDao.countBySpaceCode(invSpace.getInvStorageCode(), invSpace.getInvWarehouseCode(), invSpace.getCode());
if (count > 0) {
return ResultVOUtils.error(ResultEnum.DATA_REPEAT, "此货位已被使用,无法删除!");
}
invSpaceDao.deleteByPrimaryKey(spaceId);
return ResultVOUtils.success();
}
@Override
public BaseResponse updateSpace(InvSpace invSpace) {
BaseResponse verifySpaceParamsResult = verifySpaceParams(invSpace);
if (!verifySpaceParamsResult.getCode().equals(20000)) {
return verifySpaceParamsResult;
}
String result = verifyExist(invSpace);
if (!"success".equals(result)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, result);
}
AuthAdmin user = customerService.getUserBean();
invSpace.setUpdateTime(new Date());
invSpace.setUpdateUser(user.getUserName());
invSpaceDao.updateByPrimaryKey(invSpace);
return ResultVOUtils.success();
}
/**
*
*
* @param invSpace
* @return
*/
public String verifyExist(InvSpace invSpace) {
List<InvSpace> list = invSpaceDao.selectList(invSpace);
if (CollUtil.isNotEmpty(list)) {
if (null == invSpace.getId()) {
return "已有相同数据";
}
for (InvSpace space : list) {
if (!space.getId().equals(invSpace.getId())) {
return "已有相同数据";
}
}
}
return "success";
}
}

@ -0,0 +1,371 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.admin.dao.business.InvSpaceDao">
<resultMap id="BaseResultMap" type="com.glxp.api.admin.entity.business.InvSpace">
<id column="id" jdbcType="INTEGER" property="id"/>
<result column="code" jdbcType="VARCHAR" property="code"/>
<result column="name" jdbcType="VARCHAR" property="name"/>
<result column="invStorageCode" jdbcType="VARCHAR" property="invStorageCode"/>
<result column="invWarehouseCode" jdbcType="VARCHAR" property="invWarehouseCode"/>
<result column="status" jdbcType="BOOLEAN" property="status"/>
<result column="createTime" jdbcType="TIMESTAMP" property="createTime"/>
<result column="updateTime" jdbcType="TIMESTAMP" property="updateTime"/>
<result column="createUser" jdbcType="VARCHAR" property="createUser"/>
<result column="updateUser" jdbcType="VARCHAR" property="updateUser"/>
<result column="remark" jdbcType="VARCHAR" property="remark"/>
</resultMap>
<sql id="Base_Column_List">
id,
code,
`name`,
invStorageCode,
invWarehouseCode,
`status`,
createTime,
updateTime,
`createUser`,
updateUser,
remark
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from inv_space
where id = #{id,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
delete
from inv_space
where id = #{id,jdbcType=INTEGER}
</delete>
<insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.glxp.api.admin.entity.business.InvSpace"
useGeneratedKeys="true">
insert into inv_space (code, `name`, invStorageCode,
invWarehouseCode, `status`, createTime,
updateTime, `createUser`, updateUser,
remark)
values (#{code,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{invStorageCode,jdbcType=VARCHAR},
#{invWarehouseCode,jdbcType=VARCHAR}, #{status,jdbcType=BOOLEAN}, #{createTime,jdbcType=TIMESTAMP},
#{updateTime,jdbcType=TIMESTAMP}, #{createUser,jdbcType=VARCHAR}, #{updateUser,jdbcType=VARCHAR},
#{remark,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" keyColumn="id" keyProperty="id"
parameterType="com.glxp.api.admin.entity.business.InvSpace" useGeneratedKeys="true">
insert into inv_space
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="code != null">
code,
</if>
<if test="name != null">
`name`,
</if>
<if test="invStorageCode != null">
invStorageCode,
</if>
<if test="invWarehouseCode != null">
invWarehouseCode,
</if>
<if test="status != null">
`status`,
</if>
<if test="createTime != null">
createTime,
</if>
<if test="updateTime != null">
updateTime,
</if>
<if test="createUser != null">
`createUser`,
</if>
<if test="updateUser != null">
updateUser,
</if>
<if test="remark != null">
remark,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="code != null">
#{code,jdbcType=VARCHAR},
</if>
<if test="name != null">
#{name,jdbcType=VARCHAR},
</if>
<if test="invStorageCode != null">
#{invStorageCode,jdbcType=VARCHAR},
</if>
<if test="invWarehouseCode != null">
#{invWarehouseCode,jdbcType=VARCHAR},
</if>
<if test="status != null">
#{status,jdbcType=BOOLEAN},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="createUser != null">
#{createUser,jdbcType=VARCHAR},
</if>
<if test="updateUser != null">
#{updateUser,jdbcType=VARCHAR},
</if>
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.glxp.api.admin.entity.business.InvSpace">
update inv_space
<set>
<if test="code != null">
code = #{code,jdbcType=VARCHAR},
</if>
<if test="name != null">
`name` = #{name,jdbcType=VARCHAR},
</if>
<if test="invStorageCode != null">
invStorageCode = #{invStorageCode,jdbcType=VARCHAR},
</if>
<if test="invWarehouseCode != null">
invWarehouseCode = #{invWarehouseCode,jdbcType=VARCHAR},
</if>
<if test="status != null">
`status` = #{status,jdbcType=BOOLEAN},
</if>
<if test="createTime != null">
createTime = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateTime != null">
updateTime = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="createUser != null">
`createUser` = #{createUser,jdbcType=VARCHAR},
</if>
<if test="updateUser != null">
updateUser = #{updateUser,jdbcType=VARCHAR},
</if>
<if test="remark != null">
remark = #{remark,jdbcType=VARCHAR},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.glxp.api.admin.entity.business.InvSpace">
update inv_space
set code = #{code,jdbcType=VARCHAR},
`name` = #{name,jdbcType=VARCHAR},
invStorageCode = #{invStorageCode,jdbcType=VARCHAR},
invWarehouseCode = #{invWarehouseCode,jdbcType=VARCHAR},
`status` = #{status,jdbcType=BOOLEAN},
createTime = #{createTime,jdbcType=TIMESTAMP},
updateTime = #{updateTime,jdbcType=TIMESTAMP},
`createUser` = #{createUser,jdbcType=VARCHAR},
updateUser = #{updateUser,jdbcType=VARCHAR},
remark = #{remark,jdbcType=VARCHAR}
where id = #{id,jdbcType=INTEGER}
</update>
<update id="updateBatch" parameterType="java.util.List">
update inv_space
<trim prefix="set" suffixOverrides=",">
<trim prefix="code = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.code,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="`name` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.name,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="invStorageCode = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.invStorageCode,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="invWarehouseCode = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.invWarehouseCode,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="`status` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.status,jdbcType=BOOLEAN}
</foreach>
</trim>
<trim prefix="createTime = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.createTime,jdbcType=TIMESTAMP}
</foreach>
</trim>
<trim prefix="updateTime = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.updateTime,jdbcType=TIMESTAMP}
</foreach>
</trim>
<trim prefix="`createUser` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.createUser,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="updateUser = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.updateUser,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="remark = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.remark,jdbcType=VARCHAR}
</foreach>
</trim>
</trim>
where id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.id,jdbcType=INTEGER}
</foreach>
</update>
<update id="updateBatchSelective" parameterType="java.util.List">
update inv_space
<trim prefix="set" suffixOverrides=",">
<trim prefix="code = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.code != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.code,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="`name` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.name != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.name,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="invStorageCode = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.invStorageCode != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.invStorageCode,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="invWarehouseCode = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.invWarehouseCode != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.invWarehouseCode,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="`status` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.status != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.status,jdbcType=BOOLEAN}
</if>
</foreach>
</trim>
<trim prefix="createTime = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.createTime != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.createTime,jdbcType=TIMESTAMP}
</if>
</foreach>
</trim>
<trim prefix="updateTime = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.updateTime != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.updateTime,jdbcType=TIMESTAMP}
</if>
</foreach>
</trim>
<trim prefix="`createUser` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.createUser != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.createUser,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="updateUser = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.updateUser != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.updateUser,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="remark = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.remark != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.remark,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
</trim>
where id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.id,jdbcType=INTEGER}
</foreach>
</update>
<insert id="batchInsert" keyColumn="id" keyProperty="id" parameterType="map" useGeneratedKeys="true">
insert into inv_space
(code, `name`, invStorageCode, invWarehouseCode, `status`, createTime, updateTime,
`createUser`, updateUser, remark)
values
<foreach collection="list" item="item" separator=",">
(#{item.code,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}, #{item.invStorageCode,jdbcType=VARCHAR},
#{item.invWarehouseCode,jdbcType=VARCHAR}, #{item.status,jdbcType=BOOLEAN},
#{item.createTime,jdbcType=TIMESTAMP},
#{item.updateTime,jdbcType=TIMESTAMP}, #{item.createUser,jdbcType=VARCHAR},
#{item.updateUser,jdbcType=VARCHAR},
#{item.remark,jdbcType=VARCHAR})
</foreach>
</insert>
<select id="filterList" resultType="com.glxp.api.admin.res.inventory.InvSpaceResponse">
select s.*,
w.name invStorageName,
iws.name invSubStorageName
from inv_space s
left join inv_warehouse w on s.invStorageCode = w.code
left join inv_warehouse_sub iws on s.invWarehouseCode = iws.code
<where>
<if test="invStorageCode != null and invStorageCode != ''">
AND s.invStorageCode = #{invStorageCode}
</if>
<if test="invWarehouseCode != null and invWarehouseCode != ''">
AND s.invWarehouseCode = #{invWarehouseCode}
</if>
<if test="key != null and key != ''">
AND (s.code like concat('%', #{key}, '%') or s.name like concat('%', #{key}, '%'))
</if>
</where>
</select>
<select id="selectList" resultMap="BaseResultMap">
select * from inv_space
<where>
<if test="invStorageCode != null and invStorageCode != ''">
AND invStorageCode = #{invStorageCode}
</if>
<if test="invWarehouseCode != null and invWarehouseCode != ''">
AND invWarehouseCode = #{invWarehouseCode}
</if>
<if test="name != null and name != ''">
AND name = #{name}
</if>
<if test="code != null and code != ''">
AND code = #{code}
</if>
</where>
</select>
</mapper>

@ -302,6 +302,24 @@
</select>
<select id="selectOrderIdById" resultType="java.lang.String">
select orderId from inv_count_order where id = #{id}
select orderId
from inv_count_order
where id = #{id}
</select>
<select id="countBySpaceCode" resultType="java.lang.Integer">
select count(*)
from inv_count_order
<where>
<if test="invStorageCode != null and invStorageCode != ''">
AND invStorageCode = #{invStorageCode}
</if>
<if test="invWarehouseCode != null and invWarehouseCode != ''">
AND invWarehouseCode = #{invWarehouseCode}
</if>
<if test="invSpaceCode != null and invSpaceCode != ''">
AND invSpaceCode = #{invSpaceCode}
</if>
</where>
</select>
</mapper>
Loading…
Cancel
Save