Skip to content

Commit 38df267

Browse files
committed
refactoring and minor fixes.
1 parent 448fddc commit 38df267

File tree

11 files changed

+60
-82
lines changed

11 files changed

+60
-82
lines changed

BankApplicationBackend/src/main/java/com/demo/bankapp/assembler/TransactionResourceAssembler.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,15 @@
99

1010
import com.demo.bankapp.controller.TransactionController;
1111
import com.demo.bankapp.model.Transaction;
12-
import com.demo.bankapp.request.MakeTransactionRequest;
1312

1413
@Component
1514
public class TransactionResourceAssembler implements ResourceAssembler<Transaction, Resource<Transaction>> {
1615

1716
@Override
1817
public Resource<Transaction> toResource(Transaction transaction) {
19-
20-
MakeTransactionRequest mtRequest = new MakeTransactionRequest();
21-
2218
return new Resource<>(transaction,
23-
linkTo(methodOn(TransactionController.class).createTransaction(mtRequest)).withSelfRel()
24-
// linkTo(methodOn(TransactionController.class).findAll()).withRel("transactions")
19+
linkTo(methodOn(TransactionController.class).createTransaction(null)).withSelfRel(),
20+
linkTo(methodOn(TransactionController.class).findAll(null)).withRel("transactions")
2521
);
2622
}
2723

BankApplicationBackend/src/main/java/com/demo/bankapp/assembler/TransferResourceAssembler.java

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,23 +9,13 @@
99

1010
import com.demo.bankapp.controller.TransferController;
1111
import com.demo.bankapp.model.Transfer;
12-
import com.demo.bankapp.request.MakeTransferRequest;
1312

1413
@Component
1514
public class TransferResourceAssembler implements ResourceAssembler<Transfer, Resource<Transfer>> {
1615

1716
@Override
1817
public Resource<Transfer> toResource(Transfer transfer) {
19-
20-
MakeTransferRequest mtRequest = new MakeTransferRequest();
21-
mtRequest.setSenderUsername(transfer.getFromUserId().toString());
22-
mtRequest.setReceiverTcno(transfer.getToUserId().toString());
23-
mtRequest.setCurrency(transfer.getCurrency());
24-
mtRequest.setAmount(transfer.getAmount());
25-
26-
return new Resource<>(transfer, linkTo(methodOn(TransferController.class).makeTransfer(mtRequest)).withSelfRel()
27-
// linkTo(methodOn(TransactionController.class).findAll()).withRel("transactions")
28-
);
18+
return new Resource<>(transfer, linkTo(methodOn(TransferController.class).createTransfer(null)).withSelfRel());
2919
}
3020

3121
}

BankApplicationBackend/src/main/java/com/demo/bankapp/assembler/UserResourceAssembler.java

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,22 +9,15 @@
99

1010
import com.demo.bankapp.controller.UserController;
1111
import com.demo.bankapp.model.User;
12-
import com.demo.bankapp.request.CreateNewUserRequest;
1312

1413
@Component
1514
public class UserResourceAssembler implements ResourceAssembler<User, Resource<User>> {
1615

1716
@Override
1817
public Resource<User> toResource(User user) {
19-
20-
CreateNewUserRequest cnuRequest = new CreateNewUserRequest();
21-
cnuRequest.setUsername(user.getUsername());
22-
cnuRequest.setTcno(user.getTcno());
23-
cnuRequest.setPassword(user.getPassword());
24-
2518
return new Resource<>(user,
26-
linkTo(methodOn(UserController.class).createNewUser(cnuRequest)).withSelfRel(),
27-
linkTo(methodOn(UserController.class).findAll()).withRel("users")
28-
);
19+
linkTo(methodOn(UserController.class).createNewUser(null)).withSelfRel(),
20+
linkTo(methodOn(UserController.class).findAll()).withRel("users"),
21+
linkTo(methodOn(UserController.class).login(null)).withRel("login"));
2922
}
3023
}
Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,21 @@
11
package com.demo.bankapp.assembler;
22

3+
import static org.springframework.hateoas.mvc.ControllerLinkBuilder.linkTo;
4+
import static org.springframework.hateoas.mvc.ControllerLinkBuilder.methodOn;
5+
36
import org.springframework.hateoas.Resource;
47
import org.springframework.hateoas.ResourceAssembler;
58
import org.springframework.stereotype.Component;
69

10+
import com.demo.bankapp.controller.WealthController;
711
import com.demo.bankapp.model.Wealth;
812

