project_message_service.go 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /*
  2. * @description: 项目相关数据处理
  3. * @Author: CP
  4. * @Date: 2020-09-04 14:42:27
  5. * @FilePath: \construction_management\services\project_message_service.go
  6. */
  7. package services
  8. import (
  9. "go.mod/comm"
  10. "go.mod/conf"
  11. "go.mod/dao"
  12. "go.mod/datasource"
  13. "go.mod/web/viewmodels"
  14. )
  15. //定义项目Service接口
  16. type ProjectMessageService interface {
  17. GetAll(projectId int, accountId int) []*viewmodels.ProjectMessageVM
  18. }
  19. //返回service操作类
  20. type projectMessageService struct {
  21. projectMessagedao *dao.ProjectMessageDao
  22. }
  23. //创建项目service
  24. func NewProjectMessageService() ProjectMessageService {
  25. return &projectMessageService{
  26. projectMessagedao: dao.NewProjectMessageDao(datasource.InstanceDbMaster()),
  27. }
  28. }
  29. // 获得需要关注人
  30. func (s *projectMessageService) GetAll(projectId int, accountId int) []*viewmodels.ProjectMessageVM {
  31. dataList := s.projectMessagedao.GetAll(projectId, accountId)
  32. projectMessageVM := make([]*viewmodels.ProjectMessageVM, 0)
  33. for _, item := range dataList {
  34. viewProjectMessage := &viewmodels.ProjectMessageVM{}
  35. id, _ := comm.AesEncrypt(item.Id, conf.SignSecret)
  36. projectId, _ := comm.AesEncrypt(item.ProjectId, conf.SignSecret)
  37. bidsectionId, _ := comm.AesEncrypt(item.BidsectionId, conf.SignSecret)
  38. accountId, _ := comm.AesEncrypt(item.AccountId, conf.SignSecret)
  39. dataId, _ := comm.AesEncrypt(item.DataId, conf.SignSecret)
  40. viewProjectMessage.Id = id
  41. viewProjectMessage.ProjectId = projectId
  42. viewProjectMessage.BidsectionId = bidsectionId
  43. viewProjectMessage.AccountId = accountId
  44. viewProjectMessage.DataType = item.DataType
  45. viewProjectMessage.DataId = dataId
  46. viewProjectMessage.Title = item.Title
  47. viewProjectMessage.Content = item.Content
  48. viewProjectMessage.CreateTime = item.CreateTime
  49. viewProjectMessage.BidsectionName = item.BidsectionName
  50. projectMessageVM = append(projectMessageVM, viewProjectMessage)
  51. }
  52. // data, err := s.permissionDao.GetPermissionWithAccountId(accountId, bidsectionId)
  53. return projectMessageVM
  54. }