Bläddra i källkod

增加report基础模块

wangliang 4 år sedan
förälder
incheckning
ab56ccc648

+ 5 - 3
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/CommonServiceImpl.java

@@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.qmth.boot.core.enums.Platform;
 import com.qmth.boot.core.enums.Platform;
+import com.qmth.boot.tools.signature.SignatureType;
 import com.qmth.distributed.print.business.bean.auth.AuthBean;
 import com.qmth.distributed.print.business.bean.auth.AuthBean;
 import com.qmth.distributed.print.business.bean.auth.ExpireTimeBean;
 import com.qmth.distributed.print.business.bean.auth.ExpireTimeBean;
 import com.qmth.distributed.print.business.bean.dto.OrgDto;
 import com.qmth.distributed.print.business.bean.dto.OrgDto;
@@ -20,6 +21,7 @@ import com.qmth.distributed.print.business.enums.*;
 import com.qmth.distributed.print.business.service.*;
 import com.qmth.distributed.print.business.service.*;
 import com.qmth.distributed.print.business.templete.execute.AsyncCreatePdfTempleteService;
 import com.qmth.distributed.print.business.templete.execute.AsyncCreatePdfTempleteService;
 import com.qmth.distributed.print.business.util.*;
 import com.qmth.distributed.print.business.util.*;
+import com.qmth.teachcloud.common.SignatureEntityTest;
 import com.qmth.teachcloud.common.contant.SpringContextHolder;
 import com.qmth.teachcloud.common.contant.SpringContextHolder;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
