base_distributor.go 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. // ==========================================================================
  2. // This is auto-generated by gf cli tool. Fill this file as you wish.
  3. // ==========================================================================
  4. package base
  5. import (
  6. "dashoo.cn/opms_libary/request"
  7. "github.com/gogf/gf/os/gtime"
  8. "dashoo.cn/micro/app/model/base/internal"
  9. )
  10. // BaseDistributor is the golang structure for table base_distributor.
  11. type BaseDistributor internal.BaseDistributor
  12. // Fill with you ideas below.
  13. type BaseDistributorSearchReq struct {
  14. DistCode string `json:"distCode"` // 经销商code
  15. DistName string `json:"distName"` // 经销商名称
  16. BelongSale string `json:"belongSale"` // 所属经销商
  17. ProvinceId []string `json:"provinceId"` // 省份ID
  18. DistType string `json:"distType"` // 经销商类型
  19. WithStatistic bool `json:"withStatistic"` // 经销商统计
  20. request.PageReq
  21. }
  22. type BaseDistributorStatistic struct {
  23. ProjectNum int `json:"projectNum"` // ABC项目总数量
  24. AllProductAmount float64 `json:"allProductAmount"` // ABC项目出货总金额(项目出货金额字段)
  25. SaledProjectNum int `json:"saledProjectNum"` // 成交项目数量
  26. SaledAmount float64 `json:"saledAmount"` // 成交总金额
  27. UnpaidAmount float64 `json:"unpaidAmount"` // 未回款总金额
  28. InvoicedAmount float64 `json:"invoicedAmount"` // 开票总金额
  29. }
  30. type BaseDistributorListRsp struct {
  31. BaseDistributor
  32. BaseDistributorStatistic
  33. YearTarget float64 `json:"yearTarget"` // 年度代理指标
  34. }
  35. // 创建经销商字段
  36. type AddDistributor struct {
  37. DistType string `json:"distType" v:"required#经销商类型不能为空"` // 经销商类型 10 经销商 20 代理商
  38. DistName string `json:"distName" v:"required#经销商名称不能为空"` // 经销商名称
  39. ProvinceId int `json:"provinceId" v:"required|min:1#所属省份Id不能为空|所属省份Id不能为空"` // 所属省份ID
  40. ProvinceDesc string `json:"provinceDesc" v:"required#所属省份不能为空"` // 所属省份
  41. Capital float64 `json:"capital" v:"required#注册资金不能为空" ` // 注册资金
  42. BusinessScope string `json:"businessScope" v:"required#业务范围不能为空"` // 业务范围
  43. CustomerType string `json:"customerType" v:"required#授权客户类型不能为空"` // 授权客户类型
  44. ExistedProduct string `json:"existedProduct" v:"required#已有代理品牌和产品不能为空"` // 已有代理品牌和产品
  45. AbbrName string `json:"abbrName"` // 助记名称
  46. BelongSaleId int `json:"belongSaleId" v:"required|min:1#|归属销售ID不能为空"` // 归属销售ID
  47. BelongSale string `json:"belongSale" v:"required#归属销售不能为空"` // 归属销售
  48. AssistantSaleId string `json:"assistantSaleId"` // 助理人员Id
  49. AssistantSale string `json:"assistantSale"` // 助理人员
  50. RegisterDistrict string `json:"registerDistrict"` // 注册地
  51. SaleNum int `json:"saleNum"` // 现有销售人数
  52. HistoryCustomer string `json:"historyCustomer"` // 历史合作的终端客户名称
  53. ProxyStartTime *gtime.Time `json:"proxyStartTime"` // 代理签约有效期开始(代理商)
  54. ProxyEndTime *gtime.Time `json:"proxyEndTime"` // 代理签约有效期结束(代理商)
  55. ProxyDistrict string `json:"proxyDistrict"` // 授权代理区域(代理商)
  56. ContractUrl string `json:"contractUrl"` // 代理合同(代理商)
  57. ContractFileName string `json:"contracFileName"` // 代理合同(代理商)
  58. }
  59. type DistributorToProxyReq struct {
  60. Id int `p:"id" json:"id" v:"required# id不能为空"`
  61. CustomerType string `json:"customerType" v:"required#授权客户类型不能为空"` // 授权客户类型
  62. ProxyStartTime *gtime.Time `json:"proxyStartTime" v:"required#代理签约有效期不能为空"` // 代理签约有效期开始(代理商)
  63. ProxyEndTime *gtime.Time `json:"proxyEndTime" v:"required#代理签约有效期不能为空"` // 代理签约有效期结束(代理商)
  64. ProxyDistrict string `json:"proxyDistrict" v:"required#授权代理区域不能为空"` // 授权代理区域(代理商)
  65. ContractUrl string `json:"contractUrl"` // 代理合同(代理商)
  66. ContractFileName string `json:"contracFileName"` // 代理合同(代理商)
  67. }
  68. type ToProxyApproveData struct {
  69. CustomerType string `json:"customerType"`
  70. ProxyStartTime *gtime.Time `json:"proxyStartTime"`
  71. ProxyEndTime *gtime.Time `json:"proxyEndTime"`
  72. ProxyDistrict string `json:"proxyDistrict"`
  73. ContractUrl string `json:"contractUrl"`
  74. OperatedId int `json:"operatedId"`
  75. OperatedName string `json:"operatedName"`
  76. }
  77. type ToDistApproveData struct {
  78. ToDistReason string `json:"customerType"` // 转移经销商原因
  79. OperatedId int `json:"operatedId"`
  80. OperatedName string `json:"operatedName"`
  81. }
  82. type DistributorRenewReq DistributorToProxyReq
  83. type RenewApproveData ToProxyApproveData
  84. type DistributorToDistReq struct {
  85. Id int `p:"id" json:"id" v:"required# id不能为空"`
  86. ToDistReason string `json:"customerType" v:"required#转移原因不能为空"` // 转移经销商原因
  87. }
  88. type DistributorTransRecordReq struct {
  89. request.PageReq
  90. DistId int `json:"distId"` // ID
  91. }
  92. // 编辑参数
  93. type UpdateDistributorReq struct {
  94. *AddDistributor
  95. Id int `p:"id" json:"id" v:"required# id不能为空"`
  96. }
  97. type DistributorDynamicsListReq struct {
  98. request.PageReq
  99. SearchText string `json:"searchText"` // 操作人,操作内容
  100. DistId int `json:"distId"` // ID
  101. OpnPeopleId int `json:"opnPeopleId"` // 操作人ID
  102. OpnPeople string `json:"opnPeople"` // 操作人
  103. OpnType string `json:"opnType"` // 操作类型
  104. }
  105. type DistributorProjectListReq struct {
  106. request.PageReq
  107. DistId int `json:"distId"` // 经销商/代理商ID
  108. SearchText string `json:"searchText"` // 项目名称,项目名称
  109. NboName string `json:"nboName"` // 项目名称
  110. CustName string `json:"custName"` // 项目名称
  111. CreatedTimeStart *gtime.Time `json:"createdTimeStart"` // 创建时间
  112. CreatedTimeEnd *gtime.Time `json:"createdTimeEnd"` // 创建时间
  113. }
  114. type DistributorContractListReq struct {
  115. request.PageReq
  116. DistId int `json:"distId"` // 经销商/代理商ID
  117. SearchText string `json:"searchText"` // 合同编号,合同名称,客户名称,项目名称
  118. ContractCode string `json:"contractCode"` // 合同编号
  119. ContractName string `json:"contractName"` // 合同名称
  120. CustId int `json:"custId"` // 关联客户
  121. CustName string `json:"custName"` // 客户名称
  122. NboId int `json:"nboId"` // 关联项目
  123. NboName string `json:"nboName"` // 项目名称
  124. ApproStatus string `json:"approStatus"` // 审批状态
  125. ContractType string `json:"contractType"` // 合同类型
  126. InchargeId int `json:"inchargeId"` // 负责人ID
  127. InchargeName string `json:"inchargeName"` // 负责人
  128. SignatoryId int `json:"signatoryId"` // 公司签约人ID
  129. SignatoryName string `json:"signatoryName"` // 公司签约人
  130. DistributorName string `json:"distributorName"` // 经销商
  131. }
  132. // 删除
  133. type DeleteDistributorReq struct {
  134. Ids []int64 `p:"id" json:"ids" v:"required# id不能为空"`
  135. }