ctr_contract.go 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  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. ContractSignTimeStart string `p:"contractSignTimeStart"` //开始时间
  40. ContractSignTimeEnd string `p:"contractSignTimeEnd"` //结束时间
  41. CustProvinceId int `json:"custProvinceId"` // 所在省ID
  42. CustCityId int `json:"custCityId"` // 所在市ID
  43. }
  44. type CtrAddProduct struct {
  45. // ContractId int `json:"contractId"` // 关联合同
  46. ProdId int `json:"prodId"` // 关联产品
  47. // ProdCode string `json:"prodCode"` // 产品型号
  48. // ProdName string `json:"prodName"` // 产品名称
  49. // ProdClass string `json:"prodClass"` // 产品类别
  50. ProdNum int `json:"prodNum"` // 产品数量
  51. MaintTerm int `json:"maintTerm"` // 维保期
  52. SugSalesPrice float64 `json:"sugSalesPrice"` // 建议成交价
  53. TranPrice float64 `json:"tranPrice"` // 成交价格
  54. // ContractPrive float64 `json:"contractPrive"` // 合同总价
  55. Remark string `json:"remark"` // 备注
  56. }
  57. type CtrContractAddReq struct {
  58. ContractCode string `json:"contractCode"` // 合同编号
  59. ContractName string `json:"contractName" v:"required#请输入合同名称"` // 合同名称
  60. // CustId int `json:"custId"` // 关联客户
  61. // CustName string `json:"custName"` // 客户名称
  62. NboId int `json:"nboId"` // 关联项目
  63. // NboName string `json:"nboName"` // 项目名称
  64. // ApproStatus string `json:"approStatus"` // 审批状态
  65. ContractType string `json:"contractType"` // 合同类型
  66. // ContractAmount float64 `json:"contractAmount"` // 合同金额
  67. // InvoiceAmount float64 `json:"invoiceAmount"` // 已开票金额
  68. // CollectedAmount float64 `json:"collectedAmount"` // 已回款金额
  69. ContractStartTime *gtime.Time `json:"contractStartTime"` // 合同开始时间
  70. ContractEndTime *gtime.Time `json:"contractEndTime"` // 合同结束时间
  71. ContractSignTime *gtime.Time `json:"contractSignTime"` // 合同签订时间
  72. InchargeId int `json:"inchargeId"` // 负责人ID
  73. InchargeName string `json:"inchargeName"` // 负责人
  74. SignatoryId int `json:"signatoryId"` // 公司签约人ID
  75. SignatoryName string `json:"signatoryName"` // 公司签约人
  76. SignatoryType string `json:"signatoryType"` // 签订单位类型 10 终端用户 20 经销商 30 代理商
  77. SignatoryUnit string `json:"signatoryUnit"` // 合同签订单位
  78. EarnestMoney float64 `json:"earnestMoney"` // 质量/履约保证金(元)
  79. CustSignatoryId int `json:"custSignatoryId"` // 客户签约人ID
  80. CustSignatoryName string `json:"custSignatoryName"` // 客户签约人
  81. DistributorId int `json:"distributorId"` // 经销商ID
  82. DistributorName string `json:"distributorName"` // 经销商
  83. Remark string `json:"remark"` // 备注
  84. Product []CtrAddProduct `json:"product"` // 产品
  85. ServiceFeeAgreement string `json:"serviceFeeAgreement"` // 运维服务费约定
  86. }
  87. type CtrContractUpdateReq struct {
  88. Id int `json:"id" v:"required#请输入Id"`
  89. // ContractCode string `json:"contractCode"` // 合同编号
  90. ContractName string `json:"contractName"` // 合同名称
  91. // CustId int `json:"custId"` // 关联客户
  92. // CustName string `json:"custName"` // 客户名称
  93. NboId int `json:"nboId"` // 关联项目
  94. // NboName string `json:"nboName"` // 项目名称
  95. // ApproStatus string `json:"approStatus"` // 审批状态
  96. ContractType string `json:"contractType"` // 合同类型
  97. // ContractAmount float64 `json:"contractAmount"` // 合同金额
  98. // InvoiceAmount float64 `json:"invoiceAmount"` // 已开票金额
  99. // CollectedAmount float64 `json:"collectedAmount"` // 已回款金额
  100. ContractStartTime *gtime.Time `json:"contractStartTime"` // 合同开始时间
  101. ContractEndTime *gtime.Time `json:"contractEndTime"` // 合同结束时间
  102. ContractSignTime *gtime.Time `json:"contractSignTime"` // 合同签订时间
  103. InchargeId int `json:"inchargeId"` // 负责人ID
  104. InchargeName string `json:"inchargeName"` // 负责人
  105. SignatoryId int `json:"signatoryId"` // 公司签约人ID
  106. SignatoryName string `json:"signatoryName"` // 公司签约人
  107. SignatoryType string `json:"signatoryType"` // 签订单位类型 10 终端用户 20 经销商 30 代理商
  108. SignatoryUnit string `json:"signatoryUnit"` // 合同签订单位
  109. EarnestMoney *float64 `json:"earnestMoney"` // 质量/履约保证金(元)
  110. CustSignatoryId int `json:"custSignatoryId"` // 客户签约人ID
  111. CustSignatoryName string `json:"custSignatoryName"` // 客户签约人
  112. DistributorId int `json:"distributorId"` // 经销商ID
  113. DistributorName string `json:"distributorName"` // 经销商
  114. Remark *string `json:"remark"`
  115. Product *[]CtrAddProduct `json:"product"` // 产品
  116. }
  117. type CtrContractUpdateProductReq struct {
  118. Id int `json:"id" v:"required#请输入Id"`
  119. MaintainPeriod *int `json:"maintainPeriod"` // 质保期(天)
  120. WarrantPeriod *int `json:"warrantPeriod"` // 运维期(天)
  121. MaintainStartTime *gtime.Time `json:"maintainStartTime"` // 运维开始时间
  122. MaintainRemark *string `json:"maintainRemark"` // 运维约定条款
  123. AcceptTime *gtime.Time `json:"acceptTime"` // 验收时间
  124. PurchaseCost *float64 `json:"purchaseCost"` // 采购成本
  125. DevCost *float64 `json:"devCost"` // 二次开发成本
  126. MaintainCost *float64 `json:"maintainCost"` // 产品维保成本
  127. DirectCost *float64 `json:"directCost"` // 直接成本
  128. }
  129. type CtrContractTransferReq struct {
  130. Id []int `json:"id" v:"required#请输入Id"`
  131. InchargeId int `json:"inchargeId"` // 负责人ID
  132. InchargeName string `json:"inchargeName"` // 负责人
  133. }
  134. type DingFileInfo struct {
  135. SpaceId string `json:"spaceId"` // 空间ID
  136. FileId string `json:"fileId"` // 文件ID
  137. FileName string `json:"fileName"` //文件名
  138. FileSize int `json:"fileSize"` // 文件大小
  139. FileType string `json:"fileType"` // 文件类型
  140. }
  141. type CtrContractCommitReq struct {
  142. Id int `json:"id" v:"required#请输入Id"`
  143. ContractModel string `json:"contractModel"` // 合同模板 值可以是:大数模板, 客户模板
  144. Terms string `json:"terms"` // 条款情况 值可以是:接纳全部条款, 不接纳全部条款
  145. PayTerms string `json:"payTerms"` // 付款条件
  146. File []DingFileInfo `json:"file"` // 附件
  147. }