@@ -709,7 +711,7 @@ public class CommonServiceImpl implements CommonService {
         Set<RoleTypeEnum> roleType = authBean.getRoleList().stream().map(s -> s.getType()).collect(Collectors.toSet());
         Set<RoleTypeEnum> roleType = authBean.getRoleList().stream().map(s -> s.getType()).collect(Collectors.toSet());
         String sessionId = SessionUtil.digest(sysUser.getId(), Math.abs(roleType.toString().hashCode()), platform.name());
         String sessionId = SessionUtil.digest(sysUser.getId(), Math.abs(roleType.toString().hashCode()), platform.name());
         //TODO 测试用
         //TODO 测试用
-//        String test = SignatureEntityTest.build(SignatureType.TOKEN, sessionId, token);
+        String test = SignatureEntityTest.build(SignatureType.TOKEN, sessionId, token);
         ExpireTimeBean expireTime = AuthUtil.getExpireTime(platform);
         ExpireTimeBean expireTime = AuthUtil.getExpireTime(platform);
         TBSession tbSession = new TBSession(sessionId, String.valueOf(sysUser.getId()), roleType.toString(),
         TBSession tbSession = new TBSession(sessionId, String.valueOf(sysUser.getId()), roleType.toString(),
                 platform.name(), platform.name(), deviceId, ServletUtil.getRequest().getLocalAddr(), token,
                 platform.name(), platform.name(), deviceId, ServletUtil.getRequest().getLocalAddr(), token,
@@ -717,8 +719,8 @@ public class CommonServiceImpl implements CommonService {
         tbSessionService.saveOrUpdate(tbSession);
         tbSessionService.saveOrUpdate(tbSession);
         redisUtil.setUserSession(sessionId, tbSession, expireTime.getExpireSeconds());
         redisUtil.setUserSession(sessionId, tbSession, expireTime.getExpireSeconds());
 
 
-//        LoginResult loginResult = new LoginResult(sysUser, sessionId, test, roleType);
-        LoginResult loginResult = new LoginResult(sysUser, sessionId, token, roleType);
+        LoginResult loginResult = new LoginResult(sysUser, sessionId, test, roleType);
+//        LoginResult loginResult = new LoginResult(sysUser, sessionId, token, roleType);
         loginResult.setSchoolInfo(Objects.nonNull(authBean.getSchool()) ? loginResult.new SchoolNativeBean(authBean.getSchool()) : null);
         loginResult.setSchoolInfo(Objects.nonNull(authBean.getSchool()) ? loginResult.new SchoolNativeBean(authBean.getSchool()) : null);
         loginResult.setOrgInfo(Objects.nonNull(authBean.getOrg()) ? loginResult.new OrgNativeBean(authBean.getOrg()) : null);
         loginResult.setOrgInfo(Objects.nonNull(authBean.getOrg()) ? loginResult.new OrgNativeBean(authBean.getOrg()) : null);
         loginResult.setTime(System.currentTimeMillis());
         loginResult.setTime(System.currentTimeMillis());

+ 13 - 0
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/entity/TBExamStudent.java

@@ -27,6 +27,11 @@ public class TBExamStudent implements Serializable {
     @TableId(value = "id")
     @TableId(value = "id")
     private Long id;
     private Long id;
 
 
+    @ApiModelProperty(value = "考试id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    @TableField(value = "exam_id")
+    private Long examId;
+
     @ApiModelProperty(value = "姓名")
     @ApiModelProperty(value = "姓名")
     @TableField(value = "name")
     @TableField(value = "name")
     private String name;
     private String name;
@@ -85,6 +90,14 @@ public class TBExamStudent implements Serializable {
     @TableField(value = "current")
     @TableField(value = "current")
     private Boolean current;
     private Boolean current;
 
 
+    public Long getExamId() {
+        return examId;
+    }
+
+    public void setExamId(Long examId) {
+        this.examId = examId;
+    }
+
     public static long getSerialVersionUID() {
     public static long getSerialVersionUID() {
         return serialVersionUID;
         return serialVersionUID;
     }
     }

+ 44 - 0
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/BasicAttachmentController.java

@@ -0,0 +1,44 @@
+package com.qmth.teachcloud.report.api;
+
+
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.distributed.print.business.entity.BasicAttachment;
+import com.qmth.distributed.print.business.service.BasicAttachmentService;
+import com.qmth.teachcloud.common.util.Result;
+import com.qmth.teachcloud.common.util.ResultUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 所有附件记录表 前端控制器
+ * </p>
+ *
+ * @author xf
+ * @since 2021-03-23
+ */
+@Api(tags = "文件上传Controller")
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.common}/file")
+public class BasicAttachmentController {
+
+    @Autowired
+    private BasicAttachmentService basicAttachmentService;
+
+    /**
+     * 文件查询
+     * @return
+     */
+    @ApiOperation(value = "文件查询")
+    @RequestMapping(value = "/get_one", method = RequestMethod.POST)
+    public Result getOne(@RequestParam(required = true) Long id) {
+        BasicAttachment attachment = basicAttachmentService.getById(id);
+        return ResultUtil.ok(attachment);
+    }
+}
+

+ 93 - 0
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/BasicCourseController.java

@@ -0,0 +1,93 @@
+package com.qmth.teachcloud.report.api;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.distributed.print.business.entity.BasicCourse;
+import com.qmth.distributed.print.business.entity.SysUser;
+import com.qmth.distributed.print.business.service.BasicCourseService;
+import com.qmth.distributed.print.business.util.ServletUtil;
+import com.qmth.teachcloud.common.util.Result;
+import com.qmth.teachcloud.common.util.ResultUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 课程表 前端控制器
+ * </p>
+ *
+ * @author xf
+ * @since 2021-03-23
+ */
+@Api(tags = "课程Controller")
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.basic}/course")
+public class BasicCourseController {
+
+    @Autowired
+    private BasicCourseService basicCourseService;
+
+    /**
+     * 查询
+     * @param code
+     * @param name
+     * @param pageNumber
+     * @param pageSize
+     * @return
+     */
+    @ApiOperation(value = "查询")
+    @RequestMapping(value = "/list", method = RequestMethod.POST)
+    public Result list(@RequestParam(value = "code", required = false) String code,
+                       @RequestParam(value = "name", required = false) String name,
+                       @RequestParam Integer pageNumber,
+                       @RequestParam Integer pageSize){
+        IPage<BasicCourse> userDtos = basicCourseService.list(code, name, pageNumber, pageSize);
+        return ResultUtil.ok(userDtos);
+    }
+
+    /**
+     * 模糊查询
+     * @param param
+     * @return
+     */
+    @ApiOperation(value = "模糊查询")
+    @RequestMapping(value = "/query", method = RequestMethod.POST)
+    public Result query(@RequestParam(value = "param", required = false) String param,
+                        @RequestParam(value = "printPlanId", required = false) Long printPlanId){
+        List<BasicCourse> userDtos = basicCourseService.list(param, printPlanId);
+        return ResultUtil.ok(userDtos);
+    }
+
+    /**
+     * 新增/修改
+     * @param course
+     * @return
+     */
+    @ApiOperation(value = "新增/修改")
+    @RequestMapping(value = "/save", method = RequestMethod.POST)
+    public Result save(@RequestBody BasicCourse course){
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
+        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        course.setSchoolId(schoolId);
+        boolean isSuccess = basicCourseService.saveCourse(course,sysUser.getId());
+        return ResultUtil.ok(isSuccess);
+    }
+
+    /**
+     * 删除
+     * @param course
+     * @return
+     */
+    @ApiOperation(value = "删除")
+    @RequestMapping(value = "/remove", method = RequestMethod.POST)
+    public Result remove(@RequestBody BasicCourse course){
+        boolean isSuccess = basicCourseService.remove(course.getId());
+        return ResultUtil.ok(isSuccess);
+    }
+}
+

+ 45 - 0
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/BasicSchoolController.java

@@ -0,0 +1,45 @@
+package com.qmth.teachcloud.report.api;
+
+
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.distributed.print.business.bean.dto.SchoolDto;
+import com.qmth.distributed.print.business.service.BasicSchoolService;
+import com.qmth.teachcloud.common.util.Result;
+import com.qmth.teachcloud.common.util.ResultUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 学校表 前端控制器
+ * </p>
+ *
+ * @author xf
+ * @since 2021-03-23
+ */
+@Api(tags = "学校Controller")
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.common}/school")
+public class BasicSchoolController {
+
+    @Autowired
+    private BasicSchoolService basicSchoolService;
+
+    /**
+     * 学校查询
+     * @return
+     */
+    @ApiOperation(value = "查询")
+    @RequestMapping(value = "/list", method = RequestMethod.POST)
+    public Result list() {
+        List<SchoolDto> list = basicSchoolService.listSchool();
+        return ResultUtil.ok(list);
+    }
+}
+

+ 310 - 0
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/SysController.java

@@ -0,0 +1,310 @@
+package com.qmth.teachcloud.report.api;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.qmth.boot.api.annotation.Aac;
+import com.qmth.boot.api.annotation.BOOL;
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.boot.api.exception.ApiException;
+import com.qmth.distributed.print.business.bean.auth.AuthBean;
+import com.qmth.distributed.print.business.bean.dto.MenuDto;
+import com.qmth.distributed.print.business.bean.params.LoginParam;
+import com.qmth.distributed.print.business.bean.result.EditResult;
+import com.qmth.distributed.print.business.bean.result.LoginResult;
+import com.qmth.distributed.print.business.config.DictionaryConfig;
+import com.qmth.distributed.print.business.entity.*;
+import com.qmth.distributed.print.business.enums.DownloadFileEnum;
+import com.qmth.distributed.print.business.enums.RoleTypeEnum;
+import com.qmth.distributed.print.business.enums.UploadFileEnum;
+import com.qmth.distributed.print.business.service.*;
+import com.qmth.distributed.print.business.util.RedisUtil;
+import com.qmth.distributed.print.business.util.ServletUtil;
+import com.qmth.teachcloud.common.contant.SystemConstant;
+import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
+import com.qmth.teachcloud.common.util.Result;
+import com.qmth.teachcloud.common.util.ResultUtil;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import javax.validation.Valid;
+import java.security.NoSuchAlgorithmException;
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+ * @Date: 2021/3/30.
+ */
+@Api(tags = "系统Controller")
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.common}")
+public class SysController {
+    private final static Logger log = LoggerFactory.getLogger(SysController.class);
+
+    @Autowired
+    private SysUserService sysUserService;
+
+    @Autowired
+    private BasicVerifyCodeService basicVerifyCodeService;
+
+    @Autowired
+    private DictionaryConfig dictionaryConfig;
+
+    @Resource
+    CacheService cacheService;
+
+    @Resource
+    TBSessionService tbSessionService;
+
+    @Resource
+    RedisUtil redisUtil;
+
+    @Resource
+    CommonService commonService;
+
+    @Resource
+    TBTaskService tbTaskService;
+
+    @Resource
+    BasicAttachmentService basicAttachmentService;
+
+    @Autowired
+    private SysConfigService sysConfigService;
+
+    @Autowired
+    private SysUserRoleService sysUserRoleService;
+
+    /**
+     * 登录
+     *
+     * @param login
+     * @return
+     */
+    @ApiOperation(value = "登录")
+    @RequestMapping(value = "/login", method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "用户信息", response = LoginResult.class)})
+    @Aac(auth = BOOL.FALSE)
+    public Result login(@ApiParam(value = "用户信息", required = true) @Valid @RequestBody LoginParam login, BindingResult bindingResult) throws NoSuchAlgorithmException {
+        if (bindingResult.hasErrors()) {
+            return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
+        }
+
+        BasicSchool basicSchool = null;
+        if (!Objects.equals(login.getSchoolCode().toUpperCase(), RoleTypeEnum.ADMIN.name())) {
+            basicSchool = cacheService.schoolCache(login.getSchoolCode());
+            if (Objects.isNull(basicSchool)) {
+                throw ExceptionResultEnum.SCHOOL_NO_DATA.exception();
+            }
+            if (Objects.nonNull(basicSchool.getEnable()) && !basicSchool.getEnable()) {
+                throw ExceptionResultEnum.SCHOOL_ENABLE.exception();
+            }
+        }
+        QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
+        wrapper.lambda().eq(SysUser::getLoginName, login.getLoginName());
+        if (!Objects.equals(login.getSchoolCode().toUpperCase(), RoleTypeEnum.ADMIN.name())) {
+            wrapper.lambda().eq(SysUser::getSchoolId, basicSchool.getId());
+        }
+        List<SysUser> userList = sysUserService.list(wrapper);
+        //用户不存在
+        if (Objects.isNull(userList) || userList.size() == 0) {
+            throw ExceptionResultEnum.USER_NO_DATA.exception();
+        }
+        if (Objects.equals(login.getSchoolCode().toUpperCase(), RoleTypeEnum.ADMIN.name())) {
+            userList.forEach(o -> {
+                AuthBean authBean = commonService.getUserAuth(o.getId());
+                if (Objects.nonNull(authBean) && Objects.nonNull(authBean.getRoleList()) && authBean.getRoleList().size() > 0) {
+                    Set<RoleTypeEnum> roleType = authBean.getRoleList().stream().map(s -> s.getType()).collect(Collectors.toSet());
+                    if (!roleType.contains(RoleTypeEnum.ADMIN) && !roleType.contains(RoleTypeEnum.CUSTOMER)) {
+                        throw ExceptionResultEnum.ERROR.exception("学校代码为admin只允许超级管理员登录");
+                    }
+                }
+            });
+        }
+        if (userList.size() > 1) {
+            throw ExceptionResultEnum.ERROR.exception("查询的用户有多条");
+        }
+        SysUser sysUser = userList.get(0);
+        if (Objects.nonNull(sysUser.getSchoolId()) && sysUser.getSchoolId().longValue() != basicSchool.getId().longValue()) {
+            throw ExceptionResultEnum.ERROR.exception("用户学校不匹配");
+        }
+//        校验验证码
+//        SysConfig value = sysConfigService.getByKey("sys.code.enable");
+//        if (Objects.nonNull(value) && value.getConfigValue().equals("true")) {
+//            String code = login.getCode();
+//            if (Objects.isNull(code)) {
+//                throw ExceptionResultEnum.ERROR.exception("验证码为空");
+//            }
+//            if (!dictionaryConfig.smsDomain().getSmsNormalCode().equals(code)) {
+//                QueryWrapper<BasicVerifyCode> codeWrapper = new QueryWrapper<>();
+//                codeWrapper.lambda().eq(BasicVerifyCode::getMobileNumber, sysUser.getMobileNumber()).eq(BasicVerifyCode::getUserId, sysUser.getId());
+//                BasicVerifyCode accessControl = basicVerifyCodeService.getOne(codeWrapper);
+//                if (accessControl == null || (accessControl != null && !accessControl.getVerifyCode().equals(code))) {
+//                    throw ExceptionResultEnum.ERROR.exception("短信验证码错误,请仔细核对后再次输入");
+//                }
+//
+//                if (new Date(accessControl.getExpireTime()).before(new Date())) {
+//                    throw ExceptionResultEnum.ERROR.exception("短信验证码已过期");
+//                }
+//            }
+//        }
+        return ResultUtil.ok(commonService.login(login.getPassword(), sysUser));
+    }
+
+    /**
+     * 登出
+     *
+     * @return
+     */
+    @ApiOperation(value = "登出")
+    @RequestMapping(value = "/logout", method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
+    public Result logout() {
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
+        TBSession tbSession = (TBSession) ServletUtil.getRequestSession();
+        AuthBean authBean = cacheService.userAuthCache(sysUser.getId());
+        if (Objects.isNull(authBean)) {
+            throw ExceptionResultEnum.NOT_LOGIN.exception();
+        }
+        tbSessionService.removeById(tbSession.getId());
+        redisUtil.deleteUserSession(tbSession.getId());
+        cacheService.removeUserCache(sysUser.getId());
+        cacheService.removeUserAuthCache(sysUser.getId());
+        return ResultUtil.ok(new EditResult(sysUser.getId()));
+    }
+
+    /**
+     * 发送验证码
+     *
+     * @param loginParam
+     * @return
+     */
+    @ApiOperation(value = "发送验证码")
+    @RequestMapping(value = "/get_verify_code", method = RequestMethod.POST)
+    @Aac(auth = BOOL.FALSE)
+    public Object getverifyCode(@RequestBody LoginParam loginParam) {
+        String loginName = loginParam.getLoginName();
+        String password = loginParam.getPassword();
+        QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
+        if(StringUtils.isNotBlank(loginParam.getSchoolCode())) {
+            BasicSchool basicSchool = cacheService.schoolCache(loginParam.getSchoolCode());
+            wrapper.lambda().eq(SysUser::getSchoolId, basicSchool.getId());
+        }
+        wrapper.lambda().eq(SysUser::getLoginName, loginName);
+        SysUser user = sysUserService.getOne(wrapper);
+        //用户不存在
+        if (Objects.isNull(user)) {
+            throw ExceptionResultEnum.ERROR.exception("用户不存在");
+        }
+        if (!password.equals(user.getPassword())) {
+            throw ExceptionResultEnum.ERROR.exception("密码错误");
+        }
+        String mobileNumber = user.getMobileNumber();
+        if (Objects.isNull(mobileNumber)) {
+            throw ExceptionResultEnum.ERROR.exception("用户未绑定手机号码");
+        }
+        basicVerifyCodeService.sendVeirfyCode(mobileNumber, user.getId());
+        return ResultUtil.ok(mobileNumber, "");
+    }
+
+    @ApiOperation(value = "根据机构代码查询机构信息接口")
+    @RequestMapping(value = "/school/query_by_school_code", method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "学校信息", response = EditResult.class)})
+    @Aac(auth = BOOL.FALSE)
+    public Result queryBySchoolCode(@ApiParam(value = "机构code", required = true) @RequestParam String code) {
+        if (!Objects.equals(code.toUpperCase(), RoleTypeEnum.ADMIN.name())) {
+            BasicSchool basicSchool = cacheService.schoolCache(code);
+            if (Objects.isNull(basicSchool)) {
+                throw ExceptionResultEnum.SCHOOL_NO_DATA.exception();
+            }
+            Map<String, String> map = new HashMap<>();
+            map.put(SystemConstant.LOGO, basicSchool.getLogo());
+            map.put("name", basicSchool.getName());
+            return ResultUtil.ok(map);
+        } else {
+            Map<String, String> map = new HashMap<>();
+            map.put(SystemConstant.LOGO, dictionaryConfig.sysDomain().getAdminLogoUrl());
+            map.put("name", null);
+            return ResultUtil.ok(map);
+        }
+    }
+
+    @ApiOperation(value = "文件上传接口")
+    @RequestMapping(value = "/file/upload", method = RequestMethod.POST)
+    @Transactional
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
+    public Result fileUpload(@ApiParam(value = "上传文件", required = true) @RequestParam MultipartFile file,
+                             @ApiParam(value = "上传文件类型", required = true) @RequestParam UploadFileEnum type) {
+        BasicAttachment basicAttachment = null;
+        try {
+            basicAttachment = basicAttachmentService.saveAttachment(file, ServletUtil.getRequestMd5(), type);
+            if (Objects.isNull(basicAttachment)) {
+                throw ExceptionResultEnum.ATTACHMENT_ERROR.exception();
+            }
+        } catch (Exception e) {
+            log.error("请求出错", e);
+            if (Objects.nonNull(basicAttachment)) {
+                basicAttachmentService.deleteAttachment(basicAttachment);
+            }
+            if (e instanceof ApiException) {
+                ResultUtil.error((ApiException) e, e.getMessage());
+            } else {
+                ResultUtil.error(e.getMessage());
+            }
+        }
+
+        return ResultUtil.ok(new EditResult(basicAttachment.getId(), commonService.filePreview(basicAttachment.getPath()), basicAttachment.getPages()));
+    }
+
+    @ApiOperation(value = "文件下载接口")
+    @RequestMapping(value = "/file/download", method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
+    public Result fileDownload(@ApiParam(value = "任务id", required = true) @RequestParam String id,
+                               @ApiParam(value = "下载文件类型", required = true) @RequestParam DownloadFileEnum type) {
+        TBTask tbTask = tbTaskService.getById(Long.parseLong(id));
+        if (Objects.isNull(tbTask)) {
+            throw ExceptionResultEnum.TASK_NO_DATA.exception();
+        }
+        String path = null;
+        switch (type.ordinal()) {
+            case 0:
+                path = tbTask.getImportFilePath();
+                break;
+            case 1:
+                path = tbTask.getReportFilePath();
+                break;
+            default:
+                path = tbTask.getResultFilePath();
+                break;
+        }
+        if (Objects.isNull(path)) {
+            throw ExceptionResultEnum.PATH_NO_DATA.exception();
+        }
+        return ResultUtil.ok(new EditResult(commonService.filePreview(path)));
+    }
+
+    @ApiOperation(value = "文件预览接口")
+    @RequestMapping(value = "/file/preview", method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
+    public Result filePreview(@ApiParam(value = "附件id", required = false, defaultValue = "") @RequestParam(value = "id", required = false, defaultValue = "") String id) {
+        if (StringUtils.isBlank(id)) {
+            throw ExceptionResultEnum.ERROR.exception("没有附件");
+        } else {
+            BasicAttachment basicAttachment = basicAttachmentService.getById(Long.parseLong(id));
+            return ResultUtil.ok(new EditResult(commonService.filePreview(basicAttachment.getPath())));
+        }
+    }
+
+    @ApiOperation(value = "查询用户权限")
+    @RequestMapping(value = "/get_menu", method = RequestMethod.POST)
+    public Result getMenu() {
+        List<MenuDto> list = sysUserRoleService.listByUserId();
+        return ResultUtil.ok(list);
+    }
+
+}

+ 96 - 0
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/SysPrivilegeController.java

@@ -0,0 +1,96 @@
+package com.qmth.teachcloud.report.api;
+
+
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.distributed.print.business.bean.dto.PrivilegeDto;
+import com.qmth.distributed.print.business.entity.SysPrivilege;
+import com.qmth.distributed.print.business.service.SysPrivilegeService;
+import com.qmth.teachcloud.common.util.Result;
+import com.qmth.teachcloud.common.util.ResultUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 菜单权限表 前端控制器
+ * </p>
+ *
+ * @author xf
+ * @since 2021-03-23
+ */
+@Api(tags = "菜单权限Controller")
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.sys}/privilege")
+public class SysPrivilegeController {
+
+    @Autowired
+    private SysPrivilegeService sysPrivilegeService;
+
+    /**
+     * 查询
+     *
+     * @return
+     */
+    @ApiOperation(value = "查询")
+    @RequestMapping(value = "/list", method = RequestMethod.POST)
+    public Result list() {
+        List<PrivilegeDto> privilegeDtoList = sysPrivilegeService.listPrivilegeTree();
+        return ResultUtil.ok(privilegeDtoList);
+    }
+
+    /**
+     * 查询需要授权的菜单
+     *
+     * @return
+     */
+    @ApiOperation(value = "查询需要授权的菜单")
+    @RequestMapping(value = "/list_auth", method = RequestMethod.POST)
+    public Result listAuth() {
+        List<PrivilegeDto> privilegeDtoList = sysPrivilegeService.listPrivilegeTreeAuth();
+        return ResultUtil.ok(privilegeDtoList);
+    }
+
+    /**
+     * 新增/修改
+     *
+     * @param privilege
+     * @return
+     */
+    @ApiOperation(value = "新增/修改")
+    @RequestMapping(value = "/save", method = RequestMethod.POST)
+    public Result save( @RequestBody SysPrivilege privilege) {
+        String id = sysPrivilegeService.savePrivilege(privilege);
+        return ResultUtil.ok(id,"");
+    }
+
+    /**
+     * 删除
+     *
+     * @param privilege
+     * @return
+     */
+    @ApiOperation(value = "删除")
+    @RequestMapping(value = "/remove", method = RequestMethod.POST)
+    public Result remove(@RequestBody SysPrivilege privilege) {
+        boolean isSuccess = sysPrivilegeService.remove(privilege.getId());
+        return ResultUtil.ok(isSuccess);
+    }
+
+    /**
+     * 角色已绑定权限列表
+     *
+     * @param roleId
+     * @return
+     */
+    @ApiOperation(value = "角色已绑定权限列表")
+    @RequestMapping(value = "/get_role_privileges", method = RequestMethod.POST)
+    public Result getRolePrivileges(@RequestParam(value = "roleId", required = true) Long roleId) {
+        List<String> list = sysPrivilegeService.getRolePrivileges(roleId);
+        return ResultUtil.ok(list);
+    }
+}
+

+ 115 - 0
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/SysRoleController.java

@@ -0,0 +1,115 @@
+package com.qmth.teachcloud.report.api;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.distributed.print.business.entity.SysRole;
+import com.qmth.distributed.print.business.service.SysRoleService;
+import com.qmth.teachcloud.common.util.Result;
+import com.qmth.teachcloud.common.util.ResultUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 角色表 前端控制器
+ * </p>
+ *
+ * @author xf
+ * @since 2021-03-23
+ */
+@Api(tags = "角色Controller")
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.sys}/role")
+public class SysRoleController {
+
+    @Autowired
+    private SysRoleService sysRoleService;
+
+    /**
+     * 查询
+     *
+     * @param name
+     * @param enable
+     * @param pageNumber
+     * @param pageSize
+     * @return
+     */
+    @ApiOperation(value = "查询")
+    @RequestMapping(value = "/list", method = RequestMethod.POST)
+    public Result list(@RequestParam(value = "name", required = false) String name,
+                       @RequestParam(value = "enable", required = false) Boolean enable,
+                       @RequestParam(value = "pageNumber", required = true) Integer pageNumber,
+                       @RequestParam(value = "pageSize", required = true) Integer pageSize) {
+        IPage<SysRole> userDtos = sysRoleService.list(name, enable, pageNumber, pageSize);
+        return ResultUtil.ok(userDtos);
+    }
+
+    /**
+     * 新增用户时查询角色方法
+     * @return
+     */
+    @ApiOperation(value = "新增用户时查询角色方法")
+    @RequestMapping(value = "/list_to_user", method = RequestMethod.POST)
+    public Result listToUser() {
+        List<SysRole> userDtos = sysRoleService.listToUser();
+        return ResultUtil.ok(userDtos);
+    }
+
+    /**
+     * 新增/修改
+     *
+     * @param role
+     * @return
+     */
+    @ApiOperation(value = "新增/修改")
+    @RequestMapping(value = "/save", method = RequestMethod.POST)
+    public Result save(@RequestBody SysRole role) {
+        boolean isSuccess = sysRoleService.saveRole(role);
+        return ResultUtil.ok(isSuccess);
+    }
+
+    /**
+     * 启用/禁用
+     *
+     * @param role
+     * @return
+     */
+    @ApiOperation(value = "启用/禁用")
+    @RequestMapping(value = "/enable", method = RequestMethod.POST)
+    public Result enable(@RequestBody SysRole role) {
+        boolean isSuccess = sysRoleService.enable(role);
+        return ResultUtil.ok(isSuccess);
+    }
+
+    /**
+     * 删除
+     *
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "删除")
+    @RequestMapping(value = "/remove", method = RequestMethod.POST)
+    public Result remove(Long id) {
+        boolean isSuccess = sysRoleService.remove(id);
+        return ResultUtil.ok(isSuccess);
+    }
+
+    /**
+     * 用户已绑定角色列表
+     *
+     * @param userId
+     * @return
+     */
+    @ApiOperation(value = "用户已绑定角色列表")
+    @RequestMapping(value = "/get_user_roles", method = RequestMethod.POST)
+    public Result getUserRoles(@RequestParam(value = "userId", required = true) Long userId) {
+        List<Long> list = sysRoleService.getUserRoles(userId);
+        return ResultUtil.ok(list);
+    }
+}
+

