123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- /*
- * @description:管理员数据库操作
- * @Author: CP
- * @Date: 2020-08-20 15:55:37
- * @FilePath: \construction_management\dao\manager_dao.go
- */
- package dao
- import (
- "github.com/go-xorm/xorm"
- "go.mod/models"
- )
- //数据库操作引擎
- type ManagerDao struct {
- engine *xorm.Engine
- }
- //获得一个DAO对象
- func NewManagerDao(engine *xorm.Engine) *ManagerDao {
- return &ManagerDao{
- engine: engine,
- }
- }
- //id获得数据
- func (d *ManagerDao) Get(id int) *models.CmManager {
- data := &models.CmManager{Id: id}
- //Get取到值后,会自动赋值到data中
- ok, err := d.engine.Get(data)
- if ok && err == nil {
- return data
- } else {
- data.Id = 0
- return data
- }
- }
- // 根据管理员组ID获得管理员
- func (d *ManagerDao) GetGroupId(groupId int) []models.CmManager {
- datalist := make([]models.CmManager, 0)
- _ = d.engine.Where("group_id=? ", groupId).Find(&datalist)
- return datalist
- }
- //用户名获得数据
- func (d *ManagerDao) GetUserName(userName string) *models.CmManager {
- data := &models.CmManager{Username: userName}
- //Get取到值后,会自动赋值到data中
- ok, err := d.engine.Get(data)
- if ok && err == nil {
- return data
- } else {
- data.Id = 0
- return data
- }
- }
- //获得全部管理员数据
- func (d *ManagerDao) GetAll() (data []models.CmManager, total int64) {
- num, _ := d.engine.
- Count(&models.CmManager{})
- datalist := make([]models.CmManager, 0)
- err := d.engine.Asc("create_time").Find(&datalist)
- //Asc("displayorder").
- //Find(&datalist)
- if err != nil {
- //log.Println
- return datalist, num
- } else {
- return datalist, num
- }
- }
- //获得总数
- func (d *ManagerDao) CountAll() int64 {
- num, err := d.engine.
- Count(&models.CmManager{})
- if err != nil {
- return 0
- } else {
- return num
- }
- }
- //创建
- func (d *ManagerDao) Create(data *models.CmManager) error {
- _, err := d.engine.Insert(data)
- return err
- }
- //更新
- func (d *ManagerDao) Update(data *models.CmManager, columns []string) error {
- _, err := d.engine.Id(data.Id).Cols(columns...).Update(data)
- return err
- }
- func (d *ManagerDao) Delete(data *models.CmManager, columns []string) error {
- _, err := d.engine.Id(data.Id).MustCols(columns...).Update(data)
- return err
- }
|