tree_section_contract.go 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  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. // ProjectId string `form:"projectId" json:"projectId"`
  24. // BidsectionId string `form:"bidsectionId" json:"bidsectionId"`
  25. ContractId string `form:"contractId" json:"contractId"`
  26. // ContractName string `form:"contractName" json:"contractName"`
  27. // ContractCode string `form:"contractCode" json:"contractCode"`
  28. // ContractPrice string `form:"contractPrice" json:"contractPrice"`
  29. // ContractReturned string `form:"contractReturned" json:"contractReturned"`
  30. // ContractsPaid string `form:"contractsPaid" json:"contractsPaid"`
  31. // ContractStatus int `form:"contractStatus" json:"contractStatus"`
  32. // ContractLocking int `form:"contractLocking" json:"contractLocking"`
  33. CreateTime string `form:"createTime" json:"createTime"`
  34. Children []*TreeSectionContract `json:"children"`
  35. // TemplateNumber int `form:"templateNumber" json:"templateNumber"`
  36. Operation string `form:"operation" json:"operation"`
  37. ElderBrother bool `form:"elderBrother" json:"elderBrother"`
  38. IsEnd bool `form:"isEnd" json:"isEnd"`
  39. }
  40. type TreeSectionDetail struct {
  41. Name string `from:"name" json:"name"`
  42. Content string `from:"content" json:"content"`
  43. }
  44. func (l TreeSectionContract) ValidateDepth() error {
  45. return validation.ValidateStruct(&l,
  46. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  47. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  48. validation.Field(&l.Operation, validation.Required.Error("操作名称不能为空"), validation.In("upDepth", "downDepth", "upSerial", "downSerial").Error("未找到相关操作")),
  49. )
  50. }
  51. func (l TreeSectionContract) ValidateSectionNot() error {
  52. return validation.ValidateStruct(&l) // validation.Field(&l.TreeType, validation.In(0, 1).Error("请输入数字0或1")),
  53. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  54. }
  55. func (l TreeSectionContract) ValidateTemplate() error {
  56. return validation.ValidateStruct(&l) // validation.Field(&l.TemplateNumber, validation.Required.Error("模板号不能为空"), validation.In(1, 2).Error("未找到相关模板")),
  57. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  58. }
  59. func (l TreeSectionContract) ValidateSectionAdd() error {
  60. return validation.ValidateStruct(&l,
  61. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  62. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  63. // validation.Field(&l.Name, validation.Required.Error("项目节名称不能为空")),
  64. )
  65. }
  66. func (l TreeSectionContract) ValidateSectionDelete() error {
  67. return validation.ValidateStruct(&l,
  68. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  69. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  70. )
  71. }
  72. //is.Int.Error("请检查输入是否是整形") validation.Match(regexp.MustCompile("^[0-9]*$")).Error("请检查输入是否是整形")
  73. func (l TreeSectionContract) ValidateSectionSerial() error {
  74. return validation.ValidateStruct(&l,
  75. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  76. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  77. validation.Field(&l.Serial, validation.Required.Error("序号不能为空")),
  78. )
  79. }
  80. func (l TreeSectionContract) ValidateFile() error {
  81. return validation.ValidateStruct(&l,
  82. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  83. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  84. validation.Field(&l.ContractId, validation.Required.Error("附件不能为空")),
  85. )
  86. }
  87. // func (l TreeSectionContract) ValidRuleGet() error {
  88. // return validation.ValidateStruct(&l,
  89. // validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  90. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  91. // )
  92. // }
  93. // Isfolder int `form:"isfolder" json:"isfolder"`
  94. // UpdateTime string `form:"updateTime" json:"updateTime"`
  95. // TargetFolderId string `form:"targetFolderId" json:"targetFolderId"`
  96. // Ancounts int `form:"ancounts" json:"ancounts"`
  97. // Csrf string `form:"csrf" json:"csrf"`
  98. // // Leaf bool `json:"leaf" `
  99. // HasFolder bool `json:"hasFolder" `
  100. // IsBid bool `json:"isBid" `
  101. // IsEnd bool `json:"isEnd"`
  102. // ChildsTotal int `json:"childsTotal"`