aboutsummaryrefslogtreecommitdiff
path: root/backend/controllers/recordController.go
diff options
context:
space:
mode:
authorArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-08-20 12:51:26 +0300
committerArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-08-20 12:51:26 +0300
commitca7acc2fdc6e6c8371ca5bbeeaabb02d11bb1bee (patch)
tree1196cbb2b253ecaddd80934cc849cfd52f68b3e4 /backend/controllers/recordController.go
parentfix: change map history from timestamp to date (diff)
downloadlphub-ca7acc2fdc6e6c8371ca5bbeeaabb02d11bb1bee.tar.gz
lphub-ca7acc2fdc6e6c8371ca5bbeeaabb02d11bb1bee.tar.bz2
lphub-ca7acc2fdc6e6c8371ca5bbeeaabb02d11bb1bee.zip
refactor: move structs around for better understanding
Former-commit-id: 0030a6b0c7b228772d8e27f5722ee6de1718786b
Diffstat (limited to '')
-rw-r--r--backend/controllers/recordController.go20
1 files changed, 17 insertions, 3 deletions
diff --git a/backend/controllers/recordController.go b/backend/controllers/recordController.go
index 951be41..d141fc3 100644
--- a/backend/controllers/recordController.go
+++ b/backend/controllers/recordController.go
@@ -19,6 +19,18 @@ import (
19 "google.golang.org/api/drive/v3" 19 "google.golang.org/api/drive/v3"
20) 20)
21 21
22type RecordRequest struct {
23 HostDemo *multipart.FileHeader `json:"host_demo" form:"host_demo" binding:"required" swaggerignore:"true"`
24 PartnerDemo *multipart.FileHeader `json:"partner_demo" form:"partner_demo" swaggerignore:"true"`
25 IsPartnerOrange bool `json:"is_partner_orange" form:"is_partner_orange"`
26 PartnerID string `json:"partner_id" form:"partner_id"`
27}
28
29type RecordResponse struct {
30 ScoreCount int `json:"score_count"`
31 ScoreTime int `json:"score_time"`
32}
33
22// POST Record 34// POST Record
23// 35//
24// @Description Post record with demo of a specific map. 36// @Description Post record with demo of a specific map.
@@ -31,7 +43,7 @@ import (
31// @Param partner_demo formData file false "Partner Demo" 43// @Param partner_demo formData file false "Partner Demo"
32// @Param is_partner_orange formData boolean false "Is Partner Orange" 44// @Param is_partner_orange formData boolean false "Is Partner Orange"
33// @Param partner_id formData string false "Partner ID" 45// @Param partner_id formData string false "Partner ID"
34// @Success 200 {object} models.Response{data=models.RecordResponse} 46// @Success 200 {object} models.Response{data=RecordResponse}
35// @Failure 400 {object} models.Response 47// @Failure 400 {object} models.Response
36// @Failure 401 {object} models.Response 48// @Failure 401 {object} models.Response
37// @Router /maps/{id}/record [post] 49// @Router /maps/{id}/record [post]
@@ -61,7 +73,7 @@ func CreateRecordWithDemo(c *gin.Context) {
61 isCoop = true 73 isCoop = true
62 } 74 }
63 // Get record request 75 // Get record request
64 var record models.RecordRequest 76 var record RecordRequest
65 if err := c.ShouldBind(&record); err != nil { 77 if err := c.ShouldBind(&record); err != nil {
66 c.JSON(http.StatusBadRequest, models.ErrorResponse(err.Error())) 78 c.JSON(http.StatusBadRequest, models.ErrorResponse(err.Error()))
67 return 79 return
@@ -183,7 +195,7 @@ func CreateRecordWithDemo(c *gin.Context) {
183 c.JSON(http.StatusOK, models.Response{ 195 c.JSON(http.StatusOK, models.Response{
184 Success: true, 196 Success: true,
185 Message: "Successfully created record.", 197 Message: "Successfully created record.",
186 Data: models.RecordResponse{ScoreCount: hostDemoScoreCount, ScoreTime: hostDemoScoreTime}, 198 Data: RecordResponse{ScoreCount: hostDemoScoreCount, ScoreTime: hostDemoScoreTime},
187 }) 199 })
188} 200}
189 201
@@ -253,6 +265,7 @@ func serviceAccount() *http.Client {
253 return client 265 return client
254} 266}
255 267
268// Create Gdrive file
256func createFile(service *drive.Service, name string, mimeType string, content io.Reader, parentId string) (*drive.File, error) { 269func createFile(service *drive.Service, name string, mimeType string, content io.Reader, parentId string) (*drive.File, error) {
257 f := &drive.File{ 270 f := &drive.File{
258 MimeType: mimeType, 271 MimeType: mimeType,
@@ -269,6 +282,7 @@ func createFile(service *drive.Service, name string, mimeType string, content io
269 return file, nil 282 return file, nil
270} 283}
271 284
285// Delete Gdrive file
272func deleteFile(service *drive.Service, fileId string) { 286func deleteFile(service *drive.Service, fileId string) {
273 service.Files.Delete(fileId) 287 service.Files.Delete(fileId)
274} 288}