字典树查询

单号规则计算优化
字典微服调用方法及调用案例
yun-zuoyi
yunhao.wang 6 years ago
parent 45f7d05eab
commit e3454af8f6

@ -25,9 +25,11 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @Description :
@ -267,4 +269,30 @@ public class SysDictionaryController extends CoreBaseController{
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@GetMapping("/tree")
@ApiOperation(value = "查询字典树",notes = "查询字典树")
public ResultBean findSysDictionaryTree(){
try {
// 根据软件类型分组
Map group = sysDictionaryService.findSysDictionaryByTop().stream().collect(Collectors.groupingBy(SysDictionary::getSoftType));
List<Map<String,Object>> dictTree = new ArrayList<>();
Map child;
for (CommonEnumUtil.SOFT_TYPE softType :CommonEnumUtil.SOFT_TYPE.values()) {
if(group.containsKey(softType.getValue())){
child = new HashMap();
child.put("id",softType.getCode());
child.put("name",softType.getValue());
child.put("childList",group.get(softType.getValue()));
dictTree.add(child);
}
}
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(dictTree);
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
}

@ -3,7 +3,9 @@ package cn.estsh.i3plus.core.apiservice.util;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysOrderNoRule;
import com.alibaba.fastjson.JSON;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import org.apache.commons.lang3.StringUtils;
import java.text.MessageFormat;
import java.text.SimpleDateFormat;
@ -18,8 +20,16 @@ import java.text.SimpleDateFormat;
public class OrderNoMakeUtil {
public static SysOrderNoRule next(SysOrderNoRule orderNoRule) {
StringBuilder orderNo = new StringBuilder(orderNoRule.getOrderNoRule());
// 数据校验
if(orderNoRule == null || StringUtils.isBlank(orderNoRule.getOrderNoRule())){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("单号生成规则不存在")
.build();
}
StringBuilder orderNo = new StringBuilder(orderNoRule.getOrderNoRule());
String[] dateTime = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss").format(System.currentTimeMillis()).split("-");
// 单号表达式
replace(orderNo, PlatformConstWords.YEAR, dateTime[0]);

Loading…
Cancel
Save