diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/DictInfo.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/DictInfo.java index be816c5..421fd92 100644 --- a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/DictInfo.java +++ b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/DictInfo.java @@ -1,13 +1,15 @@ package com.muyu.etl.domain; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonGetter; +import com.fasterxml.jackson.annotation.JsonKey; +import com.fasterxml.jackson.annotation.JsonProperty; import com.muyu.common.core.annotation.Excel; import com.muyu.common.core.web.domain.BaseEntity; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; /** * 字典详细内容对象 dict_info @@ -38,5 +40,9 @@ public class DictInfo extends BaseEntity @Excel(name = "字典类型") private String infoValue; + @JsonProperty("isEdit") + private boolean isEdit; + + } diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/Structure.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/Structure.java index 9766cb5..18ff3f9 100644 --- a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/Structure.java +++ b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/Structure.java @@ -2,14 +2,12 @@ package com.muyu.etl.domain; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; +import com.muyu.common.core.annotation.Excel; +import com.muyu.common.core.web.domain.BaseEntity; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; -import com.muyu.common.core.annotation.Excel; -import com.muyu.common.core.web.domain.BaseEntity; /** * 结构对象 structure diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/BasicDictResp.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/BasicDictResp.java new file mode 100644 index 0000000..1a4ac86 --- /dev/null +++ b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/BasicDictResp.java @@ -0,0 +1,41 @@ +package com.muyu.etl.domain.resp; + +import com.muyu.common.core.annotation.Excel; +import com.muyu.etl.domain.DictInfo; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.List; + +/** + * 字典响应对象 + * @ClassName BasicDictResp + * @Description 描述 + * @Author SaiSai.Liu + * @Date 2024/4/24 21:23 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@SuperBuilder +public class BasicDictResp { + private static final long serialVersionUID = 1L; + + /** 主键 */ + private Long id; + + /** 数据接入id */ + private Long basicId; + + /** 字典名称 */ + private String dictName; + + /** 字典类型 */ + private String dictType; + + + private List dictInfoList; + +} diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/TableTreeResp.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/TableTreeResp.java index 78c9cbb..887a726 100644 --- a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/TableTreeResp.java +++ b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/TableTreeResp.java @@ -12,6 +12,7 @@ import lombok.experimental.SuperBuilder; import java.util.List; /** + * 树级结构 * @ClassName TableTreeResp * @Description 描述 * @Author SaiSai.Liu diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java index 67c3a08..bf08f8a 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java @@ -7,9 +7,14 @@ import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.common.log.annotation.Log; import com.muyu.common.log.enums.BusinessType; import com.muyu.common.security.annotation.RequiresPermissions; +import com.muyu.etl.domain.AssetDataDict; import com.muyu.etl.domain.BasicConfigInfo; +import com.muyu.etl.domain.DictInfo; +import com.muyu.etl.domain.resp.BasicDictResp; import com.muyu.etl.domain.resp.TableTreeResp; +import com.muyu.etl.service.AssetDataDictService; import com.muyu.etl.service.BasicConfigInfoService; +import com.muyu.etl.service.DictInfoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -25,18 +30,19 @@ import java.util.List; */ @RestController @RequestMapping("/info") -public class BasicConfigInfoController extends BaseController -{ +public class BasicConfigInfoController extends BaseController { @Autowired private BasicConfigInfoService basicConfigInfoService; - + @Autowired + private AssetDataDictService assetDataDictService; + @Autowired + private DictInfoService dictInfoService; /** * 查询基础信息列表 */ @RequiresPermissions("etl:info:list") @GetMapping("/list") - public Result> list(BasicConfigInfo basicConfigInfo) - { + public Result> list(BasicConfigInfo basicConfigInfo) { startPage(); List list = basicConfigInfoService.selectBasicConfigInfoList(basicConfigInfo); return getDataTable(list); @@ -48,10 +54,9 @@ public class BasicConfigInfoController extends BaseController @RequiresPermissions("etl:info:export") @Log(title = "基础信息", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, BasicConfigInfo basicConfigInfo) - { + public void export(HttpServletResponse response, BasicConfigInfo basicConfigInfo) { List list = basicConfigInfoService.selectBasicConfigInfoList(basicConfigInfo); - ExcelUtil util = new ExcelUtil(BasicConfigInfo.class); + ExcelUtil util = new ExcelUtil<>(BasicConfigInfo.class); util.exportExcel(response, list, "基础信息数据"); } @@ -60,8 +65,7 @@ public class BasicConfigInfoController extends BaseController */ @RequiresPermissions("etl:info:query") @GetMapping(value = "/{id}") - public Result getInfo(@PathVariable("id") Long id) - { + public Result getInfo(@PathVariable("id") Long id) { return success(basicConfigInfoService.selectBasicConfigInfoById(id)); } @@ -71,8 +75,7 @@ public class BasicConfigInfoController extends BaseController @RequiresPermissions("etl:info:add") @Log(title = "基础信息", businessType = BusinessType.INSERT) @PostMapping - public Result add(@RequestBody BasicConfigInfo configQueryReq) - { + public Result add(@RequestBody BasicConfigInfo configQueryReq) { return toAjax(basicConfigInfoService.insertBasicConfigInfo(configQueryReq)); } @@ -82,8 +85,7 @@ public class BasicConfigInfoController extends BaseController @RequiresPermissions("etl:info:edit") @Log(title = "基础信息", businessType = BusinessType.UPDATE) @PutMapping - public Result edit(@RequestBody BasicConfigInfo basicConfigInfo) - { + public Result edit(@RequestBody BasicConfigInfo basicConfigInfo) { return toAjax(basicConfigInfoService.updateBasicConfigInfo(basicConfigInfo)); } @@ -93,8 +95,7 @@ public class BasicConfigInfoController extends BaseController @RequiresPermissions("etl:info:remove") @Log(title = "基础信息", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") - public Result remove(@PathVariable Long[] ids) - { + public Result remove(@PathVariable Long[] ids) { return toAjax(basicConfigInfoService.deleteBasicConfigInfoByIds(ids)); } @@ -111,14 +112,67 @@ public class BasicConfigInfoController extends BaseController @RequiresPermissions("etl:info:test") @Log(title = "获取成功链接中的") @GetMapping("/dataConstruct") - public Result> getData(){ + public Result> getData() { return getDataTable(basicConfigInfoService.getDataByEtl()); } + /** + * 树级结构数据 + * + * @return + */ @RequiresPermissions("etl:table:list") @Log(title = "获取已成功链接的树级结构") @GetMapping("/getTableTree") - public Result> getTableTree(){ + public Result> getTableTree() { return Result.success(basicConfigInfoService.getTableTree()); } + + /** + * 模板 + * + * @return + */ + @RequiresPermissions("etl:table:dictList") + @Log(title = "描述") + @GetMapping("/getDict/{basicId}") + public Result> getDict(@PathVariable Long basicId) { + return Result.success(assetDataDictService.getDict(basicId)); + } + + /** + * 添加字典表 + * @param assetDataDict + * @return + */ + @RequiresPermissions("etl:table:list") + @Log(title = "添加字典内容") + @PostMapping("/insertDict") + public Result insertDictInfo(@RequestBody AssetDataDict assetDataDict) throws ServletException { + return Result.success(assetDataDictService.insertAssetDataDict(assetDataDict)); + } + /** + * 添加字典详细信息 + * @return + */ + @RequiresPermissions("etl:table:list") + @Log(title = "添加字典表") + @PostMapping("/insertDictInfo") + public Result insertDict(@RequestBody DictInfo dictInfo) throws ServletException { + return Result.success(dictInfoService.insertDictInfo(dictInfo)); + } + + +// /** +// * 模板 +// * @return +// */ +// @RequiresPermissions("etl:table:") +// @Log(title = "描述") +// @GetMapping("/path") +// public Result methodName(){ +// return Result.success(null); +// } + + } diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/AssetDataDictService.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/AssetDataDictService.java index 4ffc8a0..e1677da 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/AssetDataDictService.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/AssetDataDictService.java @@ -4,6 +4,9 @@ import java.util.List; import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.etl.domain.AssetDataDict; +import com.muyu.etl.domain.resp.BasicDictResp; + +import javax.servlet.ServletException; /** * 资产数据字典Service接口 @@ -35,7 +38,7 @@ public interface AssetDataDictService extends IService * @param assetDataDict 资产数据字典 * @return 结果 */ - public int insertAssetDataDict(AssetDataDict assetDataDict); + public boolean insertAssetDataDict(AssetDataDict assetDataDict) throws ServletException; /** * 修改资产数据字典 @@ -60,4 +63,6 @@ public interface AssetDataDictService extends IService * @return 结果 */ public int deleteAssetDataDictById(Long id); + + List getDict(Long basicId); } diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/DictInfoService.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/DictInfoService.java index 6306319..f116d6d 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/DictInfoService.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/DictInfoService.java @@ -3,6 +3,7 @@ package com.muyu.etl.service; import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.etl.domain.DictInfo; +import javax.servlet.ServletException; import java.util.List; /** @@ -35,7 +36,7 @@ public interface DictInfoService extends IService * @param dictInfo 字典详细内容 * @return 结果 */ - public int insertDictInfo(DictInfo dictInfo); + public boolean insertDictInfo(DictInfo dictInfo) throws ServletException; /** * 修改字典详细内容 diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/AssetDataDictServiceImpl.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/AssetDataDictServiceImpl.java index 7c3fbd6..d1dbc19 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/AssetDataDictServiceImpl.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/AssetDataDictServiceImpl.java @@ -1,15 +1,24 @@ package com.muyu.etl.service.impl; import java.util.List; +import java.util.stream.Collectors; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.utils.DateUtils; +import com.muyu.etl.domain.DictInfo; +import com.muyu.etl.domain.resp.BasicDictResp; +import com.muyu.etl.service.DictInfoService; +import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.muyu.etl.mapper.AssetDataDictMapper; import com.muyu.etl.domain.AssetDataDict; import com.muyu.etl.service.AssetDataDictService; +import javax.servlet.ServletException; + /** * 资产数据字典Service业务层处理 * @@ -17,10 +26,12 @@ import com.muyu.etl.service.AssetDataDictService; * @date 2024-04-24 */ @Service -public class AssetDataDictServiceImpl extends ServiceImpl implements AssetDataDictService -{ +@Log4j2 +public class AssetDataDictServiceImpl extends ServiceImpl implements AssetDataDictService { @Autowired private AssetDataDictMapper assetDataDictMapper; + @Autowired + private DictInfoService dictInfoService; /** * 查询资产数据字典 @@ -29,8 +40,7 @@ public class AssetDataDictServiceImpl extends ServiceImpl selectAssetDataDictList(AssetDataDict assetDataDict) - { + public List selectAssetDataDictList(AssetDataDict assetDataDict) { return assetDataDictMapper.selectAssetDataDictList(assetDataDict); } @@ -53,10 +62,14 @@ public class AssetDataDictServiceImpl extends ServiceImpl(AssetDataDict.class) {{ + eq(AssetDataDict::getDictType,assetDataDict.getDictType()); + eq(AssetDataDict::getBasicId,assetDataDict.getBasicId()); + }}); + if (!b)throw new ServletException("该字典已存在"); + return b; } /** @@ -66,8 +79,7 @@ public class AssetDataDictServiceImpl extends ServiceImpl getDict(Long basicId) { + List list = this.list(new LambdaQueryWrapper() {{ + eq(AssetDataDict::getBasicId, basicId); + or(assetDataDictLambdaQueryWrapper -> assetDataDictLambdaQueryWrapper.eq(AssetDataDict::getId, 1L)); + }}); + List collect = list.stream().map(assetDataDict -> { + List dictInfoList = dictInfoService.list( + new LambdaQueryWrapper() + .eq(DictInfo::getDictId, assetDataDict.getId() + ) + ); + return BasicDictResp.builder() + .id(assetDataDict.getId()) + .dictType(assetDataDict.getDictType()) + .dictName(assetDataDict.getDictName()) + .dictInfoList(dictInfoList) + .basicId(assetDataDict.getBasicId()) + .build(); + }).collect(Collectors.toList()); + return collect; + } } diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/DictInfoServiceImpl.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/DictInfoServiceImpl.java index 697c4b7..41c9986 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/DictInfoServiceImpl.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/DictInfoServiceImpl.java @@ -2,20 +2,25 @@ package com.muyu.etl.service.impl; import java.util.List; +import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.utils.DateUtils; +import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.muyu.etl.mapper.DictInfoMapper; import com.muyu.etl.domain.DictInfo; import com.muyu.etl.service.DictInfoService; +import javax.servlet.ServletException; + /** * 字典详细内容Service业务层处理 * * @author Saisai * @date 2024-04-24 */ +@Log4j2 @Service public class DictInfoServiceImpl extends ServiceImpl implements DictInfoService { @@ -53,10 +58,14 @@ public class DictInfoServiceImpl extends ServiceImpl im * @return 结果 */ @Override - public int insertDictInfo(DictInfo dictInfo) - { + public boolean insertDictInfo(DictInfo dictInfo) throws ServletException { dictInfo.setCreateTime(DateUtils.getNowDate()); - return dictInfoMapper.insertDictInfo(dictInfo); + boolean b = this.saveOrUpdate(dictInfo, new LambdaUpdateChainWrapper(DictInfo.class) {{ + eq(DictInfo::getDictId, dictInfo.getDictId()); + eq(DictInfo::getId, dictInfo.getId()); + }}); + if (!b)throw new ServletException("该字典内容已存在"); + return b; } /** diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/StructureServiceImpl.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/StructureServiceImpl.java index 2d52f89..2d73ad3 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/StructureServiceImpl.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/StructureServiceImpl.java @@ -5,6 +5,7 @@ import com.muyu.common.core.utils.DateUtils; import com.muyu.etl.domain.Structure; import com.muyu.etl.mapper.StructureMapper; import com.muyu.etl.service.StructureService; +import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -17,6 +18,7 @@ import java.util.List; * @date 2024-04-22 */ @Service +@Log4j2 public class StructureServiceImpl extends ServiceImpl implements StructureService { @Autowired diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/TableInfoServiceImpl.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/TableInfoServiceImpl.java index a0c7f04..27e0318 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/TableInfoServiceImpl.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/TableInfoServiceImpl.java @@ -4,6 +4,7 @@ import java.util.List; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.utils.DateUtils; +import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.muyu.etl.mapper.TableInfoMapper; @@ -16,6 +17,7 @@ import com.muyu.etl.service.TableInfoService; * @author Saisai * @date 2024-04-22 */ +@Log4j2 @Service public class TableInfoServiceImpl extends ServiceImpl implements TableInfoService { diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/bootstrap.yml b/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/bootstrap.yml index 726ba8b..cadd393 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/bootstrap.yml +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/bootstrap.yml @@ -25,4 +25,4 @@ spring: - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} logging: level: - com.muyu.system.mapper: DEBUG + com.muyu.etl.mapper: DEBUG