Рабочая вресия

This commit is contained in:
Mark Struchkov 2020-02-02 18:03:09 +03:00
parent cb0b82045d
commit b33dcd79d2
24 changed files with 59 additions and 58 deletions

View File

@ -24,9 +24,9 @@
<properties>
<gson.ver>2.8.5</gson.ver>
<slf4j.ver>1.7.26</slf4j.ver>
<slf4j.ver>1.7.29</slf4j.ver>
<mail.ver>1.4</mail.ver>
<lombok.ver>1.18.8</lombok.ver>
<lombok.ver>1.18.10</lombok.ver>
<spring.data.jpa.ver>2.1.3.RELEASE</spring.data.jpa.ver>
<javax.persistence.api.ver>2.2</javax.persistence.api.ver>
<validation.api.ver>2.0.1.Final</validation.api.ver>

View File

@ -19,6 +19,6 @@ public class BasicEntity {
@Id
@GeneratedValue
protected Integer id;
protected Long id;
}

View File

@ -14,6 +14,6 @@ import org.sadtech.social.core.utils.Description;
public abstract class Comment extends Message {
@Description("Идентификатор контента, к которому ставлено сообщение")
private Integer contentId;
private Long contentId;
}

View File

@ -22,6 +22,6 @@ public class EmptyMessage extends Message {
@Override
public void setText(String text) {
throw new AppBotException(0, "EmptyMessage no setText");
throw new AppBotException("EmptyMessage no setText");
}
}

View File

