Explorar o código

去除样例代码

wangliang %!s(int64=4) %!d(string=hai) anos
pai
achega
6d60f5244b
Modificáronse 13 ficheiros con 40 adicións e 729 borrados
  1. 0 5
      distributed-print-business/pom.xml
  2. 0 100
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/excel/UserExportDto.java
  3. 0 105
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/excel/UserImportDto.java
  4. 0 10
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/SysUserMapper.java
  5. 0 11
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/SysUserService.java
  6. 9 17
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysUserServiceImpl.java
  7. 0 40
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/excelListener/ExaminationListener.java
  8. 0 121
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/execute/AsyncUserImportTempleteService.java
  9. 0 97
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/execute/UserImportTempleteService.java
  10. 0 9
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/TaskLogicService.java
  11. 4 63
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/TaskLogicServiceImpl.java
  12. 1 45
      distributed-print-business/src/main/resources/mapper/SysUserMapper.xml
  13. 26 106
      distributed-print/src/main/java/com/qmth/distributed/print/api/SysUserController.java

+ 0 - 5
distributed-print-business/pom.xml

@@ -80,11 +80,6 @@
             <groupId>com.itextpdf</groupId>
             <artifactId>itextpdf</artifactId>
         </dependency>
-		<dependency>
-			<groupId>com.alibaba</groupId>
-			<artifactId>easyexcel</artifactId>
-			<version>2.2.8</version>
-		</dependency>
         <dependency>
             <groupId>com.google.zxing</groupId>
             <artifactId>core</artifactId>

+ 0 - 100
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/excel/UserExportDto.java

@@ -1,100 +0,0 @@
-package com.qmth.distributed.print.business.bean.dto.excel;
-
-import com.qmth.distributed.print.business.annotation.ExcelProperty;
-import io.swagger.annotations.ApiModelProperty;
-
-import java.io.Serializable;
-
-/** 
-* @Description: 用户导出dto
-* @Param:  
-* @return:  
-* @Author: wangliang
-* @Date: 2021/3/30 
-*/ 
-public class UserExportDto implements Serializable {
-
-    @ApiModelProperty(name = "姓名")
-    @ExcelProperty(name = "姓名", width = 30, index = 1)
-    String realName;
-
-    @ApiModelProperty(name = "登录名")
-    @ExcelProperty(name = "登录名", width = 30, index = 2)
-    String loginName;
-
-    @ApiModelProperty(name = "角色")
-    @ExcelProperty(name = "角色", width = 30, index = 3)
-    String roleName;
-
-    @ApiModelProperty(name = "学校名称代码")
-    @ExcelProperty(name = "学校名称代码", width = 40, index = 4)
-    String schoolNameCode;
-
-    @ApiModelProperty(name = "状态")
-    @ExcelProperty(name = "状态", width = 30, index = 6)
-    String enable;
-
-    @ApiModelProperty(name = "更新时间")
-    @ExcelProperty(name = "更新时间", width = 30, index = 7)
-    String updateTime;
-
-    @ApiModelProperty(name = "执行人")
-    @ExcelProperty(name = "执行人", width = 30, index = 8)
-    String updateName;
-
-    public String getRealName() {
-        return realName;
-    }
-
-    public void setRealName(String realName) {
-        this.realName = realName;
-    }
-
-    public String getLoginName() {
-        return loginName;
-    }
-
-    public void setLoginName(String loginName) {
-        this.loginName = loginName;
-    }
-
-    public String getRoleName() {
-        return roleName;
-    }
-
-    public void setRoleName(String roleName) {
-        this.roleName = roleName;
-    }
-
-    public String getSchoolNameCode() {
-        return schoolNameCode;
-    }
-
-    public void setSchoolNameCode(String schoolNameCode) {
-        this.schoolNameCode = schoolNameCode;
-    }
-
-    public String getEnable() {
-        return enable;
-    }
-
-    public void setEnable(String enable) {
-        this.enable = enable;
-    }
-
-    public String getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(String updateTime) {
-        this.updateTime = updateTime;
-    }
-
-    public String getUpdateName() {
-        return updateName;
-    }
-
-    public void setUpdateName(String updateName) {
-        this.updateName = updateName;
-    }
-}

+ 0 - 105
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/excel/UserImportDto.java

