1.添加货位实体类及相关接口
parent
45942aa7c7
commit
1b686aadf2
@ -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);
|
||||
}
|
@ -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,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>
|
Loading…
Reference in New Issue