|
@@ -1,10 +1,12 @@
|
|
package com.qmth.distributed.print.api.client;
|
|
package com.qmth.distributed.print.api.client;
|
|
|
|
|
|
-
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.qmth.boot.api.annotation.Aac;
|
|
import com.qmth.boot.api.annotation.Aac;
|
|
import com.qmth.boot.api.constant.ApiConstant;
|
|
import com.qmth.boot.api.constant.ApiConstant;
|
|
import com.qmth.boot.core.enums.Platform;
|
|
import com.qmth.boot.core.enums.Platform;
|
|
|
|
+import com.qmth.distributed.print.business.bean.dto.StudentNumberConfigDto;
|
|
|
|
+import com.qmth.distributed.print.business.bean.dto.StudentNumberLetterRelationShipDto;
|
|
import com.qmth.distributed.print.business.bean.params.ClientLoginParam;
|
|
import com.qmth.distributed.print.business.bean.params.ClientLoginParam;
|
|
import com.qmth.distributed.print.business.service.ClientService;
|
|
import com.qmth.distributed.print.business.service.ClientService;
|
|
import com.qmth.teachcloud.common.bean.auth.ExpireTimeBean;
|
|
import com.qmth.teachcloud.common.bean.auth.ExpireTimeBean;
|
|
@@ -12,6 +14,7 @@ import com.qmth.teachcloud.common.bean.result.LoginClientResult;
|
|
import com.qmth.teachcloud.common.bean.result.LoginResult;
|
|
import com.qmth.teachcloud.common.bean.result.LoginResult;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
import com.qmth.teachcloud.common.entity.BasicSchool;
|
|
import com.qmth.teachcloud.common.entity.BasicSchool;
|
|
|
|
+import com.qmth.teachcloud.common.entity.SysConfig;
|
|
import com.qmth.teachcloud.common.entity.SysUser;
|
|
import com.qmth.teachcloud.common.entity.SysUser;
|
|
import com.qmth.teachcloud.common.entity.TBSession;
|
|
import com.qmth.teachcloud.common.entity.TBSession;
|
|
import com.qmth.teachcloud.common.enums.AppSourceEnum;
|
|
import com.qmth.teachcloud.common.enums.AppSourceEnum;
|
|
@@ -35,6 +38,8 @@ import javax.annotation.Resource;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.validation.Valid;
|
|
import javax.validation.Valid;
|
|
import java.security.NoSuchAlgorithmException;
|
|
import java.security.NoSuchAlgorithmException;
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
+import java.util.List;
|
|
import java.util.Objects;
|
|
import java.util.Objects;
|
|
import java.util.Set;
|
|
import java.util.Set;
|
|
import java.util.concurrent.TimeUnit;
|
|
import java.util.concurrent.TimeUnit;
|
|
@@ -54,12 +59,16 @@ public class ScanController {
|
|
|
|
|
|
@Resource
|
|
@Resource
|
|
private TeachcloudCommonService teachcloudCommonService;
|
|
private TeachcloudCommonService teachcloudCommonService;
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
private CommonCacheService commonCacheService;
|
|
private CommonCacheService commonCacheService;
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
private ClientService clientService;
|
|
private ClientService clientService;
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
private SysUserService sysUserService;
|
|
private SysUserService sysUserService;
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
private RedisUtil redisUtil;
|
|
private RedisUtil redisUtil;
|
|
|
|
|
|
@@ -70,9 +79,10 @@ public class ScanController {
|
|
*/
|
|
*/
|
|
@ApiOperation(value = "登录")
|
|
@ApiOperation(value = "登录")
|
|
@PostMapping("/login")
|
|
@PostMapping("/login")
|
|
- @ApiResponses({@ApiResponse(code = 200, message = "用户信息", response = LoginResult.class)})
|
|
|
|
|
|
+ @ApiResponses({ @ApiResponse(code = 200, message = "用户信息", response = LoginResult.class) })
|
|
@Aac(auth = false)
|
|
@Aac(auth = false)
|
|
- public Result login(@ApiParam(value = "用户信息", required = true) @Valid @RequestBody ClientLoginParam login, BindingResult bindingResult) throws NoSuchAlgorithmException {
|
|
|
|
|
|
+ public Result login(@ApiParam(value = "用户信息", required = true) @Valid @RequestBody ClientLoginParam login,
|
|
|
|
+ BindingResult bindingResult) throws NoSuchAlgorithmException {
|
|
if (bindingResult.hasErrors()) {
|
|
if (bindingResult.hasErrors()) {
|
|
return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
|
|
return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
|
|
}
|
|
}
|
|
@@ -89,7 +99,8 @@ public class ScanController {
|
|
}
|
|
}
|
|
// 是否有打印端和扫描端权限
|
|
// 是否有打印端和扫描端权限
|
|
Set<String> roles = clientService.getRoleByUserId(sysUser.getId());
|
|
Set<String> roles = clientService.getRoleByUserId(sysUser.getId());
|
|
- if(CollectionUtils.isEmpty(roles) || (!roles.contains(RoleTypeEnum.PRINT.name()) && !roles.contains(RoleTypeEnum.SCANNER.name()))){
|
|
|
|
|
|
+ if (CollectionUtils.isEmpty(roles) || (!roles.contains(RoleTypeEnum.PRINT.name()) && !roles.contains(
|
|
|
|
+ RoleTypeEnum.SCANNER.name()))) {
|
|
throw ExceptionResultEnum.ERROR.exception("没有客户端登录权限");
|
|
throw ExceptionResultEnum.ERROR.exception("没有客户端登录权限");
|
|
}
|
|
}
|
|
|
|
|
|
@@ -98,6 +109,15 @@ public class ScanController {
|
|
loginClientResult.setRoleList(roles);
|
|
loginClientResult.setRoleList(roles);
|
|
loginClientResult.setCanAddCard(sysUser.getAllowManualCard());
|
|
loginClientResult.setCanAddCard(sysUser.getAllowManualCard());
|
|
loginClientResult.setCanScanCourse(sysUser.getAllowCourseScan());
|
|
loginClientResult.setCanScanCourse(sysUser.getAllowCourseScan());
|
|
|
|
+ boolean canUserLetter = false;
|
|
|
|
+ SysConfig sysConfig = commonCacheService.addSysConfigCache(basicSchool.getId(), SystemConstant.STUDENT_NUMBER_ALLOCATION);
|
|
|
|
+ if (Objects.nonNull(sysConfig)) {
|
|
|
|
+ StudentNumberConfigDto studentNumberConfigDto = JSON.parseObject(sysConfig.getConfigValue(),
|
|
|
|
+ StudentNumberConfigDto.class);
|
|
|
|
+ canUserLetter = studentNumberConfigDto.getContainsLetter();
|
|
|
|
+ }
|
|
|
|
+ loginClientResult.setCanUseLetter(canUserLetter);
|
|
|
|
+
|
|
return ResultUtil.ok(loginClientResult);
|
|
return ResultUtil.ok(loginClientResult);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -106,7 +126,7 @@ public class ScanController {
|
|
@PostMapping("server/status")
|
|
@PostMapping("server/status")
|
|
public Result status(HttpServletRequest request) {
|
|
public Result status(HttpServletRequest request) {
|
|
ApiStatusVo vo = new ApiStatusVo();
|
|
ApiStatusVo vo = new ApiStatusVo();
|
|
-// vo.setFileUriPrefix(fileUriPrefix);
|
|
|
|
|
|
+ // vo.setFileUriPrefix(fileUriPrefix);
|
|
vo.setVersion(SystemConstant.VERSION_VALUE);
|
|
vo.setVersion(SystemConstant.VERSION_VALUE);
|
|
vo.setTime(System.currentTimeMillis());
|
|
vo.setTime(System.currentTimeMillis());
|
|
return ResultUtil.ok(vo);
|
|
return ResultUtil.ok(vo);
|
|
@@ -123,4 +143,19 @@ public class ScanController {
|
|
vo.setActiveTime(System.currentTimeMillis());
|
|
vo.setActiveTime(System.currentTimeMillis());
|
|
return ResultUtil.ok(vo);
|
|
return ResultUtil.ok(vo);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @ApiOperation(value = "查询学号字母映射关系")
|
|
|
|
+ @PostMapping("config/student_number_letter_relation")
|
|
|
|
+ public Result findStudentNumberLetterRelation() {
|
|
|
|
+ List<StudentNumberLetterRelationShipDto> result = new ArrayList<>();
|
|
|
|
+ SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
|
|
+ Long schoolId = sysUser.getSchoolId();
|
|
|
|
+ SysConfig sysConfig = commonCacheService.addSysConfigCache(schoolId, SystemConstant.STUDENT_NUMBER_ALLOCATION);
|
|
|
|
+ if (Objects.nonNull(sysConfig)) {
|
|
|
|
+ StudentNumberConfigDto studentNumberConfigDto = JSON.parseObject(sysConfig.getConfigValue(),
|
|
|
|
+ StudentNumberConfigDto.class);
|
|
|
|
+ result = studentNumberConfigDto.getRelationList();
|
|
|
|
+ }
|
|
|
|
+ return ResultUtil.ok(result);
|
|
|
|
+ }
|
|
}
|
|
}
|