Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
J
java-training-project-final
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Gopi Ayinala Ayinala
java-training-project-final
Commits
ccb7a3d5
Commit
ccb7a3d5
authored
Jul 29, 2022
by
Muhammad Abdul Qadeer Farooqui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
jsonsent through controller
parent
add30782
Changes
22
Show whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
273 additions
and
70 deletions
+273
-70
pom.xml
customer-service/pom.xml
+10
-0
CustomerController.java
...va/com/qadeer/customer/controller/CustomerController.java
+18
-2
CustomerDto.java
...ce/src/main/java/com/qadeer/customer/dto/CustomerDto.java
+20
-0
CustomerRequest.java
...rc/main/java/com/qadeer/customer/dto/CustomerRequest.java
+17
-0
FeignService.java
...src/main/java/com/qadeer/customer/feign/FeignService.java
+8
-4
CustomerMapper.java
.../main/java/com/qadeer/customer/mapper/CustomerMapper.java
+10
-0
CustomerService.java
...ain/java/com/qadeer/customer/service/CustomerService.java
+9
-3
InventoryController.java
.../com/qadeer/inventory/controller/InventoryController.java
+13
-3
CustomerDto.java
...e/src/main/java/com/qadeer/inventory/dto/CustomerDto.java
+15
-0
CustomerRequest.java
...c/main/java/com/qadeer/inventory/dto/CustomerRequest.java
+16
-0
Product.java
...ice/src/main/java/com/qadeer/inventory/model/Product.java
+1
-1
ProductRepository.java
...va/com/qadeer/inventory/repository/ProductRepository.java
+1
-1
ProductService.java
...ain/java/com/qadeer/inventory/service/ProductService.java
+37
-38
orders.csv
seller-service/orders.csv
+0
-5
Constant.java
...ce/src/main/java/com/qadeer/seller/constant/Constant.java
+5
-0
SellerController.java
...n/java/com/qadeer/seller/controller/SellerController.java
+11
-0
CustomerDto.java
...vice/src/main/java/com/qadeer/seller/dto/CustomerDto.java
+15
-0
CustomerRequest.java
.../src/main/java/com/qadeer/seller/dto/CustomerRequest.java
+15
-0
FeignService.java
...e/src/main/java/com/qadeer/seller/feign/FeignService.java
+7
-0
Order.java
...-service/src/main/java/com/qadeer/seller/model/Order.java
+25
-0
OrderRepository.java
...in/java/com/qadeer/seller/repository/OrderRepository.java
+7
-0
SellerService.java
...rc/main/java/com/qadeer/seller/service/SellerService.java
+13
-13
No files found.
customer-service/pom.xml
View file @
ccb7a3d5
...
...
@@ -52,6 +52,16 @@
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-validation
</artifactId>
</dependency>
<dependency>
<groupId>
org.mapstruct
</groupId>
<artifactId>
mapstruct
</artifactId>
<version>
1.4.2.Final
</version>
</dependency>
<dependency>
<groupId>
org.mapstruct
</groupId>
<artifactId>
mapstruct-processor
</artifactId>
<version>
1.4.2.Final
</version>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
...
...
customer-service/src/main/java/com/qadeer/customer/controller/CustomerController.java
View file @
ccb7a3d5
package
com
.
qadeer
.
customer
.
controller
;
import
com.qadeer.customer.dto.CustomerDto
;
import
com.qadeer.customer.dto.ProductDto
;
import
com.qadeer.customer.dto.CustomerRequest
;
import
com.qadeer.customer.model.Customer
;
import
com.qadeer.customer.service.CustomerService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpEntity
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.Valid
;
import
java.util.List
;
@RestController
...
...
@@ -25,10 +27,24 @@ public class CustomerController {
@GetMapping
(
"/buy/{productName}/{quantity}"
)
public
ResponseEntity
<
List
<
ProductDto
>>
buy
(
@PathVariable
(
"productName"
)
String
productName
,
@PathVariable
(
"quantity"
)
int
productQuantity
)
{
List
<
ProductDto
>
productDtoList
=
service
.
buyProduct
s
(
productName
,
String
.
valueOf
(
productQuantity
));
List
<
ProductDto
>
productDtoList
=
service
.
buyProduct
ByName
(
productName
,
String
.
valueOf
(
productQuantity
));
return
new
ResponseEntity
<
List
<
ProductDto
>>(
productDtoList
,
HttpStatus
.
OK
);
}
// current
@PostMapping
(
"product/buy/json"
)
public
ResponseEntity
<?>
buyJson
(
@RequestBody
@Valid
CustomerRequest
customerRequest
)
{
List
<
ProductDto
>
products
=
customerRequest
.
getItems
();
CustomerDto
customerDto
=
customerRequest
.
getCustomerDto
();
System
.
out
.
println
(
customerDto
.
toString
());
// for(ProductDto p : products) {
// System.out.println(p.getName() + " " + p.getQuantity());
// }
List
<
ProductDto
>
availableProducts
=
service
.
buyProducts
(
customerRequest
);
return
new
ResponseEntity
<>(
availableProducts
,
HttpStatus
.
OK
);
}
@GetMapping
(
"/product/{id}"
)
public
ResponseEntity
<?>
getProductById
(
@PathVariable
int
id
)
{
ProductDto
productDto
=
service
.
getProductById
(
id
);
...
...
customer-service/src/main/java/com/qadeer/customer/dto/CustomerDto.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
customer
.
dto
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Pattern
;
import
javax.validation.constraints.Positive
;
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
CustomerDto
{
@Positive
private
int
id
;
private
String
name
;
@Pattern
(
regexp
=
"^((\\(\\d{3}\\))|\\d{3})[- .]?\\d{3}[- .]?\\d{4}$"
)
private
String
phoneNo
;
private
String
creditCardNo
;
}
customer-service/src/main/java/com/qadeer/customer/dto/CustomerRequest.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
customer
.
dto
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.validation.annotation.Validated
;
import
java.util.List
;
@Validated
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
CustomerRequest
{
private
CustomerDto
customerDto
;
private
List
<
ProductDto
>
items
;
}
customer-service/src/main/java/com/qadeer/customer/feign/FeignService.java
View file @
ccb7a3d5
package
com
.
qadeer
.
customer
.
feign
;
import
com.qadeer.customer.dto.CustomerRequest
;
import
com.qadeer.customer.dto.ProductDto
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.http.
ResponseEntity
;
import
org.springframework.
web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.
PathVariable
;
import
org.springframework.http.
HttpHeaders
;
import
org.springframework.
http.MediaType
;
import
org.springframework.web.bind.annotation.
*
;
import
java.util.List
;
...
...
@@ -14,6 +16,8 @@ public interface FeignService {
ProductDto
getProductById
(
@PathVariable
int
id
);
@GetMapping
(
"/product/{productName}/{productQuantity}"
)
ResponseEntity
<
List
<
ProductDto
>>
buyProducts
(
@PathVariable
(
"productName"
)
String
productName
,
@PathVariable
(
"productQuantity"
)
String
productQuantity
);
List
<
ProductDto
>
buyProductByName
(
@PathVariable
(
"productName"
)
String
productName
,
@PathVariable
(
"productQuantity"
)
String
productQuantity
);
@PostMapping
(
path
=
"/product/buy/json"
)
List
<
ProductDto
>
buyProducts
(
@RequestBody
CustomerRequest
customerRequest
);
}
customer-service/src/main/java/com/qadeer/customer/mapper/CustomerMapper.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
customer
.
mapper
;
import
com.qadeer.customer.dto.CustomerDto
;
import
com.qadeer.customer.model.Customer
;
import
org.mapstruct.Mapper
;
@Mapper
(
componentModel
=
"spring"
)
public
interface
CustomerMapper
{
CustomerDto
entityToDto
(
Customer
customer
);
}
customer-service/src/main/java/com/qadeer/customer/service/CustomerService.java
View file @
ccb7a3d5
package
com
.
qadeer
.
customer
.
service
;
import
com.qadeer.customer.dto.CustomerRequest
;
import
com.qadeer.customer.dto.ProductDto
;
import
com.qadeer.customer.feign.FeignService
;
import
com.qadeer.customer.repository.CustomerRepository
;
...
...
@@ -19,9 +20,14 @@ public class CustomerService {
@Autowired
private
FeignService
feignService
;
public
List
<
ProductDto
>
buyProducts
(
String
productName
,
String
productQuantity
)
{
ResponseEntity
<
List
<
ProductDto
>>
productDto
=
feignService
.
buyProducts
(
productName
,
productQuantity
);
return
productDto
.
getBody
();
public
List
<
ProductDto
>
buyProductByName
(
String
productName
,
String
productQuantity
)
{
List
<
ProductDto
>
productDto
=
feignService
.
buyProductByName
(
productName
,
productQuantity
);
return
productDto
;
}
public
List
<
ProductDto
>
buyProducts
(
CustomerRequest
customerRequest
)
{
List
<
ProductDto
>
products
=
feignService
.
buyProducts
(
customerRequest
);
return
products
;
}
public
ProductDto
getProductById
(
int
id
)
{
...
...
inventory-service/src/main/java/com/qadeer/inventory/controller/InventoryController.java
View file @
ccb7a3d5
package
com
.
qadeer
.
inventory
.
controller
;
import
com.qadeer.inventory.dto.CustomerDto
;
import
com.qadeer.inventory.dto.CustomerRequest
;
import
com.qadeer.inventory.model.Product
;
import
com.qadeer.inventory.service.ProductService
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -9,7 +11,10 @@ import org.springframework.web.bind.annotation.*;
import
org.springframework.web.multipart.MultipartFile
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@RestController
@RequestMapping
(
"/inventory"
)
...
...
@@ -36,9 +41,14 @@ public class InventoryController {
}
@GetMapping
(
"/product/{productName}/{productQuantity}"
)
public
ResponseEntity
<?>
buyProduct
s
(
@PathVariable
(
"productName"
)
String
productName
,
@PathVariable
(
"productQuantity"
)
int
productQuantity
)
{
List
<
Product
>
productList
=
service
.
buyProducts
(
productName
,
productQuantity
);
return
new
ResponseEntity
<
List
<
Product
>>(
productLis
t
,
HttpStatus
.
OK
);
public
ResponseEntity
<?>
buyProduct
ByName
(
@PathVariable
(
"productName"
)
String
productName
,
@PathVariable
(
"productQuantity"
)
int
productQuantity
)
{
Product
product
=
service
.
buyProductByName
(
productName
,
productQuantity
);
return
new
ResponseEntity
<
>(
produc
t
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/product/buy/json"
)
public
ResponseEntity
<?>
buyProducts
(
@RequestBody
CustomerRequest
customerRequest
)
{
List
<
Product
>
requestedProducts
=
service
.
buyProducts
(
customerRequest
);
return
new
ResponseEntity
<>(
requestedProducts
,
HttpStatus
.
OK
);
}
}
inventory-service/src/main/java/com/qadeer/inventory/dto/CustomerDto.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
inventory
.
dto
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
CustomerDto
{
private
int
id
;
private
String
name
;
private
String
phoneNo
;
private
String
creditCardNo
;
}
inventory-service/src/main/java/com/qadeer/inventory/dto/CustomerRequest.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
inventory
.
dto
;
import
com.qadeer.inventory.model.Product
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.util.List
;
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
CustomerRequest
{
private
List
<
Product
>
items
;
private
CustomerDto
customerDto
;
}
inventory-service/src/main/java/com/qadeer/inventory/model/Product.java
View file @
ccb7a3d5
...
...
@@ -15,7 +15,7 @@ import javax.persistence.Id;
@NoArgsConstructor
public
class
Product
{
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
@GeneratedValue
(
strategy
=
GenerationType
.
AUTO
)
private
int
id
;
private
String
name
;
private
int
price
;
...
...
inventory-service/src/main/java/com/qadeer/inventory/repository/ProductRepository.java
View file @
ccb7a3d5
...
...
@@ -8,5 +8,5 @@ import java.util.List;
@Repository
public
interface
ProductRepository
extends
JpaRepository
<
Product
,
Integer
>
{
List
<
Product
>
findByName
(
String
productName
);
Product
findByName
(
String
productName
);
}
inventory-service/src/main/java/com/qadeer/inventory/service/ProductService.java
View file @
ccb7a3d5
package
com
.
qadeer
.
inventory
.
service
;
import
com.qadeer.inventory.dto.CustomerRequest
;
import
com.qadeer.inventory.model.Product
;
import
com.qadeer.inventory.repository.ProductRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -10,9 +11,7 @@ import java.io.BufferedReader;
import
java.io.IOException
;
import
java.io.InputStreamReader
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Service
public
class
ProductService
{
...
...
@@ -51,42 +50,42 @@ public class ProductService {
return
productList
;
}
public
List
<
Product
>
buyProducts
(
String
productName
,
int
requiredQuant
)
{
List
<
Product
>
productList
=
repository
.
findByName
(
productName
);
List
<
Product
>
myProducts
=
new
ArrayList
<>();
int
requiredProducts
=
0
;
for
(
Product
product:
productList
)
{
if
(
product
.
getQuantity
()
>=
requiredQuant
)
{
public
Product
buyProductByName
(
String
productName
,
int
requiredQuantity
)
{
Product
product
=
repository
.
findByName
(
productName
);
int
restockQuantity
=
0
;
Product
productRequested
=
new
Product
();
if
(
product
.
getQuantity
()
>=
requiredQuantity
)
{
// create copy of product object.
Product
deliverProduct
=
new
Product
();
deliverProduct
.
setId
(
product
.
getId
());
deliverProduct
.
setName
(
product
.
getName
());
deliverProduct
.
setPrice
(
product
.
getPrice
());
deliverProduct
.
setQuantity
(
requiredQuant
);
myProducts
.
add
(
deliverProduct
);
product
.
setQuantity
(
product
.
getQuantity
()
-
requiredQuant
);
productRequested
.
setId
(
product
.
getId
());
productRequested
.
setName
(
product
.
getName
());
productRequested
.
setPrice
(
product
.
getPrice
());
productRequested
.
setQuantity
(
requiredQuantity
);
product
.
setQuantity
(
product
.
getQuantity
()
-
requiredQuantity
);
repository
.
save
(
product
);
}
else
if
(
product
.
getQuantity
()
>
0
&&
product
.
getQuantity
()
<
requiredQuant
){
requiredProducts
=
requiredQuant
-
product
.
getQuantity
();
else
if
(
product
.
getQuantity
()
>
0
&&
product
.
getQuantity
()
<
requiredQuantity
){
restockQuantity
=
requiredQuantity
-
product
.
getQuantity
();
// create copy of product object.
Product
deliverProduct
=
new
Product
();
deliverProduct
.
setId
(
product
.
getId
());
deliverProduct
.
setName
(
product
.
getName
());
deliverProduct
.
setPrice
(
product
.
getPrice
());
deliverProduct
.
setQuantity
(
product
.
getQuantity
());
System
.
out
.
println
(
requiredProducts
);
myProducts
.
add
(
deliverProduct
);
productRequested
.
setId
(
product
.
getId
());
productRequested
.
setName
(
product
.
getName
());
productRequested
.
setPrice
(
product
.
getPrice
());
productRequested
.
setQuantity
(
product
.
getQuantity
());
product
.
setQuantity
(
0
);
repository
.
save
(
product
);
}
else
{
myProducts
.
add
(
null
)
;
return
productRequested
;
}
public
List
<
Product
>
buyProducts
(
CustomerRequest
customerRequest
)
{
List
<
Product
>
productDtoList
=
customerRequest
.
getItems
();
System
.
out
.
println
(
customerRequest
);
List
<
Product
>
requestedProducts
=
new
ArrayList
<>();
for
(
Product
p
:
productDtoList
)
{
Product
product
=
buyProductByName
(
p
.
getName
(),
p
.
getQuantity
());
requestedProducts
.
add
(
product
);
}
return
my
Products
;
return
requested
Products
;
}
Map
<
String
,
ProductDto
>
productMap
=
new
HashMap
<>();
List
<
ProductDto
>
productDtoList
=
(
List
<
ProductDto
>)
productMap
.
values
();
repository
.
saveAll
(
productDtoList
);
}
seller-service/orders.csv
View file @
ccb7a3d5
id=11, name='Cheese', price=120, quantity=0 28/Jul/2022 20:20:30
id=12, name='Cream', price=250, quantity=5 28/Jul/2022 20:20:31
id=13, name='Shortbread', price=200, quantity=0 28/Jul/2022 20:20:33
id=14, name='Sprite', price=230, quantity=5 28/Jul/2022 20:20:34
id=15, name='Vinegar', price=400, quantity=3 28/Jul/2022 20:20:34
seller-service/src/main/java/com/qadeer/seller/constant/Constant.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
seller
.
constant
;
public
class
Constant
{
public
static
final
String
FILE_PATH
=
"/Users/aqadeer/Desktop/java-training-project-final/seller-service/orders.csv"
;
}
seller-service/src/main/java/com/qadeer/seller/controller/SellerController.java
View file @
ccb7a3d5
package
com
.
qadeer
.
seller
.
controller
;
import
com.qadeer.seller.dto.CustomerRequest
;
import
com.qadeer.seller.dto.ProductDto
;
import
com.qadeer.seller.feign.FeignService
;
import
com.qadeer.seller.model.Seller
;
import
com.qadeer.seller.service.SellerService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpEntity
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
@RestController
@RequestMapping
(
"/seller"
)
public
class
SellerController
{
...
...
@@ -33,7 +39,12 @@ public class SellerController {
public
ResponseEntity
<?>
getProductById
(
@PathVariable
int
id
)
{
ProductDto
productDto
=
service
.
getProductById
(
id
);
return
ResponseEntity
.
ok
(
productDto
);
}
@PostMapping
(
"/product/buy/json"
)
public
ResponseEntity
<?>
buyProducts
(
@RequestBody
CustomerRequest
customerRequest
)
{
List
<
ProductDto
>
productDtoList
=
service
.
buyProducts
(
customerRequest
);
return
new
ResponseEntity
<>(
productDtoList
,
HttpStatus
.
OK
);
}
}
seller-service/src/main/java/com/qadeer/seller/dto/CustomerDto.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
seller
.
dto
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
CustomerDto
{
private
int
id
;
private
String
name
;
private
String
phoneNo
;
private
String
creditCardNo
;
}
seller-service/src/main/java/com/qadeer/seller/dto/CustomerRequest.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
seller
.
dto
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.util.List
;
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
CustomerRequest
{
private
CustomerDto
customerDto
;
private
List
<
ProductDto
>
items
;
}
seller-service/src/main/java/com/qadeer/seller/feign/FeignService.java
View file @
ccb7a3d5
package
com
.
qadeer
.
seller
.
feign
;
import
com.qadeer.seller.dto.CustomerRequest
;
import
com.qadeer.seller.dto.ProductDto
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
java.util.List
;
@FeignClient
(
name
=
"inventory-api"
,
url
=
"http://localhost:8083/inventory"
)
public
interface
FeignService
{
...
...
@@ -11,4 +16,6 @@ public interface FeignService {
@GetMapping
(
"/product/{id}"
)
ProductDto
getProductById
(
@PathVariable
int
id
);
@PostMapping
(
"/product/buy/json"
)
List
<
ProductDto
>
buyProducts
(
@RequestBody
CustomerRequest
customerRequest
);
}
seller-service/src/main/java/com/qadeer/seller/model/Order.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
seller
.
model
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.persistence.Entity
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.GenerationType
;
import
javax.persistence.Id
;
@Entity
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
Order
{
@GeneratedValue
(
strategy
=
GenerationType
.
AUTO
)
@Id
private
int
id
;
private
int
customerId
;
private
int
sellerId
;
private
String
productName
;
private
int
productPrice
;
private
int
productQuantity
;
}
seller-service/src/main/java/com/qadeer/seller/repository/OrderRepository.java
0 → 100644
View file @
ccb7a3d5
package
com
.
qadeer
.
seller
.
repository
;
import
com.qadeer.seller.model.Order
;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
OrderRepository
extends
JpaRepository
<
Order
,
Integer
>
{
}
seller-service/src/main/java/com/qadeer/seller/service/SellerService.java
View file @
ccb7a3d5
package
com
.
qadeer
.
seller
.
service
;
import
com.qadeer.seller.dto.CustomerRequest
;
import
com.qadeer.seller.dto.ProductDto
;
import
com.qadeer.seller.feign.FeignService
;
import
com.qadeer.seller.model.Seller
;
...
...
@@ -7,44 +8,37 @@ import com.qadeer.seller.repository.SellerRepository;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.io.BufferedWriter
;
import
java.io.File
;
import
java.io.FileWriter
;
import
java.io.IOException
;
import
java.nio.file.Files
;
import
java.nio.file.Paths
;
import
java.nio.file.StandardOpenOption
;
import
java.time.LocalDateTime
;
import
java.time.LocalTime
;
import
java.time.format.DateTimeFormatter
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
static
java
.
awt
.
SystemColor
.
text
;
import
static
com
.
qadeer
.
seller
.
constant
.
Constant
.
FILE_PATH
;
@Service
public
class
SellerService
{
@Autowired
private
SellerRepository
r
epository
;
private
SellerRepository
sellerR
epository
;
@Autowired
private
FeignService
feignService
;
String
path
=
"/Users/aqadeer/Desktop/java-training-project-final/seller-service/orders.csv"
;
FileWriter
fw
=
new
FileWriter
(
path
);
FileWriter
fw
=
new
FileWriter
(
FILE_PATH
);
public
SellerService
()
throws
IOException
{
}
public
void
saveProduct
(
Seller
seller
){
r
epository
.
save
(
seller
);
sellerR
epository
.
save
(
seller
);
};
public
Seller
getProduct
(
int
id
)
{
return
r
epository
.
findById
(
id
).
get
();
return
sellerR
epository
.
findById
(
id
).
get
();
}
public
ProductDto
getProductById
(
int
id
)
{
...
...
@@ -62,7 +56,7 @@ public class SellerService {
LocalDateTime
now
=
LocalDateTime
.
now
();
String
myTime
=
dtf
.
format
(
now
);
String
text
=
productDto
.
toString
()
+
" "
+
myTime
+
"\n"
;
Files
.
write
(
Paths
.
get
(
path
),
text
.
getBytes
(),
StandardOpenOption
.
APPEND
);
Files
.
write
(
Paths
.
get
(
FILE_PATH
),
text
.
getBytes
(),
StandardOpenOption
.
APPEND
);
// bw = new BufferedWriter(fw);
// bw.append(productDto.toString());
}
catch
(
IOException
e
)
{
...
...
@@ -73,4 +67,10 @@ public class SellerService {
}
}
public
List
<
ProductDto
>
buyProducts
(
CustomerRequest
customerRequest
)
{
List
<
ProductDto
>
productDtoList
=
feignService
.
buyProducts
(
customerRequest
);
return
productDtoList
;
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment