safe.go 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  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. UpdateTime string `form:"updateTime" json:"updateTime"`
  32. Position string `form:"position" json:"position"`
  33. Inspection string `form:"inspection" json:"inspection"`
  34. InspectionDetail string `form:"inspectionDetail" json:"inspectionDetail"`
  35. BidsectionId int `form:"bidsectionId" json:"bidsectionId"`
  36. Demand string `form:"demand" json:"demand"`
  37. Status int `form:"status" json:"status"`
  38. AuditName string `form:"auditName" json:"auditName"`
  39. FileCounts int64 `from:"fileCounts" json:"fileCounts"`
  40. }
  41. type SafeSurveyList struct {
  42. Id string `form:"id" json:"id" `
  43. UpdateTime time.Time `form:"updateTime" json:"updateTime"`
  44. CreateTime time.Time `form:"createTime" json:"createTime"`
  45. InspectionDetail string `form:"inspectionDetail" json:"inspectionDetail"`
  46. Status int `form:"status" json:"status"`
  47. AuditName string `form:"auditName" json:"auditName"`
  48. }
  49. type SafeDetail struct {
  50. Id string `form:"id" json:"id" `
  51. BidsectionId string `form:"bidsectionId" json:"bidsectionId"`
  52. Uid string `from:"uid" json:"uid"`
  53. Code string `form:"code" json:"code"`
  54. CreateTime time.Time `form:"createTime" json:"createTime"`
  55. Position string `form:"position" json:"position"`
  56. Inspection string `form:"inspection" json:"inspection"`
  57. InspectionDetail string `form:"inspectionDetail" json:"inspectionDetail"`
  58. Demand string `form:"demand" json:"demand"`
  59. Times int `from:"times" json:"times"`
  60. Status int `form:"status" json:"status"`
  61. AuditName string `form:"auditName" json:"auditName"`
  62. File FileStruct `form:"file" json:"file"`
  63. Auditors []Auditors `form:"auditors" json:"auditors"`
  64. AuditHistory map[int][]HistorySafeAudit `from:"auditHistory" json:"auditHistory"`
  65. RectifiedInfo []CheckOrderVM `from:"rectifiedInfo" json:"rectifiedInfo"`
  66. LatestdAuditor *Approver `from:"latestAuditor" json:"latestAuditor"`
  67. }
  68. // 单独出一个struct方便分页使用
  69. type FileStruct struct {
  70. Total int64 `form:"total" json:"total"`
  71. FileList []AnnexListView `form:"fileList" json:"fileList"`
  72. }
  73. type SafeFile struct {
  74. FileName string `from:"filename" json:"filename"`
  75. FilePath string `from:"filepath" json:"filepath"`
  76. AccountName string `from:"account_name" json:"acountName"`
  77. AccountId string `from:"account_id" json:"acountId"`
  78. CreateTime time.Time `from:"create_time" json:"createTime"`
  79. }
  80. type Auditors struct {
  81. Id string `from:"id" json:"id"`
  82. Name string `from:"name" json:"name"`
  83. Progress string `from:"progress" json:"progress"`
  84. AuditId string `from:"audit_id" json:"audit_id"`
  85. Position string `from:"position" json:"position"`
  86. AuditOrder int `from:"audit_order" json:"audit_order"`
  87. AccountGroup int `from:"account_group" json:"account_group"`
  88. Company string `from:"company" json:"company"`
  89. Status int `from:"status" json:"status"`
  90. Mobile string `from:"mobile" json:"mobile"`
  91. }
  92. type SafeListAuditRecord struct {
  93. Name string `form:"name" json:"name"`
  94. CreateTime string `form:"create_time" json:"create_time"`
  95. }
  96. func (l Safe) ValidateList() error {
  97. return validation.ValidateStruct(&l,
  98. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  99. validation.Field(&l.PageNo, validation.Required.Error("页码不能为空")),
  100. validation.Field(&l.PageSize, validation.Required.Error("页数不能为空")),
  101. )
  102. }
  103. func (l Safe) ValidateCreate() error {
  104. return validation.ValidateStruct(&l,
  105. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  106. validation.Field(&l.CreateTime, validation.Required.Error("日期不能为空")),
  107. validation.Field(&l.Code, validation.Required.Error("编号不能为空")),
  108. // validation.Field(&l.Position, validation.Required.Error("检查部位不能为空")),
  109. validation.Field(&l.Inspection, validation.Required.Error("检查项目不能为空")),
  110. )
  111. }
  112. func (l Safe) ValidateDelete() error {
  113. return validation.ValidateStruct(&l,
  114. validation.Field(&l.Id, validation.Required.Error("检查项目不能为空")),
  115. )
  116. }
  117. func (l Safe) ValidateBidsectionId() error {
  118. return validation.ValidateStruct(&l,
  119. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  120. )
  121. }