mirror of
https://github.com/TeaOSLab/EdgeAPI.git
synced 2025-11-05 09:30:24 +08:00
修复用户可能无法删除IP的问题
This commit is contained in:
@@ -82,8 +82,11 @@ func (this *IPItemDAO) DisableIPItem(tx *dbs.Tx, id int64, sourceUserId int64) e
|
|||||||
}
|
}
|
||||||
|
|
||||||
var query = this.Query(tx)
|
var query = this.Query(tx)
|
||||||
|
|
||||||
|
// 检查权限
|
||||||
if sourceUserId > 0 {
|
if sourceUserId > 0 {
|
||||||
query.Attr("sourceUserId", sourceUserId)
|
query.Where("(sourceUserId=:sourceUserId OR listId IN (SELECT id FROM " + SharedIPListDAO.Table + " WHERE userId=:sourceUserId AND state=1))")
|
||||||
|
query.Param("sourceUserId", sourceUserId)
|
||||||
}
|
}
|
||||||
|
|
||||||
_, err = query.
|
_, err = query.
|
||||||
@@ -487,7 +490,7 @@ func (this *IPItemDAO) CountAllEnabledIPItems(tx *dbs.Tx, sourceUserId int64, ke
|
|||||||
var query = this.Query(tx)
|
var query = this.Query(tx)
|
||||||
if sourceUserId > 0 {
|
if sourceUserId > 0 {
|
||||||
if listId <= 0 {
|
if listId <= 0 {
|
||||||
query.Where("((listId=" +types.String(firewallconfigs.GlobalListId)+ " AND sourceUserId=:sourceUserId) OR listId IN (SELECT id FROM " + SharedIPListDAO.Table + " WHERE userId=:sourceUserId AND state=1))")
|
query.Where("((listId=" + types.String(firewallconfigs.GlobalListId) + " AND sourceUserId=:sourceUserId) OR listId IN (SELECT id FROM " + SharedIPListDAO.Table + " WHERE userId=:sourceUserId AND state=1))")
|
||||||
query.Param("sourceUserId", sourceUserId)
|
query.Param("sourceUserId", sourceUserId)
|
||||||
} else if listId == firewallconfigs.GlobalListId {
|
} else if listId == firewallconfigs.GlobalListId {
|
||||||
query.Attr("sourceUserId", sourceUserId)
|
query.Attr("sourceUserId", sourceUserId)
|
||||||
@@ -529,7 +532,7 @@ func (this *IPItemDAO) ListAllEnabledIPItems(tx *dbs.Tx, sourceUserId int64, key
|
|||||||
var query = this.Query(tx)
|
var query = this.Query(tx)
|
||||||
if sourceUserId > 0 {
|
if sourceUserId > 0 {
|
||||||
if listId <= 0 {
|
if listId <= 0 {
|
||||||
query.Where("((listId=" +types.String(firewallconfigs.GlobalListId)+ " AND sourceUserId=:sourceUserId) OR listId IN (SELECT id FROM " + SharedIPListDAO.Table + " WHERE userId=:sourceUserId AND state=1))")
|
query.Where("((listId=" + types.String(firewallconfigs.GlobalListId) + " AND sourceUserId=:sourceUserId) OR listId IN (SELECT id FROM " + SharedIPListDAO.Table + " WHERE userId=:sourceUserId AND state=1))")
|
||||||
query.Param("sourceUserId", sourceUserId)
|
query.Param("sourceUserId", sourceUserId)
|
||||||
} else if listId == firewallconfigs.GlobalListId {
|
} else if listId == firewallconfigs.GlobalListId {
|
||||||
query.Attr("sourceUserId", sourceUserId)
|
query.Attr("sourceUserId", sourceUserId)
|
||||||
|
|||||||
Reference in New Issue
Block a user