记得上下班打卡 | git大法好,push需谨慎

Commit 7e481444 authored by 张国柄's avatar 张国柄

+mq

parent d3aeb1f9
package com.liquidnet.service.adam.constant;
/**
* @author Li Chen
* @date 2020-11-04 14:02
*/
public class AdamRedisConstants {
public static final String ADAM = "adam";
public static final String USER_CONFIRM_SMS_CODE_KEY = ADAM + ":user:sms_confirm:";
public static final String USER_EMAIL_CONFIRM_KEY = ADAM + ":user:email:confirm:";
public static final String USER_EMAIL_UPDATE_KEY = ADAM + ":user:email:update:";
public static final String USER_PASSWORD_FORGET_KEY = ADAM + ":user:password:forget:";
public static final String USER_PASSWORD_ERROR_KEY = ADAM + ":user:password:error:";
public static final String CONVERSION_SEND_CONFIRM_KEY = ADAM + ":conversion:send_confirm:";
public static final String WALLET_LOCK = ADAM + "_wallet_lock_";
public static final String FUNDING_LOCK = ADAM + "_funding_lock_";
public static final String PAYOUT_LOCK = ADAM + "_payout_lock_";
public static final String USER_LOGIN_TIME_OUT_KEY = ADAM + ":user:login:timeout:";
public static final String USER_LOGIN_TOKEN_ITEM_EMAIL_CHANGE = "emailChangeFlag";
public static final String USER_LOGIN_KEY = ADAM + ":user:login:";
public static final String USER_LOGIN_ITEM_TOKEN = "token";
public static final String USER_LOGIN_ITEM_PERMIT = "permit";
}
package com.liquidnet.service.adam.constant;
public class AdamSysSequenceConstants {
public static final String SEQ_TRANSACTION_NUMBER = "SEQ_TRANSACTION_NUMBER";
}
......@@ -16,6 +16,6 @@ public class AdamEntersParam implements java.io.Serializable {
private Integer type;
@ApiModelProperty(position = 13, required = true, value = "入场人证件号[11]", example = "110101110001010111")
private String idCard;
@ApiModelProperty(position = 13, required = true, value = "是否是默认入场人:0-否,1-是", allowableValues = "0,1")
@ApiModelProperty(position = 14, required = true, value = "是否是默认入场人:0-否,1-是", allowableValues = "0,1")
private Boolean isDefault;
}
package com.liquidnet.service.adam.dto.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel(value = "AdamEntersVo", description = "入场人")
@Data
public class AdamEntersVo implements java.io.Serializable {
private static final long serialVersionUID = 5258094625450569125L;
@ApiModelProperty(position = 10, value = "入场人名称[50]")
private String name;
@ApiModelProperty(position = 11, value = "入场人手机号[11]")
private String mobile;
@ApiModelProperty(position = 12, value = "证件类型:1-大陆身份证,2-港澳通行证,3-台胞证,4-护照,5-军官证")
private Integer type;
@ApiModelProperty(position = 13, value = "入场人证件号[11]")
private String idCard;
@ApiModelProperty(position = 14, value = "是否是默认入场人:0-否,1-是")
private Boolean isDefault;
}
package com.liquidnet.service.adam.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.adam.dto.vo.AdamEntersVo;
import com.liquidnet.service.adam.entity.AdamEnters;
import java.util.List;
/**
* <p>
* 入场人 服务类
......@@ -12,7 +15,9 @@ import com.liquidnet.service.adam.entity.AdamEnters;
* @since 2021-04-28
*/
public interface IAdamEntersService extends IService<AdamEnters> {
List<AdamEntersVo> list(String uid);
boolean add(AdamEnters info);
AdamEnters query(Integer id);
AdamEnters query(String entersId);
}
......@@ -24,6 +24,8 @@ public class AdamEnters implements Serializable {
@TableId(value = "mid", type = IdType.AUTO)
private Integer mid;
private String entersId;
/**
* 用户id
*/
......
......@@ -101,7 +101,7 @@ create table adam_enters
(
mid int unsigned auto_increment primary key,
# `user_id` int(11) NOT NULL DEFAULT '0' COMMENT '用户id',
enters_id varchar(64) not null comment,
enters_id varchar(64) not null,
uid varchar(64) not null comment '用户id',
type tinyint not null default '1' comment '1-大陆身份证,2-港澳通行证,3-台胞证,4-护照,5-军官证',
name varchar(50) not null default '' comment '入场人名称',
......@@ -115,6 +115,8 @@ create table adam_enters
deleted_at datetime,
comment text
) engine = InnoDB comment ='入场人';
create unique index uidx_adam_enters_id on adam_enters (enters_id);
create index idx_adam_enters_uid on adam_enters (uid);
-- >>------------------------------------------------------------------------------------
drop table if exists adam_addresses;
......
......@@ -2,7 +2,7 @@ package com.liquidnet.service.adam.constant;
import com.liquidnet.common.exception.constant.ErrorCode;
public class AdamUserConstants {
public class AdamUserConst {
public enum UserAuthTypeEnum {
EMAIL,
......
package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.ResponseDto;
import com.liquidnet.service.adam.dto.AdamEntersParam;
import com.liquidnet.service.adam.entity.AdamEnters;
import com.liquidnet.service.adam.service.IAdamEntersService;
import com.liquidnet.service.adam.dto.vo.AdamEntersVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.AmqpException;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.amqp.rabbit.annotation.Exchange;
import org.springframework.amqp.rabbit.annotation.Queue;
import org.springframework.amqp.rabbit.annotation.QueueBinding;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
......@@ -29,8 +37,35 @@ import java.time.LocalDateTime;
public class AdamEntersController {
@Autowired
IAdamEntersService adamEntersService;
@Autowired
AmqpTemplate amqpTemplate;
@ApiOperationSupport(order = 0)
@ApiOperation(value = "Producer")
@PostMapping("producer")
public ResponseDto<Object> producer() {
try {
amqpTemplate.convertAndSend("queue_test", "queue_key", "select * from x " + System.currentTimeMillis());
} catch (AmqpException e) {
e.printStackTrace();
}
return ResponseDto.success();
}
@ApiOperationSupport(order = 1)
@ApiOperation(value = "入场人列表")
@PostMapping("list")
public ResponseDto<AdamEntersVo> list() {
// TODO: 2021/4/29 获取登录用户ID
String uid = "1";
return null;
}
@ApiOperationSupport(order = 2)
@ApiOperation(value = "添加入场人")
@PostMapping("add")
public ResponseDto<Object> add(@RequestBody AdamEntersParam parameter) {
......@@ -39,6 +74,7 @@ public class AdamEntersController {
AdamEnters addInfo = new AdamEnters();
BeanUtils.copyProperties(parameter, addInfo);
addInfo.setEntersId(String.valueOf(IDGenerator.nextSnowId()));
addInfo.setCreatedAt(LocalDateTime.now());
addInfo.setState(1);
......@@ -46,12 +82,12 @@ public class AdamEntersController {
return adamEntersService.add(addInfo) ? ResponseDto.success() : ResponseDto.failure();
}
@ApiOperationSupport(order = 2)
@ApiOperationSupport(order = 3)
@ApiOperation(value = "入场人详情")
@PostMapping("query/{id}")
public ResponseDto<Object> query(@PathVariable int id) {
public ResponseDto<Object> query(@PathVariable(name = "id") String entersId) {
// TODO: 2021/4/28 校验
return ResponseDto.success(adamEntersService.query(id));
return ResponseDto.success(adamEntersService.query(entersId));
}
}
package com.liquidnet.service.adam.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.service.adam.constant.AdamRedisConst;
import com.liquidnet.service.adam.dto.vo.AdamEntersVo;
import com.liquidnet.service.adam.entity.AdamEnters;
import com.liquidnet.service.adam.mapper.AdamEntersMapper;
import com.liquidnet.service.adam.service.IAdamEntersService;
......@@ -8,11 +11,12 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
/**
* <p>
......@@ -26,6 +30,19 @@ import java.util.Collections;
public class AdamEntersServiceImpl extends ServiceImpl<AdamEntersMapper, AdamEnters> implements IAdamEntersService {
@Autowired
MongoTemplate mongoTemplate;
@Autowired
RedisUtil redisUtil;
@Override
public List<AdamEntersVo> list(String uid) {
List<AdamEntersVo> voList = null;
voList = (List<AdamEntersVo>) redisUtil.hget(AdamRedisConst.INFO_ENTERS, uid);
// mongoTemplate.find(Query.query(Criteria.where()))
return voList;
}
@Override
public boolean add(AdamEnters info) {
......@@ -41,13 +58,13 @@ public class AdamEntersServiceImpl extends ServiceImpl<AdamEntersMapper, AdamEnt
}
@Override
public AdamEnters query(Integer id) {
public AdamEnters query(String entersId) {
AdamEnters info = null;
// TODO: 2021/4/28 REDIS:QUERY
info = mongoTemplate.findOne(Query.query(Criteria.where("state").is(id)), AdamEnters.class, AdamEnters.class.getSimpleName());
info = mongoTemplate.findOne(Query.query(Criteria.where("entersId").is(entersId)), AdamEnters.class, AdamEnters.class.getSimpleName());
return info;
}
......
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>liquidnet-bus-service</artifactId>
<groupId>com.liquidnet</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>liquidnet-service-consumer</artifactId>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
</project>
\ No newline at end of file
package com.liquidnet.service;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.core.env.Environment;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.PlatformTransactionManager;
import javax.sql.DataSource;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Arrays;
@Slf4j
@SpringBootApplication(scanBasePackages = {"com.liquidnet"})
public class ServiceConsumerApplication implements CommandLineRunner {
@Autowired
private Environment environment;
public static void main(String[] args) {
SpringApplication.run(ServiceConsumerApplication.class, args);
}
@Override
public void run(String... strings) throws Exception {
try {
log.info("\n----------------------------------------------------------\n\t" +
"Application '{}' is running! Access URLs:\n\t" +
"Local: \t\thttp://127.0.0.1:{}\n\t" +
"External: \thttp://{}:{}{}/doc.html\n\t" +
"Profile(s): \t{}\n----------------------------------------------------------",
environment.getProperty("spring.application.name"),
environment.getProperty("server.port"),
InetAddress.getLocalHost().getHostAddress(),
environment.getProperty("server.port"),
environment.getProperty("server.servlet.context-path"),
Arrays.toString(environment.getActiveProfiles()));
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
}
package com.liquidnet.service.consumer.service.processor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.*;
import org.springframework.stereotype.Component;
/**
* ConsumerProcessor.class
*
* @author zhanggb
* Created by IntelliJ IDEA at 2021/4/29
*/
@Slf4j
@Component
public class ConsumerProcessor {
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange("queue_test"),
key = "queue_key",
value = @Queue("queue_adam")
))
@RabbitHandler
public void consumerSql(Message message) {
log.info("consumer sql:{}", message);
}
}
......@@ -31,7 +31,8 @@
<module>liquidnet-api-feign</module>
<module>liquidnet-service-adam</module>
<module>liquidnet-service-kylin</module>
<!-- <module>liquidnet-service-example</module>-->
<module>liquidnet-service-consumer</module>
<!-- <module>liquidnet-service-example</module>-->
<!-- <module>liquidnet-service-sequence</module>-->
<!-- <module>liquidnet-service-account</module>-->
<!-- <module>liquidnet-service-bank</module>-->
......
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