This commit is contained in:
@@ -44,6 +44,7 @@ public enum MessageCode {
|
||||
FILE_IS_NOT_PROTECTED(0, "File is not protected"),
|
||||
TARIFF_IS_ADD(0, "Tariff is added"),
|
||||
TARIFF_IS_DELETED(0, "Tariff is deleted"),
|
||||
TARIFF_IS_NOT_DELETED(0, "Tariff is not deleted,use some users"),
|
||||
TARIFF_IS_UPDATED(0, "Tariff is updated"),
|
||||
TARIFF_IS_NOT_FOUND(0, "Tariff is not found"),
|
||||
VALIDATION_ERROR(2, "Validation error"),
|
||||
|
||||
@@ -91,6 +91,12 @@ public class TariffHandler implements RequestHandler {
|
||||
.tariffType(tariff.getType())
|
||||
.build();
|
||||
|
||||
if (tariffService.existTariffInfoByTariffId(tariffRequest.getId())) {
|
||||
return new BaseResponse(request.getMsgId(), MessageCode.TARIFF_IS_NOT_DELETED.getCode(),
|
||||
MessageCode.TARIFF_IS_NOT_DELETED.getDescription(),
|
||||
tariffResponse);
|
||||
}
|
||||
|
||||
tariffService.deleteTariff(tariffRequest.getId());
|
||||
|
||||
return new BaseResponse(request.getMsgId(), MessageCode.TARIFF_IS_DELETED.getCode(),
|
||||
|
||||
@@ -15,6 +15,8 @@ public interface TariffInfoRepository extends JpaRepository<TariffInfo, String>
|
||||
@Query("SELECT t FROM TariffInfo t WHERE t.autoRenewal = true AND t.endTariff <= :date")
|
||||
List<TariffInfo> findForAutoRenewal(@Param("date") LocalDateTime date);
|
||||
|
||||
Boolean existsByTariffId(Long tariffId);
|
||||
|
||||
@Query("""
|
||||
SELECT COUNT(u.Id)
|
||||
FROM User u
|
||||
|
||||
@@ -10,6 +10,7 @@ import ru.soune.nocopy.entity.tarif.TariffTimeTerm;
|
||||
import ru.soune.nocopy.entity.tarif.TariffType;
|
||||
import ru.soune.nocopy.entity.user.User;
|
||||
import ru.soune.nocopy.exception.TariffNotFoundException;
|
||||
import ru.soune.nocopy.repository.TariffInfoRepository;
|
||||
import ru.soune.nocopy.repository.TariffRepository;
|
||||
|
||||
import java.util.List;
|
||||
@@ -21,6 +22,8 @@ public class TariffService {
|
||||
|
||||
private final TariffRepository tariffRepository;
|
||||
|
||||
private final TariffInfoRepository tariffInfoRepository;
|
||||
|
||||
public void addTariff(String tariffName, double price, String type, int tokens, long diskSize, long maxUsers,
|
||||
int maxFilesCount, String tariffTerm, String description) {
|
||||
Tariff tariff = new Tariff();
|
||||
@@ -46,6 +49,10 @@ public class TariffService {
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
public Boolean existTariffInfoByTariffId(Long id) {
|
||||
return tariffInfoRepository.existsByTariffId(id);
|
||||
}
|
||||
|
||||
public List<TariffDTO> getTariffByAccountTypeAndTariffTerm(User user, TariffTimeTerm tariffTerm) {
|
||||
String typeAccount = user.canManageCompanySettings() ? "b2b": "b2c";
|
||||
|
||||
@@ -120,7 +127,7 @@ public class TariffService {
|
||||
if (tariffRequest.getName() != null) {
|
||||
tariff.setName(tariffRequest.getName());
|
||||
}
|
||||
if (tariffRequest.getPrice() != null) { // null = не обновляем
|
||||
if (tariffRequest.getPrice() != null) {
|
||||
tariff.setPrice(tariffRequest.getPrice());
|
||||
}
|
||||
if (tariffRequest.getTokens() != null) {
|
||||
|
||||
Reference in New Issue
Block a user