Mhamdans17 commited on
Commit ·
9f5aad1
1
Parent(s): 41f6134
feat: move checkout to dedicated page and add member check logic
Browse files- controllers/member_controller.go +28 -0
- main.go +1 -0
controllers/member_controller.go
CHANGED
|
@@ -6,6 +6,7 @@ import (
|
|
| 6 |
"service-warungpos-go/models"
|
| 7 |
|
| 8 |
"github.com/gin-gonic/gin"
|
|
|
|
| 9 |
)
|
| 10 |
|
| 11 |
// ListMembers (GET /api/members)
|
|
@@ -207,3 +208,30 @@ func DeleteMember(c *gin.Context) {
|
|
| 207 |
|
| 208 |
c.JSON(http.StatusOK, gin.H{"detail": "Member dihapus"})
|
| 209 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 6 |
"service-warungpos-go/models"
|
| 7 |
|
| 8 |
"github.com/gin-gonic/gin"
|
| 9 |
+
"gorm.io/gorm"
|
| 10 |
)
|
| 11 |
|
| 12 |
// ListMembers (GET /api/members)
|
|
|
|
| 208 |
|
| 209 |
c.JSON(http.StatusOK, gin.H{"detail": "Member dihapus"})
|
| 210 |
}
|
| 211 |
+
|
| 212 |
+
// CheckMember (GET /api/members/check?query=xxx)
|
| 213 |
+
func CheckMember(c *gin.Context) {
|
| 214 |
+
userVal, exists := c.Get("user")
|
| 215 |
+
if !exists {
|
| 216 |
+
c.JSON(http.StatusUnauthorized, gin.H{"detail": "Unauthorized"})
|
| 217 |
+
return
|
| 218 |
+
}
|
| 219 |
+
user := userVal.(*models.User)
|
| 220 |
+
companyID := *user.CompanyID
|
| 221 |
+
query := c.Query("query")
|
| 222 |
+
|
| 223 |
+
if query == "" {
|
| 224 |
+
c.JSON(http.StatusBadRequest, gin.H{"detail": "Query pencarian wajib diisi"})
|
| 225 |
+
return
|
| 226 |
+
}
|
| 227 |
+
|
| 228 |
+
var member models.Member
|
| 229 |
+
if err := config.DB.Preload("Branch").Preload("CreatedBy").Preload("PointHistories", func(db *gorm.DB) *gorm.DB {
|
| 230 |
+
return db.Order("created_at DESC").Limit(10)
|
| 231 |
+
}).Where("company_id = ? AND (member_id = ? OR phone = ?)", companyID, query, query).First(&member).Error; err != nil {
|
| 232 |
+
c.JSON(http.StatusNotFound, gin.H{"detail": "Member tidak ditemukan"})
|
| 233 |
+
return
|
| 234 |
+
}
|
| 235 |
+
|
| 236 |
+
c.JSON(http.StatusOK, member)
|
| 237 |
+
}
|
main.go
CHANGED
|
@@ -157,6 +157,7 @@ func main() {
|
|
| 157 |
{
|
| 158 |
members.Use(middleware.GetCurrentUser(), middleware.RequireTenantContext())
|
| 159 |
{
|
|
|
|
| 160 |
members.GET("/", controllers.ListMembers)
|
| 161 |
members.POST("/", controllers.CreateMember)
|
| 162 |
members.PUT("/:member_id", controllers.UpdateMember)
|
|
|
|
| 157 |
{
|
| 158 |
members.Use(middleware.GetCurrentUser(), middleware.RequireTenantContext())
|
| 159 |
{
|
| 160 |
+
members.GET("/check", controllers.CheckMember)
|
| 161 |
members.GET("/", controllers.ListMembers)
|
| 162 |
members.POST("/", controllers.CreateMember)
|
| 163 |
members.PUT("/:member_id", controllers.UpdateMember)
|