biz_object_oam_service.go 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package service
  2. import (
  3. "errors"
  4. "xps/cache"
  5. "xps/datamodels"
  6. "xps/datasource"
  7. "xps/repositories"
  8. "xps/viewmodels"
  9. )
  10. type BizObjectOAMService interface {
  11. GetList(m map[string]interface{}) ([]viewmodels.BizObjectOAMInfo, error)
  12. GetById(bizId, objectId, attrId int64) (*viewmodels.BizObjectOAMInfo, error)
  13. Create(d *datamodels.BizObjectOAM) error
  14. Update(d *datamodels.BizObjectOAM) error
  15. Delete(m map[string]interface{}) error
  16. CacheObjectOAMData(bizId, objectId, oamId int64) error
  17. }
  18. type bizObjectOAMService struct {
  19. repo *repositories.BizObjectOAMRepo
  20. }
  21. func NewBizObjectOAMService() BizObjectOAMService {
  22. return &bizObjectOAMService{
  23. repo: repositories.NewBizObjectOAMRepo(datasource.InstanceMaster()),
  24. }
  25. }
  26. func (s *bizObjectOAMService) GetList(m map[string]interface{}) ([]viewmodels.BizObjectOAMInfo, error) {
  27. return s.repo.GetList(m)
  28. }
  29. func (s *bizObjectOAMService) GetById(bizlId, objectId, oamId int64) (*viewmodels.BizObjectOAMInfo, error) {
  30. return s.repo.GetById(bizlId, objectId, oamId)
  31. }
  32. func (s *bizObjectOAMService) Create(ObjectOAM *datamodels.BizObjectOAM) error {
  33. ObjectOAM.OamId = NewID()
  34. return s.repo.Create(ObjectOAM)
  35. }
  36. func (s *bizObjectOAMService) Update(ObjectOAM *datamodels.BizObjectOAM) error {
  37. return s.repo.Update(ObjectOAM)
  38. }
  39. func (s *bizObjectOAMService) Delete(m map[string]interface{}) error {
  40. return s.repo.Delete(m)
  41. }
  42. func (s *bizObjectOAMService) CacheObjectOAMData(bizId, objectId, oamId int64) error {
  43. oam, err := s.repo.GetById(bizId, objectId, oamId)
  44. if err != nil {
  45. return nil
  46. }
  47. // 缓存数据
  48. err = cache.SetBizObjectOAMData(oam.ObjectCode, oam.OamCode, oam)
  49. if err != nil {
  50. return errors.New("Redis缓存Model数据失败")
  51. }
  52. return nil
  53. }