|
|
@@ -40,7 +40,29 @@ public class ProjCrudService implements CrudOps<ProjOrchestration> {
|
|
|
projRepository.save(proj);
|
|
|
}
|
|
|
|
|
|
- public void copy() {
|
|
|
+ public void copy(String from, String to) throws Exception {
|
|
|
+ ProjOrchestration fromProj = projRepository.findByIsDeleteFalseAndProjId(from);
|
|
|
+ if (fromProj == null) {
|
|
|
+ throw new Exception("ID 为 " + from + " 的项目配置不存在...");
|
|
|
+ }
|
|
|
+
|
|
|
+ ProjOrchestration toProj = projRepository.findByIsDeleteFalseAndProjId(to);
|
|
|
+ if (toProj == null) {
|
|
|
+ toProj = (ProjOrchestration) fromProj.clone();
|
|
|
+ copyToDifferentProj(toProj, to);
|
|
|
+ projRepository.save(toProj);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void copyToDifferentProj(ProjOrchestration proj, String to) {
|
|
|
+ proj.setProjId(to);
|
|
|
+ proj.setDescription("");
|
|
|
+ proj.setProjRepo("");
|
|
|
+ proj.setDirname("");
|
|
|
+
|
|
|
+ proj.setId(null);
|
|
|
+ proj.setCreateTime(null);
|
|
|
+ proj.setUpdateTime(null);
|
|
|
}
|
|
|
|
|
|
@Override
|