|
|
@@ -0,0 +1,68 @@ |
|
|
|
package db |
|
|
|
|
|
|
|
import ( |
|
|
|
"applet/app/db/model" |
|
|
|
"applet/app/utils/logx" |
|
|
|
"reflect" |
|
|
|
"xorm.io/xorm" |
|
|
|
) |
|
|
|
|
|
|
|
type AdminWithEnterpriseDb struct { |
|
|
|
Db *xorm.Engine `json:"db"` |
|
|
|
} |
|
|
|
|
|
|
|
func (adminWithEnterpriseDb *AdminWithEnterpriseDb) Set() { // set方法 |
|
|
|
adminWithEnterpriseDb.Db = Db |
|
|
|
} |
|
|
|
|
|
|
|
func (adminWithEnterpriseDb *AdminWithEnterpriseDb) FindAdminRole(id int) (*[]model.AdminRole, error) { |
|
|
|
var m []model.AdminRole |
|
|
|
if err := adminWithEnterpriseDb.Db.Where("adm_id =?", id).Find(&m); err != nil { |
|
|
|
return nil, logx.Error(err) |
|
|
|
} |
|
|
|
return &m, nil |
|
|
|
} |
|
|
|
|
|
|
|
func (adminWithEnterpriseDb *AdminWithEnterpriseDb) AdminDeleteBySessionForAdmId(session *xorm.Session, admId interface{}) (int64, error) { |
|
|
|
if reflect.TypeOf(admId).Kind() == reflect.Slice { |
|
|
|
return session.In("adm_id", admId).Delete(model.AdminRole{}) |
|
|
|
} else { |
|
|
|
return session.Where("adm_id = ?", admId).Delete(model.AdminRole{}) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
func (adminWithEnterpriseDb *AdminWithEnterpriseDb) GetAdminRoleByRole(id int) (m *model.AdminRole, err error) { |
|
|
|
m = new(model.AdminRole) |
|
|
|
has, err := adminWithEnterpriseDb.Db.Where("role_id =?", id).Get(m) |
|
|
|
if err != nil { |
|
|
|
return nil, logx.Error(err) |
|
|
|
} |
|
|
|
if has == false { |
|
|
|
return nil, nil |
|
|
|
} |
|
|
|
return m, nil |
|
|
|
} |
|
|
|
|
|
|
|
func (adminWithEnterpriseDb *AdminWithEnterpriseDb) AdminRoleDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) { |
|
|
|
if reflect.TypeOf(roleId).Kind() == reflect.Slice { |
|
|
|
return session.In("role_id", roleId).Delete(model.AdminRole{}) |
|
|
|
} else { |
|
|
|
return session.Where("role_id = ?", roleId).Delete(model.AdminRole{}) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
func (adminWithEnterpriseDb *AdminWithEnterpriseDb) AdminRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) { |
|
|
|
if reflect.TypeOf(id).Kind() == reflect.Slice { |
|
|
|
return session.In("id", id).Delete(model.AdminRole{}) |
|
|
|
} else { |
|
|
|
return session.Where("adm_id = ?", id).Delete(model.AdminRole{}) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
func (adminWithEnterpriseDb *AdminWithEnterpriseDb) BatchAddAdminRoleBySession(session *xorm.Session, mm []*model.AdminRole) (int64, error) { |
|
|
|
affected, err := session.Insert(mm) |
|
|
|
if err != nil { |
|
|
|
return 0, err |
|
|
|
} |
|
|
|
return affected, nil |
|
|
|
} |