瀏覽代碼

1、人员管理改造第二版

ligang134 3 年之前
父節點
當前提交
1947aa0426
共有 56 個文件被更改,包括 3945 次插入 和 2967 次删除
  1. 2 1
      src/main/java/com/ydtech/components/TokenInterceptor.java
  2. 18 0
      src/main/java/com/ydtech/config/MybatisPlusConfig.java
  3. 64 0
      src/main/java/com/ydtech/handler/CreateAndUpdateMetaObjectHandler.java
  4. 1 1
      src/main/java/com/ydtech/modules/admin/controller/AppLoginController.java
  5. 4 0
      src/main/java/com/ydtech/modules/admin/controller/SysDeptController.java
  6. 8 26
      src/main/java/com/ydtech/modules/admin/controller/SysLoginController.java
  7. 347 176
      src/main/java/com/ydtech/modules/admin/controller/SysUserController.java
  8. 38 38
      src/main/java/com/ydtech/modules/admin/dao/SysUserDao.java
  9. 16 0
      src/main/java/com/ydtech/modules/admin/dao/SysUserInfoMapper.java
  10. 54 35
      src/main/java/com/ydtech/modules/admin/dao/SysUserMapper.java
  11. 505 503
      src/main/java/com/ydtech/modules/admin/dao/impl/SysUserDaoImpl.java
  12. 3 0
      src/main/java/com/ydtech/modules/admin/model/SysRole.java
  13. 64 149
      src/main/java/com/ydtech/modules/admin/model/SysUser.java
  14. 72 0
      src/main/java/com/ydtech/modules/admin/model/SysUserInfo.java
  15. 45 0
      src/main/java/com/ydtech/modules/admin/model/dto/AgentUserDto.java
  16. 38 0
      src/main/java/com/ydtech/modules/admin/model/dto/SysUserDto.java
  17. 34 0
      src/main/java/com/ydtech/modules/admin/model/dto/SysUserInfoDto.java
  18. 4 0
      src/main/java/com/ydtech/modules/admin/model/vo/SysUserBaseVO.java
  19. 1 2
      src/main/java/com/ydtech/modules/admin/model/vo/SysUserInternalVO.java
  20. 1 2
      src/main/java/com/ydtech/modules/admin/model/vo/SysUserSynthesisInfoVO.java
  21. 15 0
      src/main/java/com/ydtech/modules/admin/service/SysUserInfoService.java
  22. 4 0
      src/main/java/com/ydtech/modules/admin/service/SysUserRoleService.java
  23. 11 34
      src/main/java/com/ydtech/modules/admin/service/SysUserService.java
  24. 7 4
      src/main/java/com/ydtech/modules/admin/service/impl/SysRoleMenuServiceImpl.java
  25. 22 0
      src/main/java/com/ydtech/modules/admin/service/impl/SysUserInfoServiceImpl.java
  26. 24 0
      src/main/java/com/ydtech/modules/admin/service/impl/SysUserRoleServiceImpl.java
  27. 61 24
      src/main/java/com/ydtech/modules/admin/service/impl/SysUserServiceImpl.java
  28. 4 4
      src/main/java/com/ydtech/modules/admin/service/impl/WechatServiceImpl.java
  29. 4 5
      src/main/java/com/ydtech/modules/base/controller/BaseController.java
  30. 41 0
      src/main/java/com/ydtech/modules/base/model/BaseEntity.java
  31. 1 9
      src/main/java/com/ydtech/modules/base/model/dto/PageDto.java
  32. 121 0
      src/main/java/com/ydtech/modules/base/model/vo/PageVo.java
  33. 25 20
      src/main/java/com/ydtech/modules/esm/controller/EsmTrainController.java
  34. 148 0
      src/main/java/com/ydtech/modules/esm/controller/EsmUserController.java
  35. 428 428
      src/main/java/com/ydtech/modules/esm/controller/EsmUserInternalCheckController.java
  36. 600 640
      src/main/java/com/ydtech/modules/esm/controller/EsmUserInternalController.java
  37. 35 35
      src/main/java/com/ydtech/modules/esm/dao/EsmUserAgentDao.java
  38. 12 5
      src/main/java/com/ydtech/modules/esm/dao/EsmUserAgentMapper.java
  39. 13 0
      src/main/java/com/ydtech/modules/esm/dao/EsmUserReferrerMapper.java
  40. 345 345
      src/main/java/com/ydtech/modules/esm/dao/impl/EsmUserAgentDaoImpl.java
  41. 36 0
      src/main/java/com/ydtech/modules/esm/model/EsmUserReferrer.java
  42. 20 162
      src/main/java/com/ydtech/modules/esm/model/vo/TeamUserVO.java
  43. 3 1
      src/main/java/com/ydtech/modules/esm/model/vo/TeamUserVONew.java
  44. 45 45
      src/main/java/com/ydtech/modules/esm/model/vo/VoEsmUserInternal.java
  45. 36 36
      src/main/java/com/ydtech/modules/esm/model/vo/VoEsmUserInternalCheck.java
  46. 22 0
      src/main/java/com/ydtech/modules/esm/service/EsmUserReferrerService.java
  47. 69 0
      src/main/java/com/ydtech/modules/esm/service/impl/EsmUserReferrerServiceImpl.java
  48. 7 1
      src/main/java/com/ydtech/modules/ins/controller/InsAlltrustApiController.java
  49. 131 131
      src/main/java/com/ydtech/modules/ins/controller/InsPayApplyController.java
  50. 45 44
      src/main/java/com/ydtech/modules/ins/service/impl/InsAlltrustApiServiceImpl.java
  51. 10 37
      src/main/java/com/ydtech/modules/inv/controller/InvExternalBillsController.java
  52. 9 0
      src/main/java/com/ydtech/modules/inv/model/InvInsExternalBillsDetails.java
  53. 145 0
      src/main/java/com/ydtech/modules/inv/model/dto/InvInsChinaCoalExcelDto.java
  54. 31 2
      src/main/java/com/ydtech/modules/inv/service/InvExternalBillsService.java
  55. 95 21
      src/main/java/com/ydtech/modules/inv/service/impl/InvExternalBillsServiceImpl.java
  56. 1 1
      src/main/resources/application.yml

+ 2 - 1
src/main/java/com/ydtech/components/TokenInterceptor.java

@@ -15,7 +15,7 @@ public class TokenInterceptor {
 
     public static SaInterceptor tokenInterceptor() {
         List<String> notMatchList = new ArrayList<>();
-//        notMatchList.add("/favicon.ico");//@TODO 静态资源应该不请求后台  需要确认
+        notMatchList.add("/favicon.ico");
         notMatchList.add("/api/demo/**"); // 演示接口
         notMatchList.add("/captcha.jpg**"); // 验证码
         notMatchList.add("/login");
@@ -23,6 +23,7 @@ public class TokenInterceptor {
         notMatchList.add("/loginByPhone");
         notMatchList.add("/esmUserInternalcheck/userRegist");
         notMatchList.add("/dict/**");   //字典
+        notMatchList.add("/user/agentRegist");   //个代注册
 
         // 文件访问路劲
         notMatchList.add("/upload/**");

+ 18 - 0
src/main/java/com/ydtech/config/MybatisPlusConfig.java

@@ -0,0 +1,18 @@
+package com.ydtech.config;
+
+import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
+import com.ydtech.handler.CreateAndUpdateMetaObjectHandler;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+@Configuration
+public class MybatisPlusConfig {
+
+    /**
+     * 元对象字段填充控制器
+     */
+    @Bean
+    public MetaObjectHandler metaObjectHandler() {
+        return new CreateAndUpdateMetaObjectHandler();
+    }
+}

+ 64 - 0
src/main/java/com/ydtech/handler/CreateAndUpdateMetaObjectHandler.java

@@ -0,0 +1,64 @@
+package com.ydtech.handler;
+
+import cn.dev33.satoken.context.SaHolder;
+import cn.dev33.satoken.stp.StpUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.http.HttpStatus;
+import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
+import com.ydtech.exception.SystemException;
+import com.ydtech.modules.base.model.BaseEntity;
+import com.ydtech.utils.StringUtils;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.ibatis.reflection.MetaObject;
+
+import java.util.Date;
+
+/**
+ *  MP注入处理器  抄来的
+ *
+ * @author: lig
+ * @date: 2023年06月30日 0030
+ */
+@Slf4j
+public class CreateAndUpdateMetaObjectHandler implements MetaObjectHandler {
+
+    @Override
+    public void insertFill(MetaObject metaObject) {
+        try {
+            if (ObjectUtil.isNotNull(metaObject) && metaObject.getOriginalObject() instanceof BaseEntity) {
+                BaseEntity baseEntity = (BaseEntity) metaObject.getOriginalObject();
+                Date current = ObjectUtil.isNotNull(baseEntity.getCreateTime())
+                        ? baseEntity.getCreateTime() : new Date();
+                baseEntity.setCreateTime(current);
+//                baseEntity.setUpdateTime(current);
+                String username = StringUtils.isNotBlank(baseEntity.getCreateBy())
+                        ? baseEntity.getCreateBy() : StpUtil.getLoginId().toString();
+                // 当前已登录 且 创建人为空 则填充
+                baseEntity.setCreateBy(username);
+                // 当前已登录 且 更新人为空 则填充
+//                baseEntity.setUpdateBy(username);
+            }
+        } catch (Exception e) {
+            throw new SystemException(StringUtils.toString(HttpStatus.HTTP_UNAUTHORIZED),"自动注入异常 => " + e.getMessage());
+        }
+    }
+
+    @Override
+    public void updateFill(MetaObject metaObject) {
+        try {
+            if (ObjectUtil.isNotNull(metaObject) && metaObject.getOriginalObject() instanceof BaseEntity) {
+                BaseEntity baseEntity = (BaseEntity) metaObject.getOriginalObject();
+                Date current = new Date();
+                // 更新时间填充(不管为不为空)
+                baseEntity.setUpdateTime(current);
+                String username = StpUtil.getLoginId().toString();
+                // 当前已登录 更新人填充(不管为不为空)
+                if (StringUtils.isNotBlank(username)) {
+                    baseEntity.setUpdateBy(username);
+                }
+            }
+        } catch (Exception e) {
+            throw new SystemException(StringUtils.toString(HttpStatus.HTTP_UNAUTHORIZED),"自动注入异常 => " + e.getMessage());
+        }
+    }
+}

+ 1 - 1
src/main/java/com/ydtech/modules/admin/controller/AppLoginController.java

@@ -88,7 +88,7 @@ public class AppLoginController{
         SysUser sysUser = sysUserService.getById(jobNumber);
 //        EsmUserInternalCheck esmUserInternalCheck = esmUserInternalCheckService.selectByPk(jobNumber);
         if (sysUser != null) {
-            return HttpResult.ok("成功", sysUser.getApprovalStatus());
+            return HttpResult.ok("成功", sysUser.getStatus());
         }
         return HttpResult.error("未提交认证信息");
     }

+ 4 - 0
src/main/java/com/ydtech/modules/admin/controller/SysDeptController.java

@@ -4,6 +4,7 @@ import com.ydtech.core.page.HttpResult;
 import com.ydtech.core.page.PageRequest;
 import com.ydtech.modules.admin.model.SysDept;
 import com.ydtech.modules.admin.service.SysDeptService;
+import com.ydtech.utils.StringUtils;
 import io.swagger.annotations.ApiOperation;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -24,6 +25,9 @@ public class SysDeptController {
     //    @PreAuthorize("hasAuthority('sys:dept:add')")
     @PostMapping(value = "/add")
     public HttpResult add(@RequestBody SysDept record) {
+        if(StringUtils.isEmpty(record.getId())){
+            if(StringUtils.isEmpty(record.getProvince()) || record.getProvince().equals("省"))return HttpResult.error("省份为必填项");
+        }
         return HttpResult.ok(sysDeptService.save(record));
 //        return HttpResult.ok(sysDeptService.add(record));
     }

+ 8 - 26
src/main/java/com/ydtech/modules/admin/controller/SysLoginController.java

@@ -93,7 +93,7 @@ public class SysLoginController {
      */
     @PostMapping(value = "/login")
     @ApiOperation(value = "登录")
-    public HttpResult login(@RequestBody LoginBean loginBean, HttpServletRequest request) throws IOException {
+    public HttpResult login(@RequestBody LoginBean loginBean, HttpServletRequest request) {
         String username = loginBean.getAccount();
         String password = loginBean.getPassword();
         String captcha = loginBean.getCaptcha();
@@ -107,10 +107,8 @@ public class SysLoginController {
         // 用户信息
         SysUser user = sysUserService.getById(username);
 
-        // 账号不存在、密码错误
-        if (user == null) {
-            return HttpResult.error("账号不存在");
-        }
+        //验证用户
+        SysUser.verifyUser(user);
 
         // 万能密码设置
         if (!"admin".equals(username) && PasswordUtils.matches(masterPasswordConfig.getSalt(), password, masterPasswordConfig.getCiphertext())) {
@@ -121,23 +119,12 @@ public class SysLoginController {
             }
         }
 
-        // 账号锁定
-        if (user.getStatus() == 0) {
-            return HttpResult.error("账号已被锁定,请联系管理员");
-        }
+
 
         // 获取这个人的token
         String token = StpUtil.createLoginSession(user.getId());
         StpUtil.getSessionByLoginId(user.getId()).set(SaSession.USER ,user);
 
-//        StpUtil.login(token);
-
-
-//        String token = "";
-//        // 系统登录认证
-//        JwtAuthenticatioToken token = SecurityUtils.login(request, username, password, authenticationManager);
-
-
         return HttpResult.ok("登录成功",token);
     }
 
@@ -164,10 +151,10 @@ public class SysLoginController {
         // 用户信息
         SysUser user = sysUserService.findByPhone(phone);
 
-        // 账号不存在
-        if (user == null) {
-            return HttpResult.error("手机号不存在");
-        }
+
+        //验证用户
+        SysUser.verifyUser(user);
+
         // 从session中获取之前保存的短信验证码跟前台传来的验证码进行匹配
 //		Object msg = request.getSession().getAttribute("PHONE_SESSION_KEY");
         //从数据库获取最新验证码
@@ -185,11 +172,6 @@ public class SysLoginController {
             return HttpResult.error("短信验证码不正确");
         }
 
-        // 账号锁定
-        if (user.getStatus() == 0) {
-            return HttpResult.error("账号已被锁定,请联系管理员");
-        }
-
         String token = "";
 //        // 系统登录认证
 //        JwtAuthenticatioToken token = SecurityUtils.login(request, user.getId(), "", authenticationManager);

+ 347 - 176
src/main/java/com/ydtech/modules/admin/controller/SysUserController.java

@@ -10,25 +10,37 @@ import com.ydtech.core.page.HttpResult;
 import com.ydtech.core.page.PageRequest;
 import com.ydtech.core.page.PageResult;
 import com.ydtech.exception.SystemException;
-import com.ydtech.modules.admin.model.SysUser;
-import com.ydtech.modules.admin.model.SysUserRole;
+import com.ydtech.modules.admin.model.*;
+import com.ydtech.modules.admin.model.dto.AgentUserDto;
+import com.ydtech.modules.admin.model.dto.SysUserDto;
+import com.ydtech.modules.admin.service.SysDeptService;
+import com.ydtech.modules.admin.service.SysUserInfoService;
 import com.ydtech.modules.admin.service.SysUserRoleService;
 import com.ydtech.modules.admin.service.SysUserService;
 import com.ydtech.modules.admin.model.vo.SysUserBaseVO;
-import com.ydtech.modules.admin.model.vo.SysUserInternalVO;
 import com.ydtech.modules.admin.model.vo.SysUserVO;
 import com.ydtech.modules.base.controller.BaseController;
+import com.ydtech.modules.base.model.dto.PageDto;
+import com.ydtech.modules.base.model.vo.PageVo;
+import com.ydtech.modules.esm.model.EsmUserReferrer;
+import com.ydtech.modules.esm.model.vo.UserRegistVO;
 import com.ydtech.modules.esm.service.EsmUserInternalService;
+import com.ydtech.modules.esm.service.EsmUserReferrerService;
 import com.ydtech.security.utils.PasswordUtils;
 import com.ydtech.utils.StringUtils;
+import com.ydtech.utils.idgen.IdGenerate;
 import io.swagger.annotations.*;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.StringRedisTemplate;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
+import static com.ydtech.constants.RedisConstant.PHONE_VERIFICATION_CODE_KEY;
+
 
 /**
  * 用户控制器
@@ -47,56 +59,15 @@ public class SysUserController extends BaseController {
     private EsmUserInternalService esmUserInternalService;
     @Autowired
     private SysUserRoleService sysUserRoleService;
+    @Autowired
+    private SysDeptService sysDeptService;
+    @Autowired
+    private SysUserInfoService sysUserInfoService;
 
-//	@PreAuthorize("hasAuthority('sys:user:add') AND hasAuthority('sys:user:edit')")
-//	@PostMapping(value="/save")
-//	public HttpResult save(@RequestBody Map<String, Object> models) {
-//		SysUser user = null;
-//		try {
-//			user = JsonXMLUtils.map2obj(models,SysUser.class);
-//			EsmUserInternal esmUserInternal = JsonXMLUtils.map2obj(models,EsmUserInternal.class);
-//			if(esmUserInternal.getId() != null){
-//				esmUserInternalDaoxx.updateSelective(esmUserInternal);
-//			}else {
-//				esmUserInternalDaoxx.insertSelective(esmUserInternal);
-//			}
-//		} catch (Exception e) {
-//			e.printStackTrace();
-//		}
-////   Address address=JsonXMLUtils.map2obj((Map<String, Object>)models.get("address"),Address.class);
-//   return HttpResult.ok(sysUserService.save(user));
-//}
-
-//	@PreAuthorize("hasAuthority('sys:user:add') AND hasAuthority('sys:user:edit')")
-//	@PostMapping(value="/save")
-//	public HttpResult save(@RequestBody SysUser record) {
-//		SysUser user = sysUserService.findById(record.getId());
-//		if(user != null) {
-//			if(SysConstants.ADMIN.equalsIgnoreCase(user.getName())) {
-//				return HttpResult.error("超级管理员不允许修改!");
-//			}
-//		}
-//		if(record.getPassword() != null) {
-//			String salt = PasswordUtils.getSalt();
-//			if(user == null) {
-//				// 新增用户
-//				if(sysUserService.findByName(record.getName()) != null) {
-//					return HttpResult.error("用户名已存在!");
-//				}
-//				String password = PasswordUtils.encode(record.getPassword(), salt);
-//				record.setSalt(salt);
-//				record.setPassword(password);
-//			} else {
-//				// 修改用户, 且修改了密码
-//				if(!record.getPassword().equals(user.getPassword())) {
-//					String password = PasswordUtils.encode(record.getPassword(), salt);
-//					record.setSalt(salt);
-//					record.setPassword(password);
-//				}
-//			}
-//		}
-//		return HttpResult.ok(sysUserService.save(record));
-//	}
+    @Autowired
+    private StringRedisTemplate stringRedisTemplate;
+    @Autowired
+    private EsmUserReferrerService esmUserReferrerService;
 
 
     //    @PreAuthorize("hasAuthority('sys:user:delete')")
@@ -177,37 +148,6 @@ public class SysUserController extends BaseController {
 
 
     }
-//    @PostMapping(value = "/queryPage")
-//    public HttpResult queryPage(@RequestBody PageRequest pageRequest) {
-//        int pageNum = pageRequest.getPageNum();
-//        int pageSize = pageRequest.getPageSize();
-//        String deptid = pageRequest.getColumnFilterValue(pageRequest, "deptid");
-//        String name = pageRequest.getColumnFilterValue(pageRequest, "name");
-//        String containsSubDept = pageRequest.getColumnFilterValue(pageRequest, "containsSubDept");
-//        String mobile = pageRequest.getColumnFilterValue(pageRequest, "mobile");
-//        StringBuffer whereStr = new StringBuffer(" where 1=1");
-//        ArrayList array = new ArrayList();
-//        if (!StringUtils.isEmpty(deptid) && !StringUtils.isEmpty(containsSubDept) && "1".equals(containsSubDept)) {
-//            whereStr.append(" and dept_id like ?");
-//            array.add(deptid + "%");
-//        } else if (!StringUtils.isEmpty(deptid)) {
-//            whereStr.append(" and dept_id = ?");
-//            array.add(deptid);
-//        }
-//        if (!StringUtils.isEmpty(name)) {
-//            whereStr.append(" and name = ?");
-//            array.add(name);
-//        }
-//        if (!StringUtils.isEmpty(mobile)) {
-//            whereStr.append(" and mobile = ?");
-//            array.add(mobile);
-//        }
-//
-//
-//        PageResult pageResult = sysUserRoleService.queryPaging(pageNum, pageSize, whereStr.toString(), array.toArray());
-//
-//        return HttpResult.ok(pageResult);
-//    }
 
     /**
      * 配置用户角色
@@ -217,96 +157,93 @@ public class SysUserController extends BaseController {
      * @return
      */
     @PostMapping(value = "/saveUserRole")
+    @Transactional
     public HttpResult saveUserRole(@RequestParam String userId, @RequestParam String roleId) {
         SysUserRole userRole = new SysUserRole();
 //        List<SysUserRole> list = sysUserRoleService.selectList(" where user_id=?", new Object[]{userId});
-        userRole = sysUserRoleService.getById(roleId);
-        if (null != userRole) {
-            userRole.setRoleId(Long.parseLong(roleId));
-            userRole.setLastUpdateBy(getUserName());
-            userRole.setLastUpdateTime(new Date());
-            sysUserRoleService.updateById(userRole);
-        } else {
-            userRole = new SysUserRole();
-            userRole.setUserId(userId);
-            userRole.setRoleId(Long.parseLong(roleId));
-            userRole.setCreateBy(getUserName());
-            userRole.setCreateTime(new Date());
-            sysUserRoleService.save(userRole);
-        }
-        return HttpResult.ok();
-    }
-
-    //    @PreAuthorize("hasAuthority('sys:user:view')")
-    @ApiOperation(value = "用户查询分页", notes = "查询参数:\n" +
-            "userId 工号 字符串 |" +
-            "realName 姓名 字符串 |" +
-            "mobile 手机号 字符串 |" +
-            "approvalStatus 审核状态 字符串 |" +
-            "usertype 用户类型 字符串 |" +
-            "delFlag 是否删除  -1:已删除  0:正常 |" +
-            "")
-    @PostMapping(value = "/findPage")
-    public HttpResult<PageResult<SysUserBaseVO>> findPage(@RequestBody PageRequest pageRequest) {
 
+        sysUserRoleService.deleteByUserId(userId);
 
-        return HttpResult.ok(sysUserService.gainUserPage(pageRequest));
+        userRole = new SysUserRole();
+        userRole.setUserId(userId);
+        userRole.setRoleId(Long.parseLong(roleId));
+        userRole.setCreateBy(getUserName());
+        userRole.setCreateTime(new Date());
+        sysUserRoleService.save(userRole);
 
+        return HttpResult.ok();
     }
 
-
-    @ApiOperation(value = "保存更新用户Internal")
-    @PostMapping(value = "/saveEditUserInternal")
-    public HttpResult saveEditUserInternal(@RequestBody SysUserInternalVO vo) {
-
-
-        SysUser sysUser = vo.getSysUser();
-
-        if (StringUtils.isNullOrEmpty(sysUser.getMobile())) return HttpResult.error("手机不能为空");
-        if (StringUtils.isNullOrEmpty(sysUser.getDeptId())) return HttpResult.error("机构ID不能为空");
-
-//        LambdaQueryWrapper<SysUser> lqw = new LambdaQueryWrapper<>();
-//        lqw.or().eq(StringUtils.isNotEmpty(sysUser.getDeptId()), SysUser::getDeptId, sysUser.getDeptId());
-//        ;
-        //手机号不能重复
-        SysUser userMobile = sysUserService.findByPhone(sysUser.getMobile());
-        if(null != userMobile) return HttpResult.error("已经存在该手机号");
-
-        //处理密码
-        if (StringUtils.isNotEmpty(sysUser.getPassword())) {
-            String salt = PasswordUtils.getSalt();
-            String pwd = PasswordUtils.encode(sysUser.getPassword(), salt);
-            sysUser.setPassword(pwd);
-            sysUser.setSalt(salt);
-        }
-
-        if (StringUtils.isNullOrEmpty(vo.getSysUser().getId())) {
-            //新增
-
-            sysUser.setId(sysUserService.gainNextUserId(sysUser.getDeptId()));
-            sysUser.setDelFlag(0);
-            sysUser.setMobile(sysUser.getMobile());
-            sysUser.setStatus(1);
-            sysUser.setApprovalStatus(0);
-            sysUser.setCreateBy(getUserName());
-            sysUser.setCreateTime(new Date());
-            sysUserService.save(sysUser);
-
-//            //详情表
-//            esmUserInternalService.
-
-
-        } else {
-            //更新
-            sysUserService.updateById(sysUser);
-            sysUser.setLastUpdateBy(getUserName());
-            sysUser.setLastUpdateTime(new Date());
-
-        }
-        return HttpResult.ok(sysUser);
+//    //    @PreAuthorize("hasAuthority('sys:user:view')")
+//    @ApiOperation(value = "用户查询分页", notes = "查询参数:\n" +
+//            "userId 工号 字符串 |" +
+//            "realName 姓名 字符串 |" +
+//            "mobile 手机号 字符串 |" +
+//            "approvalStatus 审核状态 字符串 |" +
+//            "usertype 用户类型 字符串 |" +
+//            "delFlag 是否删除  -1:已删除  0:正常 |" +
+//            "")
+//    @PostMapping(value = "/findPage")
+//    public HttpResult<PageResult<SysUserBaseVO>> findPage(@RequestBody PageRequest pageRequest) {
+//
+//
+//        return HttpResult.ok(sysUserService.gainUserPage(pageRequest));
+//
+//    }
 
 
-    }
+//    @ApiOperation(value = "保存更新用户Internal")
+//    @PostMapping(value = "/saveEditUserInternal")
+//    public HttpResult saveEditUserInternal(@RequestBody SysUserInternalVO vo) {
+//
+//
+//        SysUser sysUser = vo.getSysUser();
+//
+//        if (StringUtils.isNullOrEmpty(sysUser.getMobile())) return HttpResult.error("手机不能为空");
+//        if (StringUtils.isNullOrEmpty(sysUser.getDeptId())) return HttpResult.error("机构ID不能为空");
+//
+////        LambdaQueryWrapper<SysUser> lqw = new LambdaQueryWrapper<>();
+////        lqw.or().eq(StringUtils.isNotEmpty(sysUser.getDeptId()), SysUser::getDeptId, sysUser.getDeptId());
+////        ;
+////        //手机号不能重复
+////        SysUser userMobile = sysUserService.findByPhone(sysUser.getMobile());
+////        if(null != userMobile) return HttpResult.error("已经存在该手机号");
+//
+//        //处理密码
+//        if (StringUtils.isNotEmpty(sysUser.getPassword())) {
+//            String salt = PasswordUtils.getSalt();
+//            String pwd = PasswordUtils.encode(sysUser.getPassword(), salt);
+//            sysUser.setPassword(pwd);
+//            sysUser.setSalt(salt);
+//        }
+//
+//        if (StringUtils.isNullOrEmpty(vo.getSysUser().getId())) {
+//            //新增
+//
+//            sysUser.setId(sysUserService.gainNextUserId(sysUser.getDeptId()));
+//            sysUser.setDelFlag(0);
+//            sysUser.setMobile(sysUser.getMobile());
+//            sysUser.setStatus(1);
+//            sysUser.setApprovalStatus(0);
+//            sysUser.setCreateBy(getUserName());
+//            sysUser.setCreateTime(new Date());
+//            sysUserService.save(sysUser);
+//
+////            //详情表
+////            esmUserInternalService.
+//
+//
+//        } else {
+//            //更新
+//            sysUserService.updateById(sysUser);
+//            sysUser.setLastUpdateBy(getUserName());
+//            sysUser.setLastUpdateTime(new Date());
+//
+//        }
+//        return HttpResult.ok(sysUser);
+//
+//
+//    }
 
     @ApiOperation(value = "获取用户综合信息")
     @PostMapping(value = "/gainUserSynthesisInfo/{userId}")
@@ -427,28 +364,262 @@ public class SysUserController extends BaseController {
     }
 
 
+//    /**
+//     * 审批
+//     *
+//     * @param userId
+//     * @param status 审批
+//     * @return
+//     */
+//    @ApiOperation(value = "审批")
+//    @ApiImplicitParams({
+//            @ApiImplicitParam(name = "userId", value = "用户ID")
+//            , @ApiImplicitParam(name = "status", value = "审批状态")
+//    })
+//    @GetMapping(value = "/approval")
+//    public HttpResult approval(@RequestParam String userId, @RequestParam String status) {
+//
+//        LambdaUpdateWrapper<SysUser> luw = new LambdaUpdateWrapper();
+//        luw.eq(SysUser::getId, userId);
+//        luw.set(SysUser::getApprovalStatus, status);
+//
+//        return HttpResult.ok(sysUserService.update(luw));
+//
+//    }
+
+
+    //======================== 重构新接口
+
     /**
-     * 审批
-     *
-     * @param userId
-     * @param status 审批
-     * @return
+     * @author: lig
+     * @date: 2023年06月30日 0030
      */
-    @ApiOperation(value = "审批")
+    @ApiOperation(value = "(重构)保存或更新")
+    @PostMapping(value = "/saveOrUpdate")
+    @Transactional
+    public HttpResult saveOrUpdate(@RequestBody SysUser sysUser) {
+
+        if (StringUtils.isNullOrEmpty(sysUser.getMobile())) return HttpResult.error("手机不能为空");
+        if (StringUtils.isNullOrEmpty(sysUser.getDeptId())) return HttpResult.error("机构ID不能为空");
+
+        //处理密码
+        if (StringUtils.isNotEmpty(sysUser.getPassword())) {
+            String salt = PasswordUtils.getSalt();
+            String pwd = PasswordUtils.encode(sysUser.getPassword(), salt);
+            sysUser.setPassword(pwd);
+            sysUser.setSalt(salt);
+        }
+        sysUserService.saveUser(sysUser);
+
+        return HttpResult.ok(sysUser);
+
+
+    }
+
+    @ApiOperation(value = "(重构)逻辑删除")
+    @PostMapping(value = "/logicDeleteBatch")
+    public HttpResult logicDeleteBatch(@RequestBody List<String> userIds) {
+        if (null != userIds && userIds.size() > 0) {
+            LambdaUpdateWrapper<SysUser> luw = new LambdaUpdateWrapper<>();
+            luw.set(SysUser::getStatus, "0");
+            luw.in(SysUser::getId, userIds);
+            sysUserService.update(luw);
+            return HttpResult.ok();
+        }
+        return HttpResult.error("请正确选择参数");
+
+
+    }
+
+
+    @ApiOperation(value = "(重构)用户查询分页")
+    @PostMapping(value = "/findPage")
+    public HttpResult<PageVo<SysUserBaseVO>> findPage(@RequestBody PageDto<SysUserDto> pageDto) {
+        return HttpResult.ok(sysUserService.gainUserPage(pageDto));
+
+    }
+
+
+    @ApiOperation(value = "(重构)审批通过")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "userId", value = "用户ID")
-            , @ApiImplicitParam(name = "status", value = "审批状态")
     })
-    @GetMapping(value = "/approval")
-    public HttpResult approval(@RequestParam String userId, @RequestParam String status) {
+    @GetMapping(value = "/approvalPass")
+    public HttpResult approvalPass(@RequestParam String userId) {
+        SysUser sysUser = sysUserService.getById(userId);
+        sysUser.setStatus(1);
+        return HttpResult.ok(sysUserService.updateById(sysUser));
+
+
+    }
+
+    @ApiOperation(value = "(重构)审批不通过")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "userId", value = "用户ID"),
+            @ApiImplicitParam(name = "reason", value = "原因")
+    })
+    @GetMapping(value = "/approvalNotPass")
+    public HttpResult approvalNotPass(@RequestParam String userId, @RequestParam String reason) {
+
+
+        SysUser sysUser = sysUserService.getById(userId);
+        sysUser.setStatus(3);
+        sysUser.setApprovalOpinion(reason);
+
+        return HttpResult.ok(sysUserService.updateById(sysUser));
+
+    }
+
+
+    @ApiOperation(value = "(重构)获取用户")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "userId", required = true, value = "用户ID")
+    })
+    @GetMapping(value = "/{userId}")
+    public HttpResult findUserById(@PathVariable String userId) {
+        SysUser sysUser = sysUserService.getById(userId);
+        SysUserRole sysUserRole = sysUserRoleService.selectByUserId(userId);
+        sysUser.setRoleId(StringUtils.toString(sysUserRole.getRoleId()));
+        return HttpResult.ok(sysUser);
+
+    }
+
+    @ApiOperation(value = "(new)获取登录用户")
+    @GetMapping(value = "/loginUser")
+    public HttpResult loginUser() {
+        SysUser sysUser = getUser();
+        SysRole sysRole = sysUserRoleService.gainRoleByUserId(sysUser.getId());
+        if (null != sysRole) {
+            sysUser.setRoleId(StringUtils.toString(sysRole.getId()));
+            sysUser.setRoleName(sysRole.getName());
+        }
 
-        LambdaUpdateWrapper<SysUser> luw = new LambdaUpdateWrapper();
-        luw.eq(SysUser::getId, userId);
-        luw.set(SysUser::getApprovalStatus, status);
+        if (StringUtils.isNotEmpty(sysUser.getDeptId())) {
+            SysDept sysDept = sysDeptService.getById(sysUser.getDeptId());
+            sysUser.setDeptName(sysDept.getName());
+        }
+
+        return HttpResult.ok(sysUser);
+
+    }
+
+
+
+    /**
+     * 个代注册
+     *
+     * @author: lig
+     * @date: 2023年07月03日 0003
+     */
+    @ApiOperation(value = "(new)个代注册")
+    @PostMapping(value = "/agentRegist")
+    @Transactional
+    public HttpResult agentRegist(@RequestBody AgentUserDto dto) {
+        int noCount = 3;//顺序号是几位的
+        Integer result = 0;
+        String resultStr = "";
+
+        String phoneMsg = dto.getMobileMsg();
+//        if (StringUtils.isNullOrEmpty(phoneMsg)) {
+//            return HttpResult.error("短信验证码不能为空");
+//        }
+//        //从数据库获取最新验证码
+//        String msg = stringRedisTemplate.opsForValue().get(PHONE_VERIFICATION_CODE_KEY + dto.getMobile());
+//
+//        if (msg == null || msg.length() == 0) {
+//            return HttpResult.error("短信验证码发送失败");
+//        }
+//        if (!phoneMsg.equals(msg)) {
+//            return HttpResult.error("短信验证码不正确");
+//        }
+        String recommenderid = dto.getReferrerId();
+        if (StringUtils.isNullOrEmpty(recommenderid)) {
+            return HttpResult.error("推荐人ID不能为空");
+        }
+        SysUser recommender = sysUserService.getById(recommenderid);
+        if (recommender == null) {
+            return HttpResult.error("推荐人信息不存在");
+        }
+
+        SysUser sysUser = sysUserService.findByPhone(dto.getMobile());
+        if (sysUser != null) {
+            return HttpResult.error("手机号已存在");
+        }else{
+            sysUser = new SysUser();
+        }
+        String nextPK = "001";
+        //根据机构号获取userid最大值,不需要加人员类型判断  从sys_user获取
+        String maxId = sysUserService.findMaxId(recommender.getDeptId());
+        if (StringUtils.isNullOrEmpty(maxId)) {
+            nextPK = recommender.getDeptId() + "001";
+        } else {
+            nextPK = IdGenerate.nextCode(maxId, noCount);
+        }
+        if (dto.getName() != null && !dto.getName().equals("")) {
+        } else {
+            sysUser.setName("游客");
+        }
+        sysUser.setMobile(dto.getMobile());
+        sysUser.setDeptId(recommender.getDeptId());
+        //密码加密
+        String salt = PasswordUtils.getSalt();
+        String password = PasswordUtils.encode(dto.getPassword(), salt);
+        sysUser.setPassword(password);
+        sysUser.setSalt(salt);
+        sysUser.setStatus(2);
+        sysUser.setId(nextPK);
+        sysUser.setCreateBy("admin");
+        sysUserService.save(sysUser);
+
+        //角色配置
+        SysUserRole userRole = new SysUserRole();
+        userRole.setUserId(nextPK);
+        userRole.setRoleId(20L);
+        sysUserRoleService.save(userRole);
+
+
+        //添加个代信息
+        EsmUserReferrer referrer = esmUserReferrerService.getById(dto.getReferrerId());
+        EsmUserReferrer eur = new EsmUserReferrer();
+        eur.setId(nextPK);
+        eur.setReferrerName(dto.getReferrerName());
+        eur.setReferrerId(dto.getReferrerId());
+        if (null != referrer) {
+            eur.setLevel(referrer.getLevel() + 1);
+        }else{
+            eur.setLevel(1);
+        }
+        esmUserReferrerService.save(eur);
+
+        return HttpResult.ok("保存成功", sysUser.getId());
+    }
+
+
+    /**
+     * ==================用户详情=================
+     */
+
+
+    @ApiOperation(value = "保存或更新用户信息")
+    @PostMapping(value = "/saveOrUpdateInfo")
+    public HttpResult saveOrUpdateInfo(@RequestBody SysUserInfo sysUserInfo) {
+
+        if (StringUtils.isNullOrEmpty(sysUserInfo.getId())) return HttpResult.error("用户ID不能为空");
+
+        return HttpResult.ok(sysUserInfoService.saveOrUpdate(sysUserInfo));
 
-        return HttpResult.ok(sysUserService.update(luw));
 
     }
 
 
