forked from github/dataease
refactor:临时提交
This commit is contained in:
parent
3a2bb24ca8
commit
49ce82cac7
@ -1,5 +1,6 @@
|
||||
package io.dataease.base.mapper.ext;
|
||||
|
||||
import io.dataease.base.domain.DatasetTableField;
|
||||
import io.dataease.dto.PanelViewLinkageDTO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
@ -8,5 +9,6 @@ import java.util.List;
|
||||
public interface ExtPanelViewLinkageMapper {
|
||||
|
||||
List<PanelViewLinkageDTO> getViewLinkageGather(@Param("panelId") String panelId,@Param("sourceViewId") String sourceViewId,@Param("targetViewIds") List<String> targetViewIds);
|
||||
List<DatasetTableField> queryTableField(@Param("tableId") String tableId);
|
||||
|
||||
}
|
||||
|
@ -15,35 +15,29 @@
|
||||
<result column="table_id" jdbcType="VARCHAR" property="tableId"/>
|
||||
<result column="targetViewName" jdbcType="VARCHAR" property="targetViewName"/>
|
||||
<result column="linkageActive" property="linkageActive"/>
|
||||
<!-- <collection property="targetViewFields" ofType="io.dataease.base.domain.DatasetTableField" column="table_id"-->
|
||||
<!-- select="queryTableField">-->
|
||||
<!-- </collection>-->
|
||||
<collection property="linkageFields" ofType="io.dataease.dto.PanelViewLinkageFieldDTO">
|
||||
<result column="source_filed" jdbcType="VARCHAR" property="sourceFiled"/>
|
||||
<result column="target_filed" jdbcType="VARCHAR" property="targetFiled"/>
|
||||
</collection>
|
||||
<collection property="targetViewFields" ofType="io.dataease.base.domain.DatasetTableField" column="table_id"
|
||||
select="queryTableField">
|
||||
</collection>
|
||||
</resultMap>
|
||||
|
||||
<select id="getViewLinkageGather" resultMap="LinkageGatherMap">
|
||||
SELECT
|
||||
chart_view.`name` as 'targetViewName',
|
||||
chart_view.id as 'target_view_id',
|
||||
chart_view.table_id,
|
||||
(case when panel_view_linkage.target_view_id is null then 0 else 1 end) as 'linkageActive',
|
||||
panel_view_linkage_field.source_filed,
|
||||
panel_view_linkage_field.target_filed,
|
||||
dataset_table_field.id as 'field_id',
|
||||
dataset_table_field.origin_name,
|
||||
dataset_table_field.`name` as 'field_name',
|
||||
dataset_table_field.`type`,
|
||||
dataset_table_field.de_type,
|
||||
dataset_table_field.de_extract_type
|
||||
panel_view_linkage_field.target_filed
|
||||
FROM
|
||||
chart_view
|
||||
LEFT JOIN panel_view_linkage ON chart_view.id = panel_view_linkage.target_view_id
|
||||
LEFT JOIN panel_view_linkage_field ON panel_view_linkage.id = panel_view_linkage_field.linkage_id
|
||||
AND panel_view_linkage.panel_id = #{panelId}
|
||||
AND panel_view_linkage.source_view_id = #{sourceViewId}
|
||||
LEFT JOIN dataset_table_field on chart_view.table_id = dataset_table_field.table_id
|
||||
where chart_view.id in
|
||||
<foreach collection="targetViewIds" item="targetViewId" index="index" open="(" close=")" separator=",">
|
||||
#{targetViewId}
|
||||
@ -57,6 +51,7 @@
|
||||
dataset_table_field.origin_name,
|
||||
dataset_table_field.name,
|
||||
dataset_table_field.de_type
|
||||
from dataset_table_field where table_id =#{table_id}
|
||||
from dataset_table_field where table_id = #{tableId}
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
@ -28,8 +28,11 @@ public class PanelViewLinkageService {
|
||||
|
||||
public Map<String, PanelViewLinkageDTO> getViewLinkageGather(PanelLinkageRequest request) {
|
||||
if(CollectionUtils.isNotEmpty(request.getTargetViewIds())){
|
||||
Map<String, PanelViewLinkageDTO> result = Optional.ofNullable(extPanelViewLinkageMapper.getViewLinkageGather(request.getPanelId(),request.getSourceViewId(),request.getTargetViewIds()))
|
||||
.orElse(new ArrayList<>()).stream()
|
||||
List<PanelViewLinkageDTO> linkageDTOList = extPanelViewLinkageMapper.getViewLinkageGather(request.getPanelId(),request.getSourceViewId(),request.getTargetViewIds());
|
||||
linkageDTOList.stream().forEach(linkage ->{
|
||||
linkage.setTargetViewFields(extPanelViewLinkageMapper.queryTableField(linkage.getTableId()));
|
||||
});
|
||||
Map<String, PanelViewLinkageDTO> result = linkageDTOList.stream()
|
||||
.collect(Collectors.toMap(PanelViewLinkageDTO::getTargetViewId,PanelViewLinkageDTO->PanelViewLinkageDTO));
|
||||
return result;
|
||||
}
|
||||
|
@ -8,11 +8,13 @@
|
||||
<el-col :span="10">
|
||||
<div class="ellip">联动视图</div>
|
||||
</el-col>
|
||||
<el-col :span="10" class="ellip">
|
||||
<el-col :span="10">
|
||||
<div class="ellip">{{ linkageInfo.targetViewName }}</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
linkageInfo{{ linkageInfo }}
|
||||
|
||||
<el-row class="bottom">
|
||||
<el-button size="mini" type="success" icon="el-icon-plus" round>追加联动依赖字段</el-button>
|
||||
</el-row>
|
||||
@ -96,6 +98,7 @@ export default {
|
||||
.ellip{
|
||||
/*width: 100%;*/
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
overflow: hidden;/*超出部分隐藏*/
|
||||
white-space: nowrap;/*不换行*/
|
||||
text-overflow:ellipsis;/*超出部分文字以...显示*/
|
||||
@ -104,6 +107,7 @@ export default {
|
||||
font-size: 12px;
|
||||
line-height: 24px;
|
||||
height: 24px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
Loading…
Reference in New Issue
Block a user