tree_section_contract.go 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. /*
  2. * @description:合同项目节-视图层
  3. * @Author: CP
  4. * @Date: 2020-11-02 15:18:59
  5. * @FilePath: \design_quantity\web\viewmodels\tree_section_contract.go
  6. */
  7. package viewmodels
  8. import (
  9. validation "github.com/go-ozzo/ozzo-validation/v3"
  10. )
  11. // ElderBrother 为true 有前一个兄弟节点,可上移和下降
  12. // IsEnd 为true 不能下移
  13. type TreeSectionContract struct {
  14. Id string `form:"id" json:"id" `
  15. // File file `form:"File" json:"File" `
  16. // TreeType int `form:"treeType" json:"treeType"`
  17. ParentId string `form:"parentId" json:"parentId"`
  18. Name string `form:"name" json:"name"`
  19. Depth int `form:"depth" json:"depth"`
  20. Serial int `form:"serial" json:"serial"`
  21. Attribution string `form:"attribution" json:"attribution"`
  22. Code string `form:"code" json:"code"`
  23. Code2 string `form:"code2" json:"code2"`
  24. // ProjectId string `form:"projectId" json:"projectId"`
  25. // BidsectionId string `form:"bidsectionId" json:"bidsectionId"`
  26. ContractId string `form:"contractId" json:"contractId"`
  27. // ContractName string `form:"contractName" json:"contractName"`
  28. // ContractCode string `form:"contractCode" json:"contractCode"`
  29. // ContractPrice string `form:"contractPrice" json:"contractPrice"`
  30. // ContractReturned string `form:"contractReturned" json:"contractReturned"`
  31. // ContractsPaid string `form:"contractsPaid" json:"contractsPaid"`
  32. // ContractStatus int `form:"contractStatus" json:"contractStatus"`
  33. // ContractLocking int `form:"contractLocking" json:"contractLocking"`
  34. CreateTime string `form:"createTime" json:"createTime"`
  35. Children []*TreeSectionContract `json:"children"`
  36. // TemplateNumber int `form:"templateNumber" json:"templateNumber"`
  37. Operation string `form:"operation" json:"operation"`
  38. ElderBrother bool `form:"elderBrother" json:"elderBrother"`
  39. IsEnd bool `form:"isEnd" json:"isEnd"`
  40. }
  41. type TreeSectionDetail struct {
  42. Name string `from:"name" json:"name"`
  43. Content string `from:"content" json:"content"`
  44. }
  45. func (l TreeSectionContract) ValidateDepth() error {
  46. return validation.ValidateStruct(&l,
  47. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  48. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  49. validation.Field(&l.Operation, validation.Required.Error("操作名称不能为空"), validation.In("upDepth", "downDepth", "upSerial", "downSerial").Error("未找到相关操作")),
  50. )
  51. }
  52. func (l TreeSectionContract) ValidateSectionNot() error {
  53. return validation.ValidateStruct(&l) // validation.Field(&l.TreeType, validation.In(0, 1).Error("请输入数字0或1")),
  54. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  55. }
  56. func (l TreeSectionContract) ValidateTemplate() error {
  57. return validation.ValidateStruct(&l) // validation.Field(&l.TemplateNumber, validation.Required.Error("模板号不能为空"), validation.In(1, 2).Error("未找到相关模板")),
  58. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  59. }
  60. func (l TreeSectionContract) ValidateSectionAdd() error {
  61. return validation.ValidateStruct(&l,
  62. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  63. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  64. // validation.Field(&l.Name, validation.Required.Error("项目节名称不能为空")),
  65. )
  66. }
  67. func (l TreeSectionContract) ValidateSectionDelete() error {
  68. return validation.ValidateStruct(&l,
  69. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  70. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  71. )
  72. }
  73. //is.Int.Error("请检查输入是否是整形") validation.Match(regexp.MustCompile("^[0-9]*$")).Error("请检查输入是否是整形")
  74. func (l TreeSectionContract) ValidateSectionSerial() error {
  75. return validation.ValidateStruct(&l,
  76. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  77. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  78. validation.Field(&l.Serial, validation.Required.Error("序号不能为空")),
  79. )
  80. }
  81. func (l TreeSectionContract) ValidateFile() error {
  82. return validation.ValidateStruct(&l,
  83. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  84. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  85. validation.Field(&l.ContractId, validation.Required.Error("附件不能为空")),
  86. )
  87. }
  88. // func (l TreeSectionContract) ValidRuleGet() error {
  89. // return validation.ValidateStruct(&l,
  90. // validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  91. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  92. // )
  93. // }
  94. // Isfolder int `form:"isfolder" json:"isfolder"`
  95. // UpdateTime string `form:"updateTime" json:"updateTime"`
  96. // TargetFolderId string `form:"targetFolderId" json:"targetFolderId"`
  97. // Ancounts int `form:"ancounts" json:"ancounts"`
  98. // Csrf string `form:"csrf" json:"csrf"`
  99. // // Leaf bool `json:"leaf" `
  100. // HasFolder bool `json:"hasFolder" `
  101. // IsBid bool `json:"isBid" `
  102. // IsEnd bool `json:"isEnd"`
  103. // ChildsTotal int `json:"childsTotal"`