Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโ€™ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

๐Ÿ”ฅ cd pipeline ์Šคํฌ๋ฆฝํŠธ ์˜ค๋ฅ˜ ์ˆ˜์ • #123

Merged
merged 1 commit into from
Mar 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,8 @@ jobs:
- name: docker image build & push
run: |
docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
cat ${{ secrets.IOS_FIREBASE_ADMINSDK }} > fitapet-app-external-api/src/main/resources/fitapet-ios-firebase-adminsdk-ethnn-6ec10fe329.json
mkdir -p fitapet-infra/src/main/resources/firebase/
cat ${{ secrets.IOS_FIREBASE_ADMINSDK }} >> fitapet-infra/src/main/resources/firebase/fitapet-ios-firebase-adminsdk-ethnn-6ec10fe329.json
docker build -t ${{ secrets.DOCKER_NICKNAME }}/fitapet:latest .
docker push ${{ secrets.DOCKER_NICKNAME }}/fitapet:latest

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import kr.co.fitapet.api.apis.manager.dto.InviteMemberInfoRes;
import kr.co.fitapet.common.annotation.Mapper;
import kr.co.fitapet.domain.common.redis.manager.InvitationDto;
//import kr.co.fitapet.domain.domains.invitation.service.ManagerInvitationService;
import kr.co.fitapet.domain.common.redis.manager.ManagerInvitationService;
import kr.co.fitapet.domain.domains.manager.service.ManagerSaveService;
import kr.co.fitapet.domain.domains.manager.service.ManagerSearchService;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ public String findUserName(Long userId) {
public void registerDeviceToken(Long memberId, DeviceTokenReq req) {
Member member = memberSearchService.findById(memberId);

// FIXME: 2021/10/20 ๋‹ค๋ฅธ ์œ ์ €์—๊ฒŒ ๊ฐ™์€ ํ† ํฐ์ด ๋“ฑ๋ก๋œ ๊ฒฝ์šฐ MySQL unique key exception ๋ฐœ์ƒ
if (!deviceTokenSearchService.isExistByMemberIdAndDeviceToken(memberId, req.deviceToken())) {
log.info("๋””๋ฐ”์ด์Šค ํ† ํฐ ๋“ฑ๋ก: {}", req);
DeviceToken deviceToken = req.toEntity(member);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package kr.co.fitapet.api.common.security.authorization;

//import kr.co.fitapet.domain.domains.invitation.service.ManagerInvitationService;
import kr.co.fitapet.domain.common.redis.manager.ManagerInvitationService;
import kr.co.fitapet.domain.domains.manager.service.ManagerSearchService;
import lombok.RequiredArgsConstructor;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
package kr.co.fitapet.domain.domains.invitation.domain;

import jakarta.persistence.*;
import kr.co.fitapet.domain.common.model.DateAuditable;
import kr.co.fitapet.domain.domains.member.domain.Member;
import kr.co.fitapet.domain.domains.pet.domain.Pet;
import lombok.*;
import org.hibernate.annotations.ColumnDefault;
import org.hibernate.annotations.DynamicInsert;
import org.springframework.data.annotation.CreatedBy;

import java.time.LocalDate;
import java.time.LocalDateTime;

@Entity
@Table(name = "MANAGER_INVITATION")
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@DynamicInsert
@Getter
@ToString(of = {"id", "expireDate", "isAccepted"})
public class ManagerInvitation extends DateAuditable {
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

private LocalDateTime expireDate;
@ColumnDefault("false")
private Boolean isAccepted;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "from_id")
@CreatedBy
private Member from;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "to_id")
private Member to;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "pet_id")
private Pet pet;

@Builder
private ManagerInvitation(Member from, Member to, LocalDateTime expireDate, Pet pet, Boolean isAccepted) {
this.from = from;
this.to = to;
this.expireDate = expireDate;
this.pet = pet;
this.isAccepted = isAccepted;
}

public static ManagerInvitation of(Member from, Member to, LocalDateTime expireDate, Pet pet) {
return ManagerInvitation.builder()
.from(from)
.to(to)
.expireDate(expireDate)
.pet(pet)
.isAccepted(Boolean.FALSE)
.build();
}

public boolean isExpired() {
return expireDate.isBefore(LocalDateTime.now());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kr.co.fitapet.domain.domains.invitation.repository;

public interface ManagerInvitationQueryDslRepository {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package kr.co.fitapet.domain.domains.invitation.repository;

import kr.co.fitapet.domain.common.repository.ExtendedRepository;
import kr.co.fitapet.domain.domains.invitation.domain.ManagerInvitation;

public interface ManagerInvitationRepository extends ExtendedRepository<ManagerInvitation, Long> {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package kr.co.fitapet.domain.domains.invitation.repository;

import com.querydsl.jpa.impl.JPAQueryFactory;
import kr.co.fitapet.domain.domains.invitation.domain.QInvitation;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Repository;

@Repository
@RequiredArgsConstructor
public class ManagerManagerInvitationQueryDslRepositoryDsl implements ManagerInvitationQueryDslRepository {
private final JPAQueryFactory queryFactory;
private final QInvitation invitation = QInvitation.invitation;

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
package kr.co.fitapet.domain.domains.invitation.service;

import kr.co.fitapet.common.annotation.DomainService;
import kr.co.fitapet.domain.domains.invitation.domain.ManagerInvitation;
import kr.co.fitapet.domain.domains.invitation.repository.ManagerInvitationRepository;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.transaction.annotation.Transactional;

import java.time.LocalDateTime;
import java.util.List;

@Slf4j
@DomainService
@RequiredArgsConstructor
public class ManagerInvitationService {
private final ManagerInvitationRepository managerInvitationRepository;

@Transactional
public void save(ManagerInvitation managerInvitation) {
managerInvitationRepository.save(managerInvitation);
}

// @Transactional
// public List<ManagerInvitation> findAllByToIdWhenNotExpired(Long memberId) {
// return managerInvitationRepository.findAll(memberId, LocalDateTime.now());
// }

// @Transactional
// public boolean isExpired(Long memberId, Long petId) {
// managerInvitationRepository.isExpired(memberId, petId);
// }

@Transactional
public void delete(ManagerInvitation managerInvitation) {
managerInvitationRepository.delete(managerInvitation);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ public record PageResponse(
@Schema(description = "๋‹ค์Œ ํŽ˜์ด์ง€ ์กด์žฌ ์—ฌ๋ถ€")
boolean hasNext
) {
public static PageResponse from(@NotNull Slice<?> page) {
public static PageResponse from(Slice<?> page) {
return new PageResponse(page.getContent(), page.getPageable().getPageNumber(), page.getPageable().getPageSize(), page.getNumberOfElements(), page.hasNext());
}
}
Expand Down
Loading