|
@@ -21,6 +21,7 @@ import com.persagy.dmp.rwd.edit.repository.FuncidDefChangeRecordRepository;
|
|
import com.persagy.dmp.rwd.edit.repository.FuncidDefRepository;
|
|
import com.persagy.dmp.rwd.edit.repository.FuncidDefRepository;
|
|
import com.persagy.dmp.rwd.enums.FuncidCategory;
|
|
import com.persagy.dmp.rwd.enums.FuncidCategory;
|
|
import com.persagy.dmp.rwd.enums.FuncidDataType;
|
|
import com.persagy.dmp.rwd.enums.FuncidDataType;
|
|
|
|
+import com.persagy.dmp.rwd.model.ClassDefModel;
|
|
import com.persagy.dmp.rwd.model.FuncidDefModel;
|
|
import com.persagy.dmp.rwd.model.FuncidDefModel;
|
|
import com.querydsl.core.types.dsl.BooleanExpression;
|
|
import com.querydsl.core.types.dsl.BooleanExpression;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
@@ -45,6 +46,9 @@ public class FuncidDefChangeRecordService {
|
|
FuncidDefService funcidDefService;
|
|
FuncidDefService funcidDefService;
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
|
|
+ ClassDefService classDefService;
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
RwdeditRefTypeInfosService rwdeditRefTypeInfosService;
|
|
RwdeditRefTypeInfosService rwdeditRefTypeInfosService;
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
@@ -89,7 +93,11 @@ public class FuncidDefChangeRecordService {
|
|
response.setFail("classCode is required");
|
|
response.setFail("classCode is required");
|
|
return response;
|
|
return response;
|
|
}
|
|
}
|
|
- FuncidDefModel funcidDef = queryFuncidDef(code, classCode);
|
|
|
|
|
|
+ FuncidDefModel funcidDef = null;
|
|
|
|
+ List<FuncidDefModel> funcidDefModelList = queryFuncidDef(code, classCode, null);
|
|
|
|
+ if (funcidDefModelList != null) {
|
|
|
|
+ funcidDef = funcidDefModelList.get(0);
|
|
|
|
+ }
|
|
if (EnumOperationType.create.equals(param.getOperationType())) {
|
|
if (EnumOperationType.create.equals(param.getOperationType())) {
|
|
if (funcidDef != null) {
|
|
if (funcidDef != null) {
|
|
response.setFail("code is exists");
|
|
response.setFail("code is exists");
|
|
@@ -207,12 +215,46 @@ public class FuncidDefChangeRecordService {
|
|
return response;
|
|
return response;
|
|
}
|
|
}
|
|
|
|
|
|
- public List<String> getSqlList(String version) {
|
|
|
|
|
|
+ public List<String> getSqlList(String version, Boolean isTotal) {
|
|
List<String> sqlList = new ArrayList<>();
|
|
List<String> sqlList = new ArrayList<>();
|
|
JacksonCriteria criteria = JacksonCriteria.newInstance();
|
|
JacksonCriteria criteria = JacksonCriteria.newInstance();
|
|
criteria.add("version", version);
|
|
criteria.add("version", version);
|
|
PagedResponse<FuncidDefChangeRecord> response = query(criteria);
|
|
PagedResponse<FuncidDefChangeRecord> response = query(criteria);
|
|
List<FuncidDefChangeRecord> data = response.getData();
|
|
List<FuncidDefChangeRecord> data = response.getData();
|
|
|
|
+ if (isTotal) {
|
|
|
|
+ List<FuncidDefModel> funcidDefModelList = queryFuncidDef(null, null, version);
|
|
|
|
+ if (funcidDefModelList != null) {
|
|
|
|
+ for (FuncidDefModel funcidDefModel : funcidDefModelList) {
|
|
|
|
+ FuncidDefChangeRecord changeRecord = new FuncidDefChangeRecord();
|
|
|
|
+ changeRecord.setCode(funcidDefModel.getCode());
|
|
|
|
+ changeRecord.setGroupCode(funcidDefModel.getGroupCode());
|
|
|
|
+ changeRecord.setProjectId(funcidDefModel.getProjectId());
|
|
|
|
+ changeRecord.setOrigCode(funcidDefModel.getOrigCode());
|
|
|
|
+ changeRecord.setName(funcidDefModel.getName());
|
|
|
|
+ changeRecord.setAliasCode(funcidDefModel.getAliasCode());
|
|
|
|
+ changeRecord.setAliasName(funcidDefModel.getAliasName());
|
|
|
|
+ changeRecord.setClassCode(funcidDefModel.getClassCode());
|
|
|
|
+ changeRecord.setCategory(funcidDefModel.getCategory());
|
|
|
|
+ changeRecord.setType(funcidDefModel.getType());
|
|
|
|
+ changeRecord.setFirstTag(funcidDefModel.getFirstTag());
|
|
|
|
+ changeRecord.setSecondTag(funcidDefModel.getSecondTag());
|
|
|
|
+ changeRecord.setPriority(funcidDefModel.getPriority());
|
|
|
|
+ changeRecord.setInputMode(funcidDefModel.getInputMode());
|
|
|
|
+ changeRecord.setUnit(funcidDefModel.getUnit());
|
|
|
|
+ changeRecord.setDataType(funcidDefModel.getDataType());
|
|
|
|
+ changeRecord.setOrigDataType(funcidDefModel.getOrigDataType());
|
|
|
|
+ changeRecord.setIsMultiple(funcidDefModel.getIsMultiple());
|
|
|
|
+ changeRecord.setIsRegion(funcidDefModel.getIsRegion());
|
|
|
|
+ changeRecord.setFormater(funcidDefModel.getFormater());
|
|
|
|
+ changeRecord.setDataSource(funcidDefModel.getDataSource());
|
|
|
|
+ changeRecord.setNote(funcidDefModel.getNote());
|
|
|
|
+ changeRecord.setSubFlag(funcidDefModel.getSubFlag());
|
|
|
|
+ changeRecord.setWeakPoint(funcidDefModel.getWeakPoint());
|
|
|
|
+ changeRecord.setOperationType(EnumOperationType.create);
|
|
|
|
+ data.add(changeRecord);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
for (FuncidDefChangeRecord changeRecord : data) {
|
|
for (FuncidDefChangeRecord changeRecord : data) {
|
|
StringBuilder sql = new StringBuilder();
|
|
StringBuilder sql = new StringBuilder();
|
|
switch (changeRecord.getOperationType()) {
|
|
switch (changeRecord.getOperationType()) {
|
|
@@ -315,9 +357,9 @@ public class FuncidDefChangeRecordService {
|
|
sql.append("'" + changeRecord.getSubFlag() + "')");
|
|
sql.append("'" + changeRecord.getSubFlag() + "')");
|
|
}
|
|
}
|
|
if (changeRecord.getWeakPoint() == null) {
|
|
if (changeRecord.getWeakPoint() == null) {
|
|
- sql.append("null);");
|
|
|
|
|
|
+ sql.append("null);\n");
|
|
} else {
|
|
} else {
|
|
- sql.append("'" + changeRecord.getWeakPoint() + "');");
|
|
|
|
|
|
+ sql.append("'" + changeRecord.getWeakPoint() + "');\n");
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
@@ -328,7 +370,7 @@ public class FuncidDefChangeRecordService {
|
|
sql.append(" WHERE `code` = '" + changeRecord.getCode() + "'");
|
|
sql.append(" WHERE `code` = '" + changeRecord.getCode() + "'");
|
|
sql.append(" WHERE `class_code` = '" + changeRecord.getClassCode() + "'");
|
|
sql.append(" WHERE `class_code` = '" + changeRecord.getClassCode() + "'");
|
|
sql.append(" and `group_code` = '" + changeRecord.getGroupCode() + "'");
|
|
sql.append(" and `group_code` = '" + changeRecord.getGroupCode() + "'");
|
|
- sql.append(" and `project_id` = '" + changeRecord.getProjectId() + "';");
|
|
|
|
|
|
+ sql.append(" and `project_id` = '" + changeRecord.getProjectId() + "';\n");
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
case delete: {
|
|
case delete: {
|
|
@@ -336,7 +378,7 @@ public class FuncidDefChangeRecordService {
|
|
sql.append(" WHERE `code` = '" + changeRecord.getCode() + "'");
|
|
sql.append(" WHERE `code` = '" + changeRecord.getCode() + "'");
|
|
sql.append(" WHERE `class_code` = '" + changeRecord.getClassCode() + "'");
|
|
sql.append(" WHERE `class_code` = '" + changeRecord.getClassCode() + "'");
|
|
sql.append(" and `group_code` = '" + changeRecord.getGroupCode() + "'");
|
|
sql.append(" and `group_code` = '" + changeRecord.getGroupCode() + "'");
|
|
- sql.append(" and `project_id` = '" + changeRecord.getProjectId() + "';");
|
|
|
|
|
|
+ sql.append(" and `project_id` = '" + changeRecord.getProjectId() + "';\n");
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
default: {
|
|
default: {
|
|
@@ -431,8 +473,9 @@ public class FuncidDefChangeRecordService {
|
|
funcidDef.setVersion(version);//版本
|
|
funcidDef.setVersion(version);//版本
|
|
funcidDef.setLastUpdateTime(new Date());//发布时间
|
|
funcidDef.setLastUpdateTime(new Date());//发布时间
|
|
funcidDefList.add(funcidDef);
|
|
funcidDefList.add(funcidDef);
|
|
- FuncidDefModel funcidDefModel = queryFuncidDef(item.getCode(), item.getClassCode());
|
|
|
|
- if (funcidDefModel != null) {
|
|
|
|
|
|
+ List<FuncidDefModel> funcidDefModelList = queryFuncidDef(item.getCode(), item.getClassCode(), null);
|
|
|
|
+ if (funcidDefModelList != null) {
|
|
|
|
+ FuncidDefModel funcidDefModel = funcidDefModelList.get(0);
|
|
funcidDefModel.setIsUsed(0);
|
|
funcidDefModel.setIsUsed(0);
|
|
funcidDefModel.setLastUpdateTime(new Date());
|
|
funcidDefModel.setLastUpdateTime(new Date());
|
|
funcidDefList.add(FuncidDef.fromModel(funcidDefModel));
|
|
funcidDefList.add(FuncidDef.fromModel(funcidDefModel));
|
|
@@ -441,15 +484,36 @@ public class FuncidDefChangeRecordService {
|
|
funcidDefRepository.saveAll(funcidDefList);
|
|
funcidDefRepository.saveAll(funcidDefList);
|
|
}
|
|
}
|
|
|
|
|
|
- private FuncidDefModel queryFuncidDef(String code, String classCode) {
|
|
|
|
|
|
+ private List<FuncidDefModel> queryFuncidDef(String code, String classCode, String neVersion) {
|
|
|
|
+ List<FuncidDefModel> data = null;
|
|
JacksonCriteria criteria = JacksonCriteria.newInstance();
|
|
JacksonCriteria criteria = JacksonCriteria.newInstance();
|
|
criteria.add("type", "common");
|
|
criteria.add("type", "common");
|
|
- criteria.add("code", code);
|
|
|
|
- criteria.add("classCode", classCode);
|
|
|
|
- ListResponse<FuncidDefModel> query = funcidDefService.queryFuncid(criteria);
|
|
|
|
- List<FuncidDefModel> data = query.getData();
|
|
|
|
|
|
+ if (code != null) {
|
|
|
|
+ criteria.add("code", code);
|
|
|
|
+ }
|
|
|
|
+ if (classCode != null) {
|
|
|
|
+ criteria.add("classCode", classCode);
|
|
|
|
+ }
|
|
|
|
+ if (neVersion != null) {
|
|
|
|
+ JacksonCriteria queryClass = JacksonCriteria.newInstance();
|
|
|
|
+ queryClass.add("type", "common");
|
|
|
|
+ ListResponse<ClassDefModel> query = classDefService.queryClass(queryClass);
|
|
|
|
+ List<ClassDefModel> classDefModelList = query.getData();
|
|
|
|
+ data = new ArrayList<>();
|
|
|
|
+ for (ClassDefModel classDefModel : classDefModelList) {
|
|
|
|
+ criteria = JacksonCriteria.newInstance();
|
|
|
|
+ criteria.add("type", "common");
|
|
|
|
+ criteria.add("classCode", classDefModel.getCode());
|
|
|
|
+ criteria.add("version").ne(neVersion);
|
|
|
|
+ ListResponse<FuncidDefModel> queryFuncid = funcidDefService.queryFuncid(criteria);
|
|
|
|
+ data.addAll(queryFuncid.getData());
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ ListResponse<FuncidDefModel> queryFuncid = funcidDefService.queryFuncid(criteria);
|
|
|
|
+ data = queryFuncid.getData();
|
|
|
|
+ }
|
|
if (data != null && data.size() != 0) {
|
|
if (data != null && data.size() != 0) {
|
|
- return data.get(0);
|
|
|
|
|
|
+ return data;
|
|
}
|
|
}
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|