123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- package autocode
- import (
- "github.com/flipped-aurora/gin-vue-admin/server/global"
- "github.com/flipped-aurora/gin-vue-admin/server/model/autocode"
- autoCodeReq "github.com/flipped-aurora/gin-vue-admin/server/model/autocode/request"
- )
- type OrganizationService struct {
- }
- // CreateOrganization 创建Organization记录
- // Author [piexlmax](https://github.com/piexlmax)
- func (organizationService *OrganizationService) CreateOrganization(organization autocode.Organization) (err error) {
- err = global.GVA_DB.Create(&organization).Error
- return err
- }
- // DeleteOrganization 删除Organization记录
- // Author [piexlmax](https://github.com/piexlmax)
- func (organizationService *OrganizationService) DeleteOrganization(organization autocode.Organization) (err error) {
- err = global.GVA_DB.Model(organization).Delete("code = ?", organization.CODE).Error
- return err
- }
- // DeleteOrganizationByIds 批量删除Organization记录
- // Author [piexlmax](https://github.com/piexlmax)
- func (organizationService *OrganizationService) DeleteOrganizationByIds(codes []string) (err error) {
- err = global.GVA_DB.Delete(&[]autocode.Organization{}, "code in ?", codes).Error
- return err
- }
- // UpdateOrganization 更新Organization记录
- // Author [piexlmax](https://github.com/piexlmax)
- func (organizationService *OrganizationService) UpdateOrganization(organization autocode.Organization) (err error) {
- err = global.GVA_DB.Model(organization).Where("code = ?", organization.CODE).Updates(&organization).Error
- return err
- }
- // GetOrganization 根据id获取Organization记录
- // Author [piexlmax](https://github.com/piexlmax)
- func (organizationService *OrganizationService) GetOrganization(code string) (err error, organization autocode.Organization) {
- err = global.GVA_DB.Where("code = ?", code).First(&organization).Error
- return
- }
- // GetOrganizationInfoList 分页获取Organization记录
- // Author [piexlmax](https://github.com/piexlmax)
- func (organizationService *OrganizationService) GetOrganizationInfoList(info autoCodeReq.OrganizationSearch) (err error, list []autocode.Organization, total int64) {
- limit := info.PageSize
- offset := info.PageSize * (info.Page - 1)
- // 创建db
- db := global.GVA_DB.Model(&autocode.Organization{})
- if info.PARENTCODE != "" {
- db.Where("PARENT_CODE=?", info.PARENTCODE)
- }
- var organizations []autocode.Organization
- // 如果有条件搜索 下方会自动创建搜索语句
- err = db.Count(&total).Error
- err = db.Limit(limit).Offset(offset).Find(&organizations).Error
- return err, organizations, total
- }
- func (organizationService *OrganizationService) GetOrganizationInfoLists() (err error, list []autocode.Organization) {
- // 创建db
- db := global.GVA_DB.Model(&autocode.Organization{})
- var organizations []autocode.Organization
- err = db.Find(&organizations).Error
- return err, organizations
- }
- func (organizationService *OrganizationService) GetBaseChildrenList(org *autocode.Organization, treeMap map[string][]autocode.Organization) (err error) {
- org.Children = treeMap[org.CODE]
- for i := 0; i < len(org.Children); i++ {
- err = organizationService.GetBaseChildrenList(&org.Children[i], treeMap)
- }
- return err
- }
|