瀏覽代碼

Merge remote-tracking branch 'origin/master'

Joburgess 5 年之前
父節點
當前提交
43af4a32e9

+ 1 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/config/WebSecurityConfig.java

@@ -124,6 +124,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
 		filter.setAuthenticationSuccessHandler(successEventHandler);
 		filter.setAuthenticationFailureHandler(failureEvenHandler);
 		filter.setSysUserService(sysUserService);
+		filter.setSmsCodeService(smsCodeService);
 		return filter;
 	}
 

+ 9 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/core/filter/PhoneLoginAuthenticationFilter.java

@@ -4,9 +4,11 @@ import com.ym.mec.auth.api.dto.SysUserInfo;
 import com.ym.mec.auth.config.token.PhoneAuthenticationToken;
 import com.ym.mec.auth.service.SysUserService;
 import com.ym.mec.common.security.SecurityConstants;
+import com.ym.mec.common.service.IdGeneratorService;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.security.authentication.AbstractAuthenticationToken;
 import org.springframework.security.authentication.AuthenticationServiceException;
+import org.springframework.security.authentication.BadCredentialsException;
 import org.springframework.security.authentication.LockedException;
 import org.springframework.security.core.Authentication;
 import org.springframework.security.core.AuthenticationException;
@@ -31,6 +33,7 @@ public class PhoneLoginAuthenticationFilter extends AbstractAuthenticationProces
 	private boolean postOnly = true;
 	
 	private SysUserService sysUserService;
+	private IdGeneratorService smsCodeService;
 
 	public PhoneLoginAuthenticationFilter() {
 		super(new AntPathRequestMatcher(SPRING_SECURITY_RESTFUL_LOGIN_URL, "POST"));
@@ -49,6 +52,9 @@ public class PhoneLoginAuthenticationFilter extends AbstractAuthenticationProces
 		String isRegister = obtainParameter(request, IS_REGISTER_PARAMETER);
 		//是否是租户
 		String isLessee = obtainParameter(request, IS_LESSEE);
+		// 验证码验证
+		boolean b = smsCodeService.verifyValidCode(StringUtils.substringAfter(principal, SecurityConstants.PHONE_PRINCIPAL_PREFIX), credentials);
+		if(!b) throw new BadCredentialsException("验证码校验失败");
 
 		SysUserInfo userInfo = sysUserService.queryUserInfoByPhone(principal);
 
@@ -93,4 +99,7 @@ public class PhoneLoginAuthenticationFilter extends AbstractAuthenticationProces
 		this.sysUserService = sysUserService;
 	}
 
+	public void setSmsCodeService(IdGeneratorService smsCodeService) {
+		this.smsCodeService = smsCodeService;
+	}
 }

+ 5 - 5
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/core/provider/PhoneAuthenticationProvider.java

@@ -22,13 +22,13 @@ public class PhoneAuthenticationProvider extends AbstractAuthenticationProvider
 		if (authentication.getCredentials() == null) {
 			throw new BadCredentialsException(this.messages.getMessage("PhoneAuthenticationProvider.badCredentials", "Bad credentials"));
 		} else {
-			String smsCode = authentication.getCredentials().toString();
+//			String smsCode = authentication.getCredentials().toString();
 
-			String phone = authentication.getPrincipal().toString();
+//			String phone = authentication.getPrincipal().toString();
 
-			// 验证码验证
-			boolean b = smsCodeService.verifyValidCode(StringUtils.substringAfter(phone, SecurityConstants.PHONE_PRINCIPAL_PREFIX), smsCode);
-			if(!b) throw new BadCredentialsException("验证码校验失败");
+//			 验证码验证
+//			boolean b = smsCodeService.verifyValidCode(StringUtils.substringAfter(phone, SecurityConstants.PHONE_PRINCIPAL_PREFIX), smsCode);
+//			if(!b) throw new BadCredentialsException("验证码校验失败");
 		}
 	}
 

+ 0 - 2
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysUserServiceImpl.java

@@ -144,7 +144,6 @@ public class SysUserServiceImpl extends BaseServiceImpl<Integer, SysUser> implem
 			if(StringUtils.isNotEmpty(isLessee) && StringUtils.equalsIgnoreCase(clientId,"TEACHER")){
 				SysUser sysUser = new SysUser();
 				sysUser.setPhone(phone);
-				sysUser.setRealName("老师" + phone.substring(phone.length() - 6));
 				sysUser.setUserType("TEACHER");
 				sysUserDao.insert(sysUser);
 				//添加用户现金账户
@@ -158,7 +157,6 @@ public class SysUserServiceImpl extends BaseServiceImpl<Integer, SysUser> implem
 			}else if(StringUtils.isNotEmpty(isLessee) && StringUtils.equalsIgnoreCase(clientId,"STUDENT")){
 				SysUser sysUser = new SysUser();
 				sysUser.setPhone(phone);
-				sysUser.setUsername("学生" + phone.substring(phone.length() - 6));
 				sysUser.setUserType("STUDENT");
 				sysUser.setOrganId(lesseeOrganId);
 				sysUserDao.insert(sysUser);

+ 8 - 7
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CourseScheduleEndDto.java

@@ -1,7 +1,8 @@
 package com.ym.mec.biz.dal.dto;
 
 import com.ym.mec.biz.dal.entity.CourseSchedule;
-import com.ym.mec.biz.dal.enums.SignAttendanceStatusEnum;
+import com.ym.mec.biz.dal.enums.SignInStatusEnum;
+import com.ym.mec.biz.dal.enums.SignOutStatusEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 
 import java.util.Date;
@@ -26,9 +27,9 @@ public class CourseScheduleEndDto extends CourseSchedule {
 
     private int isSignOut = 3;
 
-    private SignAttendanceStatusEnum signInStatusEnum;
+    private SignInStatusEnum signInStatusEnum;
 
-    private SignAttendanceStatusEnum signOutStatusEnum;
+    private SignOutStatusEnum signOutStatusEnum;
 
     private YesOrNoEnum isCallNames;
 
@@ -38,19 +39,19 @@ public class CourseScheduleEndDto extends CourseSchedule {
 
     private String studentId;
 
-    public SignAttendanceStatusEnum getSignInStatusEnum() {
+    public SignInStatusEnum getSignInStatusEnum() {
         return signInStatusEnum;
     }
 
-    public void setSignInStatusEnum(SignAttendanceStatusEnum signInStatusEnum) {
+    public void setSignInStatusEnum(SignInStatusEnum signInStatusEnum) {
         this.signInStatusEnum = signInStatusEnum;
     }
 
-    public SignAttendanceStatusEnum getSignOutStatusEnum() {
+    public SignOutStatusEnum getSignOutStatusEnum() {
         return signOutStatusEnum;
     }
 
-    public void setSignOutStatusEnum(SignAttendanceStatusEnum signOutStatusEnum) {
+    public void setSignOutStatusEnum(SignOutStatusEnum signOutStatusEnum) {
         this.signOutStatusEnum = signOutStatusEnum;
     }
 

+ 4 - 4
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/SignAttendanceStatusEnum.java → mec-biz/src/main/java/com/ym/mec/biz/dal/enums/SignInStatusEnum.java

@@ -2,15 +2,15 @@ package com.ym.mec.biz.dal.enums;
 
 import com.ym.mec.common.enums.BaseEnum;
 
-public enum SignAttendanceStatusEnum implements BaseEnum<Integer, SignAttendanceStatusEnum> {
-    NORMAL(1,"正常"),
-    UNUSUAL(0,"异常"),
+public enum SignInStatusEnum implements BaseEnum<Integer, SignInStatusEnum> {
+    NORMAL(1,"正常签到"),
+    UNUSUAL(0,"异常签到"),
     NO(3,"未签到");
 
     private Integer code;
     private String msg;
 
-    SignAttendanceStatusEnum(Integer code, String msg) {
+    SignInStatusEnum(Integer code, String msg) {
         this.code = code;
         this.msg = msg;
     }

+ 34 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/SignOutStatusEnum.java

@@ -0,0 +1,34 @@
+package com.ym.mec.biz.dal.enums;
+
+import com.ym.mec.common.enums.BaseEnum;
+
+public enum SignOutStatusEnum implements BaseEnum<Integer, SignOutStatusEnum> {
+    NORMAL(1,"正常签退"),
+    UNUSUAL(0,"异常签退"),
+    NO(3,"未签退");
+
+    private Integer code;
+    private String msg;
+
+    SignOutStatusEnum(Integer code, String msg) {
+        this.code = code;
+        this.msg = msg;
+    }
+
+    public void setCode(Integer code) {
+        this.code = code;
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+
+    @Override
+    public Integer getCode() {
+        return this.code;
+    }
+}

+ 4 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -47,6 +47,8 @@ import java.util.*;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
+import static com.ym.mec.biz.dal.enums.SignInStatusEnum.*;
+
 @Service
 public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSchedule> implements CourseScheduleService {
 
@@ -3650,8 +3652,8 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
                     TeacherAttendance teacherAttendance=courseTeacherAttendances.get(0);
                     result.setIsSignIn(Objects.isNull(teacherAttendance.getSignInStatus())?3:teacherAttendance.getSignInStatus().getCode());
                     result.setIsSignOut(Objects.isNull(teacherAttendance.getSignOutStatus())?3:teacherAttendance.getSignOutStatus().getCode());
-					result.setSignInStatusEnum(result.getIsSignIn() == 1?SignAttendanceStatusEnum.NORMAL:result.getIsSignIn() == 0?SignAttendanceStatusEnum.UNUSUAL:SignAttendanceStatusEnum.NO);
-					result.setSignOutStatusEnum(result.getIsSignOut() == 1?SignAttendanceStatusEnum.NORMAL:result.getIsSignOut() == 0?SignAttendanceStatusEnum.UNUSUAL:SignAttendanceStatusEnum.NO);
+					result.setSignInStatusEnum(result.getIsSignIn() == 1?NORMAL:result.getIsSignIn() == 0?UNUSUAL:NO);
+					result.setSignOutStatusEnum(result.getIsSignOut() == 1?SignOutStatusEnum.NORMAL:result.getIsSignOut() == 0? SignOutStatusEnum.UNUSUAL: SignOutStatusEnum.NO);
                     result.setSignInTime(teacherAttendance.getSignInTime());
                     result.setSignOutTime(teacherAttendance.getSignOutTime());
                     result.setRemark(teacherAttendance.getRemark());

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/PracticeGroupMapper.xml

@@ -357,7 +357,7 @@
                pg.subject_id_
         FROM practice_group pg
                  LEFT JOIN class_group cg on pg.id_ = cg.music_group_id_ AND cg.group_type_ = 'PRACTICE'
-         WHERE pg.group_status_ = 'NORMAL' AND cg.group_type_ = 'PRACTICE'
+         WHERE pg.group_status_ IN ('NORMAL','FINISH') AND cg.group_type_ = 'PRACTICE'
           AND pg.buy_months_ >= 1
           AND pg.courses_start_date_ <= #{nowDate,jdbcType=DATE}
           AND pg.courses_expire_date_ >= #{afterDate,jdbcType=DATE}

+ 17 - 4
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -16,8 +16,10 @@ import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.excel.POIUtil;
+
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+
 import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -28,7 +30,9 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletResponse;
+
 import java.io.IOException;
+import java.io.OutputStream;
 import java.math.BigDecimal;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -288,6 +292,7 @@ public class ExportController extends BaseController {
             }
         }
         List<CourseScheduleEndDto> rows = scheduleService.endFindCourseSchedules(queryInfo).getRows();
+        OutputStream ouputStream = null;
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部名称", "课程编号", "开始时间", "结束时间",
                     "班级名称", "班级声部", "课程名称", "课程类型", "教学模式",
@@ -297,12 +302,20 @@ public class ExportController extends BaseController {
                     "signOutTime","signInStatusEnum.msg","signOutStatusEnum.msg", "remark"}, rows);
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
-            response.flushBuffer();
-            workbook.write(response.getOutputStream());
-            workbook.close();
+            ouputStream = response.getOutputStream();
+			workbook.write(ouputStream);
+			ouputStream.flush();
         } catch (Exception e) {
             e.printStackTrace();
-        }
+        } finally {
+			if (ouputStream != null) {
+				try {
+					ouputStream.close();
+				} catch (IOException e) {
+					e.printStackTrace();
+				}
+			}
+		}
     }