safe.go 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. /*
  2. * @description: 安全巡检
  3. * @Author: LanJianRong
  4. * @Date: 2020-11-18
  5. * @FilePath: \construction_management\web\viewmodels\safe.go
  6. */
  7. package viewmodels
  8. import (
  9. "time"
  10. validation "github.com/go-ozzo/ozzo-validation/v3"
  11. )
  12. type Safe struct {
  13. Id string `form:"id" json:"id" `
  14. BidsectionId string `form:"bidsectionId" json:"bidsectionId"`
  15. Uid string `form:"uid" json:"uid" `
  16. Code string `form:"code" json:"code"`
  17. CreateTime string `form:"createTime" json:"createTime"`
  18. EndTime string `form:"endTime" json:"endTime"`
  19. Position string `form:"position" json:"position"`
  20. Inspection string `form:"inspection" json:"inspection"`
  21. InspectionDetail string `form:"inspectionDetail" json:"inspectionDetail"`
  22. Demand string `form:"demand" json:"demand"`
  23. Status int `form:"status" json:"status"`
  24. PageNo int `form:"pageNo" json:"pageNo"`
  25. PageSize int `form:"pageSize" json:"pageSize"`
  26. }
  27. type SafeList struct {
  28. Id string `form:"id" json:"id" `
  29. Code string `form:"code" json:"code"`
  30. CreateTime string `form:"createTime" json:"createTime"`
  31. Position string `form:"position" json:"position"`
  32. Inspection string `form:"inspection" json:"inspection"`
  33. InspectionDetail string `form:"inspectionDetail" json:"inspectionDetail"`
  34. BidsectionId int `form:"bidsectionId" json:"bidsectionId"`
  35. Demand string `form:"demand" json:"demand"`
  36. Status int `form:"status" json:"status"`
  37. AuditName string `form:"auditName" json:"auditName"`
  38. FileCounts int64 `from:"fileCounts" json:"fileCounts"`
  39. }
  40. type SafeSurveyList struct {
  41. Id string `form:"id" json:"id" `
  42. UpdateTime time.Time `form:"updateTime" json:"updateTime"`
  43. InspectionDetail string `form:"inspectionDetail" json:"inspectionDetail"`
  44. Status int `form:"status" json:"status"`
  45. AuditName string `form:"auditName" json:"auditName"`
  46. }
  47. type SafeDetail struct {
  48. Id string `form:"id" json:"id" `
  49. BidsectionId string `form:"bidsectionId" json:"bidsectionId"`
  50. Uid string `from:"uid" json:"uid"`
  51. Code string `form:"code" json:"code"`
  52. CreateTime time.Time `form:"createTime" json:"createTime"`
  53. Position string `form:"position" json:"position"`
  54. Inspection string `form:"inspection" json:"inspection"`
  55. InspectionDetail string `form:"inspectionDetail" json:"inspectionDetail"`
  56. Demand string `form:"demand" json:"demand"`
  57. Times int `from:"times" json:"times"`
  58. Status int `form:"status" json:"status"`
  59. AuditName string `form:"auditName" json:"auditName"`
  60. File FileStruct `form:"file" json:"file"`
  61. Auditors []Auditors `form:"auditors" json:"auditors"`
  62. AuditHistory map[int][]HistorySafeAudit `from:"auditHistory" json:"auditHistory"`
  63. RectifiedInfo []CheckOrderVM `from:"rectifiedInfo" json:"rectifiedInfo"`
  64. LatestdAuditor *Approver `from:"latestAuditor" json:"latestAuditor"`
  65. }
  66. // 单独出一个struct方便分页使用
  67. type FileStruct struct {
  68. Total int64 `form:"total" json:"total"`
  69. FileList []AnnexListView `form:"fileList" json:"fileList"`
  70. }
  71. type SafeFile struct {
  72. FileName string `from:"filename" json:"filename"`
  73. FilePath string `from:"filepath" json:"filepath"`
  74. AccountName string `from:"account_name" json:"acountName"`
  75. AccountId string `from:"account_id" json:"acountId"`
  76. CreateTime time.Time `from:"create_time" json:"createTime"`
  77. }
  78. type Auditors struct {
  79. Id string `from:"id" json:"id"`
  80. Name string `from:"name" json:"name"`
  81. Progress string `from:"progress" json:"progress"`
  82. AuditId string `from:"audit_id" json:"audit_id"`
  83. Position string `from:"position" json:"position"`
  84. AuditOrder int `from:"audit_order" json:"audit_order"`
  85. AccountGroup int `from:"account_group" json:"account_group"`
  86. Company string `from:"company" json:"company"`
  87. Status int `from:"status" json:"status"`
  88. Mobile string `from:"mobile" json:"mobile"`
  89. }
  90. type SafeListAuditRecord struct {
  91. Name string `form:"name" json:"name"`
  92. CreateTime string `form:"create_time" json:"create_time"`
  93. }
  94. func (l Safe) ValidateList() error {
  95. return validation.ValidateStruct(&l,
  96. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  97. validation.Field(&l.PageNo, validation.Required.Error("页码不能为空")),
  98. validation.Field(&l.PageSize, validation.Required.Error("页数不能为空")),
  99. )
  100. }
  101. func (l Safe) ValidateCreate() error {
  102. return validation.ValidateStruct(&l,
  103. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  104. validation.Field(&l.CreateTime, validation.Required.Error("日期不能为空")),
  105. validation.Field(&l.Code, validation.Required.Error("编号不能为空")),
  106. // validation.Field(&l.Position, validation.Required.Error("检查部位不能为空")),
  107. validation.Field(&l.Inspection, validation.Required.Error("检查项目不能为空")),
  108. )
  109. }
  110. func (l Safe) ValidateDelete() error {
  111. return validation.ValidateStruct(&l,
  112. validation.Field(&l.Id, validation.Required.Error("检查项目不能为空")),
  113. )
  114. }
  115. func (l Safe) ValidateBidsectionId() error {
  116. return validation.ValidateStruct(&l,
  117. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  118. )
  119. }