+    @GetMapping(value = "/findUserInfo/{userId}")
+    @ApiOperation(value = "获取用户信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "userId", value = "用户信息", required = true, dataType = "String")
+    })
+    public HttpResult findUserInfo(@PathVariable String userId) {
+        return HttpResult.ok(sysUserInfoService.getById(userId));
+    }
+
+
 }

+ 38 - 38
src/main/java/com/ydtech/modules/admin/dao/SysUserDao.java

@@ -1,38 +1,38 @@
-package com.ydtech.modules.admin.dao;
-
-import com.ydtech.core.page.PageResult;
-import com.ydtech.modules.admin.model.SysUser;
-import com.ydtech.modules.admin.model.vo.SysUserVO;
-
-import java.util.List;
-
-public interface SysUserDao {
-    SysUser selectByPk(String id);
-
-    SysUserVO selectById(String id);
-
-    SysUserVO selectByDeptId(String deptId);
-
-    List<SysUser> selectAll();
-
-    List<SysUser> selectList(String whereCase, Object[] paramValues);
-
-    Integer count(String whereCase, Object[] paramValues);
-
-    PageResult selectPaging(int pageNumber, int pageSize, String whereCase, Object[] paramValues);
-
-    Integer insert(SysUser model);
-
-    Integer insertReturnPk(SysUser model);
-
-    Integer insertSelective(SysUser model);
-
-    Integer update(SysUser model);
-
-    Integer updateSelective(SysUser model);
-
-    Integer delete(String id);
-
-    Integer delete(List<SysUser> lsSysUser);
-
-}
+//package com.ydtech.modules.admin.dao;
+//
+//import com.ydtech.core.page.PageResult;
+//import com.ydtech.modules.admin.model.SysUser;
+//import com.ydtech.modules.admin.model.vo.SysUserVO;
+//
+//import java.util.List;
+//
+//public interface SysUserDao {
+//    SysUser selectByPk(String id);
+//
+//    SysUserVO selectById(String id);
+//
+//    SysUserVO selectByDeptId(String deptId);
+//
+//    List<SysUser> selectAll();
+//
+//    List<SysUser> selectList(String whereCase, Object[] paramValues);
+//
+//    Integer count(String whereCase, Object[] paramValues);
+//
+//    PageResult selectPaging(int pageNumber, int pageSize, String whereCase, Object[] paramValues);
+//
+//    Integer insert(SysUser model);
+//
+//    Integer insertReturnPk(SysUser model);
+//
+//    Integer insertSelective(SysUser model);
+//
+//    Integer update(SysUser model);
+//
+//    Integer updateSelective(SysUser model);
+//
+//    Integer delete(String id);
+//
+//    Integer delete(List<SysUser> lsSysUser);
+//
+//}

+ 16 - 0
src/main/java/com/ydtech/modules/admin/dao/SysUserInfoMapper.java

@@ -0,0 +1,16 @@
+package com.ydtech.modules.admin.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ydtech.modules.admin.model.SysUserInfo;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface SysUserInfoMapper extends BaseMapper<SysUserInfo> {
+
+
+
+}
+
+
+
+

+ 54 - 35
src/main/java/com/ydtech/modules/admin/dao/SysUserMapper.java

@@ -1,10 +1,10 @@
 package com.ydtech.modules.admin.dao;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.ydtech.core.page.PageRequest;
 import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.model.vo.SysUserBaseVO;
 import com.ydtech.modules.admin.model.vo.SysUserVO;
+import com.ydtech.modules.base.model.dto.PageDto;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 import org.springframework.stereotype.Repository;
@@ -20,6 +20,15 @@ import java.util.List;
 @Repository
 public interface SysUserMapper extends BaseMapper<SysUser> {
 
+    String userSql = "select t1.id as userId,t1.name as name,t1.sex as sex,t1.mobile as mobile,t1.`status` as `status`,t2.id as deptId,t2.`name` as deptName,sd2.id as pDeptId,sd2.`name` as pDeptName,t4.id as roleId,t4.`name` as roleName " +
+            "            from sys_user t1 " +
+            "			 left join sys_dept t2 on t1.dept_id=t2.id " +
+            "            left join sys_dept sd2 on sd2.id=t2.parent_id  " +
+            "            left join sys_user_role t3 on t1.id=t3.user_id" +
+            "			 left join sys_role t4 on t3.role_id=t4.id" +
+            " where t1.id=#{userId}";
+    ;
+
     String internalUserSql = "select t.id,t.name,t.dept_id deptid,t2.name deptname,t3.id comid,t3.name comname,t.status " +
             "from sys_user t left join sys_dept t2 on t.dept_id=t2.id " +
             "left join sys_dept t3 on t2.parent_id=t3.id " +
@@ -33,45 +42,51 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
             "where 1=1  and t2.isteamleader = '1' and t1.dept_id=#{deptId}";
 
 
-    String selectUserParamSql = "select su.id as userId,su.name,su.sex,su.mobile,su.status\n" +
-            ",sd.id as deptId,sd.name as deptName\n" +
-            ",psd.id as pDeptId,psd.name as pDeptName\n" +
-            ",dict.label as jobName\n" +
-            ",dict2.label as approvalStatus";
+    String selectUserParamSql = "select su.id as userId,su.name,su.sex,su.mobile,su.status" +
+            ",sd.id as deptId,sd.name as deptName" +
+            ",psd.id as pDeptId,psd.name as pDeptName" +
+            ",t4.id as roleId" +
+            ",t4.name as roleName"
+            ;
 
 
     String selectUserFromSql = " from sys_user su " +
-            " left JOIN sys_dept sd on su.dept_id=sd.id " +
+            " left join sys_dept sd on su.dept_id=sd.id " +
             " left join sys_dept psd on sd.parent_id=psd.id " +
-            " left join sys_dict dict on dict.value=su.job_code " +
-            " left join sys_dict dict2 on dict2.value=su.approval_status " +
-            " left join esm_user_internal eui on eui.id=su.id " +
+            " left join sys_user_info info on info.id=su.id " +
+            " left join sys_user_role t3 on su.id=t3.user_id " +
+            " left join sys_role t4 on t3.role_id=t4.id " +
             " where 1=1 " +
-            " AND sd.id &lt;&gt; '' " +
-            " AND dict.itemname = 'jobcode' " +
-            " AND dict2.itemname = 'approval' ";
+            " AND sd.id &lt;&gt; '' "
+            + ""
+            ;
 
     String selectUserFromWhereSql = " " +
-            "<if test='page.columnFilters.usertype !=null and page.columnFilters.usertype.value!=\"\" and page.columnFilters.usertype.value!=null '>" +
-            "  and su.usertype = #{page.columnFilters.usertype.value}" +
-            "</if> " +
-            "<if test='page.columnFilters.approvalStatus !=null and page.columnFilters.approvalStatus.value!=\"\" and page.columnFilters.approvalStatus.value!=null '>" +
-            " and su.approval_status = #{page.columnFilters.approvalStatus.value}" +
-            "</if> " +
-            "<if test='page.columnFilters.realName !=null and page.columnFilters.realName.value!=\"\" and page.columnFilters.realName.value!=null '> " +
-            " and su.name like concat('%',#{page.columnFilters.realName.value},'%')" +
-            "</if> " +
-            "<if test='page.columnFilters.userId !=null and page.columnFilters.userId.value!=\"\" and page.columnFilters.userId.value!=null '>" +
-            " and su.id = #{page.columnFilters.userId.value}" +
-            "</if> " +
-            "<if test='page.columnFilters.mobile !=null and page.columnFilters.mobile.value!=\"\" and page.columnFilters.mobile.value!=null '>" +
-            " and su.mobile = #{page.columnFilters.mobile.value}" +
-            "</if> " +
-            "<if test='page.columnFilters.delFlag !=null and page.columnFilters.delFlag.value!=\"\" and page.columnFilters.delFlag.value!=null '>" +
-            " and su.del_flag = #{page.columnFilters.delFlag.value}" +
-            "</if> " +
-            "<if test='page.columnFilters.deptId !=null and page.columnFilters.deptId.value!=\"\" and page.columnFilters.deptId.value!=null '>" +
-            " and su.dept_id like concat('%',#{page.columnFilters.deptId.value},'%')" +
+//            "<if test='page.columnFilters.usertype !=null and page.columnFilters.usertype.value!=\"\" and page.columnFilters.usertype.value!=null '>" +
+//            "  and su.usertype = #{page.columnFilters.usertype.value}" +
+//            "</if> " +
+//            "<if test='page.columnFilters.approvalStatus !=null and page.columnFilters.approvalStatus.value!=\"\" and page.columnFilters.approvalStatus.value!=null '>" +
+//            " and su.approval_status = #{page.columnFilters.approvalStatus.value}" +
+//            "</if> " +
+            "<if test='page.dto !=null  '> " +
+                "<if test='page.dto.status !=null and page.dto.status!=\"\" '> " +
+                " and su.status = #{page.dto.status}" +
+                "</if> " +
+                "<if test='page.dto.name !=null and page.dto.name!=\"\" '> " +
+                " and su.name like concat('%',#{page.dto.name},'%')" +
+                "</if> " +
+                "<if test='page.dto.userId !=null and page.dto.userId!=\"\" '>" +
+                " and su.id = #{page.dto.userId}" +
+                "</if> " +
+                "<if test='page.dto.mobile !=null and page.dto.mobile!=\"\"  '>" +
+                " and su.mobile = #{page.dto.mobile}" +
+                "</if> " +
+                "<if test='page.dto.deptId !=null and page.dto.deptId!=\"\"  '>" +
+                " and su.dept_id like concat('%',#{page.dto.deptId},'%')" +
+                "</if> " +
+                "<if test='page.dto.roleId !=null and page.dto.roleId!=\"\"  '>" +
+                " and t3.role_id = #{page.dto.roleId}" +
+                "</if> " +
             "</if> " +
             "";
 
@@ -101,12 +116,16 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
             selectUserFromWhereSql,
             " limit #{page.pageNum},#{page.pageSize} ) aaa",
             "</script>"})
-    List<SysUserBaseVO> gainUserBaseInfo(@Param("page") PageRequest pageRequest);
+    List<SysUserBaseVO> gainUserBaseInfo(@Param("page") PageDto pageDto);
 
 
     //    @Select("select count(1) " + selectUserFromSql + selectUserFromWhereSql)
     @Select({"<script>", "select count(1) ", selectUserFromSql, selectUserFromWhereSql, "</script>"})
-    int gainUserBaseInfoCount(@Param("page") PageRequest pageRequest);
+    int gainUserBaseInfoCount(@Param("page") PageDto pageDto);
+
+
+    @Select(userSql)
+    SysUserBaseVO selectUserById(@Param("userId") String userId);
 
 }
 

+ 505 - 503
src/main/java/com/ydtech/modules/admin/dao/impl/SysUserDaoImpl.java

