twelve_stock实体

This commit is contained in:
zhanghuilong
2024-05-30 11:10:30 +08:00
parent 59a0480be0
commit a12000f99e
14 changed files with 478 additions and 3 deletions

View File

@@ -0,0 +1,49 @@
package cn.stock.market.infrastructure.db.po;
import static com.querydsl.core.types.PathMetadataFactory.*;
import com.querydsl.core.types.dsl.*;
import com.querydsl.core.types.PathMetadata;
import javax.annotation.Generated;
import com.querydsl.core.types.Path;
/**
* QTwelveStockPO is a Querydsl query type for TwelveStockPO
*/
@Generated("com.querydsl.codegen.EntitySerializer")
public class QTwelveStockPO extends EntityPathBase<TwelveStockPO> {
private static final long serialVersionUID = -100071895L;
public static final QTwelveStockPO twelveStockPO = new QTwelveStockPO("twelveStockPO");
public final NumberPath<Integer> id = createNumber("id", Integer.class);
public final NumberPath<Integer> isLock = createNumber("isLock", Integer.class);
public final NumberPath<Integer> isShow = createNumber("isShow", Integer.class);
public final DateTimePath<java.util.Date> saveTime = createDateTime("saveTime", java.util.Date.class);
public final StringPath stockCode = createString("stockCode");
public final StringPath stockName = createString("stockName");
public final StringPath stockType = createString("stockType");
public QTwelveStockPO(String variable) {
super(TwelveStockPO.class, forVariable(variable));
}
public QTwelveStockPO(Path<? extends TwelveStockPO> path) {
super(path.getType(), path.getMetadata());
}
public QTwelveStockPO(PathMetadata metadata) {
super(TwelveStockPO.class, metadata);
}
}

View File

@@ -0,0 +1,35 @@
package cn.stock.market.application.assembler;
import cn.qutaojing.common.utils.Beans;
import cn.qutaojing.common.utils.SpringUtils;
import cn.stock.market.domain.basic.entity.TwelveStock;
import cn.stock.market.dto.TwelveStockDTO;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component;
/**
* TwelveStockAssembler
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@Component
@Lazy
public class TwelveStockAssembler {
public TwelveStockDTO toDTO(TwelveStock e) {
TwelveStockDTO dto = Beans.mapper(e, TwelveStockDTO.class);
if(dto == null) return dto;
fill(e, dto);
return dto;
}
protected void fill(TwelveStock e, TwelveStockDTO dto) {
if(dto == null) return;
return;
}
public static TwelveStockAssembler of() {
return SpringUtils.getBean(TwelveStockAssembler.class);
}
}

View File

@@ -0,0 +1,23 @@
package cn.stock.market.domain.basic.convert;
import cn.qutaojing.common.domain.convert.SimpleEntityPOConvert;
import cn.qutaojing.common.utils.SpringUtils;
import cn.stock.market.domain.basic.entity.TwelveStock;
import cn.stock.market.infrastructure.db.po.TwelveStockPO;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component;
/**
* TwelveStockConvert
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@Component
@Lazy
public class TwelveStockConvert extends SimpleEntityPOConvert<TwelveStock, TwelveStockPO> {
public static TwelveStockConvert of() {
return SpringUtils.getBean(TwelveStockConvert.class);
}
}

View File

@@ -0,0 +1,28 @@
package cn.stock.market.domain.basic.entity;
import cn.qutaojing.common.utils.Beans;
import cn.stock.market.dto.command.TwelveStockCreateCommand;
import cn.stock.market.infrastructure.db.po.TwelveStockPO;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* TwelveStock
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@Data
@NoArgsConstructor
@SuperBuilder
@EqualsAndHashCode(
callSuper = false
)
public class TwelveStock extends TwelveStockPO {
public void update(TwelveStockCreateCommand cmd) {
Beans.copyProperties(cmd, this);
}
}

View File

@@ -0,0 +1,28 @@
package cn.stock.market.domain.basic.factory;
import cn.qutaojing.common.utils.SpringUtils;
import cn.stock.market.domain.basic.entity.TwelveStock;
import cn.stock.market.dto.command.TwelveStockCreateCommand;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component;
/**
* TwelveStockFactory
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@Component
@Lazy
public class TwelveStockFactory {
public static TwelveStockFactory of() {
return SpringUtils.getBean(TwelveStockFactory.class);
}
public TwelveStock from(TwelveStockCreateCommand cmd) {
TwelveStock e = TwelveStock.builder().build();
e.update(cmd);
return e;
}
}

View File

@@ -0,0 +1,46 @@
package cn.stock.market.domain.basic.repository;
import cn.qutaojing.common.domain.convert.IEntityPOConvert;
import cn.qutaojing.common.domain.respostory.SimplePoConvertEntityRepository;
import cn.qutaojing.common.utils.SpringUtils;
import cn.stock.market.domain.basic.convert.TwelveStockConvert;
import cn.stock.market.domain.basic.entity.TwelveStock;
import cn.stock.market.infrastructure.db.po.TwelveStockPO;
import cn.stock.market.infrastructure.db.repo.TwelveStockRepo;
import com.rp.spring.jpa.GenericJpaRepository;
import java.lang.Integer;
import java.lang.Override;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
/**
* TwelveStockRepository
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@Repository
@RequiredArgsConstructor(
onConstructor = @__(@Autowired)
)
public class TwelveStockRepository extends SimplePoConvertEntityRepository<TwelveStock, TwelveStockPO, Integer> {
final TwelveStockRepo repo;
final TwelveStockConvert convert;
@Override
public GenericJpaRepository<TwelveStockPO, Integer> repo() {
return repo;
}
@Override
public IEntityPOConvert<TwelveStock, TwelveStockPO> convert() {
return convert;
}
public static TwelveStockRepository of() {
return SpringUtils.getBean(TwelveStockRepository.class);
}
}

View File

@@ -0,0 +1,33 @@
package cn.stock.market.domain.basic.service;
import cn.qutaojing.common.utils.SpringUtils;
import cn.stock.market.domain.basic.factory.TwelveStockFactory;
import cn.stock.market.domain.basic.repository.TwelveStockRepository;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* TwelveStockService
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@Service
@RequiredArgsConstructor(
onConstructor = @__(@Autowired)
)
public class TwelveStockService {
final TwelveStockRepository repository;
final TwelveStockFactory factory;
public TwelveStockRepository repository() {
return repository;
}
public static TwelveStockService of() {
return SpringUtils.getBean(TwelveStockService.class);
}
}

View File

@@ -0,0 +1,23 @@
package cn.stock.market.dto;
import cn.stock.market.infrastructure.db.po.TwelveStockPO;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* TwelveStockDTO
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@Data
@NoArgsConstructor
@SuperBuilder
@EqualsAndHashCode(
callSuper = false
)
public class TwelveStockDTO extends TwelveStockPO {
}

View File

@@ -0,0 +1,48 @@
package cn.stock.market.dto.command;
import java.lang.Integer;
import java.lang.String;
import java.util.Date;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* TwelveStockCreateCommand
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@Data
@SuperBuilder
@NoArgsConstructor
public class TwelveStockCreateCommand {
/**
* 主键 */
Integer id;
/**
* 股票code */
String stockCode;
/**
* 股票名称 */
String stockName;
/**
* BSE or NSE */
String stockType;
/**
* 保存时间 */
Date saveTime;
/**
* 是否锁定 0否 1是 */
Integer isLock;
/**
* 是否展示 0是 1否 */
Integer isShow;
}