+ 171 - 0
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/SysUserController.java

@@ -0,0 +1,171 @@
+package com.qmth.teachcloud.report.api;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.distributed.print.business.bean.dto.BlurryUserDto;
+import com.qmth.distributed.print.business.bean.dto.UserDto;
+import com.qmth.distributed.print.business.bean.params.UserSaveParams;
+import com.qmth.distributed.print.business.entity.SysUser;
+import com.qmth.distributed.print.business.service.SysUserService;
+import com.qmth.teachcloud.common.util.Result;
+import com.qmth.teachcloud.common.util.ResultUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.security.NoSuchAlgorithmException;
+import java.util.List;
+
+/**
+ * <p>
+ * 用户表 前端控制器
+ * </p>
+ *
+ * @author xf
+ * @since 2021-03-23
+ */
+@Api(tags = "用户Controller")
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.sys}/user")
+public class SysUserController {
+    private final static Logger log = LoggerFactory.getLogger(SysUserController.class);
+
+    @Autowired
+    private SysUserService sysUserService;
+
+    /**
+     * 查询
+     *
+     * @param loginName
+     * @param roleId
+     * @param enable
+     * @return
+     */
+    @ApiOperation(value = "查询")
+    @RequestMapping(value = "/list", method = RequestMethod.POST)
+    public Result list(@RequestParam(value = "loginName", required = false) String loginName,
+                       @RequestParam(value = "roleId", required = false) String roleId,
+                       @RequestParam(value = "enable", required = false) Boolean enable,
+                       @RequestParam(value = "pageNumber", required = true) Integer pageNumber,
+                       @RequestParam(value = "pageSize", required = true) Integer pageSize) {
+        IPage<UserDto> userDtos = sysUserService.list(loginName, roleId, enable, pageNumber, pageSize);
+        return ResultUtil.ok(userDtos);
+    }
+
+    /**
+     * 查询
+     *
+     * @param realName
+     * @param enable
+     * @return
+     */
+    @ApiOperation(value = "查询")
+    @RequestMapping(value = "/list_customer", method = RequestMethod.POST)
+    public Result listCustomer(@RequestParam(value = "realName", required = false) String realName,
+                               @RequestParam(value = "enable", required = false) Boolean enable,
+                               @RequestParam(value = "pageNumber", required = true) Integer pageNumber,
+                               @RequestParam(value = "pageSize", required = true) Integer pageSize) {
+        IPage<UserDto> userDtos = sysUserService.listCustomer(realName, enable, pageNumber, pageSize);
+        return ResultUtil.ok(userDtos);
+    }
+
+    /**
+     * 根据科目查询命题老师
+     *
+     * @param courseCode
+     * @param param
+     * @return
+     */
+    @ApiOperation(value = "根据科目查询命题老师")
+    @RequestMapping(value = "/user_list", method = RequestMethod.POST)
+    public Result userQuery(@RequestParam(value = "courseCode", required = false) String courseCode,
+                            @RequestParam(value = "param", required = false) String param) {
+        List<BlurryUserDto> list = sysUserService.listUser(courseCode, param);
+        return ResultUtil.ok(list);
+    }
+
+    /**
+     * 新增/修改
+     *
+     * @param userSaveParams
+     * @return
+     */
+    @ApiOperation(value = "新增/修改")
+    @RequestMapping(value = "/save", method = RequestMethod.POST)
+    public Result save(@ApiParam(value = "用户信息", required = true) @Valid @RequestBody UserSaveParams userSaveParams, BindingResult bindingResult) {
+        if (bindingResult.hasErrors()) {
+            return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
+        }
+        return ResultUtil.ok(sysUserService.saveUser(userSaveParams));
+    }
+
+    /**
+     * 新增客服
+     *
+     * @param userSaveParams
+     * @return
+     */
+    @ApiOperation(value = "新增客服")
+    @RequestMapping(value = "/save_customer", method = RequestMethod.POST)
+    public Result saveCustomer(@ApiParam(value = "用户信息", required = true) @Valid @RequestBody UserSaveParams userSaveParams, BindingResult bindingResult) {
+        if (bindingResult.hasErrors()) {
+            return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
+        }
+        return ResultUtil.ok(sysUserService.saveCustomer(userSaveParams));
+    }
+
+    /**
+     * 启用/禁用
+     *
+     * @param user
+     * @return
+     */
+    @ApiOperation(value = "启用/禁用")
+    @RequestMapping(value = "/enable", method = RequestMethod.POST)
+    public Result enable(@RequestBody SysUser user) throws NoSuchAlgorithmException {
+        return ResultUtil.ok(sysUserService.enable(user));
+    }
+
+    /**
+     * 重置密码
+     *
+     * @param user
+     * @return
+     */
+    @ApiOperation(value = "重置密码")
+    @RequestMapping(value = "/reset_password", method = RequestMethod.POST)
+    public Result resetPassword(@RequestBody SysUser user) throws NoSuchAlgorithmException {
+        return ResultUtil.ok(sysUserService.resetPassword(user.getId()));
+    }
+
+    /**
+     * 修改密码
+     *
+     * @return
+     */
+    @ApiOperation(value = "修改密码")
+    @RequestMapping(value = "/update_password", method = RequestMethod.POST)
+    public Result updatePassword(@RequestBody SysUser user) throws NoSuchAlgorithmException {
+        return ResultUtil.ok(sysUserService.updatePassword(user));
+    }
+
+    /**
+     * 绑定角色
+     *
+     * @param sysUser
+     * @return
+     */
+    @ApiOperation(value = "绑定角色")
+    @RequestMapping(value = "/bind_roles", method = RequestMethod.POST)
+    public Result bindRoles(@RequestBody SysUser sysUser) {
+        boolean isSuccess = sysUserService.bindRoles(sysUser);
+        return ResultUtil.ok(isSuccess);
+    }
+}
+

