feat: 载具维护、客户信息、计量单位、基础分类

This commit is contained in:
2024-03-28 09:53:06 +08:00
parent c61a5083c3
commit dedc9fbba2
57 changed files with 1614 additions and 680 deletions

View File

@@ -1,12 +0,0 @@
package org.nl.wms.basedata.classification.service.dao.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.nl.wms.basedata.classification.service.dao.MdBaseClassstandard;
/**
* @author lyd
* @date 2023-05-11
**/
public interface MdBaseClassstandardMapper extends BaseMapper<MdBaseClassstandard> {
}

View File

@@ -1,5 +0,0 @@
<?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="org.nl.wms.basedata.classification.service.dao.mapper.MdBaseClassstandardMapper">
</mapper>

View File

@@ -1,4 +1,4 @@
package org.nl.wms.basedata.classification.controller;
package org.nl.wms.basedata.master.classification.controller;
@@ -6,8 +6,8 @@ import lombok.extern.slf4j.Slf4j;
import org.nl.common.base.TableDataInfo;
import org.nl.common.domain.query.PageQuery;
import org.nl.common.logging.annotation.Log;
import org.nl.wms.basedata.classification.service.IMdBaseClassstandardService;
import org.nl.wms.basedata.classification.service.dao.MdBaseClassstandard;
import org.nl.wms.basedata.master.classification.service.IMdBaseClassstandardService;
import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
@@ -57,6 +57,13 @@ public class MdBaseClassstandardController {
return new ResponseEntity<>(HttpStatus.OK);
}
@GetMapping("/getClass")
@Log("获取Code获取树下拉框")
//@PreAuthorize("@el.check('materialtype:list')")
public ResponseEntity<Object> queryClassByCode(@RequestParam Map whereJson) {
return new ResponseEntity<>(mdBaseClassstandardService.queryClassByCode(whereJson), HttpStatus.OK);
}
@GetMapping("/getClassName")
@Log("获取分类名称下拉框")
public ResponseEntity<Object> getClassName() {

View File

@@ -1,9 +1,9 @@
package org.nl.wms.basedata.classification.service;
package org.nl.wms.basedata.master.classification.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.nl.common.domain.query.PageQuery;
import org.nl.wms.basedata.classification.service.dao.MdBaseClassstandard;
import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard;
import java.util.ArrayList;
import java.util.List;
@@ -69,4 +69,18 @@ public interface IMdBaseClassstandardService extends IService<MdBaseClassstandar
* @return
*/
List<MdBaseClassstandard> buildTree(ArrayList<MdBaseClassstandard> list);
/**
* 根据编码获取对应的父级数据
* @param whereJson
* @return
*/
List<MdBaseClassstandard> queryClassByCode(Map whereJson);
/**
* 获取所有的子节点id
* @param classId 父节点id
* @return 子节点id数组
*/
ArrayList<String> getAllChildrenIds(String classId);
}

View File

@@ -1,20 +1,19 @@
package org.nl.wms.basedata.classification.service.dao;
package org.nl.wms.basedata.master.classification.service.dao;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
/**
* @description /
* @author lyd
* @date 2023-05-11
**/
* @author lyd
* @description /
* @date 2023-05-11
**/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("md_base_classstandard")
@@ -23,64 +22,44 @@ public class MdBaseClassstandard implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "class_id", type = IdType.NONE)
private String class_id;
private String class_code;
private String class_name;
private String class_desc;
private String parent_class_id;
private Integer sub_count;
private Boolean is_leaf;
private Boolean is_modify;
private Boolean is_delete;
private String class_level;
private String ext_id;
private String ext_parent_id;
private String workshop_code;
private String remark;
private String create_id;
private String create_name;
private String create_time;
private String update_id;
private String update_name;
private String update_time;
@TableField(exist = false)

View File

@@ -0,0 +1,15 @@
package org.nl.wms.basedata.master.classification.service.dao.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard;
import java.util.ArrayList;
/**
* @author lyd
* @date 2023-05-11
**/
public interface MdBaseClassstandardMapper extends BaseMapper<MdBaseClassstandard> {
ArrayList<String> getAllChildrenIds(String classId);
}

