ctr_contract.go 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. // ==========================================================================
  2. // This is auto-generated by gf cli tool. Fill this file as you wish.
  3. // ==========================================================================
  4. package contract
  5. import (
  6. "dashoo.cn/micro/app/model/contract/internal"
  7. "dashoo.cn/opms_libary/request"
  8. "github.com/gogf/gf/os/gtime"
  9. )
  10. // CtrContract is the golang structure for table ctr_contract.
  11. type CtrContract internal.CtrContract
  12. // Fill with you ideas below.
  13. type CtrContractGetRsp struct {
  14. CtrContract
  15. Product []*CtrContractProduct `json:"product"` // 产品
  16. }
  17. type CtrContractListRsp struct {
  18. CtrContract
  19. }
  20. type CtrContractListReq struct {
  21. request.PageReq
  22. SearchText string `json:"searchText"` // 合同编号,合同名称,客户名称,项目名称
  23. ContractCode string `json:"contractCode"` // 合同编号
  24. ContractName string `json:"contractName"` // 合同名称
  25. CustId int `json:"custId"` // 关联客户
  26. CustName string `json:"custName"` // 客户名称
  27. NboId int `json:"nboId"` // 关联项目
  28. NboName string `json:"nboName"` // 项目名称
  29. ApproStatus string `json:"approStatus"` // 审批状态
  30. ContractType string `json:"contractType"` // 合同类型
  31. // ContractStartTime *gtime.Time `json:"contractStartTime"` // 合同开始时间
  32. // ContractEndTime *gtime.Time `json:"contractEndTime"` // 合同结束时间
  33. InchargeId int `json:"inchargeId"` // 负责人ID
  34. InchargeName string `json:"inchargeName"` // 负责人
  35. SignatoryId int `json:"signatoryId"` // 公司签约人ID
  36. SignatoryName string `json:"signatoryName"` // 公司签约人
  37. DistributorId int `json:"distributorId"` // 经销商ID
  38. DistributorName string `json:"distributorName"` // 经销商
  39. ProductLine string `json:"productLine"` // 产品线
  40. ContractEndTimeStart string `p:"contractEndTimeStart"` //开始时间
  41. ContractEndTimeEnd string `p:"contractEndTimeEnd"` //结束时间
  42. CustProvinceId int `json:"custProvinceId"` // 所在省ID
  43. CustCityId int `json:"custCityId"` // 所在市ID
  44. }
  45. type CtrAddProduct struct {
  46. // ContractId int `json:"contractId"` // 关联合同
  47. ProdId int `json:"prodId"` // 关联产品
  48. // ProdCode string `json:"prodCode"` // 产品型号
  49. // ProdName string `json:"prodName"` // 产品名称
  50. // ProdClass string `json:"prodClass"` // 产品类别
  51. ProdNum int `json:"prodNum"` // 产品数量
  52. MaintTerm int `json:"maintTerm"` // 维保期
  53. SugSalesPrice float64 `json:"sugSalesPrice"` // 建议成交价
  54. TranPrice float64 `json:"tranPrice"` // 成交价格
  55. // ContractPrive float64 `json:"contractPrive"` // 合同总价
  56. Remark string `json:"remark"` // 备注
  57. }
  58. type CtrContractAddReq struct {
  59. ContractCode string `json:"contractCode"` // 合同编号
  60. ContractName string `json:"contractName" v:"required#请输入合同名称"` // 合同名称
  61. // CustId int `json:"custId"` // 关联客户
  62. // CustName string `json:"custName"` // 客户名称
  63. NboId int `json:"nboId"` // 关联项目
  64. // NboName string `json:"nboName"` // 项目名称
  65. // ApproStatus string `json:"approStatus"` // 审批状态
  66. ContractType string `json:"contractType"` // 合同类型
  67. // ContractAmount float64 `json:"contractAmount"` // 合同金额
  68. // InvoiceAmount float64 `json:"invoiceAmount"` // 已开票金额
  69. // CollectedAmount float64 `json:"collectedAmount"` // 已回款金额
  70. ContractStartTime *gtime.Time `json:"contractStartTime"` // 合同开始时间
  71. ContractEndTime *gtime.Time `json:"contractEndTime"` // 合同结束时间
  72. ContractSignTime *gtime.Time `json:"contractSignTime"` // 合同签订时间
  73. InchargeId int `json:"inchargeId"` // 负责人ID
  74. InchargeName string `json:"inchargeName"` // 负责人
  75. SignatoryId int `json:"signatoryId"` // 公司签约人ID
  76. SignatoryName string `json:"signatoryName"` // 公司签约人
  77. SignatoryType string `json:"signatoryType"` // 签订单位类型 10 终端用户 20 经销商 30 代理商
  78. SignatoryUnit string `json:"signatoryUnit"` // 合同签订单位
  79. EarnestMoney float64 `json:"earnestMoney"` // 质量/履约保证金(元)
  80. CustSignatoryId int `json:"custSignatoryId"` // 客户签约人ID
  81. CustSignatoryName string `json:"custSignatoryName"` // 客户签约人
  82. DistributorId int `json:"distributorId"` // 经销商ID
  83. DistributorName string `json:"distributorName"` // 经销商
  84. Remark string `json:"remark"` // 备注
  85. Product []CtrAddProduct `json:"product"` // 产品
  86. ServiceFeeAgreement string `json:"serviceFeeAgreement"` // 运维服务费约定
  87. }
  88. type CtrContractUpdateReq struct {
  89. Id int `json:"id" v:"required#请输入Id"`
  90. // ContractCode string `json:"contractCode"` // 合同编号
  91. ContractName string `json:"contractName"` // 合同名称
  92. // CustId int `json:"custId"` // 关联客户
  93. // CustName string `json:"custName"` // 客户名称
  94. NboId int `json:"nboId"` // 关联项目
  95. // NboName string `json:"nboName"` // 项目名称
  96. // ApproStatus string `json:"approStatus"` // 审批状态
  97. ContractType string `json:"contractType"` // 合同类型
  98. // ContractAmount float64 `json:"contractAmount"` // 合同金额
  99. // InvoiceAmount float64 `json:"invoiceAmount"` // 已开票金额
  100. // CollectedAmount float64 `json:"collectedAmount"` // 已回款金额
  101. ContractStartTime *gtime.Time `json:"contractStartTime"` // 合同开始时间
  102. ContractEndTime *gtime.Time `json:"contractEndTime"` // 合同结束时间
  103. ContractSignTime *gtime.Time `json:"contractSignTime"` // 合同签订时间
  104. InchargeId int `json:"inchargeId"` // 负责人ID
  105. InchargeName string `json:"inchargeName"` // 负责人
  106. SignatoryId int `json:"signatoryId"` // 公司签约人ID
  107. SignatoryName string `json:"signatoryName"` // 公司签约人
  108. SignatoryType string `json:"signatoryType"` // 签订单位类型 10 终端用户 20 经销商 30 代理商
  109. SignatoryUnit string `json:"signatoryUnit"` // 合同签订单位
  110. EarnestMoney *float64 `json:"earnestMoney"` // 质量/履约保证金(元)
  111. CustSignatoryId int `json:"custSignatoryId"` // 客户签约人ID
  112. CustSignatoryName string `json:"custSignatoryName"` // 客户签约人
  113. DistributorId int `json:"distributorId"` // 经销商ID
  114. DistributorName string `json:"distributorName"` // 经销商
  115. Remark *string `json:"remark"`
  116. Product *[]CtrAddProduct `json:"product"` // 产品
  117. }
  118. type CtrContractUpdateProductReq struct {
  119. Id int `json:"id" v:"required#请输入Id"`
  120. MaintainPeriod *int `json:"maintainPeriod"` // 质保期(天)
  121. WarrantPeriod *int `json:"warrantPeriod"` // 运维期(天)
  122. MaintainStartTime *gtime.Time `json:"maintainStartTime"` // 运维开始时间
  123. MaintainRemark *string `json:"maintainRemark"` // 运维约定条款
  124. AcceptTime *gtime.Time `json:"acceptTime"` // 验收时间
  125. PurchaseCost *float64 `json:"purchaseCost"` // 采购成本
  126. DevCost *float64 `json:"devCost"` // 二次开发成本
  127. MaintainCost *float64 `json:"maintainCost"` // 产品维保成本
  128. DirectCost *float64 `json:"directCost"` // 直接成本
  129. }
  130. type CtrContractTransferReq struct {
  131. Id []int `json:"id" v:"required#请输入Id"`
  132. InchargeId int `json:"inchargeId"` // 负责人ID
  133. InchargeName string `json:"inchargeName"` // 负责人
  134. }
  135. type DingFileInfo struct {
  136. SpaceId string `json:"spaceId"` // 空间ID
  137. FileId string `json:"fileId"` // 文件ID
  138. FileName string `json:"fileName"` //文件名
  139. FileSize int `json:"fileSize"` // 文件大小
  140. FileType string `json:"fileType"` // 文件类型
  141. }
  142. type CtrContractCommitReq struct {
  143. Id int `json:"id" v:"required#请输入Id"`
  144. ContractModel string `json:"contractModel"` // 合同模板 值可以是:大数模板, 客户模板
  145. Terms string `json:"terms"` // 条款情况 值可以是:接纳全部条款, 不接纳全部条款
  146. PayTerms string `json:"payTerms"` // 付款条件
  147. File []DingFileInfo `json:"file"` // 附件
  148. }
  149. type CtrContractCommitWithFileUrlReq struct {
  150. Id int `json:"id" v:"required#请输入Id"`
  151. ContractModel string `json:"contractModel"` // 合同模板 值可以是:大数模板, 客户模板
  152. Terms string `json:"terms"` // 条款情况 值可以是:接纳全部条款, 不接纳全部条款
  153. PayTerms string `json:"payTerms"` // 付款条件
  154. FileName string `json:"fileName" v:"required#附件名不能为空"`
  155. FileUrl string `json:"fileUrl" v:"required#附件地址不能为空"`
  156. }