@@ -1,105 +0,0 @@
-package com.qmth.distributed.print.business.bean.dto.excel;
-
-import com.qmth.distributed.print.business.annotation.ExcelNote;
-import com.qmth.distributed.print.business.entity.SysRole;
-import io.swagger.annotations.ApiModelProperty;
-
-import javax.validation.constraints.NotNull;
-import java.io.Serializable;
-
-/**
- * @Description: 用户导入dto
- * @Param:
- * @return:
- * @Author: wangliang
- * @Date: 2021/3/29
- */
-public class UserImportDto implements Serializable {
-
-    @NotNull
-    @ExcelNote(value = "姓名")
-    @ApiModelProperty(value = "姓名")
-    String realName;
-
-    @NotNull
-    @ExcelNote(value = "登录名")
-    @ApiModelProperty(value = "登录名")
-    String loginName;
-
-    @NotNull
-    @ExcelNote(value = "密码")
-    @ApiModelProperty(value = "密码")
-    String password;
-
-    @NotNull
-    @ExcelNote(value = "角色")
-    @ApiModelProperty(value = "角色")
-    String role;
-
-    @ExcelNote(value = "学校代码")
-    @ApiModelProperty(value = "学校代码")
-    String schoolCode;
-
-    @ExcelNote(value = "学校名称")
-    @ApiModelProperty(value = "学校名称")
-    String schoolName;
-
-    @ApiModelProperty(value = "角色")
-    SysRole sysRole;
-
-    public SysRole getSysRole() {
-        return sysRole;
-    }
-
-    public void setSysRole(SysRole sysRole) {
-        this.sysRole = sysRole;
-    }
-
-    public String getRealName() {
-        return realName;
-    }
-
-    public void setRealName(String realName) {
-        this.realName = realName;
-    }
-
-    public String getLoginName() {
-        return loginName;
-    }
-
-    public void setLoginName(String loginName) {
-        this.loginName = loginName;
-    }
-
-    public String getPassword() {
-        return password;
-    }
-
-    public void setPassword(String password) {
-        this.password = password;
-    }
-
-    public String getRole() {
-        return role;
-    }
-
-    public void setRole(String role) {
-        this.role = role;
-    }
-
-    public String getSchoolCode() {
-        return schoolCode;
-    }
-
-    public void setSchoolCode(String schoolCode) {
-        this.schoolCode = schoolCode;
-    }
-
-    public String getSchoolName() {
-        return schoolName;
-    }
-
-    public void setSchoolName(String schoolName) {
-        this.schoolName = schoolName;
-    }
-}

+ 0 - 10
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/SysUserMapper.java

@@ -5,8 +5,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 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.dto.excel.UserExportDto;
-import com.qmth.distributed.print.business.bean.params.ArraysParams;
 import com.qmth.distributed.print.business.entity.SysUser;
 import org.apache.ibatis.annotations.Param;
 
@@ -24,13 +22,5 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
 
     IPage<UserDto> listPage(Page<UserDto> page, @Param("schoolId") Long schoolId, @Param("realName") String realName, @Param("roleId") String roleId, @Param("enable") Boolean enable);
 
-    /**
-     * 用户导出
-     *
-     * @param arraysParams
-     * @return
-     */
-    public List<UserExportDto> queryByExport(@Param("arraysParams") ArraysParams arraysParams);
-
     List<BlurryUserDto> listUser(@Param("schoolId") Long schoolId, @Param("type") String type, @Param("courseCode") String courseCode, @Param("param") String param);
 }

+ 0 - 11
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/SysUserService.java

@@ -5,9 +5,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.distributed.print.business.bean.dto.BlurryUserDto;
 import com.qmth.distributed.print.business.bean.dto.LoginDto;
 import com.qmth.distributed.print.business.bean.dto.UserDto;
-import com.qmth.distributed.print.business.bean.dto.excel.UserExportDto;
-import com.qmth.distributed.print.business.bean.params.ArraysParams;
-import com.qmth.distributed.print.business.bean.params.UserParam;
 import com.qmth.distributed.print.business.entity.SysUser;
 
 import java.util.List;
