Skip to content

Commit 5826afc

Browse files
Feat/dto models (#167)
* dto models * Make check and test a bit more pretty * revert most makefile changes * change DTO directories and model names * consistent naming * implment dto for announcement get * rengenerate swagger dosc * Implement DTO to Post Announcement handler/cli (sponsered by nano) * fmt * Put handler for announcements * rm artifacts from dbmodels --------- Co-authored-by: Josh Holman <git@jolman.me>
1 parent 06edb84 commit 5826afc

13 files changed

Lines changed: 278 additions & 92 deletions

File tree

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ fmt: ## Format all go files
4747
@go fmt ./...
4848

4949
check: ## Run static analysis on all go files
50-
staticcheck ./...
50+
staticcheck -f stylish ./...
5151

5252
test: check ## Run all tests
5353
go test ./...

internal/api/dbmodels/board.sql.go

Lines changed: 19 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/api/docs/docs.go

Lines changed: 30 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ const docTemplate = `{
9494
"200": {
9595
"description": "Announcement details",
9696
"schema": {
97-
"$ref": "#/definitions/dbmodels.Announcement"
97+
"$ref": "#/definitions/dto.Announcement"
9898
}
9999
},
100100
"404": {
@@ -1294,26 +1294,6 @@ const docTemplate = `{
12941294
}
12951295
},
12961296
"definitions": {
1297-
"dbmodels.Announcement": {
1298-
"type": "object",
1299-
"properties": {
1300-
"announce_at": {
1301-
"type": "integer"
1302-
},
1303-
"discord_channel_id": {
1304-
"$ref": "#/definitions/sql.NullString"
1305-
},
1306-
"discord_message_id": {
1307-
"$ref": "#/definitions/sql.NullString"
1308-
},
1309-
"uuid": {
1310-
"type": "string"
1311-
},
1312-
"visibility": {
1313-
"type": "string"
1314-
}
1315-
}
1316-
},
13171297
"dbmodels.CreateAnnouncementParams": {
13181298
"type": "object",
13191299
"properties": {
@@ -1380,14 +1360,23 @@ const docTemplate = `{
13801360
"dbmodels.CreatePositionParams": {
13811361
"type": "object",
13821362
"properties": {
1363+
"full_name": {
1364+
"type": "string"
1365+
},
13831366
"oid": {
13841367
"type": "string"
13851368
},
13861369
"semester": {
13871370
"type": "string"
13881371
},
1372+
"team": {
1373+
"$ref": "#/definitions/sql.NullString"
1374+
},
13891375
"tier": {
13901376
"type": "integer"
1377+
},
1378+
"title": {
1379+
"$ref": "#/definitions/sql.NullString"
13911380
}
13921381
}
13931382
},
@@ -1608,6 +1597,26 @@ const docTemplate = `{
16081597
}
16091598
}
16101599
},
1600+
"dto.Announcement": {
1601+
"type": "object",
1602+
"properties": {
1603+
"announce_at": {
1604+
"type": "integer"
1605+
},
1606+
"discord_channel_id": {
1607+
"type": "string"
1608+
},
1609+
"discord_message_id": {
1610+
"type": "string"
1611+
},
1612+
"uuid": {
1613+
"type": "string"
1614+
},
1615+
"visibility": {
1616+
"type": "string"
1617+
}
1618+
}
1619+
},
16111620
"sql.NullBool": {
16121621
"type": "object",
16131622
"properties": {

internal/api/docs/swagger.json

Lines changed: 30 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@
8383
"200": {
8484
"description": "Announcement details",
8585
"schema": {
86-
"$ref": "#/definitions/dbmodels.Announcement"
86+
"$ref": "#/definitions/dto.Announcement"
8787
}
8888
},
8989
"404": {
@@ -1283,26 +1283,6 @@
12831283
}
12841284
},
12851285
"definitions": {
1286-
"dbmodels.Announcement": {
1287-
"type": "object",
1288-
"properties": {
1289-
"announce_at": {
1290-
"type": "integer"
1291-
},
1292-
"discord_channel_id": {
1293-
"$ref": "#/definitions/sql.NullString"
1294-
},
1295-
"discord_message_id": {
1296-
"$ref": "#/definitions/sql.NullString"
1297-
},
1298-
"uuid": {
1299-
"type": "string"
1300-
},
1301-
"visibility": {
1302-
"type": "string"
1303-
}
1304-
}
1305-
},
13061286
"dbmodels.CreateAnnouncementParams": {
13071287
"type": "object",
13081288
"properties": {
@@ -1369,14 +1349,23 @@
13691349
"dbmodels.CreatePositionParams": {
13701350
"type": "object",
13711351
"properties": {
1352+
"full_name": {
1353+
"type": "string"
1354+
},
13721355
"oid": {
13731356
"type": "string"
13741357
},
13751358
"semester": {
13761359
"type": "string"
13771360
},
1361+
"team": {
1362+
"$ref": "#/definitions/sql.NullString"
1363+
},
13781364
"tier": {
13791365
"type": "integer"
1366+
},
1367+
"title": {
1368+
"$ref": "#/definitions/sql.NullString"
13801369
}
13811370
}
13821371
},
@@ -1597,6 +1586,26 @@
15971586
}
15981587
}
15991588
},
1589+
"dto.Announcement": {
1590+
"type": "object",
1591+
"properties": {
1592+
"announce_at": {
1593+
"type": "integer"
1594+
},
1595+
"discord_channel_id": {
1596+
"type": "string"
1597+
},
1598+
"discord_message_id": {
1599+
"type": "string"
1600+
},
1601+
"uuid": {
1602+
"type": "string"
1603+
},
1604+
"visibility": {
1605+
"type": "string"
1606+
}
1607+
}
1608+
},
16001609
"sql.NullBool": {
16011610
"type": "object",
16021611
"properties": {

internal/api/docs/swagger.yaml

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,4 @@
11
definitions:
2-
dbmodels.Announcement:
3-
properties:
4-
announce_at:
5-
type: integer
6-
discord_channel_id:
7-
$ref: '#/definitions/sql.NullString'
8-
discord_message_id:
9-
$ref: '#/definitions/sql.NullString'
10-
uuid:
11-
type: string
12-
visibility:
13-
type: string
14-
type: object
152
dbmodels.CreateAnnouncementParams:
163
properties:
174
announce_at:
@@ -55,12 +42,18 @@ definitions:
5542
type: object
5643
dbmodels.CreatePositionParams:
5744
properties:
45+
full_name:
46+
type: string
5847
oid:
5948
type: string
6049
semester:
6150
type: string
51+
team:
52+
$ref: '#/definitions/sql.NullString'
6253
tier:
6354
type: integer
55+
title:
56+
$ref: '#/definitions/sql.NullString'
6457
type: object
6558
dbmodels.CreateTierParams:
6659
properties:
@@ -203,6 +196,19 @@ definitions:
203196
title:
204197
$ref: '#/definitions/sql.NullString'
205198
type: object
199+
dto.Announcement:
200+
properties:
201+
announce_at:
202+
type: integer
203+
discord_channel_id:
204+
type: string
205+
discord_message_id:
206+
type: string
207+
uuid:
208+
type: string
209+
visibility:
210+
type: string
211+
type: object
206212
sql.NullBool:
207213
properties:
208214
bool:
@@ -317,7 +323,7 @@ paths:
317323
"200":
318324
description: Announcement details
319325
schema:
320-
$ref: '#/definitions/dbmodels.Announcement'
326+
$ref: '#/definitions/dto.Announcement'
321327
"404":
322328
description: Not Found
323329
schema:

0 commit comments

Comments
 (0)