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"`
|
||||
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").
|
||||
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, "获取商户内容审核策略失败")
|
||||
}
|
||||
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) == "" {
|
||||
return res, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user