safe_service.go 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. package services
  2. import (
  3. "fmt"
  4. "log"
  5. "strconv"
  6. "github.com/kataras/iris/v12"
  7. "go.mod/comm"
  8. "go.mod/conf"
  9. "go.mod/dao"
  10. "go.mod/datasource"
  11. "go.mod/models"
  12. "go.mod/web/viewmodels"
  13. )
  14. type SafeService interface {
  15. Get(id int, pid int) []viewmodels.SafeList
  16. Post(data models.CmSafe) error
  17. Del(id int) error
  18. GetDetail(id int) viewmodels.Safe
  19. ValidRule(ctx iris.Context) (viewmodels.Safe, error)
  20. }
  21. // //返回service操作类
  22. type safeService struct {
  23. daoSafe *dao.SafeDao
  24. daoSafeAudit *dao.SafeAuditDao
  25. daoSafeFile *dao.SafeFileDao
  26. daoProjectAccount *dao.ProjectAccountDao
  27. valid string
  28. validCreate string
  29. }
  30. //创建项目用户service
  31. func NewSafeService() SafeService {
  32. return &safeService{
  33. daoSafe: dao.NewSafeDao(datasource.InstanceDbMaster()),
  34. daoSafeAudit: dao.NewSafeAuditDao(datasource.InstanceDbMaster()),
  35. daoSafeFile: dao.NewSafeFileDao(datasource.InstanceDbMaster()),
  36. daoProjectAccount: dao.NewProjectAccountDao(datasource.InstanceDbMaster()),
  37. }
  38. }
  39. func (s *safeService) Get(id int, pid int) []viewmodels.SafeList {
  40. datalist := s.daoSafe.GetListByBid(id)
  41. safeList := make([]viewmodels.SafeList, 0)
  42. for _, item := range datalist {
  43. safeVM := viewmodels.SafeList{}
  44. safeVM.Code = item.Code
  45. account := s.daoProjectAccount.Get(item.Uid, pid)
  46. safeVM.AuditName = account.Name
  47. safeVM.CreateTime = item.CreateTime.Format(conf.SysTimeform)
  48. safeVM.Demand = item.Demand
  49. id, _ := comm.AesEncrypt(strconv.Itoa(item.Id), conf.SignSecret)
  50. safeVM.Id = id
  51. safeVM.Inspection = item.Inspection
  52. safeVM.InspectionDetail = item.InspectionDetail
  53. safeVM.Position = item.Position
  54. safeVM.Status = item.Status
  55. safeVM.FileCounts = s.daoSafeFile.GetCount(item.Id)
  56. safeList = append(safeList, safeVM)
  57. }
  58. return safeList
  59. }
  60. // post请求,插入单条数据
  61. func (s *safeService) Post(data models.CmSafe) error {
  62. Inserted, err := s.daoSafe.InsertRecord(data)
  63. if Inserted == true {
  64. return nil
  65. }
  66. return err
  67. }
  68. // delete请求,删除数据
  69. func (s *safeService) Del(id int) error {
  70. Deleted, err := s.daoSafe.DeleteRecord(id)
  71. if Deleted == true {
  72. return nil
  73. }
  74. return err
  75. }
  76. // 详情页数据拼装
  77. func (s *safeService) GetDetail(id int) viewmodels.Safe {
  78. safeData := s.daoSafe.FindById(id)
  79. fmt.Println(safeData)
  80. // id, _ := comm.AesEncrypt(strconv.Itoa(safeData.BidsectionId), conf.SignSecret)
  81. // bid, _2 := comm.AesEncrypt(strconv.Itoa(safeData.BidsectionId), conf.SignSecret)
  82. data := viewmodels.Safe{}
  83. // data.Id = string(id)
  84. return data
  85. }
  86. func (s *safeService) ValidRule(ctx iris.Context) (viewmodels.Safe, error) {
  87. safeVaild := viewmodels.Safe{}
  88. if ctx.Method() == "GET" {
  89. err := ctx.ReadForm(&safeVaild)
  90. if err != nil {
  91. log.Println("safe-ValidRule-ReadForm转换异常, error=", err)
  92. return safeVaild, err
  93. }
  94. err = safeVaild.ValidateList()
  95. }
  96. if ctx.Method() == "POST" {
  97. err := ctx.ReadJSON(&safeVaild)
  98. if err != nil {
  99. log.Println("safe-ValidRule-ReadJson转换异常, error=", err)
  100. return safeVaild, err
  101. }
  102. err = safeVaild.ValidateCreate()
  103. }
  104. if ctx.Method() == "PUT" {
  105. err := ctx.ReadForm(&safeVaild)
  106. if err != nil {
  107. log.Println("safe-ValidRule-ReadForm转换异常, error=", err)
  108. return safeVaild, err
  109. }
  110. err = safeVaild.ValidateDelete()
  111. }
  112. return safeVaild, nil
  113. }