diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/impl/MdBaseClassstandardServiceImpl.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/impl/MdBaseClassstandardServiceImpl.java index 5d3a901..ba6cf26 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/impl/MdBaseClassstandardServiceImpl.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/impl/MdBaseClassstandardServiceImpl.java @@ -213,40 +213,36 @@ public class MdBaseClassstandardServiceImpl extends ServiceImpl buildTree(ArrayList list) { - // 将获取的数据初始化状态 + // 初始化数据 list.forEach(classstandard -> { classstandard.setId(classstandard.getClass_id()); classstandard.setLabel(classstandard.getClass_name()); classstandard.setLeaf((classstandard.getSub_count() <= 0)); classstandard.setHasChildren(classstandard.getSub_count() > 0); }); - // 待返回数据 - List trees = new ArrayList<>(); - for (MdBaseClassstandard mdBaseClassstandard : list) { - // 筛选父类的值 - if (ObjectUtil.isEmpty(mdBaseClassstandard.getParent_class_id()) - || mdBaseClassstandard.getParent_class_id().equals("0")) { - // collect:获取当前对象的所有子级 - List collect = list.stream().filter(t -> t.getParent_class_id() - .equals(mdBaseClassstandard.getClass_id())).collect(Collectors.toList()); - if (ObjectUtil.isNotEmpty(collect)) { - // 设置参数 - collect.forEach(classstandard -> { - classstandard.setId(classstandard.getClass_id()); - classstandard.setLabel(classstandard.getClass_name()); - classstandard.setHasChildren(classstandard.getSub_count() > 0); - }); - MdBaseClassstandardTrees tObj = new MdBaseClassstandardTrees(); - // 赋值一份实体,可以避免vue-tree拿到children属性显示展开图标 - BeanUtils.copyProperties(mdBaseClassstandard, tObj); - tObj.setChildren(collect); - trees.add(tObj); - } else { - trees.add(mdBaseClassstandard); - } - } + + // 创建树结构 + return list.stream() + .filter(node -> "0".equals(node.getParent_class_id()) || ObjectUtil.isEmpty(node.getParent_class_id())) + .map(node -> createTree(node, list)) + .collect(Collectors.toList()); + } + + private MdBaseClassstandard createTree(MdBaseClassstandard node, List list) { + List children = list.stream() + .filter(child -> node.getClass_id().equals(child.getParent_class_id())) + .map(child -> createTree(child, list)) + .collect(Collectors.toList()); + if (!children.isEmpty()) { + MdBaseClassstandardTrees tObj = new MdBaseClassstandardTrees(); + // 赋值一份实体,可以避免vue-tree拿到children属性显示展开图标 + BeanUtils.copyProperties(node, tObj); + tObj.setChildren(children); + return tObj; + } else { + node.setLeaf(true); } - return trees; + return node; } @Override diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskconfigController.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskconfigController.java index 53cd433..2d2dd0e 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskconfigController.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskconfigController.java @@ -8,6 +8,7 @@ import org.nl.common.domain.query.PageQuery; import org.nl.common.logging.annotation.Log; import org.nl.wms.sch.task.service.ISchBaseTaskconfigService; import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; +import org.nl.wms.sch.task.service.dto.SchBaseTaskconfigQuery; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -30,7 +31,7 @@ public class SchBaseTaskconfigController { @GetMapping @Log("查询任务配置") - public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + public ResponseEntity query(SchBaseTaskconfigQuery whereJson, PageQuery page){ return new ResponseEntity<>(TableDataInfo.build(schBaseTaskconfigService.queryAll(whereJson,page)),HttpStatus.OK); } diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskconfigService.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskconfigService.java index 1d28781..d1095b5 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskconfigService.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskconfigService.java @@ -4,6 +4,7 @@ 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.sch.task.service.dao.SchBaseTaskconfig; +import org.nl.wms.sch.task.service.dto.SchBaseTaskconfigQuery; import java.util.Map; import java.util.Set; @@ -21,7 +22,7 @@ public interface ISchBaseTaskconfigService extends IService { * @param pageable 分页参数 * @return IPage */ - IPage queryAll(Map whereJson, PageQuery pageable); + IPage queryAll(SchBaseTaskconfigQuery whereJson, PageQuery pageable); /** * 创建 diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTaskconfig.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTaskconfig.java index b1ff7bf..309fa7c 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTaskconfig.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTaskconfig.java @@ -25,124 +25,128 @@ public class SchBaseTaskconfig implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "config_id", type = IdType.NONE) - + private String config_id; - + private String config_code; - + private String config_name; - + private String route_plan_code; - + private String task_qf_type; - + private String acs_task_type; - + private String task_name; - - private String task_type; - + private String task_type; + @TableField(exist = false) + private String task_type_id; + @TableField(exist = false) + private String task_type_name; + + private String task_direction; - + private String priority; - + private Integer task_create_max_num; - + private Integer task_issue_max_num; - + private Boolean is_auto_issue; - + private String start_region_str; - + private String next_region_str; - + private String start_point_pre; - + private String next_region_pre; - + private Boolean is_check_workorder; - + private Boolean is_check_start_lock; - + private Boolean is_immediate_create; - + private Boolean is_check_next_lock; - + private Boolean is_start_auto; - + private Boolean is_next_auto; - + private Boolean is_lock_start; - + private Boolean is_lock_next; - + private String request_param; - + private String response_param; - + private Boolean is_group_congrol_issue_seq; - + private BigDecimal unfinish_notify_time; - + private String sql_param; - + private String workshop_code; - + private String remark; - + private Boolean is_used; - + private Boolean is_delete; - + 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) diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.java index eeb14fe..a17f936 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.java @@ -1,7 +1,9 @@ package org.nl.wms.sch.task.service.dao.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; +import org.nl.wms.sch.task.service.dto.SchBaseTaskconfigQuery; /** * @author lyd @@ -9,4 +11,11 @@ import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; **/ public interface SchBaseTaskconfigMapper extends BaseMapper { + /** + * 连接查询 + * @param pages 分页 + * @param config 参数 + * @return 任务配置数据 + */ + IPage selectPageLeftJoin(IPage pages, SchBaseTaskconfigQuery config); } diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.xml b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.xml index a9acdc0..d281a82 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.xml +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.xml @@ -2,4 +2,20 @@ + diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigQuery.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigQuery.java index 1ef82e5..3b0c1a3 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigQuery.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigQuery.java @@ -1,12 +1,18 @@ package org.nl.wms.sch.task.service.dto; +import lombok.Data; import org.nl.common.domain.query.BaseQuery; import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; +import java.io.Serializable; + /** * @author lyd * @date 2023-05-15 **/ -public class SchBaseTaskconfigQuery extends BaseQuery { +@Data +public class SchBaseTaskconfigQuery extends SchBaseTaskconfig { + + private String blurry; } diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskconfigServiceImpl.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskconfigServiceImpl.java index 6076c3f..45d831a 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskconfigServiceImpl.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskconfigServiceImpl.java @@ -12,9 +12,12 @@ 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.master.classification.service.IMdBaseClassstandardService; +import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard; import org.nl.wms.sch.task.service.ISchBaseTaskconfigService; import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskconfigMapper; +import org.nl.wms.sch.task.service.dto.SchBaseTaskconfigQuery; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -33,32 +36,27 @@ public class SchBaseTaskconfigServiceImpl extends ServiceImpl queryAll(Map whereJson, PageQuery page) { - String blurry = ObjectUtil.isNotEmpty(whereJson.get("blurry")) ? whereJson.get("blurry").toString() : null; - String workshop_code = ObjectUtil.isNotEmpty(whereJson.get("workshop_code")) ? whereJson.get("workshop_code").toString() : null; - LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); - lam.like(ObjectUtil.isNotEmpty(blurry), SchBaseTaskconfig::getConfig_name, blurry) - .eq(ObjectUtil.isNotEmpty(workshop_code), SchBaseTaskconfig::getWorkshop_code, workshop_code); + public IPage queryAll(SchBaseTaskconfigQuery whereJson, PageQuery page) { IPage pages = new Page<>(page.getPage() + 1, page.getSize()); - schBaseTaskconfigMapper.selectPage(pages, lam); - pages.getRecords().forEach(config -> { - if (ObjectUtil.isNotEmpty(config.getStart_region_str())) { - config.setStart_region_strs(Arrays.asList(config.getStart_region_str().split(","))); - } - if (ObjectUtil.isNotEmpty(config.getNext_region_str())) { - config.setNext_region_strs(Arrays.asList(config.getNext_region_str().split(","))); - } - }); + pages = schBaseTaskconfigMapper.selectPageLeftJoin(pages, whereJson); return pages; } @Override public void create(SchBaseTaskconfig entity) { SchBaseTaskconfig schBaseTaskconfig = schBaseTaskconfigMapper.selectOne(new LambdaQueryWrapper().eq(SchBaseTaskconfig::getConfig_code, entity.getConfig_code())); - if (ObjectUtil.isNotEmpty(schBaseTaskconfig)) + if (ObjectUtil.isNotEmpty(schBaseTaskconfig)) { throw new BadRequestException(LangProcess.msg("error_ParamExist", entity.getConfig_code())); + } + + MdBaseClassstandard classstandard = classstandardService.getById(entity.getTask_type_id()); + if (classstandard == null) { + throw new BadRequestException(LangProcess.msg("error_isNull", entity.getTask_type())); + } String currentUserId = SecurityUtils.getCurrentUserId(); String nickName = SecurityUtils.getCurrentNickName(); @@ -71,26 +69,19 @@ public class SchBaseTaskconfigServiceImpl extends ServiceImpl - - - + placeholder="请选择任务类型" + /> - - - + + + + - - -