diff --git a/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/domain/Dictionary.java b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/domain/Dictionary.java new file mode 100644 index 0000000..64775c8 --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/domain/Dictionary.java @@ -0,0 +1,40 @@ +package com.muyu.etl.domain; + +import com.muyu.common.core.web.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Dictionary extends BaseEntity { + + /** + * 主键 + */ + private Long id; + + /** + * 字典名称 + */ + private String dictionaryName; + + /** + * 字典key + */ + private String dictionaryKey; + + /** + * 数据源ID + */ + private Long dataSourceId; + + /** + * 字典集合 + */ + private List dictionaryDataList; + +} diff --git a/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/domain/DictionaryData.java b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/domain/DictionaryData.java new file mode 100644 index 0000000..22b6451 --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/domain/DictionaryData.java @@ -0,0 +1,35 @@ +package com.muyu.etl.domain; + +import com.muyu.common.core.web.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class DictionaryData extends BaseEntity { + + private Long id; + + /** + * 字典表Id + */ + private Long dictionaryId; + + /** + * 字典标签 + */ + private String label; + + /** + * 字典值 + */ + private String val; + + /** + * 修改状态 + */ + private Boolean isEdit = false; + +} diff --git a/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/mapper/DictionaryDataMapper.java b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/mapper/DictionaryDataMapper.java new file mode 100644 index 0000000..66692e1 --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/mapper/DictionaryDataMapper.java @@ -0,0 +1,60 @@ +package com.muyu.etl.mapper; + +import com.muyu.etl.domain.DictionaryData; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface DictionaryDataMapper { + + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + public DictionaryData selectDictionaryDataById(Long id); + + /** + * 查询【请填写功能名称】列表 + * + * @param dictionaryData 【请填写功能名称】 + * @return 【请填写功能名称】集合 + */ + public List selectDictionaryDataList(DictionaryData dictionaryData); + + /** + * 新增【请填写功能名称】 + * + * @param dictionaryData 【请填写功能名称】 + * @return 结果 + */ + public int insertDictionaryData(DictionaryData dictionaryData); + + /** + * 修改【请填写功能名称】 + * + * @param dictionaryData 【请填写功能名称】 + * @return 结果 + */ + public int updateDictionaryData(DictionaryData dictionaryData); + + /** + * 删除【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + public int deleteDictionaryDataById(Long id); + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteDictionaryDataByIds(Long[] ids); + + List getDictionaryDataList(@Param("dictionaryIds") List dictionaryIds); + +} diff --git a/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/mapper/DictionaryMapper.java b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/mapper/DictionaryMapper.java new file mode 100644 index 0000000..b96798f --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/mapper/DictionaryMapper.java @@ -0,0 +1,61 @@ +package com.muyu.etl.mapper; + +import com.muyu.etl.domain.Dictionary; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface DictionaryMapper { + + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + public Dictionary selectDictionaryById(Long id); + + /** + * 查询【请填写功能名称】列表 + * + * @param dictionary 【请填写功能名称】 + * @return 【请填写功能名称】集合 + */ + public List selectDictionaryList(Dictionary dictionary); + + /** + * 新增【请填写功能名称】 + * + * @param dictionary 【请填写功能名称】 + * @return 结果 + */ + public int insertDictionary(Dictionary dictionary); + + /** + * 修改【请填写功能名称】 + * + * @param dictionary 【请填写功能名称】 + * @return 结果 + */ + public int updateDictionary(Dictionary dictionary); + + /** + * 删除【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + public int deleteDictionaryById(Long id); + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteDictionaryByIds(Long[] ids); + + + List getDictionaryList(@Param("dataSourceId") Long dataSourceId); + +} diff --git a/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/DictionaryDataService.java b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/DictionaryDataService.java new file mode 100644 index 0000000..580f5ae --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/DictionaryDataService.java @@ -0,0 +1,57 @@ +package com.muyu.etl.service; + +import com.muyu.etl.domain.DictionaryData; + +import java.util.List; + +public interface DictionaryDataService { + + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + public DictionaryData selectDictionaryDataById(Long id); + + /** + * 查询【请填写功能名称】列表 + * + * @param dictionaryData 【请填写功能名称】 + * @return 【请填写功能名称】集合 + */ + public List selectDictionaryDataList(DictionaryData dictionaryData); + + /** + * 新增【请填写功能名称】 + * + * @param dictionaryData 【请填写功能名称】 + * @return 结果 + */ + public int insertDictionaryData(DictionaryData dictionaryData); + + /** + * 修改【请填写功能名称】 + * + * @param dictionaryData 【请填写功能名称】 + * @return 结果 + */ + public int updateDictionaryData(DictionaryData dictionaryData); + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的【请填写功能名称】主键集合 + * @return 结果 + */ + public int deleteDictionaryDataByIds(Long[] ids); + + /** + * 删除【请填写功能名称】信息 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + public int deleteDictionaryDataById(Long id); + +} diff --git a/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/DictionaryService.java b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/DictionaryService.java new file mode 100644 index 0000000..1263cb3 --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/DictionaryService.java @@ -0,0 +1,61 @@ +package com.muyu.etl.service; + +import com.muyu.common.core.domain.Result; +import com.muyu.etl.domain.Dictionary; + +import java.util.List; + +public interface DictionaryService { + + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + public Dictionary selectDictionaryById(Long id); + + /** + * 查询【请填写功能名称】列表 + * + * @param dictionary 【请填写功能名称】 + * @return 【请填写功能名称】集合 + */ + public List selectDictionaryList(Dictionary dictionary); + + /** + * 新增【请填写功能名称】 + * + * @param dictionary 【请填写功能名称】 + * @return 结果 + */ + public int insertDictionary(Dictionary dictionary); + + /** + * 修改【请填写功能名称】 + * + * @param dictionary 【请填写功能名称】 + * @return 结果 + */ + public int updateDictionary(Dictionary dictionary); + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的【请填写功能名称】主键集合 + * @return 结果 + */ + public int deleteDictionaryByIds(Long[] ids); + + /** + * 删除【请填写功能名称】信息 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + public int deleteDictionaryById(Long id); + + + Result getDictionaryList(Long dataSourceId); + +} diff --git a/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/impl/DictionaryDataServiceImpl.java b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/impl/DictionaryDataServiceImpl.java new file mode 100644 index 0000000..75c589e --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/impl/DictionaryDataServiceImpl.java @@ -0,0 +1,96 @@ +package com.muyu.etl.service.impl; + +import com.muyu.common.core.utils.DateUtils; +import com.muyu.common.security.utils.SecurityUtils; +import com.muyu.etl.domain.DictionaryData; +import com.muyu.etl.mapper.DictionaryDataMapper; +import com.muyu.etl.mapper.DictionaryMapper; +import com.muyu.etl.service.DictionaryDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class DictionaryDataServiceImpl implements DictionaryDataService { + + @Autowired + private DictionaryDataMapper dictionaryDataMapper; + + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + @Override + public DictionaryData selectDictionaryDataById(Long id) + { + return dictionaryDataMapper.selectDictionaryDataById(id); + } + + /** + * 查询【请填写功能名称】列表 + * + * @param dictionaryData 【请填写功能名称】 + * @return 【请填写功能名称】 + */ + @Override + public List selectDictionaryDataList(DictionaryData dictionaryData) + { + return dictionaryDataMapper.selectDictionaryDataList(dictionaryData); + } + + /** + * 新增【请填写功能名称】 + * + * @param dictionaryData 【请填写功能名称】 + * @return 结果 + */ + @Override + public int insertDictionaryData(DictionaryData dictionaryData) + { + dictionaryData.setCreateTime(DateUtils.getNowDate()); + dictionaryData.setCreateBy(SecurityUtils.getUsername()); + return dictionaryDataMapper.insertDictionaryData(dictionaryData); + } + + /** + * 修改【请填写功能名称】 + * + * @param dictionaryData 【请填写功能名称】 + * @return 结果 + */ + @Override + public int updateDictionaryData(DictionaryData dictionaryData) + { + dictionaryData.setUpdateTime(DateUtils.getNowDate()); + dictionaryData.setUpdateBy(SecurityUtils.getUsername()); + return dictionaryDataMapper.updateDictionaryData(dictionaryData); + } + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的【请填写功能名称】主键 + * @return 结果 + */ + @Override + public int deleteDictionaryDataByIds(Long[] ids) + { + return dictionaryDataMapper.deleteDictionaryDataByIds(ids); + } + + /** + * 删除【请填写功能名称】信息 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + @Override + public int deleteDictionaryDataById(Long id) + { + return dictionaryDataMapper.deleteDictionaryDataById(id); + } + +} diff --git a/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/impl/DictionaryServiceImpl.java b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/impl/DictionaryServiceImpl.java new file mode 100644 index 0000000..2a703e4 --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/java/com/muyu/etl/service/impl/DictionaryServiceImpl.java @@ -0,0 +1,118 @@ +package com.muyu.etl.service.impl; + +import java.util.List; + +import com.muyu.common.core.domain.Result; +import com.muyu.common.core.utils.DateUtils; +import com.muyu.common.security.utils.SecurityUtils; +import com.muyu.etl.domain.DictionaryData; +import com.muyu.etl.mapper.DictionaryDataMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.muyu.etl.mapper.DictionaryMapper; +import com.muyu.etl.domain.Dictionary; +import com.muyu.etl.service.DictionaryService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 【请填写功能名称】Service业务层处理 + * + * @author ruoyi + * @date 2024-04-25 + */ +@Service +public class DictionaryServiceImpl implements DictionaryService { + + @Autowired + private DictionaryMapper dictionaryMapper; + + @Autowired + private DictionaryDataMapper dictionaryDataMapper; + + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + @Override + public Dictionary selectDictionaryById(Long id) { + return dictionaryMapper.selectDictionaryById(id); + } + + /** + * 查询【请填写功能名称】列表 + * + * @param dictionary 【请填写功能名称】 + * @return 【请填写功能名称】 + */ + @Override + public List selectDictionaryList(Dictionary dictionary) { + return dictionaryMapper.selectDictionaryList(dictionary); + } + + /** + * 新增【请填写功能名称】 + * + * @param dictionary 【请填写功能名称】 + * @return 结果 + */ + @Override + public int insertDictionary(Dictionary dictionary) { + dictionary.setCreateTime(DateUtils.getNowDate()); + dictionary.setCreateBy(SecurityUtils.getUsername()); + return dictionaryMapper.insertDictionary(dictionary); + } + + /** + * 修改【请填写功能名称】 + * + * @param dictionary 【请填写功能名称】 + * @return 结果 + */ + @Override + public int updateDictionary(Dictionary dictionary) { + dictionary.setUpdateTime(DateUtils.getNowDate()); + dictionary.setUpdateBy(SecurityUtils.getUsername()); + return dictionaryMapper.updateDictionary(dictionary); + } + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的【请填写功能名称】主键 + * @return 结果 + */ + @Override + public int deleteDictionaryByIds(Long[] ids) { + return dictionaryMapper.deleteDictionaryByIds(ids); + } + + /** + * 删除【请填写功能名称】信息 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + @Override + public int deleteDictionaryById(Long id) { + return dictionaryMapper.deleteDictionaryById(id); + } + + @Override + public Result getDictionaryList(Long dataSourceId) { + List dictionaryList = dictionaryMapper.getDictionaryList(dataSourceId); + if (!dictionaryList.isEmpty()){ + List longs = dictionaryList.stream() + .map(Dictionary::getId).toList(); + List dictionaryDataList = dictionaryDataMapper.getDictionaryDataList(longs); + dictionaryList.stream() + .forEach(dictionary->{ + dictionaryDataList.stream().filter(dictionaryData -> dictionaryData.getDictionaryId().equals(dictionary.getId()) ).toList(); + dictionary.setDictionaryDataList(dictionaryDataList); + }); + } + return Result.success(dictionaryList); + } + +} diff --git a/muyu-modules/muyu-etl/src/main/resources/mapper/DictionaryDataMapper.xml b/muyu-modules/muyu-etl/src/main/resources/mapper/DictionaryDataMapper.xml new file mode 100644 index 0000000..ec4fef4 --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/resources/mapper/DictionaryDataMapper.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + select id, dictionary_id, label, val, create_by, create_time, update_by, update_time, remark from dictionarydata + + + + + + + + + + insert into dictionarydata + + dictionary_id, + label, + val, + create_by, + create_time, + update_by, + update_time, + remark, + + + #{dictionaryId}, + #{label}, + #{val}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + + + + + update dictionarydata + + dictionary_id = #{dictionaryId}, + label = #{label}, + val = #{val}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + + where id = #{id} + + + + delete from dictionarydata where id = #{id} + + + + delete from dictionarydata where id in + + #{id} + + + + diff --git a/muyu-modules/muyu-etl/src/main/resources/mapper/DictionaryMapper.xml b/muyu-modules/muyu-etl/src/main/resources/mapper/DictionaryMapper.xml new file mode 100644 index 0000000..7e72c3a --- /dev/null +++ b/muyu-modules/muyu-etl/src/main/resources/mapper/DictionaryMapper.xml @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + select id, dictionary_name, dictionary_key,data_source_id, create_by, create_time, update_by, update_time, remark from dictionary + + + + + + + + + insert into dictionary + + dictionary_name, + dictionary_key, + data_source_id, + create_by, + create_time, + update_by, + update_time, + remark, + + + #{dictionaryName}, + #{dictionaryKey}, + #{dataSourceId}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + + + + + update dictionary + + dictionary_name = #{dictionaryName}, + dictionary_key = #{dictionaryKey}, + data_source_id = #{dataSourceId}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + + where id = #{id} + + + + delete from dictionary where id = #{id} + + + + delete from dictionary where id in + + #{id} + + + \ No newline at end of file