package system import ( "lc-base-frame/global" "lc-base-frame/model/system" "lc-base-frame/model/system/request" ) //@author: [piexlmax](https://github.com/piexlmax) //@function: CreateSysDictionaryDetail //@description: 创建字典详情数据 //@param: sysDictionaryDetail model.SysDictionaryDetail //@return: err error type DictionaryDetailService struct{} func (dictionaryDetailService *DictionaryDetailService) CreateSysDictionaryDetail(sysDictionaryDetail system.SysDictionaryDetail) (err error) { err = global.Db.Create(&sysDictionaryDetail).Error return err } //@author: [piexlmax](https://github.com/piexlmax) //@function: DeleteSysDictionaryDetail //@description: 删除字典详情数据 //@param: sysDictionaryDetail model.SysDictionaryDetail //@return: err error func (dictionaryDetailService *DictionaryDetailService) DeleteSysDictionaryDetail(sysDictionaryDetail system.SysDictionaryDetail) (err error) { err = global.Db.Delete(&sysDictionaryDetail).Error return err } //@author: [piexlmax](https://github.com/piexlmax) //@function: UpdateSysDictionaryDetail //@description: 更新字典详情数据 //@param: sysDictionaryDetail *model.SysDictionaryDetail //@return: err error func (dictionaryDetailService *DictionaryDetailService) UpdateSysDictionaryDetail(sysDictionaryDetail *system.SysDictionaryDetail) (err error) { err = global.Db.Save(sysDictionaryDetail).Error return err } //@author: [piexlmax](https://github.com/piexlmax) //@function: GetSysDictionaryDetail //@description: 根据id获取字典详情单条数据 //@param: id uint //@return: sysDictionaryDetail system.SysDictionaryDetail, err error func (dictionaryDetailService *DictionaryDetailService) GetSysDictionaryDetail(id uint) (sysDictionaryDetail system.SysDictionaryDetail, err error) { err = global.Db.Where("id = ?", id).First(&sysDictionaryDetail).Error return } //@author: [piexlmax](https://github.com/piexlmax) //@function: GetSysDictionaryDetailInfoList //@description: 分页获取字典详情列表 //@param: info request.SysDictionaryDetailSearch //@return: list interface{}, total int64, err error func (dictionaryDetailService *DictionaryDetailService) GetSysDictionaryDetailInfoList(info request.SysDictionaryDetailSearch) (list interface{}, total int64, err error) { limit := info.PageSize offset := info.PageSize * (info.Page - 1) // 创建db db := global.Db.Model(&system.SysDictionaryDetail{}) var sysDictionaryDetails []system.SysDictionaryDetail // 如果有条件搜索 下方会自动创建搜索语句 if info.Label != "" { db = db.Where("label LIKE ?", "%"+info.Label+"%") } if info.Value != 0 { db = db.Where("value = ?", info.Value) } if info.Status != nil { db = db.Where("status = ?", info.Status) } if info.SysDictionaryID != 0 { db = db.Where("sys_dictionary_id = ?", info.SysDictionaryID) } err = db.Count(&total).Error if err != nil { return } err = db.Limit(limit).Offset(offset).Order("sort").Find(&sysDictionaryDetails).Error return sysDictionaryDetails, total, err }