Files
emo-grab/src/main/java/quant/rich/emoney/entity/postgre/StockStrategy.java
2025-11-16 04:26:20 +08:00

57 lines
1.4 KiB
Java

package quant.rich.emoney.entity.postgre;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 益盟个股策略信息,包含策略类型和日期
*/
@Data
@Accessors(chain=true)
public class StockStrategy {
private String tsCode;
private LocalDateTime date;
private String strategyName;
private Integer strategyId;
private String poolName;
private String type;
private Integer poolId;
public StockStrategy setTsCodeFromGoodsId(Integer goodsId) {
// 自动将益盟 goodsId 转换成 tsCode
// 1301325 -> 301325.SZ
// 600325 -> 600325.SH
// 1920009 -> 920009.BJ
String goodsIdStr = goodsId.toString();
RuntimeException e = new RuntimeException("无法将 goodsId " + goodsIdStr + " 转换为 tsCode");
if (goodsIdStr.length() == 6) {
// SH
return setTsCode(goodsIdStr + ".SH");
}
else if (goodsIdStr.length() == 7) {
if (goodsIdStr.charAt(0) != '1') {
throw e;
}
if (goodsIdStr.charAt(1) == '9') {
// BJ
return setTsCode(goodsIdStr.substring(1) + ".BJ");
}
// SZ
return setTsCode(goodsIdStr.substring(1) + ".SZ");
}
throw e;
}
}