fix 87894 年度数据锁定--新增,删除,批量删除性能需要调整
This commit is contained in:
+9
-1
@@ -43,6 +43,7 @@ import java.util.ArrayList;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
import java.util.concurrent.CompletableFuture;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
@@ -115,6 +116,7 @@ public class AnnualDataLockingService extends ServiceImpl<AnnualDataLockingMappe
|
|||||||
throw new JeroBootException(year+"年年度数据已经锁定");
|
throw new JeroBootException(year+"年年度数据已经锁定");
|
||||||
}
|
}
|
||||||
this.save(annualDataLocking);
|
this.save(annualDataLocking);
|
||||||
|
CompletableFuture.supplyAsync(() -> {
|
||||||
//第一步先获取所有企业和联系人
|
//第一步先获取所有企业和联系人
|
||||||
List<PayMeetingSituation> meetingSituations = meetingSituationMapper.listByYear(year);
|
List<PayMeetingSituation> meetingSituations = meetingSituationMapper.listByYear(year);
|
||||||
List<PayWorkingGroupSubItem> workingGroupSubItems = payWorkingGroupSubItemMapper.listByYear(year);
|
List<PayWorkingGroupSubItem> workingGroupSubItems = payWorkingGroupSubItemMapper.listByYear(year);
|
||||||
@@ -129,7 +131,7 @@ public class AnnualDataLockingService extends ServiceImpl<AnnualDataLockingMappe
|
|||||||
ArrayList<String> distinctContactIdList = getDistinctContactIdList(meetingSituations, workingGroupSubItems, workingGroupSubItemContacts, payCommonProjects, memberProjectSubitems, tbMemberProjectSubitems,packCompanyList);
|
ArrayList<String> distinctContactIdList = getDistinctContactIdList(meetingSituations, workingGroupSubItems, workingGroupSubItemContacts, payCommonProjects, memberProjectSubitems, tbMemberProjectSubitems,packCompanyList);
|
||||||
//如果企业或联系人为空那么直接返回
|
//如果企业或联系人为空那么直接返回
|
||||||
if (CollectionUtil.isEmpty(distinctCompanyIdList)||CollectionUtil.isEmpty(distinctContactIdList)){
|
if (CollectionUtil.isEmpty(distinctCompanyIdList)||CollectionUtil.isEmpty(distinctContactIdList)){
|
||||||
return;
|
return "";
|
||||||
}
|
}
|
||||||
//生成企业和联系人临时数据
|
//生成企业和联系人临时数据
|
||||||
List<PayCompanyManagementTemporary> companyTemporaryList = companyTemporaryService.insertList(distinctCompanyIdList,year);
|
List<PayCompanyManagementTemporary> companyTemporaryList = companyTemporaryService.insertList(distinctCompanyIdList,year);
|
||||||
@@ -334,6 +336,9 @@ public class AnnualDataLockingService extends ServiceImpl<AnnualDataLockingMappe
|
|||||||
updatePackCompanyList.add(update);
|
updatePackCompanyList.add(update);
|
||||||
}
|
}
|
||||||
packCompanyService.updateBatchById(updatePackCompanyList);
|
packCompanyService.updateBatchById(updatePackCompanyList);
|
||||||
|
return "";
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
@@ -426,6 +431,7 @@ public class AnnualDataLockingService extends ServiceImpl<AnnualDataLockingMappe
|
|||||||
AnnualDataLocking annualDataLocking = this.getById(id);
|
AnnualDataLocking annualDataLocking = this.getById(id);
|
||||||
this.removeById(id);
|
this.removeById(id);
|
||||||
String year = annualDataLocking.getYear();
|
String year = annualDataLocking.getYear();
|
||||||
|
CompletableFuture.supplyAsync(() -> {
|
||||||
//会议项目
|
//会议项目
|
||||||
List<PayMeetingSituation> updateMeetingSituationList = new ArrayList<>();
|
List<PayMeetingSituation> updateMeetingSituationList = new ArrayList<>();
|
||||||
List<PayMeetingSituation> meetingSituations = meetingSituationMapper.listByYear(year);
|
List<PayMeetingSituation> meetingSituations = meetingSituationMapper.listByYear(year);
|
||||||
@@ -547,6 +553,8 @@ public class AnnualDataLockingService extends ServiceImpl<AnnualDataLockingMappe
|
|||||||
updatePackCompanyList.add(update);
|
updatePackCompanyList.add(update);
|
||||||
}
|
}
|
||||||
packCompanyService.updateBatchById(updatePackCompanyList);
|
packCompanyService.updateBatchById(updatePackCompanyList);
|
||||||
|
return "";
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user