1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- package dao
- import "server/global"
- type Department struct {
- Id int `gorm:"primarykey" from:"id" json:"ID"`
- Name string `json:"name" from:"name" gorm:"comment:部门名称"`
- Desc string `json:"desc" from:"desc" gorm:"comment:部门描述"`
- PrincipalId int `json:"principalId" from:"principal_id" gorm:"comment:负责人id"`
- Principal SysUser `json:"principal" from:"principal" gorm:"foreignKey:PrincipalId;references:id;"`
- Users []SysUser `json:"users" gorm:"-"`
- IsStart bool `json:"isStart" from:"is_start" gorm:"comment:是否启用"`
- }
- func (Department) TableName() string {
- return "department"
- }
- // TODO:部门查询
- // QueryAllDep 查询所有部门
- func QueryAllDep() (deps []Department, err error) {
- err = global.GVA_DB.Model(&Department{}).Preload("Principal").Find(&deps).Error
- return deps, err
- }
- // QueryDepByStart 查询启用部门
- func QueryDepByStart() (deps []Department, err error) {
- err = global.GVA_DB.Model(&Department{}).Where("is_start = ?", true).Find(&deps).Error
- return deps, err
- }
- // QueryUsersByDepId 查询部门下的用户
- func QueryUsersByDepId(depId int) (users []SysUser, err error) {
- err = global.GVA_DB.Model(&SysUser{}).Where("department_id =?", depId).Find(&users).Error
- return users, err
- }
- func QueryDepById(id int) (dep Department, err error) {
- err = global.GVA_DB.Model(&Department{}).Where("id = ?", id).Preload("Principal").First(&dep).Error
- return dep, err
- }
- // TODO:部门新增
- // CreateDep 创建部门
- func (d Department) CreateDep() error {
- return global.GVA_DB.Create(&d).Error
- }
- // TODO:部门修改
- // UpdateDep 修改部门
- func (d Department) UpdateDep() error {
- return global.GVA_DB.Model(&d).Where("id = ?", d.Id).Updates(&d).Error
- }
- // UpdateDepStatus 修改部门状态
- func UpdateDepStatus(depId int, isStart bool) error {
- return global.GVA_DB.Model(&Department{}).Where("id = ?", depId).Update("is_start", isStart).Error
- }
- // TODO:部门删除
- // DeleteDep 删除部门
- func DeleteDep(depId int) error {
- return global.GVA_DB.Where("id = ?", depId).Delete(&Department{}).Error
- }
|