提交 343ec708 编写于 作者: wenhao.qin's avatar wenhao.qin

Merge remote-tracking branch 'origin/release' into dev-20220318

# Conflicts:
#	server/src/main/java/com/pica/cloud/account/account/server/service/impl/HospitalSaasUserServiceImpl.java
......@@ -11,7 +11,7 @@
<groupId>com.pica.cloud.account</groupId>
<artifactId>pica-cloud-account-common</artifactId>
<version>1.0.8</version>
<version>1.1.0</version>
<name>pica-cloud-account-common</name>
<packaging>jar</packaging>
......
package com.pica.cloud.account.account.common.req;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ApiModel
public class CreateAccountReq {
@ApiModelProperty("机构id")
private Integer hospitalId;
@ApiModelProperty("机构名称")
private String hospitalName;
@ApiModelProperty("输入姓名")
private String doctorName;
@ApiModelProperty("手机号")
private String mobilePhone;
public Integer getHospitalId() {
return hospitalId;
}
public void setHospitalId(Integer hospitalId) {
this.hospitalId = hospitalId;
}
public String getHospitalName() {
return hospitalName;
}
public void setHospitalName(String hospitalName) {
this.hospitalName = hospitalName;
}
public String getDoctorName() {
return doctorName;
}
public void setDoctorName(String doctorName) {
this.doctorName = doctorName;
}
public String getMobilePhone() {
return mobilePhone;
}
public void setMobilePhone(String mobilePhone) {
this.mobilePhone = mobilePhone;
}
}
......@@ -167,7 +167,7 @@
<dependency>
<groupId>com.pica.cloud.account</groupId>
<artifactId>pica-cloud-account-common</artifactId>
<version>1.0.8</version>
<version>1.1.0</version>
</dependency>
<dependency>
......
......@@ -2,6 +2,7 @@ package com.pica.cloud.account.account.server.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.pica.cloud.account.account.common.req.CreateAccountReq;
import com.pica.cloud.account.account.server.constants.Constants;
import com.pica.cloud.account.account.server.entity.*;
import com.pica.cloud.account.account.server.enums.AccountTypeEnum;
......@@ -459,6 +460,14 @@ public class AccountController extends AccountBaseController {
return PicaResponse.toResponse(doctorService.getDoctorsByInnerOrg());
}
@EnabledLoginValidate
@ApiOperation("代客下单-创建用户")
@PostMapping("/create")
public PicaResponse createAccountV2(@RequestBody CreateAccountReq req) {
return PicaResponse.toResponse(accountService.createAccountV2(req, fetchPicaUser()));
}
//手机格式校验
private void checkMobilePhone(String mobilePhone) {
if (StringUtils.isBlank(mobilePhone) || !ValidateUtils.isMobile(mobilePhone)) {
......
......@@ -27,6 +27,10 @@ public class Account {
private Integer certifyStatus;
private Integer hospitalId;
private String hospital;
private String nation;
private String nativePlace;
......@@ -76,18 +80,6 @@ public class Account {
private Date birthday;
private Integer hospitalId;
private String hospital;
public Integer getHospitalId() {
return hospitalId;
}
public void setHospitalId(Integer hospitalId) {
this.hospitalId = hospitalId;
}
public String getNativePlace() {
return nativePlace;
}
......@@ -104,6 +96,22 @@ public class Account {
this.nation = nation;
}
public Integer getHospitalId() {
return hospitalId;
}
public void setHospitalId(Integer hospitalId) {
this.hospitalId = hospitalId;
}
public String getHospital() {
return hospital;
}
public void setHospital(String hospital) {
this.hospital = hospital;
}
public Integer getCertifyStatus() {
return certifyStatus;
}
......@@ -335,12 +343,4 @@ public class Account {
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public String getHospital() {
return hospital;
}
public void setHospital(String hospital) {
this.hospital = hospital;
}
}
......@@ -70,6 +70,12 @@ public enum AccountExceptionEnum {
MOBILE_NOT_REGISTER("216560", "手机号{mobile}尚未注册"),
PARAMS_BIZ_TYPE_EMPTY("216561", "参数bizType不能为空"),
PROOF_GET_FAIL("216562", "网络出了点问题,请稍后重试"),
CRM_MOBILE_EXIST_IN_HOSPITAL("216563", "该手机号已存在本机构中"),
CRM_MOBILE_NOT_IN_HOSPITAL("216564", "该手机号已存在,但未加入机构,请至云鹊医App中加入机构"),
CRM_MOBILE_IN_ANOTHER_HOSPITAL("216565", "该手机号已存在于{hospitalName}中,如需修改请至云鹊医App中修改所属机构"),
xxx_xxx("","");
......
......@@ -24,6 +24,8 @@ public enum AccountTypeEnum {
PRODUCT_TYPE_DOCTOR(1, "云鹊医产品系"),
PRODUCT_TYPE_HEALTH(2, "云鹊健康产品系"),
PRODUCT_TYPE_ECO_LIVE(3, "生态直播"),
PRODUCT_TYPE_CRM(4, "销售crm"),
//终端类型
DEVICE_TYPE_ANDROID(1, "安卓"),
......@@ -31,6 +33,10 @@ public enum AccountTypeEnum {
DEVICE_TYPE_WEB(3, "web"),
DEVICE_TYPE_H5(4, "H5"),
DEVICE_TYPE_ADMIN(5, "admin"),
DEVICE_TYPE_SAAS(6, "saas"),
DEVICE_TYPE_SSO(7, "sso"),
DEVICE_TYPE_CRM(8, "crm"),
//验证码获取类型: flag:0登录(默认)1注册 2微信登录绑定手机 3修改手机 4重置密码
//5忘记密码 7患者招募提交问卷(效验) 8Appe登录绑定手机
......
......@@ -81,7 +81,7 @@ public class HospitalSaasUserReq {
if (null == this.sourceType) {
throw new PicaWarnException(AccountExceptionEnum.PICA_NOT_EMPTY.getCode(), "资源类型不能为空!");
}
if (!Pattern.matches("^[A-Za-z0-9]{5,10}$", this.password)) {
if (!Pattern.matches("^[A-Za-z0-9]{6,10}$", this.password)) {
throw new PicaWarnException(AccountExceptionEnum.PICA_NOT_EMPTY.getCode(), "密码需由6-10位字母或数字组成!");
}
if (Objects.nonNull(this.comment) && this.comment.length() > 100) {
......
......@@ -28,4 +28,6 @@ public class HospitalSaasUserEditResp {
private Integer pwdFlag = 1;
@ApiModelProperty("角色ids")
private List<Long> roleIds;
private Integer acctId;
}
package com.pica.cloud.account.account.server.service;
import com.pica.cloud.account.account.common.req.CreateAccountReq;
import com.pica.cloud.account.account.server.entity.Account;
import com.pica.cloud.account.account.server.entity.AccountInfoEntity;
import com.pica.cloud.foundation.utils.entity.PicaUser;
import java.util.Map;
......@@ -24,6 +26,9 @@ public interface AccountService {
//创建账号
void createAccount(Account account,Integer bizType);
// 创建账号
Integer createAccountV2(CreateAccountReq req, PicaUser picaUser);
//更新账号信息
void updateAccountById(Account account);
......
......@@ -27,4 +27,5 @@ public interface RegisterService {
LoginResult register(BaseRequest baseRequest, QueryMobileEntity queryMobileEntity);
void processRoleMap(Long userId);
}
package com.pica.cloud.account.account.server.service.impl;
import com.pica.cloud.account.account.common.req.CreateAccountReq;
import com.pica.cloud.account.account.server.entity.Account;
import com.pica.cloud.account.account.server.entity.AccountInfoEntity;
import com.pica.cloud.account.account.server.enums.AccountExceptionEnum;
import com.pica.cloud.account.account.server.enums.AccountTypeEnum;
import com.pica.cloud.account.account.server.exception.AccountException;
import com.pica.cloud.account.account.server.mapper.AccountInfoDetailMapper;
import com.pica.cloud.account.account.server.mapper.AccountMapper;
import com.pica.cloud.account.account.server.service.AccountService;
import com.pica.cloud.account.account.server.service.RegisterService;
import com.pica.cloud.foundation.encryption.common.constants.EncryptConstants;
import com.pica.cloud.foundation.encryption.util.EncryptUtils;
import com.pica.cloud.foundation.redis.ICacheClient;
import com.pica.cloud.foundation.utils.entity.PicaUser;
import com.pica.cloud.foundation.utils.utils.ValidateUtils;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
......@@ -44,6 +49,9 @@ public class AccountServiceImpl implements AccountService {
@Value("${doubleWritingMode}")
private boolean doubleWritingMode;
@Autowired
private RegisterService registerService;
//根据ID获取账号
@Override
public Account getById(long id) {
......@@ -128,6 +136,73 @@ public class AccountServiceImpl implements AccountService {
}
}
@Override
public Integer createAccountV2(CreateAccountReq req, PicaUser picaUser) {
/** 参数校验 */
if (StringUtils.isEmpty(req.getMobilePhone()) || StringUtils.isEmpty(req.getDoctorName()) || req.getHospitalId() == null) {
throw new AccountException(AccountExceptionEnum.PICA_PARAMS_ERROR);
}
if (!ValidateUtils.isMobile(req.getMobilePhone())) {
throw new AccountException(AccountExceptionEnum.PICA_MOBILE_ERROR);
}
/** 手机号已被占用,且机构不存在或机构为空 */
String encryptMobilePhone = EncryptUtils.encryptContent(req.getMobilePhone(), EncryptConstants.ENCRYPT_TYPE_MOBILE);
Account existAccount = accountMapper.getByMobilePhone(encryptMobilePhone);
if (existAccount == null) {
Date now = Calendar.getInstance().getTime();
/** account info */
AccountInfoEntity accountInfo = new AccountInfoEntity();
accountInfo.setName(req.getDoctorName());
accountInfo.setMobilePhone(encryptMobilePhone);
accountInfo.setPassword("");
accountInfo.setCreatedTime(now);
accountInfo.setCreatedId(picaUser.getId());
accountInfo.setModifiedId(picaUser.getId());
accountInfo.setModifiedTime(now);
accountInfo.setRegTime(now);
accountInfo.setDeleteFlag(1);
accountInfo.setSex(0);
accountInfo.setRegisterProduct(AccountTypeEnum.PRODUCT_TYPE_CRM.getCode());
accountInfo.setRegisterSource(AccountTypeEnum.DEVICE_TYPE_CRM.getCode());
accountInfo.setRegTime(now);
accountInfoDetailMapper.insertSelective(accountInfo);
Integer acctId = accountInfo.getId();
accountInfoDetailMapper.updateCreateInfo(acctId);
/** doctor */
Account account = new Account();
account.setName(req.getDoctorName());
account.setAcctId(acctId);
account.setMobilePhone(encryptMobilePhone);
account.setPassword("");
account.setEntireFlag(3);
account.setComment("");
account.setHospitalId(req.getHospitalId());
account.setHospital(req.getHospitalName());
account.setCreatId(picaUser.getId().longValue());
account.setModifyId(picaUser.getId().longValue());
account.setDeleteFlag(1);
account.setCreatTime(now);
account.setRegTime(now);
account.setModifyTime(now);
account.setFirstLoginTime(now);
account.setLastLoginTime(now);
account.setRegisterSource(AccountTypeEnum.DEVICE_TYPE_H5.getCode());
accountMapper.insertSelective(account);
registerService.processRoleMap(account.getId());
return account.getId().intValue();
}
if (existAccount.getHospitalId() == null || existAccount.getHospitalId() == 0) {
throw new AccountException(AccountExceptionEnum.CRM_MOBILE_NOT_IN_HOSPITAL);
}
if (!req.getHospitalId().equals(existAccount.getHospitalId())) {
throw new AccountException(AccountExceptionEnum.CRM_MOBILE_IN_ANOTHER_HOSPITAL.getCode(), AccountExceptionEnum.CRM_MOBILE_IN_ANOTHER_HOSPITAL.getMessage().replace("{hospitalName}", existAccount.getHospital()));
}
throw new AccountException(AccountExceptionEnum.CRM_MOBILE_EXIST_IN_HOSPITAL);
}
//更新账号信息
@Override
@Transactional
......
// Copyright 2016-2101 Pica.
package com.pica.cloud.account.account.server.service.impl;
import com.alibaba.fastjson.JSON;
import com.pica.cloud.account.account.server.constants.Constants;
import com.pica.cloud.account.account.server.entity.*;
import com.pica.cloud.account.account.server.enums.SaasRoleEnum;
......@@ -12,6 +11,7 @@ import com.pica.cloud.account.account.server.resp.*;
import com.pica.cloud.account.account.server.service.AccountService;
import com.pica.cloud.account.account.server.service.HospitalSaasUserService;
import com.pica.cloud.account.account.server.service.PasswordService;
import com.pica.cloud.account.account.server.service.RegisterService;
import com.pica.cloud.account.account.server.util.AESUtil;
import com.pica.cloud.account.account.server.util.ExecutorServiceUtils;
import com.pica.cloud.foundation.encryption.common.constants.EncryptConstants;
......@@ -30,7 +30,6 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import springfox.documentation.spring.web.json.Json;
import java.util.*;
import java.util.stream.Collectors;
......@@ -67,6 +66,8 @@ public class HospitalSaasUserServiceImpl implements HospitalSaasUserService {
@Autowired
private PasswordService passwordService;
@Autowired
private RegisterService registerService;
@Override
@Transactional
......@@ -103,11 +104,9 @@ public class HospitalSaasUserServiceImpl implements HospitalSaasUserService {
//手机号加密
String mobileEncrypt = AESUtil.encryptV0(mobile);
AccountInfoEntity accountInfoEntity = accountInfoDetailMapper.selectByMobile(mobileEncrypt);
Account byMobilePhone = accountMapper.getByMobilePhone(mobileEncrypt);
if ((null == accountInfoEntity && byMobilePhone != null) || (null != accountInfoEntity && byMobilePhone == null)){
logger.error("saas注册,account和doctor存在数据不一致情况, req={}",JSON.toJSONString(req));
throw new PicaException(PicaResultCode.PARAM_IS_INVALID.code(), "数据有误,本次提交失败");
//密码已经存在的处理逻辑
if (Objects.nonNull(accountInfoEntity) && StringUtils.isNotBlank(accountInfoEntity.getPassword())) {
throw new PicaException(PicaResultCode.PARAM_IS_INVALID.code(), "用户已存在,且密码已设置,不可进行编辑");
}
//用户不存在的处理逻辑
if (accountInfoEntity == null) {
......@@ -121,24 +120,36 @@ public class HospitalSaasUserServiceImpl implements HospitalSaasUserService {
// doctor
Account account = buildDoctorMsg(req, mobileEncrypt, currentTime, req.getSourceType(), md5Pwd, acctId);
accountMapper.insertSelective(account);
insertAppRole(account.getId());
registerService.processRoleMap(account.getId());
insertSaasRole(req.getRoleId(), req.getHospitalId().longValue(), account.getId(), account.getId());
redisClient.del(nxKey);
return 1;
}
//用户存在的处理逻辑 给出提示信息
Integer hospitalId = byMobilePhone.getHospitalId();
Hospital hospital;
if (null == hospitalId || null == (hospital = hospitalMapper.selectByPrimaryKey(hospitalId))){
throw new PicaException(PicaResultCode.PARAM_IS_INVALID.code(), "该手机号已存在,但未加入机构,请至云鹊医App中加入机构");
Account byMobilePhone = accountMapper.getByMobilePhone(mobileEncrypt);
if (!req.getHospitalId().equals(byMobilePhone.getHospitalId())) {
throw new PicaException(PicaResultCode.PARAM_IS_INVALID.code(), "正在添加的用户非本机构下用户");
}
Account account = new Account();
account.setId(byMobilePhone.getId());
account.setModifyId(doctorId);
account.setHospitalId(req.getHospitalId());
account.setHospital(req.getHospitalName());
account.setModifyTime(Calendar.getInstance().getTime());
if (StringUtils.isNotEmpty(req.getComment())) {
account.setComment(req.getComment());
}
if (hospitalId.equals(req.getHospitalId())){
throw new PicaException(PicaResultCode.PARAM_IS_INVALID.code(), "该手机号已存在本机构中");
accountService.updateAccountById(account);
/** 修改密码 */
Integer acctId = byMobilePhone.getAcctId();
if (null == acctId){
throw new PicaException(PicaResultCode.PARAM_IS_INVALID.code(), "数据有误");
}
if (!req.getHospitalId().equals(byMobilePhone.getHospitalId())) {
throw new PicaException(
PicaResultCode.PARAM_IS_INVALID.code(),
String.format("该手机号已存在于\"%s\"中,如需修改请至云鹊医App中修改所属机构",hospital.getName()));
if (StringUtils.isNotEmpty(req.getPassword()) && StringUtils.isEmpty(byMobilePhone.getPassword())) {
AccountInfoEntity accountInfo = accountInfoDetailMapper.selectByPrimaryKey(acctId);
if (accountInfo == null){
throw new PicaException(PicaResultCode.PARAM_IS_INVALID.code(), "当前用户不存在");
}
passwordService.modifyPassword(mobileEncrypt, accountInfo.getPassword(), StringUtils.upperCase(MD5Util.MD5(req.getPassword())), true);
}
}
return 1;
......@@ -252,11 +263,15 @@ public class HospitalSaasUserServiceImpl implements HospitalSaasUserService {
/** 修改密码 */
if (StringUtils.isNotEmpty(req.getPassword())) {
Account accountExist = accountMapper.selectById(req.getId());
if (accountExist == null) {
if (accountExist == null || accountExist.getAcctId() == null) {
throw new PicaException(PicaResultCode.PARAM_IS_INVALID.code(), "当前用户不存在");
}
if (StringUtils.isEmpty(accountExist.getPassword())) {
passwordService.modifyPassword(accountExist.getMobilePhone(), accountExist.getPassword(), StringUtils.upperCase(MD5Util.MD5(req.getPassword())), true);
if (null == accountExist.getAcctId()){
throw new PicaException(PicaResultCode.PARAM_IS_INVALID.code(), "数据有误");
}
AccountInfoEntity accountInfo = accountInfoDetailMapper.selectByPrimaryKey(accountExist.getAcctId());
if (accountInfo!= null && StringUtils.isEmpty(accountInfo.getPassword())) {
passwordService.modifyPassword(accountExist.getMobilePhone(), accountInfo.getPassword(), StringUtils.upperCase(MD5Util.MD5(req.getPassword())), true);
}
}
......@@ -325,44 +340,22 @@ public class HospitalSaasUserServiceImpl implements HospitalSaasUserService {
return new HospitalSaasUserEditResp();
}
resp.setPwdFlag(2);
if (resp.getAcctId() != null){
AccountInfoEntity accountInfo = accountInfoDetailMapper.selectByPrimaryKey(resp.getAcctId());
if (StringUtils.isNotBlank(accountInfo.getPassword())) {
resp.setPwdFlag(1);
resp.setPassword(accountInfo.getPassword());
}
}
//手机号不为空 解密脱敏
if (StringUtils.isNotBlank(resp.getMobile())) {
String phone = EncryptUtils.decryptContent(resp.getMobile(), EncryptConstants.ENCRYPT_TYPE_MOBILE, EncryptConstants.ENCRYPT_DECRYPT_KEY);
resp.setMobile(phone);
return resp;
}
if (StringUtils.isNotBlank(resp.getPassword())) {
resp.setPwdFlag(1);
}
return resp;
}
//处理app端 用户-角色关系
private void insertAppRole(Long userId) {
ExecutorServiceUtils.getExecutor().submit(new Runnable() {
@Override
public void run() {
Date date = new Date();
PUserRole pUserRole = new PUserRole();
pUserRole.setSystemId(5);
pUserRole.setUserRoleId(2);
pUserRole.setUserId(userId.intValue());
pUserRole.setUserType(1);
pUserRole.setStatus(2);
pUserRole.setDeleteFlag(1);
pUserRole.setCreatId(userId.intValue());
pUserRole.setCreatTime(date);
pUserRole.setModifyId(userId.intValue());
pUserRole.setModifyTime(date);
pUserRoleMapper.insertSelective(pUserRole);
pUserRole.setSystemId(1);
pUserRoleMapper.insertSelective(pUserRole);
pUserRole.setSystemId(3);
pUserRoleMapper.insertSelective(pUserRole);
}
});
}
private AccountInfoEntity buildAccountInfo(String mobileEncrypt, Date currentTime, int productType, int sourceType, String password) {
AccountInfoEntity accountInfo = new AccountInfoEntity();
accountInfo.setMobilePhone(mobileEncrypt);
......
......@@ -218,7 +218,8 @@ public class RegisterServiceImpl implements RegisterService {
*
* @param userId
*/
private void processRoleMap(Long userId) {
@Override
public void processRoleMap(Long userId) {
ExecutorServiceUtils.getExecutor().submit(new Runnable() {
@Override
public void run() {
......
......@@ -40,7 +40,7 @@
<sql id="Base_Column_List">
id, sex, name, mobile_phone, status, certify_status, nation, avatar_image_url, email, qrcode, nickname, personal_sign, delete_flag,
creat_id, creat_time, modify_id, modify_time, password, info, entire_flag, reg_time, last_login_time,
unionid, register_source, comment, register_type, first_login_time, card, birthday, hospital_id, hospital
unionid, register_source, comment, register_type, first_login_time, card, birthday, hospital_id, hospital,acct_id
</sql>
<select id="selectById" parameterType="java.lang.Long" resultMap="BaseResultMap">
......@@ -394,7 +394,7 @@
p.hospital_id as hospitalId,
p.mobile_phone as mobile,
p.comment as comment,
p.password as password
p.acct_id as acctId
from p_doctor as p
where p.id = #{id, jdbcType=INTEGER}
and p.delete_flag = 1
......@@ -409,4 +409,4 @@
limit 1
</select>
</mapper>
</mapper>
\ No newline at end of file
package com.pica.cloud.account.account.server.mapper;
package com.pica.cloud.account.account.server.service;
import com.pica.cloud.account.account.server.service.impl.HospitalSaasUserServiceImpl;
import com.pica.cloud.account.account.common.req.CreateAccountReq;
import com.pica.cloud.account.account.server.App;
import com.pica.cloud.foundation.utils.entity.PicaUser;
import junit.framework.TestCase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
/**
* User: Joy
* Description:
* Date: 2022-03-03 18:08
*/
@RunWith(SpringRunner.class)
@SpringBootTest
public class HospitalSaasUserServiceTest {
@SpringBootTest(classes = App.class)
public class AccountServiceTest extends TestCase {
@Autowired
private HospitalSaasUserServiceImpl hospitalSaasUserService;
private AccountService accountService;
@Test
public void test1(){
PicaUser user = new PicaUser();
user.setId(1000005487);
user.setToken("1234");
hospitalSaasUserService.userDetail(user);
}
public void testCreateAccountV2() {
CreateAccountReq req = new CreateAccountReq();
req.setHospitalId(475838);
req.setHospitalName("测试医院");
req.setDoctorName("张三");
req.setMobilePhone("13391420640");
}
PicaUser picaUser = new PicaUser();
picaUser.setId(1);
accountService.createAccountV2(req, picaUser);
}
}
\ No newline at end of file
package com.pica.cloud.account.account.server.mapper;// Copyright 2016-2101 Pica.
import com.pica.cloud.account.account.server.constants.Constants;
import com.pica.cloud.account.account.server.entity.AccountWeChatInfoEntity;
import com.pica.cloud.foundation.redis.ICacheClient;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @ClassName com.pica.cloud.account.account.server.mapper.Test
* @Description junit test
* @Author Chongwen.jiang
* @Date 2020/2/25 14:51
* @ModifyDate 2020/2/25 14:51
* @Version 1.0
*/
@RunWith(SpringRunner.class)
@SpringBootTest
public class AccountWeChatInfoMapperTest {
@Autowired
private AccountWeChatInfoMapper weChatInfoMapper;
@Autowired
private ICacheClient cacheClient;
@org.junit.Test
public void test1(){
/* AccountWeChatInfoEntity record = new AccountWeChatInfoEntity();
record.setNickname("Zz");
record.setSex(1);
record.setCountry("中国");
record.setCity("邵阳");
int count = weChatInfoMapper.insertSelective(record);
System.out.println(count);*/
//System.out.println(cacheClient.set(Constants.AUTHCODE_H5_SWITCH_KEY, Constants.AUTHCODE_H5_SWITCH_KEY+"-/account/H5/authCode"));
//System.out.println(cacheClient.del(Constants.AUTHCODE_H5_SWITCH_KEY));
}
}
// Copyright 2016-2101 Pica.
package com.pica.cloud.account.account.server.mapper;
import com.alibaba.fastjson.JSON;
import com.pica.cloud.account.account.server.controller.AutoCodeController;
import com.pica.cloud.account.account.server.entity.EncryptEntity;
import com.pica.cloud.account.account.server.req.BaseRequest;
import com.pica.cloud.account.account.server.util.AESUtil;
import com.pica.cloud.account.account.server.util.RSAUtil;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
/**
* @ClassName AutoCodeControllerTest
* @Description
* @Author Chongwen.jiang
* @Date 2020/4/3 14:31
* @ModifyDate 2020/4/3 14:31
* @Version 1.0
*/
@RunWith(SpringRunner.class)
@SpringBootTest
public class AutoCodeControllerTest {
/*@Autowired
private AutoCodeController autoCodeController;
@Test
public void getH5AuthCodeTest() throws Exception {
ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
HttpServletRequest request = servletRequestAttributes.getRequest();
String publicKey = "1234567890123456";
BaseRequest req= new BaseRequest();
req.setFlag(4);
req.setMobile("13517477655");
req.setCapCode(String.valueOf(System.currentTimeMillis()));
req.setxPos(126);
req.setDevice_token("000000");
req.setSourceType(4);
String content = AESUtil.aesEncrypt(JSON.toJSONString(req), publicKey);
String encryptKey = RSAUtil.encrypt(publicKey);
EncryptEntity entity = new EncryptEntity();
entity.setKey(encryptKey);
entity.setContent(content);
autoCodeController.getH5AuthCode(entity, request);
}*/
}
// Copyright 2016-2101 Pica.
package pica.cloud.account.account.server.mapper;
import com.pica.cloud.account.account.server.App;
import com.pica.cloud.account.account.server.service.LoginV1Service;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @ClassName AutoCodeControllerTest
* @Description
* @Author Chongwen.jiang
* @Date 2020/4/3 14:31
* @ModifyDate 2020/4/3 14:31
* @Version 1.0
*/
@RunWith(SpringRunner.class)
@SpringBootTest (classes = App.class)
public class OneClickTest {
@Autowired
LoginV1Service loginV1Service;
@Test
public void test() {
loginV1Service.insertLog(1000005511, "13073690113", "161a397c8bc807ed97",
"{baseRequest={\\\"flag\\\":0,\\\"loginIp\\\":\\\"172.25.36.64\\\",\\\"mobile\\\":\\\"13073690113\\\",\\\"productType\\\":1,\\\"sourceType\\\":2,\\\"userTokenTourist\\\":\\\"06388870914559557010\\\"}, accountInfoEntity={\\\"age\\\":0,\\\"createdId\\\":49,\\\"createdTime\\\":1586336527000,\\\"deleteFlag\\\":1,\\\"id\\\":49,\\\"mobilePhone\\\":\\\"N/rge2EqV+KgL+li6YBfag==\\\",\\\"modifiedId\\\":49,\\\"modifiedTime\\\":1606982710000,\\\"name\\\":\\\"\\\",\\\"password\\\":\\\"F6127053CB61F3A162F79C031302EAA9\\\",\\\"regTime\\\":1586336527000,\\\"registerProduct\\\":1,\\\"registerSource\\\":1,\\\"sex\\\":0}, queryMobileEntity={\\\"chargeStatus\\\":1,\\\"code\\\":\\\"200000\\\",\\\"data\\\":{\\\"mobileName\\\":\\\"8A7285AA29407E465B2E89053D32FB2E\\\",\\\"tradeNo\\\":\\\"790607755953070080\\\"},\\\"message\\\":\\\"成功\\\",\\\"mobile\\\":\\\"13073690113\\\",\\\"sourceType\\\":2}, req={\\\"checkFlag\\\":true,\\\"deviceToken\\\":\\\"161a3797c8bc807ed97\\\",\\\"loginIp\\\":\\\"172.25.36.64\\\",\\\"productType\\\":1,\\\"sourceType\\\":2,\\\"token\\\":\\\"A4-PAYG_0uR5Q3IeSPcQaN9mPZs20iUJPGDxQWMcNiipcrrsuN-fkr0R3dZad4_c_o5vMRFIfQo0oJiE5owd6-xN8f71byCQ8FIFuWKnxj_1AvoGrrmXBmYNu4bwA4Cinw247d_42lC6bxPxB9d-Bnl8SqBNdqX3HHWYTCtswZaT9Ig2H-9R6j9vaa4yMo9DX5mAUVJMNMQi58NcbfpcSnxPw==\\\",\\\"userTokenTourist\\\":\\\"06388870914559557010\\\"}}");
}
}
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册