发布新版本带出废止时间问题解决

This commit is contained in:
yujh 2025-04-29 17:44:00 +08:00
parent ccd14f5213
commit 5ba9659e72
3 changed files with 62 additions and 14 deletions

View File

@ -4756,7 +4756,10 @@ public class CoeDesignerWeb extends ActionWeb {
//创建绩效关联关系
CreateRelevancePerformanceModel(isLargeIteration, oldUUID, PALRepositoryCache.getCache().get(newUUID), mapNewUUID, tempVer);
CoeProcessLevelUtil.copyRepositoryProperty(PALRepositoryCache.getCache().get(oldUUID), PALRepositoryCache.getCache().get(newUUID), mapNewUUID, _uc);
//ydq 修改
CoeProcessLevelUtil.copyRepositoryProperty(PALRepositoryCache.getCache().get(oldUUID), PALRepositoryCache.getCache().get(newUUID), mapNewUUID, _uc,true);
//ydq 修改结束
//CoeProcessLevelUtil.copyRepositoryProperty(PALRepositoryCache.getCache().get(oldUUID), PALRepositoryCache.getCache().get(newUUID), mapNewUUID, _uc);
ro = ResponseObject.newOkResponse("创建成功");
ro.put("uuid", lastplModel.getId());
// 操作行为日志记录

View File

@ -8,19 +8,8 @@ import java.nio.charset.StandardCharsets;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.Map.Entry;
import java.util.Set;
import com.actionsoft.bpms.commons.database.RowMap;
import org.apache.commons.collections.CollectionUtils;
@ -655,6 +644,21 @@ public class CoeProcessLevelUtil {
new CopyRepositoryProperty().copyRepositoryProperty(oldModel, newModel, mapNewUUID, _uc);
}
//ydq 修改
/**
* 复制粘贴文件创建新版本时对一些属性处理的公共方法
* 包括关联属性文件属性文件特殊属性文件形状附件
*
* @param oldModel 被复制的模型
* @param newModel 新的模型
* @param mapNewUUID 新老模型的形状id关联关系 key:被复制的模型的形状id, valu:新的模型的形状id
*/
public static void copyRepositoryProperty(PALRepositoryModel oldModel, PALRepositoryModel newModel, Map<String, String> mapNewUUID, UserContext _uc, Boolean isCreate) {
new CopyRepositoryProperty().copyRepositoryProperty(oldModel, newModel, mapNewUUID, _uc, isCreate);
}
//ydq 修改结束
/**
* 更新PAL与BPMS之间的关联含PAL推送到BPMS运行BPMS关联到PAL梳理关系
* 由APP_ACT_COE_PROP表数据更新转换至APP_ACT_COE_PAL_CORRELATE
@ -3128,6 +3132,19 @@ public class CoeProcessLevelUtil {
updateFile(oldModel.getId(), newModel.getId(), mapNewUUID, _uc);
}
//ydq 修改
public void copyRepositoryProperty(PALRepositoryModel oldModel, PALRepositoryModel newModel, Map<String, String> mapNewUUID, UserContext _uc, Boolean isCreate) {
// 复制属性关联信息
updateRelation(oldModel.getId(), newModel.getId(), mapNewUUID);
// 复制文件属性
updateFileProperty(oldModel.getId(), newModel.getId(),isCreate);
// 复制文件特殊属性(类似列表属性)
updateSpecialAttr(newModel.getWsId(), oldModel.getId(), newModel.getId());
// 复制附件
updateFile(oldModel.getId(), newModel.getId(), mapNewUUID, _uc);
}
//ydq 修改结束
/**
* 处理附件
*
@ -3198,6 +3215,31 @@ public class CoeProcessLevelUtil {
repositoryPropertyDao.batchInsert(newPropertyList);
}
//ydq 修改
// 复制文件属性
private void updateFileProperty(String oldUuid, String newUuid, Boolean isCreate) {
System.out.println("开始复制文件属性,是否为新建:"+isCreate);
PALRepositoryPropertyDao repositoryPropertyDao = new PALRepositoryPropertyDao();
List<PALRepositoryPropertyModel> oldPropertyList = repositoryPropertyDao.getPropertysByPlid(oldUuid, "");
List<PALRepositoryPropertyModel> newPropertyList = new ArrayList<PALRepositoryPropertyModel>();
if (oldPropertyList != null && oldPropertyList.size() > 0) {
for (PALRepositoryPropertyModel propertyModel : oldPropertyList) {
System.out.println("本次复制属性:"+JSON.toJSONString(propertyModel));
if (isCreate && Objects.nonNull(propertyModel) && UtilString.isNotEmpty(propertyModel.getPropertyId()) && "obsolescence_time".equals(propertyModel.getPropertyId())) {
System.out.println("进入废止时间属性复制");
propertyModel.setPropertyValue("");
System.out.println("设置废止时间完成,修改后属性值:"+JSON.toJSONString(propertyModel));
}
propertyModel.setPlId(newUuid);
propertyModel.setId(UUIDGener.getUUID());
newPropertyList.add(propertyModel);
System.out.println("本次属性复制完成");
}
}
repositoryPropertyDao.batchInsert(newPropertyList);
}
//ydq 修改结束
/**
* 关联属性复制
*

View File

@ -5674,7 +5674,10 @@ public class CoeProcessLevelWeb extends ActionWeb {
mapNewUUID = createShapeIdRelation(oldModel, mapNewUUID, true);
// 更新流程文件中节点id等信息
updateDefineShape(newModel, mapNewUUID, "");
CoeProcessLevelUtil.copyRepositoryProperty(oldModel, newModel, mapNewUUID, _uc);
//CoeProcessLevelUtil.copyRepositoryProperty(oldModel, newModel, mapNewUUID, _uc);
//ydq 修改
CoeProcessLevelUtil.copyRepositoryProperty(oldModel, newModel, mapNewUUID, _uc,true);
//ydq 修改结束
} catch (Exception e) {
e.printStackTrace();