@ -40,7 +40,7 @@ public abstract class Message extends BasicEntity {
@NotNull
@Column(name = "person_id")
@Description("Идентификатор пользователя, отправившего сообщение")
private Integer personId;
private Long personId;
@Column(name = "text")
@Description("Текстовое сообщение")

View File

@ -40,7 +40,7 @@ public class Account {
@Column(name = "belongs_person_id")
@Description("Идентификатор пользователя, которому выставлен счет")
private Integer belongsPersonId;
private Long belongsPersonId;
@Column(name = "extinguished_person_id")
@Description("Идентификатор пользователя, который оплатил счет")

View File

@ -6,7 +6,7 @@ package org.sadtech.social.core.exception;
* @author upagge [08/07/2019]
*/
public class AccessException extends AppBotException {
public AccessException(Integer code, String message) {
super(code, message);
public AccessException(String message) {
super(message);
}
}

View File

@ -11,12 +11,15 @@ public class AppBotException extends RuntimeException {
private static final String TYPE = "ERROR";
private final LocalDateTime timeError = LocalDateTime.now();
protected final Integer code;
protected final String description;
protected String description;
public AppBotException(Integer code, String message) {
this.description = message;
this.code = code;
public AppBotException(String message) {
super(message);
}
public AppBotException(String message, String description) {
super(message);
this.description = description;
}
public String getType() {
@ -27,10 +30,6 @@ public class AppBotException extends RuntimeException {
return timeError;
}
public Integer getCode() {
return code;
}
public String getDescription() {
return description;
}

View File

@ -6,7 +6,7 @@ package org.sadtech.social.core.exception;
* @author upagge [11/07/2019]
*/
public class ConfigAppException extends AppBotException {
public ConfigAppException(Integer code, String message) {
super(code, message);
public ConfigAppException(String message) {
super(message);
}
}

View File

@ -8,7 +8,7 @@ package org.sadtech.social.core.exception;
public class MailSendException extends AppBotException {
public MailSendException() {
super(1, "Ошибка отправки сообщения");
super("Ошибка отправки сообщения");
}
}

View File

@ -6,7 +6,9 @@ package org.sadtech.social.core.exception;
* @author upagge [08/07/2019]
*/
public class NotFoundException extends AppBotException {
public NotFoundException(Integer code, String message) {
super(code, message);
public NotFoundException(String message) {
super(message);
}
}

View File

@ -7,8 +7,8 @@ package org.sadtech.social.core.exception;
*/
public class PaymentException extends AppBotException {
public PaymentException(Integer code, String message) {
super(code, message);
public PaymentException(String message) {
super(message);
}
}

View File

@ -8,7 +8,7 @@ package org.sadtech.social.core.exception;
public class TimerSettingException extends AppBotException {
public TimerSettingException(String message) {
super(54, message);
super(message);
}
}

View File

@ -18,7 +18,7 @@ public interface ContentRepository<T extends Message> {
* @param content Объект сообщени
* @return Идентификатор сообщения в хранилище
*/
Integer add(T content);
T add(T content);
/**
* Получить все сообщения за определенный временной диапазон

View File

@ -19,8 +19,8 @@ public class MailRepositoryJpaImpl implements ContentRepository<Mail> {
private final MailRepositoryJpa mailRepositoryJpa;
@Override
public Integer add(Mail content) {
return mailRepositoryJpa.saveAndFlush(content).getId();
public Mail add(Mail content) {
return mailRepositoryJpa.saveAndFlush(content);
}
@Override

View File

@ -22,7 +22,7 @@ public class AccountRepositoryMap implements AccountRepository {
saveMap.put(id, account);
return id++;
} else {
throw new AccessException(312, "Счет " + account.getId() + " уже существует");
throw new AccessException("Счет " + account.getId() + " уже существует");
}
}
@ -33,13 +33,13 @@ public class AccountRepositoryMap implements AccountRepository {
account.setId(accountId);
saveMap.put(accountId, account);
} else {
throw new NotFoundException(491, "Счет " + accountId + " не найден");
throw new NotFoundException("Счет " + accountId + " не найден");
}
}
@Override
public Account findById(Integer accountId) {
return Optional.ofNullable(saveMap.get(accountId)).orElseThrow(() -> new PaymentException(43, "Счет " + accountId + " не найден"));
return Optional.ofNullable(saveMap.get(accountId)).orElseThrow(() -> new PaymentException("Счет " + accountId + " не найден"));
}
private boolean check(Integer id) {

View File

@ -11,14 +11,14 @@ import java.util.Map;
public class BoardCommentRepositoryMap implements ContentRepository<BoardComment> {
private final Map<Integer, BoardComment> saveMap = new HashMap<>();
private Integer count = 0;
private final Map<Long, BoardComment> saveMap = new HashMap<>();
private Long count = 0L;
@Override
public Integer add(BoardComment comment) {
public BoardComment add(BoardComment comment) {
comment.setId(count);
saveMap.put(count, comment);
return count++;
saveMap.put(count++, comment);
return comment;
}
@Override

View File

@ -17,13 +17,13 @@ import java.util.List;
public class MailRepositoryList implements ContentRepository<Mail> {
private final List<Mail> mails = new ArrayList<>();
private Long count = 0L;
@Override
public Integer add(Mail mail) {
int id = mails.size();
mail.setId(id);
public Mail add(Mail mail) {
mail.setId(count++);
mails.add(mail);
return id;
return mail;
}
@Override

View File

@ -35,11 +35,8 @@ public interface MessageService<T extends Message> {
List<T> getLastEventByAddDateTime(LocalDateTime timeFrom, LocalDateTime timeTo);
/**
* Возвращает новые сообщения пользователей по дате добавления в хранилище.
*
* @param now Текущяя дата и время
* @return Последнее сообщение пользователя от последней переданной даты now
* Возвращает новые сообщения от последнего запроса.
*/
List<T> getNewMessage(LocalDateTime now);
List<T> getNewMessage();
}

View File

@ -29,10 +29,10 @@ public class AccountServiceImpl implements AccountService {
} else {
account.setAccountStatus(AccountStatus.EXCEPTION);
accountRepository.edit(accountId, account);
throw new PaymentException(2, "Неверная сумма");
throw new PaymentException("Неверная сумма");
}
} else {
throw new PaymentException(3, "Счет уже оплачен");
throw new PaymentException("Счет уже оплачен");
}
return true;
}

View File

@ -43,12 +43,12 @@ public class BoardCommentServiceImpl implements BoardCommentService {
}
@Override
public List<BoardComment> getNewMessage(LocalDateTime now) {
public List<BoardComment> getNewMessage() {
return null;
}
private List<BoardComment> getBoardComments(List<BoardComment> mails) {
Set<Integer> people = new HashSet<>();
Set<Long> people = new HashSet<>();
List<BoardComment> returnMails = new ArrayList<>();
for (int i = mails.size() - 1; i >= 0; i--) {
if (!people.contains(mails.get(i).getPersonId())) {

View File

@ -59,18 +59,19 @@ public class MailServiceImpl implements MailService {
}
@Override
public List<Mail> getNewMessage(LocalDateTime now) {
public List<Mail> getNewMessage() {
LocalDateTime newData = LocalDateTime.now(Clock.tickSeconds(ZoneId.systemDefault())).plusNanos(999999999);
List<Mail> lastEventByAddDateTime = Collections.emptyList();
if (newMessage) {
lastEventByAddDateTime = getLastEventByAddDateTime(oldDateTime, now);
lastEventByAddDateTime = getLastEventByAddDateTime(oldDateTime, newData);
newMessage = false;
oldDateTime = newData;
}
oldDateTime = now;
return lastEventByAddDateTime;
}
private List<Mail> getReturnMails(List<Mail> mails) {
Set<Integer> people = new HashSet<>();
Set<Long> people = new HashSet<>();
List<Mail> returnMails = new ArrayList<>();
for (int i = mails.size() - 1; i >= 0; i--) {
if (!people.contains(mails.get(i).getPersonId())) {

View File

@ -1,5 +1,6 @@
package org.sadtech.social.core.service.sender;
import lombok.NonNull;
import org.sadtech.social.core.domain.BoxAnswer;
/**
@ -15,9 +16,9 @@ public interface Sending {
* @param personId Идентификатор пользователя
* @param boxAnswer Объект с данными, которые необходимо отправить
*/
void send(Integer personId, BoxAnswer boxAnswer);
void send(@NonNull Long personId, @NonNull BoxAnswer boxAnswer);
void send(Integer contentId, Integer personId, BoxAnswer boxAnswer);
void send(@NonNull Long contentId, @NonNull Long personId, @NonNull BoxAnswer boxAnswer);
/**
* Возвращает тип объекта отправляющего ответ пользователя. В зависимости от типа ответ будет отправлен с помощью

View File

@ -1,5 +1,6 @@
package org.sadtech.social.core.service.sender.email;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.sadtech.social.core.domain.BoxAnswer;
@ -23,7 +24,7 @@ public class EmailSending implements Sending {
private final EmailConfig emailConfig;
@Override
public void send(Integer personId, BoxAnswer boxAnswer) {
public void send(@NonNull Long personId, @NonNull BoxAnswer boxAnswer) {
Session session = Session.getDefaultInstance(emailConfig.getProps(), new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
@ -44,7 +45,7 @@ public class EmailSending implements Sending {
}
@Override
public void send(Integer contentId, Integer personId, BoxAnswer boxAnswer) {
public void send(@NonNull Long contentId, @NonNull Long personId, @NonNull BoxAnswer boxAnswer) {
throw new MailSendException();
}