mirror of
https://github.com/Mezeporta/Erupe.git
synced 2025-12-13 15:34:38 +01:00
Merge branch 'main' into feature/warehouse-v2
This commit is contained in:
@@ -190,8 +190,8 @@ func handleMsgMhfInfoFesta(s *Session, p mhfpacket.MHFPacket) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var blueSouls, redSouls uint32
|
var blueSouls, redSouls uint32
|
||||||
s.server.db.QueryRow("SELECT SUM(gc.souls) FROM guild_characters gc INNER JOIN festa_registrations fr ON fr.guild_id = gc.guild_id WHERE fr.team = 'blue'").Scan(&blueSouls)
|
s.server.db.QueryRow(`SELECT COALESCE(SUM(fs.souls), 0) AS souls FROM festa_registrations fr LEFT JOIN festa_submissions fs ON fr.guild_id = fs.guild_id AND fr.team = 'blue'`).Scan(&blueSouls)
|
||||||
s.server.db.QueryRow("SELECT SUM(gc.souls) FROM guild_characters gc INNER JOIN festa_registrations fr ON fr.guild_id = gc.guild_id WHERE fr.team = 'red'").Scan(&redSouls)
|
s.server.db.QueryRow(`SELECT COALESCE(SUM(fs.souls), 0) AS souls FROM festa_registrations fr LEFT JOIN festa_submissions fs ON fr.guild_id = fs.guild_id AND fr.team = 'red'`).Scan(&redSouls)
|
||||||
|
|
||||||
bf.WriteUint32(id)
|
bf.WriteUint32(id)
|
||||||
for _, timestamp := range timestamps {
|
for _, timestamp := range timestamps {
|
||||||
@@ -210,11 +210,11 @@ func handleMsgMhfInfoFesta(s *Session, p mhfpacket.MHFPacket) {
|
|||||||
COALESCE(CASE
|
COALESCE(CASE
|
||||||
WHEN COUNT(gc.id) FILTER (WHERE fr.team = 'blue' AND gc.trial_vote = ft.id) >
|
WHEN COUNT(gc.id) FILTER (WHERE fr.team = 'blue' AND gc.trial_vote = ft.id) >
|
||||||
COUNT(gc.id) FILTER (WHERE fr.team = 'red' AND gc.trial_vote = ft.id)
|
COUNT(gc.id) FILTER (WHERE fr.team = 'red' AND gc.trial_vote = ft.id)
|
||||||
THEN CAST('blue' AS public.festival_colour)
|
THEN CAST('blue' AS public.festival_color)
|
||||||
WHEN COUNT(gc.id) FILTER (WHERE fr.team = 'red' AND gc.trial_vote = ft.id) >
|
WHEN COUNT(gc.id) FILTER (WHERE fr.team = 'red' AND gc.trial_vote = ft.id) >
|
||||||
COUNT(gc.id) FILTER (WHERE fr.team = 'blue' AND gc.trial_vote = ft.id)
|
COUNT(gc.id) FILTER (WHERE fr.team = 'blue' AND gc.trial_vote = ft.id)
|
||||||
THEN CAST('red' AS public.festival_colour)
|
THEN CAST('red' AS public.festival_color)
|
||||||
END, CAST('none' AS public.festival_colour)) AS monopoly
|
END, CAST('none' AS public.festival_color)) AS monopoly
|
||||||
FROM public.festa_trials ft
|
FROM public.festa_trials ft
|
||||||
LEFT JOIN public.guild_characters gc ON ft.id = gc.trial_vote
|
LEFT JOIN public.guild_characters gc ON ft.id = gc.trial_vote
|
||||||
LEFT JOIN public.festa_registrations fr ON gc.guild_id = fr.guild_id
|
LEFT JOIN public.festa_registrations fr ON gc.guild_id = fr.guild_id
|
||||||
@@ -366,7 +366,7 @@ func handleMsgMhfStateFestaU(s *Session, p mhfpacket.MHFPacket) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
var souls, exists uint32
|
var souls, exists uint32
|
||||||
s.server.db.QueryRow("SELECT souls FROM guild_characters WHERE character_id=$1", s.charID).Scan(&souls)
|
s.server.db.QueryRow(`SELECT COALESCE((SELECT SUM(souls) FROM festa_submissions WHERE character_id=$1), 0)`, s.charID).Scan(&souls)
|
||||||
err = s.server.db.QueryRow("SELECT prize_id FROM festa_prizes_accepted WHERE prize_id=0 AND character_id=$1", s.charID).Scan(&exists)
|
err = s.server.db.QueryRow("SELECT prize_id FROM festa_prizes_accepted WHERE prize_id=0 AND character_id=$1", s.charID).Scan(&exists)
|
||||||
bf := byteframe.NewByteFrame()
|
bf := byteframe.NewByteFrame()
|
||||||
bf.WriteUint32(souls)
|
bf.WriteUint32(souls)
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ type Guild struct {
|
|||||||
PugiOutfit3 uint8 `db:"pugi_outfit_3"`
|
PugiOutfit3 uint8 `db:"pugi_outfit_3"`
|
||||||
PugiOutfits uint32 `db:"pugi_outfits"`
|
PugiOutfits uint32 `db:"pugi_outfits"`
|
||||||
Recruiting bool `db:"recruiting"`
|
Recruiting bool `db:"recruiting"`
|
||||||
FestivalColor FestivalColor `db:"festival_colour"`
|
FestivalColor FestivalColor `db:"festival_color"`
|
||||||
Souls uint32 `db:"souls"`
|
Souls uint32 `db:"souls"`
|
||||||
AllianceID uint32 `db:"alliance_id"`
|
AllianceID uint32 `db:"alliance_id"`
|
||||||
Icon *GuildIcon `db:"icon"`
|
Icon *GuildIcon `db:"icon"`
|
||||||
@@ -157,7 +157,7 @@ SELECT
|
|||||||
sub_motto,
|
sub_motto,
|
||||||
created_at,
|
created_at,
|
||||||
leader_id,
|
leader_id,
|
||||||
lc.name as leader_name,
|
c.name AS leader_name,
|
||||||
comment,
|
comment,
|
||||||
COALESCE(pugi_name_1, '') AS pugi_name_1,
|
COALESCE(pugi_name_1, '') AS pugi_name_1,
|
||||||
COALESCE(pugi_name_2, '') AS pugi_name_2,
|
COALESCE(pugi_name_2, '') AS pugi_name_2,
|
||||||
@@ -167,8 +167,8 @@ SELECT
|
|||||||
pugi_outfit_3,
|
pugi_outfit_3,
|
||||||
pugi_outfits,
|
pugi_outfits,
|
||||||
recruiting,
|
recruiting,
|
||||||
COALESCE((SELECT team FROM festa_registrations fr WHERE fr.guild_id = g.id), 'none') AS festival_colour,
|
COALESCE((SELECT team FROM festa_registrations fr WHERE fr.guild_id = g.id), 'none') AS festival_color,
|
||||||
(SELECT SUM(souls) FROM guild_characters gc WHERE gc.guild_id = g.id) AS souls,
|
COALESCE((SELECT SUM(fs.souls) FROM festa_submissions fs WHERE fs.guild_id=g.id), 0) AS souls,
|
||||||
COALESCE((
|
COALESCE((
|
||||||
SELECT id FROM guild_alliances ga WHERE
|
SELECT id FROM guild_alliances ga WHERE
|
||||||
ga.parent_id = g.id OR
|
ga.parent_id = g.id OR
|
||||||
@@ -178,8 +178,8 @@ SELECT
|
|||||||
icon,
|
icon,
|
||||||
(SELECT count(1) FROM guild_characters gc WHERE gc.guild_id = g.id) AS member_count
|
(SELECT count(1) FROM guild_characters gc WHERE gc.guild_id = g.id) AS member_count
|
||||||
FROM guilds g
|
FROM guilds g
|
||||||
JOIN guild_characters lgc ON lgc.character_id = leader_id
|
JOIN guild_characters gc ON gc.character_id = leader_id
|
||||||
JOIN characters lc on leader_id = lc.id
|
JOIN characters c on leader_id = c.id
|
||||||
`
|
`
|
||||||
|
|
||||||
func (guild *Guild) Save(s *Session) error {
|
func (guild *Guild) Save(s *Session) error {
|
||||||
|
|||||||
Reference in New Issue
Block a user