# Conflicts: # app/db/dao/sys_cfg_dao.go # app/db/implement/admin_implement.go # app/db/implement/admin_role_implement.go # app/db/implement/sys_cfg_implement.go # app/db/model/admin.go # app/db/super/dao/medium_list_dao.go # app/db/super/implement/medium_list_implement.go # app/hdl/hdl_login.go # go.modmaster
@@ -0,0 +1,13 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type AgentDao interface { | |||
GetAgentByUsername(username string) (medium *model.Agent, err error) | |||
AgentInsert(m *model.Agent) (int64, error) | |||
AgentDeleteBySession(session *xorm.Session, id interface{}) (int64, error) | |||
UpdateAgent(m *model.Agent, columns ...string) (int64, error) | |||
} |
@@ -0,0 +1,5 @@ | |||
package dao | |||
type AgentDomainDao interface { | |||
//TODO:: You can add specific method definitions here | |||
} |
@@ -0,0 +1,5 @@ | |||
package dao | |||
type AgentPermissionDao interface { | |||
//TODO:: You can add specific method definitions here | |||
} |
@@ -0,0 +1,8 @@ | |||
package dao | |||
import "applet/app/db/model" | |||
type AgentPermissionGroupDao interface { | |||
FindAgentPermissionGroup() (*[]model.AgentPermissionGroup, error) | |||
FindAgentPermissionGroupV2() (*[]model.AgentPermissionGroup, error) | |||
} |
@@ -0,0 +1,5 @@ | |||
package dao | |||
type AgentPermissionGroupPermissionDao interface { | |||
//TODO:: You can add specific method definitions here | |||
} |
@@ -0,0 +1,25 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type AgentRoleDao interface { | |||
FindAgentRole() (*[]model.AgentRole, error) | |||
GetAgentRole() (m *model.AgentRole, err error) | |||
UpdateAgentRole(m *model.AgentRole, columns ...string) (int64, error) | |||
AgentRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) | |||
AgentRoleInsert(m *model.AgentRole) (int, error) | |||
FindPermissionGroupByAgentRole(roleId int) (list []*AgentRolePermissionGroup, total int64, err error) | |||
} | |||
type AgentRolePermissionGroup struct { | |||
model.AgentRole `xorm:"extends"` | |||
model.AgentRolePermissionGroup `xorm:"extends"` | |||
model.AgentPermissionGroup `xorm:"extends"` | |||
} | |||
func (AgentRolePermissionGroup) TableName() string { | |||
return "agent_role" | |||
} |
@@ -0,0 +1,11 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type AgentRolePermissionGroupDao interface { | |||
AgentRolePermissionGroupDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) | |||
BatchAddAgentRolePermissionGroupBySession(session *xorm.Session, mm []*model.AgentRolePermissionGroup) (int64, error) | |||
} |
@@ -0,0 +1,16 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type AgentWithRoleDao interface { | |||
FindAgentWithRole(id int) (*[]model.AgentWithRole, error) | |||
FindAgentWithRoleByRoleId(id int) (*[]model.AgentWithRole, error) | |||
AdminDeleteBySessionForAdmId(session *xorm.Session, admId interface{}) (int64, error) | |||
GetAgentWithRoleByRole(id int) (m *model.AgentWithRole, err error) | |||
AgentWithRoleDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) | |||
AgentWithRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) | |||
BatchAddAgentWithRoleBySession(session *xorm.Session, mm []*model.AgentWithRole) (int64, error) | |||
} |
@@ -0,0 +1,13 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type MediumDao interface { | |||
GetMediumByUsername(username string) (medium *model.Medium, err error) | |||
MediumInsert(m *model.Medium) (int64, error) | |||
MediumDeleteBySession(session *xorm.Session, id interface{}) (int64, error) | |||
UpdateMedium(m *model.Medium, columns ...string) (int64, error) | |||
} |
@@ -0,0 +1,10 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
) | |||
type MediumDomainDao interface { | |||
GetMediumDomain(mediumId int) (medium *model.MediumDomain, err error) | |||
MediumDomainInsert(m *model.MediumDomain) (int64, error) | |||
} |
@@ -0,0 +1,5 @@ | |||
package dao | |||
type MediumPermissionDao interface { | |||
//TODO:: You can add specific method definitions here | |||
} |
@@ -0,0 +1,8 @@ | |||
package dao | |||
import "applet/app/db/model" | |||
type MediumPermissionGroupDao interface { | |||
FindMediumPermissionGroup() (*[]model.MediumPermissionGroup, error) | |||
FindMediumPermissionGroupV2() (*[]model.MediumPermissionGroup, error) | |||
} |
@@ -0,0 +1,5 @@ | |||
package dao | |||
type MediumPermissionGroupPermissionDao interface { | |||
//TODO:: You can add specific method definitions here | |||
} |
@@ -0,0 +1,25 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type MediumRoleDao interface { | |||
FindMediumRole() (*[]model.MediumRole, error) | |||
GetMediumRole() (m *model.MediumRole, err error) | |||
UpdateMediumRole(m *model.MediumRole, columns ...string) (int64, error) | |||
MediumRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) | |||
MediumRoleInsert(m *model.MediumRole) (int, error) | |||
FindPermissionGroupByMediumRole(roleId int) (list []*MediumRolePermissionGroup, total int64, err error) | |||
} | |||
type MediumRolePermissionGroup struct { | |||
model.MediumRole `xorm:"extends"` | |||
model.MediumRolePermissionGroup `xorm:"extends"` | |||
model.MediumPermissionGroup `xorm:"extends"` | |||
} | |||
func (MediumRolePermissionGroup) TableName() string { | |||
return "medium_role" | |||
} |
@@ -0,0 +1,11 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type MediumRolePermissionGroupDao interface { | |||
MediumRolePermissionGroupDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) | |||
BatchAddMediumRolePermissionGroupBySession(session *xorm.Session, mm []*model.MediumRolePermissionGroup) (int64, error) | |||
} |
@@ -0,0 +1,16 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type MediumWithRoleDao interface { | |||
FindMediumWithRole(id int) (*[]model.MediumWithRole, error) | |||
FindMediumWithRoleByRoleId(id int) (*[]model.MediumWithRole, error) | |||
AdminDeleteBySessionForAdmId(session *xorm.Session, admId interface{}) (int64, error) | |||
GetMediumWithRoleByRole(id int) (m *model.MediumWithRole, err error) | |||
MediumWithRoleDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) | |||
MediumWithRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) | |||
BatchAddMediumWithRoleBySession(session *xorm.Session, mm []*model.MediumWithRole) (int64, error) | |||
} |
@@ -0,0 +1,14 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"xorm.io/xorm" | |||
) | |||
func NewAgentDomainDb(engine *xorm.Engine) dao.AgentDomainDao { | |||
return &AgentDomainDb{Db: engine} | |||
} | |||
type AgentDomainDb struct { | |||
Db *xorm.Engine | |||
} |
@@ -0,0 +1,53 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewAgentDb(engine *xorm.Engine) dao.AgentDao { | |||
return &AgentDb{Db: engine} | |||
} | |||
type AgentDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (a AgentDb) GetAgentByUsername(username string) (agent *model.Agent, err error) { | |||
agent = new(model.Agent) | |||
has, err := a.Db.Where("username =?", username).Get(agent) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return agent, nil | |||
} | |||
func (a AgentDb) AgentInsert(m *model.Agent) (int64, error) { | |||
insertAffected, err := a.Db.InsertOne(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return insertAffected, nil | |||
} | |||
func (a AgentDb) AgentDeleteBySession(session *xorm.Session, id interface{}) (int64, error) { | |||
if reflect.TypeOf(id).Kind() == reflect.Slice { | |||
return session.In("id", id).Delete(model.Admin{}) | |||
} else { | |||
return session.Where("id = ?", id).Delete(model.Admin{}) | |||
} | |||
} | |||
func (a AgentDb) UpdateAgent(m *model.Agent, columns ...string) (int64, error) { | |||
affected, err := a.Db.Where("id =?", m.Id).Cols(columns...).Update(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} |
@@ -0,0 +1,33 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/enum" | |||
"applet/app/utils/logx" | |||
"xorm.io/xorm" | |||
) | |||
func NewAgentPermissionGroupDb(engine *xorm.Engine) dao.AgentPermissionGroupDao { | |||
return &AgentPermissionGroupDb{Db: engine} | |||
} | |||
type AgentPermissionGroupDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (a AgentPermissionGroupDb) FindAgentPermissionGroup() (*[]model.AgentPermissionGroup, error) { | |||
var mm []model.AgentPermissionGroup | |||
if err := a.Db.Where("state = ?", enum.PermissionGroupStateForNormal).Asc("id").Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} | |||
func (a AgentPermissionGroupDb) FindAgentPermissionGroupV2() (*[]model.AgentPermissionGroup, error) { | |||
var mm []model.AgentPermissionGroup | |||
if err := a.Db.Asc("id").Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} |
@@ -0,0 +1,14 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"xorm.io/xorm" | |||
) | |||
func NewAgentPermissionGroupPermissionDb(engine *xorm.Engine) dao.AgentPermissionGroupPermissionDao { | |||
return &AgentPermissionGroupPermissionDb{Db: engine} | |||
} | |||
type AgentPermissionGroupPermissionDb struct { | |||
Db *xorm.Engine | |||
} |
@@ -0,0 +1,14 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"xorm.io/xorm" | |||
) | |||
func NewAgentPermissionDb(engine *xorm.Engine) dao.AgentPermissionDao { | |||
return &AgentPermissionDb{Db: engine} | |||
} | |||
type AgentPermissionDb struct { | |||
Db *xorm.Engine | |||
} |
@@ -0,0 +1,69 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewAgentRoleDb(engine *xorm.Engine) dao.AgentRoleDao { | |||
return &AgentRoleDb{Db: engine} | |||
} | |||
type AgentRoleDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (a AgentRoleDb) FindAgentRole() (*[]model.AgentRole, error) { | |||
var mm []model.AgentRole | |||
if err := a.Db.Desc("id").Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} | |||
func (a AgentRoleDb) GetAgentRole() (m *model.AgentRole, err error) { | |||
m = new(model.AgentRole) | |||
has, err := a.Db.Where("id = ?", m.Id).Get(m) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return m, nil | |||
} | |||
func (a AgentRoleDb) UpdateAgentRole(m *model.AgentRole, columns ...string) (int64, error) { | |||
affected, err := a.Db.Where("id =?", m.Id).Cols(columns...).Update(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} | |||
func (a AgentRoleDb) AgentRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) { | |||
if reflect.TypeOf(id).Kind() == reflect.Slice { | |||
return session.In("id", id).Delete(model.Role{}) | |||
} else { | |||
return session.Where("id = ?", id).Delete(model.Role{}) | |||
} | |||
} | |||
func (a AgentRoleDb) AgentRoleInsert(m *model.AgentRole) (int, error) { | |||
_, err := a.Db.InsertOne(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return m.Id, nil | |||
} | |||
func (a AgentRoleDb) FindPermissionGroupByAgentRole(roleId int) (list []*dao.AgentRolePermissionGroup, total int64, err error) { | |||
total, err = a.Db.Where("agent_role.id =?", roleId). | |||
Join("LEFT", "agent_role_permission_group", "agent_role_permission_group.role_id = agent_role.id"). | |||
Join("LEFT", "agent_permission_group", "agent_permission_group.id = agent_role_permission_group.group_id"). | |||
FindAndCount(&list) | |||
return | |||
} |
@@ -0,0 +1,32 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewAgentRolePermissionGroupDb(engine *xorm.Engine) dao.AgentRolePermissionGroupDao { | |||
return &AgentRolePermissionGroupDb{Db: engine} | |||
} | |||
type AgentRolePermissionGroupDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (a AgentRolePermissionGroupDb) AgentRolePermissionGroupDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) { | |||
if reflect.TypeOf(roleId).Kind() == reflect.Slice { | |||
return session.In("role_id", roleId).Delete(model.AgentRolePermissionGroup{}) | |||
} else { | |||
return session.Where("role_id = ?", roleId).Delete(model.AgentRolePermissionGroup{}) | |||
} | |||
} | |||
func (a AgentRolePermissionGroupDb) BatchAddAgentRolePermissionGroupBySession(session *xorm.Session, mm []*model.AgentRolePermissionGroup) (int64, error) { | |||
affected, err := session.Insert(mm) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} |
@@ -0,0 +1,77 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewAgentWithRoleDb(engine *xorm.Engine) dao.AgentWithRoleDao { | |||
return &AgentWithRoleDb{Db: engine} | |||
} | |||
type AgentWithRoleDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (a AgentWithRoleDb) FindAgentWithRole(id int) (*[]model.AgentWithRole, error) { | |||
var mm []model.AgentWithRole | |||
if err := a.Db.Where("adm_id =?", id).Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} | |||
func (a AgentWithRoleDb) FindAgentWithRoleByRoleId(id int) (*[]model.AgentWithRole, error) { | |||
var mm []model.AgentWithRole | |||
if err := a.Db.Where("role_id =?", id).Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} | |||
func (a AgentWithRoleDb) AdminDeleteBySessionForAdmId(session *xorm.Session, admId interface{}) (int64, error) { | |||
if reflect.TypeOf(admId).Kind() == reflect.Slice { | |||
return session.In("adm_id", admId).Delete(model.AgentWithRole{}) | |||
} else { | |||
return session.Where("adm_id = ?", admId).Delete(model.AgentWithRole{}) | |||
} | |||
} | |||
func (a AgentWithRoleDb) GetAgentWithRoleByRole(id int) (mm *model.AgentWithRole, err error) { | |||
mm = new(model.AgentWithRole) | |||
has, err := a.Db.Where("role_id =?", id).Get(mm) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return mm, nil | |||
} | |||
func (a AgentWithRoleDb) AgentWithRoleDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) { | |||
if reflect.TypeOf(roleId).Kind() == reflect.Slice { | |||
return session.In("role_id", roleId).Delete(model.AgentWithRole{}) | |||
} else { | |||
return session.Where("role_id = ?", roleId).Delete(model.AgentWithRole{}) | |||
} | |||
} | |||
func (a AgentWithRoleDb) AgentWithRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) { | |||
if reflect.TypeOf(id).Kind() == reflect.Slice { | |||
return session.In("agent_id", id).Delete(model.AgentWithRole{}) | |||
} else { | |||
return session.Where("agent_id = ?", id).Delete(model.AgentWithRole{}) | |||
} | |||
} | |||
func (a AgentWithRoleDb) BatchAddAgentWithRoleBySession(session *xorm.Session, mm []*model.AgentWithRole) (int64, error) { | |||
affected, err := session.Insert(mm) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} |
@@ -0,0 +1,36 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"xorm.io/xorm" | |||
) | |||
func NewMediumDomainDb(engine *xorm.Engine) dao.MediumDomainDao { | |||
return &MediumDomainDb{Db: engine} | |||
} | |||
type MediumDomainDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (m MediumDomainDb) GetMediumDomain(mediumId int) (medium *model.MediumDomain, err error) { | |||
medium = new(model.MediumDomain) | |||
has, err := m.Db.Where("medium_id =?", mediumId).Get(medium) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return medium, nil | |||
} | |||
func (m MediumDomainDb) MediumDomainInsert(medium *model.MediumDomain) (int64, error) { | |||
insertAffected, err := m.Db.InsertOne(medium) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return insertAffected, nil | |||
} |
@@ -0,0 +1,53 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewMediumDb(engine *xorm.Engine) dao.MediumDao { | |||
return &MediumDb{Db: engine} | |||
} | |||
type MediumDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (m MediumDb) UpdateMedium(medium *model.Medium, columns ...string) (int64, error) { | |||
affected, err := m.Db.Where("id =?", medium.Id).Cols(columns...).Update(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} | |||
func (m MediumDb) GetMediumByUsername(username string) (medium *model.Medium, err error) { | |||
medium = new(model.Medium) | |||
has, err := m.Db.Where("username =?", username).Get(medium) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return medium, nil | |||
} | |||
func (m MediumDb) MediumInsert(medium *model.Medium) (int64, error) { | |||
insertAffected, err := m.Db.InsertOne(medium) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return insertAffected, nil | |||
} | |||
func (m MediumDb) MediumDeleteBySession(session *xorm.Session, id interface{}) (int64, error) { | |||
if reflect.TypeOf(id).Kind() == reflect.Slice { | |||
return session.In("id", id).Delete(model.Admin{}) | |||
} else { | |||
return session.Where("id = ?", id).Delete(model.Admin{}) | |||
} | |||
} |
@@ -0,0 +1,33 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/enum" | |||
"applet/app/utils/logx" | |||
"xorm.io/xorm" | |||
) | |||
func NewMediumPermissionGroupDb(engine *xorm.Engine) dao.MediumPermissionGroupDao { | |||
return &MediumPermissionGroupDb{Db: engine} | |||
} | |||
type MediumPermissionGroupDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (m MediumPermissionGroupDb) FindMediumPermissionGroup() (*[]model.MediumPermissionGroup, error) { | |||
var mm []model.MediumPermissionGroup | |||
if err := m.Db.Where("state = ?", enum.PermissionGroupStateForNormal).Asc("id").Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} | |||
func (m MediumPermissionGroupDb) FindMediumPermissionGroupV2() (*[]model.MediumPermissionGroup, error) { | |||
var mm []model.MediumPermissionGroup | |||
if err := m.Db.Asc("id").Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} |
@@ -0,0 +1,14 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"xorm.io/xorm" | |||
) | |||
func NewMediumPermissionGroupPermissionDb(engine *xorm.Engine) dao.MediumPermissionGroupPermissionDao { | |||
return &MediumPermissionGroupPermissionDb{Db: engine} | |||
} | |||
type MediumPermissionGroupPermissionDb struct { | |||
Db *xorm.Engine | |||
} |
@@ -0,0 +1,14 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"xorm.io/xorm" | |||
) | |||
func NewMediumPermissionDb(engine *xorm.Engine) dao.MediumPermissionDao { | |||
return &MediumPermissionDb{Db: engine} | |||
} | |||
type MediumPermissionDb struct { | |||
Db *xorm.Engine | |||
} |
@@ -0,0 +1,69 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewMediumRoleDb(engine *xorm.Engine) dao.MediumRoleDao { | |||
return &MediumRoleDb{Db: engine} | |||
} | |||
type MediumRoleDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (m MediumRoleDb) FindMediumRole() (*[]model.MediumRole, error) { | |||
var mm []model.MediumRole | |||
if err := m.Db.Desc("id").Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} | |||
func (m MediumRoleDb) GetMediumRole() (mm *model.MediumRole, err error) { | |||
mm = new(model.MediumRole) | |||
has, err := m.Db.Where("id = ?", mm.Id).Get(mm) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return mm, nil | |||
} | |||
func (m MediumRoleDb) UpdateMediumRole(mm *model.MediumRole, columns ...string) (int64, error) { | |||
affected, err := m.Db.Where("id =?", mm.Id).Cols(columns...).Update(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} | |||
func (m MediumRoleDb) MediumRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) { | |||
if reflect.TypeOf(id).Kind() == reflect.Slice { | |||
return session.In("id", id).Delete(model.MediumRole{}) | |||
} else { | |||
return session.Where("id = ?", id).Delete(model.MediumRole{}) | |||
} | |||
} | |||
func (m MediumRoleDb) MediumRoleInsert(mm *model.MediumRole) (int, error) { | |||
_, err := m.Db.InsertOne(mm) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return mm.Id, nil | |||
} | |||
func (m MediumRoleDb) FindPermissionGroupByMediumRole(roleId int) (list []*dao.MediumRolePermissionGroup, total int64, err error) { | |||
total, err = m.Db.Where("medium_role.id =?", roleId). | |||
Join("LEFT", "medium_role_permission_group", "medium_role_permission_group.role_id = medium_role.id"). | |||
Join("LEFT", "medium_permission_group", "medium_permission_group.id = medium_role_permission_group.group_id"). | |||
FindAndCount(&list) | |||
return | |||
} |
@@ -0,0 +1,32 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewMediumRolePermissionGroupDb(engine *xorm.Engine) dao.MediumRolePermissionGroupDao { | |||
return &MediumRolePermissionGroupDb{Db: engine} | |||
} | |||
type MediumRolePermissionGroupDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (m MediumRolePermissionGroupDb) MediumRolePermissionGroupDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) { | |||
if reflect.TypeOf(roleId).Kind() == reflect.Slice { | |||
return session.In("role_id", roleId).Delete(model.MediumRolePermissionGroup{}) | |||
} else { | |||
return session.Where("role_id = ?", roleId).Delete(model.MediumRolePermissionGroup{}) | |||
} | |||
} | |||
func (m MediumRolePermissionGroupDb) BatchAddMediumRolePermissionGroupBySession(session *xorm.Session, mm []*model.MediumRolePermissionGroup) (int64, error) { | |||
affected, err := session.Insert(mm) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} |
@@ -0,0 +1,77 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewMediumWithRoleDb(engine *xorm.Engine) dao.MediumWithRoleDao { | |||
return &MediumWithRoleDb{Db: engine} | |||
} | |||
type MediumWithRoleDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (m MediumWithRoleDb) FindMediumWithRole(id int) (*[]model.MediumWithRole, error) { | |||
var mm []model.MediumWithRole | |||
if err := m.Db.Where("adm_id =?", id).Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} | |||
func (m MediumWithRoleDb) FindMediumWithRoleByRoleId(id int) (*[]model.MediumWithRole, error) { | |||
var mm []model.MediumWithRole | |||
if err := m.Db.Where("role_id =?", id).Find(&mm); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &mm, nil | |||
} | |||
func (m MediumWithRoleDb) AdminDeleteBySessionForAdmId(session *xorm.Session, admId interface{}) (int64, error) { | |||
if reflect.TypeOf(admId).Kind() == reflect.Slice { | |||
return session.In("adm_id", admId).Delete(model.MediumWithRole{}) | |||
} else { | |||
return session.Where("adm_id = ?", admId).Delete(model.MediumWithRole{}) | |||
} | |||
} | |||
func (m MediumWithRoleDb) GetMediumWithRoleByRole(id int) (mm *model.MediumWithRole, err error) { | |||
mm = new(model.MediumWithRole) | |||
has, err := m.Db.Where("role_id =?", id).Get(mm) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return mm, nil | |||
} | |||
func (m MediumWithRoleDb) MediumWithRoleDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) { | |||
if reflect.TypeOf(roleId).Kind() == reflect.Slice { | |||
return session.In("role_id", roleId).Delete(model.MediumWithRole{}) | |||
} else { | |||
return session.Where("role_id = ?", roleId).Delete(model.MediumWithRole{}) | |||
} | |||
} | |||
func (m MediumWithRoleDb) MediumWithRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) { | |||
if reflect.TypeOf(id).Kind() == reflect.Slice { | |||
return session.In("medium_id", id).Delete(model.MediumWithRole{}) | |||
} else { | |||
return session.Where("medium_id = ?", id).Delete(model.MediumWithRole{}) | |||
} | |||
} | |||
func (m MediumWithRoleDb) BatchAddMediumWithRoleBySession(session *xorm.Session, mm []*model.MediumWithRole) (int64, error) { | |||
affected, err := session.Insert(mm) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} |
@@ -0,0 +1,13 @@ | |||
package model | |||
type Agent struct { | |||
Id int `json:"id" xorm:"not null pk default 0 INT(11)"` | |||
AgentId int `json:"agent_id" xorm:"not null default 0 comment('代理id') INT(11)"` | |||
Username string `json:"username" xorm:"not null default '' comment('用户名') VARCHAR(255)"` | |||
Password string `json:"password" xorm:"not null default '' comment('密码') VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | |||
IsSuperAdministrator int `json:"is_super_administrator" xorm:"not null default 0 comment('是否为超级管理员(0:否 1:是)') TINYINT(1)"` | |||
Memo string `json:"memo" xorm:"not null default '' comment('备注信息') VARCHAR(244)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,8 @@ | |||
package model | |||
type AgentDomain struct { | |||
Domain string `json:"domain" xorm:"not null pk comment('绑定域名') VARCHAR(100)"` | |||
MediumId int `json:"medium_id" xorm:"not null comment('媒体id') index unique INT(11)"` | |||
IsOfficial int `json:"is_official" xorm:"not null default 1 comment('是否官方指定域名(1:是 2:否)') TINYINT(1)"` | |||
IsSsl int `json:"is_ssl" xorm:"not null default 0 comment('是否开启ssl:0否;1是') TINYINT(255)"` | |||
} |
@@ -0,0 +1,10 @@ | |||
package model | |||
type AgentPermission struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | |||
Action string `json:"action" xorm:"not null default '' comment('路由') unique VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:废弃)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,11 @@ | |||
package model | |||
type AgentPermissionGroup struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
ParentId int `json:"parent_id" xorm:"not null default 0 comment('父级id') INT(11)"` | |||
Key string `json:"key" xorm:"not null default '' VARCHAR(255)"` | |||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:废弃)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,9 @@ | |||
package model | |||
type AgentPermissionGroupPermission struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
GroupId int `json:"group_id" xorm:"not null default 0 comment('权限组id') INT(11)"` | |||
PermissionId int `json:"permission_id" xorm:"not null default 0 comment('权限id') INT(11)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,10 @@ | |||
package model | |||
type AgentRole struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | |||
Memo string `json:"memo" xorm:"not null default '' comment('备注') VARCHAR(255)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,9 @@ | |||
package model | |||
type AgentRolePermissionGroup struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
RoleId int `json:"role_id" xorm:"not null default 0 comment('角色id') INT(11)"` | |||
GroupId int `json:"group_id" xorm:"not null default 0 comment('权限组id') INT(11)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,10 @@ | |||
package model | |||
type AgentWithRole struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
AgentId int `json:"agent_id" xorm:"not null default 0 comment('管理员id') INT(11)"` | |||
RoleId int `json:"role_id" xorm:"not null default 0 comment('角色id') INT(11)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,13 @@ | |||
package model | |||
type Medium struct { | |||
Id int `json:"id" xorm:"not null pk default 0 INT(11)"` | |||
MediumId int `json:"medium_id" xorm:"not null default 0 comment('媒体id') INT(11)"` | |||
Username string `json:"username" xorm:"not null default '' comment('用户名') VARCHAR(255)"` | |||
Password string `json:"password" xorm:"not null default '' comment('密码') VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | |||
IsSuperAdministrator int `json:"is_super_administrator" xorm:"not null default 0 comment('是否为超级管理员(0:否 1:是)') TINYINT(1)"` | |||
Memo string `json:"memo" xorm:"not null default '' comment('备注信息') VARCHAR(244)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,8 @@ | |||
package model | |||
type MediumDomain struct { | |||
Domain string `json:"domain" xorm:"not null pk comment('绑定域名') VARCHAR(100)"` | |||
MediumId int `json:"medium_id" xorm:"not null comment('媒体id') index unique INT(11)"` | |||
IsOfficial int `json:"is_official" xorm:"not null default 1 comment('是否官方指定域名(1:是 2:否)') TINYINT(1)"` | |||
IsSsl int `json:"is_ssl" xorm:"not null default 0 comment('是否开启ssl:0否;1是') TINYINT(255)"` | |||
} |
@@ -0,0 +1,10 @@ | |||
package model | |||
type MediumPermission struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | |||
Action string `json:"action" xorm:"not null default '' comment('路由') unique VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:废弃)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,11 @@ | |||
package model | |||
type MediumPermissionGroup struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
ParentId int `json:"parent_id" xorm:"not null default 0 comment('父级id') INT(11)"` | |||
Key string `json:"key" xorm:"not null default '' VARCHAR(255)"` | |||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:废弃)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,9 @@ | |||
package model | |||
type MediumPermissionGroupPermission struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
GroupId int `json:"group_id" xorm:"not null default 0 comment('权限组id') INT(11)"` | |||
PermissionId int `json:"permission_id" xorm:"not null default 0 comment('权限id') INT(11)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,10 @@ | |||
package model | |||
type MediumRole struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | |||
Memo string `json:"memo" xorm:"not null default '' comment('备注') VARCHAR(255)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,9 @@ | |||
package model | |||
type MediumRolePermissionGroup struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
RoleId int `json:"role_id" xorm:"not null default 0 comment('角色id') INT(11)"` | |||
GroupId int `json:"group_id" xorm:"not null default 0 comment('权限组id') INT(11)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,10 @@ | |||
package model | |||
type MediumWithRole struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
MediumId int `json:"medium_id" xorm:"not null default 0 comment('媒体id') INT(11)"` | |||
RoleId int `json:"role_id" xorm:"not null default 0 comment('角色id') INT(11)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,44 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type AdminDao interface { | |||
CreateAdminId() (admId int, err error) | |||
AdminDeleteBySession(session *xorm.Session, admId interface{}) (int64, error) | |||
GetAdmin(id int) (m *model.Admin, err error) | |||
GetAdminByUserName(userName string) (m *model.Admin, err error) | |||
GetAdminRolePermission(admId int) (list []*AdminRolePermission, total int64, err error) | |||
FindAdmin(username string, state, page, limit int) (list []model.Admin, total int64, err error) | |||
UpdateAdmin(m *model.Admin, columns ...string) (int64, error) | |||
AdminInsert(m *model.Admin) (int64, error) | |||
FindAdminRolePermissionGroup(admId int) (list []*AdminRolePermissionGroup, total int64, err error) | |||
} | |||
type AdminRolePermissionGroup struct { | |||
model.Admin `xorm:"extends"` | |||
model.AdminRole `xorm:"extends"` | |||
model.Role `xorm:"extends"` | |||
model.RolePermissionGroup `xorm:"extends"` | |||
model.PermissionGroup `xorm:"extends"` | |||
} | |||
func (AdminRolePermissionGroup) TableName() string { | |||
return "admin" | |||
} | |||
type AdminRolePermission struct { | |||
model.Admin `xorm:"extends"` | |||
model.AdminRole `xorm:"extends"` | |||
model.Role `xorm:"extends"` | |||
model.RolePermissionGroup `xorm:"extends"` | |||
model.PermissionGroup `xorm:"extends"` | |||
model.PermissionGroupPermission `xorm:"extends"` | |||
model.Permission `xorm:"extends"` | |||
} | |||
func (AdminRolePermission) TableName() string { | |||
return "admin" | |||
} |
@@ -0,0 +1,25 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type AdminRoleDao interface { | |||
FindAdminRole(id int) (*[]model.AdminRole, error) | |||
FindAdminRoleByRoleId(id int) (*[]model.AdminRole, error) | |||
AdminDeleteBySessionForAdmId(session *xorm.Session, admId interface{}) (int64, error) | |||
GetAdminRoleByRole(id int) (m *model.AdminRole, err error) | |||
AdminRoleDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) | |||
AdminRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) | |||
BatchAddAdminRoleBySession(session *xorm.Session, mm []*model.AdminRole) (int64, error) | |||
} | |||
type AdminRole struct { | |||
model.Admin `xorm:"extends"` | |||
model.AdminRole `xorm:"extends"` | |||
} | |||
func (AdminRole) TableName() string { | |||
return "admin_role" | |||
} |
@@ -0,0 +1,9 @@ | |||
package dao | |||
import "applet/app/db/super/model" | |||
type AgentListDao interface { | |||
GetAgentList(agentId int) (medium *model.AgentList, err error) | |||
AgentListInsert(m *model.AgentList) (int64, error) | |||
UpdateAgentList(m *model.AgentList, columns ...string) (int64, error) | |||
} |
@@ -0,0 +1,5 @@ | |||
package dao | |||
type PermissionDao interface { | |||
//TODO:: You can add specific method definitions here | |||
} |
@@ -0,0 +1,8 @@ | |||
package dao | |||
import "applet/app/db/model" | |||
type PermissionGroupDao interface { | |||
FindPermissionGroup() (*[]model.PermissionGroup, error) | |||
FindPermissionGroupV2() (*[]model.PermissionGroup, error) | |||
} |
@@ -0,0 +1,5 @@ | |||
package dao | |||
type PermissionGroupPermissionDao interface { | |||
//TODO:: You can add specific method definitions here | |||
} |
@@ -0,0 +1,25 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type RoleDao interface { | |||
FindRole() (*[]model.Role, error) | |||
GetRole() (m *model.Role, err error) | |||
UpdateRole(m *model.Role, columns ...string) (int64, error) | |||
RoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) | |||
RoleInsert(m *model.Role) (int, error) | |||
FindPermissionGroupByRole(roleId int) (list []*RolePermissionGroup, total int64, err error) | |||
} | |||
type RolePermissionGroup struct { | |||
model.Role `xorm:"extends"` | |||
model.RolePermissionGroup `xorm:"extends"` | |||
model.PermissionGroup `xorm:"extends"` | |||
} | |||
func (RolePermissionGroup) TableName() string { | |||
return "role" | |||
} |
@@ -0,0 +1,11 @@ | |||
package dao | |||
import ( | |||
"applet/app/db/model" | |||
"xorm.io/xorm" | |||
) | |||
type RolePermissionGroupDao interface { | |||
RolePermissionGroupDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) | |||
BatchAddRolePermissionGroupBySession(session *xorm.Session, mm []*model.RolePermissionGroup) (int64, error) | |||
} |
@@ -0,0 +1,115 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewAdminDb(engine *xorm.Engine) dao.AdminDao { | |||
return &AdminDb{Db: engine} | |||
} | |||
type AdminDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (a AdminDb) CreateAdminId() (admId int, err error) { | |||
m := new(model.Admin) | |||
has, err := a.Db.Desc("adm_id").Get(m) | |||
if err != nil { | |||
return 0, logx.Error(err) | |||
} | |||
if has == false { | |||
return 0, nil | |||
} | |||
admId = m.AdmId + 1 | |||
return admId, nil | |||
} | |||
func (a AdminDb) AdminDeleteBySession(session *xorm.Session, admId interface{}) (int64, error) { | |||
if reflect.TypeOf(admId).Kind() == reflect.Slice { | |||
return session.In("adm_id", admId).Delete(model.Admin{}) | |||
} else { | |||
return session.Where("adm_id = ?", admId).Delete(model.Admin{}) | |||
} | |||
} | |||
func (a AdminDb) GetAdmin(id int) (m *model.Admin, err error) { | |||
m = new(model.Admin) | |||
has, err := a.Db.Where("adm_id =?", id).Get(m) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return m, nil | |||
} | |||
func (a AdminDb) GetAdminByUserName(userName string) (m *model.Admin, err error) { | |||
m = new(model.Admin) | |||
has, err := a.Db.Where("username =?", userName).Get(m) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return m, nil | |||
} | |||
func (a AdminDb) GetAdminRolePermission(admId int) (list []*dao.AdminRolePermission, total int64, err error) { | |||
total, err = a.Db.Where("admin.adm_id =?", admId). | |||
Join("LEFT", "admin_role", "admin.adm_id = admin_role.adm_id"). | |||
Join("LEFT", "role", "admin_role.role_id = role.id"). | |||
Join("LEFT", "role_permission_group", "role.id = role_permission_group.role_id"). | |||
Join("LEFT", "permission_group", "role_permission_group.group_id = permission_group.id"). | |||
Join("LEFT", "permission_group_permission", "permission_group.id = permission_group_permission.group_id"). | |||
Join("LEFT", "permission", "permission_group_permission.permission_id = permission.id"). | |||
FindAndCount(&list) | |||
return | |||
} | |||
func (a AdminDb) FindAdmin(username string, state, page, limit int) (list []model.Admin, total int64, err error) { | |||
sess := a.Db.Desc("adm_id").Limit(limit, (page-1)*limit) | |||
if username != "" { | |||
sess.And("username like ?", "%"+username+"%") | |||
} | |||
if state != 0 { | |||
sess.And("state = ?", state) | |||
} | |||
total, err = sess.FindAndCount(&list) | |||
if err != nil { | |||
return nil, 0, err | |||
} | |||
return | |||
} | |||
func (a AdminDb) UpdateAdmin(m *model.Admin, columns ...string) (int64, error) { | |||
affected, err := a.Db.Where("adm_id =?", m.AdmId).Cols(columns...).Update(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} | |||
func (a AdminDb) AdminInsert(m *model.Admin) (int64, error) { | |||
insertAffected, err := a.Db.InsertOne(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return insertAffected, nil | |||
} | |||
func (a AdminDb) FindAdminRolePermissionGroup(admId int) (list []*dao.AdminRolePermissionGroup, total int64, err error) { | |||
total, err = a.Db.Where("admin.adm_id =?", admId). | |||
Join("LEFT", "admin_role", "admin.adm_id = admin_role.adm_id"). | |||
Join("LEFT", "role", "admin_role.role_id = role.id"). | |||
//Join("LEFT", "role_permission_group", "role.id = role_permission_group.role_id"). | |||
//Join("LEFT", "permission_group", "role_permission_group.group_id = permission_group.id"). | |||
FindAndCount(&list) | |||
return | |||
} |
@@ -0,0 +1,77 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewAdminRoleDb(engine *xorm.Engine) dao.AdminRoleDao { | |||
return &AdminRoleDb{Db: engine} | |||
} | |||
type AdminRoleDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (a AdminRoleDb) FindAdminRole(id int) (*[]model.AdminRole, error) { | |||
var m []model.AdminRole | |||
if err := a.Db.Where("adm_id =?", id).Find(&m); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &m, nil | |||
} | |||
func (a AdminRoleDb) FindAdminRoleByRoleId(id int) (*[]model.AdminRole, error) { | |||
var m []model.AdminRole | |||
if err := a.Db.Where("role_id =?", id).Find(&m); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &m, nil | |||
} | |||
func (a AdminRoleDb) 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 (a AdminRoleDb) GetAdminRoleByRole(id int) (m *model.AdminRole, err error) { | |||
m = new(model.AdminRole) | |||
has, err := a.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 (a AdminRoleDb) 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 (a AdminRoleDb) AdminRoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) { | |||
if reflect.TypeOf(id).Kind() == reflect.Slice { | |||
return session.In("adm_id", id).Delete(model.AdminRole{}) | |||
} else { | |||
return session.Where("adm_id = ?", id).Delete(model.AdminRole{}) | |||
} | |||
} | |||
func (a AdminRoleDb) BatchAddAdminRoleBySession(session *xorm.Session, mm []*model.AdminRole) (int64, error) { | |||
affected, err := session.Insert(mm) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} |
@@ -0,0 +1,44 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/super/dao" | |||
"applet/app/db/super/model" | |||
"applet/app/utils/logx" | |||
"xorm.io/xorm" | |||
) | |||
func NewAgentListDb(engine *xorm.Engine) dao.AgentListDao { | |||
return &AgentListDb{Db: engine} | |||
} | |||
type AgentListDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (a AgentListDb) GetAgentList(agentId int) (medium *model.AgentList, err error) { | |||
medium = new(model.AgentList) | |||
has, err := a.Db.Where("agent_id =?", agentId).Get(medium) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return medium, nil | |||
} | |||
func (a AgentListDb) AgentListInsert(m *model.AgentList) (int64, error) { | |||
insertAffected, err := a.Db.InsertOne(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return insertAffected, nil | |||
} | |||
func (a AgentListDb) UpdateAgentList(m *model.AgentList, columns ...string) (int64, error) { | |||
affected, err := a.Db.Where("agent_id =?", m.Id).Cols(columns...).Update(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} |
@@ -0,0 +1,33 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/enum" | |||
"applet/app/utils/logx" | |||
"xorm.io/xorm" | |||
) | |||
func NewPermissionGroupDb(engine *xorm.Engine) dao.PermissionGroupDao { | |||
return &PermissionGroupDb{Db: engine} | |||
} | |||
type PermissionGroupDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (p PermissionGroupDb) FindPermissionGroup() (*[]model.PermissionGroup, error) { | |||
var m []model.PermissionGroup | |||
if err := p.Db.Where("state = ?", enum.PermissionGroupStateForNormal).Asc("id").Find(&m); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &m, nil | |||
} | |||
func (p PermissionGroupDb) FindPermissionGroupV2() (*[]model.PermissionGroup, error) { | |||
var m []model.PermissionGroup | |||
if err := p.Db.Asc("id").Find(&m); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &m, nil | |||
} |
@@ -0,0 +1,14 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"xorm.io/xorm" | |||
) | |||
type PermissionGroupPermissionDb struct { | |||
Db *xorm.Engine | |||
} | |||
func NewPermissionGroupPermissionDb(engine *xorm.Engine) dao.PermissionGroupPermissionDao { | |||
return &PermissionGroupPermissionDb{Db: engine} | |||
} |
@@ -0,0 +1,14 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"xorm.io/xorm" | |||
) | |||
type PermissionDb struct { | |||
Db *xorm.Engine | |||
} | |||
func NewPermissionDb(engine *xorm.Engine) dao.PermissionDao { | |||
return &PermissionDb{Db: engine} | |||
} |
@@ -0,0 +1,73 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"applet/app/utils/logx" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewRoleDb(engine *xorm.Engine, id int) dao.RoleDao { | |||
return &RoleDb{ | |||
Db: engine, | |||
Id: id, | |||
} | |||
} | |||
type RoleDb struct { | |||
Db *xorm.Engine | |||
Id int `json:"id"` | |||
} | |||
func (r RoleDb) FindRole() (*[]model.Role, error) { | |||
var m []model.Role | |||
if err := r.Db.Desc("id").Find(&m); err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
return &m, nil | |||
} | |||
func (r RoleDb) GetRole() (m *model.Role, err error) { | |||
m = new(model.Role) | |||
has, err := r.Db.Where("id = ?", r.Id).Get(m) | |||
if err != nil { | |||
return nil, logx.Error(err) | |||
} | |||
if has == false { | |||
return nil, nil | |||
} | |||
return m, nil | |||
} | |||
func (r RoleDb) UpdateRole(m *model.Role, columns ...string) (int64, error) { | |||
affected, err := r.Db.Where("id =?", m.Id).Cols(columns...).Update(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} | |||
func (r RoleDb) RoleDeleteBySession(session *xorm.Session, id interface{}) (int64, error) { | |||
if reflect.TypeOf(id).Kind() == reflect.Slice { | |||
return session.In("id", id).Delete(model.Role{}) | |||
} else { | |||
return session.Where("id = ?", id).Delete(model.Role{}) | |||
} | |||
} | |||
func (r RoleDb) RoleInsert(m *model.Role) (int, error) { | |||
_, err := r.Db.InsertOne(m) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return m.Id, nil | |||
} | |||
func (r RoleDb) FindPermissionGroupByRole(roleId int) (list []*dao.RolePermissionGroup, total int64, err error) { | |||
total, err = r.Db.Where("role.id =?", roleId). | |||
Join("LEFT", "role_permission_group", "role_permission_group.role_id = role.id"). | |||
Join("LEFT", "permission_group", "permission_group.id = role_permission_group.group_id"). | |||
FindAndCount(&list) | |||
return | |||
} |
@@ -0,0 +1,32 @@ | |||
package implement | |||
import ( | |||
"applet/app/db/dao" | |||
"applet/app/db/model" | |||
"reflect" | |||
"xorm.io/xorm" | |||
) | |||
func NewRolePermissionGroupDb(engine *xorm.Engine) dao.RolePermissionGroupDao { | |||
return &RolePermissionGroupDb{Db: engine} | |||
} | |||
type RolePermissionGroupDb struct { | |||
Db *xorm.Engine | |||
} | |||
func (r RolePermissionGroupDb) RolePermissionGroupDeleteForRoleBySession(session *xorm.Session, roleId interface{}) (int64, error) { | |||
if reflect.TypeOf(roleId).Kind() == reflect.Slice { | |||
return session.In("role_id", roleId).Delete(model.RolePermissionGroup{}) | |||
} else { | |||
return session.Where("role_id = ?", roleId).Delete(model.RolePermissionGroup{}) | |||
} | |||
} | |||
func (r RolePermissionGroupDb) BatchAddRolePermissionGroupBySession(session *xorm.Session, mm []*model.RolePermissionGroup) (int64, error) { | |||
affected, err := session.Insert(mm) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return affected, nil | |||
} |
@@ -0,0 +1,12 @@ | |||
package model | |||
type Admin struct { | |||
AdmId int `json:"adm_id" xorm:"not null comment('管理员id') INT(11)"` | |||
Username string `json:"username" xorm:"not null default '' comment('用户名') VARCHAR(255)"` | |||
Password string `json:"password" xorm:"not null default '' comment('密码') VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | |||
IsSuperAdministrator int `json:"is_super_administrator" xorm:"not null default 0 comment('是否为超级管理员(0:否 1:是)') TINYINT(1)"` | |||
Memo string `json:"memo" xorm:"not null default '' comment('备注信息') VARCHAR(244)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,10 @@ | |||
package model | |||
type AdminRole struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
AdmId int `json:"adm_id" xorm:"not null default 0 comment('管理员id') INT(11)"` | |||
RoleId int `json:"role_id" xorm:"not null default 0 comment('角色id') INT(11)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,25 @@ | |||
package model | |||
type AgentList struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
Uuid int `json:"uuid" xorm:"not null comment('站长id') index unique(IDX_UUID_TYPE) INT(11)"` | |||
AgentId int `json:"agent_id" xorm:"not null comment('代理id') unique(IDX_UUID_TYPE) INT(11)"` | |||
Kind int `json:"kind" xorm:"not null default 1 comment('类型(1:企业 2:个人)') TINYINT(1)"` | |||
CompanyName string `json:"company_name" xorm:"not null default '' comment('公司名称') VARCHAR(255)"` | |||
CompanyAbbreviation string `json:"company_abbreviation" xorm:"not null default '' comment('公司简称') VARCHAR(255)"` | |||
UnifiedSocialCreditCode string `json:"unified_social_credit_code" xorm:"not null default '' comment('统一社会信用代码') VARCHAR(255)"` | |||
CertificateType int `json:"certificate_type" xorm:"not null default 1 comment('证件类型') TINYINT(1)"` | |||
BusinessLicenseImgUrl string `json:"business_license_img_url" xorm:"not null default '' comment('营业执照照片') VARCHAR(255)"` | |||
LegalRepresentative string `json:"legal_representative" xorm:"not null default '' comment('法定代表人') CHAR(50)"` | |||
CountryRegionId int `json:"country_region_id" xorm:"not null default 1 comment('国家地区id') TINYINT(3)"` | |||
CountryRegion string `json:"country_region" xorm:"not null default '' comment('国家地区') CHAR(50)"` | |||
RegisteredAddressProvinceId int `json:"registered_address_province_id" xorm:"not null default 0 comment('注册地址-省份id') INT(11)"` | |||
RegisteredAddressCityId int `json:"registered_address_city_id" xorm:"not null default 0 comment('注册地址-市id') INT(11)"` | |||
RegisteredAddressCountyId int `json:"registered_address_county_id" xorm:"not null default 0 comment('注册地址-县/区id') INT(11)"` | |||
RegisteredAddress string `json:"registered_address" xorm:"not null default '' comment('注册地址') VARCHAR(255)"` | |||
BusinessLicenseAddress string `json:"business_license_address" xorm:"not null default '' comment('营业执照地址') VARCHAR(255)"` | |||
CertificateValidity string `json:"certificate_validity" xorm:"not null default '0000-00-00' comment('证件有效期') CHAR(50)"` | |||
State int `json:"state" xorm:"not null default 0 comment('状态(0:待审核 1:审核通过 2:审核拒绝)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,10 @@ | |||
package model | |||
type Permission struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | |||
Action string `json:"action" xorm:"not null default '' comment('路由') unique VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:废弃)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,11 @@ | |||
package model | |||
type PermissionGroup struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
ParentId int `json:"parent_id" xorm:"not null default 0 comment('父级id') INT(11)"` | |||
Key string `json:"key" xorm:"not null default '' VARCHAR(255)"` | |||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:废弃)') TINYINT(1)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,9 @@ | |||
package model | |||
type PermissionGroupPermission struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
GroupId int `json:"group_id" xorm:"not null default 0 comment('权限组id') INT(11)"` | |||
PermissionId int `json:"permission_id" xorm:"not null default 0 comment('权限id') INT(11)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,10 @@ | |||
package model | |||
type Role struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | |||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | |||
Memo string `json:"memo" xorm:"not null default '' comment('备注') VARCHAR(255)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |
@@ -0,0 +1,9 @@ | |||
package model | |||
type RolePermissionGroup struct { | |||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||
RoleId int `json:"role_id" xorm:"not null default 0 comment('角色id') INT(11)"` | |||
GroupId int `json:"group_id" xorm:"not null default 0 comment('权限组id') INT(11)"` | |||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||
} |