Sfoglia il codice sorgente

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

yonge 5 anni fa
parent
commit
85df3bcabd

+ 13 - 12
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/HighClassGroupDto.java

@@ -2,6 +2,7 @@ package com.ym.mec.biz.dal.dto;
 
 import io.swagger.annotations.ApiModelProperty;
 
+import java.time.LocalDate;
 import java.util.Date;
 
 import org.apache.commons.lang3.builder.ToStringBuilder;
@@ -17,7 +18,7 @@ public class HighClassGroupDto extends ClassGroup {
 	private Integer userId;
 
 	@ApiModelProperty(value = "星期几",required = true)
-	private String dayOfWeek;
+	private Integer dayOfWeek;
 
 	@ApiModelProperty(value = "开始时间",required = true)
 	private String startClassTime;
@@ -26,7 +27,7 @@ public class HighClassGroupDto extends ClassGroup {
 	private String endClassTime;
 
 	@ApiModelProperty(value = "开始日期", required = true)
-	private Date StartDate;
+	private String startDate;
 
 	@ApiModelProperty(value = "排课次数", required = true)
 	private Integer courseTimes;
@@ -62,22 +63,14 @@ public class HighClassGroupDto extends ClassGroup {
 		return ToStringBuilder.reflectionToString(this);
 	}
 
-	public String getDayOfWeek() {
+	public Integer getDayOfWeek() {
 		return dayOfWeek;
 	}
 
-	public void setDayOfWeek(String dayOfWeek) {
+	public void setDayOfWeek(Integer dayOfWeek) {
 		this.dayOfWeek = dayOfWeek;
 	}
 
-	public Date getStartDate() {
-		return StartDate;
-	}
-
-	public void setStartDate(Date startDate) {
-		StartDate = startDate;
-	}
-
 	public Integer getCourseTimes() {
 		return courseTimes;
 	}
@@ -85,4 +78,12 @@ public class HighClassGroupDto extends ClassGroup {
 	public void setCourseTimes(Integer courseTimes) {
 		this.courseTimes = courseTimes;
 	}
+
+	public String getStartDate() {
+		return startDate;
+	}
+
+	public void setStartDate(String startDate) {
+		this.startDate = startDate;
+	}
 }

+ 23 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -21,15 +21,19 @@ import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.format.datetime.DateFormatter;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
 import java.math.BigDecimal;
+import java.text.DateFormat;
 import java.time.Instant;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -68,6 +72,8 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     private SubjectService subjectService;
     @Autowired
     private ClassGroupTeacherMapperDao classGroupTeacherMapperDao;
+    @Autowired
+    private CourseScheduleDao courseScheduleDao;
 
     @Override
     public BaseDAO<Integer, ClassGroup> getDAO() {
@@ -205,6 +211,8 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             highClassGroup.setCreateTime(date);
             highClassGroup.setUpdateTime(date);
             highClassGroup.setType(ClassGroupTypeEnum.HIGH);
+            highClassGroup.setTotalClassTimes(highClassGroup.getCourseTimes());
+            highClassGroup.setCurrentClassTimes(0);
             insert(highClassGroup);
 
             //2、插入班级关联老师
@@ -219,21 +227,21 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
 
             //3、插入班级排课信息
             List<CourseSchedule> courseScheduleList = new ArrayList<>();
-            int i = 0;
-            LocalDateTime now = LocalDateTime.ofInstant(highClassGroup.getStartDate().toInstant(), ZoneId.systemDefault());
+            int times = 0;
+            //LocalDateTime now = LocalDateTime.ofInstant(highClassGroup.getStartDate().toInstant(), ZoneId.systemDefault());
+            LocalDateTime now = LocalDate.parse(highClassGroup.getStartDate(), DateTimeFormatter.ofPattern("yyyy-MM-dd")).atStartOfDay();
+
             while (true) {
-                now = now.plusDays(i);
                 int dayOfWeek = now.getDayOfWeek().getValue();
-
                 if (highClassGroup.getDayOfWeek().equals(dayOfWeek)) {
                     CourseSchedule courseSchedule = new CourseSchedule();
                     Instant instant = now.atZone(ZoneId.systemDefault()).toInstant();
                     Date classDate = Date.from(instant);
-                    String startClassTime = DateUtil.getDate(classDate) + " " + highClassGroup.getStartClassTime();
-                    String endClassTime = DateUtil.getDate(classDate) + " " + highClassGroup.getEndClassTime();
+                    String startClassTime = DateUtil.getDate(classDate) + " " + highClassGroup.getStartClassTime()+":00";
+                    String endClassTime = DateUtil.getDate(classDate) + " " + highClassGroup.getEndClassTime()+":00";
 
                     courseSchedule.setSchoolId(schoolId);
-                    courseSchedule.setClassGroupId(highClassGroup.getUserId());
+                    courseSchedule.setClassGroupId(highClassGroup.getId());
                     courseSchedule.setStatus(CourseStatusEnum.NOT_START);
                     courseSchedule.setClassDate(classDate);
                     courseSchedule.setStartClassTime(DateUtil.stringToDate(startClassTime));
@@ -243,14 +251,19 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                     courseSchedule.setCreateTime(date);
                     courseSchedule.setUpdateTime(date);
                     courseSchedule.setTeachMode(TeachModeEnum.OFFLINE);
+                    courseSchedule.setType(CourseSchedule.CourseScheduleType.HIGH);
+                    Subject subject = subjectService.get(Integer.parseInt(highClassGroup.getSubjectIdList()));
+                    courseSchedule.setName(subject.getName()+"-"+CourseSchedule.CourseScheduleType.HIGH.getMsg());
+
                     courseScheduleList.add(courseSchedule);
-                    i++;
+                    times++;
                 }
-                if (highClassGroup.getCourseTimes().equals(i)) {
+                now = now.plusDays(1);
+                if (highClassGroup.getCourseTimes().equals(times)) {
                     break;
                 }
             }
-            courseScheduleService.batchAddCourseSchedule(courseScheduleList);
+            courseScheduleDao.batchAddCourseSchedules(courseScheduleList);
         }
         return highClassGroupList;
     }

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/controller/ClassGroupController.java

@@ -49,7 +49,7 @@ public class ClassGroupController extends BaseController {
 
     @ApiOperation(value = "新增提高班")
     @PostMapping("/addHighClass")
-    @PreAuthorize("@pcs.hasPermissions('classGroup/addHighClass')")
+    //@PreAuthorize("@pcs.hasPermissions('classGroup/addHighClass')")
     @ApiParam(value = "乐团提高班json", required = true)
     public Object addHighClass(@RequestBody List<HighClassGroupDto> highClassGroupDtoList) throws Exception {
         if (highClassGroupDtoList.size() <= 0) {