文档库--分页数据字典处理
This commit is contained in:
+4
@@ -1,6 +1,7 @@
|
||||
package com.jero.modules.system.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
@@ -63,6 +64,9 @@ public class SysDictItem implements Serializable {
|
||||
private Integer sortOrder;
|
||||
|
||||
|
||||
@TableField(exist = false)
|
||||
private String dictCode;
|
||||
|
||||
/**
|
||||
* 状态(1启用 0不启用)
|
||||
*/
|
||||
|
||||
+3
@@ -17,4 +17,7 @@ import java.util.List;
|
||||
public interface SysDictItemMapper extends BaseMapper<SysDictItem> {
|
||||
@Select("SELECT * FROM sys_dict_item WHERE DICT_ID = #{mainId} order by sort_order asc, item_value asc")
|
||||
public List<SysDictItem> selectItemsByMainId(String mainId);
|
||||
|
||||
@Select("SELECT sys_dict.dict_code,sys_dict_item.* from sys_dict_item LEFT JOIN sys_dict ON sys_dict_item.dict_id = sys_dict.id where status = 1")
|
||||
List<SysDictItem> selectItemsAll();
|
||||
}
|
||||
|
||||
+6
@@ -15,4 +15,10 @@ import java.util.List;
|
||||
*/
|
||||
public interface ISysDictItemService extends IService<SysDictItem> {
|
||||
public List<SysDictItem> selectItemsByMainId(String mainId);
|
||||
|
||||
/**
|
||||
* 查询所有数据字典信息
|
||||
* @return
|
||||
*/
|
||||
public List<SysDictItem> selectItemsAll();
|
||||
}
|
||||
|
||||
+9
@@ -27,4 +27,13 @@ public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDi
|
||||
public List<SysDictItem> selectItemsByMainId(String mainId) {
|
||||
return sysDictItemMapper.selectItemsByMainId(mainId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询所有数据字典信息
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<SysDictItem> selectItemsAll() {
|
||||
return sysDictItemMapper.selectItemsAll();
|
||||
}
|
||||
}
|
||||
|
||||
+50
-1
@@ -15,6 +15,8 @@ import com.jero.modules.document.mapper.BussDocumentLibraryEOMapper;
|
||||
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
||||
import com.jero.modules.oss.entity.OSSFile;
|
||||
import com.jero.modules.oss.service.IOSSFileService;
|
||||
import com.jero.modules.system.entity.SysDictItem;
|
||||
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
||||
import com.jero.modules.tag.entity.OnlCgformArea;
|
||||
import com.jero.modules.tag.service.impl.OnlCgformAreaServiceImpl;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
@@ -49,6 +51,8 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
private BussDocumentLibraryEOMapper bussDocumentLibraryEOMapper;
|
||||
@Autowired
|
||||
private IOSSFileService iOSSFileService;
|
||||
@Autowired
|
||||
private SysDictItemServiceImpl sysDictItemServiceImpl;
|
||||
|
||||
|
||||
/**
|
||||
@@ -474,10 +478,55 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
// int pageSize = Integer.parseInt(parameter.get("pageSize").toString());
|
||||
IPage page = new Page(pageNo, pageSize);
|
||||
|
||||
|
||||
IPage infoPage = bussDocumentLibraryEOMapper.getInfoPage(page, " " + StringUtils.join(fieldListNew, ","), conditionSb.toString());
|
||||
|
||||
//数据字典
|
||||
List<SysDictItem> sysDictItems = sysDictItemServiceImpl.selectItemsAll();
|
||||
|
||||
//下拉选处理数据字典
|
||||
List records = infoPage.getRecords();
|
||||
for (Object record : records) {
|
||||
Map<String,Object> record1 = (Map) record;
|
||||
for (Map.Entry<String, Object> entry : record1.entrySet()) {
|
||||
List<OnlCgformField> collect = fieldList.stream()
|
||||
.filter(e -> entry.getKey().equals(e.getDictField()))
|
||||
.collect(Collectors.toList());
|
||||
//下拉选处理数据字典
|
||||
dictItem(sysDictItems, entry, collect);
|
||||
}
|
||||
}
|
||||
return infoPage;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 下拉选处理数据字典
|
||||
* @param sysDictItems
|
||||
* @param entry
|
||||
* @param collect
|
||||
*/
|
||||
private void dictItem(List<SysDictItem> sysDictItems, Map.Entry<String, Object> entry, List<OnlCgformField> collect) {
|
||||
//通过dictField判断字段是否为下拉选(不为空则为下拉选)
|
||||
if(collect.size() != 0 && StringUtils.isNotBlank(collect.get(0).getDictField())){
|
||||
String value = (String) entry.getValue();
|
||||
//数据字典中文
|
||||
List<String> dictItemsCh = new ArrayList<>();
|
||||
for (String itemValue : value.split(",")) {
|
||||
//字段的数据字典
|
||||
List<SysDictItem> dictItemList = sysDictItems.stream()
|
||||
.filter(e -> e.getDictCode().equals(entry.getKey()))
|
||||
.collect(Collectors.toList());
|
||||
if(dictItemList.size() != 0){
|
||||
List<SysDictItem> dictItems = dictItemList.stream()
|
||||
.filter(e -> itemValue.equals(e.getItemValue()))
|
||||
.collect(Collectors.toList());
|
||||
if(dictItems.size() != 0){
|
||||
List<String> itemText = dictItems.stream().map(SysDictItem::getItemText).collect(Collectors.toList());
|
||||
dictItemsCh.addAll(itemText);
|
||||
}
|
||||
}
|
||||
}
|
||||
entry.setValue(StringUtils.join(dictItemsCh, ","));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user