|
@@ -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}})
|
|
|
}
|