wangliang 5 éve
szülő
commit
ceed19c4c5

+ 4 - 2
themis-backend/src/main/java/com/qmth/themis/backend/api/SysController.java

@@ -53,7 +53,8 @@ public class SysController {
     @ApiOperation(value = "菜单查询接口")
     @RequestMapping(value = "/getMenu", method = RequestMethod.GET)
     @ApiResponses({@ApiResponse(code = 200, message = "菜单信息", response = TBPrivilege.class)})
-    public Result getMenu(HttpServletRequest request) {
+    public Result getMenu() {
+        HttpServletRequest request = ServletUtil.getRequest();
         TBUser tbUser = (TBUser) ServletUtil.getRequestAccount(request);
         if (Objects.isNull(tbUser)) {
             throw new BusinessException(ExceptionResultEnum.LOGIN_NO);
@@ -88,7 +89,8 @@ public class SysController {
     @ApiOperation(value = "上传文件接口")
     @RequestMapping(value = "/file/upload", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "{\"id\":0}", response = Result.class)})
-    public Result fileUpload(@ApiParam(value = "上传文件", required = true) @RequestParam MultipartFile file, HttpServletRequest request) throws IOException {
+    public Result fileUpload(@ApiParam(value = "上传文件", required = true) @RequestParam MultipartFile file) throws IOException {
+        HttpServletRequest request = ServletUtil.getRequest();
         Map<String, Object> mapParameter = new HashMap<>();
         mapParameter.put(SystemConstant.END_POINT, dictionaryConfig.aliYunOssDomain().getEndpoint());
         mapParameter.put(SystemConstant.ACCESS_KEY_ID, dictionaryConfig.aliYunOssDomain().getAccessKeyId());

+ 3 - 2
themis-backend/src/main/java/com/qmth/themis/backend/api/TBOrgController.java

@@ -47,7 +47,7 @@ public class TBOrgController {
     @ApiOperation(value = "机构查询接口")
     @RequestMapping(value = "/query", method = RequestMethod.GET)
     @ApiResponses({@ApiResponse(code = 200, message = "机构信息", response = TBOrg.class)})
-    public Result query(@ApiParam(value = "机构id", required = false) @RequestParam(required = false) Long id, @ApiParam(value = "机构编码", required = false) @RequestParam(required = false) String code, @ApiParam(value = "机构名称", required = false) @RequestParam(required = false) String name, @ApiParam(value = "是否启用", required = false) @RequestParam(required = false) Integer enable, HttpServletRequest request) {
+    public Result query(@ApiParam(value = "机构id", required = false) @RequestParam(required = false) Long id, @ApiParam(value = "机构编码", required = false) @RequestParam(required = false) String code, @ApiParam(value = "机构名称", required = false) @RequestParam(required = false) String name, @ApiParam(value = "是否启用", required = false) @RequestParam(required = false) Integer enable) {
         QueryWrapper<TBOrg> tbOrgQueryWrapper = new QueryWrapper<>();
         if (Objects.nonNull(id)) {
             tbOrgQueryWrapper.lambda().eq(TBOrg::getId, id);
@@ -71,7 +71,8 @@ public class TBOrgController {
     @ApiOperation(value = "机构新增/编辑接口")
     @RequestMapping(value = "/save", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
-    public Result save(@ApiParam(value = "机构信息", required = true) @RequestBody TBOrg tbOrg, HttpServletRequest request) {
+    public Result save(@ApiParam(value = "机构信息", required = true) @RequestBody TBOrg tbOrg) {
+        HttpServletRequest request = ServletUtil.getRequest();
         TBUser tbUser = (TBUser) ServletUtil.getRequestAccount(request);
         if (Objects.isNull(tbOrg.getId())) {
             tbOrg.setId(Constants.idGen.next());

+ 14 - 13
themis-backend/src/main/java/com/qmth/themis/backend/api/TBUserController.java

@@ -76,7 +76,7 @@ public class TBUserController {
     @ApiOperation(value = "用户登录接口")
     @RequestMapping(value = "/login/account", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "用户信息", response = TBUser.class)})
-    public Result login(@ApiParam(value = "用户信息", required = true) @RequestBody TBUser tbUser, HttpServletRequest request) throws NoSuchAlgorithmException {
+    public Result login(@ApiParam(value = "用户信息", required = true) @RequestBody TBUser tbUser) throws NoSuchAlgorithmException {
         if (Objects.isNull(tbUser.getLoginName()) || Objects.equals(tbUser.getLoginName(), "")) {
             throw new BusinessException(ExceptionResultEnum.LOGIN_NAME_IS_NULL);
         }
@@ -99,13 +99,13 @@ public class TBUserController {
         if (!Objects.equals(loginPassword, aesPassword)) {
             throw new BusinessException(ExceptionResultEnum.PASSWORD_NO);
         }
-        return userLoginCommon(user, request);
+        return userLoginCommon(user);
     }
 
     @ApiOperation(value = "短信验证码登陆接口")
     @RequestMapping(value = "/login/verifyCode", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "用户信息", response = TBUser.class)})
-    public Result verifyCode(@ApiParam(value = "用户信息", required = true) @RequestBody Map<String, Object> mapParameter, HttpServletRequest request) throws NoSuchAlgorithmException {
+    public Result verifyCode(@ApiParam(value = "用户信息", required = true) @RequestBody Map<String, Object> mapParameter) throws NoSuchAlgorithmException {
         if (Objects.isNull(mapParameter.get("loginName")) || Objects.equals(mapParameter.get("loginName"), "")) {
             throw new BusinessException(ExceptionResultEnum.LOGIN_NAME_IS_NULL);
         }
@@ -123,18 +123,18 @@ public class TBUserController {
             throw new BusinessException(ExceptionResultEnum.USER_NO);
         }
         //todo 加入验证码校验逻辑
-        return userLoginCommon(user, request);
+        return userLoginCommon(user);
     }
 
     /**
      * 用户登录公用
      *
      * @param user
-     * @param request
      * @return
      * @throws NoSuchAlgorithmException
      */
-    public Result userLoginCommon(TBUser user, HttpServletRequest request) throws NoSuchAlgorithmException {
+    public Result userLoginCommon(TBUser user) throws NoSuchAlgorithmException {
+        HttpServletRequest request = ServletUtil.getRequest();
         //停用
         if (user.getEnable().intValue() == 0) {
             throw new BusinessException(ExceptionResultEnum.USER_ENABLE);
@@ -177,7 +177,7 @@ public class TBUserController {
 
 //    @ApiOperation(value = "es查询接口")
 //    @RequestMapping(value = "/websocketPush", method = RequestMethod.POST)
-//    public Result websocketPush(HttpServletRequest request, @RequestBody String message) throws IOException {
+//    public Result websocketPush(@RequestBody String message) throws IOException {
 //        TBUser tbUser = (TBUser) ServletUtil.getRequestAccount(request);
 //        WebSocketServer.sendInfo(message, String.valueOf(tbUser.getId()));
 //        return ResultUtil.ok(SystemConstant.SUCCESS);
@@ -479,7 +479,8 @@ public class TBUserController {
     @ApiOperation(value = "登出接口")
     @RequestMapping(value = "/logout", method = RequestMethod.GET)
     @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
-    public Result logout(HttpServletRequest request) throws NoSuchAlgorithmException {
+    public Result logout() throws NoSuchAlgorithmException {
+        HttpServletRequest request = ServletUtil.getRequest();
         TBUser tbUser = (TBUser) ServletUtil.getRequestAccount(request);
         TBSession tbSession = (TBSession) ServletUtil.getRequestSession(request);
         AuthDto authDto = (AuthDto) EhcacheUtil.get(SystemConstant.AUTH_CACHE, tbUser.getId());
@@ -510,7 +511,7 @@ public class TBUserController {
     @ApiOperation(value = "用户查询接口")
     @RequestMapping(value = "/query", method = RequestMethod.GET)
     @ApiResponses({@ApiResponse(code = 200, message = "用户信息", response = TBUser.class)})
-    public Result query(@ApiParam(value = "用户id", required = false) @RequestParam(required = false) Long id, @ApiParam(value = "登录名", required = false) @RequestParam(required = false) String loginName, @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name, @ApiParam(value = "角色", required = false) @RequestParam(required = false) String role, @ApiParam(value = "是否启用", required = false) @RequestParam(required = false) Integer enable, HttpServletRequest request) {
+    public Result query(@ApiParam(value = "用户id", required = false) @RequestParam(required = false) Long id, @ApiParam(value = "登录名", required = false) @RequestParam(required = false) String loginName, @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name, @ApiParam(value = "角色", required = false) @RequestParam(required = false) String role, @ApiParam(value = "是否启用", required = false) @RequestParam(required = false) Integer enable) {
         List<TBUser> tbUserList = tbUserService.userQuery(id, loginName, name, role, enable);
         Map map = new HashMap<>();
         map.put(SystemConstant.RECORDS, tbUserList);
@@ -522,7 +523,7 @@ public class TBUserController {
     @RequestMapping(value = "/save", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
     @Transactional
-    public Result save(@ApiParam(value = "机构信息", required = true) @RequestBody Map<String, Object> mapParameter, HttpServletRequest request) {
+    public Result save(@ApiParam(value = "机构信息", required = true) @RequestBody Map<String, Object> mapParameter) {
         Gson gson = new Gson();
         TBUser tbUser = gson.fromJson(gson.toJson(mapParameter), TBUser.class);
         List<String> roleList = (List<String>) mapParameter.get("role");
@@ -560,7 +561,7 @@ public class TBUserController {
     @ApiOperation(value = "获取短信验证码接口")
     @RequestMapping(value = "/getVerifyCode", method = RequestMethod.GET)
     @ApiResponses({@ApiResponse(code = 200, message = "{\"verifyCode\":123456}", response = Result.class)})
-    public Result getVerifyCode(@ApiParam(value = "登录名", required = true) @RequestParam String loginName, HttpServletRequest request) {
+    public Result getVerifyCode(@ApiParam(value = "登录名", required = true) @RequestParam String loginName) {
         Map map = new HashMap();
         return ResultUtil.ok(map);
     }
@@ -568,14 +569,14 @@ public class TBUserController {
     @ApiOperation(value = "获取短信验证码接口")
     @RequestMapping(value = "/validate/verifyCode", method = RequestMethod.GET)
     @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
-    public Result validateVerifyCode(@ApiParam(value = "验证码", required = true) @RequestParam String verifyCode, HttpServletRequest request) {
+    public Result validateVerifyCode(@ApiParam(value = "验证码", required = true) @RequestParam String verifyCode) {
         return ResultUtil.ok(JacksonUtil.parseJson(SystemConstant.SUCCESS));
     }
 
     @ApiOperation(value = "二次验证获取短信验证码接口")
     @RequestMapping(value = "/validate/getVerifyCode", method = RequestMethod.GET)
     @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
-    public Result validateGetVerifyCode(HttpServletRequest request) {
+    public Result validateGetVerifyCode() {
         return ResultUtil.ok(JacksonUtil.parseJson(SystemConstant.SUCCESS));
     }
 }

+ 39 - 7
themis-backend/src/main/java/com/qmth/themis/backend/api/TEExamController.java

@@ -1,5 +1,8 @@
 package com.qmth.themis.backend.api;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.qmth.themis.backend.util.ServletUtil;
 import com.qmth.themis.business.constant.SystemConstant;
 import com.qmth.themis.business.entity.TBOrg;
@@ -14,14 +17,12 @@ import com.qmth.themis.common.util.Result;
 import com.qmth.themis.common.util.ResultUtil;
 import io.swagger.annotations.*;
 import org.springframework.dao.DuplicateKeyException;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
-import java.security.NoSuchAlgorithmException;
+import java.util.HashMap;
+import java.util.Map;
 import java.util.Objects;
 
 /**
@@ -42,8 +43,9 @@ public class TEExamController {
     @ApiOperation(value = "考试批次修改/新增接口")
     @RequestMapping(value = "/save", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
-    public Result save(@ApiParam(value = "考试批次信息", required = true) @RequestBody TEExam teExam, HttpServletRequest request) throws NoSuchAlgorithmException {
+    public Result save(@ApiParam(value = "考试批次信息", required = true) @RequestBody TEExam teExam) {
         try {
+            HttpServletRequest request = ServletUtil.getRequest();
             TBUser tbUser = (TBUser) ServletUtil.getRequestAccount(request);
             TBOrg tbOrg = (TBOrg) ServletUtil.getRequestOrg(request);
             if (Objects.nonNull(tbOrg)) {
@@ -70,4 +72,34 @@ public class TEExamController {
         }
         return ResultUtil.ok(JacksonUtil.parseJson(SystemConstant.SUCCESS));
     }
-}
+
+    @ApiOperation(value = "考试批次统计接口")
+    @RequestMapping(value = "/count", method = RequestMethod.GET)
+    @ApiResponses({@ApiResponse(code = 200, message = "{\"count\":1}", response = Result.class)})
+    public Result count(@ApiParam(value = "考试批次编码", required = false) @RequestParam(required = false) String code, @ApiParam(value = "考试批次名称", required = false) @RequestParam(required = false) String name, @ApiParam(value = "考试批次模式", required = false) @RequestParam(required = false) Integer mode) {
+        QueryWrapper<TEExam> teExamQueryWrapper = new QueryWrapper<>();
+        if (Objects.nonNull(code)) {
+            teExamQueryWrapper.lambda().eq(TEExam::getCode, code);
+        }
+        if (Objects.nonNull(name)) {
+            teExamQueryWrapper.lambda().eq(TEExam::getName, name);
+        }
+        if (Objects.nonNull(mode)) {
+            teExamQueryWrapper.lambda().eq(TEExam::getMode, mode);
+        }
+        int count = teExamService.count(teExamQueryWrapper);
+        Map map = new HashMap<>();
+        map.put(SystemConstant.COUNT, count);
+        return ResultUtil.ok(map);
+    }
+
+    @ApiOperation(value = "考试批次查询接口")
+    @RequestMapping(value = "/query", method = RequestMethod.GET)
+    @ApiResponses({@ApiResponse(code = 200, message = "考试批次信息", response = TEExam.class)})
+    public Result query(@ApiParam(value = "考试批次id", required = false) @RequestParam(required = false) Long id, @ApiParam(value = "考试批次编码", required = false) @RequestParam(required = false) String code, @ApiParam(value = "考试批次名称", required = false) @RequestParam(required = false) String name, @ApiParam(value = "考试批次模式", required = false) @RequestParam(required = false) Integer mode, @ApiParam(value = "是否启用", required = false) @RequestParam(required = false) Integer enable, @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber, @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
+        IPage<TEExam> teExamIPage = teExamService.examQuery(new Page<>(pageNumber, pageSize), id, code, name, mode, enable);
+        Map map = new HashMap<>();
+        map.put(SystemConstant.RECORDS, teExamIPage);
+        return ResultUtil.ok(map);
+    }
+}

+ 72 - 0
themis-backend/src/main/java/com/qmth/themis/backend/aspect/ApiControllerAspect.java

@@ -0,0 +1,72 @@
+package com.qmth.themis.backend.aspect;
+
+import com.qmth.themis.backend.util.ServletUtil;
+import com.qmth.themis.common.util.ResultUtil;
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.Around;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Pointcut;
+import org.aspectj.lang.reflect.MethodSignature;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+import javax.servlet.http.HttpServletRequest;
+
+/**
+ * @Description: api aspect
+ * @Param:
+ * @return:
+ * @Author: wangliang
+ * @Date: 2020/5/12
+ */
+@Aspect
+@Component
+public class ApiControllerAspect {
+    private final static Logger log = LoggerFactory.getLogger(ApiControllerAspect.class);
+
+    /**
+     * api切入点
+     */
+    @Pointcut("execution(public * com.qmth.themis.backend.api.*.*(..))")
+    public void apiAspect() {
+    }
+
+    /**
+     * 查询学校id是否匹配
+     *
+     * @param joinPoint
+     * @return
+     * @throws Throwable
+     */
+    @Around(value = "apiAspect()")
+    public Object aroundApiPoint(ProceedingJoinPoint joinPoint) throws Throwable {
+        try {
+            long start = System.currentTimeMillis();
+            MethodSignature msig = (MethodSignature) joinPoint.getSignature();
+            String className = msig.getDeclaringTypeName();
+            String methodName = msig.getName();
+            Object[] args = joinPoint.getArgs();
+            String[] paramsName = msig.getParameterNames();
+            HttpServletRequest request = ServletUtil.getRequest();
+            log.info("============请求地址========:{}", request.getRequestURL());
+            log.info("============类=============:{}", className);
+            log.info("============方法===========:{}", methodName);
+            for (int i = 0; i < args.length; i++) {
+                log.info("============参数key:{},参数value===========:{}", paramsName[i], args[i]);
+            }
+//            log.info("============参数key:{},参数value===========:{}", JSONObject.toJSONString(paramsName), JSONObject.toJSONString(args));
+            log.info("============platform===========:{}", ServletUtil.getRequestPlatform(request));
+            log.info("============deviceId===========:{}", ServletUtil.getRequestDeviceId(request));
+            log.info("============Authorization===========:{}", ServletUtil.getRequestAuthorization(request));
+            log.info("============time===========:{}", ServletUtil.getRequestTime(request));
+            Object proceed = joinPoint.proceed();
+            long end = System.currentTimeMillis();
+            log.info("============耗时============:{}秒", (end - start) / 1000);
+            return proceed;
+        } catch (Exception e) {
+            e.printStackTrace();
+            return ResultUtil.error(e.getMessage());
+        }
+    }
+}

+ 0 - 48
themis-backend/src/main/java/com/qmth/themis/backend/start/StartRunning.java

@@ -1,48 +0,0 @@
-//package com.qmth.themis.backend.start;
-//
-//import com.qmth.themis.business.entity.TEExamStudent;
-//import com.qmth.themis.business.service.TEExamStudentService;
-//import com.qmth.themis.mq.listener.RocketMessageConsumer;
-//import org.slf4j.Logger;
-//import org.slf4j.LoggerFactory;
-//import org.springframework.beans.factory.annotation.Value;
-//import org.springframework.boot.CommandLineRunner;
-//import org.springframework.stereotype.Component;
-//
-//import javax.annotation.Resource;
-//import java.util.List;
-//import java.util.StringJoiner;
-//
-///**
-// * @Description: 服务启动时初始化运行,哪个微服务模块需要则拿此模版去用
-// * @Param:
-// * @return:
-// * @Author: wangliang
-// * @Date: 2020/7/3
-// */
-//@Component
-//public class StartRunning implements CommandLineRunner {
-//    private final static Logger log = LoggerFactory.getLogger(StartRunning.class);
-//
-//    @Resource
-//    TEExamStudentService teExamStudentService;
-//
-//    @Resource
-//    RocketMessageConsumer rocketMessageConsumer;
-//
-//    @Value("${rocketmq.name-server}")
-//    String nameSrvAddr;
-//
-//    @Override
-//    public void run(String... args) throws Exception {
-//        log.info("服务器启动时执行 start");
-//        List<TEExamStudent> teExamStudentList = teExamStudentService.list();
-//        StringJoiner stringJoiner = new StringJoiner("");
-//        teExamStudentList.forEach(s -> {
-//            rocketMessageConsumer.setRocketMQConsumer(nameSrvAddr, String.valueOf(s.getId()) + "group", "imTopic", "teacher");
-////            rocketImConsumer.setRocketMQConsumer(nameSrvAddr, "imGroup", "imTopic", "teacher || user");
-//        });
-////        rocketImConsumer.setRocketMQConsumer(nameSrvAddr, "imGroup", "imTopic", "teacher");
-//        log.info("服务器启动时执行 end");
-//    }
-//}

+ 22 - 0
themis-backend/src/main/java/com/qmth/themis/backend/util/ServletUtil.java

@@ -5,6 +5,8 @@ import com.qmth.themis.business.util.JacksonUtil;
 import com.qmth.themis.common.contanst.Constants;
 import com.qmth.themis.common.util.Result;
 import com.qmth.themis.common.util.ResultUtil;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -143,4 +145,24 @@ public class ServletUtil {
     public static Object getRequestOrg(HttpServletRequest httpRequest) {
         return httpRequest.getAttribute(SystemConstant.ORG);
     }
+
+    /**
+     * 获取HttpServletRequest
+     *
+     * @return
+     */
+    public static HttpServletRequest getRequest() {
+        ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+        return servletRequestAttributes.getRequest();
+    }
+
+    /**
+     * 获取HttpServletResponse
+     *
+     * @return
+     */
+    public static HttpServletResponse getResponse() {
+        ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+        return servletRequestAttributes.getResponse();
+    }
 }

+ 3 - 0
themis-business/src/main/java/com/qmth/themis/business/constant/SystemConstant.java

@@ -3,6 +3,8 @@ package com.qmth.themis.business.constant;
 import com.qmth.themis.common.contanst.Constants;
 import com.qmth.themis.common.enums.Platform;
 import com.qmth.themis.common.enums.Source;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
 
 import java.util.Calendar;
 import java.util.Date;
@@ -42,6 +44,7 @@ public class SystemConstant {
     public static final String AUTH_CACHE = "auth_cache";
     public static final String ALL_PATH = "/**";
     public static final String ACCOUNT = "account";
+    public static final String COUNT = "count";
     public static final String ERROR = "/error";
     public static final String SESSION_TOPIC_BUFFER_LIST = "session:topic:buffer:list";
     public static final String USERLOG_TOPIC_BUFFER_LIST = "userLog:topic:buffer:list";

+ 16 - 0
themis-business/src/main/java/com/qmth/themis/business/dao/TEExamMapper.java

@@ -1,8 +1,12 @@
 package com.qmth.themis.business.dao;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.qmth.themis.business.entity.TEExam;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Map;
 
 /**
  * @Description: 考试批次 Mapper 接口
@@ -14,4 +18,16 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface TEExamMapper extends BaseMapper<TEExam> {
 
+    /**
+     * 查询考试批次
+     *
+     * @param iPage
+     * @param id
+     * @param code
+     * @param name
+     * @param mode
+     * @param enable
+     * @return
+     */
+    public IPage<TEExam> examQuery(IPage<Map> iPage, @Param("id") Long id, @Param("code") String code, @Param("name") String name, @Param("mode") Integer mode, @Param("enable") Integer enable);
 }

+ 0 - 2
themis-business/src/main/java/com/qmth/themis/business/entity/common/Exam.java

@@ -1,11 +1,9 @@
 package com.qmth.themis.business.entity.common;
 
 import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
 import com.qmth.themis.business.base.BaseEntity;
 import io.swagger.annotations.ApiModelProperty;
 
-import java.io.Serializable;
 import java.util.Date;
 
 /**

+ 15 - 0
themis-business/src/main/java/com/qmth/themis/business/service/TEExamService.java

@@ -1,8 +1,11 @@
 package com.qmth.themis.business.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.themis.business.entity.TEExam;
 
+import java.util.Map;
+
 /**
  * @Description: 考试批次 服务类
  * @Param:
@@ -12,4 +15,16 @@ import com.qmth.themis.business.entity.TEExam;
  */
 public interface TEExamService extends IService<TEExam> {
 
+    /**
+     * 查询考试批次
+     *
+     * @param iPage
+     * @param id
+     * @param code
+     * @param name
+     * @param mode
+     * @param enable
+     * @return
+     */
+    public IPage<TEExam> examQuery(IPage<Map> iPage, Long id, String code, String name, Integer mode, Integer enable);
 }

+ 22 - 0
themis-business/src/main/java/com/qmth/themis/business/service/impl/TEExamServiceImpl.java

@@ -1,11 +1,15 @@
 package com.qmth.themis.business.service.impl;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.themis.business.dao.TEExamMapper;
 import com.qmth.themis.business.entity.TEExam;
 import com.qmth.themis.business.service.TEExamService;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.Map;
+
 /**
  * @Description: 考试批次 服务实现类
  * @Param:
@@ -16,4 +20,22 @@ import org.springframework.stereotype.Service;
 @Service
 public class TEExamServiceImpl extends ServiceImpl<TEExamMapper, TEExam> implements TEExamService {
 
+    @Resource
+    TEExamMapper teExamMapper;
+
+    /**
+     * 查询考试批次
+     *
+     * @param iPage
+     * @param id
+     * @param code
+     * @param name
+     * @param mode
+     * @param enable
+     * @return
+     */
+    @Override
+    public IPage<TEExam> examQuery(IPage<Map> iPage, Long id, String code, String name, Integer mode, Integer enable) {
+        return teExamMapper.examQuery(iPage, id, code, name, mode, enable);
+    }
 }

+ 1 - 1
themis-business/src/main/resources/mapper/TBUserMapper.xml

@@ -16,7 +16,7 @@
             <if test="name != null and name != ''">
                 and tbu.name like concat('%', #{name}, '%')
             </if>
-            <if test="enable != null and enable != ''">
+            <if test="enable != null and enable != '' or enable == 0">
                 and tbu.enable = #{enable}
             </if>
             <if test="role != null and role != ''">

+ 20 - 0
themis-business/src/main/resources/mapper/TEExamMapper.xml

@@ -2,4 +2,24 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.qmth.themis.business.dao.TEExamMapper">
 
+    <select id="examQuery" resultType="com.qmth.themis.business.entity.TEExam">
+        select * from t_e_exam t
+        <where>
+            <if test="id != null and id != ''">
+                and t.id = #{id}
+            </if>
+            <if test="code != null and code != ''">
+                and t.code like concat('%', #{code}, '%')
+            </if>
+            <if test="name != null and name != ''">
+                and t.name like concat('%', #{name}, '%')
+            </if>
+            <if test="mode != null and mode != '' or mode == 0">
+                and t.mode = #{mode}
+            </if>
+            <if test="enable != null and enable != '' or enable == 0">
+                and t.enable = #{enable}
+            </if>
+        </where>
+    </select>
 </mapper>