Skip to content

Commit

Permalink
Merge pull request #3 from code-review-platform-flow/FLOW-132
Browse files Browse the repository at this point in the history
Flow 132
  • Loading branch information
abwarten authored Aug 12, 2024
2 parents 73e6795 + 45fb0ea commit 36a5fae
Show file tree
Hide file tree
Showing 37 changed files with 1,039 additions and 37 deletions.
18 changes: 18 additions & 0 deletions src/main/java/com/flow/admin/main/common/config/WebConfig.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package com.flow.admin.main.common.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {

@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("http://localhost:3000")
.allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
.allowedHeaders("*")
.allowCredentials(true);
}
}
Original file line number Diff line number Diff line change
@@ -1,20 +1,25 @@
package com.flow.admin.main.controller;

import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.flow.admin.main.dto.controller.dashboard.DashboardResponseDto;
import com.flow.admin.main.service.domain.dashboard.DashboardService;

import lombok.RequiredArgsConstructor;

@RestController
@RequestMapping("/api/admin/dashboard")
@RequiredArgsConstructor
public class DashBoardController {

@PostMapping
public ResponseEntity<Void> inquiry() {
return null;
private final DashboardService dashboardService;

@GetMapping
public ResponseEntity<DashboardResponseDto> views() {
return ResponseEntity.ok().body(dashboardService.getDashboard());
}

}
26 changes: 26 additions & 0 deletions src/main/java/com/flow/admin/main/controller/UserController.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package com.flow.admin.main.controller;

import org.springframework.data.domain.Pageable;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.flow.admin.main.dto.controller.user.UserResponseDto;
import com.flow.admin.main.service.domain.user.UserService;

import lombok.RequiredArgsConstructor;

@RestController
@RequestMapping("/api/admin/user")
@RequiredArgsConstructor
public class UserController {

private final UserService userService;

@GetMapping
public ResponseEntity<UserResponseDto> views(Pageable pageable) {
return ResponseEntity.ok().body(userService.getUser(pageable));
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package com.flow.admin.main.dto.controller.dashboard;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import lombok.Builder;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.ToString;

@Getter
@ToString
@Builder
@EqualsAndHashCode
@NoArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class DashboardRequestDto {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.flow.admin.main.dto.controller.dashboard;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class DashboardResponseDto {
private ValueDto member;
private ValueDto order;
private ValueDto income;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public static class ValueDto {
private Long value;
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package com.flow.admin.main.dto.controller.user;

import lombok.Builder;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.ToString;

@Getter
@ToString
@Builder
@EqualsAndHashCode
@NoArgsConstructor
public class UserRequestDto {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package com.flow.admin.main.dto.controller.user;

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

import org.springframework.data.domain.Pageable;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;

@Getter
@Builder
@EqualsAndHashCode
@AllArgsConstructor
@NoArgsConstructor
public class UserResponseDto {

private List<DataDto> data;
private Pageable page;

@Getter
@Builder
@EqualsAndHashCode
@AllArgsConstructor
@NoArgsConstructor
public static class DataDto {
private Long userId;
private String email;
private String userName;
private String schoolName;
private String schoolNumber;
private String majorName;
private Boolean status;
private String role;
private LocalDateTime createDate;
private LocalDateTime modifyDate;
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package com.flow.admin.main.dto.jpa.payments;

import java.math.BigDecimal;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class PaymentsDto {

private Long paymentId;
private Long orderId;
private BigDecimal amount;
private String paymentKey;
private String status;

}
13 changes: 9 additions & 4 deletions src/main/java/com/flow/admin/main/dto/jpa/users/UsersDto.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package com.flow.admin.main.dto.jpa.users;

import java.time.LocalDateTime;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
Expand All @@ -12,8 +14,11 @@
@NoArgsConstructor
@Builder
public class UsersDto {
private Long userId;
private String email;
private String password;
private int version;
private Long userId;
private String email;
private String password;
private LocalDateTime createDate;
private LocalDateTime modifyDate;
private Boolean useYn;
private int version;
}
26 changes: 8 additions & 18 deletions src/main/java/com/flow/admin/main/entity/CategoriesEntity.java
Original file line number Diff line number Diff line change
@@ -1,48 +1,38 @@
package com.flow.admin.main.entity;

import java.util.ArrayList;
import java.util.List;

import org.hibernate.annotations.Where;

import com.flow.admin.main.common.entity.BaseEntity;

import jakarta.persistence.CascadeType;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.OneToMany;
import jakarta.persistence.Table;
import jakarta.persistence.Version;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@Entity
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Table(name = "categories")
@Where(clause = "use_yn = true")
public class CategoriesEntity extends BaseEntity {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "category_id")
private Long categoryId;

@Column(name = "category_name")
private String categoryName;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "category_id")
private Long categoryId;

@OneToMany(mappedBy = "category", cascade = CascadeType.ALL, orphanRemoval = true)
private List<PostsEntity> postsEntities = new ArrayList<>();
@Column(name = "category_name")
private String categoryName;

@Version
private int version;
@Version
private int version;
}
60 changes: 60 additions & 0 deletions src/main/java/com/flow/admin/main/entity/OrdersEntity.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
package com.flow.admin.main.entity;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.UUID;

import org.hibernate.annotations.Where;

import com.flow.admin.main.common.entity.BaseEntity;

import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.FetchType;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@Entity
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Table(name = "orders")
@Where(clause = "use_yn = true")
public class OrdersEntity extends BaseEntity {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "order_id")
private Long orderId;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "coffee_id")
private CoffeeChatsEntity coffee;

@Column(name = "toss_order_id", nullable = false)
private UUID tossOrderId;

@Column(name = "customer_key", nullable = false)
private UUID customerKey;

@Column(name = "order_date", nullable = false)
private LocalDateTime orderDate;

@Column(name = "total_amount", nullable = false, precision = 10, scale = 2)
private BigDecimal totalAmount;

@Column(name = "status", nullable = false, length = 20)
private String status;

}
47 changes: 47 additions & 0 deletions src/main/java/com/flow/admin/main/entity/PaymentsEntity.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
package com.flow.admin.main.entity;

import org.hibernate.annotations.Where;

import com.flow.admin.main.common.entity.BaseEntity;

import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.FetchType;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@Entity
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Table(name = "payments")
@Where(clause = "use_yn = true")
public class PaymentsEntity extends BaseEntity {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "payment_id")
private Long paymentId;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "order_id", nullable = false)
private OrdersEntity order;

@Column(name = "payment_key", nullable = false, length = 255)
private String paymentKey;

@Column(name = "status", nullable = false, length = 20)
private String status;

}
Loading

0 comments on commit 36a5fae

Please sign in to comment.