View File

@@ -0,0 +1,19 @@
<?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="org.nl.wms.basedata.master.classification.service.dao.mapper.MdBaseClassstandardMapper">
<select id="getAllChildrenIds" resultType="java.lang.String">
SELECT DISTINCT
class_id
FROM (
SELECT
t1.class_id,
IF(find_in_set(parent_class_id, @pids) > 0, @pids := concat(@pids, ',', class_id), 0) AS ischild
FROM (
SELECT class_id, parent_class_id FROM md_base_classstandard t WHERE t.is_delete = '0' ORDER BY class_code
) t1,
(SELECT @pids := #{classId}) t2
) t3
WHERE ischild != 0
</select>
</mapper>

View File

@@ -1,4 +1,4 @@
package org.nl.wms.basedata.classification.service.dto;
package org.nl.wms.basedata.master.classification.service.dto;
import lombok.Data;
import java.io.Serializable;

View File

@@ -1,7 +1,7 @@
package org.nl.wms.basedata.classification.service.dto;
package org.nl.wms.basedata.master.classification.service.dto;
import org.nl.common.domain.query.BaseQuery;
import org.nl.wms.basedata.classification.service.dao.MdBaseClassstandard;
import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard;
/**
* @author lyd

View File

@@ -1,18 +1,18 @@
package org.nl.wms.basedata.classification.service.dto;
package org.nl.wms.basedata.master.classification.service.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.nl.wms.basedata.classification.service.dao.MdBaseClassstandard;
import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard;
import java.io.Serializable;
import java.util.List;
/**
* @Author: lyd
* @Description:
* @Description: vue-tree-select所需要的实体
* @Date: 2023/5/12
*/
@Data

View File

@@ -1,4 +1,4 @@
package org.nl.wms.basedata.classification.service.impl;
package org.nl.wms.basedata.master.classification.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
@@ -12,10 +12,10 @@ import org.nl.common.domain.query.PageQuery;
import org.nl.common.exception.BadRequestException;
import org.nl.common.utils.SecurityUtils;
import org.nl.config.language.LangProcess;
import org.nl.wms.basedata.classification.service.IMdBaseClassstandardService;
import org.nl.wms.basedata.classification.service.dao.MdBaseClassstandard;
import org.nl.wms.basedata.classification.service.dao.mapper.MdBaseClassstandardMapper;
import org.nl.wms.basedata.classification.service.dto.MdBaseClassstandardTrees;
import org.nl.wms.basedata.master.classification.service.IMdBaseClassstandardService;
import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard;
import org.nl.wms.basedata.master.classification.service.dao.mapper.MdBaseClassstandardMapper;
import org.nl.wms.basedata.master.classification.service.dto.MdBaseClassstandardTrees;
import org.nl.wms.storage_manage.ios.enums.IOSEnum;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -67,7 +67,7 @@ public class MdBaseClassstandardServiceImpl extends ServiceImpl<MdBaseClassstand
.eq(MdBaseClassstandard::getClass_code, entity.getClass_code())
.eq(MdBaseClassstandard::getIs_delete, false));
if (ObjectUtil.isNotEmpty(mdBaseClassstandard) && !mdBaseClassstandard.getClass_id().equals(entity.getClass_id())) {
throw new BadRequestException(LangProcess.msg("error_ParamExist",entity.getClass_id()));
throw new BadRequestException(LangProcess.msg("error_ParamExist", entity.getClass_id()));
}
String currentUserId = SecurityUtils.getCurrentUserId();
@@ -113,7 +113,7 @@ public class MdBaseClassstandardServiceImpl extends ServiceImpl<MdBaseClassstand
.eq(MdBaseClassstandard::getClass_code, entity.getClass_code())
.eq(MdBaseClassstandard::getIs_delete, false));
if (ObjectUtil.isNotEmpty(mdBaseClassstandard) && !mdBaseClassstandard.getClass_id().equals(entity.getClass_id())) {
throw new BadRequestException(LangProcess.msg("error_ParamExist",entity.getClass_id()));
throw new BadRequestException(LangProcess.msg("error_ParamExist", entity.getClass_id()));
}
// 查询原来的父id
String oldPid = dto.getParent_class_id();
@@ -196,9 +196,9 @@ public class MdBaseClassstandardServiceImpl extends ServiceImpl<MdBaseClassstand
// 父类id为空或者是0就是顶级类别
List<MdBaseClassstandard> classstandardList = mdBaseClassstandardMapper
.selectList(new LambdaQueryWrapper<MdBaseClassstandard>()
.eq(MdBaseClassstandard::getIs_delete, false)
.eq(MdBaseClassstandard::getParent_class_id, "0")
.or(la -> la.isNull(MdBaseClassstandard::getParent_class_id)));
.eq(MdBaseClassstandard::getIs_delete, false)
.eq(MdBaseClassstandard::getParent_class_id, "0")
.or(la -> la.isNull(MdBaseClassstandard::getParent_class_id)));
res.addAll(classstandardList);
return res;
}
@@ -249,4 +249,31 @@ public class MdBaseClassstandardServiceImpl extends ServiceImpl<MdBaseClassstand
return trees;
}
@Override
public List<MdBaseClassstandard> queryClassByCode(Map whereJson) {
String parentClassCode = ObjectUtil.isNotEmpty(whereJson.get("parent_class_code"))
? (String) whereJson.get("parent_class_code") : null;
if (null == parentClassCode) {
throw new BadRequestException("父节点编号不能为空!");
}
List<MdBaseClassstandard> classstandards = mdBaseClassstandardMapper.selectList(
new LambdaQueryWrapper<MdBaseClassstandard>().eq(MdBaseClassstandard::getClass_code, parentClassCode));
if (classstandards.size() == 0) {
throw new BadRequestException("请输入正确的父节点编号!");
}
// 处理数据
classstandards.forEach(classstandard -> {
classstandard.setHasChildren(classstandard.getSub_count() > 0);
classstandard.setLeaf((classstandard.getSub_count() == 0));
classstandard.setId(classstandard.getClass_id());
classstandard.setLabel(classstandard.getClass_name());
});
return classstandards;
}
@Override
public ArrayList<String> getAllChildrenIds(String classId) {
return mdBaseClassstandardMapper.getAllChildrenIds(classId);
}
}

