|
|
@@ -1015,10 +1015,12 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
for (TChangeTaskOut tChangeTaskOut : list) {
|
|
|
if(tChangeTaskOut.getSplitStatus()==1){
|
|
|
//变更会员子项目有2中,一种是复制过来的,根据上级项目编号关联,还一种是新增的根据变更项目编号关联
|
|
|
- List<TChangeTask> tChangeTasks =new ArrayList<>();
|
|
|
- if (tChangeTaskOut.getTid()!=null)tChangeTasks.addAll(tChangeTaskMapper.selectBySuper(tChangeTaskOut.getTid(), null, cid));
|
|
|
- tChangeTasks.addAll(tChangeTaskMapper.selectBySuper(null,tChangeTaskOut.getId(),cid));
|
|
|
- tChangeTaskOut.setList(tChangeTasks);
|
|
|
+
|
|
|
+ TChangeTask input= new TChangeTask();
|
|
|
+ input.setCid(cid);
|
|
|
+ input.setSplitSuper(tChangeTaskOut.getTid());
|
|
|
+ input.setChangeSplitSuper(tChangeTaskOut.getId());
|
|
|
+ tChangeTaskOut.setList(getChangeSonTasks(input));
|
|
|
}
|
|
|
}
|
|
|
return list;
|
|
|
@@ -1062,16 +1064,15 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
}else if(t.getType()==2){
|
|
|
tChangeTaskMapper.updateByTid(t.getTid(),null,tt.getCid(),2);
|
|
|
if (tt.getSplitStatus()==1) {
|
|
|
-
|
|
|
if (t.getServiceLife()!=null||t.getServiceYear()!=null||t.getYearSum()!=null||t.getContractTerm()!=null){
|
|
|
- tChangeTaskMapper.updateMemberByTid(tt.getTid(),t.getCid(),2,t.getServiceLife(),t.getServiceYear(),t.getYearSum(),t.getContractTerm());
|
|
|
- }else {
|
|
|
- tChangeTaskMapper.updateByTid(null,tt.getTid(),tt.getCid(),2);
|
|
|
+ tChangeTaskMapper.updateMemberByTid(tt.getTid(),t.getCid(),null,t.getServiceLife(),t.getServiceYear(),t.getYearSum(),t.getContractTerm());
|
|
|
}
|
|
|
+ updateChangeType(tt);
|
|
|
}else if(tt.getSplitStatus()==2) {
|
|
|
tChangeTaskMapper.updateByTid(tt.getSplitSuper(),null,tt.getCid(),2);
|
|
|
}
|
|
|
}
|
|
|
+ //如果没有tid是新增项目则直接删除
|
|
|
}else {
|
|
|
if (t.getType()==3) {
|
|
|
tChangeTaskMapper.deleteByPrimaryKey(t.getId());
|
|
|
@@ -1081,7 +1082,18 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
return tChangeTaskMapper.updateByPrimaryKeySelective(t);
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
+ private void updateChangeType(TChangeTask t) {
|
|
|
+ List<TChangeTask> changeSonTasks = getChangeSonTasks(t);
|
|
|
+ List<Integer> list=new ArrayList<>();
|
|
|
+ for (TChangeTask changeSonTask : changeSonTasks) {
|
|
|
+ if (changeSonTask.getType()==0||changeSonTask.getType()==2){
|
|
|
+ list.add(changeSonTask.getId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(!list.isEmpty())tChangeTaskMapper.updateTypeBatch(2,list);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
public int updateChangeDun(TChangeDun t) {
|
|
|
if(t.getCustomizeTimes()!=null)t.setCustomizeTime(DateUtils.StringToDate(t.getCustomizeTimes(), AFTConstants.YYYYMMDD));
|
|
|
if (t.getType()==1||t.getType()==2) {
|
|
|
@@ -1209,13 +1221,17 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
|
|
|
@Override
|
|
|
public Object addMemberSonProject(Integer id, String serviceYear, String taskComment) {
|
|
|
+ //先修改父项目
|
|
|
TChangeTask tChangeTask = tChangeTaskMapper.selectByPrimaryKey(id);
|
|
|
+ Integer tid=tChangeTask.getTid();
|
|
|
tChangeTask.setSplitStatus(1);
|
|
|
tChangeTaskMapper.updateByPrimaryKey(tChangeTask);
|
|
|
+ //在判断是否有删除的年份没有就新增
|
|
|
tChangeTask.setId(null);
|
|
|
+ tChangeTask.setTid(null);
|
|
|
tChangeTask.setSplitStatus(2);
|
|
|
- if(tChangeTask.getTid()!=null){
|
|
|
- tChangeTask.setSplitSuper(tChangeTask.getTid());
|
|
|
+ if(tid!=null){
|
|
|
+ tChangeTask.setSplitSuper(tid);
|
|
|
}else {
|
|
|
tChangeTask.setChangeSplitSuper(id);
|
|
|
}
|
|
|
@@ -1230,12 +1246,18 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
@Override
|
|
|
public int deleteMemberSonProject(Integer id) {
|
|
|
TChangeTask tChangeTask = tChangeTaskMapper.selectByPrimaryKey(id);
|
|
|
- tChangeTask.setType(3);
|
|
|
- tChangeTaskMapper.updateByPrimaryKeySelective(tChangeTask);
|
|
|
- List<TChangeTask> tChangeTasks = tChangeTaskMapper.selectBySuper(tChangeTask.getSplitSuper(),null, tChangeTask.getCid());
|
|
|
- tChangeTasks.addAll(tChangeTaskMapper.selectBySuper(null,tChangeTask.getChangeSplitSuper(), tChangeTask.getCid()));
|
|
|
+ if (tChangeTask.getType()==1){
|
|
|
+ tChangeTaskMapper.deleteByPrimaryKey(id);
|
|
|
+ }else {
|
|
|
+ TChangeTask newtChangeTask = new TChangeTask();
|
|
|
+ newtChangeTask.setId(id);
|
|
|
+ newtChangeTask.setType(3);
|
|
|
+ tChangeTaskMapper.updateByPrimaryKeySelective(newtChangeTask);
|
|
|
+
|
|
|
+ }
|
|
|
+ List<TChangeTask> tChangeTasks = getChangeSonTasks(tChangeTask);
|
|
|
//如果没有子项目则修改上级
|
|
|
- if (tChangeTasks==null||tChangeTasks.isEmpty()){
|
|
|
+ if (tChangeTasks == null || tChangeTasks.isEmpty()) {
|
|
|
TChangeTask changeTask = new TChangeTask();
|
|
|
changeTask.setId(tChangeTask.getSplitSuper());
|
|
|
changeTask.setSplitStatus(0);
|
|
|
@@ -1244,5 +1266,19 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
return 1;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Object updateMemberSonProject(Integer id) {
|
|
|
+ TChangeTask tChangeTask = tChangeTaskMapper.selectByPrimaryKey(id);
|
|
|
+ tChangeTask.setType(2);
|
|
|
+ tChangeTaskMapper.updateByPrimaryKeySelective(tChangeTask);
|
|
|
+ return tChangeTask;
|
|
|
+ }
|
|
|
+
|
|
|
+ private List<TChangeTask> getChangeSonTasks(TChangeTask tChangeTask) {
|
|
|
+ List<TChangeTask> tChangeTasks = tChangeTaskMapper.selectBySuper(tChangeTask.getSplitSuper(),null, tChangeTask.getCid());
|
|
|
+ tChangeTasks.addAll(tChangeTaskMapper.selectBySuper(null, tChangeTask.getChangeSplitSuper(), tChangeTask.getCid()));
|
|
|
+ return tChangeTasks;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
}
|