Преглед изворни кода

Merge branch 'dev/v1.0.0_ws' of jianyu/ent_new into ferture/v2.9.19

fuwencai пре 2 година
родитељ
комит
624f5c5244
1 измењених фајлова са 12 додато и 2 уклоњено
  1. 12 2
      entniche_new/src/service/distribute/distribute.go

+ 12 - 2
entniche_new/src/service/distribute/distribute.go

@@ -308,8 +308,18 @@ func (ac *Action) Distribute_delete() {
 		"_id":     StringTOBsonId(id),
 		"i_entid": entId,
 	}, bson.M{"$set": bson.M{"i_status": 1}}, false, true)
-	if bl && util.Mysql.UpdateOrDeleteBySql(`delete from entniche_user_rule where rule_id=? and dept_id=?`, id, deptId) > -1 {
-		status = 1
+	if bl {
+		if udi := util.Mysql.UpdateOrDeleteBySql(`delete from entniche_user_rule where rule_id=? and dept_id=?`, id, deptId); udi > -1 {
+			status = 1
+		} else {
+			//撤回mongo操作 否则会有管理员删除分发规则,而用户依然无法进行订阅设置的情况
+			if bl = util.MQFW.Update(util.Entniche_distribute, bson.M{
+				"_id":     StringTOBsonId(id),
+				"i_entid": entId,
+			}, bson.M{"$set": bson.M{"i_status": 0}}, false, true); !bl {
+				log.Println(fmt.Sprintf("删除表 %s 分发规则 回滚未成功: %s", util.Entniche_distribute, id))
+			}
+		}
 	}
 	ac.ServeJson(Result{Data: M{"status": status}})
 }