project_message_service.go 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  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. "strconv"
  10. "go.mod/comm"
  11. "go.mod/conf"
  12. "go.mod/dao"
  13. "go.mod/datasource"
  14. "go.mod/web/viewmodels"
  15. )
  16. //定义项目Service接口
  17. type ProjectMessageService interface {
  18. GetAll(projectId int, accountId int) []*viewmodels.ProjectMessage
  19. }
  20. //返回service操作类
  21. type projectMessageService struct {
  22. projectMessagedao *dao.ProjectMessageDao
  23. }
  24. //创建项目service
  25. func NewProjectMessageService() ProjectMessageService {
  26. return &projectMessageService{
  27. projectMessagedao: dao.NewProjectMessageDao(datasource.InstanceDbMaster()),
  28. }
  29. }
  30. // 获得需要关注人
  31. func (s *projectMessageService) GetAll(projectId int, accountId int) []*viewmodels.ProjectMessage {
  32. dataList := s.projectMessagedao.GetAll(projectId, accountId)
  33. projectMessageVM := make([]*viewmodels.ProjectMessage, 0)
  34. for _, item := range dataList {
  35. viewProjectMessage := &viewmodels.ProjectMessage{}
  36. id, _ := comm.AesEncrypt(strconv.Itoa(item.Id), conf.SignSecret)
  37. projectId, _ := comm.AesEncrypt(strconv.Itoa(item.ProjectId), conf.SignSecret)
  38. bidsectionId, _ := comm.AesEncrypt(strconv.Itoa(item.BidsectionId), conf.SignSecret)
  39. accountId, _ := comm.AesEncrypt(strconv.Itoa(item.AccountId), conf.SignSecret)
  40. dataId, _ := comm.AesEncrypt(strconv.Itoa(item.DataId), conf.SignSecret)
  41. viewProjectMessage.Id = id
  42. viewProjectMessage.ProjectId = projectId
  43. viewProjectMessage.BidsectionId = bidsectionId
  44. viewProjectMessage.AccountId = accountId
  45. viewProjectMessage.DataType = item.DataType
  46. viewProjectMessage.DataId = dataId
  47. viewProjectMessage.Title = item.Title
  48. viewProjectMessage.Content = item.Content
  49. viewProjectMessage.CreateTime = item.CreateTime.Format(conf.SysTimeform)
  50. projectMessageVM = append(projectMessageVM, viewProjectMessage)
  51. }
  52. // data, err := s.permissionDao.GetPermissionWithAccountId(accountId, bidsectionId)
  53. return projectMessageVM
  54. }