diff --git a/muyu-modules/muyu-data-source/muyu-data-source-common/src/main/java/com/muyu/data/source/domain/DictionaryData.java b/muyu-modules/muyu-data-source/muyu-data-source-common/src/main/java/com/muyu/data/source/domain/DictionaryData.java new file mode 100644 index 0000000..7a7bfc0 --- /dev/null +++ b/muyu-modules/muyu-data-source/muyu-data-source-common/src/main/java/com/muyu/data/source/domain/DictionaryData.java @@ -0,0 +1,59 @@ +package com.muyu.data.source.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * 字典数据对象 DictionaryData + * + * @author DeKangLiu + * on 2024/4/29 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class DictionaryData { + + /**字典数据id*/ + private Integer id; + + /**字典数据标签*/ + private String dictionaryLabel; + + /**字典数据值*/ + private String dictionaryValue; + + /**字典类型*/ + private String dictionaryType; + + + + /**字典数据状态*/ + private Integer status; + + /**创建人*/ + private String createBy; + + /**创建时间*/ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private Date createTime; + + /**更新人*/ + private String updateBy; + + /**更新时间*/ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private Date updateTime; + + /**备注*/ + private String remark; +} diff --git a/muyu-modules/muyu-data-source/muyu-data-source-common/src/main/java/com/muyu/data/source/domain/DictionaryType.java b/muyu-modules/muyu-data-source/muyu-data-source-common/src/main/java/com/muyu/data/source/domain/DictionaryType.java new file mode 100644 index 0000000..18fbd47 --- /dev/null +++ b/muyu-modules/muyu-data-source/muyu-data-source-common/src/main/java/com/muyu/data/source/domain/DictionaryType.java @@ -0,0 +1,55 @@ +package com.muyu.data.source.domain; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; +import java.util.List; + +/** + * 字典类型对象 DictionaryType + * + * @author DeKangLiu + * on 2024/4/29 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class DictionaryType { + + /**字典类型ID*/ + private Integer id; + + /**资产结构ID*/ + private Integer structureId; + + /**字典名称*/ + private String dictionaryName; + + /**字典类型*/ + private String dictionaryType; + + /**字典状态(0正常 1停用)*/ + private Integer status; + + /**创建者*/ + private String createBy; + + /**创建时间*/ + private Date createTime; + + /**更新者*/ + private String updateBy; + + /**更新时间*/ + private Date updateTime; + + /**备注*/ + private String remark; + + /**字典数据对象*/ + private List dictionaryDataList; +} diff --git a/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/controller/DictionaryController.java b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/controller/DictionaryController.java new file mode 100644 index 0000000..1cbce9b --- /dev/null +++ b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/controller/DictionaryController.java @@ -0,0 +1,35 @@ +package com.muyu.data.source.controller; + +import com.muyu.common.core.domain.Result; +import com.muyu.data.source.domain.DictionaryData; +import com.muyu.data.source.domain.DictionaryType; +import com.muyu.data.source.service.DictionaryService; +import io.swagger.annotations.Api; +import lombok.Data; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Dictionary; +import java.util.List; + +/** + * 字典对象控制层 DictionaryController + * + * @author DeKangLiu + * on 2024/4/29 + */ +@Api(tags = "数据源") +@RestController +@RequestMapping("/dict") +public class DictionaryController { + + @Autowired + private DictionaryService dictionaryService; + + @GetMapping("/findDictionaryByStructureId") + public Result> findDictionaryByStructureId(Integer id) { + return dictionaryService.findDictionaryByStructureId(id); + } +} diff --git a/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/mapper/DictionaryMapper.java b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/mapper/DictionaryMapper.java new file mode 100644 index 0000000..10f23e4 --- /dev/null +++ b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/mapper/DictionaryMapper.java @@ -0,0 +1,21 @@ +package com.muyu.data.source.mapper; + +import com.muyu.data.source.domain.DictionaryData; +import com.muyu.data.source.domain.DictionaryType; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * DictionaryMapper + * + * @author DeKangLiu + * on 2024/4/29 + */ +@Mapper +public interface DictionaryMapper { + List selectDictionaryByStructureId(Integer id); + + List selectDictionaryDataByType(@Param("dictionaryType") String dictionaryType); +} diff --git a/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/DictionaryService.java b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/DictionaryService.java new file mode 100644 index 0000000..865a9fd --- /dev/null +++ b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/DictionaryService.java @@ -0,0 +1,17 @@ +package com.muyu.data.source.service; + +import com.muyu.common.core.domain.Result; +import com.muyu.data.source.domain.DictionaryData; +import com.muyu.data.source.domain.DictionaryType; + +import java.util.List; + +/** + * 字典业务层 DictionaryService + * + * @author DeKangLiu + * on 2024/4/29 + */ +public interface DictionaryService { + Result> findDictionaryByStructureId(Integer id); +} diff --git a/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/impl/DataSourceServiceImpl.java b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/impl/DataSourceServiceImpl.java index 4081380..9dd07d2 100644 --- a/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/impl/DataSourceServiceImpl.java +++ b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/impl/DataSourceServiceImpl.java @@ -41,6 +41,7 @@ public class DataSourceServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + if (ObjUtils.notNull(dataSource.getAccessSourceName())){ queryWrapper.like(DataSource::getAccessSourceName, dataSource.getAccessSourceName()); } diff --git a/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/impl/DictionaryServiceImpl.java b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/impl/DictionaryServiceImpl.java new file mode 100644 index 0000000..af5d49d --- /dev/null +++ b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/java/com/muyu/data/source/service/impl/DictionaryServiceImpl.java @@ -0,0 +1,50 @@ +package com.muyu.data.source.service.impl; + +import com.muyu.common.core.domain.Result; +import com.muyu.data.source.domain.DictionaryData; +import com.muyu.data.source.domain.DictionaryType; +import com.muyu.data.source.mapper.DictionaryMapper; +import com.muyu.data.source.service.DictionaryService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 字典业务实现层 DictionaryServiceImpl + * + * @author DeKangLiu + * on 2024/4/29 + */ +@Slf4j +@Service +public class DictionaryServiceImpl implements DictionaryService { + @Autowired + private DictionaryMapper dictionaryMapper; + + @Override + public Result> findDictionaryByStructureId(Integer id) { + + List dictionaryTypeList = dictionaryMapper.selectDictionaryByStructureId(id); + + List list = dictionaryTypeList.stream() + .map(dictionaryType -> { + List dictionaryDataList = dictionaryMapper.selectDictionaryDataByType(dictionaryType.getDictionaryType()); + DictionaryType build = DictionaryType.builder() + .dictionaryDataList(dictionaryDataList) + .dictionaryType(dictionaryType.getDictionaryType()) + .dictionaryName(dictionaryType.getDictionaryName()) + .dictionaryDataList(dictionaryDataList) + .status(dictionaryType.getStatus()) + .remark(dictionaryType.getRemark()) + .createBy(dictionaryType.getCreateBy()) + .createTime(dictionaryType.getCreateTime()) + .updateBy(dictionaryType.getUpdateBy()) + .updateTime(dictionaryType.getUpdateTime()) + .build(); + return build; + }).toList(); + return Result.success(list); + } +} diff --git a/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/resources/mapper/dataSource/DictionaryMapper.xml b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/resources/mapper/dataSource/DictionaryMapper.xml new file mode 100644 index 0000000..89626de --- /dev/null +++ b/muyu-modules/muyu-data-source/muyu-data-source-server/src/main/resources/mapper/dataSource/DictionaryMapper.xml @@ -0,0 +1,14 @@ + + + + + + + +