研发需求问题记录表,006,流程清单中关于pllevel内容,重新计算真实level,避免直接取pllevel导致数据错误引起的结果出错
This commit is contained in:
parent
48398c335a
commit
a111afae43
Binary file not shown.
@ -50,6 +50,7 @@ public class ExportAPIManager {
|
||||
try {
|
||||
exportDao.insert(exportModel);
|
||||
} catch (AWSDataAccessException e) {
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
// 加入缓存
|
||||
|
||||
@ -11,6 +11,7 @@ import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.cache.Design
|
||||
import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.model.DesignerShapeRelationModel;
|
||||
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryModel;
|
||||
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryPropertyModel;
|
||||
import com.actionsoft.apps.coe.pal.pal.repository.model.impl.PALRepositoryModelImpl;
|
||||
import com.actionsoft.bpms.commons.login.constant.LoginConst;
|
||||
import com.actionsoft.bpms.org.model.DepartmentModel;
|
||||
import com.actionsoft.bpms.org.model.RoleModel;
|
||||
@ -177,4 +178,46 @@ public class ProcessListUtil {
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取模型数据的真实层级level RepositoryModel
|
||||
* @param model
|
||||
* @return
|
||||
*/
|
||||
public static PALRepositoryModel getRealLevelRepository(PALRepositoryModel model) {
|
||||
PALRepositoryModelImpl newModel = null;
|
||||
try {
|
||||
newModel = ((PALRepositoryModelImpl) model).clone();
|
||||
} catch (CloneNotSupportedException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
if (newModel != null) {
|
||||
Set<String> pids = new HashSet<>();
|
||||
int level = 1;
|
||||
StringBuilder sBuilder = new StringBuilder();
|
||||
String pid = newModel.getParentId();
|
||||
while (pid.length() >= 36 && !pids.contains(pid)) {
|
||||
pids.add(pid);
|
||||
PALRepositoryModel parentModel = PALRepositoryCache.getCache().get(pid);
|
||||
if (parentModel == null) {
|
||||
List<PALRepositoryModel> versionList = PALRepositoryCache.getByVersionId(model.getWsId(), pid);
|
||||
if (versionList != null && versionList.size() > 0) {
|
||||
for (PALRepositoryModel m : versionList) {
|
||||
if (m.isUse()) {
|
||||
parentModel = m;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (parentModel != null) {
|
||||
level++;
|
||||
pid = parentModel.getParentId();
|
||||
}
|
||||
}
|
||||
newModel.setLevel(level);
|
||||
}
|
||||
return newModel;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -137,6 +137,7 @@ public class PALRepositoryListWeb extends ActionWeb {
|
||||
int maxLevel = 0;
|
||||
while (iterator.hasNext()) {
|
||||
PALRepositoryModel next = iterator.next();
|
||||
PALRepositoryModel model = ProcessListUtil.getRealLevelRepository(next);
|
||||
if (!UtilString.isEmpty(category)) {
|
||||
if (!category.equals(next.getMethodCategory())) {
|
||||
continue;
|
||||
@ -147,8 +148,8 @@ public class PALRepositoryListWeb extends ActionWeb {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if (next.getLevel() > maxLevel) {
|
||||
maxLevel = next.getLevel();
|
||||
if (model.getLevel() > maxLevel) {
|
||||
maxLevel = model.getLevel();
|
||||
}
|
||||
}
|
||||
JSONArray result = new JSONArray();
|
||||
@ -641,6 +642,12 @@ public class PALRepositoryListWeb extends ActionWeb {
|
||||
List<PALRepositoryModel> palList = new ArrayList<>();
|
||||
Set<String> ids = new HashSet<>();
|
||||
PALRepositoryCache.getAllChildrenModelsByPid(wsId, category, palList, ids);
|
||||
// 重新设置pllevel
|
||||
for (int i = 0; i < palList.size(); i++) {
|
||||
palList.set(i, ProcessListUtil.getRealLevelRepository(palList.get(i)));
|
||||
}
|
||||
|
||||
|
||||
// 获取所有正在设计中的
|
||||
List<PALRepositoryModel> tmpPalList = new ArrayList<>();
|
||||
Set<String> levelSet = new HashSet<>();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user