+ 0 - 8
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/TBExamController.java

@@ -29,12 +29,4 @@ import java.security.NoSuchAlgorithmException;
 @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.common}")
 @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.common}")
 public class TBExamController {
 public class TBExamController {
 
 
-    @ApiOperation(value = "登录")
-    @RequestMapping(value = "/test", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "用户信息", response = Result.class)})
-    @Aac(auth = BOOL.FALSE)
-    public Result test() {
-        System.out.println("test is come in");
-        return ResultUtil.ok(true);
-    }
 }
 }

+ 115 - 0
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/TBTaskController.java

@@ -0,0 +1,115 @@
+package com.qmth.teachcloud.report.api;
+
+import com.alibaba.fastjson.JSONArray;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.distributed.print.business.bean.params.ArraysParams;
+import com.qmth.distributed.print.business.bean.result.EditResult;
+import com.qmth.distributed.print.business.bean.result.TaskListResult;
+import com.qmth.distributed.print.business.entity.SysUser;
+import com.qmth.distributed.print.business.entity.TBTask;
+import com.qmth.distributed.print.business.enums.TaskResultEnum;
+import com.qmth.distributed.print.business.enums.TaskStatusEnum;
+import com.qmth.distributed.print.business.enums.TaskTypeEnum;
+import com.qmth.distributed.print.business.service.TBTaskService;
+import com.qmth.distributed.print.business.templete.execute.AsyncCreatePdfTempleteService;
+import com.qmth.distributed.print.business.util.ServletUtil;
+import com.qmth.teachcloud.common.contant.SystemConstant;
+import com.qmth.teachcloud.common.util.Result;
+import com.qmth.teachcloud.common.util.ResultUtil;
+import io.swagger.annotations.*;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.io.IOException;
+import java.util.*;
+
+/**
+ * <p>
+ * 导入导出任务表 前端控制器
+ * </p>
+ *
+ * @author wangliang
+ * @since 2021-03-19
+ */
+@Api(tags = "数据管理-任务管理Controller")
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.data}")
+public class TBTaskController {
+
+    @Resource
+    TBTaskService tbTaskService;
+
+//    @Resource
+//    DictionaryConfig dictionaryConfig;
+
+//    @Resource
+//    AsyncCreatePdfTempleteService asyncCreatePdfTempleteService;
+
+    @ApiOperation(value = "任务管理查询接口")
+    @RequestMapping(value = "/task/query", method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "任务管理列表信息", response = TaskListResult.class)})
+    public Result taskQuery(@ApiParam(value = "印刷计划id", required = false) @RequestParam(required = false) String printPlanId,
+                            @ApiParam(value = "任务状态", required = false) @RequestParam(required = false) TaskStatusEnum status,
+                            @ApiParam(value = "任务类型", required = false) @RequestParam(required = false) TaskTypeEnum type,
+                            @ApiParam(value = "任务数据结果", required = false) @RequestParam(required = false) TaskResultEnum result,
+                            @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber,
+                            @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
+        IPage<TaskListResult> taskListResultIPage = tbTaskService.query(new Page<>(pageNumber, pageSize), Objects.nonNull(ServletUtil.getRequestHeaderSchoolId()) ? Long.parseLong(ServletUtil.getRequestHeaderSchoolId().toString()) : null, SystemConstant.convertIdToLong(printPlanId), status, type, result);
+        if (Objects.nonNull(taskListResultIPage) && Objects.nonNull(taskListResultIPage.getRecords()) && taskListResultIPage.getRecords().size() > 0) {
+            List<TaskListResult> taskListResultList = taskListResultIPage.getRecords();
+            for (TaskListResult taskListResult : taskListResultList) {
+                if (Objects.equals(taskListResult.getStatus(), TaskStatusEnum.FINISH.getTitle()) && Objects.equals(taskListResult.getResult(), TaskResultEnum.ERROR.getTitle())
+//                        && taskListResult.getResetCount() >= dictionaryConfig.sysDomain().getAutoCreatePdfResetMaxCount()
+                        && Objects.equals(taskListResult.getType(), TaskTypeEnum.CREATE_PDF.getTitle())
+                        && Objects.isNull(taskListResult.getErrorMessage())) {
+                    taskListResult.setResetCreatePdf(true);
+                }
+            }
+        }
+        return ResultUtil.ok(taskListResultIPage);
+    }
+
+//    @ApiOperation(value = "重新生成pdf")
+//    @RequestMapping(value = "/task/reset_create_pdf", method = RequestMethod.POST)
+//    @ApiResponses({@ApiResponse(code = 200, message = "重新生成pdf", response = EditResult.class)})
+//    public Result resetCreatePdf(@ApiParam(value = "任务id", required = true) @RequestParam String id) throws IOException {
+//        Long taskId = Long.parseLong(id);
+//        TBTask tbTask = tbTaskService.getById(taskId);
+////        tbTask.setVersion(new AtomicInteger(tbTask.getVersion()).incrementAndGet());
+//        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
+//        Map<String, Object> map = new HashMap<>();
+//        if (Objects.nonNull(tbTask.getRemark())) {
+//            JSONArray jsonArray = JSONArray.parseArray(tbTask.getRemark());
+//            ArraysParams arraysParams = new ArraysParams(jsonArray.toArray(new Long[jsonArray.size()]));
+//            map.computeIfAbsent("examDetailCourseIds", v -> Arrays.asList(arraysParams.getIds()));
+//        }
+//        map.computeIfAbsent(SystemConstant.TASK, v -> tbTask);
+//        map.computeIfAbsent(SystemConstant.USER, v -> sysUser);
+//        map.computeIfAbsent(SystemConstant.MANUAL, v -> true);
+//        asyncCreatePdfTempleteService.createPdf(map, null);
+//        return ResultUtil.ok(new EditResult());
+//    }
+
+//    @ApiOperation(value = "任务管理_批量删除&清空接口")
+//    @RequestMapping(value = "/task/delete", method = RequestMethod.POST)
+//    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
+//    @Transactional
+//    public Result taskDelete(@ApiParam(value = "数组id和选择类型", required = true) @RequestBody ChooseParams chooseParams) {
+//        if ((Objects.isNull(chooseParams.getIds()) || chooseParams.getIds().length == 0) && Objects.isNull(chooseParams.getType())) {
+//            throw ExceptionResultEnum.PARAMS_ERROR.exception("数据id或选择类型必须选一个");
+//        }
+//        if (Objects.nonNull(chooseParams.getType())) {
+//            QueryWrapper<TBTask> tbTaskQueryWrapper = new QueryWrapper<>();
+//            tbTaskQueryWrapper.lambda().eq(TBTask::getStatus, TaskStatusEnum.FINISH);
+//            tbTaskService.remove(tbTaskQueryWrapper);
+//        } else {
+//            tbTaskService.removeByIds(Arrays.asList(chooseParams.getIds()));
+//        }
+//        return ResultUtil.ok();
+//    }
+}

