fix: return default moderation policy when unpublished
This commit is contained in:
@@ -162,12 +162,19 @@ func (c *cConfig) ModerationPolicy(ctx context.Context, req *api.ModerationPolic
|
|||||||
PolicyVersion uint `json:"policy_version"`
|
PolicyVersion uint `json:"policy_version"`
|
||||||
SensitiveWordPolicy string `json:"sensitive_word_policy"`
|
SensitiveWordPolicy string `json:"sensitive_word_policy"`
|
||||||
}
|
}
|
||||||
if err = imtenant.RegistryDB().Model(dao.ImSecurityPolicy.Table()).Safe().Ctx(ctx).
|
record, err := imtenant.RegistryDB().Model(dao.ImSecurityPolicy.Table()).Safe().Ctx(ctx).
|
||||||
Fields(columns.PolicyVersion, "CAST("+columns.SensitiveWordPolicy+" AS CHAR) sensitive_word_policy").
|
Fields(columns.PolicyVersion, "CAST("+columns.SensitiveWordPolicy+" AS CHAR) sensitive_word_policy").
|
||||||
Where(columns.TenantId, tenant.Id).Where(columns.PublishStatus, consts.ImSecurityPublishPublished).
|
Where(columns.TenantId, tenant.Id).Where(columns.PublishStatus, consts.ImSecurityPublishPublished).
|
||||||
WhereNull(columns.DeletedAt).OrderDesc(columns.PolicyVersion).Limit(1).Scan(&row); err != nil {
|
WhereNull(columns.DeletedAt).OrderDesc(columns.PolicyVersion).One()
|
||||||
|
if err != nil {
|
||||||
return nil, gerror.Wrap(err, "获取商户内容审核策略失败")
|
return nil, gerror.Wrap(err, "获取商户内容审核策略失败")
|
||||||
}
|
}
|
||||||
|
if record.IsEmpty() {
|
||||||
|
return res, nil
|
||||||
|
}
|
||||||
|
if err = record.Struct(&row); err != nil {
|
||||||
|
return nil, gerror.Wrap(err, "解析商户内容审核策略失败")
|
||||||
|
}
|
||||||
if row.PolicyVersion == 0 || strings.TrimSpace(row.SensitiveWordPolicy) == "" {
|
if row.PolicyVersion == 0 || strings.TrimSpace(row.SensitiveWordPolicy) == "" {
|
||||||
return res, nil
|
return res, nil
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user