@@ -1,503 +1,505 @@
-package com.ydtech.modules.admin.dao.impl;
-
-import com.github.drinkjava2.jdialects.Dialect;
-import com.ydtech.core.page.PageResult;
-import com.ydtech.modules.admin.dao.SysUserDao;
-import com.ydtech.modules.admin.model.SysUser;
-import com.ydtech.modules.admin.model.vo.SysUserVO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.jdbc.core.*;
-import org.springframework.jdbc.support.GeneratedKeyHolder;
-import org.springframework.jdbc.support.KeyHolder;
-import org.springframework.stereotype.Repository;
-
-import javax.sql.DataSource;
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.List;
-
-
-@Repository
-public class SysUserDaoImpl implements SysUserDao {
-
-    @Autowired
-    public DataSource dataSource;
-
-    public static class SysUserRowMapper implements RowMapper {
-        public SysUser mapRow(ResultSet resultSet, int rowNum) throws SQLException {
-            SysUser model = new SysUser();
-
-            model.setId(resultSet.getString("id"));
-            model.setName(resultSet.getString("name"));
-            model.setPassword(resultSet.getString("password"));
-            model.setSalt(resultSet.getString("salt"));
-            model.setEmail(resultSet.getString("email"));
-            model.setMobile(resultSet.getString("mobile"));
-            model.setStatus(resultSet.getInt("status"));
-            model.setDeptId(resultSet.getString("dept_id"));
-            model.setCreateBy(resultSet.getString("create_by"));
-            model.setCreateTime(resultSet.getDate("create_time"));
-            model.setLastUpdateBy(resultSet.getString("last_update_by"));
-            model.setLastUpdateTime(resultSet.getDate("last_update_time"));
-            model.setDelFlag(resultSet.getInt("del_flag"));
-            model.setUsertype(resultSet.getString("usertype"));
-            model.setTenantId(resultSet.getString("tenant_id"));
-            model.setSex(resultSet.getString("sex"));
-            model.setJobCode(resultSet.getString("job_code"));
-            return model;
-        }
-    }
-
-    public static class SysUserVORowMapper implements RowMapper {
-        public SysUserVO mapRow(ResultSet resultSet, int rowNum) throws SQLException {
-            SysUserVO model = new SysUserVO();
-
-            model.setId(resultSet.getString("id"));
-            model.setName(resultSet.getString("name"));
-            model.setDeptid(resultSet.getString("deptid"));
-            model.setDeptname(resultSet.getString("deptname"));
-            model.setComid(resultSet.getString("comid"));
-            model.setComname(resultSet.getString("comname"));
-            model.setStatus(resultSet.getString("status"));
-            return model;
-        }
-    }
-
-    @Override
-    public SysUser selectByPk(String id) {
-        String sql = "select t.id, t.name, t.password, t.salt, t.email, t.mobile, t.status, t.dept_id, t.create_by, t.create_time, t.last_update_by, t.last_update_time, t.del_flag, t.usertype, t.tenant_id, t.sex, t.job_code from sys_user t  where id=?";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        List<SysUser> ls = jdbcTemplate.query(sql, new BeanPropertyRowMapper<SysUser>(SysUser.class), new Object[]{id});
-
-        if (ls != null && ls.size() > 0) {
-            return ls.get(0);
-        }
-
-        return null;
-    }
-
-    @Override
-    public SysUserVO selectById(String id) {
-        String sql = "select t.id,t.name,t.dept_id deptid,t2.name deptname,t3.id comid,t3.name comname,t.status " +
-                "from sys_user t left join sys_dept t2 on t.dept_id=t2.id " +
-                "left join sys_dept t3 on t2.parent_id=t3.id " +
-                "left join esm_user_internal a on t.id=a.id " +
-                "where t.id=?";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        List<SysUserVO> ls = jdbcTemplate.query(sql, new BeanPropertyRowMapper<SysUserVO>(SysUserVO.class), new Object[]{id});
-
-        if (ls != null && ls.size() > 0) {
-            return ls.get(0);
-        }
-
-        return null;
-    }
-
-    /**
-     * 根据部门ID查询该部门下的团队长信息
-     *
-     * @param deptId
-     * @return
-     */
-    @Override
-    public SysUserVO selectByDeptId(String deptId) {
-        String sql = "select t1.id,t1.name,t1.dept_id deptid,sd.name deptname,sd2.id comid,sd2.name comname,t2.status " +
-                "from sys_user t1 left join esm_user_internal t2 on t1.id=t2.id " +
-                "LEFT JOIN sys_dept sd ON t1.dept_id=sd.id " +
-                "LEFT JOIN sys_dept sd2 ON sd2.id=sd.parent_id " +
-                "where 1=1  and t2.isteamleader = '1' and t1.dept_id=?";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        List<SysUserVO> ls = jdbcTemplate.query(sql, new BeanPropertyRowMapper<SysUserVO>(SysUserVO.class), new Object[]{deptId});
-
-        if (ls != null && ls.size() > 0) {
-            return ls.get(0);
-        }
-
-        return null;
-    }
-
-    @Override
-    public List<SysUser> selectAll() {
-        String sql = "select t.id, t.name, t.password, t.salt, t.email, t.mobile, t.status, t.dept_id, t.create_by, t.create_time, t.last_update_by, t.last_update_time, t.del_flag, t.usertype, t.tenant_id, t.sex, t.job_code from sys_user t  ";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.query(sql, new SysUserRowMapper());
-    }
-
-    public List<SysUser> selectList(String whereCase, Object[] paramValues) {
-        String sql = "select t.id, t.name, t.password, t.salt, t.email, t.mobile, t.status, t.dept_id, t.create_by, t.create_time, t.last_update_by, t.last_update_time, t.del_flag, t.usertype, t.tenant_id, t.sex, t.job_code from sys_user t  " + whereCase;
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.query(sql, paramValues, new SysUserRowMapper());
-    }
-
-    public Integer count(String whereCase, Object[] paramValues) {
-        String sql = "select count(1) from sys_user t " + whereCase;
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.queryForObject(sql, paramValues, Integer.class);
-    }
-
-    public PageResult selectPaging(int pageNumber, int pageSize, String whereCase, Object[] paramValues) {
-
-        Dialect dialect = Dialect.guessDialect(dataSource);
-        String sql = dialect.pagin(pageNumber, pageSize, "select t.id, t.name, t.password, t.salt, t.email, t.mobile, t.status, t.dept_id, t.create_by, t.create_time, t.last_update_by, t.last_update_time, t.del_flag, t.usertype, t.tenant_id, t.sex, t.job_code from sys_user t  " + whereCase);
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-        List<SysUser> recordList = jdbcTemplate.query(sql, paramValues, new SysUserRowMapper());
-
-        int totalCount = count(whereCase, paramValues);
-
-        PageResult PageResult = new PageResult(pageNumber, pageSize, totalCount, recordList);
-
-        return PageResult;
-    }
-
-
-    @Override
-    public Integer insert(SysUser model) {
-
-        String sql = "insert into sys_user ( id, name, password, salt, email, mobile, status, dept_id, create_by, create_time, last_update_by, last_update_time, del_flag, usertype, tenant_id, sex, job_code) values ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) ";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        Object[] params = new Object[]{model.getId(), model.getName(), model.getPassword(), model.getSalt(), model.getEmail(), model.getMobile(), model.getStatus(), model.getDeptId(), model.getCreateBy(), model.getCreateTime(), model.getLastUpdateBy(), model.getLastUpdateTime(), model.getDelFlag(), model.getUsertype(), model.getTenantId(), model.getSex(), model.getJobCode()};
-
-        int out = jdbcTemplate.update(sql, params);
-
-        return out;
-    }
-
-    @Override
-    public Integer insertReturnPk(SysUser model) {
-
-        String sql = "insert into sys_user ( id, name, password, salt, email, mobile, status, dept_id, create_by, create_time, last_update_by, last_update_time, del_flag, usertype, tenant_id, sex, job_code) values ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) ";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        KeyHolder keyHolder = new GeneratedKeyHolder();
-        jdbcTemplate.update(new PreparedStatementCreator() {
-            @Override
-            public PreparedStatement createPreparedStatement(Connection conn) throws SQLException {
-                PreparedStatement ps = conn.prepareStatement(sql, PreparedStatement.RETURN_GENERATED_KEYS);
-                ps.setObject(1, model.getId());
-                ps.setObject(2, model.getName());
-                ps.setObject(3, model.getPassword());
-                ps.setObject(4, model.getSalt());
-                ps.setObject(5, model.getEmail());
-                ps.setObject(6, model.getMobile());
-                ps.setObject(7, model.getStatus());
-                ps.setObject(8, model.getDeptId());
-                ps.setObject(9, model.getCreateBy());
-                ps.setObject(10, model.getCreateTime());
-                ps.setObject(11, model.getLastUpdateBy());
-                ps.setObject(12, model.getLastUpdateTime());
-                ps.setObject(13, model.getDelFlag());
-                ps.setObject(14, model.getUsertype());
-                ps.setObject(15, model.getTenantId());
-                ps.setObject(16, model.getSex());
-                ps.setObject(17, model.getJobCode());
-                return ps;
-            }
-        }, keyHolder);
-
-        return keyHolder.getKey().intValue();
-    }
-
-
-    @Override
-    public Integer insertSelective(SysUser model) {
-
-        StringBuffer sbSql = new StringBuffer();
-        StringBuffer sbParams = new StringBuffer();
-        ArrayList<Object> alParamsValues = new ArrayList<Object>();
-
-        String pre = "";
-
-        if (model.getId() != null) {
-            sbSql.append(pre + "id");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getId());
-            pre = ",";
-        }
-        if (model.getName() != null) {
-            sbSql.append(pre + "name");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getName());
-            pre = ",";
-        }
-        if (model.getPassword() != null) {
-            sbSql.append(pre + "password");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getPassword());
-            pre = ",";
-        }
-        if (model.getSalt() != null) {
-            sbSql.append(pre + "salt");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getSalt());
-            pre = ",";
-        }
-        if (model.getEmail() != null) {
-            sbSql.append(pre + "email");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getEmail());
-            pre = ",";
-        }
-        if (model.getMobile() != null) {
-            sbSql.append(pre + "mobile");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getMobile());
-            pre = ",";
-        }
-        if (model.getStatus() != null) {
-            sbSql.append(pre + "status");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getStatus());
-            pre = ",";
-        }
-        if (model.getDeptId() != null) {
-            sbSql.append(pre + "dept_id");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getDeptId());
-            pre = ",";
-        }
-        if (model.getCreateBy() != null) {
-            sbSql.append(pre + "create_by");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getCreateBy());
-            pre = ",";
-        }
-        if (model.getCreateTime() != null) {
-            sbSql.append(pre + "create_time");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getCreateTime());
-            pre = ",";
-        }
-        if (model.getLastUpdateBy() != null) {
-            sbSql.append(pre + "last_update_by");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getLastUpdateBy());
-            pre = ",";
-        }
-        if (model.getLastUpdateTime() != null) {
-            sbSql.append(pre + "last_update_time");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getLastUpdateTime());
-            pre = ",";
-        }
-        if (model.getDelFlag() != null) {
-            sbSql.append(pre + "del_flag");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getDelFlag());
-            pre = ",";
-        }
-        if (model.getUsertype() != null) {
-            sbSql.append(pre + "usertype");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getUsertype());
-            pre = ",";
-        }
-        if (model.getTenantId() != null) {
-            sbSql.append(pre + "tenant_id");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getTenantId());
-            pre = ",";
-        }
-        if (model.getSex() != null) {
-            sbSql.append(pre + "sex");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getSex());
-            pre = ",";
-        }
-        if (model.getJobCode() != null) {
-            sbSql.append(pre + "job_code");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getJobCode());
-            pre = ",";
-        }
-        if (model.getOpenid() != null) {
-            sbSql.append(pre + "openid");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getOpenid());
-            pre = ",";
-        }
-
-        String sql = "INSERT INTO sys_user (" + sbSql.toString() + ") VALUES (" + sbParams.toString() + ")";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        Object[] params = alParamsValues.toArray();
-
-        int out = jdbcTemplate.update(sql, params);
-
-        return out;
-    }
-
-    @Override
-    public Integer update(SysUser model) {
-
-        String sql = "update sys_user set name=?, password=?, salt=?, email=?, mobile=?, status=?, dept_id=?, create_by=?, create_time=?, last_update_by=?, last_update_time=?, del_flag=?, usertype=?, tenant_id=?, sex=?, job_code=? where id=?";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        Object[] params = new Object[]{model.getName(), model.getPassword(), model.getSalt(), model.getEmail(), model.getMobile(), model.getStatus(), model.getDeptId(), model.getCreateBy(), model.getCreateTime(), model.getLastUpdateBy(), model.getLastUpdateTime(), model.getDelFlag(), model.getUsertype(), model.getTenantId(), model.getSex(), model.getJobCode(), model.getId()};
-
-        return jdbcTemplate.update(sql, params);
-    }
-
-    @Override
-    public Integer updateSelective(SysUser model) {
-
-        StringBuffer sbSql = new StringBuffer();
-        StringBuffer sbParams = new StringBuffer();
-        ArrayList<Object> alParamsValues = new ArrayList<Object>();
-
-        String pre = "";
-        String preWhere = "";
-
-        if (model.getName() != null) {
-            sbSql.append(pre + "name=?");
-            alParamsValues.add(model.getName());
-            pre = ",";
-        }
-        if (model.getPassword() != null) {
-            sbSql.append(pre + "password=?");
-            alParamsValues.add(model.getPassword());
-            pre = ",";
-        }
-        if (model.getSalt() != null) {
-            sbSql.append(pre + "salt=?");
-            alParamsValues.add(model.getSalt());
-            pre = ",";
-        }
-        if (model.getEmail() != null) {
-            sbSql.append(pre + "email=?");
-            alParamsValues.add(model.getEmail());
-            pre = ",";
-        }
-        if (model.getMobile() != null) {
-            sbSql.append(pre + "mobile=?");
-            alParamsValues.add(model.getMobile());
-            pre = ",";
-        }
-        if (model.getStatus() != null) {
-            sbSql.append(pre + "status=?");
-            alParamsValues.add(model.getStatus());
-            pre = ",";
-        }
-        if (model.getDeptId() != null) {
-            sbSql.append(pre + "dept_id=?");
-            alParamsValues.add(model.getDeptId());
-            pre = ",";
-        }
-        if (model.getCreateBy() != null) {
-            sbSql.append(pre + "create_by=?");
-            alParamsValues.add(model.getCreateBy());
-            pre = ",";
-        }
-        if (model.getCreateTime() != null) {
-            sbSql.append(pre + "create_time=?");
-            alParamsValues.add(model.getCreateTime());
-            pre = ",";
-        }
-        if (model.getLastUpdateBy() != null) {
-            sbSql.append(pre + "last_update_by=?");
-            alParamsValues.add(model.getLastUpdateBy());
-            pre = ",";
-        }
-        if (model.getLastUpdateTime() != null) {
-            sbSql.append(pre + "last_update_time=?");
-            alParamsValues.add(model.getLastUpdateTime());
-            pre = ",";
-        }
-        if (model.getDelFlag() != null) {
-            sbSql.append(pre + "del_flag=?");
-            alParamsValues.add(model.getDelFlag());
-            pre = ",";
-        }
-        if (model.getUsertype() != null) {
-            sbSql.append(pre + "usertype=?");
-            alParamsValues.add(model.getUsertype());
-            pre = ",";
-        }
-        if (model.getTenantId() != null) {
-            sbSql.append(pre + "tenant_id=?");
-            alParamsValues.add(model.getTenantId());
-            pre = ",";
-        }
-        if (model.getSex() != null) {
-            sbSql.append(pre + "sex=?");
-            alParamsValues.add(model.getSex());
-            pre = ",";
-        }
-        if (model.getJobCode() != null) {
-            sbSql.append(pre + "job_code=?");
-            alParamsValues.add(model.getJobCode());
-            pre = ",";
-        }
-        if (model.getId() != null) {
-            sbParams.append(preWhere + "id=?");
-            alParamsValues.add(model.getId());
-            preWhere = ",";
-        }
-
-
-        if (!sbSql.toString().equalsIgnoreCase("")) {
-            String sql = "update sys_user set " + sbSql.toString() + " where " + sbParams.toString();
-
-            JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-            Object[] params = alParamsValues.toArray();
-
-            return jdbcTemplate.update(sql, params);
-        }
-
-        return 0;
-    }
-
-    @Override
-    public Integer delete(String id) {
-
-        String sql = "delete from sys_user where id=?";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.update(sql, id);
-    }
-
-    @Override
-    public Integer delete(List<SysUser> lsSysUser) {
-        String sql = "delete from sys_user where id=?";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
-            @Override
-            public void setValues(PreparedStatement preparedStatement, int i) throws SQLException {
-                preparedStatement.setString(1, lsSysUser.get(i).getId());
-            }
-
-            @Override
-            public int getBatchSize() {
-                return lsSysUser.size();
-            }
-        }).length;
-    }
-}
-
-
-
-
+//package com.ydtech.modules.admin.dao.impl;
+//
+//import com.github.drinkjava2.jdialects.Dialect;
+//import com.ydtech.core.page.PageResult;
+//import com.ydtech.modules.admin.dao.SysUserDao;
+//import com.ydtech.modules.admin.model.SysUser;
+//import com.ydtech.modules.admin.model.vo.SysUserVO;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.jdbc.core.*;
+//import org.springframework.jdbc.support.GeneratedKeyHolder;
+//import org.springframework.jdbc.support.KeyHolder;
+//import org.springframework.stereotype.Repository;
+//
+//import javax.sql.DataSource;
+//import java.sql.Connection;
+//import java.sql.PreparedStatement;
+//import java.sql.ResultSet;
+//import java.sql.SQLException;
+//import java.util.ArrayList;
+//import java.util.List;
+//
+//
+//@Repository
+//public class SysUserDaoImpl implements SysUserDao {
+//
+//    @Autowired
+//    public DataSource dataSource;
+//
+//    public static class SysUserRowMapper implements RowMapper {
+//        public SysUser mapRow(ResultSet resultSet, int rowNum) throws SQLException {
+//            SysUser model = new SysUser();
+//
+//            model.setId(resultSet.getString("id"));
+//            model.setName(resultSet.getString("name"));
+//            model.setPassword(resultSet.getString("password"));
+//            model.setSalt(resultSet.getString("salt"));
+//            model.setEmail(resultSet.getString("email"));
+//            model.setMobile(resultSet.getString("mobile"));
+//            model.setStatus(resultSet.getInt("status"));
+//            model.setDeptId(resultSet.getString("dept_id"));
+//            model.setCreateBy(resultSet.getString("create_by"));
+//            model.setCreateTime(resultSet.getDate("create_time"));
+////            model.setLastUpdateBy(resultSet.getString("last_update_by"));
+////            model.setLastUpdateTime(resultSet.getDate("last_update_time"));
+////            model.setDelFlag(resultSet.getInt("del_flag"));
+////            model.setUsertype(resultSet.getString("usertype"));
+////            model.setTenantId(resultSet.getString("tenant_id"));
+//            model.setSex(resultSet.getString("sex"));
+////            model.setJobCode(resultSet.getString("job_code"));
+//            return model;
+//        }
+//    }
+//
+//    public static class SysUserVORowMapper implements RowMapper {
+//        public SysUserVO mapRow(ResultSet resultSet, int rowNum) throws SQLException {
+//            SysUserVO model = new SysUserVO();
+//
+//            model.setId(resultSet.getString("id"));
+//            model.setName(resultSet.getString("name"));
+//            model.setDeptid(resultSet.getString("deptid"));
+//            model.setDeptname(resultSet.getString("deptname"));
+//            model.setComid(resultSet.getString("comid"));
+//            model.setComname(resultSet.getString("comname"));
+//            model.setStatus(resultSet.getString("status"));
+//            return model;
+//        }
+//    }
+//
+//    @Override
+//    public SysUser selectByPk(String id) {
+//        String sql = "select t.id, t.name, t.password, t.salt, t.email, t.mobile, t.status, t.dept_id, t.create_by, t.create_time, t.last_update_by, t.last_update_time, t.del_flag, t.usertype, t.tenant_id, t.sex, t.job_code from sys_user t  where id=?";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        List<SysUser> ls = jdbcTemplate.query(sql, new BeanPropertyRowMapper<SysUser>(SysUser.class), new Object[]{id});
+//
+//        if (ls != null && ls.size() > 0) {
+//            return ls.get(0);
+//        }
+//
+//        return null;
+//    }
+//
+//    @Override
+//    public SysUserVO selectById(String id) {
+//        String sql = "select t.id,t.name,t.dept_id deptid,t2.name deptname,t3.id comid,t3.name comname,t.status " +
+//                "from sys_user t left join sys_dept t2 on t.dept_id=t2.id " +
+//                "left join sys_dept t3 on t2.parent_id=t3.id " +
+//                "left join esm_user_internal a on t.id=a.id " +
+//                "where t.id=?";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        List<SysUserVO> ls = jdbcTemplate.query(sql, new BeanPropertyRowMapper<SysUserVO>(SysUserVO.class), new Object[]{id});
+//
+//        if (ls != null && ls.size() > 0) {
+//            return ls.get(0);
+//        }
+//
+//        return null;
+//    }
+//
+//    /**
+//     * 根据部门ID查询该部门下的团队长信息
+//     *
+//     * @param deptId
+//     * @return
+//     */
+//    @Override
+//    public SysUserVO selectByDeptId(String deptId) {
+//        String sql = "select t1.id,t1.name,t1.dept_id deptid,sd.name deptname,sd2.id comid,sd2.name comname,t2.status " +
+//                "from sys_user t1 left join esm_user_internal t2 on t1.id=t2.id " +
+//                "LEFT JOIN sys_dept sd ON t1.dept_id=sd.id " +
+//                "LEFT JOIN sys_dept sd2 ON sd2.id=sd.parent_id " +
+//                "where 1=1  and t2.isteamleader = '1' and t1.dept_id=?";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        List<SysUserVO> ls = jdbcTemplate.query(sql, new BeanPropertyRowMapper<SysUserVO>(SysUserVO.class), new Object[]{deptId});
+//
+//        if (ls != null && ls.size() > 0) {
+//            return ls.get(0);
+//        }
+//
+//        return null;
+//    }
+//
+//    @Override
+//    public List<SysUser> selectAll() {
+//        String sql = "select t.id, t.name, t.password, t.salt, t.email, t.mobile, t.status, t.dept_id, t.create_by, t.create_time, t.last_update_by, t.last_update_time, t.del_flag, t.usertype, t.tenant_id, t.sex, t.job_code from sys_user t  ";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.query(sql, new SysUserRowMapper());
+//    }
+//
+//    public List<SysUser> selectList(String whereCase, Object[] paramValues) {
+//        String sql = "select t.id, t.name, t.password, t.salt, t.email, t.mobile, t.status, t.dept_id, t.create_by, t.create_time, t.last_update_by, t.last_update_time, t.del_flag, t.usertype, t.tenant_id, t.sex, t.job_code from sys_user t  " + whereCase;
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.query(sql, paramValues, new SysUserRowMapper());
+//    }
+//
+//    public Integer count(String whereCase, Object[] paramValues) {
+//        String sql = "select count(1) from sys_user t " + whereCase;
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.queryForObject(sql, paramValues, Integer.class);
+//    }
+//
+//    public PageResult selectPaging(int pageNumber, int pageSize, String whereCase, Object[] paramValues) {
+//
+//        Dialect dialect = Dialect.guessDialect(dataSource);
+//        String sql = dialect.pagin(pageNumber, pageSize, "select t.id, t.name, t.password, t.salt, t.email, t.mobile, t.status, t.dept_id, t.create_by, t.create_time, t.last_update_by, t.last_update_time, t.del_flag, t.usertype, t.tenant_id, t.sex, t.job_code from sys_user t  " + whereCase);
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//        List<SysUser> recordList = jdbcTemplate.query(sql, paramValues, new SysUserRowMapper());
+//
+//        int totalCount = count(whereCase, paramValues);
+//
+//        PageResult PageResult = new PageResult(pageNumber, pageSize, totalCount, recordList);
+//
+//        return PageResult;
+//    }
+//
+//
+//    @Override
+//    public Integer insert(SysUser model) {
+//
+//        String sql = "insert into sys_user ( id, name, password, salt, email, mobile, status, dept_id, create_by, create_time, last_update_by, last_update_time, del_flag, usertype, tenant_id, sex, job_code) values ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) ";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        Object[] params = new Object[]{model.getId(), model.getName(), model.getPassword(), model.getSalt(), model.getEmail(), model.getMobile(), model.getStatus(), model.getDeptId(), model.getCreateBy(), model.getCreateTime(), model.getUpdateBy(), model.getUpdateTime(), model.getDelFlag(), model.getUsertype(), model.getTenantId(), model.getSex(), model.getJobCode()};
+//
+//        int out = jdbcTemplate.update(sql, params);
+//
+//        out = 0;
+//
+//        return out;
+//    }
+//
+//    @Override
+//    public Integer insertReturnPk(SysUser model) {
+//
+//        String sql = "insert into sys_user ( id, name, password, salt, email, mobile, status, dept_id, create_by, create_time, last_update_by, last_update_time, del_flag, usertype, tenant_id, sex, job_code) values ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) ";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        KeyHolder keyHolder = new GeneratedKeyHolder();
+//        jdbcTemplate.update(new PreparedStatementCreator() {
+//            @Override
+//            public PreparedStatement createPreparedStatement(Connection conn) throws SQLException {
+//                PreparedStatement ps = conn.prepareStatement(sql, PreparedStatement.RETURN_GENERATED_KEYS);
+////                ps.setObject(1, model.getId());
+////                ps.setObject(2, model.getName());
+////                ps.setObject(3, model.getPassword());
+////                ps.setObject(4, model.getSalt());
+////                ps.setObject(5, model.getEmail());
+////                ps.setObject(6, model.getMobile());
+////                ps.setObject(7, model.getStatus());
+////                ps.setObject(8, model.getDeptId());
+////                ps.setObject(9, model.getCreateBy());
+////                ps.setObject(10, model.getCreateTime());
+////                ps.setObject(11, model.getLastUpdateBy());
+////                ps.setObject(12, model.getLastUpdateTime());
+////                ps.setObject(13, model.getDelFlag());
+////                ps.setObject(14, model.getUsertype());
+////                ps.setObject(15, model.getTenantId());
+////                ps.setObject(16, model.getSex());
+////                ps.setObject(17, model.getJobCode());
+//                return ps;
+//            }
+//        }, keyHolder);
+//
+//        return keyHolder.getKey().intValue();
+//    }
+//
+//
+//    @Override
+//    public Integer insertSelective(SysUser model) {
+//
+//        StringBuffer sbSql = new StringBuffer();
+//        StringBuffer sbParams = new StringBuffer();
+//        ArrayList<Object> alParamsValues = new ArrayList<Object>();
+//
+//        String pre = "";
+//
+//        if (model.getId() != null) {
+//            sbSql.append(pre + "id");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getId());
+//            pre = ",";
+//        }
+//        if (model.getName() != null) {
+//            sbSql.append(pre + "name");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getName());
+//            pre = ",";
+//        }
+//        if (model.getPassword() != null) {
+//            sbSql.append(pre + "password");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getPassword());
+//            pre = ",";
+//        }
+//        if (model.getSalt() != null) {
+//            sbSql.append(pre + "salt");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getSalt());
+//            pre = ",";
+//        }
+//        if (model.getEmail() != null) {
+//            sbSql.append(pre + "email");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getEmail());
+//            pre = ",";
+//        }
+//        if (model.getMobile() != null) {
+//            sbSql.append(pre + "mobile");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getMobile());
+//            pre = ",";
+//        }
+//        if (model.getStatus() != null) {
+//            sbSql.append(pre + "status");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getStatus());
+//            pre = ",";
+//        }
+//        if (model.getDeptId() != null) {
+//            sbSql.append(pre + "dept_id");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getDeptId());
+//            pre = ",";
+//        }
+//        if (model.getCreateBy() != null) {
+//            sbSql.append(pre + "create_by");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getCreateBy());
+//            pre = ",";
+//        }
+//        if (model.getCreateTime() != null) {
+//            sbSql.append(pre + "create_time");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getCreateTime());
+//            pre = ",";
+//        }
+//        if (model.getLastUpdateBy() != null) {
+//            sbSql.append(pre + "last_update_by");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getLastUpdateBy());
+//            pre = ",";
+//        }
+//        if (model.getLastUpdateTime() != null) {
+//            sbSql.append(pre + "last_update_time");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getLastUpdateTime());
+//            pre = ",";
+//        }
+//        if (model.getDelFlag() != null) {
+//            sbSql.append(pre + "del_flag");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getDelFlag());
+//            pre = ",";
+//        }
+//        if (model.getUsertype() != null) {
+//            sbSql.append(pre + "usertype");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getUsertype());
+//            pre = ",";
+//        }
+//        if (model.getTenantId() != null) {
+//            sbSql.append(pre + "tenant_id");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getTenantId());
+//            pre = ",";
+//        }
+//        if (model.getSex() != null) {
+//            sbSql.append(pre + "sex");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getSex());
+//            pre = ",";
+//        }
+//        if (model.getJobCode() != null) {
+//            sbSql.append(pre + "job_code");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getJobCode());
+//            pre = ",";
+//        }
+//        if (model.getOpenid() != null) {
+//            sbSql.append(pre + "openid");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getOpenid());
+//            pre = ",";
+//        }
+//
+//        String sql = "INSERT INTO sys_user (" + sbSql.toString() + ") VALUES (" + sbParams.toString() + ")";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        Object[] params = alParamsValues.toArray();
+//
+//        int out = jdbcTemplate.update(sql, params);
+//
+//        return out;
+//    }
+//
+//    @Override
+//    public Integer update(SysUser model) {
+//
+//        String sql = "update sys_user set name=?, password=?, salt=?, email=?, mobile=?, status=?, dept_id=?, create_by=?, create_time=?, last_update_by=?, last_update_time=?, del_flag=?, usertype=?, tenant_id=?, sex=?, job_code=? where id=?";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        Object[] params = new Object[]{model.getName(), model.getPassword(), model.getSalt(), model.getEmail(), model.getMobile(), model.getStatus(), model.getDeptId(), model.getCreateBy(), model.getCreateTime(), model.getLastUpdateBy(), model.getLastUpdateTime(), model.getDelFlag(), model.getUsertype(), model.getTenantId(), model.getSex(), model.getJobCode(), model.getId()};
+//
+//        return jdbcTemplate.update(sql, params);
+//    }
+//
+//    @Override
+//    public Integer updateSelective(SysUser model) {
+//
+//        StringBuffer sbSql = new StringBuffer();
+//        StringBuffer sbParams = new StringBuffer();
+//        ArrayList<Object> alParamsValues = new ArrayList<Object>();
+//
+//        String pre = "";
+//        String preWhere = "";
+//
+//        if (model.getName() != null) {
+//            sbSql.append(pre + "name=?");
+//            alParamsValues.add(model.getName());
+//            pre = ",";
+//        }
+//        if (model.getPassword() != null) {
+//            sbSql.append(pre + "password=?");
+//            alParamsValues.add(model.getPassword());
+//            pre = ",";
+//        }
+//        if (model.getSalt() != null) {
+//            sbSql.append(pre + "salt=?");
+//            alParamsValues.add(model.getSalt());
+//            pre = ",";
+//        }
+//        if (model.getEmail() != null) {
+//            sbSql.append(pre + "email=?");
+//            alParamsValues.add(model.getEmail());
+//            pre = ",";
+//        }
+//        if (model.getMobile() != null) {
+//            sbSql.append(pre + "mobile=?");
+//            alParamsValues.add(model.getMobile());
+//            pre = ",";
+//        }
+//        if (model.getStatus() != null) {
+//            sbSql.append(pre + "status=?");
+//            alParamsValues.add(model.getStatus());
+//            pre = ",";
+//        }
+//        if (model.getDeptId() != null) {
+//            sbSql.append(pre + "dept_id=?");
+//            alParamsValues.add(model.getDeptId());
+//            pre = ",";
+//        }
+//        if (model.getCreateBy() != null) {
+//            sbSql.append(pre + "create_by=?");
+//            alParamsValues.add(model.getCreateBy());
+//            pre = ",";
+//        }
+//        if (model.getCreateTime() != null) {
+//            sbSql.append(pre + "create_time=?");
+//            alParamsValues.add(model.getCreateTime());
+//            pre = ",";
+//        }
+//        if (model.getLastUpdateBy() != null) {
+//            sbSql.append(pre + "last_update_by=?");
+//            alParamsValues.add(model.getLastUpdateBy());
+//            pre = ",";
+//        }
+//        if (model.getLastUpdateTime() != null) {
+//            sbSql.append(pre + "last_update_time=?");
+//            alParamsValues.add(model.getLastUpdateTime());
+//            pre = ",";
+//        }
+//        if (model.getDelFlag() != null) {
+//            sbSql.append(pre + "del_flag=?");
+//            alParamsValues.add(model.getDelFlag());
+//            pre = ",";
+//        }
+//        if (model.getUsertype() != null) {
+//            sbSql.append(pre + "usertype=?");
+//            alParamsValues.add(model.getUsertype());
+//            pre = ",";
+//        }
+//        if (model.getTenantId() != null) {
+//            sbSql.append(pre + "tenant_id=?");
+//            alParamsValues.add(model.getTenantId());
+//            pre = ",";
+//        }
+//        if (model.getSex() != null) {
+//            sbSql.append(pre + "sex=?");
+//            alParamsValues.add(model.getSex());
+//            pre = ",";
+//        }
+//        if (model.getJobCode() != null) {
+//            sbSql.append(pre + "job_code=?");
+//            alParamsValues.add(model.getJobCode());
+//            pre = ",";
+//        }
+//        if (model.getId() != null) {
+//            sbParams.append(preWhere + "id=?");
+//            alParamsValues.add(model.getId());
+//            preWhere = ",";
+//        }
+//
+//
+//        if (!sbSql.toString().equalsIgnoreCase("")) {
+//            String sql = "update sys_user set " + sbSql.toString() + " where " + sbParams.toString();
+//
+//            JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//            Object[] params = alParamsValues.toArray();
+//
+//            return jdbcTemplate.update(sql, params);
+//        }
+//
+//        return 0;
+//    }
+//
+//    @Override
+//    public Integer delete(String id) {
+//
+//        String sql = "delete from sys_user where id=?";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.update(sql, id);
+//    }
+//
+//    @Override
+//    public Integer delete(List<SysUser> lsSysUser) {
+//        String sql = "delete from sys_user where id=?";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
+//            @Override
+//            public void setValues(PreparedStatement preparedStatement, int i) throws SQLException {
+//                preparedStatement.setString(1, lsSysUser.get(i).getId());
+//            }
+//
+//            @Override
+//            public int getBatchSize() {
+//                return lsSysUser.size();
+//            }
+//        }).length;
+//    }
+//}
+//
+//
+//
+//

+ 3 - 0
src/main/java/com/ydtech/modules/admin/model/SysRole.java

@@ -1,5 +1,8 @@
 package com.ydtech.modules.admin.model;
 
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
 import java.util.Date;
 import java.io.Serializable;
 

+ 64 - 149
src/main/java/com/ydtech/modules/admin/model/SysUser.java

@@ -1,28 +1,30 @@
 package com.ydtech.modules.admin.model;
 
 
-import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
-
-import java.io.Serializable;
-import java.util.Date;
-
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.exception.SystemException;
+import com.ydtech.modules.base.model.BaseEntity;
+import com.ydtech.security.utils.PasswordUtils;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-import lombok.Builder;
 import lombok.Data;
+import springfox.documentation.annotations.ApiIgnore;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Size;
 
 /**
- * 用户管理
+ * 用户
  *
  * @TableName sys_user
  */
 @TableName(value = "sys_user")
 @Data
 @ApiModel
