-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.go
95 lines (73 loc) · 2.56 KB
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
package main
import (
"github.com/gin-gonic/gin"
"github.com/hotatekaoru/myStep/controller"
"github.com/hotatekaoru/myStep/database"
"github.com/hotatekaoru/myStep/model"
"net/http"
"os"
)
const defaultPort = "8080"
func main() {
// DBの自動生成
migrate()
router := gin.Default()
router.Static("/assets", "./assets/")
router.LoadHTMLGlob("templates/*")
router.GET("/ping", func(c *gin.Context) {
c.String(http.StatusOK, "pong")
})
/* S01_ログイン画面処理 */
router.GET("/login", controller.S01B01)
router.POST("/index", controller.S01B02)
/* S02_Dashboard処理 */
router.GET("/", controller.S02B01)
router.GET("/index", controller.S02B01)
/* S11_アクティビティ登録画面1処理 */
router.GET("/activity/register/typeId=:typeId", controller.S11B01)
router.POST("/activity/confirm", controller.S11B02)
/* S12_アクティビティ登録画面2処理 */
router.POST("/activity/complete", controller.S12B01)
router.GET("/activity/register", controller.S12B02)
/* S21_アクティビティ一覧照会画面処理 */
router.GET("/activity/inquiry", controller.S21B01)
router.POST("/activity/inquiry", controller.S21B02)
router.GET("/activity/register/activityId=:activityId", controller.S21B03)
router.GET("/activity/delete/activityId=:activityId", controller.S21B04)
router.GET("/activity/inquiry/typeId=:typeId", controller.S21B05)
/* S31_目標一覧画面処理 */
router.GET("/goal/list", controller.S31B01)
router.GET("/goal/register", controller.S31B02)
router.GET("/goal/register/month=:month", controller.S31B03)
/* S32_目標登録画面処理 */
router.POST("/goal/register", controller.S32B01)
/* S41_タスクテーブル画面処理 */
router.GET("/task_table", controller.S41B01)
router.GET("/task/register", controller.S41B02)
router.POST("/task/update", controller.S41B03)
router.POST("/task/delete", controller.S41B04)
/* S42_タスクテーブル画面処理 */
router.POST("/task/register", controller.S42B01)
/* S51_体重登録画面処理 */
router.GET("/weight/register", controller.S51B01)
/* S52_体重一覧画面処理 */
router.GET("/weight/inquiry", controller.S52B01)
/* J01_ユーザー確認処理 */
router.POST("/api/v1/login", controller.J01B01)
http.ListenAndServe(":"+port(), router)
}
/* DBの自動生成 */
func migrate() {
db := database.GetDB()
db.AutoMigrate(&model.User{})
db.AutoMigrate(&model.Task{})
db.AutoMigrate(&model.Activity{})
db.AutoMigrate(&model.Goal{})
}
func port() string {
port := os.Getenv("PORT")
if len(port) == 0 {
port = defaultPort
}
return port
}