fix:数据库映射,数据字典bug修改

master
Saisai Liu 2024-04-26 10:25:17 +08:00
parent f3b13ba059
commit c6756775ce
12 changed files with 197 additions and 45 deletions

View File

@ -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;
}

View File

@ -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

View File

@ -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<DictInfo> dictInfoList;
}

View File

@ -12,6 +12,7 @@ import lombok.experimental.SuperBuilder;
import java.util.List;
/**
*
* @ClassName TableTreeResp
* @Description
* @Author SaiSai.Liu

View File

@ -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<TableDataInfo<BasicConfigInfo>> list(BasicConfigInfo basicConfigInfo)
{
public Result<TableDataInfo<BasicConfigInfo>> list(BasicConfigInfo basicConfigInfo) {
startPage();
List<BasicConfigInfo> 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<BasicConfigInfo> list = basicConfigInfoService.selectBasicConfigInfoList(basicConfigInfo);
ExcelUtil<BasicConfigInfo> util = new ExcelUtil<BasicConfigInfo>(BasicConfigInfo.class);
ExcelUtil<BasicConfigInfo> 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));
}
@ -115,10 +116,63 @@ public class BasicConfigInfoController extends BaseController
return getDataTable(basicConfigInfoService.getDataByEtl());
}
/**
*
*
* @return
*/
@RequiresPermissions("etl:table:list")
@Log(title = "获取已成功链接的树级结构")
@GetMapping("/getTableTree")
public Result<List<TableTreeResp>> getTableTree() {
return Result.success(basicConfigInfoService.getTableTree());
}
/**
*
*
* @return
*/
@RequiresPermissions("etl:table:dictList")
@Log(title = "描述")
@GetMapping("/getDict/{basicId}")
public Result<List<BasicDictResp>> 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);
// }
}

View File

@ -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<AssetDataDict>
* @param assetDataDict
* @return
*/
public int insertAssetDataDict(AssetDataDict assetDataDict);
public boolean insertAssetDataDict(AssetDataDict assetDataDict) throws ServletException;
/**
*
@ -60,4 +63,6 @@ public interface AssetDataDictService extends IService<AssetDataDict>
* @return
*/
public int deleteAssetDataDictById(Long id);
List<BasicDictResp> getDict(Long basicId);
}

View File

@ -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<DictInfo>
* @param dictInfo
* @return
*/
public int insertDictInfo(DictInfo dictInfo);
public boolean insertDictInfo(DictInfo dictInfo) throws ServletException;
/**
*

View File

@ -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<AssetDataDictMapper,AssetDataDict> implements AssetDataDictService
{
@Log4j2
public class AssetDataDictServiceImpl extends ServiceImpl<AssetDataDictMapper, AssetDataDict> implements AssetDataDictService {
@Autowired
private AssetDataDictMapper assetDataDictMapper;
@Autowired
private DictInfoService dictInfoService;
/**
*
@ -29,8 +40,7 @@ public class AssetDataDictServiceImpl extends ServiceImpl<AssetDataDictMapper,As
* @return
*/
@Override
public AssetDataDict selectAssetDataDictById(Long id)
{
public AssetDataDict selectAssetDataDictById(Long id) {
return assetDataDictMapper.selectAssetDataDictById(id);
}
@ -41,8 +51,7 @@ public class AssetDataDictServiceImpl extends ServiceImpl<AssetDataDictMapper,As
* @return
*/
@Override
public List<AssetDataDict> selectAssetDataDictList(AssetDataDict assetDataDict)
{
public List<AssetDataDict> selectAssetDataDictList(AssetDataDict assetDataDict) {
return assetDataDictMapper.selectAssetDataDictList(assetDataDict);
}
@ -53,10 +62,14 @@ public class AssetDataDictServiceImpl extends ServiceImpl<AssetDataDictMapper,As
* @return
*/
@Override
public int insertAssetDataDict(AssetDataDict assetDataDict)
{
public boolean insertAssetDataDict(AssetDataDict assetDataDict) throws ServletException {
assetDataDict.setCreateTime(DateUtils.getNowDate());
return assetDataDictMapper.insertAssetDataDict(assetDataDict);
boolean b = this.saveOrUpdate(assetDataDict, new LambdaUpdateChainWrapper<AssetDataDict>(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<AssetDataDictMapper,As
* @return
*/
@Override
public int updateAssetDataDict(AssetDataDict assetDataDict)
{
public int updateAssetDataDict(AssetDataDict assetDataDict) {
assetDataDict.setUpdateTime(DateUtils.getNowDate());
return assetDataDictMapper.updateAssetDataDict(assetDataDict);
}
@ -79,8 +91,7 @@ public class AssetDataDictServiceImpl extends ServiceImpl<AssetDataDictMapper,As
* @return
*/
@Override
public int deleteAssetDataDictByIds(Long[] ids)
{
public int deleteAssetDataDictByIds(Long[] ids) {
return assetDataDictMapper.deleteAssetDataDictByIds(ids);
}
@ -91,8 +102,30 @@ public class AssetDataDictServiceImpl extends ServiceImpl<AssetDataDictMapper,As
* @return
*/
@Override
public int deleteAssetDataDictById(Long id)
{
public int deleteAssetDataDictById(Long id) {
return assetDataDictMapper.deleteAssetDataDictById(id);
}
@Override
public List<BasicDictResp> getDict(Long basicId) {
List<AssetDataDict> list = this.list(new LambdaQueryWrapper<AssetDataDict>() {{
eq(AssetDataDict::getBasicId, basicId);
or(assetDataDictLambdaQueryWrapper -> assetDataDictLambdaQueryWrapper.eq(AssetDataDict::getId, 1L));
}});
List<BasicDictResp> collect = list.stream().map(assetDataDict -> {
List<DictInfo> dictInfoList = dictInfoService.list(
new LambdaQueryWrapper<DictInfo>()
.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;
}
}

View File

@ -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<DictInfoMapper,DictInfo> implements DictInfoService
{
@ -53,10 +58,14 @@ public class DictInfoServiceImpl extends ServiceImpl<DictInfoMapper,DictInfo> 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>(DictInfo.class) {{
eq(DictInfo::getDictId, dictInfo.getDictId());
eq(DictInfo::getId, dictInfo.getId());
}});
if (!b)throw new ServletException("该字典内容已存在");
return b;
}
/**

View File

@ -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<StructureMapper, Structure> implements StructureService
{
@Autowired

View File

@ -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<TableInfoMapper, TableInfo> implements TableInfoService
{

View File

@ -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