|
@@ -42,29 +42,51 @@ public class DataClaServiceImpl implements IDataClaService {
|
|
|
|
|
|
@Override
|
|
|
public Boolean dataClassifyAdd(DataClaAcceptDTO dto) {
|
|
|
+ boolean saveFlag = false;
|
|
|
+ String path = null;
|
|
|
+
|
|
|
//一级分类保存
|
|
|
- String firId = dto.getFirId();
|
|
|
- dto.getFirCode();
|
|
|
- if(StringUtils.isBlank(firId)) {
|
|
|
+ DataCla fir = getByCodeAndPath(dto.getFirCode(), path);
|
|
|
+ String firId;
|
|
|
+ if(null == fir) {
|
|
|
+ saveFlag = true;
|
|
|
DataClaDTO dataClaDTO = new DataClaDTO(dto.getFirCode()
|
|
|
,dto.getFirName(), DataClaTypeEnum.FIR.getLevel(), DataClaTypeEnum.FIR.getCode());
|
|
|
dataClaDTO.setDataType(DataAuthTypeCodeEnum.AUTH_DATA_CLA_FIR.value);
|
|
|
DataClaDTO firDTO = save(dataClaDTO);
|
|
|
firId = firDTO.getId();
|
|
|
+ } else {
|
|
|
+ firId = fir.getId();
|
|
|
+ path = firId;
|
|
|
}
|
|
|
+
|
|
|
//二级分类保存
|
|
|
- String secId = dto.getSecId();
|
|
|
- if(StringUtils.isBlank(secId)) {
|
|
|
+ String secId;
|
|
|
+ DataCla sec = null;
|
|
|
+ if(!saveFlag) {
|
|
|
+ sec = getByCodeAndPath(dto.getSecCode(), path);
|
|
|
+ }
|
|
|
+ if(null == sec) {
|
|
|
+ saveFlag = true;
|
|
|
DataClaDTO dataClaDTO = new DataClaDTO(dto.getSecCode()
|
|
|
,dto.getSecName(), DataClaTypeEnum.SEC.getLevel(), DataClaTypeEnum.SEC.getCode());
|
|
|
dataClaDTO.setFirId(firId);
|
|
|
dataClaDTO.setDataType(DataAuthTypeCodeEnum.AUTH_DATA_CLA_SEC.value);
|
|
|
DataClaDTO secDTO = save(dataClaDTO);
|
|
|
secId = secDTO.getId();
|
|
|
+ } else {
|
|
|
+ secId = sec.getId();
|
|
|
+ path = path + CommonCons.PATH_SEP + secId;
|
|
|
}
|
|
|
+
|
|
|
//标签分类保存
|
|
|
- String labClaId = dto.getLabClaId();
|
|
|
- if(StringUtils.isBlank(labClaId)) {
|
|
|
+ String labClaId;
|
|
|
+ DataCla labCla = null;
|
|
|
+ if(!saveFlag) {
|
|
|
+ labCla = getByCodeAndPath(dto.getLabClaCode(), path);
|
|
|
+ }
|
|
|
+ if(null == labCla) {
|
|
|
+ saveFlag = true;
|
|
|
DataClaDTO dataClaDTO = new DataClaDTO(dto.getLabClaCode()
|
|
|
,dto.getLabClaName(), DataClaTypeEnum.LAB_CLA.getLevel(), DataClaTypeEnum.LAB_CLA.getCode());
|
|
|
dataClaDTO.setFirId(firId);
|
|
@@ -72,10 +94,17 @@ public class DataClaServiceImpl implements IDataClaService {
|
|
|
dataClaDTO.setDataType(dto.getLabClaCode());
|
|
|
DataClaDTO labClaDTO = save(dataClaDTO);
|
|
|
labClaId = labClaDTO.getId();
|
|
|
+ } else {
|
|
|
+ labClaId = labCla.getId();
|
|
|
+ path = path + CommonCons.PATH_SEP + labClaId;
|
|
|
}
|
|
|
+
|
|
|
+ DataCla lab = null;
|
|
|
//标签保存
|
|
|
- String labId = dto.getLabId();
|
|
|
- if(StringUtils.isBlank(labId)) {
|
|
|
+ if(!saveFlag) {
|
|
|
+ lab = getByCodeAndPath(dto.getLabCode(), path);
|
|
|
+ }
|
|
|
+ if(null == lab) {
|
|
|
DataClaDTO dataClaDTO = new DataClaDTO(dto.getLabCode()
|
|
|
,dto.getLabName(), DataClaTypeEnum.LAB.getLevel(), DataClaTypeEnum.LAB.getCode());
|
|
|
dataClaDTO.setRemark(dto.getRemark());
|
|
@@ -85,7 +114,7 @@ public class DataClaServiceImpl implements IDataClaService {
|
|
|
dataClaDTO.setLabClaId(labClaId);
|
|
|
save(dataClaDTO);
|
|
|
}
|
|
|
- return true;
|
|
|
+ return saveFlag;
|
|
|
}
|
|
|
|
|
|
@Override
|