Commit c2e31c1b authored by qiuqunfeng's avatar qiuqunfeng
Browse files

Refactor UpdateRule method to handle category ID removal correctly.

parent 5e152874
......@@ -817,11 +817,15 @@ func (s *wafService) UpdateRule(ctx context.Context, req *RuleRequest) error {
for i, id := range wafService.RuleCategoryStatus.CategoryID {
for _, categoryID := range req.CategoryID {
if id == categoryID {
if i == len(wafService.RuleCategoryStatus.CategoryID)-1 {
wafService.RuleCategoryStatus.CategoryID = wafService.RuleCategoryStatus.CategoryID[:i]
} else {
wafService.RuleCategoryStatus.CategoryID = append(wafService.RuleCategoryStatus.CategoryID[:i], wafService.RuleCategoryStatus.CategoryID[i+1:]...)
}
}
}
}
}
if err := s.db.Model(wafService).Update("rule_category_status", wafService.RuleCategoryStatus).Error; err != nil {
return fmt.Errorf("failed to update WAF service mode: %v", err)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment