更新代码
This commit is contained in:
1 parent
9875832019
commit
943c3708b0
125 files changed
+2009
-1728
No files matched your search
@@ -36,6 +36,30 @@ func (c *PlatformSiteReminderController) platformClaims() (*jwtutil.Claims, erro
|
||||
return claims, nil
|
||||
}
|
||||
|
||||
// mergeReminderTargetIDs 合并多选目标ID与旧版单值入参。
|
||||
// 旧版:role → target_role_id,tenant → target_tenant_id;多选参数优先。
|
||||
func mergeReminderTargetIDs(targetType string, targetIDs []uint64, legacyRoleID, legacyTenantID uint64) []uint64 {
|
||||
ids := make([]uint64, 0, len(targetIDs)+1)
|
||||
for _, id := range targetIDs {
|
||||
if id > 0 {
|
||||
ids = append(ids, id)
|
||||
}
|
||||
}
|
||||
if len(ids) == 0 {
|
||||
switch targetType {
|
||||
case "role":
|
||||
if legacyRoleID > 0 {
|
||||
ids = append(ids, legacyRoleID)
|
||||
}
|
||||
case "tenant":
|
||||
if legacyTenantID > 0 {
|
||||
ids = append(ids, legacyTenantID)
|
||||
}
|
||||
}
|
||||
}
|
||||
return ids
|
||||
}
|
||||
|
||||
func (c *PlatformSiteReminderController) jsonErr(httpStatus, bizCode int, msg string) {
|
||||
c.Ctx.Output.SetStatus(httpStatus)
|
||||
c.Data["json"] = map[string]interface{}{"code": bizCode, "msg": msg}
|
||||
@@ -97,11 +121,12 @@ func (c *PlatformSiteReminderController) Send() {
|
||||
return
|
||||
}
|
||||
var p struct {
|
||||
Title string `json:"title"`
|
||||
Content string `json:"content"`
|
||||
TargetType string `json:"target_type"` // platform, tenant_all, role, tenant
|
||||
TargetRoleID uint64 `json:"target_role_id"`
|
||||
TargetTenantID uint64 `json:"target_tenant_id"`
|
||||
Title string `json:"title"`
|
||||
Content string `json:"content"`
|
||||
TargetType string `json:"target_type"` // all, platform, tenant_all, tenant_role, tenant, tenant_user
|
||||
TargetIDs []uint64 `json:"target_ids"`
|
||||
TargetRoleID uint64 `json:"target_role_id"` // 兼容旧入参
|
||||
TargetTenantID uint64 `json:"target_tenant_id"` // 兼容旧入参
|
||||
}
|
||||
if err := json.Unmarshal(raw, &p); err != nil {
|
||||
c.jsonErr(400, 400, "参数错误")
|
||||
@@ -118,7 +143,8 @@ func (c *PlatformSiteReminderController) Send() {
|
||||
return
|
||||
}
|
||||
|
||||
err = services.SendSiteReminder(p.Title, p.Content, uint64(claims.UserID), "platform", p.TargetType, p.TargetRoleID, p.TargetTenantID)
|
||||
targetIDs := mergeReminderTargetIDs(p.TargetType, p.TargetIDs, p.TargetRoleID, p.TargetTenantID)
|
||||
err = services.SendSiteReminder(p.Title, p.Content, uint64(claims.UserID), "platform", p.TargetType, targetIDs)
|
||||
if err != nil {
|
||||
c.jsonErr(500, 500, "发送失败: "+err.Error())
|
||||
return
|
||||
@@ -275,12 +301,13 @@ func (c *PlatformSiteReminderController) UpdateSent() {
|
||||
return
|
||||
}
|
||||
var p struct {
|
||||
BatchID string `json:"batch_id"`
|
||||
Title string `json:"title"`
|
||||
Content string `json:"content"`
|
||||
TargetType string `json:"target_type"`
|
||||
TargetRoleID uint64 `json:"target_role_id"`
|
||||
TargetTenantID uint64 `json:"target_tenant_id"`
|
||||
BatchID string `json:"batch_id"`
|
||||
Title string `json:"title"`
|
||||
Content string `json:"content"`
|
||||
TargetType string `json:"target_type"` // all, platform, tenant_all, tenant_role, tenant, tenant_user
|
||||
TargetIDs []uint64 `json:"target_ids"`
|
||||
TargetRoleID uint64 `json:"target_role_id"` // 兼容旧入参
|
||||
TargetTenantID uint64 `json:"target_tenant_id"` // 兼容旧入参
|
||||
}
|
||||
if err := json.Unmarshal(raw, &p); err != nil {
|
||||
c.jsonErr(400, 400, "参数错误")
|
||||
@@ -297,7 +324,8 @@ func (c *PlatformSiteReminderController) UpdateSent() {
|
||||
return
|
||||
}
|
||||
|
||||
err = services.UpdateSentReminder(p.BatchID, p.Title, p.Content, p.TargetType, p.TargetRoleID, p.TargetTenantID)
|
||||
targetIDs := mergeReminderTargetIDs(p.TargetType, p.TargetIDs, p.TargetRoleID, p.TargetTenantID)
|
||||
err = services.UpdateSentReminder(p.BatchID, p.Title, p.Content, p.TargetType, targetIDs)
|
||||
if err != nil {
|
||||
c.jsonErr(500, 500, "修改失败: "+err.Error())
|
||||
return
|
||||
|
||||
Reference in new issue
Block a user