|
|
@@ -20,6 +20,7 @@ import com.xunmei.common.core.domain.R;
|
|
|
import com.xunmei.common.core.domain.drill.domain.*;
|
|
|
import com.xunmei.common.core.domain.drill.dto.*;
|
|
|
import com.xunmei.common.core.domain.drill.vo.*;
|
|
|
+import com.xunmei.common.core.domain.edu.domain.CoreEduTrainingTaskToUser;
|
|
|
import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskReportVo;
|
|
|
import com.xunmei.common.core.enums.ExportPdfType;
|
|
|
import com.xunmei.common.core.enums.OrgTypeEnum;
|
|
|
@@ -63,6 +64,7 @@ import java.time.LocalDateTime;
|
|
|
import java.util.*;
|
|
|
import java.util.concurrent.CompletableFuture;
|
|
|
import java.util.stream.Collectors;
|
|
|
+import java.util.stream.Stream;
|
|
|
|
|
|
import static com.xunmei.common.core.utils.StringUtils.calculatePercent;
|
|
|
|
|
|
@@ -195,6 +197,9 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
|
|
|
}
|
|
|
if (ObjectUtil.isNotEmpty(userList)) {
|
|
|
detailVo.setTaskUserList(userList);
|
|
|
+ Map<Integer, List<CoreDrillTaskToUser>> collect = userList.stream().collect(Collectors.groupingBy(CoreDrillTaskToUser::getType));
|
|
|
+ detailVo.setAbsenceList(collect.get(1));
|
|
|
+ detailVo.setAbsentList(collect.get(2));
|
|
|
}
|
|
|
final List<SysDictData> drillTypeDictList = DictUtils.getDictCache(DictConstants.CORE_DRILL_TYPE);
|
|
|
if (ObjectUtil.isNotEmpty(drillTypeDictList) && ObjectUtil.isNotEmpty(detailVo.getType())) {
|
|
|
@@ -255,7 +260,12 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
|
|
|
} else {
|
|
|
coreDrillTask.setHostId(SecurityUtils.getUserId());
|
|
|
}
|
|
|
- List<CoreDrillTaskToUser> taskUserList = request.getTaskUserList();
|
|
|
+ List<CoreDrillTaskToUser> taskUserList;
|
|
|
+ if (ObjectUtil.isNotEmpty(request.getTaskUserList())) {
|
|
|
+ taskUserList = request.getTaskUserList();
|
|
|
+ } else {
|
|
|
+ taskUserList = Stream.of(request.getAbsenceList(), request.getAbsentList()).flatMap(Collection::stream).collect(Collectors.toList());
|
|
|
+ }
|
|
|
if (ObjectUtil.isNotEmpty(taskUserList)) {
|
|
|
checkTheSameUser(taskUserList);
|
|
|
for (CoreDrillTaskToUser taskToUser : taskUserList) {
|
|
|
@@ -519,7 +529,7 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
|
|
|
this.update(updateWrapper);
|
|
|
});
|
|
|
|
|
|
- return AjaxResult.error("正在生成pdf,请稍后刷新页面查看!");
|
|
|
+ return AjaxResult.success("正在生成pdf,请稍后刷新页面查看!");
|
|
|
}
|
|
|
|
|
|
private Map<String, Object> getFtlDrill(CoreDrillTaskDetailVo task) {
|
|
|
@@ -527,6 +537,7 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
|
|
|
|
|
|
String orgName = task.getOrgName();
|
|
|
String drillSite = task.getDrillSite();
|
|
|
+ String imageData = task.getImageList();
|
|
|
String drillTime = DateUtil.format(task.getDrillTime(), "yyyy-MM-dd HH:mm:ss");
|
|
|
String hostName = task.getHostName() == null ? StringUtil.EMPTY_STRING : task.getHostName();
|
|
|
String typeText = task.getTypeText() == null ? StringUtil.EMPTY_STRING : task.getTypeText();
|
|
|
@@ -539,6 +550,7 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
|
|
|
data.put("drillTime", StringUtils.isNotEmpty(drillTime) ? drillTime : StringUtil.EMPTY_STRING);
|
|
|
data.put("hostName", StringUtils.isNotEmpty(hostName) ? hostName : StringUtil.EMPTY_STRING);
|
|
|
data.put("typeText", StringUtils.isNotEmpty(typeText) ? typeText : StringUtil.EMPTY_STRING);
|
|
|
+ data.put("imageData", StringUtils.isNotEmpty(imageData) ? Arrays.asList(imageData.split(",")) : StringUtil.EMPTY_STRING);
|
|
|
data.put("recorderName", StringUtils.isNotEmpty(recorderName) ? recorderName : StringUtil.EMPTY_STRING);
|
|
|
data.put("presetCase", StringUtils.isNotEmpty(presetCase) ? "预设案由: " + presetCase : StringUtil.EMPTY_STRING);
|
|
|
data.put("drillSituation", StringUtils.isNotEmpty(drillSituation) ? "演练情况: " + drillSituation : StringUtil.EMPTY_STRING);
|