From c17c4687562d61a5663510ae7fbd0ce7ce73873f Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期日, 16 五月 2021 12:18:58 +0800
Subject: [PATCH] 优化代码
---
service-common/src/main/java/com/java110/common/smo/impl/AttendanceClassesTaskInnerServiceSMOImpl.java | 76 +++++++++++++++++++++++++++++++++++++
1 files changed, 75 insertions(+), 1 deletions(-)
diff --git a/service-common/src/main/java/com/java110/common/smo/impl/AttendanceClassesTaskInnerServiceSMOImpl.java b/service-common/src/main/java/com/java110/common/smo/impl/AttendanceClassesTaskInnerServiceSMOImpl.java
old mode 100644
new mode 100755
index b63b66a..9997d85
--- a/service-common/src/main/java/com/java110/common/smo/impl/AttendanceClassesTaskInnerServiceSMOImpl.java
+++ b/service-common/src/main/java/com/java110/common/smo/impl/AttendanceClassesTaskInnerServiceSMOImpl.java
@@ -4,14 +4,19 @@
import com.java110.common.dao.IAttendanceClassesTaskServiceDao;
import com.java110.core.base.smo.BaseServiceSMO;
import com.java110.dto.PageDto;
-import com.java110.dto.attendanceClassesTask.AttendanceClassesTaskDto;
+import com.java110.dto.attendanceClasses.AttendanceClassesTaskDto;
+import com.java110.dto.attendanceClasses.AttendanceClassesTaskDetailDto;
+import com.java110.dto.user.UserDto;
+import com.java110.intf.common.IAttendanceClassesTaskDetailInnerServiceSMO;
import com.java110.intf.common.IAttendanceClassesTaskInnerServiceSMO;
+import com.java110.intf.user.IUserInnerServiceSMO;
import com.java110.po.attendanceClassesTask.AttendanceClassesTaskPo;
import com.java110.utils.util.BeanConvertUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -27,6 +32,12 @@
@Autowired
private IAttendanceClassesTaskServiceDao attendanceClassesTaskServiceDaoImpl;
+
+ @Autowired
+ private IAttendanceClassesTaskDetailInnerServiceSMO attendanceClassesTaskDetailInnerServiceSMOImpl;
+
+ @Autowired
+ private IUserInnerServiceSMO userInnerServiceSMOImpl;
@Override
@@ -64,9 +75,72 @@
List<AttendanceClassesTaskDto> attendanceClassesTasks = BeanConvertUtil.covertBeanList(attendanceClassesTaskServiceDaoImpl.getAttendanceClassesTaskInfo(BeanConvertUtil.beanCovertMap(attendanceClassesTaskDto)), AttendanceClassesTaskDto.class);
+ //杈撳叆鍛樺伐鍚嶇О
+ refreshAttendanceClassesTasks(attendanceClassesTasks);
return attendanceClassesTasks;
}
+ /**
+ * 杈撳叆 鍛樺伐 鍜� 鏄庣粏
+ *
+ * @param attendanceClassesTasks
+ */
+ private void refreshAttendanceClassesTasks(List<AttendanceClassesTaskDto> attendanceClassesTasks) {
+
+ if (attendanceClassesTasks == null || attendanceClassesTasks.size() < 1) {
+ return;
+ }
+
+ if (attendanceClassesTasks.size() > 20) {
+ return;
+ }
+
+ List<String> staffIds = new ArrayList<>();
+
+ for (AttendanceClassesTaskDto attendanceClassesTaskDto : attendanceClassesTasks) {
+ staffIds.add(attendanceClassesTaskDto.getStaffId());
+ }
+
+ List<UserDto> userDtos = userInnerServiceSMOImpl.getUserInfo(staffIds.toArray(new String[staffIds.size()]));
+
+ if (userDtos != null && userDtos.size() > 0) {
+ for (AttendanceClassesTaskDto attendanceClassesTaskDto : attendanceClassesTasks) {
+ for (UserDto userDto : userDtos) {
+ if (attendanceClassesTaskDto.getStaffId().equals(userDto.getUserId())) {
+ attendanceClassesTaskDto.setStaffName(userDto.getName());
+ continue;
+ }
+ }
+ }
+ }
+
+ List<String> taskIds = new ArrayList<>();
+
+ for (AttendanceClassesTaskDto attendanceClassesTaskDto : attendanceClassesTasks) {
+ taskIds.add(attendanceClassesTaskDto.getTaskId());
+ }
+
+ AttendanceClassesTaskDetailDto attendanceClassesTaskDetailDto = new AttendanceClassesTaskDetailDto();
+ attendanceClassesTaskDetailDto.setTaskIds(taskIds.toArray(new String[taskIds.size()]));
+ attendanceClassesTaskDetailDto.setStoreId(attendanceClassesTasks.get(0).getStoreId());
+ List<AttendanceClassesTaskDetailDto> attendanceClassesTaskDetailDtos
+ = attendanceClassesTaskDetailInnerServiceSMOImpl.queryAttendanceClassesTaskDetails(attendanceClassesTaskDetailDto);
+
+ if (attendanceClassesTaskDetailDtos == null || attendanceClassesTaskDetailDtos.size() < 1) {
+ return;
+ }
+ List<AttendanceClassesTaskDetailDto> tmpAttendanceClassesTaskDetailDtos = null;
+ for (AttendanceClassesTaskDto attendanceClassesTaskDto : attendanceClassesTasks) {
+ tmpAttendanceClassesTaskDetailDtos = new ArrayList<>();
+ for (AttendanceClassesTaskDetailDto tmpAttendanceClassesTaskDetailDto : attendanceClassesTaskDetailDtos) {
+ if (attendanceClassesTaskDto.getTaskId().equals(tmpAttendanceClassesTaskDetailDto.getTaskId())) {
+ tmpAttendanceClassesTaskDetailDtos.add(tmpAttendanceClassesTaskDetailDto);
+ }
+ }
+ attendanceClassesTaskDto.setAttendanceClassesTaskDetails(tmpAttendanceClassesTaskDetailDtos);
+ }
+ }
+
@Override
public int queryAttendanceClassesTasksCount(@RequestBody AttendanceClassesTaskDto attendanceClassesTaskDto) {
--
Gitblit v1.8.0