Commit 7ed15f5b authored by 王亮's avatar 王亮

remove unused code.

parent 8eeef642
package cn.quantgroup.xyqb.controller.dust;
import cn.quantgroup.xyqb.entity.UserAuthorized;
import cn.quantgroup.xyqb.model.JsonResult;
import cn.quantgroup.xyqb.model.UserAuthorizedParam;
import cn.quantgroup.xyqb.service.auth.IUserAuthorizedService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
/**
* @author xufei on 2018/1/5.
*/
@Slf4j
@RestController
@RequestMapping("/user/auth")
public class UserAuthorizedController {
@Resource
private IUserAuthorizedService userAuthorizedService;
/**
* @Deprecated 20210317
*/
@Deprecated
@RequestMapping(value = "/hasUserAuthorized")
public JsonResult hasUserAuthorized(String idNo) {
log.info("[hasUserAuthorized]需要校验的用户的身份证号为idNo:{}", idNo);
if (userAuthorizedService.hasUserAuthorized(idNo)) {
return JsonResult.buildSuccessResult(null, true);
} else {
return JsonResult.buildErrorStateResult(null, false);
}
}
/**
* @Deprecated 20210317
*/
@Deprecated
@RequestMapping(value = "/createUserAuthorized")
public JsonResult createUserAuthorized(UserAuthorizedParam userAuthorizedParam) {
log.info("[createUserAuthorized]创建实名账户,userAuthorizedParam:{},", userAuthorizedParam);
try {
if (userAuthorizedService.checkUserAuthorizedParam(userAuthorizedParam)) {
return JsonResult.buildErrorStateResult("参数异常", null);
}
} catch (Exception e) {
log.info("[createUserAuthorized]创建实名账户失败e:{}", e);
return JsonResult.buildErrorStateResult("参数异常", null);
}
UserAuthorized userAuthorized = userAuthorizedService.createUserAuthorized(userAuthorizedParam);
if (null == userAuthorized) {
return JsonResult.buildErrorStateResult("重复创建异常或userUuid有误", null);
} else {
return JsonResult.buildSuccessResult("创建成功", userAuthorized.getId());
}
}
/**
* @Deprecated 20210317
*/
@Deprecated
@RequestMapping(value = "/getUserAuthorizedId")
public JsonResult getUserAuthorizedId(String userUuid) {
log.info("[getUserAuthorizedId]获取实名账户的id,userUuid:{}", userUuid);
return JsonResult.buildSuccessResult(null, userAuthorizedService.getUserAuthorizedId(userUuid));
}
}
package cn.quantgroup.xyqb.entity;
import cn.quantgroup.xyqb.model.AuthPattern;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
import java.sql.Timestamp;
/**
* @author xufei on 2018/1/5.
*/
@Data
@Entity
@Table(name = "user_authorized")
public class UserAuthorized {
@Id
@Column(name = "id")
@GeneratedValue(generator = "uuid")
@GenericGenerator(name = "uuid", strategy = "org.hibernate.id.UUIDGenerator")
private String id;
@Column(name = "user_uuid")
private String userUuid;
//证件号
@Column(name = "id_no")
private String idNo;
@Column(name = "name")
private String name;
@Column(name = "auth_pattern")
private AuthPattern authPattern;
@Column(name = "available")
private Boolean available;
//创建时间
@Column(name = "created_at")
private Timestamp createdAt;
//上一次修改时间
@Column(name = "updated_at")
private Timestamp updatedAt;
}
package cn.quantgroup.xyqb.repository;
import cn.quantgroup.xyqb.entity.UserAuthorized;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
/**
* @author xufei on 2018/1/5.
*/
public interface IUserAuthorizedRepository extends JpaRepository<UserAuthorized, Long>, JpaSpecificationExecutor<UserAuthorized> {
/**
* 通过身份证号查找实名账户
*
* @param idNo 身份证号
* @return 实体
*/
UserAuthorized findByIdNo(String idNo);
/**
* 通过userId查找实名账户
*
* @param userUuid 用户表的uuid
* @return 实体
*/
UserAuthorized findByUserUuid(String userUuid);
}
package cn.quantgroup.xyqb.service.auth;
import cn.quantgroup.xyqb.entity.UserAuthorized;
import cn.quantgroup.xyqb.model.UserAuthorizedParam;
/**
* @author xufei on 2018/1/5.
*/
public interface IUserAuthorizedService {
/**
* 该身份证是否有对应的实名账户
*
* @param idNo 身份证号
* @return
*/
Boolean hasUserAuthorized(String idNo);
/**
* 创建实名账户
*
* @param userAuthorizedParam
* @return
*/
UserAuthorized createUserAuthorized(UserAuthorizedParam userAuthorizedParam);
/**
* 通过userUuid获取实名账户表的id
*
* @param userUuid userUuid
* @return
*/
String getUserAuthorizedId(String userUuid);
/**
* 校验参数
*
* @param userAuthorizedParam
* @return
* @throws Exception
*/
Boolean checkUserAuthorizedParam(UserAuthorizedParam userAuthorizedParam) throws Exception;
}
package cn.quantgroup.xyqb.service.auth.impl;
import cn.quantgroup.xyqb.entity.UserAuthorized;
import cn.quantgroup.xyqb.model.AuthPattern;
import cn.quantgroup.xyqb.model.UserAuthorizedParam;
import cn.quantgroup.xyqb.repository.IUserAuthorizedRepository;
import cn.quantgroup.xyqb.repository.IUserRepository;
import cn.quantgroup.xyqb.service.auth.IIdCardService;
import cn.quantgroup.xyqb.service.auth.IUserAuthorizedService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.text.ParseException;
import java.util.Objects;
/**
* @author xufei on 2018/1/5.
*/
@Slf4j
@Service
public class UserAuthorizedServiceImpl implements IUserAuthorizedService {
@Resource
private IIdCardService iIdCardService;
@Resource
private IUserAuthorizedRepository userAuthorizedRepository;
@Resource
private IUserRepository userRepository;
// @Cacheable(value = "user_authorized_idno_cache", key = "#idNo", unless = "#result == false", cacheManager = "cacheManager")
@Override
public Boolean hasUserAuthorized(String idNo) {
try {
if (StringUtils.isBlank(idNo) || !iIdCardService.isIdCardValid(idNo)) {
return Boolean.FALSE;
}
} catch (ParseException e) {
log.error("[hasUserAuthorized]参数异常e:{}", e);
return Boolean.FALSE;
}
UserAuthorized userAuthorized = userAuthorizedRepository.findByIdNo(idNo);
log.info("[hasUserAuthorized]查询实名账户userAuthorized:{}", userAuthorized);
return null != userAuthorized;
}
@Override
public Boolean checkUserAuthorizedParam(UserAuthorizedParam userAuthorizedParam) throws Exception {
if (null == userAuthorizedParam) {
return Boolean.TRUE;
}
String userUuid = userAuthorizedParam.getUserUuid();
if (StringUtils.isBlank(userUuid)) {
return Boolean.TRUE;
}
String name = userAuthorizedParam.getName();
String authPattern = userAuthorizedParam.getAuthPattern();
String idNo = userAuthorizedParam.getIdNo();
return (StringUtils.isBlank(name) || StringUtils.isBlank(authPattern) || !iIdCardService.isIdCardValid(idNo));
}
@Override
public UserAuthorized createUserAuthorized(UserAuthorizedParam userAuthorizedParam) {
// 数据检查,以及检查userUuid是否存在
if (Objects.isNull(userAuthorizedParam) || this.hasUserAuthorized(userAuthorizedParam.getIdNo())
|| Objects.isNull(userRepository.findByUuid(userAuthorizedParam.getUserUuid()))) {
return null;
}
AuthPattern authPatternEnum = AuthPattern.valueOf(userAuthorizedParam.getAuthPattern());
UserAuthorized userAuthorized = new UserAuthorized();
userAuthorized.setAuthPattern(authPatternEnum);
userAuthorized.setAvailable(Boolean.TRUE);
userAuthorized.setName(userAuthorizedParam.getName());
userAuthorized.setIdNo(userAuthorizedParam.getIdNo());
userAuthorized.setUserUuid(userAuthorizedParam.getUserUuid());
try {
userAuthorized = userAuthorizedRepository.save(userAuthorized);
log.info("[createUserAuthorized]创建实名账户成功,userAuthorized:{}", userAuthorized);
return userAuthorized;
} catch (Exception e) {
log.error("[createUserAuthorized]创建实名账户异常e:{}", e);
return null;
}
}
// @Cacheable(value = "user_authorized_uuid_2_id_cache", key = "#userUuid", unless = "#result == null", cacheManager = "cacheManager")
@Override
public String getUserAuthorizedId(String userUuid) {
if (StringUtils.isBlank(userUuid)) {
return null;
}
UserAuthorized userAuthorized = userAuthorizedRepository.findByUserUuid(userUuid);
log.info("[getUserAuthorizedId]获取实名账户的id,userUuid:{},userAuthorized:{}", userUuid, userAuthorized);
if (null == userAuthorized) {
return null;
}
return userAuthorized.getId();
}
}
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import repsitory.UserAuthorizedRepsitoryTest;
import service.UserAuthorizedServiceTest;
import web.UserAuthorizedControllerTest;
@RunWith(Suite.class)
@Suite.SuiteClasses({UserAuthorizedRepsitoryTest.class, UserAuthorizedServiceTest.class, UserAuthorizedControllerTest.class})
public class UserAuthorizedTest {}
\ No newline at end of file
package repsitory;
import cn.quantgroup.xyqb.Bootstrap;
import cn.quantgroup.xyqb.entity.UserAuthorized;
import cn.quantgroup.xyqb.model.AuthPattern;
import cn.quantgroup.xyqb.repository.IUserAuthorizedRepository;
import com.ctrip.framework.apollo.spring.config.ApolloPropertySourceInitializer;
import demo.BaseParametersTest;
import lombok.extern.slf4j.Slf4j;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.domain.Example;
import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Arrays;
import java.util.Collection;
/**
* 业务层测试用例
* @author renwc
* @date 2018-01-05
*/
@Slf4j
@Rollback
@Transactional(rollbackFor = Exception.class)
@RunWith(value = Parameterized.class)
@SpringBootTest(classes = Bootstrap.class)
@ContextConfiguration(initializers = ApolloPropertySourceInitializer.class)
public class UserAuthorizedRepsitoryTest extends BaseParametersTest {
@Resource
private IUserAuthorizedRepository userAuthorizedRepository;
private UserAuthorized obj = new UserAuthorized();
public UserAuthorizedRepsitoryTest(String userUuid, String idNo, String name, AuthPattern authPattern, Boolean available) {
obj.setUserUuid(userUuid);
obj.setIdNo(idNo);
obj.setName(name);
obj.setAuthPattern(authPattern);
obj.setAvailable(available);
}
@Parameterized.Parameters
public static Collection<Object[]> data() {
Object[][] data = new Object[][]{
{"711892ae-191b-445a-a4eb-3c0b7bab7840","350504198805144101","史书一", AuthPattern.ZMXY, true},
{"711892ae-191b-445a-a4eb-3c0b7bab7841","350504198805144102","史书二", AuthPattern.ZMXY, true},
{"711892ae-191b-445a-a4eb-3c0b7bab7842","350504198805144103","史书三", AuthPattern.FOUR_ELEMENTS_OF_BANK_CARD, true},
{"711892ae-191b-445a-a4eb-3c0b7bab7843", "IDNO-1", "王-1", AuthPattern.ZMXY, true}
};
return Arrays.asList(data);
}
@Test
public void testExist() throws Exception {
log.info("testExist: name:{}, idNo:{}, userId:{}, authPattern:{}", obj.getName(), obj.getIdNo(), obj.getUserUuid(), obj.getAuthPattern());
boolean exist = userAuthorizedRepository.exists(Example.of(obj));
Assert.assertFalse(exist);
}
@Test
public void testSave() throws Exception {
log.info("testSave: name:{}, idNo:{}, userId:{}, authPattern:{}", obj.getName(), obj.getIdNo(), obj.getUserUuid(), obj.getAuthPattern());
Object o = userAuthorizedRepository.save(obj);
Assert.assertNotNull(o);
Assert.assertEquals(obj, o);
}
@Test
public void testThenQuery(){
log.info("testQuery: name:{}, idNo:{}, userId:{}, authPattern:{}", obj.getName(), obj.getIdNo(), obj.getUserUuid(), obj.getAuthPattern());
UserAuthorized o = userAuthorizedRepository.findByIdNo(this.obj.getIdNo());
Assert.assertNotNull(o);
Assert.assertEquals(obj.getIdNo(), o.getIdNo());
}
}
package service;
import cn.quantgroup.xyqb.Bootstrap;
import cn.quantgroup.xyqb.entity.UserAuthorized;
import cn.quantgroup.xyqb.model.AuthPattern;
import cn.quantgroup.xyqb.model.UserAuthorizedParam;
import cn.quantgroup.xyqb.service.auth.IUserAuthorizedService;
import com.ctrip.framework.apollo.spring.config.ApolloPropertySourceInitializer;
import demo.BaseParametersTest;
import lombok.extern.slf4j.Slf4j;
import org.junit.Assert;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.MethodSorters;
import org.junit.runners.Parameterized;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Arrays;
import java.util.Collection;
import java.util.Optional;
/**
* 业务层测试用例
* @author renwc
* @date 2018-01-05
*/
@Slf4j
@Rollback(true)
@Transactional(rollbackFor = Exception.class)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
@RunWith(value = Parameterized.class)
@SpringBootTest(classes = Bootstrap.class)
@ContextConfiguration(initializers = ApolloPropertySourceInitializer.class)
public class UserAuthorizedServiceTest extends BaseParametersTest {
@Resource
private IUserAuthorizedService userAuthorizedService;
private UserAuthorizedParam obj = new UserAuthorizedParam();
public UserAuthorizedServiceTest(String userUuid, String idNo, String name, AuthPattern authPattern, Boolean available) {
obj.setUserUuid(userUuid);
obj.setIdNo(idNo);
obj.setName(name);
obj.setAuthPattern(Optional.ofNullable(authPattern).orElse(AuthPattern.ZMXY).name());
}
@Parameterized.Parameters
public static Collection<Object[]> data() {
Object[][] data = new Object[][]{
{"55544ae9-a1dd-458b-a7ac-2b4e64e59f99","350504198805144101","史书一", AuthPattern.ZMXY, true},
{"2f7715f1-e59e-4169-8214-89aef11d2291","350504198805144102","史书二", AuthPattern.ZMXY, true},
{"7addad2f-100b-49fa-ac44-bb729dfca06e","350504198805144103","史书三", AuthPattern.FOUR_ELEMENTS_OF_BANK_CARD, true},
{"2dae9875-71ba-47bd-9332-0e4922f75f12", "IDNO-1", "王-1", AuthPattern.ZMXY, true}
};
return Arrays.asList(data);
}
@Test
public void testExist() throws Exception {
log.info("testExist: name:{}, idNo:{}, userId:{}, authPattern:{}", obj.getName(), obj.getIdNo(), obj.getUserUuid(), obj.getAuthPattern());
Boolean exist = userAuthorizedService.hasUserAuthorized(this.obj.getIdNo());
Assert.assertFalse(exist);
}
@Test
public void testSave() throws Exception {
log.info("testSave: name:{}, idNo:{}, userId:{}, authPattern:{}", obj.getName(), obj.getIdNo(), obj.getUserUuid(), obj.getAuthPattern());
UserAuthorized o = userAuthorizedService.createUserAuthorized(this.obj);
Assert.assertNotNull(o);
Assert.assertEquals(obj.getIdNo(), o.getIdNo());
}
@Test
public void testThenQuery(){
log.info("testQuery: name:{}, idNo:{}, userId:{}, authPattern:{}", obj.getName(), obj.getIdNo(), obj.getUserUuid(), obj.getAuthPattern());
Object o = userAuthorizedService.getUserAuthorizedId(this.obj.getUserUuid());
Assert.assertNotNull(o);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment