tree_section_contract.go 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. /*
  2. * @description:合同项目节-视图层
  3. * @Author: CP
  4. * @Date: 2020-11-02 15:18:59
  5. * @FilePath: \construction_management\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. TreeType int `form:"treeType" json:"treeType"`
  16. ParentId string `form:"parentId" json:"parentId"`
  17. Name string `form:"name" json:"name"`
  18. Depth int `form:"depth" json:"depth"`
  19. Serial int `form:"serial" json:"serial"`
  20. Attribution string `form:"attribution" json:"attribution"`
  21. Code string `form:"code" json:"code"`
  22. ProjectId string `form:"projectId" json:"projectId"`
  23. BidsectionId string `form:"bidsectionId" json:"bidsectionId"`
  24. ContractId string `form:"contractId" json:"contractId"`
  25. ContractName string `form:"contractName" json:"contractName"`
  26. ContractCode string `form:"contractCode" json:"contractCode"`
  27. ContractPrice string `form:"contractPrice" json:"contractPrice"`
  28. ContractReturned string `form:"contractReturned" json:"contractReturned"`
  29. ContractsPaid string `form:"contractsPaid" json:"contractsPaid"`
  30. ContractStatus int `form:"contractStatus" json:"contractStatus"`
  31. ContractLocking int `form:"contractLocking" json:"contractLocking"`
  32. CreateTime string `form:"createTime" json:"createTime"`
  33. Children []*TreeSectionContract `json:"children"`
  34. TemplateNumber int `form:"templateNumber" json:"templateNumber"`
  35. Operation string `form:"operation" json:"operation"`
  36. ElderBrother bool `form:"elderBrother" json:"elderBrother"`
  37. IsEnd bool `form:"isEnd" json:"isEnd"`
  38. ContractDeductionTotal string `form:"contractDeductionTotal" json:"contractDeductionTotal"`
  39. SettlementCode string `form:"settlementCode" json:"settlementCode"`
  40. // 前端需要
  41. Key string `form:"key" json:"key"`
  42. Value string `form:"value" json:"value"`
  43. Title string `form:"title" json:"title"`
  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,
  54. validation.Field(&l.TreeType, validation.In(0, 1).Error("请输入数字0或1")),
  55. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  56. )
  57. }
  58. func (l TreeSectionContract) ValidateTemplate() error {
  59. return validation.ValidateStruct(&l,
  60. validation.Field(&l.TemplateNumber, validation.Required.Error("模板号不能为空"), validation.In(1, 2).Error("未找到相关模板")),
  61. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  62. )
  63. }
  64. func (l TreeSectionContract) ValidateSectionAdd() error {
  65. return validation.ValidateStruct(&l,
  66. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  67. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  68. // validation.Field(&l.Name, validation.Required.Error("项目节名称不能为空")),
  69. )
  70. }
  71. func (l TreeSectionContract) ValidateSectionDelete() error {
  72. return validation.ValidateStruct(&l,
  73. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  74. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  75. )
  76. }
  77. // is.Int.Error("请检查输入是否是整形") validation.Match(regexp.MustCompile("^[0-9]*$")).Error("请检查输入是否是整形")
  78. func (l TreeSectionContract) ValidateSectionSerial() error {
  79. return validation.ValidateStruct(&l,
  80. validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  81. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  82. validation.Field(&l.Serial, validation.Required.Error("序号不能为空")),
  83. )
  84. }
  85. // func (l TreeSectionContract) ValidRuleGet() error {
  86. // return validation.ValidateStruct(&l,
  87. // validation.Field(&l.Id, validation.Required.Error("项目节ID不能为空")),
  88. // validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  89. // )
  90. // }
  91. // Isfolder int `form:"isfolder" json:"isfolder"`
  92. // UpdateTime string `form:"updateTime" json:"updateTime"`
  93. // TargetFolderId string `form:"targetFolderId" json:"targetFolderId"`
  94. // Ancounts int `form:"ancounts" json:"ancounts"`
  95. // Csrf string `form:"csrf" json:"csrf"`
  96. // // Leaf bool `json:"leaf" `
  97. // HasFolder bool `json:"hasFolder" `
  98. // IsBid bool `json:"isBid" `
  99. // IsEnd bool `json:"isEnd"`
  100. // ChildsTotal int `json:"childsTotal"`