View File

@@ -0,0 +1,24 @@
package cn.stock.market.dto.command;
import java.lang.Integer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* TwelveStockModifyCommand
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@Data
@SuperBuilder
@NoArgsConstructor
@EqualsAndHashCode(
callSuper = false
)
public class TwelveStockModifyCommand extends TwelveStockCreateCommand {
Integer id;
}

View File

@@ -0,0 +1,66 @@
package cn.stock.market.infrastructure.db.po;
import java.lang.Integer;
import java.lang.String;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
/**
* TwelveStockPO
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
@SuperBuilder
@Data
@NoArgsConstructor
@AllArgsConstructor
@Entity
@DynamicInsert
@DynamicUpdate
@Table(
name = "twelve_stock"
)
public class TwelveStockPO {
/**
* 主键 */
@Id
@GeneratedValue(
strategy = javax.persistence.GenerationType.IDENTITY
)
Integer id;
/**
* 股票code */
String stockCode;
/**
* 股票名称 */
String stockName;
/**
* BSE or NSE */
String stockType;
/**
* 保存时间 */
Date saveTime;
/**
* 是否锁定 0否 1是 */
Integer isLock;
/**
* 是否展示 0是 1否 */
Integer isShow;
}

View File

@@ -0,0 +1,15 @@
package cn.stock.market.infrastructure.db.repo;
import cn.stock.market.infrastructure.db.po.TwelveStockPO;
import com.rp.spring.jpa.GenericJpaRepository;
import java.lang.Integer;
/**
* TwelveStockRepo
*
* @author rplees
* @email rplees.i.ly@gmail.com
* @created 2024/05/30
*/
public interface TwelveStockRepo extends GenericJpaRepository<TwelveStockPO, Integer> {
}

View File

@@ -0,0 +1,57 @@
package cn.stock.market.web;
import cn.hutool.core.date.DateUtil;
import cn.stock.market.MoneyStockSuggestDTO;
import cn.stock.market.domain.basic.entity.MoneyStock;
import cn.stock.market.domain.basic.repository.MoneyStockRepository;
import cn.stock.market.dto.StockHistoryRequest;
import cn.stock.market.dto.StockHistoryResponse;
import cn.stock.market.infrastructure.db.po.QMoneyStockPO;
import cn.stock.market.utils.RequestCacheUtils;
import cn.stock.market.utils.ServerResponse;
import cn.stock.market.web.annotations.EncryptFilter;
import com.alibaba.fastjson.JSONObject;
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import com.google.common.collect.Lists;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpMethod;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;
import java.io.IOException;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.TimeUnit;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Collectors;
/**
* twelvedata数据源接口
*/
@RestController
@Api(value = "/TwelveApiController", tags = "twelvedata股票行情")
@Slf4j
public class TwelveApiController {
}

View File

@@ -31,9 +31,9 @@ public class JpaDDDGen {
*/
public static DataSource getMySQLDataSource() {
MysqlDataSource mysqlDS = new MysqlDataSource();
mysqlDS.setURL("jdbc:mysql://43.132.212.180:33306/india_stock?useUnicode=true&characterEncoding=utf-8");
mysqlDS.setURL("jdbc:mysql://149.88.86.7:33306/india_stock?useUnicode=true&characterEncoding=utf-8");
mysqlDS.setUser("root");
mysqlDS.setPassword("33BsUUcnXRYgwt");
mysqlDS.setPassword("33BsUUcnXRYgwtIND");
return mysqlDS;
}
@@ -50,7 +50,7 @@ public class JpaDDDGen {
/**
* cs_statistic - 要生成的数据库表
*/
Cons.tableNameToEntiyMapping.put("money_stock", null);
Cons.tableNameToEntiyMapping.put("twelve_stock", null);
ToolDDD.g(getMySQLDataSource().getConnection());
}