diff --git a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/mapper/MaLabelBindMapper.java b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/mapper/MaLabelBindMapper.java
index 0287fdd1..2b39c205 100644
--- a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/mapper/MaLabelBindMapper.java
+++ b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/mapper/MaLabelBindMapper.java
@@ -1,7 +1,9 @@
package com.bonus.sgzb.base.mapper;
import java.util.List;
+import com.bonus.sgzb.base.domain.MaLabelBind;
import com.bonus.sgzb.base.vo.MaLabelBindVO;
+import org.apache.ibatis.annotations.Mapper;
/**
* 机具设备标签ma_label_bindMapper接口
@@ -9,6 +11,7 @@ import com.bonus.sgzb.base.vo.MaLabelBindVO;
* @author bonus
* @date 2023-12-13
*/
+@Mapper
public interface MaLabelBindMapper
{
/**
@@ -65,4 +68,6 @@ public interface MaLabelBindMapper
* @return 结果
*/
public int updateMaLabelBindByMaIds(Long maId);
+
+ int insertLabelBind(MaLabelBind maLabelBind);
}
diff --git a/sgzb-modules/sgzb-base/src/main/resources/mapper/base/MaLabelBindMapper.xml b/sgzb-modules/sgzb-base/src/main/resources/mapper/base/MaLabelBindMapper.xml
index 7268eb08..01c22947 100644
--- a/sgzb-modules/sgzb-base/src/main/resources/mapper/base/MaLabelBindMapper.xml
+++ b/sgzb-modules/sgzb-base/src/main/resources/mapper/base/MaLabelBindMapper.xml
@@ -87,6 +87,7 @@
insert into ma_label_bind
+ ma_id,
label_code,
type_id,
binder,
@@ -96,6 +97,7 @@
status,
+ #{maId},
#{labelCode},
#{typeId},
#{binder},
@@ -105,6 +107,30 @@
#{status},
+
+ insert into ma_label_bind
+
+ ma_id,
+ label_code,
+ type_id,
+ binder,
+ label_type,
+ company_id,
+ binder_time,
+ status,
+
+
+ #{maId},
+ #{labelCode},
+ #{typeId},
+ #{binder},
+ #{labelType},
+ #{companyId},
+ #{binderTime},
+ #{status},
+
+
+
update ma_label_bind
diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SelectController.java b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SelectController.java
index be2cee5c..e33d48e5 100644
--- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SelectController.java
+++ b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SelectController.java
@@ -32,4 +32,47 @@ public class SelectController {
public AjaxResult getProData(SelectDto dto) {
return service.getProData(dto);
}
+
+ @ApiOperation(value = "机具类型下拉选")
+ @PostMapping("getMaTypeData")
+ public AjaxResult getMaTypeData(SelectDto dto){
+ return service.getMaTypeData(dto);
+ }
+
+ @ApiOperation(value = "机具类型下拉树")
+ @PostMapping("getMaTypeTreeData")
+ public AjaxResult getMaTypeTreeData(SelectDto dto){
+// return service.getMaTypeTreeData(dto);
+ return null;
+ }
+
+ @ApiOperation(value = "数据字典下拉选")
+ @PostMapping("getDictByPidCbx")
+ public AjaxResult getDictByPidCbx(SelectDto dto){
+ return service.getDictByPidCbx(dto);
+ }
+
+ @ApiOperation(value = "单位树/归属部门/所属上级")
+ @PostMapping("getDeptTree")
+ public AjaxResult getDeptTree(SelectDto dto){
+ return service.getDeptTree(dto);
+ }
+
+ @ApiOperation(value = "岗位下拉选")
+ @PostMapping("getPostCbx")
+ public AjaxResult getPostCbx(SelectDto dto){
+ return service.getPostCbx(dto);
+ }
+
+ @ApiOperation(value = "角色下拉选")
+ @PostMapping("getRoleCbx")
+ public AjaxResult getRoleCbx(SelectDto dto){
+ return service.getRoleCbx(dto);
+ }
+
+ @ApiOperation(value = "单位类型下拉选")
+ @PostMapping("getUnitTypeCbx")
+ public AjaxResult getUnitTypeCbx(SelectDto dto){
+ return service.getUnitTypeCbx(dto);
+ }
}
diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectDto.java b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectDto.java
index 7d400068..1f87e261 100644
--- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectDto.java
+++ b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectDto.java
@@ -10,4 +10,13 @@ public class SelectDto {
/** 参数id*/
private String id;
+
+ /** 2.物品种类 3.设备类型 4.规格型号*/
+ private String type;
+
+ /** 字典表 父类值*/
+ private String parentValue;
+
+ /** 层级*/
+ private String level;
}
diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectVo.java b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectVo.java
index 2b0814f2..82c74508 100644
--- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectVo.java
+++ b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectVo.java
@@ -12,5 +12,5 @@ public class SelectVo {
private long id;
/** 名称*/
- private String titleName;
+ private String name;
}
diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/TreeNode.java b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/TreeNode.java
new file mode 100644
index 00000000..01b73bd7
--- /dev/null
+++ b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/TreeNode.java
@@ -0,0 +1,24 @@
+package com.bonus.sgzb.system.domain;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author 10488
+ * 下拉树-实体类
+ */
+@Data
+public class TreeNode {
+
+ private long id;
+
+ private String label;
+
+ private long parentId;
+
+ @JsonInclude(JsonInclude.Include.NON_EMPTY)
+ private List children = new ArrayList<>();
+}
diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/mapper/SelectMapper.java b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/mapper/SelectMapper.java
index b894e303..10f8a298 100644
--- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/mapper/SelectMapper.java
+++ b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/mapper/SelectMapper.java
@@ -2,6 +2,7 @@ package com.bonus.sgzb.system.mapper;
import com.bonus.sgzb.system.domain.SelectDto;
import com.bonus.sgzb.system.domain.SelectVo;
+import com.bonus.sgzb.system.domain.TreeNode;
import org.springframework.stereotype.Repository;
import java.util.List;
@@ -29,4 +30,58 @@ public interface SelectMapper {
* @date 2023/12/20 15:05
*/
List getProData(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return List
+ * @description 机具类型
+ * @author cwchen
+ * @date 2023/12/20 16:02
+ */
+ List getMaTypeData(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return List
+ * @description 数据字典下拉选
+ * @author cwchen
+ * @date 2023/12/20 16:23
+ */
+ List getDictByPidCbx(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return List
+ * @description 单位树/归属部门/所属上级
+ * @author cwchen
+ * @date 2023/12/20 17:10
+ */
+ List getDeptTree(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return List
+ * @description 岗位下拉选
+ * @author cwchen
+ * @date 2023/12/20 17:50
+ */
+ List getPostCbx(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return List
+ * @description 角色下拉选
+ * @author cwchen
+ * @date 2023/12/20 17:56
+ */
+ List getRoleCbx(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return List
+ * @description 单位类型下拉选
+ * @author cwchen
+ * @date 2023/12/20 18:01
+ */
+ List getUnitTypeCbx(SelectDto dto);
}
diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/SelectService.java b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/SelectService.java
index 8466a82b..5aef44f8 100644
--- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/SelectService.java
+++ b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/SelectService.java
@@ -26,4 +26,67 @@ public interface SelectService {
* @date 2023/12/20 15:04
*/
AjaxResult getProData(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return AjaxResult
+ * @description 机具类型
+ * @author cwchen
+ * @date 2023/12/20 16:02
+ */
+ AjaxResult getMaTypeData(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return AjaxResult
+ * @description 机具类型-下拉树
+ * @author cwchen
+ * @date 2023/12/20 16:10
+ */
+// AjaxResult getMaTypeTreeData(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return AjaxResult
+ * @description 数据字典下拉选
+ * @author cwchen
+ * @date 2023/12/20 16:22
+ */
+ AjaxResult getDictByPidCbx(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return AjaxResult
+ * @description 单位树/归属部门/所属上级
+ * @author cwchen
+ * @date 2023/12/20 16:36
+ */
+ AjaxResult getDeptTree(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return AjaxResult
+ * @description 岗位下拉树
+ * @author cwchen
+ * @date 2023/12/20 17:45
+ */
+ AjaxResult getPostCbx(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return AjaxResult
+ * @description 角色下拉选
+ * @author cwchen
+ * @date 2023/12/20 17:56
+ */
+ AjaxResult getRoleCbx(SelectDto dto);
+
+ /**
+ * @param dto
+ * @return AjaxResult
+ * @description 单位类型下拉选
+ * @author cwchen
+ * @date 2023/12/20 18:00
+ */
+ AjaxResult getUnitTypeCbx(SelectDto dto);
}
diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/impl/SelectServiceImpl.java b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/impl/SelectServiceImpl.java
index 639874e2..522630c4 100644
--- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/impl/SelectServiceImpl.java
+++ b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/impl/SelectServiceImpl.java
@@ -3,9 +3,12 @@ package com.bonus.sgzb.system.service.impl;
import com.bonus.sgzb.common.core.web.domain.AjaxResult;
import com.bonus.sgzb.system.domain.SelectDto;
import com.bonus.sgzb.system.domain.SelectVo;
+import com.bonus.sgzb.system.domain.TreeNode;
import com.bonus.sgzb.system.mapper.SelectMapper;
import com.bonus.sgzb.system.service.SelectService;
+import com.bonus.sgzb.system.util.TreeBuild;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -29,7 +32,7 @@ public class SelectServiceImpl implements SelectService {
try {
list = mapper.getUnitData(dto);
} catch (Exception e) {
- log.error("往来单位-查询失败",e);
+ log.error("往来单位-查询失败", e);
}
return AjaxResult.success(list);
}
@@ -40,7 +43,80 @@ public class SelectServiceImpl implements SelectService {
try {
list = mapper.getProData(dto);
} catch (Exception e) {
- log.error("工程-查询失败",e);
+ log.error("工程-查询失败", e);
+ }
+ return AjaxResult.success(list);
+ }
+
+ @Override
+ public AjaxResult getMaTypeData(SelectDto dto) {
+ List list = new ArrayList<>();
+ try {
+ list = mapper.getMaTypeData(dto);
+ } catch (Exception e) {
+ log.error("机具类型-查询失败", e);
+ }
+ return AjaxResult.success(list);
+ }
+
+ @Override
+ public AjaxResult getDictByPidCbx(SelectDto dto) {
+ List list = new ArrayList<>();
+ try {
+ list = mapper.getDictByPidCbx(dto);
+ } catch (Exception e) {
+ log.error("数据字典-查询失败", e);
+ }
+ return AjaxResult.success(list);
+ }
+
+ @Override
+ public AjaxResult getDeptTree(SelectDto dto) {
+ List groupList = new ArrayList<>();
+ List list = new ArrayList<>();
+ try {
+ list = mapper.getDeptTree(dto);
+ if (CollectionUtils.isNotEmpty(list)) {
+ // 创建树形结构(数据集合作为参数)
+ TreeBuild treeBuild = new TreeBuild(list);
+ // 原查询结果转换树形结构
+ groupList = treeBuild.buildTree();
+ }
+ } catch (Exception e) {
+ log.error("单位树/归属部门/所属上级-查询失败", e);
+ }
+ return AjaxResult.success(groupList);
+ }
+
+ @Override
+ public AjaxResult getPostCbx(SelectDto dto) {
+ List list = new ArrayList<>();
+ try {
+ list = mapper.getPostCbx(dto);
+ } catch (Exception e) {
+ log.error("岗位下拉选-查询失败", e);
+ }
+ return AjaxResult.success(list);
+ }
+
+ @Override
+ public AjaxResult getRoleCbx(SelectDto dto) {
+ List list = new ArrayList<>();
+ try {
+ list = mapper.getRoleCbx(dto);
+ } catch (Exception e) {
+ log.error("角色下拉选-查询失败", e);
+ }
+ return AjaxResult.success(list);
+ }
+
+ @Override
+ public AjaxResult getUnitTypeCbx(SelectDto dto) {
+ List list = new ArrayList<>();
+ try {
+ list = mapper.getUnitTypeCbx(dto);
+ } catch (Exception e) {
+ log.error("单位类型下拉选-查询失败", e);
}
return AjaxResult.success(list);
}
diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/util/TreeBuild.java b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/util/TreeBuild.java
new file mode 100644
index 00000000..14266829
--- /dev/null
+++ b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/util/TreeBuild.java
@@ -0,0 +1,79 @@
+package com.bonus.sgzb.system.util;
+
+import com.bonus.sgzb.system.domain.TreeNode;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * BuildTree 构建树形结构
+ * @author 10488
+ */
+public class TreeBuild {
+
+ public List nodeList = new ArrayList<>();
+
+ /**
+ * 构造方法
+ * @param nodeList 将数据集合赋值给nodeList,即所有数据作为所有节点。
+ */
+ public TreeBuild(List nodeList){
+ this.nodeList = nodeList;
+ }
+
+ /**
+ * 获取需构建的所有根节点(顶级节点) "0"
+ * @return 所有根节点List集合
+ */
+ public List getRootNode(){
+ // 保存所有根节点(所有根节点的数据)
+ List rootNodeList = new ArrayList<>();
+ // treeNode:查询出的每一条数据(节点)
+ for (TreeNode treeNode : nodeList){
+ // 判断当前节点是否为根节点,此处注意:若parentId类型是String,则要采用equals()方法判断。
+ if (0 == treeNode.getParentId()) {
+ // 是,添加
+ rootNodeList.add(treeNode);
+ }
+ }
+ return rootNodeList;
+ }
+
+ /**
+ * 根据每一个顶级节点(根节点)进行构建树形结构
+ * @return 构建整棵树
+ */
+ public List buildTree(){
+ // treeNodes:保存一个顶级节点所构建出来的完整树形
+ List treeNodes = new ArrayList();
+ // getRootNode():获取所有的根节点
+ for (TreeNode treeRootNode : getRootNode()) {
+ // 将顶级节点进行构建子树
+ treeRootNode = buildChildTree(treeRootNode);
+ // 完成一个顶级节点所构建的树形,增加进来
+ treeNodes.add(treeRootNode);
+ }
+ return treeNodes;
+ }
+
+ /**
+ * 递归-----构建子树形结构
+ * @param pNode 根节点(顶级节点)
+ * @return 整棵树
+ */
+ public TreeNode buildChildTree(TreeNode pNode){
+ List childTree = new ArrayList();
+ // nodeList:所有节点集合(所有数据)
+ for (TreeNode treeNode : nodeList) {
+ // 判断当前节点的父节点ID是否等于根节点的ID,即当前节点为其下的子节点
+ if (treeNode.getParentId() == pNode.getId()) {
+ // 再递归进行判断当前节点的情况,调用自身方法
+ childTree.add(buildChildTree(treeNode));
+ }
+ }
+ // for循环结束,即节点下没有任何节点,树形构建结束,设置树结果
+ pNode.setChildren(childTree);
+ return pNode;
+ }
+
+}
diff --git a/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SelectMapper.xml b/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SelectMapper.xml
index 499e6738..e9cfd076 100644
--- a/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SelectMapper.xml
+++ b/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SelectMapper.xml
@@ -9,7 +9,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
/*根据标段工程id关联协议查询往来单位*/
SELECT DISTINCT bui.unit_id AS id,
- bui.unit_name AS titleName
+ bui.unit_name AS `name`
FROM bm_project_lot bpl
LEFT JOIN bm_agreement_info bai ON bpl.lot_id = bai.project_id AND bai.`status` = '1'
LEFT JOIN bm_unit_info bui ON bai.unit_id = bui.unit_id AND bui.del_flag = '0'
@@ -17,7 +17,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT unit_id AS id,
- unit_name AS titleName
+ unit_name AS `name`
FROM bm_unit_info
WHERE del_flag = '0'
@@ -28,7 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
/*根据往来单位id关联协议查询工程*/
SELECT DISTINCT bpl.lot_id AS id,
- bpl.lot_name AS titleName
+ bpl.lot_name AS `name`
FROM bm_unit_info bui
LEFT JOIN bm_agreement_info bai ON bui.unit_id = bai.unit_id AND bai.`status` = '1'
LEFT JOIN bm_project_lot bpl ON bai.project_id = bpl.lot_id AND bpl.del_flag = '0'
@@ -36,9 +36,56 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT lot_id AS id,
- lot_name AS titleName
+ lot_name AS `name`
FROM bm_project_lot
WHERE del_flag = '0'
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file