Commit 2cac5fa9 authored by wangxl's avatar wangxl

Merge remote-tracking branch 'origin/master'

parents c0048f8a 31852458
......@@ -138,4 +138,25 @@ public class SystemParameterController extends BaseController<SystemParameterSer
public ResponseDataModel<String> refreshSystemParameter() {
return ResponseDataModel.ok(systemParameterService.refreshSystemParameter());
}
@ApiOperation(value = "根据参数获取参数列表", httpMethod = "GET", notes = "根据参数获取参数列表")
@GetMapping
@RequestMapping("/getParameterListBySystemCode")
public ResponseDataModel<List<SelectListItem>> getParameterListBySystemCode(String SystemCodeOrName) {
List<SelectListItem> list = new ArrayList<>();
List<SystemParameter> paraList = systemParameterService.getParameterListBySystemCode(SystemCodeOrName);
paraList.forEach((e) -> {
SelectListItem selectListItem = new SelectListItem(e.getName(), e.getId(),"",true, true, null);
list.add(selectListItem);
});
return ResponseDataModel.ok(list);
}
@ApiOperation(value = "获取学科代码树列表", httpMethod = "GET", notes = "获取学科代码树列表")
@GetMapping
@RequestMapping("/getKnowledgeParameterTreeList")
public ResponseDataModel<List<SelectListItem>> getKnowledgeParameterTreeList() {
List<SelectListItem> list = systemParameterService.getKnowledgeInfoList();
return ResponseDataModel.ok(list);
}
}
......@@ -89,4 +89,17 @@ public interface SystemParameterService extends BaseService<SystemParameterQuery
String refreshSystemParameter();
String judgmentTitleLevel(String titleId);
/**
* 根据systemCodeOrName获取学科列表
* @param SystemCodeOrName
* @return
*/
List<SystemParameter> getParameterListBySystemCode(String SystemCodeOrName);
/**
* 获取学科代码树列表
* @return
*/
List<SelectListItem> getKnowledgeInfoList();
}
......@@ -325,4 +325,54 @@ public class SystemParameterServiceImpl extends BaseServiceImpl<SystemParameterD
}
}
}
public List<SystemParameter> getParameterListBySystemCode(String SystemCodeOrName) {
List<SystemParameter> list = getListByType(68);
List<SystemParameter> findList = list.stream().filter(e -> e.getSystemCode().contains(SystemCodeOrName) || e.getName().contains(SystemCodeOrName)).collect(Collectors.toList());
return findList;
}
public List<SelectListItem> getKnowledgeInfoList() {
List<SelectListItem> list = null;
Object obj = redisUtils.get(RedisKey.KnowledgeCodeList);
if (null != obj)
list = (List<SelectListItem>) redisUtils.get(RedisKey.KnowledgeCodeList);
if (null == list || list.size() == 0) {
list = getKnowledgeParameterTreeList();
redisUtils.set(RedisKey.KnowledgeCodeList, list, 7, TimeUnit.DAYS);
}
return list;
}
private List<SelectListItem> getKnowledgeParameterTreeList() {
List<SystemParameter> parentList = this.getListByType(68);
List<SelectListItem> list = new ArrayList<>();
List<SystemParameter> FirstList = parentList.stream().filter(e -> e.getSystemCode().equals("C") || e.getSystemCode().equals("G") || e.getSystemCode().equals("H")).collect(Collectors.toList());
FirstList.forEach(e -> {
SelectListItem treeListItem = new SelectListItem(e.getName(), e.getId(), e.getSystemCode(), false, false, new ArrayList<>());
list.add(treeListItem);
});
list.forEach(e -> {
List<SelectListItem> SecondList = AddChildList(parentList, e, 3);
e.setChildren(SecondList);
SecondList.forEach(f -> {
List<SelectListItem> ThirdList = AddChildList(parentList, f, 5);
f.setChildren(ThirdList);
});
});
return list;
}
private List<SelectListItem> AddChildList(List<SystemParameter> parentList, SelectListItem s, int CodeLenght) {
List<SelectListItem> SelectList = new ArrayList<>();
List<SystemParameter> itemList = parentList.stream().filter(f -> f.getSystemCode().contains(s.getDescription()) && f.getSystemCode().length() == CodeLenght).collect(Collectors.toList());
itemList.forEach(e -> {
SelectListItem treeListItem = new SelectListItem(e.getName(), e.getId(), e.getSystemCode(), false, false, new ArrayList<>());
SelectList.add(treeListItem);
});
return SelectList;
}
}
......@@ -18,4 +18,6 @@ public class RedisKey {
public final static String RoleList = "role-list";
//项目KPI绩效指标
public final static String ProjectKPIList = "project-kpi-list";
//学科代码列表
public final static String KnowledgeCodeList = "knowledge-code-list";
}
package com.yiboshi.science.entity;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.io.Serializable;
import java.util.List;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public class SelectCodeListItem implements Serializable {
/** 获取或设置选定项的文本 */
private String title ;
/** 获取或设置选定项的值 */
private String key;
private String pkey;
private String ppkey;
/** description */
private String description ;
/** 获取或设置选定项的文本 */
private boolean selected ;
/** 获取或设置一个值,该值指示是否禁用 */
private boolean disabled ;
/** 子选项 */
private List<SelectListItem> children ;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment