|
@@ -77,13 +77,7 @@ public class TEMobileServiceImpl implements TEMobileService {
|
|
AuthDto authDto = (AuthDto) redisUtil.get(SystemConstant.studentOauth + "::" + es.getStudentId());
|
|
AuthDto authDto = (AuthDto) redisUtil.get(SystemConstant.studentOauth + "::" + es.getStudentId());
|
|
// 生成token
|
|
// 生成token
|
|
String token = RandomStringUtils.randomAlphanumeric(32);
|
|
String token = RandomStringUtils.randomAlphanumeric(32);
|
|
- String source = null;
|
|
|
|
- if (mode.equals(MobileModeEnum.MOBILE_MONITOR)) {
|
|
|
|
- Source sourceEnum = MobileAuthCacheUtil.getSource(mode, code);
|
|
|
|
- source = sourceEnum.name();
|
|
|
|
- } else if (mode.equals(MobileModeEnum.PHOTO_UPLOAD) || mode.equals(MobileModeEnum.AUDIO_UPLOAD)) {
|
|
|
|
- source = Source.OE_ANSWER.name();
|
|
|
|
- }
|
|
|
|
|
|
+ String source = MobileAuthCacheUtil.getPlatformSource(mode, code);
|
|
String sessionId = MobileAuthCacheUtil.getSessionId(mode, code);
|
|
String sessionId = MobileAuthCacheUtil.getSessionId(mode, code);
|
|
Map<String, Object> expireMap = SystemConstant.getExpireTime(platform);
|
|
Map<String, Object> expireMap = SystemConstant.getExpireTime(platform);
|
|
Date expire = (Date) expireMap.get("date");
|
|
Date expire = (Date) expireMap.get("date");
|
|
@@ -132,6 +126,7 @@ public class TEMobileServiceImpl implements TEMobileService {
|
|
AuthDto authDto = (AuthDto) redisUtil.get(SystemConstant.studentOauth + "::" + es.getStudentId());
|
|
AuthDto authDto = (AuthDto) redisUtil.get(SystemConstant.studentOauth + "::" + es.getStudentId());
|
|
String sessionId = SessionUtil.digest(es.getIdentity(), Math.abs(authDto.getRoleCodes().toString().hashCode()), source);
|
|
String sessionId = SessionUtil.digest(es.getIdentity(), Math.abs(authDto.getRoleCodes().toString().hashCode()), source);
|
|
objectMap.put("sessionId", sessionId);
|
|
objectMap.put("sessionId", sessionId);
|
|
|
|
+ objectMap.put("platformSource", source);
|
|
redisUtil.setForHash(RedisKeyHelper.mobileAuthCacheKey(mode, code), objectMap);
|
|
redisUtil.setForHash(RedisKeyHelper.mobileAuthCacheKey(mode, code), objectMap);
|
|
if (Objects.nonNull(userType) && userType.contains(RoleEnum.STUDENT.name())) {
|
|
if (Objects.nonNull(userType) && userType.contains(RoleEnum.STUDENT.name())) {
|
|
ret.setMonitorUserId("s_" + sessionId);
|
|
ret.setMonitorUserId("s_" + sessionId);
|
|
@@ -163,6 +158,7 @@ public class TEMobileServiceImpl implements TEMobileService {
|
|
AuthDto authDto = (AuthDto) redisUtil.get(SystemConstant.studentOauth + "::" + es.getStudentId());
|
|
AuthDto authDto = (AuthDto) redisUtil.get(SystemConstant.studentOauth + "::" + es.getStudentId());
|
|
String sessionId = SessionUtil.digest(es.getIdentity(), Math.abs(authDto.getRoleCodes().toString().hashCode()), source);
|
|
String sessionId = SessionUtil.digest(es.getIdentity(), Math.abs(authDto.getRoleCodes().toString().hashCode()), source);
|
|
objectMap.put("sessionId", sessionId);
|
|
objectMap.put("sessionId", sessionId);
|
|
|
|
+ objectMap.put("platformSource", source);
|
|
redisUtil.setForHash(RedisKeyHelper.mobileAuthCacheKey(mode, code), objectMap);
|
|
redisUtil.setForHash(RedisKeyHelper.mobileAuthCacheKey(mode, code), objectMap);
|
|
MobileAuthorizationUploadBean ret = new MobileAuthorizationUploadBean();
|
|
MobileAuthorizationUploadBean ret = new MobileAuthorizationUploadBean();
|
|
ret.setRecordId(recordId);
|
|
ret.setRecordId(recordId);
|
|
@@ -175,7 +171,6 @@ public class TEMobileServiceImpl implements TEMobileService {
|
|
@Override
|
|
@Override
|
|
public MobileAnswerSubmitReponseBean answerSubmit(Long studentId, Long recordId, Integer mainNumber, Integer subNumber, Integer subIndex,
|
|
public MobileAnswerSubmitReponseBean answerSubmit(Long studentId, Long recordId, Integer mainNumber, Integer subNumber, Integer subIndex,
|
|
String answer) {
|
|
String answer) {
|
|
-
|
|
|
|
// 校验当前登录用户和参数一致性
|
|
// 校验当前登录用户和参数一致性
|
|
if (ExamRecordCacheUtil.getId(recordId) == null) {
|
|
if (ExamRecordCacheUtil.getId(recordId) == null) {
|
|
throw new BusinessException("未找到考试记录");
|
|
throw new BusinessException("未找到考试记录");
|