+ 5 - 4
teachcloud-report/src/main/java/com/qmth/teachcloud/report/interceptor/AuthInterceptor.java

@@ -1,6 +1,7 @@
 package com.qmth.teachcloud.report.interceptor;
 package com.qmth.teachcloud.report.interceptor;
 
 
 import com.qmth.boot.api.interceptor.ExtendInterceptor;
 import com.qmth.boot.api.interceptor.ExtendInterceptor;
+import com.qmth.distributed.print.business.util.AuthUtil;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
@@ -21,11 +22,11 @@ public class AuthInterceptor extends ExtendInterceptor {
     @Override
     @Override
     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
         log.info("preHandle is come in");
         log.info("preHandle is come in");
-//        if (request.getServletPath().contains(endpoint)) {
+        if (request.getServletPath().contains(endpoint)) {
             return true;
             return true;
-//        } else {
-//            return AuthUtil.adminAuthInterceptor(request, response);
-//        }
+        } else {
+            return AuthUtil.adminAuthInterceptor(request, response);
+        }
     }
     }
 
 
     @Override
     @Override

+ 3 - 0
teachcloud-report/src/main/resources/application.properties

@@ -81,6 +81,9 @@ com.qmth.cache.expire-after-write=8h
 
 
 #api\u524D\u7F00
 #api\u524D\u7F00
 prefix.url.common=report/admin/common
 prefix.url.common=report/admin/common
+prefix.url.sys=report/admin/sys
+prefix.url.basic=report/admin/basic
+prefix.url.data=report/admin/data
 
 
 #\u65E5\u5FD7\u914D\u7F6E
 #\u65E5\u5FD7\u914D\u7F6E
 com.qmth.logging.root-level=info
 com.qmth.logging.root-level=info