diff --git a/pom.xml b/pom.xml
index 221529c..082be39 100644
--- a/pom.xml
+++ b/pom.xml
@@ -71,6 +71,11 @@
postgresql
runtime
+
+ org.hibernate
+ hibernate-entitymanager
+ 4.3.8.Final
+
org.projectlombok
diff --git a/src/main/java/cryptosky/me/graphql/jpa/entity/BtcPrice.java b/src/main/java/cryptosky/me/graphql/jpa/entity/BtcPrice.java
new file mode 100644
index 0000000..0476e26
--- /dev/null
+++ b/src/main/java/cryptosky/me/graphql/jpa/entity/BtcPrice.java
@@ -0,0 +1,12 @@
+package cryptosky.me.graphql.jpa.entity;
+
+import lombok.*;
+import javax.persistence.*;
+
+@EqualsAndHashCode(callSuper = true)
+@NoArgsConstructor
+@ToString
+@Data
+@Table(name="btc_usd")
+public class BtcPrice extends CryptoPrice {
+}
diff --git a/src/main/java/cryptosky/me/graphql/jpa/entity/CryptoPrice.java b/src/main/java/cryptosky/me/graphql/jpa/entity/CryptoPrice.java
index 0195007..f8d8ba5 100644
--- a/src/main/java/cryptosky/me/graphql/jpa/entity/CryptoPrice.java
+++ b/src/main/java/cryptosky/me/graphql/jpa/entity/CryptoPrice.java
@@ -6,12 +6,12 @@ import javax.persistence.*;
import java.time.LocalDate;
@AllArgsConstructor
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
+@NoArgsConstructor
@ToString
-@Builder
@Data
@EqualsAndHashCode
@Entity
+@Table(name = "crypto_price")
public class CryptoPrice {
@Id
diff --git a/src/main/java/cryptosky/me/graphql/mutation/CryptoPriceMutation.java b/src/main/java/cryptosky/me/graphql/mutation/CryptoPriceMutation.java
index 4f46d56..2a76ab5 100644
--- a/src/main/java/cryptosky/me/graphql/mutation/CryptoPriceMutation.java
+++ b/src/main/java/cryptosky/me/graphql/mutation/CryptoPriceMutation.java
@@ -1,6 +1,7 @@
package cryptosky.me.graphql.mutation;
import com.coxautodev.graphql.tools.GraphQLMutationResolver;
+import cryptosky.me.graphql.jpa.entity.BtcPrice;
import cryptosky.me.graphql.jpa.entity.CryptoPrice;
import cryptosky.me.graphql.service.CryptoPriceService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -12,8 +13,13 @@ public class CryptoPriceMutation implements GraphQLMutationResolver {
@Autowired
private CryptoPriceService cryptoPriceService;
- public CryptoPrice createPrice(final String createdDate, final String type, final float av_price,
- final float h_price, final float l_price, final float c_price, final float volume ) {
- return this.cryptoPriceService.createPrice(createdDate, type, av_price, h_price, l_price, c_price, volume);
+// public CryptoPrice createPrice(final String createdDate, final String type, final float av_price,
+// final float h_price, final float l_price, final float c_price, final float volume ) {
+// return this.cryptoPriceService.createPrice(createdDate, type, av_price, h_price, l_price, c_price, volume);
+// }
+
+ public BtcPrice createBtc(final String createdDate, final String type, final float av_price,
+ final float h_price, final float l_price, final float c_price, final float volume ) {
+ return this.cryptoPriceService.createBtc(createdDate, type, av_price, h_price, l_price, c_price, volume);
}
}
diff --git a/src/main/java/cryptosky/me/graphql/service/CryptoPriceService.java b/src/main/java/cryptosky/me/graphql/service/CryptoPriceService.java
index 82c9cf5..9eccff0 100644
--- a/src/main/java/cryptosky/me/graphql/service/CryptoPriceService.java
+++ b/src/main/java/cryptosky/me/graphql/service/CryptoPriceService.java
@@ -1,5 +1,6 @@
package cryptosky.me.graphql.service;
+import cryptosky.me.graphql.jpa.entity.BtcPrice;
import cryptosky.me.graphql.jpa.entity.CryptoPrice;
import cryptosky.me.graphql.jpa.repository.CryptoPriceRepository;
import org.springframework.stereotype.Service;
@@ -25,22 +26,38 @@ public class CryptoPriceService {
}
@Transactional
- public CryptoPrice createPrice(final String createdDate, final String type, final float av_price,
- final float h_price, final float l_price, final float c_price, final float volume ) {
+ public BtcPrice createBtc(final String createdDate, final String type, final float av_price,
+ final float h_price, final float l_price, final float c_price, final float volume ) {
- final CryptoPrice cryptoPrice = CryptoPrice.builder()
- .timestamp(LocalDate.parse(createdDate, format))
- .type(type)
- .average_price(av_price)
- .high_price(h_price)
- .low_price(l_price)
- .close_price(c_price)
- .volume(volume)
- .build();
+ final BtcPrice btcPrice = new BtcPrice();
+ btcPrice.setTimestamp(LocalDate.parse(createdDate, format));
+ btcPrice.setAverage_price(av_price);
+ btcPrice.setType(type);
+ btcPrice.setHigh_price(h_price);
+ btcPrice.setLow_price(l_price);
+ btcPrice.setClose_price(c_price);
+ btcPrice.setVolume(volume);
- return this.cryptoPriceRepository.save(cryptoPrice);
+ return this.cryptoPriceRepository.save(btcPrice);
}
+// @Transactional
+// public CryptoPrice createPrice(final String createdDate, final String type, final float av_price,
+// final float h_price, final float l_price, final float c_price, final float volume ) {
+//
+// final CryptoPrice cryptoPrice = CryptoPrice.builder()
+// .timestamp(LocalDate.parse(createdDate, format))
+// .type(type)
+// .average_price(av_price)
+// .high_price(h_price)
+// .low_price(l_price)
+// .close_price(c_price)
+// .volume(volume)
+// .build();
+//
+// return this.cryptoPriceRepository.save(cryptoPrice);
+// }
+
@Transactional(readOnly = true)
public List getAllPrices( final int count ) {
return this.cryptoPriceRepository.findAll().stream()
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index a51c10e..c5787cb 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -1,10 +1,10 @@
-server.port=9090
-spring.jpa.database=POSTGRESQL
-spring.datasource.platform=postgres
-spring.datasource.url=jdbc:postgresql://localhost:5432/postgres
-spring.datasource.username=postgres
-spring.datasource.password=root
-spring.jpa.show-sql=true
-spring.jpa.generate-ddl=true
-spring.jpa.hibernate.ddl-auto=create-drop
-spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
\ No newline at end of file
+#server.port=9090
+##spring.jpa.database=POSTGRESQL
+##spring.datasource.platform=postgres
+##spring.datasource.url=jdbc:postgresql://localhost:5432/postgres
+##spring.datasource.username=postgres
+##spring.datasource.password=*****
+##spring.jpa.show-sql=true
+##spring.jpa.generate-ddl=true
+##spring.jpa.hibernate.ddl-auto=create-drop
+##spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
\ No newline at end of file
diff --git a/src/main/resources/graphql/cryptoPriceQL.graphqls b/src/main/resources/graphql/cryptoPriceQL.graphqls
index 12a56b5..094bd3a 100644
--- a/src/main/resources/graphql/cryptoPriceQL.graphqls
+++ b/src/main/resources/graphql/cryptoPriceQL.graphqls
@@ -1,4 +1,4 @@
-type CryptoPrice {
+type BtcPrice {
id: ID!,
timestamp: String!,
type: String,
@@ -10,10 +10,10 @@ type CryptoPrice {
}
type Query {
- allPrices(count: Int):[CryptoPrice],
- allLatest:[CryptoPrice]
+ allPrices(count: Int):[BtcPrice],
+ allLatest:[BtcPrice]
}
type Mutation {
- createPrice(createdDate: String!, type: String!, average_price: Float!, high_price: Float, low_price: Float, close_price: Float, volume: Float):CryptoPrice
+ createBtc(createdDate: String!, type: String!, average_price: Float!, high_price: Float, low_price: Float, close_price: Float, volume: Float):BtcPrice
}
\ No newline at end of file