diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/WeChatUserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/WeChatUserController.java new file mode 100644 index 0000000..6b65e8a --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/WeChatUserController.java @@ -0,0 +1,61 @@ +package com.ruoyi.web.controller.wisdomarbitrate; + +import cn.hutool.core.util.StrUtil; +import com.ruoyi.common.annotation.Anonymous; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.exception.ServiceException; +import com.ruoyi.common.utils.http.HttpUtils; +import com.ruoyi.wisdomarbitrate.domain.CaseApplication; +import com.ruoyi.wisdomarbitrate.domain.IdentityAuthentication; +import com.ruoyi.wisdomarbitrate.domain.vo.WeChatUserVO; +import com.ruoyi.wisdomarbitrate.service.WeChatUserService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +/** + * @author wangqiong + * @description 微信小程序用户注册登录 + * @date 2023-10-16 11:25 + */ +@RestController +@RequestMapping("/weChatUser") +public class WeChatUserController extends BaseController { + @Autowired + private WeChatUserService weChatUserService; + + /** + * 小程序端获取手机验证码 + * @param userVO + * @return + */ + @Anonymous + @GetMapping("/sendCode") + public AjaxResult sendCode( WeChatUserVO userVO) + { + if(StrUtil.isEmpty(userVO.getPhone())){ + return warn("手机号不能为空"); + } + return success(weChatUserService.sendCode(userVO)); + } + /** + * 小程序注册 + */ + @Anonymous + @PostMapping("/registerUser") + public AjaxResult registerUser( @RequestBody IdentityAuthentication ientityAuthentication) { + if(ientityAuthentication.getId()==null + || StrUtil.isEmpty(ientityAuthentication.getName()) + || StrUtil.isEmpty(ientityAuthentication.getIdentityNo()) + || StrUtil.isEmpty(ientityAuthentication.getPhone()) + || StrUtil.isEmpty(ientityAuthentication.getUserName()) + || StrUtil.isEmpty(ientityAuthentication.getEmail()) + || StrUtil.isEmpty(ientityAuthentication.getVerifyCode()) + ){ + return warn("参数校验失败"); + } + return weChatUserService.registerUser(ientityAuthentication); + } + +} diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheConstants.java b/ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheConstants.java index 0080343..30d3a56 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheConstants.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheConstants.java @@ -41,4 +41,5 @@ public class CacheConstants * 登录账户密码错误次数 redis key */ public static final String PWD_ERR_CNT_KEY = "pwd_err_cnt:"; + public static final String WE_CHAT_SMS_VERIFY_CODE_KEY="we_chat_sms_verify_code:"; } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java b/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java index ca64f5d..5b5ab5a 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java @@ -128,6 +128,7 @@ public class Constants * LDAPS 远程方法调用 */ public static final String LOOKUP_LDAPS = "ldaps:"; + public static final String DEFAULT_PASSWORD = "123456"; /** * 自动识别json对象白名单配置(仅允许解析的包名,范围越小越安全) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java index 2b1f1d4..996c5f9 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java @@ -134,4 +134,11 @@ public interface SysUserMapper public SysUser checkEmailUnique(String email); List selectUserListByIds(@Param("idList") List idList); + + /** + * 根据身份证号查询用户信息 + * @param identityNo + * @return + */ + SysUser selectUserByIdCard(@Param("idCard")String identityNo); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseAffiliate.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseAffiliate.java index d93e8cf..5b0f0e7 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseAffiliate.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseAffiliate.java @@ -23,6 +23,10 @@ public class CaseAffiliate extends BaseEntity { * 申请机构名称 */ private String applicationOrganName; + /** + * 代理人用户id + */ + private String applicantAgentUserId; /** 身份证号 */ @Excel(name = "身份证号") private String identityNum; @@ -57,6 +61,14 @@ public class CaseAffiliate extends BaseEntity { /** 快递单号 */ private String trackNum; + public String getApplicantAgentUserId() { + return applicantAgentUserId; + } + + public void setApplicantAgentUserId(String applicantAgentUserId) { + this.applicantAgentUserId = applicantAgentUserId; + } + public String getApplicationOrganId() { return applicationOrganId; } diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/IdentityAuthentication.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/IdentityAuthentication.java index ce47855..441e2f2 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/IdentityAuthentication.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/IdentityAuthentication.java @@ -3,9 +3,10 @@ package com.ruoyi.wisdomarbitrate.domain; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; +import lombok.Data; import java.util.Date; - +@Data public class IdentityAuthentication extends BaseEntity { private static final long serialVersionUID = 1L; @@ -15,6 +16,20 @@ public class IdentityAuthentication extends BaseEntity { private String name; /** 身份证号 */ private String identityNo; + /** + * 短信验证码 + */ + private String VerifyCode; + private String passWord; + private String phone; + /** + * 邮箱 + */ + private String email; + /** + * 身份证地址 + */ + private String idAddress; /** 认证时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date certificationTime; @@ -44,6 +59,10 @@ public class IdentityAuthentication extends BaseEntity { private Long userId; /** 用户账号 */ private String userName; + /** + * 用户昵称 + */ + private String nickName; /** EID商户id */ private String merchantId; diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/vo/WeChatUserVO.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/vo/WeChatUserVO.java new file mode 100644 index 0000000..a2b20cc --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/vo/WeChatUserVO.java @@ -0,0 +1,63 @@ +package com.ruoyi.wisdomarbitrate.domain.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.wisdomarbitrate.domain.Arbitrator; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.util.Date; +import java.util.List; + +/** + * 微信小程序用户注册登录 + */ +@Data +public class WeChatUserVO { + /** + * id + */ + private Long id; + /** + * 微信用户唯一标识 + */ + private String openId; + /** + * 微信授权的code,用户登录凭证 + */ + private String wxCode; + + /** + * 姓名 + */ + @NotEmpty(message = "姓名不能为空") + private String name; + /** 身份证号 */ + @NotEmpty(message = "身份证号不能为空") + private String identityNo; + /** 认证时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date certificationTime; + /** 认证状态 */ + private Integer certificationStatus; + private String password; + /** + * 电话 + */ + @NotEmpty(message = "电话不能为空") + private String phone; + /** + * 验证码 + */ + private String verifyCode; + /** + * 邮箱 + */ + @NotEmpty(message = "邮箱不能为空") + private String email; + /** + * 创建人 + */ + private String createBy; + private String updateBy; +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/IdentityAuthenticationMapper.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/IdentityAuthenticationMapper.java index 4800038..ae6d869 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/IdentityAuthenticationMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/IdentityAuthenticationMapper.java @@ -8,6 +8,5 @@ public interface IdentityAuthenticationMapper { IdentityAuthentication selectIdentityAuthentication(IdentityAuthentication identityAuthentication); - - + void updateIdentityAuthentication(IdentityAuthentication ientityAuthentication); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/WeChatUserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/WeChatUserMapper.java new file mode 100644 index 0000000..21bdd5c --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/WeChatUserMapper.java @@ -0,0 +1,21 @@ +package com.ruoyi.wisdomarbitrate.mapper; + +import com.ruoyi.wisdomarbitrate.domain.vo.WeChatUserVO; +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Repository; + +import java.util.List; + +/** + * @author wangqiong + * @description 微信小程序用户注册登录 + * @date 2023-10-16 11:45 + */ +@Repository +public interface WeChatUserMapper { + int insertUser(WeChatUserVO userVO); + int updateUser(WeChatUserVO userVO); + List selectIdentityAuthentication(WeChatUserVO userVO); + + WeChatUserVO selectUserByOppenId(@Param("oppenId") String openId); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/WeChatUserService.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/WeChatUserService.java new file mode 100644 index 0000000..ba03230 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/WeChatUserService.java @@ -0,0 +1,18 @@ +package com.ruoyi.wisdomarbitrate.service; + +import com.alibaba.fastjson.JSONObject; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.wisdomarbitrate.domain.IdentityAuthentication; +import com.ruoyi.wisdomarbitrate.domain.vo.WeChatUserVO; + +/** + * 微信小程序用户注册登录 + */ +public interface WeChatUserService { + + + String sendCode(WeChatUserVO userVO); + + + AjaxResult registerUser(IdentityAuthentication ientityAuthentication); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java index 9bd6271..412e592 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java @@ -13,6 +13,7 @@ import com.google.gson.JsonArray; import com.google.gson.JsonObject; import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.constant.CaseApplicationConstants; +import com.ruoyi.common.constant.Constants; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.*; @@ -465,9 +466,35 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService { if(caseAffiliates!=null&&caseAffiliates.size()>0){ for (CaseAffiliate caseAffiliate : caseAffiliates){ caseAffiliate.setCaseAppliId(caseApplicationItera.getId()); + // 组装申请机构代理人信息,用户表新增并且和部门关联 + // 根据代理人身份证去用户表查询,有修改,么有新增 + if(caseAffiliate.getIdentityType()==1) { + SysUser agentUser = sysUserMapper.selectUserByIdCard(caseAffiliate.getIdentityNumAgent()); + if(agentUser==null){ + agentUser = new SysUser(); + agentUser.setIdCard(caseAffiliate.getIdentityNumAgent()); + agentUser.setNickName(caseAffiliate.getNameAgent()); + agentUser.setUserName(caseAffiliate.getIdentityNumAgent()); + agentUser.setPhonenumber(caseAffiliate.getContactTelphoneAgent()); + agentUser.setPassword(SecurityUtils.encryptPassword(Constants.DEFAULT_PASSWORD)); + agentUser.setDeptId(Long.valueOf(caseAffiliate.getApplicationOrganId())); + int insertUserRow = sysUserMapper.insertUser(agentUser); + if(insertUserRow>0) { + caseAffiliate.setApplicantAgentUserId(String.valueOf(agentUser.getUserId())); + // 发送短信 todo + } + }else { + // 同步用户表和案件关联人表的手机号和名称 + caseAffiliate.setContactTelphoneAgent(agentUser.getPhonenumber()); + caseAffiliate.setNameAgent(agentUser.getNickName()); + caseAffiliate.setApplicantAgentUserId(String.valueOf(agentUser.getUserId())); + } + } + } caseAffiliateMapper.batchCaseAffiliate(caseAffiliates); } + successNum++; successMsg.append("
" + successNum + "、立案编号 " + caseApplicationItera.getCaseNum() + " 导入成功"); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/IdentityAuthenticationServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/IdentityAuthenticationServiceImpl.java index 168a223..d496918 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/IdentityAuthenticationServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/IdentityAuthenticationServiceImpl.java @@ -8,8 +8,10 @@ import cn.hutool.crypto.symmetric.SymmetricCrypto; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.wisdomarbitrate.domain.IdentityAuthentication; import com.ruoyi.wisdomarbitrate.mapper.IdentityAuthenticationMapper; import com.ruoyi.wisdomarbitrate.service.IdentityAuthenticationService; @@ -46,6 +48,7 @@ public class IdentityAuthenticationServiceImpl implements IdentityAuthentication @Autowired private IdentityAuthenticationMapper identityAuthenticationMapper; + private SysUserMapper sysUserMapper; private static final Logger log = LoggerFactory.getLogger(IdentityAuthenticationServiceImpl.class); @@ -147,7 +150,7 @@ public class IdentityAuthenticationServiceImpl implements IdentityAuthentication @Transactional public AjaxResult selectIdentityAuthenticaRespon(IdentityAuthentication ientityAuthentication) { String eidToken = ientityAuthentication.getEidToken(); - + IdentityAuthentication authentication = new IdentityAuthentication(); try { Credential cred = new Credential(credentialSecretId, credentialSecretKey); // 实例化一个http选项,可选的,没有特殊需求可以跳过 @@ -181,8 +184,8 @@ public class IdentityAuthenticationServiceImpl implements IdentityAuthentication String idcardno = info.getString("idnum"); String name = info.getString("name"); //2.在用户认证表中插入用户认证记录 - LoginUser loginUser = SecurityUtils.getLoginUser(); - IdentityAuthentication authentication = new IdentityAuthentication(); + // LoginUser loginUser = SecurityUtils.getLoginUser(); + /** * 用户名 * 用户名id @@ -192,15 +195,17 @@ public class IdentityAuthenticationServiceImpl implements IdentityAuthentication * 认证状态0表示成功 * 请求id */ - authentication.setUserName(loginUser.getUsername()); - authentication.setUserId(loginUser.getUserId()); + // authentication.setUserName(loginUser.getUsername()); + // authentication.setUserId(loginUser.getUserId()); authentication.setName(name); authentication.setIdentityNo(idcardno); authentication.setCertificationTime(new Date()); authentication.setCertificationStatus(0); - authentication.setCreateBy(loginUser.getUsername()); + authentication.setCreateBy(name); + // authentication.setCreateBy(loginUser.getUsername()); try { identityAuthenticationMapper.insertIdentityAuthentication(authentication); + authentication.setId(authentication.getId()); } catch (Exception e) { System.out.println("认证记录新增失败"); } @@ -210,12 +215,14 @@ public class IdentityAuthenticationServiceImpl implements IdentityAuthentication } } } - return AjaxResult.success(); + return AjaxResult.success(authentication); } catch (TencentCloudSDKException e) { System.out.println(e.toString()); } - return null; + return AjaxResult.success(); } + + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/WeChatUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/WeChatUserServiceImpl.java new file mode 100644 index 0000000..c03808e --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/WeChatUserServiceImpl.java @@ -0,0 +1,154 @@ +package com.ruoyi.wisdomarbitrate.service.impl; + +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpUtil; +import cn.hutool.json.JSONUtil; +import com.alibaba.fastjson2.JSONArray; +import com.alibaba.fastjson2.JSONObject; +import com.ruoyi.common.constant.CacheConstants; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.SysDictData; +import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.core.domain.model.LoginUser; +import com.ruoyi.common.core.redis.RedisCache; +import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.SmsUtils; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.common.utils.http.HttpUtils; +import com.ruoyi.common.utils.spring.SpringUtils; +import com.ruoyi.system.mapper.SysUserMapper; +import com.ruoyi.wisdomarbitrate.domain.IdentityAuthentication; +import com.ruoyi.wisdomarbitrate.domain.vo.WeChatUserVO; +import com.ruoyi.wisdomarbitrate.mapper.IdentityAuthenticationMapper; +import com.ruoyi.wisdomarbitrate.mapper.WeChatUserMapper; +import com.ruoyi.wisdomarbitrate.service.WeChatUserService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.HashMap; +import java.util.List; +import java.util.Random; +import java.util.concurrent.TimeUnit; + +/** + * @author wangqiong + * @description 微信小程序用户注册登录 + * @date 2023-10-16 11:45 + */ +@Service +@Slf4j +public class WeChatUserServiceImpl implements WeChatUserService { + String appid="wx91cb8459dca561b4";//自行获取 + //小程序secret + String secret="190aaa3bda96a65d25318fbb0e133fc6";//自己去公众号后台获取 + // 获取openId + String openIdUrl = "https://api.weixin.qq.com/sns/jscode2session"; + @Autowired + private WeChatUserMapper weChatUserMapper; + @Autowired + private SysUserMapper sysUserMapper; + @Autowired + private IdentityAuthenticationMapper identityAuthenticationMapper; + + @Override + public String sendCode(WeChatUserVO userVO) { + + Random random = new Random(); + String code = ""; + for (int i = 0; i < 6; i++) { + + code += random.nextInt(10); + } + SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest(); + request.setTemplateId("1955047"); + // 1954926 普通短信 短信验证码 验证码:,为了保证您的账户安全,请勿想他人泄露验证码信息。如非本人操作,请忽略本短信。 + request.setPhone(userVO.getPhone()); + request.setTemplateParamSet(new String[]{ code}); + Boolean flag = SmsUtils.sendSms(request); + if(flag){ + setCodeCache(userVO.getPhone(),code); + return "短信发送成功"; + } + return "短信发送失败"; + } + /** + * 设置字典缓存 + * + * @param key 参数键 + * @param code 字典数据列表 + */ + public static void setCodeCache(String key, String code) + { + SpringUtils.getBean(RedisCache.class).setCacheObject(getVerifyCodeCacheKey(key), code, 5,TimeUnit.MILLISECONDS); + } + + + /** + * 获取字典缓存 + * + * @param key 参数键 + * @return dictDatas 字典数据列表 + */ + public static String getCodeCache(String key) + { + String codeCache = SpringUtils.getBean(RedisCache.class).getCacheObject(getVerifyCodeCacheKey(key)); + if (StringUtils.isNotNull(codeCache)) + { + return codeCache; + } + return null; + } + + private static String getVerifyCodeCacheKey(String key) { + return CacheConstants.WE_CHAT_SMS_VERIFY_CODE_KEY + key; + } + @Transactional + @Override + public AjaxResult registerUser(IdentityAuthentication ientityAuthentication) { + // 校验短信验证码 +// if(StrUtil.isEmpty(getCodeCache(ientityAuthentication.getPhone()))){ +// return AjaxResult.success("验证码校验失败"); +// } + SysUser sysUserName=sysUserMapper.selectUserByUserName(ientityAuthentication.getUserName()); + if(sysUserName!=null){ + return AjaxResult.warn("用户名已存在"); + } + // 根据身份证查询系统用户表中是否存在该用户,存在则同步已认证的信息,不存在则新增 + SysUser sysUser=sysUserMapper.selectUserByIdCard(ientityAuthentication.getIdentityNo()); + + if(sysUser!=null){ + sysUser.setIdCard(ientityAuthentication.getIdentityNo()); + sysUser.setNickName(ientityAuthentication.getName()); + sysUser.setUserName(ientityAuthentication.getUserName()); + sysUser.setPhonenumber(ientityAuthentication.getPhone()); + sysUser.setEmail(ientityAuthentication.getEmail()); + sysUser.setPassword(SecurityUtils.encryptPassword(ientityAuthentication.getPassWord())); + sysUserMapper.updateUser(sysUser); + ientityAuthentication.setUserId(sysUser.getUserId()); + }else { + sysUser=new SysUser(); + // 用户名设为电话号 + sysUser.setUserName(ientityAuthentication.getPhone()); + sysUser.setIdCard(ientityAuthentication.getIdentityNo()); + sysUser.setNickName(ientityAuthentication.getName()); + sysUser.setUserName(ientityAuthentication.getUserName()); + sysUser.setPhonenumber(ientityAuthentication.getPhone()); + sysUser.setEmail(ientityAuthentication.getEmail()); + sysUser.setCreateBy(ientityAuthentication.getPhone()); + sysUser.setPassword(SecurityUtils.encryptPassword(ientityAuthentication.getPassWord())); + int row = sysUserMapper.insertUser(sysUser); + if(row<1) { + return AjaxResult.error("注册失败"); + } + } + + ientityAuthentication.setUserId(sysUser.getUserId()); + ientityAuthentication.setUserName(sysUser.getUserName()); + // 已经认证过的用户才能注册,认证表中已经有该数据 + identityAuthenticationMapper.updateIdentityAuthentication(ientityAuthentication); + return AjaxResult.success("注册成功"); + } + +} diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index c0c16a8..795bb69 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -177,7 +177,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + + + + insert into sys_user( user_id, dept_id, diff --git a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAffiliateMapper.xml b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAffiliateMapper.xml index 33bbab7..4e861c4 100644 --- a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAffiliateMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAffiliateMapper.xml @@ -54,11 +54,11 @@ insert into case_affiliate(case_appli_id, identity_type,application_organ_id,application_organ_name,name,identity_num,contact_telphone, contact_address,work_address,work_telphone ,name_agent,identity_num_agent,contact_telphone_agent, - contact_address_agent ) values + contact_address_agent,applicant_agent_user_id ) values (#{item.caseAppliId},#{item.identityType},#{item.applicationOrganId},#{item.applicationOrganName},#{item.name},#{item.identityNum},#{item.contactTelphone}, #{item.contactAddress},#{item.workAddress},#{item.workTelphone}, #{item.nameAgent},#{item.identityNumAgent}, - #{item.contactTelphoneAgent},#{item.contactAddressAgent}) + #{item.contactTelphoneAgent},#{item.contactAddressAgent},#{item.applicantAgentUserId}) diff --git a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseApplicationMapper.xml b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseApplicationMapper.xml index 240ed84..3c7610f 100644 --- a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseApplicationMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseApplicationMapper.xml @@ -310,7 +310,7 @@ select t1.* from( END paymentStatusName,c.pay_type, CASE c.pay_type when 0 then '线上支付' when 0 then '线下支付' else '' end payTypeName from case_application c left join case_payment_record p on c.id = p.case_id - where c.case_status = 3 and p.payment_status = 1 + where c.case_status = 3 AND c.id = #{id} diff --git a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/IdentityAuthenticationMapper.xml b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/IdentityAuthenticationMapper.xml index ebd2422..2477c63 100644 --- a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/IdentityAuthenticationMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/IdentityAuthenticationMapper.xml @@ -11,12 +11,14 @@ + insert into identi_authenti( user_id, + id_address, name, identity_no, certification_time, @@ -26,6 +28,7 @@ create_time )values( #{userId}, + #{idAddress}, #{name}, #{identityNo}, sysdate(), @@ -35,6 +38,17 @@ sysdate() ) + + update identi_authenti + + user_id = #{userId}, + user_name = #{userName}, + identity_no = #{identityNo}, + update_by = #{updateBy}, + update_time = sysdate() + + where id = #{id} + + SELECT i.id ,i.name ,i.identity_no ,i.certification_time ,i.certification_status ,i.user_id ,i.user_name,open_id,phone,email + from identi_authenti i + + + + + \ No newline at end of file