View File

@@ -4,6 +4,8 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -80,8 +82,14 @@ public class CustomerbaseServiceImpl extends ServiceImpl<CustomerbaseMapper, Cus
@Override
public void deleteAll(Set<String> ids) {
// 真删除
customerbaseMapper.deleteBatchIds(ids);
Customerbase customerbase = new Customerbase();
customerbase.setUpdate_optid(SecurityUtils.getCurrentUserId());
customerbase.setUpdate_optname(SecurityUtils.getCurrentUsername());
customerbase.setUpdate_time(DateUtil.now());
customerbase.setIs_delete("1");
LambdaQueryWrapper<Customerbase> lam = new QueryWrapper<Customerbase>().lambda();
lam.in(Customerbase::getCust_id, ids);
customerbaseMapper.update(customerbase, lam);
}
}

View File

@@ -0,0 +1,64 @@
package org.nl.wms.basedata.master.vehicle.controller;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.nl.common.base.TableDataInfo;
import org.nl.common.domain.query.PageQuery;
import org.nl.common.logging.annotation.Log;
import org.nl.wms.basedata.master.vehicle.service.IStoragevehicleinfoService;
import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo;
import org.nl.wms.basedata.master.vehicle.service.dto.StoragevehicleinfoQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
import java.util.Set;
/**
* @author lyd
* @date 2024-03-26
**/
@Slf4j
@RestController
@RequestMapping("/api/storagevehicleinfo")
public class StoragevehicleinfoController {
@Autowired
private IStoragevehicleinfoService storagevehicleinfoService;
@GetMapping
@Log("查询载具信息管理")
public ResponseEntity<Object> query(StoragevehicleinfoQuery whereJson, PageQuery page){
return new ResponseEntity<>(TableDataInfo.build(storagevehicleinfoService.queryAll(whereJson,page)),HttpStatus.OK);
}
@PostMapping
@Log("新增载具信息管理")
public ResponseEntity<Object> create(@Validated @RequestBody Storagevehicleinfo entity){
storagevehicleinfoService.create(entity);
return new ResponseEntity<>(HttpStatus.CREATED);
}
@PutMapping
@Log("修改载具信息管理")
public ResponseEntity<Object> update(@Validated @RequestBody Storagevehicleinfo entity){
storagevehicleinfoService.update(entity);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@Log("删除载具信息管理")
@DeleteMapping
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
storagevehicleinfoService.deleteAll(ids);
return new ResponseEntity<>(HttpStatus.OK);
}
@PutMapping("/changeActive")
@Log("修改点位启用状态")
public ResponseEntity<Object> changeActive(@RequestBody Storagevehicleinfo json) {
storagevehicleinfoService.changeActive(json);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
}

View File

@@ -0,0 +1,50 @@
package org.nl.wms.basedata.master.vehicle.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.nl.common.domain.query.PageQuery;
import com.baomidou.mybatisplus.extension.service.IService;
import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo;
import org.nl.wms.basedata.master.vehicle.service.dto.StoragevehicleinfoQuery;
import java.util.Map;
import java.util.Set;
/**
* @description 服务接口
* @author lyd
* @date 2024-03-26
**/
public interface IStoragevehicleinfoService extends IService<Storagevehicleinfo> {
/**
* 查询数据分页
* @param whereJson 条件
* @param pageable 分页参数
* @return IPage<Storagevehicleinfo>
*/
IPage<Storagevehicleinfo> queryAll(StoragevehicleinfoQuery whereJson, PageQuery pageable);
/**
* 创建
* @param entity /
*/
void create(Storagevehicleinfo entity);
/**
* 编辑
* @param entity /
*/
void update(Storagevehicleinfo entity);
/**
* 多选删除
* @param ids /
*/
void deleteAll(Set<String> ids);
/**
* 启用/禁用
* @param json
*/
void changeActive(Storagevehicleinfo json);
}

View File

@@ -0,0 +1,144 @@
package org.nl.wms.basedata.master.vehicle.service.dao;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @author lyd
* @description /
* @date 2024-03-26
**/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("md_pb_storagevehicleinfo")
public class Storagevehicleinfo implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "storagevehicle_id", type = IdType.NONE)
/** 载具标识 */
private String storagevehicle_id;
/**
* 载具编码
*/
private String storagevehicle_code;
/**
* 载具名称
*/
private String storagevehicle_name;
/**
* 一维码
*/
private String one_code;
/**
* 二维码
*/
private String two_code;
/**
* RFID编码
*/
private String rfid_code;
/**
* 创建人
*/
private String create_id;
/**
* 创建人姓名
*/
private String create_name;
/**
* 创建时间
*/
private String create_time;
/**
* 修改人
*/
private String update_optid;
/**
* 修改人姓名
*/
private String update_optname;
/**
* 修改时间
*/
private String update_time;
/**
* 是否删除
*/
private String is_delete;
/**
* 是否启用
*/
private String is_used;
/**
* 载具类型
*/
private String storagevehicle_type;
/**
* 载具宽度
*/
private BigDecimal vehicle_width;
/**
* 载具长度
*/
private BigDecimal vehicle_long;
/**
* 载具高度
*/
private BigDecimal vehicle_height;
/**
* 载具是否超仓位
*/
private String overstruct_type;
/**
* 占仓位数
*/
private BigDecimal occupystruct_qty;
/**
* 外部标识
*/
private String ext_id;
@TableField(exist = false)
private String material_code;
@TableField(exist = false)
private String material_name;
@TableField(exist = false)
private String point_code;
@TableField(exist = false)
private String point_name;
@TableField(exist = false)
private String storagevehicle_type_name;
}