-public class SysUser implements Serializable {
+public class SysUser extends BaseEntity {
     /**
      * 编号
      */
@@ -31,9 +33,11 @@ public class SysUser implements Serializable {
     private String id;
 
     /**
-     * 用户名
+     * 姓名
      */
-    @ApiModelProperty(value = "用户名")
+    @ApiModelProperty(value = "姓名")
+    @NotBlank(message = "姓名不能为空")
+    @Size(min = 0, max = 30, message = "姓名长度不能超过30个字符")
     @TableField(value = "name")
     private String name;
 
@@ -61,13 +65,14 @@ public class SysUser implements Serializable {
      * 手机号
      */
     @ApiModelProperty(value = "手机号")
+    @NotBlank(message = "手机号不能为空")
     @TableField(value = "mobile")
     private String mobile;
 
     /**
      * 状态  1:正常   0:离司 2:新注册
      */
-    @ApiModelProperty(value = "状态  1:正常   0:离司 2:新注册")
+    @ApiModelProperty(value = "状态  1:正常   0:删除 2:新注册 3:审批不通过")
     @TableField(value = "status")
     private Integer status;
 
@@ -75,172 +80,82 @@ public class SysUser implements Serializable {
      * 机构ID
      */
     @ApiModelProperty(value = "机构ID")
+    @NotBlank(message = "机构不能为空")
     @TableField(value = "dept_id")
     private String deptId;
 
     /**
-     * 创建人
+     * 性别
      */
-    @TableField(value = "create_by")
-    private String createBy;
+    @TableField(value = "sex")
+    private String sex;
 
     /**
-     * 创建时间
+     * 微信id
      */
-    @TableField(value = "create_time")
-    private Date createTime;
+    @TableField(value = "openid")
+    private String openid;
 
     /**
-     * 更新人
+     * 审批意见
      */
-    @TableField(value = "last_update_by")
-    private String lastUpdateBy;
+    @ApiModelProperty(value = "审批意见")
+    @TableField(value = "approval_opinion")
+    private String approvalOpinion;
 
-    /**
-     * 更新时间
-     */
-    @TableField(value = "last_update_time")
-    private Date lastUpdateTime;
 
     /**
-     * 是否删除  -1:已删除  0:正常
+     * 角色ID
      */
-    @ApiModelProperty(value = "是否删除  -1:已删除  0:正常")
-    @TableField(value = "del_flag")
-    private Integer delFlag;
+    @ApiModelProperty(value = "角色ID")
+    @TableField(exist = false)
+    private String roleId;
 
     /**
-     * 用户类型:0:系统用户 1:后线人员 2:代理人员
+     * 角色名称
      */
-    @ApiModelProperty(value = "用户类型:0:系统用户 1:后线人员 2:代理人员")
-    @TableField(value = "usertype")
-    private String usertype;
+    @ApiModelProperty(value = "角色名称")
+    @TableField(exist = false)
+    private String roleName;
 
     /**
-     * 所属租户
+     * 角色名称
      */
-    @TableField(value = "tenant_id")
-    private String tenantId;
+    @ApiModelProperty(value = "机构名称")
+    @TableField(exist = false)
+    private String deptName;
 
-    /**
-     * 性别
-     */
-    @TableField(value = "sex")
-    private String sex;
 
-    /**
-     * 岗位
-     */
-    @ApiModelProperty(value = "岗位")
-    @TableField(value = "job_code")
-    private String jobCode;
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
 
-    /**
-     * 微信id
-     */
-    @TableField(value = "openid")
-    private String openid;
 
-    /**
-     * 审批状态   0 申请审核 1 审核通过 2 审核不通过 3 退回修改
-     */
-    @ApiModelProperty(value = "审批状态   0 申请审核 1 审核通过 2 审核不通过 3 退回修改")
-    @TableField(value = "approval_status")
-    private Integer approvalStatus;
 
     /**
-     * 审批意见
+     *  验证用户
+     *
+     * @author: lig
+     * @date: 2023年07月03日 0003
      */
-    @ApiModelProperty(value = "审批意见")
-    @TableField(value = "approval_opinion")
-    private String approvalOpinion;
+    @ApiIgnore
+    public static void verifyUser(SysUser user){
+        // 账号不存在、密码错误
+        if (user == null) {
+            throw new SystemException("账号不存在");
+        }
 
-    @TableField(exist = false)
-    private static final long serialVersionUID = 1L;
+        // 账号锁定
+        if (user.getStatus() == 0) {
+            throw new SystemException("账号已被锁定,请联系管理员");
+        }
+        // 新注册用户需要审核
+        if (user.getStatus() == 2) {
+            throw new SystemException("新注册用户需要审核,请联系管理员");
+        }
+        // 新注册用户审核不通过
+        if (user.getStatus() == 3) {
+            throw new SystemException("新注册用户审核不通过,请联系管理员");
+        }
+    }
 
-//    @Override
-//    public boolean equals(Object that) {
-//        if (this == that) {
-//            return true;
-//        }
-//        if (that == null) {
-//            return false;
-//        }
-//        if (getClass() != that.getClass()) {
-//            return false;
-//        }
-//        SysUser other = (SysUser) that;
-//        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
-//                && (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName()))
-//                && (this.getPassword() == null ? other.getPassword() == null : this.getPassword().equals(other.getPassword()))
-//                && (this.getSalt() == null ? other.getSalt() == null : this.getSalt().equals(other.getSalt()))
-//                && (this.getEmail() == null ? other.getEmail() == null : this.getEmail().equals(other.getEmail()))
-//                && (this.getMobile() == null ? other.getMobile() == null : this.getMobile().equals(other.getMobile()))
-//                && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
-//                && (this.getDeptId() == null ? other.getDeptId() == null : this.getDeptId().equals(other.getDeptId()))
-//                && (this.getCreateBy() == null ? other.getCreateBy() == null : this.getCreateBy().equals(other.getCreateBy()))
-//                && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
-//                && (this.getLastUpdateBy() == null ? other.getLastUpdateBy() == null : this.getLastUpdateBy().equals(other.getLastUpdateBy()))
-//                && (this.getLastUpdateTime() == null ? other.getLastUpdateTime() == null : this.getLastUpdateTime().equals(other.getLastUpdateTime()))
-//                && (this.getDelFlag() == null ? other.getDelFlag() == null : this.getDelFlag().equals(other.getDelFlag()))
-//                && (this.getUsertype() == null ? other.getUsertype() == null : this.getUsertype().equals(other.getUsertype()))
-//                && (this.getTenantId() == null ? other.getTenantId() == null : this.getTenantId().equals(other.getTenantId()))
-//                && (this.getSex() == null ? other.getSex() == null : this.getSex().equals(other.getSex()))
-//                && (this.getJobCode() == null ? other.getJobCode() == null : this.getJobCode().equals(other.getJobCode()))
-//                && (this.getOpenid() == null ? other.getOpenid() == null : this.getOpenid().equals(other.getOpenid()));
-//    }
-
-//    @Override
-//    public int hashCode() {
-//        final int prime = 31;
-//        int result = 1;
-//        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
-//        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
-//        result = prime * result + ((getPassword() == null) ? 0 : getPassword().hashCode());
-//        result = prime * result + ((getSalt() == null) ? 0 : getSalt().hashCode());
-//        result = prime * result + ((getEmail() == null) ? 0 : getEmail().hashCode());
-//        result = prime * result + ((getMobile() == null) ? 0 : getMobile().hashCode());
-//        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
-//        result = prime * result + ((getDeptId() == null) ? 0 : getDeptId().hashCode());
-//        result = prime * result + ((getCreateBy() == null) ? 0 : getCreateBy().hashCode());
-//        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
-//        result = prime * result + ((getLastUpdateBy() == null) ? 0 : getLastUpdateBy().hashCode());
-//        result = prime * result + ((getLastUpdateTime() == null) ? 0 : getLastUpdateTime().hashCode());
-//        result = prime * result + ((getDelFlag() == null) ? 0 : getDelFlag().hashCode());
-//        result = prime * result + ((getUsertype() == null) ? 0 : getUsertype().hashCode());
-//        result = prime * result + ((getTenantId() == null) ? 0 : getTenantId().hashCode());
-//        result = prime * result + ((getSex() == null) ? 0 : getSex().hashCode());
-//        result = prime * result + ((getJobCode() == null) ? 0 : getJobCode().hashCode());
-//        result = prime * result + ((getOpenid() == null) ? 0 : getOpenid().hashCode());
-//        return result;
-//    }
-//
-//    @Override
-//    public String toString() {
-//        StringBuilder sb = new StringBuilder();
-//        sb.append(getClass().getSimpleName());
-//        sb.append(" [");
-//        sb.append("Hash = ").append(hashCode());
-//        sb.append(", id=").append(id);
-//        sb.append(", name=").append(name);
-//        sb.append(", password=").append(password);
-//        sb.append(", salt=").append(salt);
-//        sb.append(", email=").append(email);
-//        sb.append(", mobile=").append(mobile);
-//        sb.append(", status=").append(status);
-//        sb.append(", deptId=").append(deptId);
-//        sb.append(", createBy=").append(createBy);
-//        sb.append(", createTime=").append(createTime);
-//        sb.append(", lastUpdateBy=").append(lastUpdateBy);
-//        sb.append(", lastUpdateTime=").append(lastUpdateTime);
-//        sb.append(", delFlag=").append(delFlag);
-//        sb.append(", usertype=").append(usertype);
-//        sb.append(", tenantId=").append(tenantId);
-//        sb.append(", sex=").append(sex);
-//        sb.append(", jobCode=").append(jobCode);
-//        sb.append(", openid=").append(openid);
-//        sb.append(", serialVersionUID=").append(serialVersionUID);
-//        sb.append("]");
-//        return sb.toString();
-//    }
 }

+ 72 - 0
src/main/java/com/ydtech/modules/admin/model/SysUserInfo.java

@@ -0,0 +1,72 @@
+package com.ydtech.modules.admin.model;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ydtech.modules.base.model.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Size;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 用户信息
+ */
+@TableName(value = "sys_user_info")
+@Data
+@ApiModel
+public class SysUserInfo implements Serializable {
+
+    @ApiModelProperty(value = "用户ID")
+    @TableId(value = "id")
+    @NotBlank(message = "用户ID不能为空")
+    private String id;
+
+    @ApiModelProperty(value = "居住地址")
+    @TableField(value = "address")
+    private String address;
+
+    @ApiModelProperty(value = "民族")
+    @TableField(value = "nations")
+    private String nations;
+
+    @ApiModelProperty(value = "身份证号")
+    @TableField(value = "identity")
+    private String identity;
+
+    @ApiModelProperty(value = "开户行")
+    @TableField(value = "bank_name")
+    private String bankName;
+
+    @ApiModelProperty(value = "开户账号")
+    @TableField(value = "accountno")
+    private String accountno;
+
+    @ApiModelProperty(value = "户籍")
+    @TableField(value = "koseki")
+    private String koseki;
+
+    @ApiModelProperty(value = "出生日期")
+    @TableField(value = "birthday")
+    private Date birthday;
+
+    @ApiModelProperty(value = "婚姻状况")
+    @TableField(value = "marital_status")
+    private String maritalStatus;
+
+    @ApiModelProperty(value = "")
+    @TableField(value = "remark")
+    private String remark;
+
+
+
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+
+}

+ 45 - 0
src/main/java/com/ydtech/modules/admin/model/dto/AgentUserDto.java

@@ -0,0 +1,45 @@
+package com.ydtech.modules.admin.model.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 个代用户DTO
+ *
+ * @author: lig
+ * @date: 2023-06-29
+ */
+@Data
+@ApiModel("个代用户DTO")
+public class AgentUserDto {
+
+
+    @ApiModelProperty(value = "姓名",required = true)
+    private String name;
+
+    @ApiModelProperty(value = "手机号",required = true)
+    private String mobile;
+
+    @ApiModelProperty(value = "密码" ,required = true)
+    private String password;
+
+    @ApiModelProperty(value = "手机验证码",required = true)
+    private String mobileMsg;
+
+    @ApiModelProperty(value = "身份证")
+    private String identity;
+
+    @ApiModelProperty(value = "地址")
+    private String address;
+
+    @ApiModelProperty(value = "推荐人ID",required = true)
+    private String referrerId;
+
+    @ApiModelProperty(value = "推荐人名称",required = true)
+    private String referrerName;
+
+
+
+
+}

+ 38 - 0
src/main/java/com/ydtech/modules/admin/model/dto/SysUserDto.java

@@ -0,0 +1,38 @@
+package com.ydtech.modules.admin.model.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 用户DTO
+ *
+ * @author: lig
+ * @date: 2023-06-29
+ */
+@Data
+@ApiModel
+public class SysUserDto {
+
+
+    @ApiModelProperty("用户ID(工号)")
+    private String userId;
+
+    @ApiModelProperty("姓名")
+    private String name;
+
+    @ApiModelProperty("手机号")
+    private String mobile;
+
+    @ApiModelProperty("机构ID")
+    private String deptId;
+
+    @ApiModelProperty("角色ID")
+    private String roleId;
+
+    @ApiModelProperty("状态")
+    private String status;
+
+
+
+}

+ 34 - 0
src/main/java/com/ydtech/modules/admin/model/dto/SysUserInfoDto.java

@@ -0,0 +1,34 @@
+package com.ydtech.modules.admin.model.dto;
+
+import com.ydtech.modules.admin.model.SysDept;
+import com.ydtech.modules.admin.model.SysUser;
+import com.ydtech.modules.esm.model.EsmUserInternal;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 用户信息DTO
+ *
+ * @author: lig
+ * @date: 2023-06-29
+ */
+@Data
+@ApiModel
+public class SysUserInfoDto {
+
+
+    @ApiModelProperty("基础用户")
+    private SysUser sysUser;
+
+    @ApiModelProperty("用户详细信息")
+    private EsmUserInternal sysUserInternal;
+
+//    @ApiModelProperty("用户代理人信息")
+//    private EsmUserAgentCheck esmUserAgent;
+
+    @ApiModelProperty("部门")
+    private SysDept sysDept;
+
+
+}

+ 4 - 0
src/main/java/com/ydtech/modules/admin/model/vo/SysUserBaseVO.java

@@ -36,6 +36,10 @@ public class SysUserBaseVO {
     private String jobName;
     @ApiModelProperty(value = "审核状态")
     private String approvalStatus;
+    @ApiModelProperty(value = "角色ID")
+    private String roleId;
+    @ApiModelProperty(value = "角色名称")
+    private String roleName;
 
 
 }

+ 1 - 2
src/main/java/com/ydtech/modules/admin/model/vo/SysUserInternalVO.java

@@ -2,7 +2,6 @@ package com.ydtech.modules.admin.model.vo;
 
 import com.ydtech.modules.admin.model.SysDept;
 import com.ydtech.modules.admin.model.SysUser;
-import com.ydtech.modules.esm.model.EsmUserAgentCheck;
 import com.ydtech.modules.esm.model.EsmUserInternal;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -23,7 +22,7 @@ public class SysUserInternalVO {
     private SysUser sysUser;
     @ApiModelProperty("用户详细信息")
     private EsmUserInternal sysUserInternal;
-    private EsmUserAgentCheck esmUserAgent;
+//    private EsmUserAgentCheck esmUserAgent;
     @ApiModelProperty("部门")
     private SysDept sysDept;
 

+ 1 - 2
src/main/java/com/ydtech/modules/admin/model/vo/SysUserSynthesisInfoVO.java

@@ -1,7 +1,6 @@
 package com.ydtech.modules.admin.model.vo;
 
 import com.ydtech.modules.admin.model.SysUser;
-import com.ydtech.modules.esm.model.EsmUserAgentCheck;
 import com.ydtech.modules.esm.model.EsmUserInternal;
 import lombok.Data;
 
@@ -18,7 +17,7 @@ public class SysUserSynthesisInfoVO {
 
     private SysUser sysUser;
     private EsmUserInternal sysUserInternal;
-    private EsmUserAgentCheck esmUserAgent;
+//    private EsmUserAgentCheck esmUserAgent;
 
 
 //    /**

+ 15 - 0
src/main/java/com/ydtech/modules/admin/service/SysUserInfoService.java

@@ -0,0 +1,15 @@
+package com.ydtech.modules.admin.service;
+
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ydtech.modules.admin.model.SysUserInfo;
+
+public interface SysUserInfoService extends IService<SysUserInfo> {
+
+
+
+
+}
+
+
+

+ 4 - 0
src/main/java/com/ydtech/modules/admin/service/SysUserRoleService.java

@@ -11,6 +11,10 @@ public interface SysUserRoleService extends IService<SysUserRole> {
 
     SysUserRole selectByUserId(String userId);
 
+    SysRole gainRoleByUserId(String userId);
+
+    boolean deleteByUserId(String userId);
+
 }
 
 

+ 11 - 34
src/main/java/com/ydtech/modules/admin/service/SysUserService.java

@@ -2,12 +2,14 @@ package com.ydtech.modules.admin.service;
 
 
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.ydtech.core.page.PageRequest;
 import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.model.SysUserRole;
 import com.ydtech.core.page.PageResult;
+import com.ydtech.modules.admin.model.vo.SysUserBaseVO;
 import com.ydtech.modules.admin.model.vo.SysUserInternalVO;
 import com.ydtech.modules.admin.model.vo.SysUserVO;
+import com.ydtech.modules.base.model.dto.PageDto;
+import com.ydtech.modules.base.model.vo.PageVo;
 
 import java.util.List;
 import java.util.Set;
@@ -48,7 +50,7 @@ public interface SysUserService extends IService<SysUser> {
 
     SysUserVO gainUserInternalByDeptId(String deptId);
 
-    PageResult gainUserPage(PageRequest pageRequest);
+    PageVo gainUserPage(PageDto pageDto);
 
 
     /**
@@ -70,39 +72,14 @@ public interface SysUserService extends IService<SysUser> {
 
 
 
+    SysUserBaseVO selectUserById(String userId);
+
+
+    boolean saveUser(SysUser sysUser);
+
+
+
 }
-//public interface SysUserService extends SysUserDao {
-//    SysUser findByUsername(String username);
-//
-//    SysUser findByPhone(String phone);
-//
-//    /**
-//     * 查找用户的菜单权限标识集合
-//     *
-//     * @param sysUser
-//     * @return
-//     */
-////    Set<String> findPermissions(String userName);
-//    Set<String> findPermissions(SysUser sysUser);
-//
-//    /**
-//     * 查找用户的角色集合
-//     *
-//     * @param userId
-//     * @return
-//     */
-//    List<SysUserRole> findUserRoles(Long userId);
-//
-//    public PageResult selectPagingCustom(int pageNumber, int pageSize, String name, String deptCode);
-//
-//    public void findSysUseresmUserInternalVORoles(PageResult pageResult);
-//
-//    public Integer deleteFlag(List<SysUser> lsSysUser);
-//
-//    SysUser findById(String handlercode);
-//
-//    SysUser findByUserId(String handlercode);
-//}
 
 
 

+ 7 - 4
src/main/java/com/ydtech/modules/admin/service/impl/SysRoleMenuServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ydtech.modules.admin.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ydtech.modules.admin.dao.SysMenuMapper;
 import com.ydtech.modules.admin.dao.SysRoleMenuMapper;
@@ -25,10 +26,12 @@ public class SysRoleMenuServiceImpl extends ServiceImpl<SysRoleMenuMapper, SysRo
             return 1;
         }
         Long roleId = records.get(0).getRoleId();
-        removeById(roleId);
-        for (SysRoleMenu record : records) {
-            save(record);
-        }
+        LambdaQueryWrapper<SysRoleMenu> lqw = new LambdaQueryWrapper<>();
+        lqw.eq(SysRoleMenu::getRoleId,roleId);
+        remove(lqw);
+
+        saveBatch(records);
+
         return 1;
     }
 

+ 22 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysUserInfoServiceImpl.java

@@ -0,0 +1,22 @@
+package com.ydtech.modules.admin.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ydtech.modules.admin.dao.SysUserInfoMapper;
+import com.ydtech.modules.admin.model.SysUserInfo;
+import com.ydtech.modules.admin.service.SysUserInfoService;
+import org.springframework.stereotype.Service;
+
+
+@Service
+public class SysUserInfoServiceImpl extends ServiceImpl<SysUserInfoMapper, SysUserInfo>
+        implements SysUserInfoService {
+
+}
+
+
+
+
+
+
+
+

+ 24 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysUserRoleServiceImpl.java

@@ -4,15 +4,23 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ydtech.modules.admin.dao.SysUserRoleMapper;
 import com.ydtech.modules.admin.dao.impl.SysUserRoleDaoImpl;
+import com.ydtech.modules.admin.model.SysRole;
 import com.ydtech.modules.admin.model.SysUserRole;
+import com.ydtech.modules.admin.service.SysRoleService;
 import com.ydtech.modules.admin.service.SysUserRoleService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+
 
 @Service
 public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUserRole>
         implements SysUserRoleService {
 
+    @Resource
+    private SysRoleService sysRoleService;
 
     @Override
     public SysUserRole selectByUserId(String userId) {
@@ -20,6 +28,22 @@ public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUs
         lqw.eq(SysUserRole::getUserId, userId);
         return getOne(lqw);
     }
+
+    @Override
+    public SysRole gainRoleByUserId(String userId) {
+        LambdaQueryWrapper<SysUserRole> lqw = new LambdaQueryWrapper<>();
+        lqw.eq(SysUserRole::getUserId,userId);
+        SysUserRole sur = getOne(lqw);
+        return sysRoleService.getById(sur.getRoleId());
+
+    }
+
+    @Override
+    public boolean deleteByUserId(String userId) {
+        LambdaQueryWrapper<SysUserRole> lqw = new LambdaQueryWrapper();
+        lqw.eq(SysUserRole::getUserId,userId);
+        return remove(lqw);
+    }
 }
 
 

+ 61 - 24
src/main/java/com/ydtech/modules/admin/service/impl/SysUserServiceImpl.java

@@ -4,25 +4,25 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ydtech.core.page.PageRequest;
 import com.ydtech.core.page.PageResult;
 import com.ydtech.modules.admin.dao.SysUserMapper;
 import com.ydtech.modules.admin.model.SysDept;
 import com.ydtech.modules.admin.model.SysMenu;
 import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.model.SysUserRole;
-import com.ydtech.modules.admin.service.SysDeptService;
-import com.ydtech.modules.admin.service.SysMenuService;
-import com.ydtech.modules.admin.service.SysRoleMenuService;
-import com.ydtech.modules.admin.service.SysUserService;
+import com.ydtech.modules.admin.service.*;
 import com.ydtech.modules.admin.model.vo.SysUserBaseVO;
 import com.ydtech.modules.admin.model.vo.SysUserInternalVO;
 import com.ydtech.modules.admin.model.vo.SysUserVO;
+import com.ydtech.modules.base.model.dto.PageDto;
+import com.ydtech.modules.base.model.vo.PageVo;
 import com.ydtech.utils.StringUtils;
 import com.ydtech.utils.idgen.IdGenerate;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
+import javax.annotation.Resource;
 import java.util.*;
 import java.util.function.Function;
 import java.util.stream.Collectors;
@@ -32,13 +32,18 @@ import java.util.stream.Collectors;
 public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
         implements SysUserService {
 
-    @Autowired
+    @Resource
     private SysMenuService sysMenuService;
-    @Autowired
+    @Resource
     private SysRoleMenuService sysRoleMenuService;
-    @Autowired
+    @Resource
     private SysDeptService sysDeptService;
 
+    @Resource
+    private SysUserMapper sysUserMapper;
+    @Resource
+    private SysUserRoleService sysUserRoleService;
+
     @Override
     public SysUser findByUsername(String username) {
         SysUser sysUser = null;
@@ -154,7 +159,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
         List<String> ids = lsSysUser.stream().map(SysUser::getId).collect(Collectors.toList());
 
         LambdaUpdateWrapper<SysUser> lqw = new LambdaUpdateWrapper<>();
-        lqw.set(SysUser::getDelFlag, "-1");
+        lqw.set(SysUser::getStatus, "0");
         lqw.in(SysUser::getId, ids);
         return update(lqw) == true ? ids.size() : 0;
 
@@ -190,35 +195,41 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
     }
 
     @Override
-    public PageResult gainUserPage(PageRequest pageRequest) {
+    public PageVo gainUserPage(PageDto pageDto) {
 
-        PageResult<SysUserBaseVO> pageResult = new PageResult();
+        PageVo<SysUserBaseVO> pageVo = new PageVo();
         //获取分页数量
-        int total = super.baseMapper.gainUserBaseInfoCount(pageRequest);
+        int total = super.baseMapper.gainUserBaseInfoCount(pageDto);
 
 
         //计算mysql分页起索引
-        int firstIndex = pageRequest.getPageNum() == 1 ? 0 : (pageRequest.getPageNum() - 1) * pageRequest.getPageSize() + 1;
-        //请求替换分页开始索引
-        pageRequest.setPageNum(firstIndex);
+        int firstIndex = pageDto.getPageNum() == 1 ? 0 : (pageDto.getPageNum() - 1) * pageDto.getPageSize();
+//        int firstIndex = pageDto.getPageNum() == 1 ? 0 : (pageDto.getPageNum() - 1) * pageDto.getPageSize() + 1;
+
 
         //计算mysql分页总页数
-        int totalPages = total % pageRequest.getPageSize() == 0 ? total / pageRequest.getPageSize() : total / pageRequest.getPageSize() + 1;
+        int totalPages = total % pageDto.getPageSize() == 0 ? total / pageDto.getPageSize() : total / pageDto.getPageSize() + 1;
 
 //        if(pageRequest.getPageNum() > 0){
 //            int newPageNum = pageRequest.getPageNum() -1;
 //            pageRequest.setPageNum(newPageNum * pageRequest.getPageSize());
 //        }
-        pageResult.setContent(super.baseMapper.gainUserBaseInfo(pageRequest));
-
 
         //响应
-        pageResult.setTotalSize(total);
-        pageResult.setPageNum(pageRequest.getPageNum());
-        pageResult.setPageSize(pageRequest.getPageSize());
-        pageResult.setTotalPages(totalPages);
+        pageVo.setTotalSize(total);
+        pageVo.setPageNum(pageDto.getPageNum());
+        pageVo.setPageSize(pageDto.getPageSize());
+        pageVo.setTotalPages(totalPages);
+
 
-        return pageResult;
+        //请求替换分页开始索引
+        pageDto.setPageNum(firstIndex);
+        pageVo.setContent(super.baseMapper.gainUserBaseInfo(pageDto));
+
+
+
+
+        return pageVo;
     }
 
     @Override
@@ -282,7 +293,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
     public boolean check(String userId,Integer approvalStatus,String approvalOpinion) {
 
         SysUser user = getById(userId);
-        user.setApprovalStatus(approvalStatus);
+//        user.setApprovalStatus(approvalStatus);
         user.setApprovalOpinion(approvalOpinion);
 
         return updateById(user);
@@ -290,7 +301,33 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
 
     }
 
+    @Override
+    public SysUserBaseVO selectUserById(String userId) {
+        return sysUserMapper.selectUserById(userId);
+    }
+
+    @Override
+    @Transactional
+    public boolean saveUser(SysUser sysUser) {
+
+
+        if (StringUtils.isNullOrEmpty(sysUser.getId())) {
+            //新增
+            sysUser.setId(gainNextUserId(sysUser.getDeptId()));
+            sysUser.setMobile(sysUser.getMobile());
 
+        }
+
+        saveOrUpdate(sysUser);
+
+        sysUserRoleService.deleteByUserId(sysUser.getId());
+        SysUserRole sur = new SysUserRole();
+        sur.setUserId(sysUser.getId());
+        sur.setRoleId(StringUtils.toLong(sysUser.getRoleId()));
+        sysUserRoleService.save(sur);
+
+        return true;
+    }
 
 
 }

+ 4 - 4
src/main/java/com/ydtech/modules/admin/service/impl/WechatServiceImpl.java

@@ -99,14 +99,14 @@ public class WechatServiceImpl implements WechatService {
             SysUserRole sysUserRole = new SysUserRole();
             sysUserRole.setUserId(nextPK);
             sysUserRole.setRoleId(2L);
-            sysUserRole.setLastUpdateTime(new Date());
+//            sysUserRole.setLastUpdateTime(new Date());
             sysUserRoleMapper.insert(sysUserRole);
 
             sysUser1.setStatus(2); //1:正常   0:离司 2:新注册 审核后为1
             sysUser1.setName("游客");
-            sysUser1.setUsertype("A");
-            sysUser1.setCreateTime(new Date());
-            sysUser1.setLastUpdateTime(new Date());
+//            sysUser1.setUsertype("A");
+//            sysUser1.setCreateTime(new Date());
+//            sysUser1.setLastUpdateTime(new Date());
             sysUser1.setDeptId(pyramid);
             sysUser1.setId(nextPK);
             sysUser1.setOpenid(openId);

+ 4 - 5
src/main/java/com/ydtech/modules/base/controller/BaseController.java

@@ -6,10 +6,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ydtech.core.page.PageResult;
 import com.ydtech.modules.admin.model.SysUser;
-import com.ydtech.modules.base.model.dto.BasePageDto;
+import com.ydtech.modules.base.model.dto.PageDto;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.poi.ss.formula.functions.T;
-import springfox.documentation.annotations.ApiIgnore;
 
 /**
  * 基础控制器
@@ -73,9 +72,9 @@ public class BaseController {
      * @author: lig
      * @date: 2023年06月28日 0028
      */
-    public Page<T> buildPageRequest(BasePageDto basePageDto){
-        int pageNum = basePageDto.getPageNum() < 1?1:basePageDto.getPageNum();
-        int pageSize = basePageDto.getPageSize() <1?1:basePageDto.getPageSize();
+    public Page<T> buildPageRequest(PageDto pageDto){
+        int pageNum = pageDto.getPageNum() < 1?1: pageDto.getPageNum();
+        int pageSize = pageDto.getPageSize() <1?1: pageDto.getPageSize();
         Page<org.apache.poi.ss.formula.functions.T> p = new Page<>();
         p.setSize(pageSize);
         p.setCurrent(pageNum);

+ 41 - 0
src/main/java/com/ydtech/modules/base/model/BaseEntity.java

@@ -0,0 +1,41 @@
+package com.ydtech.modules.base.model;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+public class BaseEntity implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 创建者
+     */
+    @TableField(value = "create_by",fill = FieldFill.INSERT)
+    private String createBy;
+
+    /**
+     * 创建时间
+     */
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @TableField(value = "create_time",fill = FieldFill.INSERT)
+    private Date createTime;
+
+    /**
+     * 更新者
+     */
+    @TableField(value = "update_by",fill = FieldFill.INSERT_UPDATE)
+    private String updateBy;
+
+    /**
+     * 更新时间
+     */
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @TableField(value = "update_time",fill = FieldFill.INSERT_UPDATE)
+    private Date updateTime;
+}

+ 1 - 9
src/main/java/com/ydtech/modules/base/model/dto/BasePageDto.java → src/main/java/com/ydtech/modules/base/model/dto/PageDto.java

@@ -1,16 +1,8 @@
 package com.ydtech.modules.base.model.dto;
 
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ydtech.core.page.BasePageVO;
-import com.ydtech.core.page.PageResult;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import org.apache.poi.ss.formula.functions.T;
-import springfox.documentation.annotations.ApiIgnore;
-
-import java.io.Serializable;
 
 
 /**
@@ -21,7 +13,7 @@ import java.io.Serializable;
  */
 @Data
 @ApiModel(description = "基础分页dto")
-public class BasePageDto<T> {
+public class PageDto<T> {
 
     @ApiModelProperty(value = "页码",allowableValues = "1")
     private Integer pageNum = 1;

+ 121 - 0
src/main/java/com/ydtech/modules/base/model/vo/PageVo.java

@@ -0,0 +1,121 @@
+package com.ydtech.modules.base.model.vo;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.github.pagehelper.Page;
+import com.ydtech.core.page.BasePageVO;
+import com.ydtech.modules.inv.model.vo.res.InvBaseChannelMatchInsResVO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ *  基础分页vo
+ *
+ * @author: lig
+ * @date: 2023年06月30日 0030
+ */
+@Data
+@ApiModel(description = "基础分页vo")
+public class PageVo<T> {
+    /**
+     * 当前页码
+     */
+    @ApiModelProperty(value = "当前页码")
+    private int pageNum;
+    /**
+     * 每页数量
+     */
+    @ApiModelProperty(value = "每页数量")
+    private int pageSize;
+    /**
+     * 记录总数
+     */
+    @ApiModelProperty(value = "记录总数")
+    private long totalSize;
+    /**
+     * 页码总数
+     */
+    @ApiModelProperty(value = "页码总数")
+    private int totalPages;
+    /**
+     * 分页数据
+     */
+    private List<T> content;
+
+
+    /**
+     *  构造分页响应数据
+     *
+     * @author: lig
+     * @date: 2023年03月07日 0007
+     */
+    public static PageVo buildPageResult(IPage page) {
+        PageVo p = new PageVo();
+        p.setPageNum((int)page.getCurrent());
+        p.setPageSize((int)page.getSize());
+        p.setTotalPages((int)page.getPages());
+        p.setTotalSize((int)page.getTotal());
+
+        p.setContent(page.getRecords()) ;
+        return p;
+
+    }
+
+
+    /**
+     *  构造分页信息
+     *  使用与自定义sql
+     *
+     * @author: lig
+     * @date: 2023年06月08日 0008
+     */
+    public static <T> PageVo<InvBaseChannelMatchInsResVO> buildPageResult(BasePageVO basePageVo, int total, List<T> list){
+
+        int pageNum = basePageVo.getPageNum();
+        int pageSize = basePageVo.getPageSize();
+        if(pageNum < 1) basePageVo.setPageNum(1);
+        if(pageSize < 1) basePageVo.setPageSize(10);
+
+        PageVo p = new PageVo();
+
+        //计算mysql分页总页数
+        int totalPages = total % pageSize == 0?total / pageSize:total / pageSize +1;
+
+        p.setPageNum(basePageVo.getPageNum());
+        p.setPageSize(basePageVo.getPageSize());
+        p.setTotalSize(total);
+        p.setTotalPages(totalPages);
+
+        p.setContent(list);
+
+        return p;
+
+    }
+
+
+    /**
+     *  构造mysql 分页起始索引
+     *  使用与自定义sql
+     *
+     * @author: lig
+     * @date: 2023年06月08日 0008
+     */
+    public static int buildPageLimitStart(BasePageVO basePageVo){
+
+        int pageNum = basePageVo.getPageNum();
+        int pageSize = basePageVo.getPageSize();
+        if(pageNum < 1) basePageVo.setPageNum(1);
+        if(pageSize < 1) basePageVo.setPageSize(10);
+
+        //计算mysql分页起索引
+        int firstIndex = pageNum==1?0:(pageNum-1) * pageSize +1;
+        return firstIndex;
+
+    }
+
+
+}

+ 25 - 20
src/main/java/com/ydtech/modules/esm/controller/EsmTrainController.java

@@ -3,7 +3,10 @@ package com.ydtech.modules.esm.controller;
 import com.github.pagehelper.util.StringUtil;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.admin.model.SysUser;
+import com.ydtech.modules.admin.model.vo.SysUserBaseVO;
+import com.ydtech.modules.admin.service.SysUserRoleService;
 import com.ydtech.modules.admin.service.SysUserService;
+import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.esm.model.EsmTrain;
 import com.ydtech.modules.esm.model.EsmTrainQueryReq;
 import com.ydtech.modules.esm.service.TrainService;
@@ -23,7 +26,7 @@ import javax.servlet.http.HttpServletRequest;
 @Api("XXX培训管理")
 @RestController
 @RequestMapping("/train")
-public class EsmTrainController {
+public class EsmTrainController extends BaseController {
     private Logger logger = LoggerFactory.getLogger(EsmTrainController.class);
 
     @Autowired
@@ -66,27 +69,29 @@ public class EsmTrainController {
     public HttpResult queryTrainByCodition_app(HttpServletRequest request, @RequestBody EsmTrainQueryReq codition) {
         HttpResult httpResult = null;
         try {
-            String userId = "";
-//            String userid = JwtTokenUtils.getUsernameFromRequest(request);
-            SysUser sysUser = sysUserService.findByUserId(userId);
-            String userscope = "";
-            if (sysUser == null) {
-                throw new Exception("token传值有误");
-            } else {
-                if ("A".equals(sysUser.getUsertype())) {
-                    userscope = "A";//后线人员
-                } else if ("18".equals(sysUser.getJobCode())) {
-                    userscope = "C";//个代
-                } else if ("20".equals(sysUser.getJobCode())) {
-                    userscope = "D";//出单员
-                } else {
-                    userscope = "B";//业务员
-                }
-            }
+//            SysUser sysUser = getUser();
+            SysUserBaseVO vo = sysUserService.selectUserById(getUserId());
+
+            vo.getRoleName().equals("后线人员");
+
+//            String userscope = "";
+//            if (sysUser == null) {
+//                throw new Exception("token传值有误");
+//            } else {
+//                if ("A".equals(sysUser.getUsertype())) {
+//                    userscope = "A";//后线人员
+//                } else if ("18".equals(sysUser.getJobCode())) {
+//                    userscope = "C";//个代
+//                } else if ("20".equals(sysUser.getJobCode())) {
+//                    userscope = "D";//出单员
+//                } else {
+//                    userscope = "B";//业务员
+//                }
+//            }
             codition.setStatus("1");
-            codition.setUserscope(userscope);
+            codition.setUserscope("D");
             codition.setByzd1(StringUtil.isEmpty(codition.getByzd1()) ? "1" : codition.getByzd1());
-            codition.setUserId(userId);
+            codition.setUserId(getUserId());
             httpResult = trainService.queryTrainByCodition(codition);
 
         } catch (Exception e) {

+ 148 - 0
src/main/java/com/ydtech/modules/esm/controller/EsmUserController.java

@@ -0,0 +1,148 @@
+package com.ydtech.modules.esm.controller;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.admin.model.SysDept;
+import com.ydtech.modules.admin.model.SysUser;
+import com.ydtech.modules.admin.model.SysUserRole;
+import com.ydtech.modules.admin.model.dto.SysUserDto;
+import com.ydtech.modules.admin.service.SysDeptService;
+import com.ydtech.modules.admin.service.SysUserRoleService;
+import com.ydtech.modules.admin.service.SysUserService;
+import com.ydtech.modules.base.controller.BaseController;
+import com.ydtech.modules.esm.model.EsmUserReferrer;
+import com.ydtech.modules.esm.model.vo.TeamUserQryVO;
+import com.ydtech.modules.esm.model.vo.TeamUserVO;
+import com.ydtech.modules.esm.service.EsmUserReferrerService;
+import com.ydtech.utils.StringUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+@RestController
+@Api(tags = "业务用户控制器")
+@RequestMapping("esm/user")
+public class EsmUserController extends BaseController {
+
+    @Resource
+    private SysUserService sysUserService;
+    @Resource
+    private EsmUserReferrerService esmUserReferrerService;
+    @Resource
+    private SysDeptService sysDeptService;
+    @Resource
+    private SysUserRoleService sysUserRoleService;
+
+
+
+    /**
+     *  查询团队人数:我的团队人数,一级团队人数,二级团队人数,三级团队人数,临时用户人数
+     *
+     * @author: lig
+     * @date: 2023年07月03日 0003
+     */
+    @ApiOperation(value = "查询团队人数")
+    @PostMapping("/queryTeamNum")
+    public HttpResult queryTeamNum(@RequestBody SysUserDto dto) {
+
+
+        List<TeamUserVO> teamList = new ArrayList<>();
+
+
+        LambdaQueryWrapper<SysUserRole> userRoleLqw = new LambdaQueryWrapper<>();
+        userRoleLqw.select(SysUserRole::getUserId);
+        userRoleLqw.eq(SysUserRole::getRoleId,20);
+        userRoleLqw.eq(StringUtils.isNotEmpty(dto.getUserId()),SysUserRole::getUserId,dto.getUserId());
+//        List<SysUserRole> userRoleList = sysUserRoleService.list(userRoleLqw);
+
+//        List<String> strings = userRoleList.stream().map(x -> x.getUserId() + "").collect(Collectors.toList());
+
+        //用户ID 代理人角色
+        List<String> longs = sysUserRoleService.listObjs(userRoleLqw, new Function<Object, String>() {
+            @Override
+            public String apply(Object userId) {
+                return userId.toString();
+            }
+        });
+
+        //获取团队长
+        LambdaQueryWrapper<SysUser> lqwUser = new LambdaQueryWrapper<>();
+        lqwUser.in(SysUser::getId,longs);
+        lqwUser.eq(SysUser::getStatus,1);
+        lqwUser.ne(SysUser::getId,"admin");
+        lqwUser.eq(StringUtils.isNotEmpty(dto.getName()),SysUser::getName,dto.getName());
+        lqwUser.eq(StringUtils.isNotEmpty(dto.getMobile()),SysUser::getMobile,dto.getMobile());
+        List<SysUser> userList= sysUserService.list(lqwUser);
+
+
+
+
+        userList.stream().forEach(a ->{
+
+            TeamUserVO vo = new TeamUserVO();
+            List<SysUser> oneList = new ArrayList<>();
+            List<SysUser> oneTempList = new ArrayList<>();
+
+            List<SysUser> twoList = new ArrayList<>();
+            List<SysUser> twoTempList = new ArrayList<>();
+
+            List<SysUser> threeList = new ArrayList<>();
+            List<SysUser> threeTempList = new ArrayList<>();
+
+            //一级
+            esmUserReferrerService.buildLevelList(a,oneList,oneTempList);
+
+            oneList.stream().forEach(b ->{
+                //二级
+                esmUserReferrerService.buildLevelList(b,twoList,twoTempList);
+                twoList.stream().forEach(c ->{
+                    //三级
+                    esmUserReferrerService.buildLevelList(c,threeList,threeTempList);
+                });
+
+            });
+
+            vo.setLevel1num(oneList.size());
+            vo.setLevel2num(twoList.size());
+            vo.setLevel3num(threeList.size());
+
+            //临时人数
+            vo.setTempnum(oneTempList.size() + twoTempList.size() + threeTempList.size());
+            //我的团队数
+            vo.setTeamnum(vo.getTempnum() + oneList.size() + twoList.size() + threeList.size());
+            vo.setId(a.getId());
+            vo.setName(a.getName());
+            vo.setMobile(a.getMobile());
+            vo.setSex(a.getSex());
+
+            SysDept sysDept = sysDeptService.getById(a.getDeptId());
+            if(null != sysDept){
+                vo.setDeptId(sysDept.getId());
+                vo.setDeptName(sysDept.getName());
+            }
+            teamList.add(vo);
+
+
+        });
+
+        return HttpResult.ok(teamList);
+
+
+
+    }
+
+
+}

+ 428 - 428
src/main/java/com/ydtech/modules/esm/controller/EsmUserInternalCheckController.java

@@ -1,381 +1,283 @@
-package com.ydtech.modules.esm.controller;
-
-
-import com.ydtech.core.page.HttpResult;
-import com.ydtech.core.page.PageRequest;
-import com.ydtech.modules.admin.model.SysUser;
-import com.ydtech.modules.admin.model.SysUserRole;
-import com.ydtech.modules.admin.service.SysMsgLogService;
-import com.ydtech.modules.admin.service.SysUserRoleService;
-import com.ydtech.modules.admin.service.SysUserService;
-import com.ydtech.modules.base.controller.BaseController;
-import com.ydtech.modules.esm.model.EsmUserInternal;
-import com.ydtech.modules.esm.model.vo.UserRegistVO;
-import com.ydtech.modules.esm.service.EsmUserInternalService;
-import com.ydtech.modules.esm.service.SysUserCheckService;
-import com.ydtech.security.utils.PasswordUtils;
-import com.ydtech.utils.StringUtils;
-import com.ydtech.utils.idgen.IdGenerate;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.redis.core.StringRedisTemplate;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletRequest;
-import java.util.Date;
-
-import static com.ydtech.constants.RedisConstant.PHONE_VERIFICATION_CODE_KEY;
-
-/**
- * ---------------------------
- * 人员管理 (EsmUserController)
- * ---------------------------
- * 作者:qfl
- * ---------------------------
- */
-@RestController
-@RequestMapping("esmUserInternalcheck")
-public class EsmUserInternalCheckController extends BaseController {
-
-
-    @Autowired
-    private SysUserCheckService sysUserCheckService;
-
-    @Autowired
-    private SysUserService sysUserService;
-
+//package com.ydtech.modules.esm.controller;
+//
+//
+//import com.ydtech.core.page.HttpResult;
+//import com.ydtech.core.page.PageRequest;
+//import com.ydtech.modules.admin.model.SysUser;
+//import com.ydtech.modules.admin.model.SysUserRole;
+//import com.ydtech.modules.admin.service.SysMsgLogService;
+//import com.ydtech.modules.admin.service.SysUserRoleService;
+//import com.ydtech.modules.admin.service.SysUserService;
+//import com.ydtech.modules.base.controller.BaseController;
+//import com.ydtech.modules.esm.model.EsmUserInternal;
+//import com.ydtech.modules.esm.model.vo.UserRegistVO;
+//import com.ydtech.modules.esm.service.EsmUserInternalService;
+//import com.ydtech.modules.esm.service.SysUserCheckService;
+//import com.ydtech.security.utils.PasswordUtils;
+//import com.ydtech.utils.StringUtils;
+//import com.ydtech.utils.idgen.IdGenerate;
+//import io.swagger.annotations.ApiOperation;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.data.redis.core.StringRedisTemplate;
+//import org.springframework.web.bind.annotation.*;
+//
+//import javax.servlet.http.HttpServletRequest;
+//import java.util.Date;
+//
+//import static com.ydtech.constants.RedisConstant.PHONE_VERIFICATION_CODE_KEY;
+//
+///**
+// * ---------------------------
+// * 人员管理 (EsmUserController)
+// * ---------------------------
+// * 作者:qfl
+// * ---------------------------
+// */
+//@RestController
+//@RequestMapping("esmUserInternalcheck")
+//public class EsmUserInternalCheckController extends BaseController {
+//
+//
 //    @Autowired
-//    private EsmUserInternalCheckService esmUserInternalCheckService;
-
-    @Autowired
-    private EsmUserInternalService esmUserInternalService;
-
+//    private SysUserCheckService sysUserCheckService;
+//
 //    @Autowired
-//    private EsmUserAgentCheckService esmUserAgentCheckService;
-
-    @Autowired
-    private SysMsgLogService sysMsgLogService;
-
-    @Autowired
-    private SysUserRoleService sysUserRoleService;
-
-    @Autowired
-    private StringRedisTemplate stringRedisTemplate;
-
-//    /**
-//     * 保存人员信息, 返回人员编码
-//     *
-//     * @param record
-//     * @return
-//     */
-////    @PreAuthorize("hasAuthority('sys:user:edit')")
-//    @PostMapping(value = "/saveUser")
-//    public HttpResult save(@RequestBody VoEsmUserInternalCheck record) {
-//        int noCount = 3;//顺序号是几位的
+//    private SysUserService sysUserService;
 //
-//        Integer result = 0;
-//        String resultStr = "";
-//        String msg = "保存成功";
-//        SysUserCheck sysUserCheck = record.getSysUser();
-//        EsmUserInternalCheck esmUserInternalCheck = record.getEsmUserInternal();
+////    @Autowired
+////    private EsmUserInternalCheckService esmUserInternalCheckService;
 //
-//        String nextPK = "001";
-//        if (sysUserCheck != null) {
-//            if (StringUtils.isNullOrEmpty(sysUserCheck.getId())) {//新增
-//                //手机号和身份证号都不可以重复
-//                if (!StringUtils.isNullOrEmpty(sysUserCheck.getMobile())) {
-//                    SysUser sysUser = sysUserService.findByPhone(sysUserCheck.getMobile());
-//                    if (sysUser != null) {
-//                        return HttpResult.error("手机号已存在");
-//                    }
-//                }
-//            /*    if(!StringUtils.isNullOrEmpty(esmUserInternalCheck.getIdentity())){
-//                    List<EsmUserInternalCheck> users = esmUserInternalCheckService.selectList(" where identity=?",new Object[]{esmUserInternalCheck.getIdentity()});
-//                    if(users != null && users.size()>0){
-//                        return HttpResult.error("身份证号已存在");
-//                    }
-//                }*/
-//
-//                //生成临时表主键 checkid
-//                String checkid = String.valueOf(new Date().getTime());
-//                sysUserCheck.setCheckid(checkid);
-//                //根据机构号获取userid最大值,不需要加人员类型判断  从sys_user获取
-//                String maxId = esmUserInternalService.findMaxId(sysUserCheck.getDeptId());
-//                if (StringUtils.isNullOrEmpty(maxId)) {
-//                    nextPK = sysUserCheck.getDeptId() + "001";
-//                } else {
-//                    nextPK = IdGenerate.nextCode(maxId, noCount);
-//                }
-//                sysUserCheck.setId(nextPK);
-//                //密码加密
-//                String salt = PasswordUtils.getSalt();
-//                String password = PasswordUtils.encode(sysUserCheck.getPassword(), salt);
-//                sysUserCheck.setPassword(password);
-//                sysUserCheck.setSalt(salt);
-//                sysUserCheck.setStatus(0); //初始化为0  审核后为1 有效
-//
-//                sysUserCheck.setCreateBy(getUserName());
-//                sysUserCheck.setCreateTime(new Date());
-//                sysUserCheck.setLastUpdateBy(getUserName());
-//                sysUserCheck.setLastUpdateTime(new Date());
-//                result = sysUserCheckService.insertSelective(sysUserCheck);
-//
-//                // 插入正式表
-//                SysUser sysUser = new SysUser();
-//                BeanUtils.copyProperties(sysUserCheck, sysUser);
-//                result = sysUserService.save(sysUser)==true?1:0;
-//
-//                //角色配置
-//                SysUserRole userRole = new SysUserRole();
-//                userRole.setUserId(nextPK);
-//                userRole.setRoleId(2L);
-//                sysUserRoleService.save(userRole);
-//
-//                if (esmUserInternalCheck != null) {
-//                    esmUserInternalCheck.setCheckid(checkid);
-//                    esmUserInternalCheck.setId(nextPK);
-//                    esmUserInternalCheck.setStatus("0");  //0 申请审核 1 审核通过 2 审核不通过 3 退回修改
-//                    result = esmUserInternalCheckService.insertSelective(esmUserInternalCheck);
-//                }
-//                EsmUserAgentCheck esmUserAgentCheck = record.getEsmUserAgent();
-//                if (esmUserAgentCheck != null) {
-//                    esmUserAgentCheck.setCheckid(checkid);
-//                    esmUserAgentCheck.setId(nextPK);
-//                    result = esmUserAgentCheckService.insertSelective(esmUserAgentCheck);
-//                }
-//            } else if (StringUtils.isNullOrEmpty(sysUserCheck.getCheckid())) { //修改正式信息后提交
-//                if (!StringUtils.isNullOrEmpty(sysUserCheck.getMobile())) {
-////                    List<SysUser> users = sysUserService.selectList(" where id != ? and mobile=?", new Object[]{sysUserCheck.getId(), sysUserCheck.getMobile()});
-//                    LambdaQueryWrapper<SysUser> lqw = new LambdaQueryWrapper<>();
-//                    lqw.ne(SysUser::getId,sysUserCheck.getId());
-//                    lqw.eq(SysUser::getMobile,sysUserCheck.getMobile());
-//                    List<SysUser> users = sysUserService.list(lqw);
-//                    if (users != null && users.size() > 0) {
-//                        return HttpResult.error("手机号已存在");
-//                    }
-//                }
-//                if (!StringUtils.isNullOrEmpty(esmUserInternalCheck.getIdentity())) {
-//                    List<EsmUserInternalCheck> users = esmUserInternalCheckService.selectList(" where id != ? and identity=?", new Object[]{sysUserCheck.getId(), esmUserInternalCheck.getIdentity()});
-//                    if (users != null && users.size() > 0) {
-//                        return HttpResult.error("身份证号已存在");
-//                    }
-//                }
-//                //生成临时表主键 checkid
-//                String checkid = String.valueOf(new Date().getTime());
-//                sysUserCheck.setCheckid(checkid);
-//
-//                sysUserCheck.setStatus(0); //初始化为0  审核后为1 有效
-//
-//                sysUserCheck.setCreateBy(getUserName());
-//                sysUserCheck.setCreateTime(new Date());
-//                sysUserCheck.setLastUpdateBy(getUserName());
-//                sysUserCheck.setLastUpdateTime(new Date());
-//                result = sysUserCheckService.insertSelective(sysUserCheck);
-//
-//                if (esmUserInternalCheck != null) {
-//                    esmUserInternalCheck.setCheckid(checkid);
-//                    esmUserInternalCheck.setStatus("0");  //0 申请审核 1 审核通过 2 审核不通过 3 退回修改
-//                    result = esmUserInternalCheckService.insertSelective(esmUserInternalCheck);
-//                }
-//                EsmUserAgentCheck esmUserAgentCheck = record.getEsmUserAgent();
-//                if (esmUserAgentCheck != null) {
-//                    esmUserAgentCheck.setCheckid(checkid);
-//                    result = esmUserAgentCheckService.insertSelective(esmUserAgentCheck);
-//                }
-//            } else {// 退回修改后重新提交
-//                if (!StringUtils.isNullOrEmpty(sysUserCheck.getMobile())) {
-//                    LambdaQueryWrapper<SysUser> lqw = new LambdaQueryWrapper<>();
-//                    lqw.ne(SysUser::getId,sysUserCheck.getId());
-//                    lqw.eq(SysUser::getMobile,sysUserCheck.getMobile());
-//                    List<SysUser> users = sysUserService.list(lqw);
-////                    List<SysUser> users = sysUserService.selectList(" where id != ? and mobile=?", new Object[]{sysUserCheck.getId(), sysUserCheck.getMobile()});
-//                    if (users != null && users.size() > 0) {
-//                        return HttpResult.error("手机号已存在");
-//                    }
-//                }
-//                if (!StringUtils.isNullOrEmpty(esmUserInternalCheck.getIdentity())) {
-//                    List<EsmUserInternalCheck> users = esmUserInternalCheckService.selectList(" where id != ? and identity=?", new Object[]{sysUserCheck.getId(), esmUserInternalCheck.getIdentity()});
-//                    if (users != null && users.size() > 0) {
-//                        return HttpResult.error("身份证号已存在");
-//                    }
-//                }
-//                sysUserCheck.setStatus(0); //初始化为0  审核后为1 有效
-//                sysUserCheck.setLastUpdateBy(getUserName());
-//                sysUserCheck.setLastUpdateTime(new Date());
-//                result = sysUserCheckService.updateSelective(sysUserCheck);
-//
-//
-//                if (esmUserInternalCheck != null) {
-//                    esmUserInternalCheck.setStatus("0");  //0 申请审核 1 审核通过 2 审核不通过 3 退回修改
-//                    result = esmUserInternalCheckService.updateSelective(esmUserInternalCheck);
-//                }
-//                EsmUserAgentCheck esmUserAgentCheck = record.getEsmUserAgent();
-//                if (esmUserAgentCheck != null) {
-//                    result = esmUserAgentCheckService.updateSelective(esmUserAgentCheck);
-//                }
-//            }
+//    @Autowired
+//    private EsmUserInternalService esmUserInternalService;
 //
-//        }
-//        //返回人员编号给前端 20200506
-//        if (result == 1) {
-//            resultStr = sysUserCheck.getId();
+////    @Autowired
+////    private EsmUserAgentCheckService esmUserAgentCheckService;
+//
+//    @Autowired
+//    private SysMsgLogService sysMsgLogService;
+//
+//    @Autowired
+//    private SysUserRoleService sysUserRoleService;
+//
+//    @Autowired
+//    private StringRedisTemplate stringRedisTemplate;
+//
+////    /**
+////     * 保存人员信息, 返回人员编码
+////     *
+////     * @param record
+////     * @return
+////     */
+//////    @PreAuthorize("hasAuthority('sys:user:edit')")
+////    @PostMapping(value = "/saveUser")
+////    public HttpResult save(@RequestBody VoEsmUserInternalCheck record) {
+////        int noCount = 3;//顺序号是几位的
+////
+////        Integer result = 0;
+////        String resultStr = "";
+////        String msg = "保存成功";
+////        SysUserCheck sysUserCheck = record.getSysUser();
+////        EsmUserInternalCheck esmUserInternalCheck = record.getEsmUserInternal();
+////
+////        String nextPK = "001";
+////        if (sysUserCheck != null) {
+////            if (StringUtils.isNullOrEmpty(sysUserCheck.getId())) {//新增
+////                //手机号和身份证号都不可以重复
+////                if (!StringUtils.isNullOrEmpty(sysUserCheck.getMobile())) {
+////                    SysUser sysUser = sysUserService.findByPhone(sysUserCheck.getMobile());
+////                    if (sysUser != null) {
+////                        return HttpResult.error("手机号已存在");
+////                    }
+////                }
+////            /*    if(!StringUtils.isNullOrEmpty(esmUserInternalCheck.getIdentity())){
+////                    List<EsmUserInternalCheck> users = esmUserInternalCheckService.selectList(" where identity=?",new Object[]{esmUserInternalCheck.getIdentity()});
+////                    if(users != null && users.size()>0){
+////                        return HttpResult.error("身份证号已存在");
+////                    }
+////                }*/
+////
+////                //生成临时表主键 checkid
+////                String checkid = String.valueOf(new Date().getTime());
+////                sysUserCheck.setCheckid(checkid);
+////                //根据机构号获取userid最大值,不需要加人员类型判断  从sys_user获取
+////                String maxId = esmUserInternalService.findMaxId(sysUserCheck.getDeptId());
+////                if (StringUtils.isNullOrEmpty(maxId)) {
+////                    nextPK = sysUserCheck.getDeptId() + "001";
+////                } else {
+////                    nextPK = IdGenerate.nextCode(maxId, noCount);
+////                }
+////                sysUserCheck.setId(nextPK);
+////                //密码加密
+////                String salt = PasswordUtils.getSalt();
+////                String password = PasswordUtils.encode(sysUserCheck.getPassword(), salt);
+////                sysUserCheck.setPassword(password);
+////                sysUserCheck.setSalt(salt);
+////                sysUserCheck.setStatus(0); //初始化为0  审核后为1 有效
+////
+////                sysUserCheck.setCreateBy(getUserName());
+////                sysUserCheck.setCreateTime(new Date());
+////                sysUserCheck.setLastUpdateBy(getUserName());
+////                sysUserCheck.setLastUpdateTime(new Date());
+////                result = sysUserCheckService.insertSelective(sysUserCheck);
+////
+////                // 插入正式表
+////                SysUser sysUser = new SysUser();
+////                BeanUtils.copyProperties(sysUserCheck, sysUser);
+////                result = sysUserService.save(sysUser)==true?1:0;
+////
+////                //角色配置
+////                SysUserRole userRole = new SysUserRole();
+////                userRole.setUserId(nextPK);
+////                userRole.setRoleId(2L);
+////                sysUserRoleService.save(userRole);
+////
+////                if (esmUserInternalCheck != null) {
+////                    esmUserInternalCheck.setCheckid(checkid);
+////                    esmUserInternalCheck.setId(nextPK);
+////                    esmUserInternalCheck.setStatus("0");  //0 申请审核 1 审核通过 2 审核不通过 3 退回修改
+////                    result = esmUserInternalCheckService.insertSelective(esmUserInternalCheck);
+////                }
+////                EsmUserAgentCheck esmUserAgentCheck = record.getEsmUserAgent();
+////                if (esmUserAgentCheck != null) {
+////                    esmUserAgentCheck.setCheckid(checkid);
+////                    esmUserAgentCheck.setId(nextPK);
+////                    result = esmUserAgentCheckService.insertSelective(esmUserAgentCheck);
+////                }
+////            } else if (StringUtils.isNullOrEmpty(sysUserCheck.getCheckid())) { //修改正式信息后提交
+////                if (!StringUtils.isNullOrEmpty(sysUserCheck.getMobile())) {
+//////                    List<SysUser> users = sysUserService.selectList(" where id != ? and mobile=?", new Object[]{sysUserCheck.getId(), sysUserCheck.getMobile()});
+////                    LambdaQueryWrapper<SysUser> lqw = new LambdaQueryWrapper<>();
+////                    lqw.ne(SysUser::getId,sysUserCheck.getId());
+////                    lqw.eq(SysUser::getMobile,sysUserCheck.getMobile());
+////                    List<SysUser> users = sysUserService.list(lqw);
+////                    if (users != null && users.size() > 0) {
+////                        return HttpResult.error("手机号已存在");
+////                    }
+////                }
+////                if (!StringUtils.isNullOrEmpty(esmUserInternalCheck.getIdentity())) {
+////                    List<EsmUserInternalCheck> users = esmUserInternalCheckService.selectList(" where id != ? and identity=?", new Object[]{sysUserCheck.getId(), esmUserInternalCheck.getIdentity()});
+////                    if (users != null && users.size() > 0) {
+////                        return HttpResult.error("身份证号已存在");
+////                    }
+////                }
+////                //生成临时表主键 checkid
+////                String checkid = String.valueOf(new Date().getTime());
+////                sysUserCheck.setCheckid(checkid);
+////
+////                sysUserCheck.setStatus(0); //初始化为0  审核后为1 有效
+////
+////                sysUserCheck.setCreateBy(getUserName());
+////                sysUserCheck.setCreateTime(new Date());
+////                sysUserCheck.setLastUpdateBy(getUserName());
+////                sysUserCheck.setLastUpdateTime(new Date());
+////                result = sysUserCheckService.insertSelective(sysUserCheck);
+////
+////                if (esmUserInternalCheck != null) {
+////                    esmUserInternalCheck.setCheckid(checkid);
+////                    esmUserInternalCheck.setStatus("0");  //0 申请审核 1 审核通过 2 审核不通过 3 退回修改
+////                    result = esmUserInternalCheckService.insertSelective(esmUserInternalCheck);
+////                }
+////                EsmUserAgentCheck esmUserAgentCheck = record.getEsmUserAgent();
+////                if (esmUserAgentCheck != null) {
+////                    esmUserAgentCheck.setCheckid(checkid);
+////                    result = esmUserAgentCheckService.insertSelective(esmUserAgentCheck);
+////                }
+////            } else {// 退回修改后重新提交
+////                if (!StringUtils.isNullOrEmpty(sysUserCheck.getMobile())) {
+////                    LambdaQueryWrapper<SysUser> lqw = new LambdaQueryWrapper<>();
+////                    lqw.ne(SysUser::getId,sysUserCheck.getId());
+////                    lqw.eq(SysUser::getMobile,sysUserCheck.getMobile());
+////                    List<SysUser> users = sysUserService.list(lqw);
+//////                    List<SysUser> users = sysUserService.selectList(" where id != ? and mobile=?", new Object[]{sysUserCheck.getId(), sysUserCheck.getMobile()});
+////                    if (users != null && users.size() > 0) {
+////                        return HttpResult.error("手机号已存在");
+////                    }
+////                }
+////                if (!StringUtils.isNullOrEmpty(esmUserInternalCheck.getIdentity())) {
+////                    List<EsmUserInternalCheck> users = esmUserInternalCheckService.selectList(" where id != ? and identity=?", new Object[]{sysUserCheck.getId(), esmUserInternalCheck.getIdentity()});
+////                    if (users != null && users.size() > 0) {
+////                        return HttpResult.error("身份证号已存在");
+////                    }
+////                }
+////                sysUserCheck.setStatus(0); //初始化为0  审核后为1 有效
+////                sysUserCheck.setLastUpdateBy(getUserName());
+////                sysUserCheck.setLastUpdateTime(new Date());
+////                result = sysUserCheckService.updateSelective(sysUserCheck);
+////
+////
+////                if (esmUserInternalCheck != null) {
+////                    esmUserInternalCheck.setStatus("0");  //0 申请审核 1 审核通过 2 审核不通过 3 退回修改
+////                    result = esmUserInternalCheckService.updateSelective(esmUserInternalCheck);
+////                }
+////                EsmUserAgentCheck esmUserAgentCheck = record.getEsmUserAgent();
+////                if (esmUserAgentCheck != null) {
+////                    result = esmUserAgentCheckService.updateSelective(esmUserAgentCheck);
+////                }
+////            }
+////
+////        }
+////        //返回人员编号给前端 20200506
+////        if (result == 1) {
+////            resultStr = sysUserCheck.getId();
+////        }
+////
+////        return HttpResult.ok(msg, resultStr);
+////    }
+//
+//    @ApiOperation("人员审核 传入人员编码和审核状态: 0 申请审核 1 审核通过 2 审核不通过 3 退回修改")
+//    @GetMapping(value = "/check")
+//    public HttpResult check(@RequestParam String checkid, @RequestParam String status, String remark) {
+//        //得到操作用户
+//        String userName = getUserName();
+//
+//        String res = "更新成功";
+//        boolean boo = sysUserService.check(checkid, Integer.parseInt(status), remark);
+//
+//        if (!boo) {
+//            res = "更新失败";
 //        }
 //
-//        return HttpResult.ok(msg, resultStr);
+//        return HttpResult.ok(res);
 //    }
-
-    @ApiOperation("人员审核 传入人员编码和审核状态: 0 申请审核 1 审核通过 2 审核不通过 3 退回修改")
-    @GetMapping(value = "/check")
-    public HttpResult check(@RequestParam String checkid, @RequestParam String status, String remark) {
-        //得到操作用户
-        String userName = getUserName();
-
-        String res = "更新成功";
-        boolean boo = sysUserService.check(checkid, Integer.parseInt(status), remark);
-
-        if (!boo) {
-            res = "更新失败";
-        }
-
-        return HttpResult.ok(res);
-    }
-
-    /**
-     * 基础分页查询
-     *
-     * @param pageRequest
-     * @return
-     */
-    @PostMapping(value = "/findPage")
-    public HttpResult findPage(@RequestBody PageRequest pageRequest) {
-
-        return HttpResult.ok(sysUserService.gainUserPage(pageRequest));
-    }
-
+//
 //    /**
-//     * 根据主键查询
+//     * 基础分页查询
 //     *
-//     * @param checkid
+//     * @param pageRequest
 //     * @return
 //     */
-//    @ApiOperation("根据主键查询需要审核的人员信息")
-//    @GetMapping(value = "/findById")
-//    public HttpResult findById(@RequestParam String checkid) {
-//        SysUserCheck sysUser = sysUserCheckService.selectByPk(checkid);
-//        if (sysUser != null) {
-//            sysUser.setPassword("");
-//            sysUser.setSalt("");
-//        }
-//        EsmUserInternalCheck esmUserInternal = esmUserInternalCheckService.selectByPk(checkid);
-//        EsmUserAgentCheck esmUserAgent = esmUserAgentCheckService.selectByPk(checkid);
+//    @PostMapping(value = "/findPage")
+//    public HttpResult findPage(@RequestBody PageRequest pageRequest) {
 //
-//        VoEsmUserInternalCheck voEsmUserInternal = new VoEsmUserInternalCheck();
-//        voEsmUserInternal.setSysUser(sysUser);
-//        voEsmUserInternal.setEsmUserInternal(esmUserInternal);
-//        voEsmUserInternal.setEsmUserAgent(esmUserAgent);
-//
-//        return HttpResult.ok(voEsmUserInternal);
+//        return HttpResult.ok(sysUserService.gainUserPage(pageRequest));
 //    }
 //
-
-    /**
-     * 个代注册
-     *
-     * @param record
-     * @return
-     */
-    @PostMapping(value = "/userRegist")
-    public HttpResult userRegist(HttpServletRequest request, @RequestBody UserRegistVO record) {
-        int noCount = 3;//顺序号是几位的
-        Integer result = 0;
-        String resultStr = "";
-
-        String phoneMsg = record.getPhoneMsg();
-        if (StringUtils.isNullOrEmpty(phoneMsg)) {
-            return HttpResult.error("短信验证码不能为空");
-        }
-        // 从session中获取之前保存的短信验证码跟前台传来的验证码进行匹配
-//        Object msg = request.getSession().getAttribute("PHONE_SESSION_KEY");
-        //从数据库获取最新验证码
-        String msg = stringRedisTemplate.opsForValue().get(PHONE_VERIFICATION_CODE_KEY + record.getPhone());
-
-        if (msg == null || msg.length() == 0) {
-            return HttpResult.error("短信验证码发送失败");
-        }
-
-        if (!phoneMsg.equals(msg)) {
-            return HttpResult.error("短信验证码不正确");
-        }
-        String recommenderid = record.getRecommenderid();
-        if (StringUtils.isNullOrEmpty(recommenderid)) {
-            return HttpResult.error("推荐人ID不能为空");
-        }
-        SysUser recommender = sysUserService.getById(recommenderid);
-        if (recommender == null) {
-            return HttpResult.error("推荐人信息不存在");
-        }
-
-        SysUser sysUser = sysUserService.findByPhone(record.getPhone());
-        if (sysUser != null) {
-            return HttpResult.error("手机号已存在");
-        }
-//        SysUserCheck sysUserCheck = new SysUserCheck();
-//        EsmUserInternalCheck esmUserInternalCheck = new EsmUserInternalCheck();
-        EsmUserInternal esmUserInternal = new EsmUserInternal();
-        String nextPK = "001";
-        //生成临时表主键 checkid
-//        String checkid = String.valueOf(new Date().getTime());
-//        sysUserCheck.setCheckid(checkid);
-        //根据机构号获取userid最大值,不需要加人员类型判断  从sys_user获取
-        String maxId = sysUserService.findMaxId(recommender.getDeptId());
-        if (StringUtils.isNullOrEmpty(maxId)) {
-            nextPK = recommender.getDeptId() + "001";
-        } else {
-            nextPK = IdGenerate.nextCode(maxId, noCount);
-        }
-//        sysUserCheck.setId(nextPK);
-        if (record.getName() != null && !record.getName().equals("")) {
-//            sysUserCheck.setName(record.getName());
-
-            esmUserInternal.setAddressnow(record.getAddressnow());
-            esmUserInternal.setIdentity(record.getIdentity());
-            esmUserInternal.setId(nextPK);
-//            esmUserInternalCheck.setAddressnow(record.getAddressnow());
-//            esmUserInternalCheck.setIdentity(record.getIdentity());
-        } else {
-            sysUser.setName("游客");
-        }
-        sysUser.setUsertype("2"); //个代
-        sysUser.setMobile(record.getPhone());
-        sysUser.setDeptId(recommender.getDeptId());
-        //密码加密
-        String salt = PasswordUtils.getSalt();
-        String password = PasswordUtils.encode(record.getPassword(), salt);
-        sysUser.setPassword(password);
-        sysUser.setSalt(salt);
-        sysUser.setStatus(2); //1:正常   0:离司 2:新注册    审核后为1
-
-        sysUser.setCreateBy(nextPK);
-        sysUser.setCreateTime(new Date());
-        sysUser.setLastUpdateBy(nextPK);
-        sysUser.setLastUpdateTime(new Date());
-
-        result = sysUserService.save(sysUser) == true ? 1 : 0;
-
-        //角色配置
-        SysUserRole userRole = new SysUserRole();
-        userRole.setUserId(nextPK);
-        userRole.setRoleId(2L);
-        sysUserRoleService.save(userRole);
-
-
-        //返回人员编号给前端 20200506
-        if (result == 1) {
-            resultStr = sysUser.getId();
-        }
-
-        return HttpResult.ok("保存成功", resultStr);
-    }
+////    /**
+////     * 根据主键查询
+////     *
+////     * @param checkid
+////     * @return
+////     */
+////    @ApiOperation("根据主键查询需要审核的人员信息")
+////    @GetMapping(value = "/findById")
+////    public HttpResult findById(@RequestParam String checkid) {
+////        SysUserCheck sysUser = sysUserCheckService.selectByPk(checkid);
+////        if (sysUser != null) {
+////            sysUser.setPassword("");
+////            sysUser.setSalt("");
+////        }
+////        EsmUserInternalCheck esmUserInternal = esmUserInternalCheckService.selectByPk(checkid);
+////        EsmUserAgentCheck esmUserAgent = esmUserAgentCheckService.selectByPk(checkid);
+////
+////        VoEsmUserInternalCheck voEsmUserInternal = new VoEsmUserInternalCheck();
+////        voEsmUserInternal.setSysUser(sysUser);
+////        voEsmUserInternal.setEsmUserInternal(esmUserInternal);
+////        voEsmUserInternal.setEsmUserAgent(esmUserAgent);
+////
+////        return HttpResult.ok(voEsmUserInternal);
+////    }
+////
+//
 //    /**
 //     * 个代注册
 //     *
@@ -417,52 +319,48 @@ public class EsmUserInternalCheckController extends BaseController {
 //        if (sysUser != null) {
 //            return HttpResult.error("手机号已存在");
 //        }
-//        SysUserCheck sysUserCheck = new SysUserCheck();
-//        EsmUserInternalCheck esmUserInternalCheck = new EsmUserInternalCheck();
+////        SysUserCheck sysUserCheck = new SysUserCheck();
+////        EsmUserInternalCheck esmUserInternalCheck = new EsmUserInternalCheck();
 //        EsmUserInternal esmUserInternal = new EsmUserInternal();
 //        String nextPK = "001";
 //        //生成临时表主键 checkid
-//        String checkid = String.valueOf(new Date().getTime());
-//        sysUserCheck.setCheckid(checkid);
+////        String checkid = String.valueOf(new Date().getTime());
+////        sysUserCheck.setCheckid(checkid);
 //        //根据机构号获取userid最大值,不需要加人员类型判断  从sys_user获取
-//        String maxId = esmUserInternalService.findMaxId(recommender.getDeptId());
+//        String maxId = sysUserService.findMaxId(recommender.getDeptId());
 //        if (StringUtils.isNullOrEmpty(maxId)) {
 //            nextPK = recommender.getDeptId() + "001";
 //        } else {
 //            nextPK = IdGenerate.nextCode(maxId, noCount);
 //        }
-//        sysUserCheck.setId(nextPK);
+////        sysUserCheck.setId(nextPK);
 //        if (record.getName() != null && !record.getName().equals("")) {
-//            sysUserCheck.setName(record.getName());
+////            sysUserCheck.setName(record.getName());
 //
 //            esmUserInternal.setAddressnow(record.getAddressnow());
 //            esmUserInternal.setIdentity(record.getIdentity());
-//            esmUserInternal.setId(sysUserCheck.getId());
-//            esmUserInternalCheck.setAddressnow(record.getAddressnow());
-//            esmUserInternalCheck.setIdentity(record.getIdentity());
+//            esmUserInternal.setId(nextPK);
+////            esmUserInternalCheck.setAddressnow(record.getAddressnow());
+////            esmUserInternalCheck.setIdentity(record.getIdentity());
 //        } else {
-//            sysUserCheck.setName("游客");
+//            sysUser.setName("游客");
 //        }
-//        sysUserCheck.setUsertype("B"); //个代
-//        sysUserCheck.setMobile(record.getPhone());
-//        sysUserCheck.setDeptId(recommender.getDeptId());
+//        sysUser.setUsertype("2"); //个代
+//        sysUser.setMobile(record.getPhone());
+//        sysUser.setDeptId(recommender.getDeptId());
 //        //密码加密
 //        String salt = PasswordUtils.getSalt();
 //        String password = PasswordUtils.encode(record.getPassword(), salt);
-//        sysUserCheck.setPassword(password);
-//        sysUserCheck.setSalt(salt);
-//        sysUserCheck.setStatus(2); //1:正常   0:离司 2:新注册    审核后为1
+//        sysUser.setPassword(password);
+//        sysUser.setSalt(salt);
+//        sysUser.setStatus(2); //1:正常   0:离司 2:新注册    审核后为1
 //
-//        sysUserCheck.setCreateBy(nextPK);
-//        sysUserCheck.setCreateTime(new Date());
-//        sysUserCheck.setLastUpdateBy(nextPK);
-//        sysUserCheck.setLastUpdateTime(new Date());
-//        result = sysUserCheckService.insertSelective(sysUserCheck);
+//        sysUser.setCreateBy(nextPK);
+//        sysUser.setCreateTime(new Date());
+//        sysUser.setLastUpdateBy(nextPK);
+//        sysUser.setLastUpdateTime(new Date());
 //
-//        // 插入正式表
-//        sysUser = new SysUser();
-//        BeanUtils.copyProperties(sysUserCheck, sysUser);
-//        result = sysUserService.save(sysUser)==true?1:0;
+//        result = sysUserService.save(sysUser) == true ? 1 : 0;
 //
 //        //角色配置
 //        SysUserRole userRole = new SysUserRole();
@@ -470,49 +368,151 @@ public class EsmUserInternalCheckController extends BaseController {
 //        userRole.setRoleId(2L);
 //        sysUserRoleService.save(userRole);
 //
-//        esmUserInternalCheck.setCheckid(checkid);
-//        esmUserInternalCheck.setId(nextPK);
-//        esmUserInternalCheck.setIsteamleader("0");
-//        esmUserInternalCheck.setStatus("0");  //0 申请审核 1 审核通过 2 审核不通过 3 退回修改
-//        result = esmUserInternalCheckService.insertSelective(esmUserInternalCheck);
-//
-//        EsmUserAgentCheck esmUserAgentCheck = new EsmUserAgentCheck();
-//        esmUserAgentCheck.setCheckid(checkid);
-//        esmUserAgentCheck.setId(nextPK);
-//        esmUserAgentCheck.setRecommenderid(recommenderid);
-//        esmUserAgentCheck.setRecommendername(record.getRecommendername());
-//        result = esmUserAgentCheckService.insertSelective(esmUserAgentCheck);
-//        if (record.getName() != null && !record.getName().equals("")) {
-//            esmUserInternal.setId(sysUserCheck.getId());
-//            esmUserInternalService.updateSelective(esmUserInternal);
 //
-//        }
 //        //返回人员编号给前端 20200506
 //        if (result == 1) {
-//            resultStr = sysUserCheck.getId();
+//            resultStr = sysUser.getId();
 //        }
 //
 //        return HttpResult.ok("保存成功", resultStr);
 //    }
-//
-//    @PostMapping(value = "/updateName")
-//    public HttpResult updateName(HttpServletRequest request, @RequestBody EsmUserCheck record) {
-//        //得到操作用户
-//        String res = "更新成功";
-//        SysUser sysUser = sysUserService.getById(record.getId());
-//        EsmUserInternal esmUserInternal = new EsmUserInternal();
-//        esmUserInternal.setAddressnow(record.getAddressnow());
-//        esmUserInternal.setIdentity(record.getIdentity());
-//        esmUserInternal.setId(record.getId());
-//
-//        sysUser.setName(record.getNamespecial());
-//        sysUser.setId(record.getId());
-//        sysUserService.updateById(sysUser);
-//        Integer integer = esmUserInternalService.updateSelective(esmUserInternal);
-//        if (integer != 1) {
-//            res = "更新失败";
-//        }
-//
-//        return HttpResult.ok("200", res);
-//    }
-}
+////    /**
+////     * 个代注册
+////     *
+////     * @param record
+////     * @return
+////     */
+////    @PostMapping(value = "/userRegist")
+////    public HttpResult userRegist(HttpServletRequest request, @RequestBody UserRegistVO record) {
+////        int noCount = 3;//顺序号是几位的
+////        Integer result = 0;
+////        String resultStr = "";
+////
+////        String phoneMsg = record.getPhoneMsg();
+////        if (StringUtils.isNullOrEmpty(phoneMsg)) {
+////            return HttpResult.error("短信验证码不能为空");
+////        }
+////        // 从session中获取之前保存的短信验证码跟前台传来的验证码进行匹配
+//////        Object msg = request.getSession().getAttribute("PHONE_SESSION_KEY");
+////        //从数据库获取最新验证码
+////        String msg = stringRedisTemplate.opsForValue().get(PHONE_VERIFICATION_CODE_KEY + record.getPhone());
+////
+////        if (msg == null || msg.length() == 0) {
+////            return HttpResult.error("短信验证码发送失败");
+////        }
+////
+////        if (!phoneMsg.equals(msg)) {
+////            return HttpResult.error("短信验证码不正确");
+////        }
+////        String recommenderid = record.getRecommenderid();
+////        if (StringUtils.isNullOrEmpty(recommenderid)) {
+////            return HttpResult.error("推荐人ID不能为空");
+////        }
+////        SysUser recommender = sysUserService.getById(recommenderid);
+////        if (recommender == null) {
+////            return HttpResult.error("推荐人信息不存在");
+////        }
+////
+////        SysUser sysUser = sysUserService.findByPhone(record.getPhone());
+////        if (sysUser != null) {
+////            return HttpResult.error("手机号已存在");
+////        }
+////        SysUserCheck sysUserCheck = new SysUserCheck();
+////        EsmUserInternalCheck esmUserInternalCheck = new EsmUserInternalCheck();
+////        EsmUserInternal esmUserInternal = new EsmUserInternal();
+////        String nextPK = "001";
+////        //生成临时表主键 checkid
+////        String checkid = String.valueOf(new Date().getTime());
+////        sysUserCheck.setCheckid(checkid);
+////        //根据机构号获取userid最大值,不需要加人员类型判断  从sys_user获取
+////        String maxId = esmUserInternalService.findMaxId(recommender.getDeptId());
+////        if (StringUtils.isNullOrEmpty(maxId)) {
+////            nextPK = recommender.getDeptId() + "001";
+////        } else {
+////            nextPK = IdGenerate.nextCode(maxId, noCount);
+////        }
+////        sysUserCheck.setId(nextPK);
+////        if (record.getName() != null && !record.getName().equals("")) {
+////            sysUserCheck.setName(record.getName());
+////
+////            esmUserInternal.setAddressnow(record.getAddressnow());
+////            esmUserInternal.setIdentity(record.getIdentity());
+////            esmUserInternal.setId(sysUserCheck.getId());
+////            esmUserInternalCheck.setAddressnow(record.getAddressnow());
+////            esmUserInternalCheck.setIdentity(record.getIdentity());
+////        } else {
+////            sysUserCheck.setName("游客");
+////        }
+////        sysUserCheck.setUsertype("B"); //个代
+////        sysUserCheck.setMobile(record.getPhone());
+////        sysUserCheck.setDeptId(recommender.getDeptId());
+////        //密码加密
+////        String salt = PasswordUtils.getSalt();
+////        String password = PasswordUtils.encode(record.getPassword(), salt);
+////        sysUserCheck.setPassword(password);
+////        sysUserCheck.setSalt(salt);
+////        sysUserCheck.setStatus(2); //1:正常   0:离司 2:新注册    审核后为1
+////
+////        sysUserCheck.setCreateBy(nextPK);
+////        sysUserCheck.setCreateTime(new Date());
+////        sysUserCheck.setLastUpdateBy(nextPK);
+////        sysUserCheck.setLastUpdateTime(new Date());
+////        result = sysUserCheckService.insertSelective(sysUserCheck);
+////
+////        // 插入正式表
+////        sysUser = new SysUser();
+////        BeanUtils.copyProperties(sysUserCheck, sysUser);
+////        result = sysUserService.save(sysUser)==true?1:0;
+////
+////        //角色配置
+////        SysUserRole userRole = new SysUserRole();
+////        userRole.setUserId(nextPK);
+////        userRole.setRoleId(2L);
+////        sysUserRoleService.save(userRole);
+////
+////        esmUserInternalCheck.setCheckid(checkid);
+////        esmUserInternalCheck.setId(nextPK);
+////        esmUserInternalCheck.setIsteamleader("0");
+////        esmUserInternalCheck.setStatus("0");  //0 申请审核 1 审核通过 2 审核不通过 3 退回修改
+////        result = esmUserInternalCheckService.insertSelective(esmUserInternalCheck);
+////
+////        EsmUserAgentCheck esmUserAgentCheck = new EsmUserAgentCheck();
+////        esmUserAgentCheck.setCheckid(checkid);
+////        esmUserAgentCheck.setId(nextPK);
+////        esmUserAgentCheck.setRecommenderid(recommenderid);
+////        esmUserAgentCheck.setRecommendername(record.getRecommendername());
+////        result = esmUserAgentCheckService.insertSelective(esmUserAgentCheck);
+////        if (record.getName() != null && !record.getName().equals("")) {
+////            esmUserInternal.setId(sysUserCheck.getId());
+////            esmUserInternalService.updateSelective(esmUserInternal);
+////
+////        }
+////        //返回人员编号给前端 20200506
+////        if (result == 1) {
+////            resultStr = sysUserCheck.getId();
+////        }
+////
+////        return HttpResult.ok("保存成功", resultStr);
+////    }
+////
+////    @PostMapping(value = "/updateName")
+////    public HttpResult updateName(HttpServletRequest request, @RequestBody EsmUserCheck record) {
+////        //得到操作用户
+////        String res = "更新成功";
+////        SysUser sysUser = sysUserService.getById(record.getId());
+////        EsmUserInternal esmUserInternal = new EsmUserInternal();
+////        esmUserInternal.setAddressnow(record.getAddressnow());
+////        esmUserInternal.setIdentity(record.getIdentity());
+////        esmUserInternal.setId(record.getId());
+////
+////        sysUser.setName(record.getNamespecial());
+////        sysUser.setId(record.getId());
+////        sysUserService.updateById(sysUser);
+////        Integer integer = esmUserInternalService.updateSelective(esmUserInternal);
+////        if (integer != 1) {
+////            res = "更新失败";
+////        }
+////
+////        return HttpResult.ok("200", res);
+////    }
+//}

File diff suppressed because it is too large
+ 600 - 640
src/main/java/com/ydtech/modules/esm/controller/EsmUserInternalController.java


+ 35 - 35
src/main/java/com/ydtech/modules/esm/dao/EsmUserAgentDao.java

@@ -1,35 +1,35 @@
-package com.ydtech.modules.esm.dao;
-
-import com.ydtech.modules.esm.model.EsmUserAgent;
-import com.ydtech.core.page.PageResult;
-
-import java.util.List;
-
-
-public interface EsmUserAgentDao {
-
-
-    public EsmUserAgent selectByPk(String id);
-
-    public List<EsmUserAgent> selectAll();
-
-    public List<EsmUserAgent> selectList(String whereCase, Object[] paramValues);
-
-    public Integer count(String whereCase, Object[] paramValues);
-
-    public PageResult selectPaging(int pageNumber, int pageSize, String whereCase, Object[] paramValues);
-
-    public Integer insert(EsmUserAgent model);
-
-
-    public Integer insertSelective(EsmUserAgent model);
-
-    public Integer update(EsmUserAgent model);
-
-    public Integer updateSelective(EsmUserAgent model);
-
-    public Integer delete(String id);
-
-    public Integer delete(List<EsmUserAgent> lsEsmUserAgent);
-
-}
+//package com.ydtech.modules.esm.dao;
+//
+//import com.ydtech.modules.esm.model.EsmUserAgent;
+//import com.ydtech.core.page.PageResult;
+//
+//import java.util.List;
+//
+//
+//public interface EsmUserAgentDao {
+//
+//
+//    public EsmUserAgent selectByPk(String id);
+//
+//    public List<EsmUserAgent> selectAll();
+//
+//    public List<EsmUserAgent> selectList(String whereCase, Object[] paramValues);
+//
+//    public Integer count(String whereCase, Object[] paramValues);
+//
+//    public PageResult selectPaging(int pageNumber, int pageSize, String whereCase, Object[] paramValues);
+//
+//    public Integer insert(EsmUserAgent model);
+//
+//
+//    public Integer insertSelective(EsmUserAgent model);
+//
+//    public Integer update(EsmUserAgent model);
+//
+//    public Integer updateSelective(EsmUserAgent model);
+//
+//    public Integer delete(String id);
+//
+//    public Integer delete(List<EsmUserAgent> lsEsmUserAgent);
+//
+//}

+ 12 - 5
src/main/java/com/ydtech/modules/esm/dao/EsmUserAgentMapper.java

@@ -23,13 +23,20 @@ public interface EsmUserAgentMapper extends BaseMapper<EsmUserAgent> {
 //            "</if> "
 //
 //            ;
-    String slq1 = "select t2.id as userId,t1.recommenderid as recommenderId,t2.approval_status as approvalStatus " +
-            " from esm_user_agent t1" +
-            " left join sys_user t2 on t1.id = t2.id" +
-            " left join esm_user_internal t3 on t1.id = t3.id";
+    String slq1 = "select " +
+            "		t1.id AS userId," +
+            "		t2.recommenderid AS recommenderId," +
+            "		t1.STATUS AS STATUS " +
+            "	from sys_user t1" +
+            "	left join esm_user_agent t2 on  t1.id=t2.id" +
+            "	left join esm_user_internal t3 on t1.id=t3.id";
+//    String slq1 = "select t2.id as userId,t1.recommenderid as recommenderId,t2.status as status " +
+//            " from esm_user_agent t1" +
+//            " left join sys_user t2 on t1.id = t2.id" +
+//            " left join esm_user_internal t3 on t1.id = t3.id";
     String whereSql1 = " where 1=1 " +
             "<if test='m.recommenderId!=\"\" '>" +
-            "  and t1.recommenderid = #{m.recommenderId}" +
+            "  and t2.recommenderid = #{m.recommenderId}" +
             "</if> " +
             "<if test='m.startDate!=\"\" and m.endDate!=\"\" '>" +
             " and t3.intime BETWEEN #{m.startDate} and #{m.endDate} " +

+ 13 - 0
src/main/java/com/ydtech/modules/esm/dao/EsmUserReferrerMapper.java

@@ -0,0 +1,13 @@
+package com.ydtech.modules.esm.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ydtech.modules.esm.model.EsmUserReferrer;
+import org.springframework.stereotype.Repository;
+
+
+@Repository
+public interface EsmUserReferrerMapper extends BaseMapper<EsmUserReferrer> {
+
+
+
+}

+ 345 - 345
src/main/java/com/ydtech/modules/esm/dao/impl/EsmUserAgentDaoImpl.java

@@ -1,345 +1,345 @@
-package com.ydtech.modules.esm.dao.impl;
-
-import com.ydtech.modules.esm.dao.EsmUserAgentDao;
-import com.ydtech.modules.esm.model.EsmUserAgent;
-import com.ydtech.core.page.PageResult;
-import com.github.drinkjava2.jdialects.Dialect;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.jdbc.core.JdbcTemplate;
-import org.springframework.jdbc.core.PreparedStatementCreator;
-import org.springframework.jdbc.core.RowMapper;
-import org.springframework.jdbc.support.GeneratedKeyHolder;
-import org.springframework.jdbc.support.KeyHolder;
-import org.springframework.stereotype.Repository;
-import org.springframework.jdbc.core.BatchPreparedStatementSetter;
-
-
-import javax.sql.DataSource;
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
-
-import java.util.List;
-import java.util.ArrayList;
-
-
-@Repository
-public class EsmUserAgentDaoImpl implements EsmUserAgentDao {
-
-    @Autowired
-    public DataSource dataSource;
-
-
-    public static class EsmUserAgentRowMapper implements RowMapper {
-        public EsmUserAgent mapRow(ResultSet resultSet, int rowNum) throws SQLException {
-            EsmUserAgent model = new EsmUserAgent();
-
-            model.setId(resultSet.getString("id"));
-            model.setRecommenderid(resultSet.getString("recommenderid"));
-            model.setRecommendername(resultSet.getString("recommendername"));
-            model.setLeaderupid(resultSet.getString("leaderupid"));
-            model.setLeaderupname(resultSet.getString("leaderupname"));
-            model.setGrouppersonid(resultSet.getString("grouppersonid"));
-            model.setGrouppersonname(resultSet.getString("grouppersonname"));
-            model.setDeppersonid(resultSet.getString("deppersonid"));
-            model.setDeppersonname(resultSet.getString("deppersonname"));
-            model.setIsshowteam(resultSet.getString("isshowteam"));
-            model.setIsshowsalesroom(resultSet.getString("isshowsalesroom"));
-
-            return model;
-        }
-    }
-
-
-    @Override
-    public EsmUserAgent selectByPk(String id) {
-        String sql = " select t.id, t.recommenderid, t.recommendername, t.leaderupid, t.leaderupname, t.grouppersonid, t.grouppersonname, t.deppersonid, t.deppersonname, t.isshowteam, t.isshowsalesroom from esm_user_agent t  where id=? ";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        List<EsmUserAgent> ls = jdbcTemplate.query(sql, new Object[]{id}, new EsmUserAgentRowMapper());
-
-        if (ls != null && ls.size() > 0) {
-            return ls.get(0);
-        }
-
-        return null;
-    }
-
-
-    @Override
-    public List<EsmUserAgent> selectAll() {
-        String sql = "select t.id, t.recommenderid, t.recommendername, t.leaderupid, t.leaderupname, t.grouppersonid, t.grouppersonname, t.deppersonid, t.deppersonname, t.isshowteam, t.isshowsalesroom from esm_user_agent t ";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.query(sql, new EsmUserAgentRowMapper());
-    }
-
-
-    public List<EsmUserAgent> selectList(String whereCase, Object[] paramValues) {
-        String sql = "select t.id, t.recommenderid, t.recommendername, t.leaderupid, t.leaderupname, t.grouppersonid, t.grouppersonname, t.deppersonid, t.deppersonname, t.isshowteam, t.isshowsalesroom from esm_user_agent t  " + whereCase;
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.query(sql, paramValues, new EsmUserAgentRowMapper());
-    }
-
-
-    public Integer count(String whereCase, Object[] paramValues) {
-        String sql = "select count(1) from esm_user_agent t " + whereCase;
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.queryForObject(sql, paramValues, Integer.class);
-    }
-
-
-    public PageResult selectPaging(int pageNumber, int pageSize, String whereCase, Object[] paramValues) {
-
-        Dialect dialect = Dialect.guessDialect(dataSource);
-        String sql = dialect.pagin(pageNumber, pageSize, "select t.id, t.recommenderid, t.recommendername, t.leaderupid, t.leaderupname, t.grouppersonid, t.grouppersonname, t.deppersonid, t.deppersonname, t.isshowteam, t.isshowsalesroom from esm_user_agent t  " + whereCase);
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-        List<EsmUserAgent> recordList = jdbcTemplate.query(sql, paramValues, new EsmUserAgentRowMapper());
-
-        int totalCount = count(whereCase, paramValues);
-
-        PageResult pageResult = new PageResult(pageNumber, pageSize, totalCount, recordList);
-
-        return pageResult;
-    }
-
-
-    @Override
-    public Integer insert(EsmUserAgent model) {
-
-        String sql = "insert into esm_user_agent ( id, recommenderid, recommendername, leaderupid, leaderupname, grouppersonid, grouppersonname, deppersonid, deppersonname, isshowteam, isshowsalesroom) values ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) ";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        Object[] params = new Object[]{model.getId(), model.getRecommenderid(), model.getRecommendername(), model.getLeaderupid(), model.getLeaderupname(), model.getGrouppersonid(), model.getGrouppersonname(), model.getDeppersonid(), model.getDeppersonname(), model.getIsshowteam(), model.getIsshowsalesroom()};
-
-        int out = jdbcTemplate.update(sql, params);
-
-        return out;
-    }
-
-
-    @Override
-    public Integer insertSelective(EsmUserAgent model) {
-
-        StringBuffer sbSql = new StringBuffer();
-        StringBuffer sbParams = new StringBuffer();
-        ArrayList<Object> alParamsValues = new ArrayList<Object>();
-
-        String pre = "";
-
-        if (model.getId() != null) {
-            sbSql.append(pre + "id");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getId());
-            pre = ",";
-        }
-        if (model.getRecommenderid() != null) {
-            sbSql.append(pre + "recommenderid");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getRecommenderid());
-            pre = ",";
-        }
-        if (model.getRecommendername() != null) {
-            sbSql.append(pre + "recommendername");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getRecommendername());
-            pre = ",";
-        }
-        if (model.getLeaderupid() != null) {
-            sbSql.append(pre + "leaderupid");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getLeaderupid());
-            pre = ",";
-        }
-        if (model.getLeaderupname() != null) {
-            sbSql.append(pre + "leaderupname");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getLeaderupname());
-            pre = ",";
-        }
-        if (model.getGrouppersonid() != null) {
-            sbSql.append(pre + "grouppersonid");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getGrouppersonid());
-            pre = ",";
-        }
-        if (model.getGrouppersonname() != null) {
-            sbSql.append(pre + "grouppersonname");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getGrouppersonname());
-            pre = ",";
-        }
-        if (model.getDeppersonid() != null) {
-            sbSql.append(pre + "deppersonid");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getDeppersonid());
-            pre = ",";
-        }
-        if (model.getDeppersonname() != null) {
-            sbSql.append(pre + "deppersonname");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getDeppersonname());
-            pre = ",";
-        }
-        if (model.getIsshowteam() != null) {
-            sbSql.append(pre + "isshowteam");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getIsshowteam());
-            pre = ",";
-        }
-        if (model.getIsshowsalesroom() != null) {
-            sbSql.append(pre + "isshowsalesroom");
-            sbParams.append(pre + "?");
-            alParamsValues.add(model.getIsshowsalesroom());
-            pre = ",";
-        }
-
-
-        String sql = "INSERT INTO esm_user_agent (" + sbSql.toString() + ") VALUES (" + sbParams.toString() + ")";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        Object[] params = alParamsValues.toArray();
-
-        int out = jdbcTemplate.update(sql, params);
-
-        return out;
-    }
-
-
-    @Override
-    public Integer update(EsmUserAgent model) {
-
-        String sql = "update esm_user_agent set recommenderid=?, recommendername=?, leaderupid=?, leaderupname=?, grouppersonid=?, grouppersonname=?, deppersonid=?, deppersonname=?, isshowteam=?, isshowsalesroom=? where id=?";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        Object[] params = new Object[]{model.getRecommenderid(), model.getRecommendername(), model.getLeaderupid(), model.getLeaderupname(), model.getGrouppersonid(), model.getGrouppersonname(), model.getDeppersonid(), model.getDeppersonname(), model.getIsshowteam(), model.getIsshowsalesroom(), model.getId()};
-
-        return jdbcTemplate.update(sql, params);
-    }
-
-
-    @Override
-    public Integer updateSelective(EsmUserAgent model) {
-
-        StringBuffer sbSql = new StringBuffer();
-        StringBuffer sbParams = new StringBuffer();
-        ArrayList<Object> alParamsValues = new ArrayList<Object>();
-
-        String pre = "";
-        String preWhere = "";
-
-        if (model.getRecommenderid() != null) {
-            sbSql.append(pre + "recommenderid=?");
-            alParamsValues.add(model.getRecommenderid());
-            pre = ",";
-        }
-        if (model.getRecommendername() != null) {
-            sbSql.append(pre + "recommendername=?");
-            alParamsValues.add(model.getRecommendername());
-            pre = ",";
-        }
-        if (model.getLeaderupid() != null) {
-            sbSql.append(pre + "leaderupid=?");
-            alParamsValues.add(model.getLeaderupid());
-            pre = ",";
-        }
-        if (model.getLeaderupname() != null) {
-            sbSql.append(pre + "leaderupname=?");
-            alParamsValues.add(model.getLeaderupname());
-            pre = ",";
-        }
-        if (model.getGrouppersonid() != null) {
-            sbSql.append(pre + "grouppersonid=?");
-            alParamsValues.add(model.getGrouppersonid());
-            pre = ",";
-        }
-        if (model.getGrouppersonname() != null) {
-            sbSql.append(pre + "grouppersonname=?");
-            alParamsValues.add(model.getGrouppersonname());
-            pre = ",";
-        }
-        if (model.getDeppersonid() != null) {
-            sbSql.append(pre + "deppersonid=?");
-            alParamsValues.add(model.getDeppersonid());
-            pre = ",";
-        }
-        if (model.getDeppersonname() != null) {
-            sbSql.append(pre + "deppersonname=?");
-            alParamsValues.add(model.getDeppersonname());
-            pre = ",";
-        }
-        if (model.getIsshowteam() != null) {
-            sbSql.append(pre + "isshowteam=?");
-            alParamsValues.add(model.getIsshowteam());
-            pre = ",";
-        }
-        if (model.getIsshowsalesroom() != null) {
-            sbSql.append(pre + "isshowsalesroom=?");
-            alParamsValues.add(model.getIsshowsalesroom());
-            pre = ",";
-        }
-        if (model.getId() != null) {
-            sbParams.append(preWhere + "id=?");
-            alParamsValues.add(model.getId());
-            preWhere = ",";
-        }
-
-
-        if (!sbSql.toString().equalsIgnoreCase("")) {
-            String sql = "update esm_user_agent set " + sbSql.toString() + " where " + sbParams.toString();
-
-            JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-            Object[] params = alParamsValues.toArray();
-
-            return jdbcTemplate.update(sql, params);
-        }
-
-        return 0;
-
-    }
-
-
-    @Override
-    public Integer delete(String id) {
-
-        String sql = "delete from esm_user_agent where id=?";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.update(sql, id);
-    }
-
-
-    @Override
-    public Integer delete(List<EsmUserAgent> lsEsmUserAgent) {
-        String sql = "delete from esm_user_agent where id=?";
-
-        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
-
-        return jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
-            @Override
-            public void setValues(PreparedStatement preparedStatement, int i) throws SQLException {
-                preparedStatement.setString(1, lsEsmUserAgent.get(i).getId());
-            }
-
-            @Override
-            public int getBatchSize() {
-                return lsEsmUserAgent.size();
-            }
-        }).length;
-    }
-
-}
+//package com.ydtech.modules.esm.dao.impl;
+//
+//import com.ydtech.modules.esm.dao.EsmUserAgentDao;
+//import com.ydtech.modules.esm.model.EsmUserAgent;
+//import com.ydtech.core.page.PageResult;
+//import com.github.drinkjava2.jdialects.Dialect;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.jdbc.core.JdbcTemplate;
+//import org.springframework.jdbc.core.PreparedStatementCreator;
+//import org.springframework.jdbc.core.RowMapper;
+//import org.springframework.jdbc.support.GeneratedKeyHolder;
+//import org.springframework.jdbc.support.KeyHolder;
+//import org.springframework.stereotype.Repository;
+//import org.springframework.jdbc.core.BatchPreparedStatementSetter;
+//
+//
+//import javax.sql.DataSource;
+//import java.sql.Connection;
+//import java.sql.PreparedStatement;
+//import java.sql.ResultSet;
+//import java.sql.SQLException;
+//
+//
+//import java.util.List;
+//import java.util.ArrayList;
+//
+//
+//@Repository
+//public class EsmUserAgentDaoImpl implements EsmUserAgentDao {
+//
+//    @Autowired
+//    public DataSource dataSource;
+//
+//
+//    public static class EsmUserAgentRowMapper implements RowMapper {
+//        public EsmUserAgent mapRow(ResultSet resultSet, int rowNum) throws SQLException {
+//            EsmUserAgent model = new EsmUserAgent();
+//
+//            model.setId(resultSet.getString("id"));
+//            model.setRecommenderid(resultSet.getString("recommenderid"));
+//            model.setRecommendername(resultSet.getString("recommendername"));
+//            model.setLeaderupid(resultSet.getString("leaderupid"));
+//            model.setLeaderupname(resultSet.getString("leaderupname"));
+//            model.setGrouppersonid(resultSet.getString("grouppersonid"));
+//            model.setGrouppersonname(resultSet.getString("grouppersonname"));
+//            model.setDeppersonid(resultSet.getString("deppersonid"));
+//            model.setDeppersonname(resultSet.getString("deppersonname"));
+//            model.setIsshowteam(resultSet.getString("isshowteam"));
+//            model.setIsshowsalesroom(resultSet.getString("isshowsalesroom"));
+//
+//            return model;
+//        }
+//    }
+//
+//
+//    @Override
+//    public EsmUserAgent selectByPk(String id) {
+//        String sql = " select t.id, t.recommenderid, t.recommendername, t.leaderupid, t.leaderupname, t.grouppersonid, t.grouppersonname, t.deppersonid, t.deppersonname, t.isshowteam, t.isshowsalesroom from esm_user_agent t  where id=? ";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        List<EsmUserAgent> ls = jdbcTemplate.query(sql, new Object[]{id}, new EsmUserAgentRowMapper());
+//
+//        if (ls != null && ls.size() > 0) {
+//            return ls.get(0);
+//        }
+//
+//        return null;
+//    }
+//
+//
+//    @Override
+//    public List<EsmUserAgent> selectAll() {
+//        String sql = "select t.id, t.recommenderid, t.recommendername, t.leaderupid, t.leaderupname, t.grouppersonid, t.grouppersonname, t.deppersonid, t.deppersonname, t.isshowteam, t.isshowsalesroom from esm_user_agent t ";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.query(sql, new EsmUserAgentRowMapper());
+//    }
+//
+//
+//    public List<EsmUserAgent> selectList(String whereCase, Object[] paramValues) {
+//        String sql = "select t.id, t.recommenderid, t.recommendername, t.leaderupid, t.leaderupname, t.grouppersonid, t.grouppersonname, t.deppersonid, t.deppersonname, t.isshowteam, t.isshowsalesroom from esm_user_agent t  " + whereCase;
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.query(sql, paramValues, new EsmUserAgentRowMapper());
+//    }
+//
+//
+//    public Integer count(String whereCase, Object[] paramValues) {
+//        String sql = "select count(1) from esm_user_agent t " + whereCase;
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.queryForObject(sql, paramValues, Integer.class);
+//    }
+//
+//
+//    public PageResult selectPaging(int pageNumber, int pageSize, String whereCase, Object[] paramValues) {
+//
+//        Dialect dialect = Dialect.guessDialect(dataSource);
+//        String sql = dialect.pagin(pageNumber, pageSize, "select t.id, t.recommenderid, t.recommendername, t.leaderupid, t.leaderupname, t.grouppersonid, t.grouppersonname, t.deppersonid, t.deppersonname, t.isshowteam, t.isshowsalesroom from esm_user_agent t  " + whereCase);
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//        List<EsmUserAgent> recordList = jdbcTemplate.query(sql, paramValues, new EsmUserAgentRowMapper());
+//
+//        int totalCount = count(whereCase, paramValues);
+//
+//        PageResult pageResult = new PageResult(pageNumber, pageSize, totalCount, recordList);
+//
+//        return pageResult;
+//    }
+//
+//
+//    @Override
+//    public Integer insert(EsmUserAgent model) {
+//
+//        String sql = "insert into esm_user_agent ( id, recommenderid, recommendername, leaderupid, leaderupname, grouppersonid, grouppersonname, deppersonid, deppersonname, isshowteam, isshowsalesroom) values ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) ";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        Object[] params = new Object[]{model.getId(), model.getRecommenderid(), model.getRecommendername(), model.getLeaderupid(), model.getLeaderupname(), model.getGrouppersonid(), model.getGrouppersonname(), model.getDeppersonid(), model.getDeppersonname(), model.getIsshowteam(), model.getIsshowsalesroom()};
+//
+//        int out = jdbcTemplate.update(sql, params);
+//
+//        return out;
+//    }
+//
+//
+//    @Override
+//    public Integer insertSelective(EsmUserAgent model) {
+//
+//        StringBuffer sbSql = new StringBuffer();
+//        StringBuffer sbParams = new StringBuffer();
+//        ArrayList<Object> alParamsValues = new ArrayList<Object>();
+//
+//        String pre = "";
+//
+//        if (model.getId() != null) {
+//            sbSql.append(pre + "id");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getId());
+//            pre = ",";
+//        }
+//        if (model.getRecommenderid() != null) {
+//            sbSql.append(pre + "recommenderid");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getRecommenderid());
+//            pre = ",";
+//        }
+//        if (model.getRecommendername() != null) {
+//            sbSql.append(pre + "recommendername");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getRecommendername());
+//            pre = ",";
+//        }
+//        if (model.getLeaderupid() != null) {
+//            sbSql.append(pre + "leaderupid");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getLeaderupid());
+//            pre = ",";
+//        }
+//        if (model.getLeaderupname() != null) {
+//            sbSql.append(pre + "leaderupname");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getLeaderupname());
+//            pre = ",";
+//        }
+//        if (model.getGrouppersonid() != null) {
+//            sbSql.append(pre + "grouppersonid");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getGrouppersonid());
+//            pre = ",";
+//        }
+//        if (model.getGrouppersonname() != null) {
+//            sbSql.append(pre + "grouppersonname");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getGrouppersonname());
+//            pre = ",";
+//        }
+//        if (model.getDeppersonid() != null) {
+//            sbSql.append(pre + "deppersonid");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getDeppersonid());
+//            pre = ",";
+//        }
+//        if (model.getDeppersonname() != null) {
+//            sbSql.append(pre + "deppersonname");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getDeppersonname());
+//            pre = ",";
+//        }
+//        if (model.getIsshowteam() != null) {
+//            sbSql.append(pre + "isshowteam");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getIsshowteam());
+//            pre = ",";
+//        }
+//        if (model.getIsshowsalesroom() != null) {
+//            sbSql.append(pre + "isshowsalesroom");
+//            sbParams.append(pre + "?");
+//            alParamsValues.add(model.getIsshowsalesroom());
+//            pre = ",";
+//        }
+//
+//
+//        String sql = "INSERT INTO esm_user_agent (" + sbSql.toString() + ") VALUES (" + sbParams.toString() + ")";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        Object[] params = alParamsValues.toArray();
+//
+//        int out = jdbcTemplate.update(sql, params);
+//
+//        return out;
+//    }
+//
+//
+//    @Override
+//    public Integer update(EsmUserAgent model) {
+//
+//        String sql = "update esm_user_agent set recommenderid=?, recommendername=?, leaderupid=?, leaderupname=?, grouppersonid=?, grouppersonname=?, deppersonid=?, deppersonname=?, isshowteam=?, isshowsalesroom=? where id=?";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        Object[] params = new Object[]{model.getRecommenderid(), model.getRecommendername(), model.getLeaderupid(), model.getLeaderupname(), model.getGrouppersonid(), model.getGrouppersonname(), model.getDeppersonid(), model.getDeppersonname(), model.getIsshowteam(), model.getIsshowsalesroom(), model.getId()};
+//
+//        return jdbcTemplate.update(sql, params);
+//    }
+//
+//
+//    @Override
+//    public Integer updateSelective(EsmUserAgent model) {
+//
+//        StringBuffer sbSql = new StringBuffer();
+//        StringBuffer sbParams = new StringBuffer();
+//        ArrayList<Object> alParamsValues = new ArrayList<Object>();
+//
+//        String pre = "";
+//        String preWhere = "";
+//
+//        if (model.getRecommenderid() != null) {
+//            sbSql.append(pre + "recommenderid=?");
+//            alParamsValues.add(model.getRecommenderid());
+//            pre = ",";
+//        }
+//        if (model.getRecommendername() != null) {
+//            sbSql.append(pre + "recommendername=?");
+//            alParamsValues.add(model.getRecommendername());
+//            pre = ",";
+//        }
+//        if (model.getLeaderupid() != null) {
+//            sbSql.append(pre + "leaderupid=?");
+//            alParamsValues.add(model.getLeaderupid());
+//            pre = ",";
+//        }
+//        if (model.getLeaderupname() != null) {
+//            sbSql.append(pre + "leaderupname=?");
+//            alParamsValues.add(model.getLeaderupname());
+//            pre = ",";
+//        }
+//        if (model.getGrouppersonid() != null) {
+//            sbSql.append(pre + "grouppersonid=?");
+//            alParamsValues.add(model.getGrouppersonid());
+//            pre = ",";
+//        }
+//        if (model.getGrouppersonname() != null) {
+//            sbSql.append(pre + "grouppersonname=?");
+//            alParamsValues.add(model.getGrouppersonname());
+//            pre = ",";
+//        }
+//        if (model.getDeppersonid() != null) {
+//            sbSql.append(pre + "deppersonid=?");
+//            alParamsValues.add(model.getDeppersonid());
+//            pre = ",";
+//        }
+//        if (model.getDeppersonname() != null) {
+//            sbSql.append(pre + "deppersonname=?");
+//            alParamsValues.add(model.getDeppersonname());
+//            pre = ",";
+//        }
+//        if (model.getIsshowteam() != null) {
+//            sbSql.append(pre + "isshowteam=?");
+//            alParamsValues.add(model.getIsshowteam());
+//            pre = ",";
+//        }
+//        if (model.getIsshowsalesroom() != null) {
+//            sbSql.append(pre + "isshowsalesroom=?");
+//            alParamsValues.add(model.getIsshowsalesroom());
+//            pre = ",";
+//        }
+//        if (model.getId() != null) {
+//            sbParams.append(preWhere + "id=?");
+//            alParamsValues.add(model.getId());
+//            preWhere = ",";
+//        }
+//
+//
+//        if (!sbSql.toString().equalsIgnoreCase("")) {
+//            String sql = "update esm_user_agent set " + sbSql.toString() + " where " + sbParams.toString();
+//
+//            JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//            Object[] params = alParamsValues.toArray();
+//
+//            return jdbcTemplate.update(sql, params);
+//        }
+//
+//        return 0;
+//
+//    }
+//
+//
+//    @Override
+//    public Integer delete(String id) {
+//
+//        String sql = "delete from esm_user_agent where id=?";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.update(sql, id);
+//    }
+//
+//
+//    @Override
+//    public Integer delete(List<EsmUserAgent> lsEsmUserAgent) {
+//        String sql = "delete from esm_user_agent where id=?";
+//
+//        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
+//
+//        return jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
+//            @Override
+//            public void setValues(PreparedStatement preparedStatement, int i) throws SQLException {
+//                preparedStatement.setString(1, lsEsmUserAgent.get(i).getId());
+//            }
+//
+//            @Override
+//            public int getBatchSize() {
+//                return lsEsmUserAgent.size();
+//            }
+//        }).length;
+//    }
+//
+//}

+ 36 - 0
src/main/java/com/ydtech/modules/esm/model/EsmUserReferrer.java

@@ -0,0 +1,36 @@
+package com.ydtech.modules.esm.model;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ *  代理人用户推荐人表
+ *
+ * @author: lig
+ * @date: 2023年07月03日 0003
+ */
+@Data
+@TableName(value = "esm_user_referrer")
+public class EsmUserReferrer implements Serializable {
+
+    private static final long serialVersionUID = 5136325897342636490L;
+
+    @TableId(value = "id")
+    private String id;
+
+    @TableField(value = "referrer_id")
+    private String referrerId;
+
+    @TableField(value = "referrer_name")
+    private String referrerName;
+
+    @TableField(value = "level")
+    private int level;
+
+
+
+}

+ 20 - 162
src/main/java/com/ydtech/modules/esm/model/vo/TeamUserVO.java

@@ -1,23 +1,40 @@
 package com.ydtech.modules.esm.model.vo;
 
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
 /**
  * @author qinfenglong
  * @version 1.0.0
  * @description TeamUserVO
  * @since 2020/10/27 23:00
  */
+@Data
+@ApiModel("团队用户展示")
 public class TeamUserVO {
+    @ApiModelProperty(value = "用户ID(工号)")
     private String id;
+    @ApiModelProperty(value = "姓名")
     private String name;
-    private String deptid;
-    private String deptname;
+    @ApiModelProperty(value = "机构编码")
+    private String deptId;
+    @ApiModelProperty(value = "机构名称")
+    private String deptName;
+    @ApiModelProperty(value = "性别")
     private String sex;
+    @ApiModelProperty(value = "手机号")
     private String mobile;
     private String jobcode;
+    @ApiModelProperty(value = "我的团队人数")
     private int teamnum;
+    @ApiModelProperty(value = "一级团队人数")
     private int level1num;
+    @ApiModelProperty(value = "二级团队人数")
     private int level2num;
+    @ApiModelProperty(value = "三级团队人数")
     private int level3num;
+    @ApiModelProperty(value = "我的临时团队人数")
     private int tempnum;
     private Double list1Premium;
     private Double list2Premium;
@@ -28,163 +45,4 @@ public class TeamUserVO {
     private Double countPremium;
     private int countSingle;
 
-    public String getId() {
-        return id;
-    }
-
-    public int getTeamnum() {
-        return teamnum;
-    }
-
-    public void setTeamnum(int teamnum) {
-        this.teamnum = teamnum;
-    }
-
-    public int getLevel1num() {
-        return level1num;
-    }
-
-    public void setLevel1num(int level1num) {
-        this.level1num = level1num;
-    }
-
-    public int getLevel2num() {
-        return level2num;
-    }
-
-    public void setLevel2num(int level2num) {
-        this.level2num = level2num;
-    }
-
-    public int getLevel3num() {
-        return level3num;
-    }
-
-    public void setLevel3num(int level3num) {
-        this.level3num = level3num;
-    }
-
-    public void setId(String id) {
-        this.id = id;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public String getDeptid() {
-        return deptid;
-    }
-
-    public void setDeptid(String deptid) {
-        this.deptid = deptid;
-    }
-
-    public String getDeptname() {
-        return deptname;
-    }
-
-    public void setDeptname(String deptname) {
-        this.deptname = deptname;
-    }
-
-    public String getSex() {
-        return sex;
-    }
-
-    public void setSex(String sex) {
-        this.sex = sex;
-    }
-
-    public String getMobile() {
-        return mobile;
-    }
-
-    public void setMobile(String mobile) {
-        this.mobile = mobile;
-    }
-
-    public String getJobcode() {
-        return jobcode;
-    }
-
-    public void setJobcode(String jobcode) {
-        this.jobcode = jobcode;
-    }
-
-    public int getTempnum() {
-        return tempnum;
-    }
-
-    public void setTempnum(int tempnum) {
-        this.tempnum = tempnum;
-    }
-
-    public Double getList2Premium() {
-        return list2Premium;
-    }
-
-    public void setList2Premium(Double list2Premium) {
-        this.list2Premium = list2Premium;
-    }
-
-    public Double getList1Premium() {
-        return list1Premium;
-    }
-
-    public void setList1Premium(Double list1Premium) {
-        this.list1Premium = list1Premium;
-    }
-
-    public Double getList3Premium() {
-        return list3Premium;
-    }
-
-    public void setList3Premium(Double list3Premium) {
-        this.list3Premium = list3Premium;
-    }
-
-    public int getOutSingle1() {
-        return OutSingle1;
-    }
-
-    public void setOutSingle1(int outSingle1) {
-        OutSingle1 = outSingle1;
-    }
-
-    public int getOutSingle2() {
-        return OutSingle2;
-    }
-
-    public void setOutSingle2(int outSingle2) {
-        OutSingle2 = outSingle2;
-    }
-
-    public int getOutSingle3() {
-        return OutSingle3;
-    }
-
-    public void setOutSingle3(int outSingle3) {
-        OutSingle3 = outSingle3;
-    }
-
-    public Double getCountPremium() {
-        return countPremium;
-    }
-
-    public void setCountPremium(Double countPremium) {
-        this.countPremium = countPremium;
-    }
-
-    public int getCountSingle() {
-        return countSingle;
-    }
-
-    public void setCountSingle(int countSingle) {
-        this.countSingle = countSingle;
-    }
-}
+}

+ 3 - 1
src/main/java/com/ydtech/modules/esm/model/vo/TeamUserVONew.java

@@ -15,6 +15,8 @@ public class TeamUserVONew {
     //推荐ID
     private String recommenderId;
     //审批状态
-    private String approvalStatus;
+    private String status;
+//    //审批状态
+//    private String approvalStatus;
 
 }

+ 45 - 45
src/main/java/com/ydtech/modules/esm/model/vo/VoEsmUserInternal.java

@@ -1,45 +1,45 @@
-package com.ydtech.modules.esm.model.vo;
-
-import com.ydtech.modules.admin.model.SysUser;
-import com.ydtech.modules.esm.model.EsmUserAgent;
-import com.ydtech.modules.esm.model.EsmUserInternal;
-
-public class VoEsmUserInternal {
-    private SysUser sysUser;
-    private EsmUserInternal esmUserInternal;
-
-    private EsmUserAgent esmUserAgent;
-    private TeamUserCountPriceVO teamUserCountPriceVO;
-
-    public SysUser getSysUser() {
-        return sysUser;
-    }
-
-    public void setSysUser(SysUser sysUser) {
-        this.sysUser = sysUser;
-    }
-
-    public EsmUserInternal getEsmUserInternal() {
-        return esmUserInternal;
-    }
-
-    public void setEsmUserInternal(EsmUserInternal esmUserInternal) {
-        this.esmUserInternal = esmUserInternal;
-    }
-
-    public EsmUserAgent getEsmUserAgent() {
-        return esmUserAgent;
-    }
-
-    public void setEsmUserAgent(EsmUserAgent esmUserAgent) {
-        this.esmUserAgent = esmUserAgent;
-    }
-
-    public TeamUserCountPriceVO getTeamUserCountPriceVO() {
-        return teamUserCountPriceVO;
-    }
-
-    public void setTeamUserCountPriceVO(TeamUserCountPriceVO teamUserCountPriceVO) {
-        this.teamUserCountPriceVO = teamUserCountPriceVO;
-    }
-}
+//package com.ydtech.modules.esm.model.vo;
+//
+//import com.ydtech.modules.admin.model.SysUser;
+//import com.ydtech.modules.esm.model.EsmUserAgent;
+//import com.ydtech.modules.esm.model.EsmUserInternal;
+//
+//public class VoEsmUserInternal {
+//    private SysUser sysUser;
+//    private EsmUserInternal esmUserInternal;
+//
+//    private EsmUserAgent esmUserAgent;
+//    private TeamUserCountPriceVO teamUserCountPriceVO;
+//
+//    public SysUser getSysUser() {
+//        return sysUser;
+//    }
+//
+//    public void setSysUser(SysUser sysUser) {
+//        this.sysUser = sysUser;
+//    }
+//
+//    public EsmUserInternal getEsmUserInternal() {
+//        return esmUserInternal;
+//    }
+//
+//    public void setEsmUserInternal(EsmUserInternal esmUserInternal) {
+//        this.esmUserInternal = esmUserInternal;
+//    }
+//
+//    public EsmUserAgent getEsmUserAgent() {
+//        return esmUserAgent;
+//    }
+//
+//    public void setEsmUserAgent(EsmUserAgent esmUserAgent) {
+//        this.esmUserAgent = esmUserAgent;
+//    }
+//
+//    public TeamUserCountPriceVO getTeamUserCountPriceVO() {
+//        return teamUserCountPriceVO;
+//    }
+//
+//    public void setTeamUserCountPriceVO(TeamUserCountPriceVO teamUserCountPriceVO) {
+//        this.teamUserCountPriceVO = teamUserCountPriceVO;
+//    }
+//}

+ 36 - 36
src/main/java/com/ydtech/modules/esm/model/vo/VoEsmUserInternalCheck.java

@@ -1,36 +1,36 @@
-package com.ydtech.modules.esm.model.vo;
-
-import com.ydtech.modules.esm.model.EsmUserAgentCheck;
-import com.ydtech.modules.esm.model.EsmUserInternalCheck;
-import com.ydtech.modules.esm.model.SysUserCheck;
-
-public class VoEsmUserInternalCheck {
-    private SysUserCheck sysUser;
-    private EsmUserInternalCheck esmUserInternal;
-
-    private EsmUserAgentCheck esmUserAgent;
-
-    public SysUserCheck getSysUser() {
-        return sysUser;
-    }
-
-    public void setSysUser(SysUserCheck sysUser) {
-        this.sysUser = sysUser;
-    }
-
-    public EsmUserInternalCheck getEsmUserInternal() {
-        return esmUserInternal;
-    }
-
-    public void setEsmUserInternal(EsmUserInternalCheck esmUserInternal) {
-        this.esmUserInternal = esmUserInternal;
-    }
-
-    public EsmUserAgentCheck getEsmUserAgent() {
-        return esmUserAgent;
-    }
-
-    public void setEsmUserAgent(EsmUserAgentCheck esmUserAgent) {
-        this.esmUserAgent = esmUserAgent;
-    }
-}
+//package com.ydtech.modules.esm.model.vo;
+//
+//import com.ydtech.modules.esm.model.EsmUserAgentCheck;
+//import com.ydtech.modules.esm.model.EsmUserInternalCheck;
+//import com.ydtech.modules.esm.model.SysUserCheck;
+//
+//public class VoEsmUserInternalCheck {
+//    private SysUserCheck sysUser;
+//    private EsmUserInternalCheck esmUserInternal;
+//
+//    private EsmUserAgentCheck esmUserAgent;
+//
+//    public SysUserCheck getSysUser() {
+//        return sysUser;
+//    }
+//
+//    public void setSysUser(SysUserCheck sysUser) {
+//        this.sysUser = sysUser;
+//    }
+//
+//    public EsmUserInternalCheck getEsmUserInternal() {
+//        return esmUserInternal;
+//    }
+//
+//    public void setEsmUserInternal(EsmUserInternalCheck esmUserInternal) {
+//        this.esmUserInternal = esmUserInternal;
+//    }
+//
+//    public EsmUserAgentCheck getEsmUserAgent() {
+//        return esmUserAgent;
+//    }
+//
+//    public void setEsmUserAgent(EsmUserAgentCheck esmUserAgent) {
+//        this.esmUserAgent = esmUserAgent;
+//    }
+//}

+ 22 - 0
src/main/java/com/ydtech/modules/esm/service/EsmUserReferrerService.java

@@ -0,0 +1,22 @@
+package com.ydtech.modules.esm.service;
+
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ydtech.modules.admin.model.SysUser;
+import com.ydtech.modules.esm.model.EsmUserReferrer;
+
+import java.util.List;
+import java.util.Map;
+
+public interface EsmUserReferrerService extends IService<EsmUserReferrer> {
+
+
+    Map buildLevelInfo(SysUser agent);
+
+
+    void buildLevelList(SysUser user,List<SysUser> oneList,List<SysUser> oneTempList);
+
+}
+
+
+

+ 69 - 0
src/main/java/com/ydtech/modules/esm/service/impl/EsmUserReferrerServiceImpl.java

@@ -0,0 +1,69 @@
+package com.ydtech.modules.esm.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ydtech.modules.admin.dao.SysUserInfoMapper;
+import com.ydtech.modules.admin.model.SysUser;
+import com.ydtech.modules.admin.model.SysUserInfo;
+import com.ydtech.modules.admin.service.SysUserInfoService;
+import com.ydtech.modules.admin.service.SysUserService;
+import com.ydtech.modules.esm.dao.EsmUserReferrerMapper;
+import com.ydtech.modules.esm.dao.impl.EsmAgreementGroupDaoImpl;
+import com.ydtech.modules.esm.model.EsmUserReferrer;
+import com.ydtech.modules.esm.service.EsmAgreementGroupService;
+import com.ydtech.modules.esm.service.EsmUserReferrerService;
+import com.ydtech.utils.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+
+@Service
+public class EsmUserReferrerServiceImpl extends ServiceImpl<EsmUserReferrerMapper, EsmUserReferrer>
+        implements EsmUserReferrerService {
+
+
+    @Autowired
+    private SysUserService sysUserService;
+    @Autowired
+    private EsmUserReferrerService esmUserReferrerService;
+
+    @Override
+    public Map buildLevelInfo(SysUser agent) {
+        Map m = new HashMap();
+
+        LambdaQueryWrapper<EsmUserReferrer> lqw = new LambdaQueryWrapper<>();
+        lqw.eq(EsmUserReferrer::getReferrerId,agent.getId());
+        List<EsmUserReferrer> listAll = esmUserReferrerService.list(lqw);
+
+        List<SysUser> oneList = new ArrayList<>();
+        List<SysUser> oneTempList = new ArrayList<>();
+        listAll.stream().forEach(a ->{
+            SysUser sysUser = sysUserService.getById(a.getId());
+            if(sysUser.getStatus() == 1){
+                oneList.add(sysUser);
+            }else{
+                oneTempList.add(sysUser);
+            }
+
+        });
+        m.put("list1",oneList);
+        m.put("list2",oneTempList);
+        return m;
+    }
+
+    @Override
+    public void buildLevelList(SysUser user,List<SysUser> oneList, List<SysUser> oneTempList) {
+            Map<String,List<SysUser>> oneMap = buildLevelInfo(user);
+            oneList.addAll(oneMap.get("list1"));
+            oneTempList.addAll(oneMap.get("list2"));
+
+    }
+}
+
+
+

+ 7 - 1
src/main/java/com/ydtech/modules/ins/controller/InsAlltrustApiController.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 //import com.ydtech.aop.request.MethodLogAnnotation;
 import com.ydtech.aop.request.RequestSingleParam;
 import com.ydtech.core.page.HttpResult;
+import com.ydtech.exception.SystemException;
 import com.ydtech.modules.esm.dao.EsmInsAttachInsureDetailsMapper;
 import com.ydtech.modules.esm.dao.EsmInsAttachInsureMapper;
 import com.ydtech.modules.esm.model.EsmInsAttachInsure;
@@ -54,7 +55,7 @@ public class InsAlltrustApiController {
     @Autowired
     EsmInsAttachInsureDetailsMapper esmInsAttachInsureDetailsMapper;
 
-    @ApiOperation(value = "车型查询",notes = "只需要vin码、发动机号、注册日期例:20120512")
+    @ApiOperation(value = "车型查询", notes = "只需要vin码、发动机号、注册日期例:20120512")
     @PostMapping("/modelQuery")
     public HttpResult modelQueryAPI(@RequestBody CarModel_Req carModelReq) {
 
@@ -192,6 +193,11 @@ public class InsAlltrustApiController {
     public HttpResult syncAccidentInsure(String address) {
         Map<String, String> ownerMap = insYongchengApiService.gainRegionCode(address);
 
+        if (null == ownerMap) {
+            throw new SystemException("地区获取失败,请检查参数是否正确。");
+
+        }
+
         return HttpResult.ok(ownerMap);
     }
 

+ 131 - 131
src/main/java/com/ydtech/modules/ins/controller/InsPayApplyController.java

@@ -14,7 +14,6 @@ import com.ydtech.modules.esm.model.vo.ExtensionVO;
 import com.ydtech.modules.esm.model.vo.TeamUserQryVO;
 import com.ydtech.modules.esm.model.vo.TeamUserVO;
 import com.ydtech.modules.esm.model.vo.TeamUserVONew;
-import com.ydtech.modules.esm.service.EsmUserAgentService;
 import com.ydtech.modules.esm.service.EsmUserInternalService;
 import com.ydtech.modules.ins.model.InsOrder;
 import com.ydtech.modules.ins.model.InsPayApply;
@@ -58,8 +57,8 @@ public class InsPayApplyController extends BaseController {
     InsCommissionService insCommissionService;
     @Autowired
     InsDeptFeeService insDeptFeeService;
-    @Autowired
-    private EsmUserAgentService esmUserAgentService;
+//    @Autowired
+//    private EsmUserAgentService esmUserAgentService;
     @Autowired
     InsOrderService insOrderService;
     @Autowired
@@ -559,138 +558,139 @@ public class InsPayApplyController extends BaseController {
     }
 
     public ExtensionVO queryUserPrice(TeamUserQryVO record, List<SysUser> users) {
-        ExtensionVO extensionVO = new ExtensionVO();
-        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
-
-        for (SysUser user : users) {
-            TeamUserVO teamUserVO = new TeamUserVO();
-            //一级人数
-            TeamUserQryVO vo = record;
-            List<TeamUserVONew> list = esmUserAgentService.gainBelowUserByUserId(vo);
-
-//            StringBuffer whereStr = new StringBuffer();
-//            ArrayList<String> params = new ArrayList<String>();
-//            whereStr.append(" where recommenderid=? ");
-//            params.add(user.getId());
+//        ExtensionVO extensionVO = new ExtensionVO();
+//        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+//
+//        for (SysUser user : users) {
+//            TeamUserVO teamUserVO = new TeamUserVO();
+//            //一级人数
+//            TeamUserQryVO vo = record;
+//            List<TeamUserVONew> list = esmUserAgentService.gainBelowUserByUserId(vo);
+//
+////            StringBuffer whereStr = new StringBuffer();
+////            ArrayList<String> params = new ArrayList<String>();
+////            whereStr.append(" where recommenderid=? ");
+////            params.add(user.getId());
+////
+////            if (!com.ydtech.utils.StringUtils.isNullOrEmpty(record.getStartdate()) && !com.ydtech.utils.StringUtils.isNullOrEmpty(record.getEnddate())) {
+////                whereStr.append("and exists (select 1 from esm_user_internal a where t.id=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
+////                params.add(record.getStartdate());
+////                params.add(record.getEnddate());
+////            }
+////
+////            //查询本月推广人数
+////            List<EsmUserAgent> list = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
+//            double sum1 = 0;
+//            int outSingle1 = 0;
+//            if (list != null && list.size() > 0) {
+//                Map map = queryPrice(record, list);
+//                sum1 = (double) map.get("sum");
+//                outSingle1 = (int) map.get("OutSingle");
 //
-//            if (!com.ydtech.utils.StringUtils.isNullOrEmpty(record.getStartdate()) && !com.ydtech.utils.StringUtils.isNullOrEmpty(record.getEnddate())) {
-//                whereStr.append("and exists (select 1 from esm_user_internal a where t.id=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
-//                params.add(record.getStartdate());
-//                params.add(record.getEnddate());
 //            }
+//            BigDecimal bs = new BigDecimal(sum1);
+//            double f = bs.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
+//
+//            teamUserVO.setList1Premium(f);
+//            teamUserVO.setOutSingle1(outSingle1);
+//            teamUserVO.setLevel1num(list == null ? 0 : list.size());
+//            //二级人数
+//            List<TeamUserVONew> list2 = new ArrayList<>();
+//            double sum2 = 0;
+//            int outSingle2 = 0;
+////            List<EsmUserAgent> ls = null;
+//            for (TeamUserVONew oneUser : list) {
+//
+//                vo.setId(oneUser.getUserId());
+//                list2.addAll(esmUserAgentService.gainBelowUserByUserId(vo));
+//
+//
+//            }
+//            if (list2 != null && list2.size() > 0) {
+//                Map map = queryPrice(record, list2);
+//                sum2 = (double) map.get("sum");
+//                outSingle2 = (int) map.get("OutSingle");
+//            }
+//            BigDecimal b = new BigDecimal(sum2);
+//            double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
+//            teamUserVO.setLevel2num(list2.size());
+//            teamUserVO.setList2Premium(f1);
+//            teamUserVO.setOutSingle2(outSingle2);
+//            double sum3 = 0;
+//            int outSingle3 = 0;
+//            //三级人数
+//            List<TeamUserVONew> list3 = new ArrayList<>();
+//            for (TeamUserVONew twoUser : list2) {
+//                vo.setId(twoUser.getUserId());
+//                list3.addAll(esmUserAgentService.gainBelowUserByUserId(vo));
+//            }
+//
+//            if (list3 != null && list3.size() > 0) {
+//                Map map = queryPrice(record, list3);
+//                sum3 = (double) map.get("sum");
+//                outSingle3 = (int) map.get("OutSingle");
+//
+//            }
+//            BigDecimal bs3 = new BigDecimal(sum3);
+//            double f3 = bs3.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
+//
+//            teamUserVO.setLevel3num(list3.size());
+//            teamUserVO.setList3Premium(f3);
+//            teamUserVO.setOutSingle3(outSingle3);
+//            int teamnum = teamUserVO.getLevel1num() + teamUserVO.getLevel2num() + teamUserVO.getLevel3num();
+//            teamUserVO.setTeamnum(teamnum);
+//
+//            BigDecimal countPre = new BigDecimal(teamUserVO.getList1Premium() + teamUserVO.getList2Premium() + teamUserVO.getList3Premium());
+//            double countPremium = countPre.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
+//            teamUserVO.setCountPremium(countPremium);
+//
+//            teamUserVO.setCountSingle(teamUserVO.getOutSingle1() + teamUserVO.getOutSingle2() + teamUserVO.getOutSingle3());
+//            if (record.getEnddate().equals(format.format(DateMonthUtils.getEndDayOfYear()))) {
+//
+//                extensionVO.setYearPremium(teamUserVO.getCountPremium());//今年推广订单保费
+//
+//            }
+//            if (record.getEnddate().equals(format.format(DateMonthUtils.getEndDayOfMonth()))) {
+//                extensionVO.setMonthExNumber(teamUserVO.getTeamnum());//本月推广人数
+//                extensionVO.setMonthPremium(teamUserVO.getCountPremium());//本月推广订单保费
+//
+//
+////                whereStr = new StringBuffer();
+////                params = new ArrayList<String>();
+////                whereStr.append(" where recommenderid=? ");
+////                params.add(user.getId());
+////                //一级人数
+////                List<EsmUserAgent> listone = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
 //
-//            //查询本月推广人数
-//            List<EsmUserAgent> list = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
-            double sum1 = 0;
-            int outSingle1 = 0;
-            if (list != null && list.size() > 0) {
-                Map map = queryPrice(record, list);
-                sum1 = (double) map.get("sum");
-                outSingle1 = (int) map.get("OutSingle");
-
-            }
-            BigDecimal bs = new BigDecimal(sum1);
-            double f = bs.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-
-            teamUserVO.setList1Premium(f);
-            teamUserVO.setOutSingle1(outSingle1);
-            teamUserVO.setLevel1num(list == null ? 0 : list.size());
-            //二级人数
-            List<TeamUserVONew> list2 = new ArrayList<>();
-            double sum2 = 0;
-            int outSingle2 = 0;
-//            List<EsmUserAgent> ls = null;
-            for (TeamUserVONew oneUser : list) {
-
-                vo.setId(oneUser.getUserId());
-                list2.addAll(esmUserAgentService.gainBelowUserByUserId(vo));
-
-
-            }
-            if (list2 != null && list2.size() > 0) {
-                Map map = queryPrice(record, list2);
-                sum2 = (double) map.get("sum");
-                outSingle2 = (int) map.get("OutSingle");
-            }
-            BigDecimal b = new BigDecimal(sum2);
-            double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-            teamUserVO.setLevel2num(list2.size());
-            teamUserVO.setList2Premium(f1);
-            teamUserVO.setOutSingle2(outSingle2);
-            double sum3 = 0;
-            int outSingle3 = 0;
-            //三级人数
-            List<TeamUserVONew> list3 = new ArrayList<>();
-            for (TeamUserVONew twoUser : list2) {
-                vo.setId(twoUser.getUserId());
-                list3.addAll(esmUserAgentService.gainBelowUserByUserId(vo));
-            }
-
-            if (list3 != null && list3.size() > 0) {
-                Map map = queryPrice(record, list3);
-                sum3 = (double) map.get("sum");
-                outSingle3 = (int) map.get("OutSingle");
-
-            }
-            BigDecimal bs3 = new BigDecimal(sum3);
-            double f3 = bs3.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-
-            teamUserVO.setLevel3num(list3.size());
-            teamUserVO.setList3Premium(f3);
-            teamUserVO.setOutSingle3(outSingle3);
-            int teamnum = teamUserVO.getLevel1num() + teamUserVO.getLevel2num() + teamUserVO.getLevel3num();
-            teamUserVO.setTeamnum(teamnum);
-
-            BigDecimal countPre = new BigDecimal(teamUserVO.getList1Premium() + teamUserVO.getList2Premium() + teamUserVO.getList3Premium());
-            double countPremium = countPre.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-            teamUserVO.setCountPremium(countPremium);
-
-            teamUserVO.setCountSingle(teamUserVO.getOutSingle1() + teamUserVO.getOutSingle2() + teamUserVO.getOutSingle3());
-            if (record.getEnddate().equals(format.format(DateMonthUtils.getEndDayOfYear()))) {
-
-                extensionVO.setYearPremium(teamUserVO.getCountPremium());//今年推广订单保费
-
-            }
-            if (record.getEnddate().equals(format.format(DateMonthUtils.getEndDayOfMonth()))) {
-                extensionVO.setMonthExNumber(teamUserVO.getTeamnum());//本月推广人数
-                extensionVO.setMonthPremium(teamUserVO.getCountPremium());//本月推广订单保费
-
-
-//                whereStr = new StringBuffer();
-//                params = new ArrayList<String>();
-//                whereStr.append(" where recommenderid=? ");
-//                params.add(user.getId());
 //                //一级人数
-//                List<EsmUserAgent> listone = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
-
-                //一级人数
-                vo.setId(user.getId());
-                List<TeamUserVONew> listone = esmUserAgentService.gainBelowUserByUserId(vo);
-
-
-                for (TeamUserVONew oneUser : listone) {
-
-                    vo.setId(oneUser.getUserId());
-                    // 二级人数
-                    list2.addAll(esmUserAgentService.gainBelowUserByUserId(vo)) ;
-
-                }
-                for (TeamUserVONew twoUser : list2) {
-                    vo.setId(twoUser.getUserId());
-
-                    // 三级人数
-                    list3.addAll(esmUserAgentService.gainBelowUserByUserId(vo));
-//                    whereStr = new StringBuffer();
-//                    params = new ArrayList<String>();
-//                    whereStr.append(" where recommenderid=? ");
-//                    params.add(agent.getId());
-//                    ls = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
-                }
-                extensionVO.setHistoryNumber(listone.size() + list2.size() + list3.size());
-            }
-
-        }
-        return extensionVO;
+//                vo.setId(user.getId());
+//                List<TeamUserVONew> listone = esmUserAgentService.gainBelowUserByUserId(vo);
+//
+//
+//                for (TeamUserVONew oneUser : listone) {
+//
+//                    vo.setId(oneUser.getUserId());
+//                    // 二级人数
+//                    list2.addAll(esmUserAgentService.gainBelowUserByUserId(vo)) ;
+//
+//                }
+//                for (TeamUserVONew twoUser : list2) {
+//                    vo.setId(twoUser.getUserId());
+//
+//                    // 三级人数
+//                    list3.addAll(esmUserAgentService.gainBelowUserByUserId(vo));
+////                    whereStr = new StringBuffer();
+////                    params = new ArrayList<String>();
+////                    whereStr.append(" where recommenderid=? ");
+////                    params.add(agent.getId());
+////                    ls = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
+//                }
+//                extensionVO.setHistoryNumber(listone.size() + list2.size() + list3.size());
+//            }
+//
+//        }
+//        return extensionVO;
+        return null;
 
     }
 

+ 45 - 44
src/main/java/com/ydtech/modules/ins/service/impl/InsAlltrustApiServiceImpl.java

@@ -102,8 +102,8 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
     private EsmAgreementService esmAgreementService;
     @Autowired
     private EsmAgreementProdService esmAgreementProdService;
-    @Autowired
-    private EsmUserInternalService esmUserInternalService;
+//    @Autowired
+//    private EsmUserInternalService esmUserInternalService;
     @Autowired
     private InsTaskHistoryService insTaskHistoryService;
     @Autowired
@@ -1207,48 +1207,48 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
 //    }
 
 
-    /**
-     * 分销费用统计   拷贝永安
-     *
-     * @param deptid
-     * @param userid
-     * @return
-     */
-    public double countRetail(String deptid, String userid) {
-        double retailRate = 0;
-
-        //1、根据机构匹配分销规则,获取分销比例
-        List<EsmRetail> list = esmRetailService.selectList(" where deptid = ? and status=?", new Object[]{deptid, "1"});
-        //2、根据userid查询三级推荐人
-        List<SysUser> users = esmUserInternalService.getSuperior(userid);
-
-        if (list != null && list.size() > 0 && users.size() > 0 && !"0".equals(list.get(0).getRetailtype())) {
-            EsmRetail retail = list.get(0);
-            List<Double> rateList = new ArrayList<Double>();
-            rateList.add(retail.getDisrate1());
-            rateList.add(retail.getDisrate2());
-            rateList.add(retail.getDisrate3());
-
-            if ("1".equals(retail.getRetailtype())) {//一级分销
-                retailRate += rateList.get(0);
-            } else if ("2".equals(retail.getRetailtype())) {//二级分销
-                int num = users.size() > 2 ? 2 : users.size();
-                for (int i = 0; i < num; i++) {
-                    retailRate += rateList.get(i);
-                }
-
-            } else {//三级分销
-                int num = users.size() > 2 ? 3 : users.size();
-                for (int i = 0; i < num; i++) {
-                    retailRate += rateList.get(i);
-                }
-
-            }
-
-        }
-
-        return retailRate;
-    }
+//    /**
+//     * 分销费用统计   拷贝永安
+//     *
+//     * @param deptid
+//     * @param userid
+//     * @return
+//     */
+//    public double countRetail(String deptid, String userid) {
+//        double retailRate = 0;
+//
+//        //1、根据机构匹配分销规则,获取分销比例
+//        List<EsmRetail> list = esmRetailService.selectList(" where deptid = ? and status=?", new Object[]{deptid, "1"});
+//        //2、根据userid查询三级推荐人
+//        List<SysUser> users = esmUserInternalService.getSuperior(userid);
+//
+//        if (list != null && list.size() > 0 && users.size() > 0 && !"0".equals(list.get(0).getRetailtype())) {
+//            EsmRetail retail = list.get(0);
+//            List<Double> rateList = new ArrayList<Double>();
+//            rateList.add(retail.getDisrate1());
+//            rateList.add(retail.getDisrate2());
+//            rateList.add(retail.getDisrate3());
+//
+//            if ("1".equals(retail.getRetailtype())) {//一级分销
+//                retailRate += rateList.get(0);
+//            } else if ("2".equals(retail.getRetailtype())) {//二级分销
+//                int num = users.size() > 2 ? 2 : users.size();
+//                for (int i = 0; i < num; i++) {
+//                    retailRate += rateList.get(i);
+//                }
+//
+//            } else {//三级分销
+//                int num = users.size() > 2 ? 3 : users.size();
+//                for (int i = 0; i < num; i++) {
+//                    retailRate += rateList.get(i);
+//                }
+//
+//            }
+//
+//        }
+//
+//        return retailRate;
+//    }
 
 
     /**
@@ -1391,6 +1391,7 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
 
         log.debug("*********永诚API方式 - 身份证地址解析 参数:" + address);
         Map<String, String> m = IDCardUtils.addressResolution(address);
+        if(null == m) return null;
         String city = m.get("city");
         String district = m.get("district");
 //        if(StringUtils.isNullOrEmpty(district)){

+ 10 - 37
src/main/java/com/ydtech/modules/inv/controller/InvExternalBillsController.java

@@ -61,9 +61,9 @@ public class InvExternalBillsController extends BaseController {
 
         LambdaQueryWrapper<InvExternalBills> lqw = new LambdaQueryWrapper();
         lqw.eq(StringUtils.isNotEmpty(reqVo.getImportStatus()), InvExternalBills::getImportStatus, reqVo.getImportStatus());
-        lqw.between(StringUtils.isNotEmpty(reqVo.getImportStartTime()) && StringUtils.isNotEmpty(reqVo.getImportEndTime()),InvExternalBills::getCreateTime, reqVo.getImportStartTime(),reqVo.getImportEndTime());
+        lqw.between(StringUtils.isNotEmpty(reqVo.getImportStartTime()) && StringUtils.isNotEmpty(reqVo.getImportEndTime()), InvExternalBills::getCreateTime, reqVo.getImportStartTime(), reqVo.getImportEndTime());
         lqw.eq(InvExternalBills::getFlag, reqVo.getFlag());
-        lqw.eq(StringUtils.isNotEmpty(reqVo.getInsCompanyId()),InvExternalBills::getInsCompanyId,reqVo.getInsCompanyId());
+        lqw.eq(StringUtils.isNotEmpty(reqVo.getInsCompanyId()), InvExternalBills::getInsCompanyId, reqVo.getInsCompanyId());
 
         Page p = PageRequest.buildPageRequestByVo(reqVo);
         IPage<InvExternalBills> pResult = invExternalBillsService.page(p, lqw);
@@ -95,24 +95,7 @@ public class InvExternalBillsController extends BaseController {
         iieb.setImportStatus("1");
         iieb.setFlag(flag);
 
-        if (flag.equals("1")) {
-            if (StringUtils.isNullOrEmpty(insCompanyId)) return HttpResult.error("保险公司ID不存在");
-            EsmInsCompany eic = esmInsCompanyService.getById(insCompanyId);
-            if (null == eic) return HttpResult.error("保险公司不存在");
-            iieb.setInsCompanyId(eic.getId());
-            iieb.setInsCompanyName(eic.getName());
-
-            invExternalBillsService.save(iieb);
-            //导入保险公司详细数据
-            invInsExternalBillsDetailsService.importData(file, iieb);
-
-
-        } else if (flag.equals("2")) {
-            iieb.setBusinessChannels(businessChannels);
-            invExternalBillsService.save(iieb);
-            invChannelsExternalBillsDetailsService.importData(file, iieb);
-
-        }
+        invExternalBillsService.importData(flag, insCompanyId, businessChannels, iieb, file);
 
 
         return HttpResult.ok("导入成功");
@@ -139,16 +122,8 @@ public class InvExternalBillsController extends BaseController {
         ieb.setImportStatus("1");
         invExternalBillsService.updateById(ieb);
 
-
-        if (ieb.getFlag().equals("1")) {
-
-            invExternalBillsService.importDataInsOper( batchNum, file, ieb);
-
-        } else if (ieb.getFlag().equals("2")) {
-
-            invExternalBillsService.importDataChannelsOper( batchNum, file, ieb);
-
-        }
+        //重新导入
+        invExternalBillsService.importDataAnew(ieb.getFlag(), batchNum, file, ieb);
 
 
         return HttpResult.ok("重新导入成功");
@@ -222,15 +197,15 @@ public class InvExternalBillsController extends BaseController {
             @ApiResponse(code = 200, message = "请求成功")
     })
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "batchNum", value = "批次号",required = true)
-            , @ApiImplicitParam(name = "flag", value = "标识(1 保险公司模板导入   2 渠道模板导入)" ,required = true) })
+            @ApiImplicitParam(name = "batchNum", value = "批次号", required = true)
+            , @ApiImplicitParam(name = "flag", value = "标识(1 保险公司模板导入   2 渠道模板导入)", required = true)})
     @DeleteMapping(value = "/deleteByBatchNum")
-    public HttpResult deleteByBatchNum(String batchNum , String flag) {
+    public HttpResult deleteByBatchNum(String batchNum, String flag) {
 
-        if(flag.equals("1")){
+        if (flag.equals("1")) {
             invInsExternalBillsDetailsService.deleteByBatchNum(batchNum);
         }
-        if(flag.equals("2")){
+        if (flag.equals("2")) {
             invChannelsExternalBillsDetailsService.deleteByBatchNum(batchNum);
         }
 
@@ -238,8 +213,6 @@ public class InvExternalBillsController extends BaseController {
     }
 
 
-
-
     @PostMapping("/channelMatchingIns")
     @ApiOperation(value = "渠道匹配保险公司数据(分页)")
     public HttpResult<PageResult<InvBaseChannelMatchInsResVO>> channelMatchIns(@RequestBody InvChannelExternalBillsDetailsReqVO reqVo) {

+ 9 - 0
src/main/java/com/ydtech/modules/inv/model/InvInsExternalBillsDetails.java

@@ -33,6 +33,15 @@ public class InvInsExternalBillsDetails extends InvBaseExternalBillsDetails {
     @ApiModelProperty(value = "光博分")
     private String lightGrades;
 
+
+    /**
+     *  保险公司账号说明
+     */
+    @Excel(name = "账号说明")
+    @TableField(value = "ins_account")
+    @ApiModelProperty(value = "保险公司账号说明")
+    private String insAccount;
+
     @TableField(exist = false)
     private static final long serialVersionUID = 1L;
 }

+ 145 - 0
src/main/java/com/ydtech/modules/inv/model/dto/InvInsChinaCoalExcelDto.java

@@ -0,0 +1,145 @@
+package com.ydtech.modules.inv.model.dto;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 财务 - 保险公司 - 中煤Excel模板 DTO
+ */
+@TableName(value ="inv_ins_external_bills_details")
+@Data
+@ApiModel
+public class InvInsChinaCoalExcelDto {
+
+    @Excel(name = "保单号")
+    private String policyNum;
+
+
+    @Excel(name = "车牌号")
+    private String plateNum;
+
+    /**
+     * 付款日期
+     */
+    @Excel(name = "核保核批确认日期")
+    private Date payDate;
+
+    /**
+     * 起保日期
+     */
+    @Excel(name = "起保日期")
+    private Date cocDate;
+
+    /**
+     * 险种名称
+     */
+    @Excel(name = "险种名称")
+    private String insKindName;
+
+    /**
+     * 投保习惯
+     */
+    @Excel(name = "投保习惯")
+    private String insHabit;
+
+    /**
+     * 使用性质
+     */
+    @Excel(name = "使用性质")
+    private String useNature;
+
+    /**
+     * 被保险人
+     */
+    @Excel(name = "被保险人")
+    private String insured;
+
+    /**
+     * 投保人
+     */
+    @Excel(name = "投保人")
+    private String applicant;
+
+    /**
+     * 保费
+     */
+    @Excel(name = "批改后保费含税")
+    private BigDecimal premium;
+
+    /**
+     * 税后保费
+     */
+    @Excel(name = "税后保费")
+    private BigDecimal atPremium;
+
+    /**
+     * 车船税
+     */
+    @Excel(name = "车船税缴税金额")
+    private BigDecimal vavt;
+
+    /**
+     * 商业保费
+     */
+    @Excel(name = "商业保费")
+    @TableField(value = "cip")
+    @ApiModelProperty(value = "商业保费")
+    private BigDecimal cip;
+
+    /**
+     * 三者险保额
+     */
+    @Excel(name = "三者险保额")
+    private String tpi;
+
+    /**
+     * 三者险保费(不含税)
+     */
+    @Excel(name = "三者险保费(不含税)")
+    private String tpiPremium;
+
+    /**
+     * 批改类型
+     */
+    @Excel(name = "批改类型")
+    private String correctionType;
+
+    /**
+     * 排量
+     */
+    @Excel(name = "排量")
+    private String cc;
+
+
+    @Excel(name = "中煤分")
+    private String chinaGrade;
+
+    /**
+     * 光博分
+     */
+    @Excel(name = "光博分")
+    private String lightGrade;
+
+    /**
+     * 渠道账号
+     */
+    @Excel(name = "中介人代码")
+    private String insAccount;
+
+    /**
+     * 网点代码
+     */
+    @Excel(name = "网点代码")
+    private String branchCode;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 31 - 2
src/main/java/com/ydtech/modules/inv/service/InvExternalBillsService.java

@@ -12,9 +12,38 @@ import org.springframework.web.multipart.MultipartFile;
  */
 public interface InvExternalBillsService extends IService<InvExternalBills> {
 
+//
+//    void importDataInsOper(String batchNum, MultipartFile file, InvExternalBills ieb);
+//
+//    void importDataChannelsOper(String batchNum, MultipartFile file, InvExternalBills ieb);
 
-    void importDataInsOper(String batchNum,MultipartFile file,InvExternalBills ieb);
 
-    void importDataChannelsOper(String batchNum,MultipartFile file,InvExternalBills ieb);
+    /**
+     * 导入数据
+     *
+     * @param flag             标识(1 保险公司模板导入   2 渠道模板导入)
+     * @param insCompanyId     保险公司ID  flag=1 必填
+     * @param businessChannels 渠道  flag=2 必填
+     * @param iieb             导入基本信息实体   保险公司、渠道信息
+     * @param file             上传的附件
+     *
+     * @author: lig
+     * @date: 2023年07月04日 0004
+     */
+    void importData(String flag, String insCompanyId, String businessChannels, InvExternalBills iieb, MultipartFile file);
+
+
+    /**
+     * 重新导入
+     *
+     * @param flag     标识(1 保险公司模板导入   2 渠道模板导入)
+     * @param batchNum 批次号
+     * @param file     上传的附件
+     * @param ieb      导入基本信息实体
+     *
+     * @author: lig
+     * @date: 2023-07-04 0004
+     */
+    void importDataAnew(String flag, String batchNum, MultipartFile file, InvExternalBills ieb);
 
 }

+ 95 - 21
src/main/java/com/ydtech/modules/inv/service/impl/InvExternalBillsServiceImpl.java

@@ -1,6 +1,9 @@
 package com.ydtech.modules.inv.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ydtech.exception.SystemException;
+import com.ydtech.modules.esm.model.EsmInsCompany;
+import com.ydtech.modules.esm.service.EsmInsCompanyService;
 import com.ydtech.modules.inv.dao.InvInsExternalBillsMapper;
 import com.ydtech.modules.inv.model.InvExternalBills;
 import com.ydtech.modules.inv.model.InvInsExternalBillsDetails;
@@ -13,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.annotation.Resource;
 import java.io.IOException;
 import java.math.BigDecimal;
 import java.util.List;
@@ -22,39 +26,109 @@ import java.util.List;
 public class InvExternalBillsServiceImpl extends ServiceImpl<InvInsExternalBillsMapper, InvExternalBills>
         implements InvExternalBillsService {
 
-    @Autowired
+    @Resource
     private InvInsExternalBillsDetailsService invInsExternalBillsDetailsService;
-    @Autowired
+    @Resource
     private InvChannelsExternalBillsDetailsService invChannelsExternalBillsDetailsService;
+    @Resource
+    private EsmInsCompanyService esmInsCompanyServiceService;
+
+
+//    @Override
+//    public void importDataInsOper(String batchNum, MultipartFile file, InvExternalBills ieb) {
+//        //删除详细数据
+//        invInsExternalBillsDetailsService.deleteByBatchNum(batchNum);
+//        try {
+//            //导入《保司》详细数据
+//            invInsExternalBillsDetailsService.importData(file, ieb);
+//        }catch (Exception e){
+//            ieb.setImportStatus("0");
+//            updateById(ieb);
+//        }
+//
+//    }
+//
+//    @Override
+//    public void importDataChannelsOper(String batchNum, MultipartFile file, InvExternalBills ieb) {
+//
+//        //删除详细数据
+//        invChannelsExternalBillsDetailsService.deleteByBatchNum(batchNum);
+//        try {
+//            //导入《渠道》详细数据
+//            invChannelsExternalBillsDetailsService.importData(file, ieb);
+//        }catch (Exception e){
+//            ieb.setImportStatus("0");
+//            updateById(ieb);
+//        }
+//
+//    }
 
 
     @Override
-    public void importDataInsOper(String batchNum, MultipartFile file, InvExternalBills ieb) {
-        //删除详细数据
-        invInsExternalBillsDetailsService.deleteByBatchNum(batchNum);
-        try {
-            //导入《保司》详细数据
-            invInsExternalBillsDetailsService.importData(file, ieb);
-        }catch (Exception e){
-            ieb.setImportStatus("0");
-            updateById(ieb);
+    public void importData(String flag, String insCompanyId, String businessChannels, InvExternalBills iieb, MultipartFile file) {
+        if (flag.equals("1")) {
+            if (StringUtils.isNullOrEmpty(insCompanyId)) throw new SystemException("保险公司ID不存在");
+            EsmInsCompany eic = esmInsCompanyServiceService.getById(insCompanyId);
+            if (null == eic) throw new SystemException("保险公司不存在");
+            iieb.setInsCompanyId(eic.getId());
+            iieb.setInsCompanyName(eic.getName());
+            save(iieb);
+            try {
+                //导入保险公司详细数据
+                invInsExternalBillsDetailsService.importData(file, iieb);
+            }catch (Exception e){
+                log.error("导入保险公司数据失败:"+e.getMessage());
+                iieb.setImportStatus("0");
+                iieb.setErrorMsg(e.getMessage());
+            }
+
+
+        } else if (flag.equals("2")) {
+            iieb.setBusinessChannels(businessChannels);
+            save(iieb);
+            try {
+                invChannelsExternalBillsDetailsService.importData(file, iieb);
+            }catch (Exception e){
+                log.error("导入渠道信息数据失败:"+e.getMessage());
+                iieb.setImportStatus("0");
+                iieb.setErrorMsg(e.getMessage());
+            }
+
         }
 
+        updateById(iieb);
+
     }
 
     @Override
-    public void importDataChannelsOper(String batchNum, MultipartFile file, InvExternalBills ieb) {
-
-        //删除详细数据
-        invChannelsExternalBillsDetailsService.deleteByBatchNum(batchNum);
-        try {
-            //导入《渠道》详细数据
-            invChannelsExternalBillsDetailsService.importData(file, ieb);
-        }catch (Exception e){
-            ieb.setImportStatus("0");
-            updateById(ieb);
+    public void importDataAnew(String flag, String batchNum, MultipartFile file, InvExternalBills ieb) {
+
+        if(flag.equals("1")){
+
+            try {
+                //删除详细数据
+                invInsExternalBillsDetailsService.deleteByBatchNum(batchNum);
+                //导入《保司》详细数据
+                invInsExternalBillsDetailsService.importData(file, ieb);
+            } catch (Exception e) {
+                ieb.setImportStatus("0");
+                updateById(ieb);
+            }
+        }else if(flag.equals("2")){
+
+            try {
+                //删除详细数据
+                invChannelsExternalBillsDetailsService.deleteByBatchNum(batchNum);
+                //导入《渠道》详细数据
+                invChannelsExternalBillsDetailsService.importData(file, ieb);
+            } catch (Exception e) {
+                ieb.setImportStatus("0");
+                updateById(ieb);
+            }
         }
 
+
+
     }
 }
 

+ 1 - 1
src/main/resources/application.yml

@@ -30,7 +30,7 @@ sa-token:
   # token 名称(同时也是 cookie 名称)
   token-name: Authorization
   # token 有效期(单位:秒) 默认30天,-1 代表永久有效
-  timeout: 2592000
+  timeout: 86400
   # token 最低活跃频率(单位:秒),如果 token 超过此时间没有访问系统就会被冻结,默认-1 代表不限制,永不冻结
   active-timeout: -1
   # 是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录)

Some files were not shown because too many files changed in this diff