From 839b9bebff1c528a4fd255d7793218f83305fc3d Mon Sep 17 00:00:00 2001 From: anthonywj Date: Mon, 9 Jan 2023 09:17:03 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=93=E5=BA=93=E4=B8=8E=E8=B4=A7=E4=BD=8D?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/auth/InvSpaceController.java | 105 +++++ .../com/glxp/api/dao/auth/InvSpaceDao.java | 89 ++++ .../com/glxp/api/entity/auth/InvSpace.java | 69 ++++ .../api/req/auth/FilterInvSpaceRequest.java | 52 +++ .../glxp/api/res/auth/InvSpaceResponse.java | 19 + .../api/service/auth/InvSpaceService.java | 53 +++ .../auth/impl/InvSpaceServiceImpl.java | 169 ++++++++ .../mybatis/mapper/auth/InvSpaceDao.xml | 385 ++++++++++++++++++ 8 files changed, 941 insertions(+) create mode 100644 src/main/java/com/glxp/api/controller/auth/InvSpaceController.java create mode 100644 src/main/java/com/glxp/api/dao/auth/InvSpaceDao.java create mode 100644 src/main/java/com/glxp/api/entity/auth/InvSpace.java create mode 100644 src/main/java/com/glxp/api/req/auth/FilterInvSpaceRequest.java create mode 100644 src/main/java/com/glxp/api/res/auth/InvSpaceResponse.java create mode 100644 src/main/java/com/glxp/api/service/auth/InvSpaceService.java create mode 100644 src/main/java/com/glxp/api/service/auth/impl/InvSpaceServiceImpl.java create mode 100644 src/main/resources/mybatis/mapper/auth/InvSpaceDao.xml diff --git a/src/main/java/com/glxp/api/controller/auth/InvSpaceController.java b/src/main/java/com/glxp/api/controller/auth/InvSpaceController.java new file mode 100644 index 00000000..4bb28ac8 --- /dev/null +++ b/src/main/java/com/glxp/api/controller/auth/InvSpaceController.java @@ -0,0 +1,105 @@ +package com.glxp.api.controller.auth; + +import cn.hutool.core.util.StrUtil; +import com.github.pagehelper.PageInfo; +import com.glxp.api.common.enums.ResultEnum; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.entity.auth.InvSpace; +import com.glxp.api.req.auth.FilterInvSpaceRequest; +import com.glxp.api.req.system.DeleteRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.auth.InvSpaceResponse; +import com.glxp.api.service.auth.InvSpaceService; +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 list = invSpaceService.filterList(filterInvSpaceRequest); + PageInfo pageInfo = new PageInfo<>(list); + PageSimpleResponse 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); + } + + /** + * 查询货位的编码和名称列表,不分页 + * + * @param filterInvSpaceRequest + * @return + */ + @GetMapping("/spms/inv/space/getSpaceCodeList") + public BaseResponse getSpaceCodeList(FilterInvSpaceRequest filterInvSpaceRequest) { + List list = invSpaceService.getSpaceCodeList(filterInvSpaceRequest); + return ResultVOUtils.success(list); + } + +} diff --git a/src/main/java/com/glxp/api/dao/auth/InvSpaceDao.java b/src/main/java/com/glxp/api/dao/auth/InvSpaceDao.java new file mode 100644 index 00000000..c7316977 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/auth/InvSpaceDao.java @@ -0,0 +1,89 @@ +package com.glxp.api.dao.auth; + +import com.glxp.api.entity.auth.InvSpace; +import com.glxp.api.req.auth.FilterInvSpaceRequest; +import com.glxp.api.res.auth.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 list); + + int batchInsert(@Param("list") List list); + + /** + * 查询货位列表 + * + * @param filterInvSpaceRequest + * @return + */ + List filterList(FilterInvSpaceRequest filterInvSpaceRequest); + + /** + * 查询货位数据 + * + * @param invSpace + * @return + */ + List selectList(InvSpace invSpace); + + /** + * 查询货位编码和名称 + * + * @param filterInvSpaceRequest + * @return + */ + List selectSpaceCodeList(FilterInvSpaceRequest filterInvSpaceRequest); + + /** + * 根据货位码查询此 + * + * @param code 货位码 + * @param invStorageCode 仓库码 + * @param invWarehouseCode 分库码 + * @return + */ + String selectNameByCode(@Param("invStorageCode") String invStorageCode, @Param("invWarehouseCode") String invWarehouseCode, @Param("code") String code); + + /** + * 根据分库编码查询货位信息 + * + * @param warehouseCode + * @return + */ + List selectByWarehouseCode(String warehouseCode); + + /** + * 查询此货位是否存在,判断名称和编码 + * + * @param invSpace + * @return + */ + List selectExist(InvSpace invSpace); + + /** + * 根据仓库,分库,货位编码查询货位信息 + * + * @param invStorageCode + * @param invWarehouseCode + * @param inSpaceCode + * @return + */ + List selectByInvCode(@Param("invStorageCode") String invStorageCode, @Param("invWarehouseCode") String invWarehouseCode, @Param("invSpaceCode") String invSpaceCode); +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/auth/InvSpace.java b/src/main/java/com/glxp/api/entity/auth/InvSpace.java new file mode 100644 index 00000000..a0e8f8f7 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/auth/InvSpace.java @@ -0,0 +1,69 @@ +package com.glxp.api.entity.auth; + +import lombok.Data; + +import java.util.Date; + +/** + * 货位字典表 + */ +@Data +public class InvSpace { + + private Integer id; + + /** + * 货位码 + */ + private String code; + + /** + * 货位名称 + */ + private String name; + + /** + * 货位分类 + */ + private String type; + + /** + * 所属仓库 + */ + private String invStorageCode; + + /** + * 所属分库 + */ + private String invWarehouseCode; + + /** + * 状态 + */ + private Integer status; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 更新时间 + */ + private Date updateTime; + + /** + * 创建人 + */ + private String createUser; + + /** + * 更新人 + */ + private String updateUser; + + /** + * 备注 + */ + private String remark; +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/req/auth/FilterInvSpaceRequest.java b/src/main/java/com/glxp/api/req/auth/FilterInvSpaceRequest.java new file mode 100644 index 00000000..acd4784d --- /dev/null +++ b/src/main/java/com/glxp/api/req/auth/FilterInvSpaceRequest.java @@ -0,0 +1,52 @@ +package com.glxp.api.req.auth; + +import com.glxp.api.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; + +} diff --git a/src/main/java/com/glxp/api/res/auth/InvSpaceResponse.java b/src/main/java/com/glxp/api/res/auth/InvSpaceResponse.java new file mode 100644 index 00000000..6f016cd5 --- /dev/null +++ b/src/main/java/com/glxp/api/res/auth/InvSpaceResponse.java @@ -0,0 +1,19 @@ +package com.glxp.api.res.auth; + +import com.glxp.api.entity.auth.InvSpace; +import lombok.Data; + +@Data +public class InvSpaceResponse extends InvSpace { + + /** + * 仓库名 + */ + private String invStorageName; + + /** + * 分库名 + */ + private String invSubStorageName; + +} diff --git a/src/main/java/com/glxp/api/service/auth/InvSpaceService.java b/src/main/java/com/glxp/api/service/auth/InvSpaceService.java new file mode 100644 index 00000000..965c21dc --- /dev/null +++ b/src/main/java/com/glxp/api/service/auth/InvSpaceService.java @@ -0,0 +1,53 @@ +package com.glxp.api.service.auth; + +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.entity.auth.InvSpace; +import com.glxp.api.req.auth.FilterInvSpaceRequest; +import com.glxp.api.res.auth.InvSpaceResponse; + +import java.util.List; + +public interface InvSpaceService { + + /** + * 查询货位字典列表 + * + * @param filterInvSpaceRequest + * @return + */ + List filterList(FilterInvSpaceRequest filterInvSpaceRequest); + + /** + * 添加货位 + * + * @param invSpace + * @return + */ + BaseResponse addSpace(InvSpace invSpace); + + /** + * 删除货位 + * + * @param id + * @return + */ + BaseResponse deleteSpace(String id); + + /** + * 更新货位信息 + * + * @param invSpace + * @return + */ + BaseResponse updateSpace(InvSpace invSpace); + + List getSpaceCodeList(FilterInvSpaceRequest filterInvSpaceRequest); + + /** + * 根据分库编码查询货位信息 + * + * @param code + * @return + */ + List findBySubWarehouseCode(String code); +} diff --git a/src/main/java/com/glxp/api/service/auth/impl/InvSpaceServiceImpl.java b/src/main/java/com/glxp/api/service/auth/impl/InvSpaceServiceImpl.java new file mode 100644 index 00000000..aa3f3c27 --- /dev/null +++ b/src/main/java/com/glxp/api/service/auth/impl/InvSpaceServiceImpl.java @@ -0,0 +1,169 @@ +package com.glxp.api.service.auth.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.github.pagehelper.PageHelper; +import com.glxp.api.common.enums.ResultEnum; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.dao.auth.InvSpaceDao; +import com.glxp.api.entity.auth.AuthAdmin; +import com.glxp.api.entity.auth.InvSpace; +import com.glxp.api.req.auth.FilterInvSpaceRequest; +import com.glxp.api.res.auth.InvSpaceResponse; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.auth.InvSpaceService; +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 CustomerService customerService; + + @Override + public List 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 verifyResult = verifySpaceParams(invSpace); + if (verifyResult.getCode() != 20000) { + return verifyResult; + } + 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); + + //todo 代码迁移,后面记得修改 + +// //判断此货位是否与库存绑定,如果与库存绑定,则无法删除 +// Long detailCount = invProductDetailDao.countBySpaceCode(invSpace.getInvStorageCode(), invSpace.getInvWarehouseCode(), invSpace.getCode()); +// if (detailCount > 0) { +// return ResultVOUtils.error(ResultEnum.DATA_REPEAT, "此货位已被使用,无法删除!"); +// } +// +// //判断此货位是否已经被盘点单使用,如果有,则无法删除 +// 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(); + } + + @Override + public List getSpaceCodeList(FilterInvSpaceRequest filterInvSpaceRequest) { + return invSpaceDao.selectSpaceCodeList(filterInvSpaceRequest); + } + + @Override + public List findBySubWarehouseCode(String code) { + return invSpaceDao.selectByWarehouseCode(code); + } + + /** + * 校验货位是否重复 + * + * @param invSpace + * @return + */ + public String verifyExist(InvSpace invSpace) { + //先检查货位号是否重复 + List invSpaces = invSpaceDao.selectByInvCode(invSpace.getInvStorageCode(), invSpace.getInvWarehouseCode(), invSpace.getCode()); + if (CollUtil.isNotEmpty(invSpaces)) { + //判断ID是否为空,如果为空表示数据为新增货位,是重复添加- + if (null == invSpace.getId()) { + return "货位信息已存在"; + } + + //此分库下,货位号重复,判断ID是否与当前货位相同 + for (InvSpace space : invSpaces) { + if (!space.getId().equals(invSpace.getId())) { + return "货位信息已存在"; + } + } + } + List list = invSpaceDao.selectExist(invSpace); + if (CollUtil.isNotEmpty(list)) { + if (null == invSpace.getId()) { + return "货位信息已存在"; + } + for (InvSpace space : list) { + if (!space.getId().equals(invSpace.getId())) { + return "货位信息已存在"; + } + } + } + return "success"; + } + +} diff --git a/src/main/resources/mybatis/mapper/auth/InvSpaceDao.xml b/src/main/resources/mybatis/mapper/auth/InvSpaceDao.xml new file mode 100644 index 00000000..0b30e93b --- /dev/null +++ b/src/main/resources/mybatis/mapper/auth/InvSpaceDao.xml @@ -0,0 +1,385 @@ + + + + + + + + + + + + + + + + + + + + id, + code, + `name`, + type, + invStorageCode, + invWarehouseCode, + `status`, + createTime, + updateTime, + `createUser`, + updateUser, + remark + + + + + + delete + from inv_space + where id = #{id,jdbcType=INTEGER} + + + + insert into inv_space (code, `name`, type, invStorageCode, + invWarehouseCode, `status`, createTime, + updateTime, `createUser`, updateUser, + remark) + values (#{code,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{type,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 into inv_space + + + code, + + + `name`, + + + type, + + + invStorageCode, + + + invWarehouseCode, + + + `status`, + + + createTime, + + + updateTime, + + + `createUser`, + + + updateUser, + + + remark, + + + + + #{code,jdbcType=VARCHAR}, + + + #{name,jdbcType=VARCHAR}, + + + #{type,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}, + + + + + + update inv_space + + + code = #{code,jdbcType=VARCHAR}, + + + `name` = #{name,jdbcType=VARCHAR}, + + + type = #{type,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 inv_space + set code = #{code,jdbcType=VARCHAR}, + `name` = #{name,jdbcType=VARCHAR}, + type = #{type,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 inv_space + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.code,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.name,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.type,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.invStorageCode,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.invWarehouseCode,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.status,jdbcType=BOOLEAN} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.createTime,jdbcType=TIMESTAMP} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.updateTime,jdbcType=TIMESTAMP} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.createUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.updateUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=INTEGER} then #{item.remark,jdbcType=VARCHAR} + + + + where id in + + #{item.id,jdbcType=INTEGER} + + + + + insert into inv_space + (code, `name`, type, invStorageCode, invWarehouseCode, `status`, createTime, updateTime, + `createUser`, updateUser, remark) + values + + (#{item.code,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}, #{item.type,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}) + + + + + + + + + + + + + + + + + \ No newline at end of file