View File

@@ -0,0 +1,21 @@
package org.nl.wms.basedata.master.vehicle.service.dao.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo;
import org.nl.wms.basedata.master.vehicle.service.dto.StoragevehicleinfoQuery;
/**
* @author lyd
* @date 2024-03-26
**/
public interface StoragevehicleinfoMapper extends BaseMapper<Storagevehicleinfo> {
/**
* 左连接分页查询
* @param pages 分页查询
* @param queryObj 条件实体
* @return 分页数据
*/
IPage<Storagevehicleinfo> selectPageLeftJoin(IPage<Storagevehicleinfo> pages, StoragevehicleinfoQuery queryObj);
}

View File

@@ -0,0 +1,34 @@
<?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="org.nl.wms.basedata.master.vehicle.service.dao.mapper.StoragevehicleinfoMapper">
<select id="selectPageLeftJoin"
resultType="org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo">
SELECT
s.*,
mater.material_code,
mater.material_name,
point.point_code,
point.point_name,
class.class_name AS storagevehicle_type_name
FROM
md_pb_storagevehicleinfo s
LEFT JOIN sch_base_point point ON point.vehicle_code = s.storagevehicle_code
LEFT JOIN ST_IVT_StructIvt ivt ON point.source_id = ivt.struct_id
LEFT JOIN md_base_material mater ON mater.material_id = ivt.material_id
LEFT JOIN md_base_classstandard class ON class.class_code = s.storagevehicle_type
WHERE s.is_delete = '0'
<if test="queryObj.storagevehicle_code_begin != null">
AND s.storagevehicle_code <![CDATA[ >= ]]> queryObj.storagevehicle_code_begin
</if>
<if test="queryObj.storagevehicle_code_end != null">
AND s.storagevehicle_code <![CDATA[ <= ]]> queryObj.storagevehicle_code_end
</if>
<if test="queryObj.classIds != null">
AND class.class_id IN
<foreach collection="queryObj.classIds" item="code" separator="," open="(" close=")">
#{code}
</foreach>
</if>
</select>
</mapper>