@@ -36,14 +33,6 @@ public interface SysUserService extends IService<SysUser> {
 
     LoginDto getUserRoles(SysUser sysUser);
 
-    /**
-     * 用户导出
-     *
-     * @param arraysParams
-     * @return
-     */
-    public List<UserExportDto> queryByExport(ArraysParams arraysParams);
-
     List<BlurryUserDto> listUser(String courseCode, String param);
 
     List<SysUser> listByOrgId(Long id);

+ 9 - 17
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysUserServiceImpl.java

@@ -1,7 +1,6 @@
 package com.qmth.distributed.print.business.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.Update;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -9,16 +8,14 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.distributed.print.business.bean.dto.BlurryUserDto;
 import com.qmth.distributed.print.business.bean.dto.LoginDto;
 import com.qmth.distributed.print.business.bean.dto.UserDto;
-import com.qmth.distributed.print.business.bean.dto.excel.UserExportDto;
-import com.qmth.distributed.print.business.bean.params.ArraysParams;
 import com.qmth.distributed.print.business.entity.*;
+import com.qmth.distributed.print.business.enums.RoleTypeEnum;
 import com.qmth.distributed.print.business.mapper.SysUserMapper;
 import com.qmth.distributed.print.business.service.*;
 import com.qmth.distributed.print.business.util.ServletUtil;
 import com.qmth.distributed.print.business.util.security.Md5Utils;
 import com.qmth.distributed.print.common.contant.SystemConstant;
 import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
-import com.qmth.distributed.print.business.enums.RoleTypeEnum;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -147,9 +144,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
         // 角色里是否有考务老师角色
         List<SysRole> sysRoles = sysRoleService.list(user.getRoleIds(), RoleTypeEnum.QUESTION_TEACHER.name());
-        if(sysRoles != null && sysRoles.size() > 0){
+        if (sysRoles != null && sysRoles.size() > 0) {
             Long[] courseIds = user.getCourseIds();
-            if(courseIds.length == 0){
+            if (courseIds.length == 0) {
                 throw ExceptionResultEnum.ERROR.exception("请选择课程");
             }
 
@@ -184,12 +181,12 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Override
     public boolean updatePassword(Long id, String oldPassword, String password) {
         SysUser sysUser = this.getById(id);
-        if(sysUser == null){
+        if (sysUser == null) {
             throw ExceptionResultEnum.ERROR.exception("用户不存在");
         }
 
         oldPassword = Md5Utils.toMd5Hex(oldPassword);
-        if(!StringUtils.equals(sysUser.getPassword(), oldPassword)){
+        if (!StringUtils.equals(sysUser.getPassword(), oldPassword)) {
             throw ExceptionResultEnum.ERROR.exception("原密码不正确");
         }
         String md5Password = Md5Utils.toMd5Hex(password);
@@ -201,7 +198,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Override
     public boolean bindRoles(SysUser sysUser) {
         Long[] roleIds = sysUser.getRoleIds();
-        if(roleIds.length == 0){
+        if (roleIds.length == 0) {
             throw ExceptionResultEnum.ERROR.exception("请选择角色");
         }
 
@@ -222,9 +219,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
         // 角色里是否有考务老师角色
         List<SysRole> sysRoles = sysRoleService.list(roleIds, RoleTypeEnum.QUESTION_TEACHER.name());
-        if(sysRoles != null && sysRoles.size() > 0){
+        if (sysRoles != null && sysRoles.size() > 0) {
             Long[] courseIds = sysUser.getCourseIds();
-            if(courseIds.length == 0){
+            if (courseIds.length == 0) {
                 throw ExceptionResultEnum.ERROR.exception("请选择课程");
             }
 
@@ -246,7 +243,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         loginDto.setEnable(sysUser.getEnable());
         loginDto.setPwdUpdateTime(sysUser.getPwdUpdateTime());
 
-        if("admin".equals(sysUser.getLoginName())){
+        if ("admin".equals(sysUser.getLoginName())) {
             loginDto.setRoles(Arrays.asList("ADMIN"));
         } else {
             List<SysRole> list = sysUserRoleService.listRoleByUserId(sysUser.getId());
@@ -256,11 +253,6 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         return loginDto;
     }
 
-    @Override
-    public List<UserExportDto> queryByExport(ArraysParams arraysParams) {
-        return sysUserMapper.queryByExport(arraysParams);
-    }
-
     @Override
     public List<BlurryUserDto> listUser(String courseCode, String param) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());

+ 0 - 40
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/excelListener/ExaminationListener.java

@@ -1,40 +0,0 @@
-package com.qmth.distributed.print.business.templete.excelListener;
-
-import com.alibaba.excel.context.AnalysisContext;
-import com.alibaba.excel.event.AnalysisEventListener;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * @Description: 考务数据监听
- * @Author: CaoZixuan
- * @Date: 2021-04-07
- */
-public class ExaminationListener extends AnalysisEventListener{
-    private List<Map<Integer, String>>  dataList= new ArrayList<>();
-
-    @Override
-    public void invoke(Object o, AnalysisContext analysisContext) {
-        System.out.println("当前行:"+analysisContext.getCurrentRowNum());
-        System.out.println(o);
-        Map<Integer, String> map = new HashMap<>();
-        map.put(analysisContext.readRowHolder().getRowIndex(), String.valueOf(o));
-        dataList.add(map);//数据存储到list,供批量处理,或后续自己业务逻辑处理。
-    }
-
-    @Override
-    public void doAfterAllAnalysed(AnalysisContext analysisContext) {
-
-    }
-
-    public List<Map<Integer, String>> getDataList() {
-        return dataList;
-    }
-
-    public void setDataList(List<Map<Integer, String>> dataList) {
-        this.dataList = dataList;
-    }
-}

+ 0 - 121
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/execute/AsyncUserImportTempleteService.java

@@ -1,121 +0,0 @@
-package com.qmth.distributed.print.business.templete.execute;
-
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.google.common.collect.Lists;
-import com.qmth.boot.api.exception.ApiException;
-import com.qmth.distributed.print.business.bean.dto.excel.UserImportDto;
-import com.qmth.distributed.print.business.entity.SysRole;
-import com.qmth.distributed.print.business.entity.TBTask;
-import com.qmth.distributed.print.business.enums.RoleTypeEnum;
-import com.qmth.distributed.print.business.enums.TaskResultEnum;
-import com.qmth.distributed.print.business.enums.TaskStatusEnum;
-import com.qmth.distributed.print.business.service.SysRoleService;
-import com.qmth.distributed.print.business.templete.importData.AsyncImportTaskTemplete;
-import com.qmth.distributed.print.business.templete.service.TaskLogicService;
-import com.qmth.distributed.print.business.util.ExcelUtil;
-import com.qmth.distributed.print.business.util.excel.ExcelError;
-import com.qmth.distributed.print.common.contant.SystemConstant;
-import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
-import com.qmth.distributed.print.common.util.Result;
-import com.qmth.distributed.print.common.util.ResultUtil;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Service;
-import org.springframework.util.LinkedMultiValueMap;
-
-import javax.annotation.Resource;
-import java.io.IOException;
-import java.io.InputStream;
-import java.text.MessageFormat;
-import java.util.*;
-
-/**
- * @Description: 用户导入模版
- * @Param:
- * @return:
- * @Author: wangliang
- * @Date: 2021/3/29
- */
-@Service
-public class AsyncUserImportTempleteService extends AsyncImportTaskTemplete {
-    private final static Logger log = LoggerFactory.getLogger(AsyncUserImportTempleteService.class);
-
-    static final String OBJ_TITLE = "用户数据";
-
-    @Resource
-    TaskLogicService taskLogicService;
-
-    @Resource
-    SysRoleService sysRoleService;
-
-    /**
-     * 异步处理导入
-     *
-     * @param map
-     * @return
-     */
-    @Override
-    public Result importTask(Map<String, Object> map) throws IOException {
-        TBTask tbTask = (TBTask) map.get(SystemConstant.TASK);
-        InputStream inputStream = super.getUploadFileInputStream(tbTask);
-        StringJoiner stringJoinerSummary = new StringJoiner("\n")
-                .add(MessageFormat.format("{0}{1}{2}", FORMAT_TIME, BEGIN_TITLE, OBJ_TITLE));
-        tbTask.setStatus(TaskStatusEnum.RUNNING);
-        try {
-            List<LinkedMultiValueMap<Integer, Object>> finalList = ExcelUtil.excelReader(inputStream, Lists.newArrayList(UserImportDto.class), (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
-                List<ExcelError> excelErrorTemp = new ArrayList<>();
-                for (int i = 0; i < finalExcelList.size(); i++) {
-                    LinkedMultiValueMap<Integer, Object> excelMap = finalExcelList.get(i);
-                    List<Object> userImportDtoList = excelMap.get(i);
-                    for (int y = 0; y < userImportDtoList.size(); y++) {
-                        UserImportDto userImportDto = (UserImportDto) userImportDtoList.get(y);
-                        excelErrorTemp.addAll(ExcelUtil.checkExcelField(userImportDto, y, i));
-                        //查角色名是否存在
-                        QueryWrapper<SysRole> sysRoleQueryWrapper = new QueryWrapper<>();
-                        sysRoleQueryWrapper.lambda().eq(SysRole::getName, userImportDto.getRole());
-                        SysRole sysRole = sysRoleService.getOne(sysRoleQueryWrapper);
-                        if (Objects.isNull(sysRole)) {
-                            throw ExceptionResultEnum.ERROR.exception(JSONObject.toJSONString(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[角色名]不存在")));
-                        }
-                        if (sysRole.getType() == RoleTypeEnum.SCHOOL_ADMIN && Objects.isNull(userImportDto.getSchoolCode())) {
-                            excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[学校代码]必填"));
-                        }
-                        if (userImportDto.getPassword().length() < 6) {
-                            excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[密码]不能小于6位"));
-                        } else if (userImportDto.getPassword().length() > 30) {
-                            excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[密码]不能大于30位"));
-                        }
-                        if (userImportDto.getRealName().length() > 25) {
-                            excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[姓名]不能超过25个字符"));
-                        }
-                        if (userImportDto.getLoginName().length() > 25) {
-                            excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[登录名]不能超过25个字符"));
-                        }
-                        userImportDto.setSysRole(sysRole);
-                    }
-                }
-                if (excelErrorTemp.size() > 0) {
-                    throw ExceptionResultEnum.ERROR.exception(JSONObject.toJSONString(excelErrorTemp));
-                }
-                return finalExcelList;
-            });
-//            Map<String, Object> mapLogic = taskLogicService.executeUserImportLogic(finalList, map);
-            stringJoinerSummary.add(MessageFormat.format("{0}{1}{2}{3}", FORMAT_TIME, FINISH_TITLE, 111, FINISH_SIZE));
-            tbTask.setResult(TaskResultEnum.SUCCESS);
-        } catch (Exception e) {
-            log.error("请求出错", e);
-            stringJoinerSummary.add(MessageFormat.format("{0}{1}{2}{3}", FORMAT_TIME, EXCEPTION_TITLE, EXCEPTION_DATA, e.getMessage()));
-            tbTask.setResult(TaskResultEnum.ERROR);
-            if (e instanceof ApiException) {
-                ResultUtil.error((ApiException) e, e.getMessage());
-            } else {
-                ResultUtil.error(e.getMessage());
-            }
-        } finally {//生成txt文件
-            tbTask.setSummary(stringJoinerSummary.toString());
-            super.createTxt(tbTask);
-        }
-        return ResultUtil.ok(map);
-    }
-}

+ 0 - 97
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/execute/UserImportTempleteService.java

@@ -1,97 +0,0 @@
-package com.qmth.distributed.print.business.templete.execute;
-
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.google.common.collect.Lists;
-import com.qmth.distributed.print.business.bean.dto.excel.UserImportDto;
-import com.qmth.distributed.print.business.entity.SysRole;
-import com.qmth.distributed.print.business.enums.RoleTypeEnum;
-import com.qmth.distributed.print.business.service.SysRoleService;
-import com.qmth.distributed.print.business.templete.importData.SyncImportTaskTemplete;
-import com.qmth.distributed.print.business.templete.service.TaskLogicService;
-import com.qmth.distributed.print.business.util.ExcelUtil;
-import com.qmth.distributed.print.business.util.excel.ExcelError;
-import com.qmth.distributed.print.common.contant.SystemConstant;
-import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
-import com.qmth.distributed.print.common.util.Result;
-import com.qmth.distributed.print.common.util.ResultUtil;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Service;
-import org.springframework.util.LinkedMultiValueMap;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.annotation.Resource;
-import java.io.IOException;
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-
-/**
- * @Description: 用户导入模版
- * @Param:
- * @return:
- * @Author: wangliang
- * @Date: 2021/3/29
- */
-@Service
-public class UserImportTempleteService implements SyncImportTaskTemplete, Serializable {
-    private final static Logger log = LoggerFactory.getLogger(UserImportTempleteService.class);
-
-    @Resource
-    TaskLogicService taskLogicService;
-
-    @Resource
-    SysRoleService sysRoleService;
-
-    /**
-     * 处理导入
-     *
-     * @param map
-     * @return
-     */
-    @Override
-    public Result importTask(Map<String, Object> map) throws IOException, NoSuchFieldException {
-        MultipartFile file = (MultipartFile) map.get(SystemConstant.FILE);
-        List<LinkedMultiValueMap<Integer, Object>> finalList = ExcelUtil.excelReader(file.getInputStream(), Lists.newArrayList(UserImportDto.class), (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
-            List<ExcelError> excelErrorTemp = new ArrayList<>();
-            for (int i = 0; i < finalExcelList.size(); i++) {
-                LinkedMultiValueMap<Integer, Object> excelMap = finalExcelList.get(i);
-                List<Object> userImportDtoList = excelMap.get(i);
-                for (int y = 0; y < userImportDtoList.size(); y++) {
-                    UserImportDto userImportDto = (UserImportDto) userImportDtoList.get(y);
-                    excelErrorTemp.addAll(ExcelUtil.checkExcelField(userImportDto, y, i));
-                    //查角色名是否存在
-                    QueryWrapper<SysRole> sysRoleQueryWrapper = new QueryWrapper<>();
-                    sysRoleQueryWrapper.lambda().eq(SysRole::getName, userImportDto.getRole());
-                    SysRole sysRole = sysRoleService.getOne(sysRoleQueryWrapper);
-                    if (Objects.isNull(sysRole)) {
-                        throw ExceptionResultEnum.ERROR.exception(JSONObject.toJSONString(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[角色名]不存在")));
-                    }
-                    if (sysRole.getType() == RoleTypeEnum.SCHOOL_ADMIN && Objects.isNull(userImportDto.getSchoolCode())) {
-                        excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[学校代码]必填"));
-                    }
-                    if (userImportDto.getPassword().length() < 6) {
-                        excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[密码]不能小于6位"));
-                    } else if (userImportDto.getPassword().length() > 30) {
-                        excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[密码]不能大于30位"));
-                    }
-                    if (userImportDto.getRealName().length() > 25) {
-                        excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[姓名]不能超过25个字符"));
-                    }
-                    if (userImportDto.getLoginName().length() > 25) {
-                        excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[登录名]不能超过25个字符"));
-                    }
-                    userImportDto.setSysRole(sysRole);
-                }
-            }
-            if (excelErrorTemp.size() > 0) {
-                throw ExceptionResultEnum.ERROR.exception(JSONObject.toJSONString(excelErrorTemp));
-            }
-            return finalExcelList;
-        });
-        return ResultUtil.ok(taskLogicService.executeUserImportLogic(finalList, map));
-    }
-}

+ 0 - 9
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/TaskLogicService.java

@@ -16,15 +16,6 @@ import java.util.Map;
  */
 public interface TaskLogicService {
 
-    /**
-     * 执行导入用户逻辑
-     *
-     * @param finalList
-     * @param map
-     * @return
-     */
-    public Map<String, Object> executeUserImportLogic(List<LinkedMultiValueMap<Integer, Object>> finalList, Map<String, Object> map);
-
     /**
      * 创建pdf逻辑
      *

+ 4 - 63
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/TaskLogicServiceImpl.java

@@ -4,11 +4,9 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.google.gson.Gson;
 import com.qmth.boot.api.exception.ApiException;
 import com.qmth.distributed.print.business.bean.dto.FieldsDto;
 import com.qmth.distributed.print.business.bean.dto.PdfDto;
-import com.qmth.distributed.print.business.bean.dto.excel.UserImportDto;
 import com.qmth.distributed.print.business.bean.result.ExaminationResult;
 import com.qmth.distributed.print.business.entity.*;
 import com.qmth.distributed.print.business.enums.ExamStatusEnum;
@@ -16,11 +14,12 @@ import com.qmth.distributed.print.business.enums.PrintPlanStatusEnum;
 import com.qmth.distributed.print.business.enums.UploadFileEnum;
 import com.qmth.distributed.print.business.service.*;
 import com.qmth.distributed.print.business.templete.service.TaskLogicService;
-import com.qmth.distributed.print.business.util.*;
-import com.qmth.distributed.print.business.util.excel.ExcelError;
+import com.qmth.distributed.print.business.util.ConvertUtil;
+import com.qmth.distributed.print.business.util.CreatePdfUtil;
+import com.qmth.distributed.print.business.util.ExcelUtil;
+import com.qmth.distributed.print.business.util.OssUtil;
 import com.qmth.distributed.print.common.contant.SystemConstant;
 import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
-import com.qmth.distributed.print.common.util.Base64Util;
 import com.qmth.distributed.print.common.util.ResultUtil;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.ss.usermodel.CellType;
@@ -32,7 +31,6 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.LinkedMultiValueMap;
 
 import javax.annotation.Resource;
 import java.io.*;
@@ -52,12 +50,6 @@ import java.util.stream.Stream;
 public class TaskLogicServiceImpl implements TaskLogicService {
     private final static Logger log = LoggerFactory.getLogger(TaskLogicServiceImpl.class);
 
-    @Resource
-    SysUserService sysUserService;
-
-    @Resource
-    BasicSchoolService basicSchoolService;
-
     @Resource
     CommonService commonService;
 
@@ -103,57 +95,6 @@ public class TaskLogicServiceImpl implements TaskLogicService {
     @Resource
     CreatePdfUtil createPdfUtil;
 
-    /**
-     * 执行导入用户逻辑
-     *
-     * @param finalList
-     * @param map
-     * @return
-     */
-    @Override
-    @Transactional
-    public Map<String, Object> executeUserImportLogic(List<LinkedMultiValueMap<Integer, Object>> finalList, Map<String, Object> map) {
-        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        Gson gson = new Gson();
-        LinkedMultiValueMap<Long, SysUser> tbUserLinkedMultiValueMap = new LinkedMultiValueMap<>();
-        for (int i = 0; i < finalList.size(); i++) {
-            LinkedMultiValueMap<Integer, Object> excelMap = finalList.get(i);
-            List<Object> userImportDtoList = excelMap.get(i);
-            for (int y = 0; y < userImportDtoList.size(); y++) {
-                UserImportDto userImportDto = (UserImportDto) userImportDtoList.get(y);
-                SysUser sysUser = gson.fromJson(gson.toJson(userImportDto), SysUser.class);
-
-                //查用户登录名是否重复
-                QueryWrapper<SysUser> sysUserQueryWrapper = new QueryWrapper<>();
-                sysUserQueryWrapper.lambda().eq(SysUser::getLoginName, userImportDto.getLoginName());
-                long count = sysUserService.count(sysUserQueryWrapper);
-                if (count > 0) {
-                    throw ExceptionResultEnum.ERROR.exception(JSONObject.toJSONString(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[登录名]重复")));
-                }
-                //查学校是否存在
-                if (Objects.nonNull(userImportDto.getSchoolCode())) {
-                    QueryWrapper<BasicSchool> basicSchoolQueryWrapper = new QueryWrapper<>();
-                    basicSchoolQueryWrapper.lambda().eq(BasicSchool::getCode, userImportDto.getSchoolCode());
-                    BasicSchool basicSchool = basicSchoolService.getOne(basicSchoolQueryWrapper);
-                    if (Objects.isNull(basicSchool)) {
-                        throw ExceptionResultEnum.ERROR.exception(JSONObject.toJSONString(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[学校代码]不存在")));
-                    }
-                    sysUser.setSchoolId(basicSchool.getId());
-                }
-                sysUser.setInsertInfo(requestUser.getId());
-                sysUser.setPassword(Base64Util.encode(userImportDto.getPassword().getBytes()));
-                tbUserLinkedMultiValueMap.add(userImportDto.getSysRole().getId(), sysUser);
-            }
-        }
-        tbUserLinkedMultiValueMap.forEach((k, v) -> {
-            sysUserService.saveBatch(v);
-            v.forEach(s -> {
-                commonService.addUserRolePrivilege(s, k);
-            });
-        });
-        return map;
-    }
-
     /**
      * 创建pdf逻辑
      *

+ 1 - 45
distributed-print-business/src/main/resources/mapper/SysUserMapper.xml

@@ -49,51 +49,7 @@
             </if>
         </where>
     </select>
-
-    <select id="queryByExport" resultType="com.qmth.distributed.print.business.bean.dto.excel.UserExportDto">
-        select
-            tbu.real_name as realName,
-            tbu.login_name as loginName,
-            tbr.name as roleName,
-            group_concat(tbs.name, CONCAT(CONCAT('(', tbs.code), ')')) as schoolNameCode,
-            if(tbu.enable = 1,
-            '启用',
-            '禁用') as enable,
-            FROM_UNIXTIME(tbu.update_time / 1000, '%Y-%m-%d %H:%i:%s') as updateTime,
-            (
-            select
-            t.real_name
-            from
-            sys_user t
-            where
-            t.id = tbu.update_id) as updateName
-            from
-            sys_user tbu
-            left join (
-            select
-            DISTINCT role_id,
-            user_id
-            from
-            sys_user_role) tburp on
-            tburp.user_id = tbu.id
-            left join sys_role tbr on
-            tbr.id = tburp.role_id
-            left join basic_school tbs on
-            tbs.id = tbu.school_id
-            <where>
-                and tbu.id in
-                <foreach collection="arraysParams.ids" item="id" index="index" open="(" close=")" separator=",">
-                    #{id}
-                </foreach>
-            </where>
-            group by
-                tbu.real_name,
-                tbu.login_name,
-                tbr.name,
-                tbu.enable,
-                tbu.update_time,
-                tbu.update_id
-    </select>
+    
     <select id="listUser" resultType="com.qmth.distributed.print.business.bean.dto.BlurryUserDto">
         SELECT
            distinct a.id, a.real_name name

+ 26 - 106
distributed-print/src/main/java/com/qmth/distributed/print/api/SysUserController.java

@@ -4,46 +4,20 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 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.dto.BlurryUserDto;
 import com.qmth.distributed.print.business.bean.dto.UserDto;
-import com.qmth.distributed.print.business.bean.dto.excel.UserExportDto;
-import com.qmth.distributed.print.business.bean.params.ArraysParams;
-import com.qmth.distributed.print.business.bean.result.EditResult;
-import com.qmth.distributed.print.business.entity.BasicAttachment;
 import com.qmth.distributed.print.business.entity.SysUser;
-import com.qmth.distributed.print.business.entity.TBTask;
-import com.qmth.distributed.print.business.enums.TaskTypeEnum;
-import com.qmth.distributed.print.business.enums.UploadFileEnum;
-import com.qmth.distributed.print.business.service.BasicAttachmentService;
 import com.qmth.distributed.print.business.service.SysUserService;
-import com.qmth.distributed.print.business.service.TBTaskService;
-import com.qmth.distributed.print.business.templete.execute.AsyncCreatePdfTempleteService;
-import com.qmth.distributed.print.business.templete.execute.AsyncUserImportTempleteService;
-import com.qmth.distributed.print.business.templete.execute.UserImportTempleteService;
-import com.qmth.distributed.print.business.util.ExcelUtil;
-import com.qmth.distributed.print.business.util.OssUtil;
-import com.qmth.distributed.print.business.util.ServletUtil;
-import com.qmth.distributed.print.common.contant.SystemConstant;
-import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
 import com.qmth.distributed.print.common.util.Result;
 import com.qmth.distributed.print.common.util.ResultUtil;
-import io.swagger.annotations.*;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
 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.io.IOException;
-import java.util.Collections;
 import java.util.List;
-import java.util.Map;
-import java.util.Objects;
 
 /**
  * <p>
@@ -63,17 +37,11 @@ public class SysUserController {
     @Autowired
     private SysUserService sysUserService;
 
-    @Resource
-    BasicAttachmentService basicAttachmentService;
-
-    @Resource
-    UserImportTempleteService userImportTempleteService;
-
-    @Resource
-    AsyncUserImportTempleteService asyncUserImportTempleteService;
-
-    @Resource
-    TBTaskService tbTaskService;
+//    @Resource
+//    BasicAttachmentService basicAttachmentService;
+//
+//    @Resource
+//    TBTaskService tbTaskService;
 
     /**
      * 查询
@@ -175,72 +143,24 @@ public class SysUserController {
         return ResultUtil.ok(isSuccess);
     }
 
-    @ApiOperation(value = "用户批量导入接口")
-    @RequestMapping(value = "/import", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
-    @Transactional
-    public Result userImport(@ApiParam(value = "上传文件", required = true) @RequestParam MultipartFile file) {
-        BasicAttachment basicAttachment = null;
-        try {
-            basicAttachment = basicAttachmentService.saveAttachment(file, ServletUtil.getRequestMd5(), UploadFileEnum.FILE);
-            if (Objects.isNull(basicAttachment)) {
-                throw ExceptionResultEnum.ATTACHMENT_ERROR.exception();
-            } else {
-                userImportTempleteService.importTask(Collections.singletonMap(SystemConstant.FILE, file));
-            }
-        } 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();
-    }
-
-    @ApiOperation(value = "异步用户批量导入接口")
-    @RequestMapping(value = "/async/import", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
-    public Result userImportAysnc(@ApiParam(value = "上传文件", required = true) @RequestParam MultipartFile file) throws IOException {
-        Map<String, Object> map = tbTaskService.saveTask(file, TaskTypeEnum.USER_IMPORT);
-        asyncUserImportTempleteService.importTask(map);
-        TBTask tbTask = Objects.nonNull(map.get(SystemConstant.TASK)) ? (TBTask) map.get(SystemConstant.TASK) : null;
-        return Objects.nonNull(tbTask) ? ResultUtil.ok(new EditResult(tbTask.getId())) : ResultUtil.error("创建任务失败");
-    }
-
-    @ApiOperation(value = "用户批量导出接口")
-    @RequestMapping(value = "/export", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
-    public void export(@ApiParam(value = "数组id", required = true) @Valid @RequestBody ArraysParams arraysParams, BindingResult bindingResult) throws Exception {
-        if (bindingResult.hasErrors()) {
-            ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
-        }
-        List<UserExportDto> userExportDtoList = sysUserService.queryByExport(arraysParams);
-        ExcelUtil.excelExport("用户列表", UserExportDto.class, userExportDtoList, ServletUtil.getResponse());
-    }
-
-    @Resource
-    AsyncCreatePdfTempleteService asyncCreatePdfTempleteService;
-
-    @Resource
-    OssUtil ossUtil;
-
-    @ApiOperation(value = "异步创建pdf接口")
-    @RequestMapping(value = "/async/create_pdf", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
-    public Result createPdfAysnc(@ApiParam(value = "印刷计划id", required = true) @RequestParam String printPlanId,
-                                 @ApiParam(value = "考务计划id", required = false) @RequestParam(required = false) String examDetailId) throws IOException {
-        Map<String, Object> map = tbTaskService.saveTask(TaskTypeEnum.CREATE_PDF, SystemConstant.convertIdToLong(printPlanId));
-        if (Objects.nonNull(examDetailId)) {
-            map.computeIfAbsent("examDetailId", v -> SystemConstant.convertIdToLong(examDetailId));
-        }
-        asyncCreatePdfTempleteService.createPdf(map);
-        TBTask tbTask = Objects.nonNull(map.get(SystemConstant.TASK)) ? (TBTask) map.get(SystemConstant.TASK) : null;
-        return Objects.nonNull(tbTask) ? ResultUtil.ok(new EditResult(tbTask.getId())) : ResultUtil.error("创建任务失败");
-    }
+//    @Resource
+//    AsyncCreatePdfTempleteService asyncCreatePdfTempleteService;
+//
+//    @Resource
+//    OssUtil ossUtil;
+//
+//    @ApiOperation(value = "异步创建pdf接口")
+//    @RequestMapping(value = "/async/create_pdf", method = RequestMethod.POST)
+//    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
+//    public Result createPdfAysnc(@ApiParam(value = "印刷计划id", required = true) @RequestParam String printPlanId,
+//                                 @ApiParam(value = "考务计划id", required = false) @RequestParam(required = false) String examDetailId) throws IOException {
+//        Map<String, Object> map = tbTaskService.saveTask(TaskTypeEnum.CREATE_PDF, SystemConstant.convertIdToLong(printPlanId));
+//        if (Objects.nonNull(examDetailId)) {
+//            map.computeIfAbsent("examDetailId", v -> SystemConstant.convertIdToLong(examDetailId));
+//        }
+//        asyncCreatePdfTempleteService.createPdf(map);
+//        TBTask tbTask = Objects.nonNull(map.get(SystemConstant.TASK)) ? (TBTask) map.get(SystemConstant.TASK) : null;
+//        return Objects.nonNull(tbTask) ? ResultUtil.ok(new EditResult(tbTask.getId())) : ResultUtil.error("创建任务失败");
+//    }
 }