From ca8e89d46a92b567aa9af2c32ea2951d1e60ca6c Mon Sep 17 00:00:00 2001
From: peternameyakj <908253177@qq.com>
Date: Thu, 29 Aug 2024 15:47:04 +0800
Subject: [PATCH] 合并ICO
---
src/main/java/org/example/ssmico/demos/web/util/DateUtils.java | 4 +
src/main/java/org/example/ssmico/demos/web/controller/IcoOrderController.java | 7 +-
src/main/java/org/example/ssmico/demos/web/controller/IcoNewCurrencyController.java | 56 +++++++++++++-----
src/main/java/org/example/ssmico/demos/web/vo/IcoNewCurrencyVo.java | 66 ++++++++++++++++++++++
pom.xml | 10 +-
5 files changed, 120 insertions(+), 23 deletions(-)
diff --git a/pom.xml b/pom.xml
index 9733cb1..518732c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -121,11 +121,6 @@
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>com.beust</groupId>
- <artifactId>jcommander</artifactId>
- <version>1.76</version>
- </dependency>
- <dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.76</version>
@@ -145,6 +140,11 @@
<artifactId>httpclient</artifactId>
<version>4.5.13</version>
</dependency>
+ <dependency>
+ <groupId>org.modelmapper</groupId>
+ <artifactId>modelmapper</artifactId>
+ <version>2.4.5</version> <!-- 使用最新版本 -->
+ </dependency>
</dependencies>
<dependencyManagement>
<dependencies>
diff --git a/src/main/java/org/example/ssmico/demos/web/controller/IcoNewCurrencyController.java b/src/main/java/org/example/ssmico/demos/web/controller/IcoNewCurrencyController.java
index 4e17667..8362028 100644
--- a/src/main/java/org/example/ssmico/demos/web/controller/IcoNewCurrencyController.java
+++ b/src/main/java/org/example/ssmico/demos/web/controller/IcoNewCurrencyController.java
@@ -5,24 +5,19 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.example.ssmico.demos.web.entity.IcoNewCurrency;
import org.example.ssmico.demos.web.service.IcoNewCurrencySerivce;
-import org.example.ssmico.demos.web.service.IcoOrderService;
-import org.example.ssmico.demos.web.util.GoogleTranslateUtil;
-import org.example.ssmico.demos.web.util.PageList;
+import org.example.ssmico.demos.web.util.DateUtils;
import org.example.ssmico.demos.web.util.ResultObject;
import org.example.ssmico.demos.web.util.ServerResponse;
+import org.example.ssmico.demos.web.vo.IcoNewCurrencyVo;
+import org.modelmapper.ModelMapper;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.ApplicationContext;
-import org.springframework.context.support.ClassPathXmlApplicationContext;
-import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.CrossOrigin;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.web.servlet.ModelAndView;
+import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
+
+import static cn.hutool.json.XMLTokener.entity;
/**
* @program: dabao
@@ -39,13 +34,23 @@
/**
* 新币添加
- * @param icoNewCurrency
+ * @param icoNewCurrencyVo
* @return
*/
@ResponseBody
@RequestMapping(value = "/add.action", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
- public ServerResponse add(IcoNewCurrency icoNewCurrency) {
+ public ServerResponse add(@RequestBody IcoNewCurrencyVo icoNewCurrencyVo) {
try {
+ IcoNewCurrency icoNewCurrency = new ModelMapper().map(icoNewCurrencyVo, IcoNewCurrency.class);
+ if(StringUtils.isNotBlank(icoNewCurrencyVo.getListingTime())){
+ icoNewCurrency.setListingTime(DateUtils.toDateHms(icoNewCurrencyVo.getListingTime()));
+ }
+ if(StringUtils.isNotBlank(icoNewCurrencyVo.getApplicationStartTime())){
+ icoNewCurrency.setApplicationStartTime(DateUtils.toDateHms(icoNewCurrencyVo.getApplicationStartTime()));
+ }
+ if(StringUtils.isNotBlank(icoNewCurrencyVo.getApplicationEndTime())){
+ icoNewCurrency.setApplicationEndTime(DateUtils.toDateHms(icoNewCurrencyVo.getApplicationEndTime()));
+ }
long count = icoNewCurrencySerivce.count(new LambdaQueryWrapper<IcoNewCurrency>()
.eq(IcoNewCurrency::getTokenCode,icoNewCurrency.getTokenCode()).eq(IcoNewCurrency::getType,icoNewCurrency.getType()));
@@ -130,13 +135,23 @@
/**
* 修改ico
- * @param icoNewCurrency
+ * @param icoNewCurrencyVo
* @return
*/
@ResponseBody
@RequestMapping(value = "/update.action", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
- public ServerResponse update(IcoNewCurrency icoNewCurrency,HttpServletRequest request) {
+ public ServerResponse update(@RequestBody IcoNewCurrencyVo icoNewCurrencyVo) {
try {
+ IcoNewCurrency icoNewCurrency = new ModelMapper().map(icoNewCurrencyVo, IcoNewCurrency.class);
+ if(StringUtils.isNotBlank(icoNewCurrencyVo.getListingTime())){
+ icoNewCurrency.setListingTime(DateUtils.toDateHms(icoNewCurrencyVo.getListingTime()));
+ }
+ if(StringUtils.isNotBlank(icoNewCurrencyVo.getApplicationStartTime())){
+ icoNewCurrency.setApplicationStartTime(DateUtils.toDateHms(icoNewCurrencyVo.getApplicationStartTime()));
+ }
+ if(StringUtils.isNotBlank(icoNewCurrencyVo.getApplicationEndTime())){
+ icoNewCurrency.setApplicationEndTime(DateUtils.toDateHms(icoNewCurrencyVo.getApplicationEndTime()));
+ }
long count = icoNewCurrencySerivce.count(new LambdaQueryWrapper<IcoNewCurrency>()
.eq(IcoNewCurrency::getTokenCode,icoNewCurrency.getTokenCode())
.ne(IcoNewCurrency::getId, icoNewCurrency.getId())
@@ -152,6 +167,17 @@
}
/**
+ * 获取ICO
+ * @param id
+ * @return
+ */
+ @ResponseBody
+ @RequestMapping(value = "/getById.action", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
+ public ServerResponse<IcoNewCurrency> getById(String id) {
+ return ServerResponse.createBySuccess(icoNewCurrencySerivce.getById(id));
+ }
+
+ /**
* 删除ico
* @param id
* @return
diff --git a/src/main/java/org/example/ssmico/demos/web/controller/IcoOrderController.java b/src/main/java/org/example/ssmico/demos/web/controller/IcoOrderController.java
index 6f48e88..8268fee 100644
--- a/src/main/java/org/example/ssmico/demos/web/controller/IcoOrderController.java
+++ b/src/main/java/org/example/ssmico/demos/web/controller/IcoOrderController.java
@@ -221,6 +221,10 @@
if (null == order) {
return ServerResponse.createByErrorMsg("当前订单不存在");
}
+ IcoNewCurrency icoNewCurrency = icoNewCurrencyMapper.selectById(order.getIcoNewCurrencyId());
+ if(new Date().getTime() >= icoNewCurrency.getListingTime().getTime()){
+ return ServerResponse.createByErrorMsg("该币已经上市不能操作中签");
+ }
//判断是认购还是配售
if(order.getOrderType() == 2){
@@ -234,9 +238,6 @@
if(null == tWallet){
return ServerResponse.createByErrorMsg("资金账户不存在");
}
-
- IcoNewCurrency icoNewCurrency = icoNewCurrencyMapper.selectById(order.getIcoNewCurrencyId());
-
//配售总价
Double totalPlacingPrice = icoNewCurrency.getIssuePrice()*order.getLotteryQuantity();
//中签总价
diff --git a/src/main/java/org/example/ssmico/demos/web/util/DateUtils.java b/src/main/java/org/example/ssmico/demos/web/util/DateUtils.java
index 28b8bea..1fa12cb 100644
--- a/src/main/java/org/example/ssmico/demos/web/util/DateUtils.java
+++ b/src/main/java/org/example/ssmico/demos/web/util/DateUtils.java
@@ -58,6 +58,10 @@
return toDate(string, DEFAULT_DATE_FORMAT);
}
+ public static Date toDateHms(String string) {
+ return toDate(string, NORMAL_DATE_FORMAT);
+ }
+
public static Date toDate(String string, String pattern) {
return toDate(string, pattern, TimeZone.getTimeZone(DEFAULT_TIME_ZONE));
}
diff --git a/src/main/java/org/example/ssmico/demos/web/vo/IcoNewCurrencyVo.java b/src/main/java/org/example/ssmico/demos/web/vo/IcoNewCurrencyVo.java
new file mode 100644
index 0000000..f527fd2
--- /dev/null
+++ b/src/main/java/org/example/ssmico/demos/web/vo/IcoNewCurrencyVo.java
@@ -0,0 +1,66 @@
+package org.example.ssmico.demos.web.vo;
+
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class IcoNewCurrencyVo {
+ private Integer id;
+
+ /**
+ * 新币名称
+ */
+ private String newCoinName;
+
+ /**
+ * 代币代码
+ */
+ private String tokenCode;
+
+ /**
+ * 发行价
+ */
+ private Double issuePrice;
+
+ /**
+ * 上架状态(0.下架 1.上架)
+ */
+ private Integer listingStatus;
+
+ /**
+ * 类型(1.申购,2.配售)
+ */
+ private Integer type;
+
+ /**
+ * 上市时间
+ */
+ private String listingTime;
+
+ /**
+ * 创建时间
+ */
+ private String createTime;
+
+ /**
+ * 修改时间
+ */
+ private String modifyTime;
+
+ /**
+ * 申购开始时间
+ */
+ private String applicationStartTime;
+
+ /**
+ * 申购结束时间
+ */
+ private String applicationEndTime;
+
+ /**
+ * 交易队
+ */
+ private String tradingPair;
+}
+
--
Gitblit v1.9.3