View File

@@ -1,25 +1,30 @@
package org.nl.wms.basedata.vehicle.service.dto;
package org.nl.wms.basedata.master.vehicle.service.dto;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import java.io.Serializable;
/**
* @description /
* @author lyd
* @date 2023-05-11
* @date 2024-03-26
**/
@Data
public class MdBaseVehicleDto implements Serializable {
public class StoragevehicleinfoDto implements Serializable {
/** 载具标识 */
/** 防止精度丢失 */
@JsonSerialize(using= ToStringSerializer.class)
private Long storagevehicle_id;
/** 载具编码 */
private String vehicle_code;
private String storagevehicle_code;
/** 载具名称 */
private String vehicle_name;
/** 载具类型 */
private String vehicle_type;
private String storagevehicle_name;
/** 一维码 */
private String one_code;
@@ -30,6 +35,33 @@ public class MdBaseVehicleDto implements Serializable {
/** RFID编码 */
private String rfid_code;
/** 创建人 */
private Long create_id;
/** 创建人姓名 */
private String create_name;
/** 创建时间 */
private String create_time;
/** 修改人 */
private Long update_optid;
/** 修改人姓名 */
private String update_optname;
/** 修改时间 */
private String update_time;
/** 是否删除 */
private String is_delete;
/** 是否启用 */
private String is_used;
/** 载具类型 */
private String storagevehicle_type;
/** 载具宽度 */
private BigDecimal vehicle_width;
@@ -39,7 +71,7 @@ public class MdBaseVehicleDto implements Serializable {
/** 载具高度 */
private BigDecimal vehicle_height;
/** 载具超仓位类型 */
/** 载具是否超仓位 */
private String overstruct_type;
/** 占仓位数 */
@@ -47,22 +79,4 @@ public class MdBaseVehicleDto implements Serializable {
/** 外部标识 */
private String ext_id;
/** 创建人 */
private String create_id;
/** 创建人 */
private String create_name;
/** 创建时间 */
private String create_time;
/** 修改人 */
private String update_id;
/** 修改人 */
private String update_name;
/** 修改时间 */
private String update_time;
}

View File

@@ -0,0 +1,41 @@
package org.nl.wms.basedata.master.vehicle.service.dto;
import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo;
import java.io.Serializable;
import java.util.ArrayList;
/**
* @author lyd
* @date 2024-03-26
**/
public class StoragevehicleinfoQuery extends Storagevehicleinfo implements Serializable {
private String storagevehicle_code_begin;
private String storagevehicle_code_end;
private ArrayList<String> classIds;
public String getStoragevehicle_code_begin() {
return storagevehicle_code_begin;
}
public void setStoragevehicle_code_begin(String storagevehicle_code_begin) {
this.storagevehicle_code_begin = storagevehicle_code_begin;
}
public String getStoragevehicle_code_end() {
return storagevehicle_code_end;
}
public void setStoragevehicle_code_end(String storagevehicle_code_end) {
this.storagevehicle_code_end = storagevehicle_code_end;
}
public ArrayList<String> getClassIds() {
return classIds;
}
public void setClassIds(ArrayList<String> classIds) {
this.classIds = classIds;
}
}

View File

@@ -0,0 +1,110 @@
package org.nl.wms.basedata.master.vehicle.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.nl.config.language.LangProcess;
import org.nl.common.domain.query.PageQuery;
import org.nl.common.exception.BadRequestException;
import org.nl.common.utils.SecurityUtils;
import org.nl.wms.basedata.master.classification.service.IMdBaseClassstandardService;
import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard;
import org.nl.wms.basedata.master.vehicle.service.IStoragevehicleinfoService;
import org.nl.wms.basedata.master.vehicle.service.dao.mapper.StoragevehicleinfoMapper;
import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo;
import org.nl.wms.basedata.master.vehicle.service.dto.StoragevehicleinfoQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
/**
* @description 服务实现
* @author lyd
* @date 2024-03-26
**/
@Slf4j
@Service
public class StoragevehicleinfoServiceImpl extends ServiceImpl<StoragevehicleinfoMapper, Storagevehicleinfo> implements IStoragevehicleinfoService {
@Autowired
private StoragevehicleinfoMapper storagevehicleinfoMapper;
@Autowired
private IMdBaseClassstandardService mdBaseClassstandardService;
@Override
public IPage<Storagevehicleinfo> queryAll(StoragevehicleinfoQuery queryObj, PageQuery page) {
// 获取所有子集
if (ObjectUtil.isNotEmpty(queryObj.getStoragevehicle_type())) {
ArrayList<String> list = mdBaseClassstandardService.getAllChildrenIds(queryObj.getStoragevehicle_type());
list.add(queryObj.getStoragevehicle_type());
queryObj.setClassIds(list);
}
IPage<Storagevehicleinfo> pages = new Page<>(page.getPage() + 1, page.getSize());
pages = storagevehicleinfoMapper.selectPageLeftJoin(pages, queryObj);
return pages;
}
@Override
public void create(Storagevehicleinfo entity) {
String currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getCurrentNickName();
String now = DateUtil.now();
entity.setStoragevehicle_id(IdUtil.getSnowflake(1, 1).nextIdStr());
entity.setCreate_id(currentUserId);
entity.setCreate_name(nickName);
entity.setCreate_time(now);
entity.setUpdate_optid(currentUserId);
entity.setUpdate_optname(nickName);
entity.setUpdate_time(now);
storagevehicleinfoMapper.insert(entity);
}
@Override
public void update(Storagevehicleinfo entity) {
Storagevehicleinfo dto = storagevehicleinfoMapper.selectById(entity.getStoragevehicle_id());
if (dto == null) throw new BadRequestException(LangProcess.msg("error_SystemAuthError"));
String currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getCurrentNickName();
String now = DateUtil.now();
entity.setUpdate_optid(currentUserId);
entity.setUpdate_optname(nickName);
entity.setUpdate_time(now);
storagevehicleinfoMapper.updateById(entity);
}
@Override
public void deleteAll(Set<String> ids) {
// 真删除
storagevehicleinfoMapper.deleteBatchIds(ids);
}
@Override
public void changeActive(Storagevehicleinfo json) {
Storagevehicleinfo dto = storagevehicleinfoMapper.selectById(json.getStoragevehicle_id());
if (dto == null) {
throw new BadRequestException(LangProcess.msg("error_SystemAuthError"));
}
this.update(new UpdateWrapper<Storagevehicleinfo>().lambda()
.set(Storagevehicleinfo::getIs_used, "1".equals(json.getIs_used())?"0":"1")
.set(Storagevehicleinfo::getUpdate_optid, SecurityUtils.getCurrentUserId())
.set(Storagevehicleinfo::getUpdate_optname, SecurityUtils.getCurrentUsername())
.set(Storagevehicleinfo::getUpdate_time, DateUtil.now())
.eq(Storagevehicleinfo::getStoragevehicle_id, json.getStoragevehicle_id()));
}
}

View File

@@ -1,61 +0,0 @@
package org.nl.wms.basedata.vehicle.controller;
import lombok.extern.slf4j.Slf4j;
import org.nl.common.base.TableDataInfo;
import org.nl.common.domain.query.PageQuery;
import org.nl.common.logging.annotation.Log;
import org.nl.wms.basedata.vehicle.service.IMdBaseVehicleService;
import org.nl.wms.basedata.vehicle.service.dao.MdBaseVehicle;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
import java.util.Set;
/**
* @author lyd
* @date 2023-05-11
**/
@Slf4j
@RestController
@RequestMapping("/api/mdBaseVehicle")
public class MdBaseVehicleController {
@Autowired
private IMdBaseVehicleService mdBaseVehicleService;
@GetMapping
@Log("查询载具维护")
public ResponseEntity<Object> query(@RequestParam Map whereJson, PageQuery page){
return new ResponseEntity<>(TableDataInfo.build(mdBaseVehicleService.queryAll(whereJson,page)),HttpStatus.OK);
}
@PostMapping
@Log("新增载具维护")
public ResponseEntity<Object> create(@Validated @RequestBody MdBaseVehicle entity){
mdBaseVehicleService.create(entity);
return new ResponseEntity<>(HttpStatus.CREATED);
}
@PutMapping
@Log("修改载具维护")
public ResponseEntity<Object> update(@Validated @RequestBody MdBaseVehicle entity){
mdBaseVehicleService.update(entity);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@Log("删除载具维护")
@DeleteMapping
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
mdBaseVehicleService.deleteAll(ids);
return new ResponseEntity<>(HttpStatus.OK);
}
}

View File

@@ -1,43 +0,0 @@
package org.nl.wms.basedata.vehicle.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.nl.common.domain.query.PageQuery;
import com.baomidou.mybatisplus.extension.service.IService;
import org.nl.wms.basedata.vehicle.service.dao.MdBaseVehicle;
import java.util.Map;
import java.util.Set;
/**
* @description 服务接口
* @author lyd
* @date 2023-05-11
**/
public interface IMdBaseVehicleService extends IService<MdBaseVehicle> {
/**
* 查询数据分页
* @param whereJson 条件
* @param pageable 分页参数
* @return IPage<MdBaseVehicle>
*/
IPage<MdBaseVehicle> queryAll(Map whereJson, PageQuery pageable);
/**
* 创建
* @param entity /
*/
void create(MdBaseVehicle entity);
/**
* 编辑
* @param entity /
*/
void update(MdBaseVehicle entity);
/**
* 多选删除
* @param ids /
*/
void deleteAll(Set<String> ids);
}

View File

@@ -1,80 +0,0 @@
package org.nl.wms.basedata.vehicle.service.dao;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.io.Serializable;
/**
* @description /
* @author lyd
* @date 2023-05-11
**/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("md_base_vehicle")
public class MdBaseVehicle implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "vehicle_code", type = IdType.NONE)
private String vehicle_code;
private String vehicle_name;
private String vehicle_type;
private String one_code;
private String two_code;
private String rfid_code;
private BigDecimal vehicle_width;
private BigDecimal vehicle_long;
private BigDecimal vehicle_height;
private String overstruct_type;
private BigDecimal occupystruct_qty;
private String ext_id;
private String create_id;
private String create_name;
private String create_time;
private String update_id;
private String update_name;
private String update_time;
}

View File

@@ -1,12 +0,0 @@
package org.nl.wms.basedata.vehicle.service.dao.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.nl.wms.basedata.vehicle.service.dao.MdBaseVehicle;
/**
* @author lyd
* @date 2023-05-11
**/
public interface MdBaseVehicleMapper extends BaseMapper<MdBaseVehicle> {
}

View File

@@ -1,5 +0,0 @@
<?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="org.nl.wms.basedata.vehicle.service.dao.mapper.MdBaseVehicleMapper">
</mapper>

View File

@@ -1,12 +0,0 @@
package org.nl.wms.basedata.vehicle.service.dto;
import org.nl.common.domain.query.BaseQuery;
import org.nl.wms.basedata.vehicle.service.dao.MdBaseVehicle;
/**
* @author lyd
* @date 2023-05-11
**/
public class MdBaseVehicleQuery extends BaseQuery<MdBaseVehicle> {
}

View File

@@ -1,86 +0,0 @@
package org.nl.wms.basedata.vehicle.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.nl.common.domain.query.PageQuery;
import org.nl.common.exception.BadRequestException;
import org.nl.common.utils.SecurityUtils;
import org.nl.config.language.LangProcess;
import org.nl.wms.basedata.vehicle.service.IMdBaseVehicleService;
import org.nl.wms.basedata.vehicle.service.dao.mapper.MdBaseVehicleMapper;
import org.nl.wms.basedata.vehicle.service.dao.MdBaseVehicle;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.Set;
/**
* @description 服务实现
* @author lyd
* @date 2023-05-11
**/
@Slf4j
@Service
public class MdBaseVehicleServiceImpl extends ServiceImpl<MdBaseVehicleMapper, MdBaseVehicle> implements IMdBaseVehicleService {
@Autowired
private MdBaseVehicleMapper mdBaseVehicleMapper;
@Override
public IPage<MdBaseVehicle> queryAll(Map whereJson, PageQuery page){
String vehicle_type = ObjectUtil.isNotEmpty(whereJson.get("vehicle_type")) ? whereJson.get("vehicle_type").toString() : null;
String vehicle_code = ObjectUtil.isNotEmpty(whereJson.get("vehicle_code")) ? whereJson.get("vehicle_code").toString() : null;
LambdaQueryWrapper<MdBaseVehicle> lam = new LambdaQueryWrapper<>();
lam.eq(ObjectUtil.isNotEmpty(vehicle_type), MdBaseVehicle::getVehicle_type, vehicle_type)
.like(ObjectUtil.isNotEmpty(vehicle_code), MdBaseVehicle::getVehicle_code, vehicle_code);
IPage<MdBaseVehicle> pages = new Page<>(page.getPage() + 1, page.getSize());
mdBaseVehicleMapper.selectPage(pages, lam);
return pages;
}
@Override
public void create(MdBaseVehicle entity) {
String currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getCurrentNickName();
String now = DateUtil.now();
entity.setVehicle_code(IdUtil.getSnowflake(1, 1).nextIdStr());
entity.setCreate_id(currentUserId);
entity.setCreate_name(nickName);
entity.setCreate_time(now);
entity.setUpdate_id(currentUserId);
entity.setUpdate_name(nickName);
entity.setUpdate_time(now);
mdBaseVehicleMapper.insert(entity);
}
@Override
public void update(MdBaseVehicle entity) {
String errorSystemAuthError = "error_SystemAuthError";
MdBaseVehicle dto = mdBaseVehicleMapper.selectById(entity.getVehicle_code());
if (dto == null) throw new BadRequestException(LangProcess.msg(errorSystemAuthError));
String currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getCurrentNickName();
String now = DateUtil.now();
entity.setUpdate_id(currentUserId);
entity.setUpdate_name(nickName);
entity.setUpdate_time(now);
mdBaseVehicleMapper.updateById(entity);
}
@Override
public void deleteAll(Set<String> ids) {
// 真删除
mdBaseVehicleMapper.deleteBatchIds(ids);
}
}

View File

@@ -1,5 +1,7 @@
package ${package}.service.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
<#if hasTimestamp>
import java.sql.Timestamp;
</#if>