913
@Component
1014
public class WealthResourceAssembler implements ResourceAssembler<Wealth, Resource<Wealth>> {
1115

1216
@Override
13-
public Resource<Wealth> toResource(Wealth user) {
14-
15-
// CreateNewUserRequest cnuRequest = new CreateNewUserRequest();
16-
// cnuRequest.setUsername(user.getUsername());
17-
// cnuRequest.setTcno(user.getTcno());
18-
// cnuRequest.setPassword(user.getPassword());
19-
20-
return new Resource<>(user
21-
// linkTo(methodOn(UserController.class).createNewUser(cnuRequest)).withSelfRel(),
22-
// linkTo(methodOn(UserController.class).findAll()).withRel("users")
23-
);
17+
public Resource<Wealth> toResource(Wealth wealth) {
18+
return new Resource<>(wealth,
19+
linkTo(methodOn(WealthController.class).retrieveWealth(null)).withSelfRel());
2420
}
2521
}

BankApplicationBackend/src/main/java/com/demo/bankapp/controller/TransferController.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public class TransferController {
4242
TransferResourceAssembler assembler;
4343

4444
@PostMapping("/create")
45-
public Resource<Transfer> makeTransfer(@RequestBody MakeTransferRequest request) {
45+
public Resource<Transfer> createTransfer(@RequestBody MakeTransferRequest request) {
4646

4747
if (request == null || request.getCurrency() == null || request.getCurrency().equals("")) {
4848
throw new BadRequestException();
@@ -87,7 +87,7 @@ public Resource<Transfer> makeTransfer(@RequestBody MakeTransferRequest request)
8787
}
8888

8989
private BigDecimal getTryEquivalent(Map<String, Double> currencyRates, String currency, BigDecimal amount) {
90-
BigDecimal transferCurrRate = new BigDecimal(currencyRates.get(currency));
90+
BigDecimal transferCurrRate = BigDecimal.valueOf(currencyRates.get(currency));
9191
return amount.divide(transferCurrRate, 9, RoundingMode.HALF_UP);
9292
}
9393

@@ -98,7 +98,7 @@ private void checkDailyTransferLimitExceedition(Map<String, Double> currencyRate
9898
BigDecimal rate;
9999
BigDecimal tryEquivalent;
100100
for (Transfer transfer : last24HourTransfers) {
101-
rate = new BigDecimal(currencyRates.get(transfer.getCurrency()));
101+
rate = BigDecimal.valueOf(currencyRates.get(transfer.getCurrency()));
102102
tryEquivalent = transfer.getAmount().divide(rate, 9, RoundingMode.HALF_UP);
103103

104104
transferTryEquivalent = transferTryEquivalent.add(tryEquivalent);

BankApplicationBackend/src/main/java/com/demo/bankapp/controller/UserController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public Resource<User> createNewUser(@RequestBody CreateNewUserRequest request) {
5656
throw new BadRequestException("Invalid TC No.");
5757
}
5858

59-
User user = userService.addNewUser(request);
59+
User user = userService.createNewUser(new User(request.getUsername(), request.getPassword(), request.getTcno()));
6060
wealthService.newWealthRecord(user.getId());
6161

6262
return assembler.toResource(user);

BankApplicationBackend/src/main/java/com/demo/bankapp/service/abstractions/IUserService.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import java.util.List;
44

55
import com.demo.bankapp.model.User;
6-
import com.demo.bankapp.request.CreateNewUserRequest;
76
import com.demo.bankapp.request.LoginRequest;
87

98
public interface IUserService {
@@ -14,7 +13,7 @@ public interface IUserService {
1413

1514
User findByTcno(String tcno);
1615

17-
User addNewUser(CreateNewUserRequest request);
16+
User createNewUser(User user);
1817

1918
User login(LoginRequest request);
2019

BankApplicationBackend/src/main/java/com/demo/bankapp/service/concretions/UserService.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import com.demo.bankapp.exception.UserNotFoundException;
1010
import com.demo.bankapp.model.User;
1111
import com.demo.bankapp.repository.UserRepository;
12-
import com.demo.bankapp.request.CreateNewUserRequest;
1312
import com.demo.bankapp.request.LoginRequest;
1413
import com.demo.bankapp.service.abstractions.IUserService;
1514

@@ -25,13 +24,12 @@ public List<User> findAll() {
2524
}
2625

2726
@Override
28-
public User addNewUser(CreateNewUserRequest request) {
29-
User user = new User(request.getUsername(), request.getPassword(), request.getTcno());
27+
public User createNewUser(User user) {
3028
return repository.save(user);
3129
}
3230

3331
@Override
34-
public User login(LoginRequest request) throws UserNotFoundException {
32+
public User login(LoginRequest request) {
3533

3634
User user = findByUserName(request.getUsername());
3735

BankApplicationBackend/src/main/java/com/demo/bankapp/service/concretions/WealthService.java

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,22 @@ public class WealthService implements IWealthService {
2222
@Autowired
2323
private WealthRepository repository;
2424

25+
@Override
26+
public void newWealthRecord(Long userId) {
27+
28+
Map<String, BigDecimal> wealthMap = new HashMap<>();
29+
30+
Map<String, Double> currencyMap = getCurrencyRates();
31+
for (Map.Entry<String, Double> entry : currencyMap.entrySet()) {
32+
wealthMap.put(entry.getKey(), BigDecimal.ZERO);
33+
}
34+
35+
addInitialBalance(wealthMap);
36+
37+
Wealth userWealth = new Wealth(userId, wealthMap);
38+
repository.save(userWealth);
39+
}
40+
2541
@Override
2642
public void makeWealthExchange(Long userId, String currency, BigDecimal amount, boolean isBuying) {
2743

@@ -32,7 +48,7 @@ public void makeWealthExchange(Long userId, String currency, BigDecimal amount,
3248
throw new BadRequestException("Invalid currency.");
3349
}
3450

35-
BigDecimal rate = new BigDecimal(getCurrencyRates().get(currency));
51+
BigDecimal rate = BigDecimal.valueOf(getCurrencyRates().get(currency));
3652
BigDecimal tryEquivalent = amount.divide(rate, 9, RoundingMode.HALF_UP);
3753

3854
if (isBuying) {
@@ -81,22 +97,6 @@ public void makeWealthTransaction(Long userId, String currency, BigDecimal amoun
8197
repository.save(userWealth);
8298
}
8399

84-
@Override
85-
public void newWealthRecord(Long userId) {
86-
87-
Map<String, BigDecimal> wealthMap = new HashMap<>();
88-
89-
Map<String, Double> currencyMap = getCurrencyRates();
90-
for (Map.Entry<String, Double> entry : currencyMap.entrySet()) {
91-
wealthMap.put(entry.getKey(), BigDecimal.ZERO);
92-
}
93-
94-
addInitialBalance(wealthMap);
95-
96-
Wealth userWealth = new Wealth(userId, wealthMap);
97-
repository.save(userWealth);
98-
}
99-
100100
@Override
101101
public Wealth findWealth(Long userId) {
102102
return repository.findById(userId).orElseThrow(() -> new UserNotFoundException());
@@ -114,7 +114,7 @@ private void addInitialBalance(Map<String, BigDecimal> wealthMap) {
114114
String currency = "TRY";
115115

116116
BigDecimal currentAmount = wealthMap.get(currency);
117-
BigDecimal amountToAdd = new BigDecimal(13000);
117+
BigDecimal amountToAdd = new BigDecimal(130000);
118118
BigDecimal finalAmount = currentAmount.add(amountToAdd);
119119

120120
wealthMap.put(currency, finalAmount);

BankApplicationFrontend/src/components/MoneyBar/MoneyBar.js

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,17 +74,25 @@ class MoneyBar extends React.Component {
7474
if (this.state.ownedCurrencies == null) {
7575
return null;
7676
} else if (Object.keys(this.state.ownedCurrencies).length === 0) {
77-
return <Alert className="text-center" variant="primary">Possessions make you rich? Your richness is life, forever.</Alert>
77+
return <AlertBar barMessage={'Possessions make you rich? Your richness is life, forever.'} />
7878
} else {
7979
const barMessage = Object.keys(this.state.ownedCurrencies).map((keyName, index, array) => (
8080
<NumberFormat key={keyName} value={this.state.ownedCurrencies[keyName]} displayType={'text'} thousandSeparator={true}
8181
suffix={" " + keyName + ((array.length - 1) != index ? ", " : ".")} />))
8282

83-
return <Alert className="text-center" variant="primary">
84-
{barMessage}
85-
</Alert>
83+
return <AlertBar prefix={'You have'} barMessage={barMessage} />
8684
}
8785
}
8886
}
8987

88+
class AlertBar extends React.Component {
89+
render() {
90+
return (
91+
<Alert className="text-center" variant="primary">
92+
{this.props.prefix} {this.props.barMessage}
93+
</Alert>
94+
)
95+
}
96+
}
97+
9098
export default connect(mapStateToProps, mapDispatchToProps)(MoneyBar);

BankApplicationFrontend/src/components/PopupDialog/PopupDialog.js

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -31,18 +31,16 @@ class PopupDialog extends React.Component {
3131
render() {
3232

3333
return (
34-
<div>
35-
<Modal show={this.props.usingAsWidget ? true : this.props.show} onHide={this.props.onClose}>
36-
<Modal.Header closeButton>
37-
<Modal.Title>{this.props.titleEnum == 0 ? "Error" : this.props.titleEnum == 1 ? "Warning" : "Success"}</Modal.Title>
38-
</Modal.Header>
39-
<Modal.Body>{this.props.message}</Modal.Body>
40-
<Modal.Footer>
41-
{this.props.callback ? <Button variant="secondary" onClick={this.props.onClose}>No</Button> : null}
42-
<Button variant="primary" onClick={this.onCloseDialog}>{this.props.callback ? 'Yes' : 'Okay'}</Button>
43-
</Modal.Footer>
44-
</Modal>
45-
</div>
34+
<Modal show={this.props.show} onHide={this.props.onClose}>
35+
<Modal.Header closeButton>
36+
<Modal.Title>{this.props.titleEnum == 0 ? "Error" : this.props.titleEnum == 1 ? "Warning" : "Success"}</Modal.Title>
37+
</Modal.Header>
38+
<Modal.Body>{this.props.message}</Modal.Body>
39+
<Modal.Footer>
40+
{this.props.callback ? <Button variant="secondary" onClick={this.props.onClose}>No</Button> : null}
41+
<Button variant="primary" onClick={this.onCloseDialog}>{this.props.callback ? 'Yes' : 'Okay'}</Button>
42+
</Modal.Footer>
43+
</Modal>
4644
);
4745
}
4846
}

0 commit comments

Comments
 (0)