@@ -116,6 +116,7 @@ public class UserController {
|
||||
.maxFileOnDisk(tariff.getDiskSize())
|
||||
.startTariff(personalTariffInfo.getStartTariff())
|
||||
.endTariff(personalTariffInfo.getEndTariff())
|
||||
.tokens(personalTariffInfo.getTokens() + personalTariffInfo.getBoughtTokens())
|
||||
.build();
|
||||
|
||||
userDTO.setTariffInfo(infoDTO);
|
||||
|
||||
@@ -31,6 +31,9 @@ public class TariffInfo {
|
||||
@Column(name = "tokens")
|
||||
private Integer tokens;
|
||||
|
||||
@Column(name = "bought_tokens")
|
||||
private Integer boughtTokens = 0;
|
||||
|
||||
@ManyToOne
|
||||
@JoinColumn(name = "tariff_id")
|
||||
private Tariff tariff;
|
||||
|
||||
@@ -35,6 +35,7 @@ public class TariffInfoService {
|
||||
tariffInfo.setStatus(tariffStatus);
|
||||
tariffInfo.setEndTariff(endTariff);
|
||||
tariffInfo.setTokens(tokens);
|
||||
tariffInfo.setBoughtTokens(0);
|
||||
|
||||
return tariffInfoRepository.save(tariffInfo);
|
||||
}
|
||||
@@ -52,10 +53,15 @@ public class TariffInfoService {
|
||||
}
|
||||
|
||||
Integer tokens = activeTariffInfo.getTokens();
|
||||
Integer boughtTokens = activeTariffInfo.getBoughtTokens();
|
||||
|
||||
if (tokens - value >= 0) {
|
||||
activeTariffInfo.setTokens(activeTariffInfo.getTokens() - value);
|
||||
|
||||
tariffInfoRepository.save(activeTariffInfo);
|
||||
} else if (boughtTokens - value >= 0) {
|
||||
activeTariffInfo.setTokens(activeTariffInfo.getBoughtTokens() - value);
|
||||
|
||||
tariffInfoRepository.save(activeTariffInfo);
|
||||
} else {
|
||||
throw new TariffNotFoundException("User not have tokens for protect");
|
||||
@@ -118,7 +124,8 @@ public class TariffInfoService {
|
||||
tariffInfo.getStartTariff(),
|
||||
tariffInfo.getEndTariff(),
|
||||
tariffInfo.getTariff() != null ? tariffInfo.getTariff().getId() : null,
|
||||
tariffInfo.getTariff() != null ? tariffInfo.getTariff().getName() : null, tariffInfo.getTokens(),
|
||||
tariffInfo.getTariff() != null ? tariffInfo.getTariff().getName() : null,
|
||||
tariffInfo.getTokens() + tariffInfo.getBoughtTokens(),
|
||||
tariffInfo.getTariff().getDiskSize(), 0L, 0,
|
||||
tariffInfo.getTariff().getMaxFilesCount());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user