diff options
author | mavlonerkinboev <mavlonbek.ibragimov007@gmail.com> | 2021-07-23 05:40:57 +0500 |
---|---|---|
committer | mavlonerkinboev <mavlonbek.ibragimov007@gmail.com> | 2021-07-23 05:40:57 +0500 |
commit | 6f1cc0c541b516f51787d5e5318410de0ab73cc2 (patch) | |
tree | 6d6ad02b2b4e121ebde8bbef92588398292b84cf /src/main/java/files/DataBase.java | |
parent | 8c8338192cfa715980d0b6fb032f63d184ee22ab (diff) |
tenth commit
Diffstat (limited to 'src/main/java/files/DataBase.java')
-rw-r--r-- | src/main/java/files/DataBase.java | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/main/java/files/DataBase.java b/src/main/java/files/DataBase.java new file mode 100644 index 0000000..d457d23 --- /dev/null +++ b/src/main/java/files/DataBase.java @@ -0,0 +1,49 @@ +package files; + +import com.pengrad.telegrambot.model.Update; +import com.pengrad.telegrambot.model.User; + +import files.entity.TelegramUser; + +import javax.persistence.EntityManager; +import javax.persistence.EntityManagerFactory; +import javax.persistence.Persistence; +import java.text.SimpleDateFormat; +import java.util.Date; + +public class DataBase { + public static EntityManager connectionCreate() { + EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("animarfo"); + return entityManagerFactory.createEntityManager(); + } + + public static void connectionDestroy(EntityManager entityManager) { + entityManager.close(); + } + + public static boolean checkIfUserNotExists(Long telegramId) { + EntityManager manager = connectionCreate(); + return (manager.find(TelegramUser.class, telegramId) == null); + } + + public static void saveUser(Update update) { + User user = update.message().from(); + Long telegramId = user.id(); + String fullName = user.firstName() + TelegramUser.checkIfHasLastName(user); + Boolean isBot = user.isBot(); + String username = user.username(); + String date = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss").format(new Date(update.message().date() * 1000L)); + + if (DataBase.checkIfUserNotExists(telegramId)) { + EntityManager entityManager = DataBase.connectionCreate(); + + TelegramUser telegramUser = new TelegramUser(telegramId, username, isBot, fullName, date); + + entityManager.getTransaction().begin(); + entityManager.merge(telegramUser); + entityManager.getTransaction().commit(); + + DataBase.connectionDestroy(entityManager); + } + } +} |