作者 yangfu

分红管理修改

@@ -32,3 +32,12 @@ func CreateAdminPermissionRepository(options map[string]interface{}) (domain.Adm @@ -32,3 +32,12 @@ func CreateAdminPermissionRepository(options map[string]interface{}) (domain.Adm
32 } 32 }
33 return repository.NewAdminPermissionRepository(transactionContext) 33 return repository.NewAdminPermissionRepository(transactionContext)
34 } 34 }
  35 +
  36 +//CreatePartnerInfoRepository 合伙人信息
  37 +func CreateOrderPaymentRepository(options map[string]interface{}) (domain.OrderPaymentRepository, error) {
  38 + var transactionContext *transaction.TransactionContext
  39 + if value, ok := options["transactionContext"]; ok {
  40 + transactionContext = value.(*transaction.TransactionContext)
  41 + }
  42 + return repository.NewOrderPaymentRepository(transactionContext)
  43 +}
  1 +package command
  2 +
  3 +type CreateOrderPaymentCommand struct {
  4 + //订单编号
  5 + OrderId int64 `json:"orderId"`
  6 + // 货款
  7 + PaymentForGoods float64 `json:"paymentForGoods,omitempty"`
  8 + // 支付状态
  9 + StateOfPayment int `json:"stateOfPayment,omitempty"`
  10 + //支付批次
  11 + PaymentSn int `json:"paymentSn,omitempty"`
  12 +}
  13 +
  14 +func (command CreateOrderPaymentCommand) ValidateCommand() error {
  15 + return nil
  16 +}
  1 +package query
  2 +
  3 +type ListOrderPaymentQuery struct {
  4 + // 合伙人类别
  5 + OrderId int64 `json:"orderId"`
  6 +}
  7 +
  8 +func (q *ListOrderPaymentQuery) ValidateQuery() error {
  9 +
  10 + return nil
  11 +}
  1 +package service
  2 +
  3 +import (
  4 + "github.com/linmadan/egglib-go/core/application"
  5 + "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/factory"
  6 + "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/order_payment/command"
  7 + "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/order_payment/query"
  8 + "time"
  9 +
  10 + //"gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/order_payment/query"
  11 + "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/domain"
  12 + "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/lib"
  13 +)
  14 +
  15 +// 客户价值服务
  16 +type OrderPaymentService struct {
  17 +}
  18 +
  19 +func NewOrderPaymentService(options map[string]interface{}) *OrderPaymentService {
  20 + newOrderPaymentService := &OrderPaymentService{}
  21 + return newOrderPaymentService
  22 +}
  23 +
  24 +// 创建订单支付数据
  25 +func (OrderPaymentService *OrderPaymentService) CreateOrderPayment(command *command.CreateOrderPaymentCommand) (data interface{}, err error) {
  26 + var (
  27 + transactionContext, _ = factory.CreateTransactionContext(nil)
  28 + )
  29 + if err = command.ValidateCommand(); err != nil {
  30 + return nil, application.ThrowError(application.ARG_ERROR, err.Error())
  31 + }
  32 + if err = transactionContext.StartTransaction(); err != nil {
  33 + return nil, err
  34 + }
  35 + defer func() {
  36 + transactionContext.RollbackTransaction()
  37 + }()
  38 + //检查订单是否存在
  39 +
  40 + var OrderPaymentRepository domain.OrderPaymentRepository
  41 + if OrderPaymentRepository, err = factory.CreateOrderPaymentRepository(map[string]interface{}{
  42 + "transactionContext": transactionContext,
  43 + }); err != nil {
  44 + return nil, lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  45 + }
  46 +
  47 + dm := &domain.OrderPayment{
  48 + OrderId: command.OrderId,
  49 + PartnerId: 0,
  50 + PaymentAmount: 0,
  51 + BonusAmount: 0, //计算分红金额
  52 + BonusStatus: 0,
  53 + CreateAt: time.Now(),
  54 + PaymentSn: command.PaymentSn,
  55 + UpdateAt: time.Now(),
  56 + }
  57 +
  58 + //检查货款 已存在 / 未存在
  59 + if findDm, e := OrderPaymentRepository.FindOne(domain.OrderPaymentFindOneQuery{OrderId: command.OrderId, PaymentSn: command.PaymentSn}); e == nil {
  60 + if dm.BonusStatus == domain.BonusPaid {
  61 + return
  62 + }
  63 + dm = findDm
  64 + }
  65 +
  66 + dm.PaymentAmount = command.PaymentForGoods
  67 + dm.BonusStatus = command.StateOfPayment
  68 + dm.BonusAmount = 0
  69 +
  70 + if data, err = OrderPaymentRepository.Save(dm); err != nil {
  71 + return nil, lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  72 + }
  73 + err = transactionContext.CommitTransaction()
  74 + return
  75 +}
  76 +
  77 +//// GetOrderPayment 返回合伙人
  78 +//func (OrderPaymentService *OrderPaymentService) GetOrderPayment(command query.GetOrderPaymentQuery) (data *domain.OrderPayment, err error) {
  79 +// var (
  80 +// transactionContext, _ = factory.CreateTransactionContext(nil)
  81 +// )
  82 +// if err = command.ValidateQuery(); err != nil {
  83 +// return nil, lib.ThrowError(lib.ARG_ERROR, err.Error())
  84 +// }
  85 +// if err := transactionContext.StartTransaction(); err != nil {
  86 +// return nil, lib.ThrowError(lib.TRANSACTION_ERROR, err.Error())
  87 +// }
  88 +// defer func() {
  89 +// transactionContext.RollbackTransaction()
  90 +// }()
  91 +// var OrderPaymentRepository domain.OrderPaymentRepository
  92 +// if OrderPaymentRepository, err = factory.CreateOrderPaymentRepository(map[string]interface{}{
  93 +// "transactionContext": transactionContext,
  94 +// }); err != nil {
  95 +// return nil, lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  96 +// }
  97 +// data, err = OrderPaymentRepository.FindOne(domain.PartnerFindOneQuery{UserId: command.Id})
  98 +// if err != nil {
  99 +// return nil, lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  100 +// }
  101 +// err = transactionContext.CommitTransaction()
  102 +// return
  103 +//}
  104 +//
  105 +//// 更新客户价值
  106 +//func (OrderPaymentService *OrderPaymentService) UpdateOrderPayment(updateOrderPaymentCommand *command.UpdateOrderPaymentCommand) (err error) {
  107 +// var (
  108 +// transactionContext, _ = factory.CreateTransactionContext(nil)
  109 +// )
  110 +// if err = updateOrderPaymentCommand.ValidateCommand(); err != nil {
  111 +// return application.ThrowError(application.ARG_ERROR, err.Error())
  112 +// }
  113 +// if err := transactionContext.StartTransaction(); err != nil {
  114 +// return lib.ThrowError(lib.TRANSACTION_ERROR, err.Error())
  115 +// }
  116 +// defer func() {
  117 +// transactionContext.RollbackTransaction()
  118 +// }()
  119 +// var OrderPaymentRepository domain.OrderPaymentRepository
  120 +// if OrderPaymentRepository, err = factory.CreateOrderPaymentRepository(map[string]interface{}{
  121 +// "transactionContext": transactionContext,
  122 +// }); err != nil {
  123 +// return lib.ThrowError(lib.TRANSACTION_ERROR, err.Error())
  124 +// }
  125 +// OrderPayment, err := OrderPaymentRepository.FindOne(domain.PartnerFindOneQuery{
  126 +// UserId: updateOrderPaymentCommand.Id,
  127 +// })
  128 +// if err != nil {
  129 +// return lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  130 +// }
  131 +// OrderPayment.PartnerCategory = updateOrderPaymentCommand.PartnerCategory
  132 +// OrderPayment.Salesman = updateOrderPaymentCommand.Salesman
  133 +// OrderPayment.Status = updateOrderPaymentCommand.Status
  134 +// OrderPayment.RegionInfo = updateOrderPaymentCommand.RegionInfo
  135 +// if _, err = OrderPaymentRepository.Save(OrderPayment); err != nil {
  136 +// return lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  137 +// }
  138 +// transactionContext.CommitTransaction()
  139 +// return
  140 +//}
  141 +//
  142 +// 返回订单支付列表
  143 +func (OrderPaymentService *OrderPaymentService) ListOrderPayment(listOrderPaymentQuery *query.ListOrderPaymentQuery) (int, []*domain.OrderPayment, error) {
  144 + var (
  145 + transactionContext, _ = factory.CreateTransactionContext(nil)
  146 + OrderPayments []*domain.OrderPayment
  147 + count int
  148 + err error
  149 + )
  150 + if err = listOrderPaymentQuery.ValidateQuery(); err != nil {
  151 + return 0, nil, lib.ThrowError(lib.ARG_ERROR, err.Error())
  152 + }
  153 + if err := transactionContext.StartTransaction(); err != nil {
  154 + return 0, nil, lib.ThrowError(lib.TRANSACTION_ERROR, err.Error())
  155 + }
  156 + defer func() {
  157 + if err != nil {
  158 + transactionContext.RollbackTransaction()
  159 + }
  160 + }()
  161 + var OrderPaymentRepository domain.OrderPaymentRepository
  162 + if OrderPaymentRepository, err = factory.CreateOrderPaymentRepository(map[string]interface{}{
  163 + "transactionContext": transactionContext,
  164 + }); err != nil {
  165 + return 0, nil, lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  166 + }
  167 + queryOption := domain.OrderPaymentQuery{
  168 + OrderId: listOrderPaymentQuery.OrderId,
  169 + }
  170 + if OrderPayments, err = OrderPaymentRepository.Find(queryOption); err != nil {
  171 + return 0, nil, lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  172 + }
  173 + if count, err = OrderPaymentRepository.CountAll(queryOption); err != nil {
  174 + return 0, nil, lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  175 + }
  176 + if err = transactionContext.CommitTransaction(); err != nil {
  177 + return 0, nil, lib.ThrowError(lib.TRANSACTION_ERROR, err.Error())
  178 + }
  179 + return count, OrderPayments, nil
  180 +}
  1 +package domain
  2 +
  3 +import "time"
  4 +
  5 +const (
  6 + BonusWaitPay = iota + 1 //等待支付分红
  7 + BonusPaid //已经支付分红
  8 +)
  9 +
  10 +type OrderPayment struct {
  11 + //编号
  12 + Id int64 `json:"id"`
  13 + //订单编号
  14 + OrderId int64 `json:"orderId"`
  15 + //合伙人编号
  16 + PartnerId int64 `json:"partnerId"`
  17 + //支付序号
  18 + PaymentSn int `json:"paymentSn"`
  19 + //支付货款
  20 + PaymentAmount float64 `json:"paymentAmount"`
  21 + //分红金额
  22 + BonusAmount float64 `json:"bonusAmount"`
  23 + //分红状态 1.等待支付分红 2.已支付分红
  24 + BonusStatus int `json:"bonusStatus"`
  25 + //创建时间
  26 + CreateAt time.Time `json:"createAt"`
  27 + //更新时间
  28 + UpdateAt time.Time `json:"updateAt"`
  29 +}
  30 +
  31 +func (m *OrderPayment) Identify() interface{} {
  32 + if m.Id == 0 {
  33 + return nil
  34 + }
  35 + return m.Id
  36 +}
  37 +
  38 +func (m *OrderPayment) Update(data map[string]interface{}) error {
  39 + if m.BonusStatus != BonusWaitPay {
  40 + return nil
  41 + }
  42 + if paymentAmount, ok := data["paymentAmount"]; ok && paymentAmount != 0 {
  43 + m.PaymentAmount = paymentAmount.(float64)
  44 + }
  45 + if bonusAmount, ok := data["bonusAmount"]; ok && bonusAmount != 0 {
  46 + m.BonusAmount = bonusAmount.(float64)
  47 + }
  48 + if bonusStatus, ok := data["bonusStatus"]; ok && bonusStatus != 0 {
  49 + m.BonusStatus = bonusStatus.(int)
  50 + }
  51 + m.UpdateAt = time.Now()
  52 + return nil
  53 +}
  54 +
  55 +type OrderPaymentFindOneQuery struct {
  56 + Id int64
  57 + OrderId int64
  58 + PaymentSn int
  59 +}
  60 +type OrderPaymentQuery struct {
  61 + Offset int
  62 + Limit int
  63 +
  64 + OrderId int64
  65 + //PartnerCategory []int //合伙人类型
  66 + //RegionInfo *RegionInfo //区域
  67 + //PartnerName string //合伙人姓名
  68 +}
  69 +
  70 +type OrderPaymentRepository interface {
  71 + Save(dm *OrderPayment) (*OrderPayment, error)
  72 + FindOne(queryOptions OrderPaymentFindOneQuery) (*OrderPayment, error)
  73 + Find(queryOptions OrderPaymentQuery) ([]*OrderPayment, error)
  74 + CountAll(queryOptions OrderPaymentQuery) (int, error)
  75 +}
  1 +package models
  2 +
  3 +import "time"
  4 +
  5 +type OrderPayment struct {
  6 + tableName struct{} `pg:"order_payment"`
  7 + //编号
  8 + Id int64 `pg:",pk"`
  9 + //订单编号
  10 + OrderId int64
  11 + //合伙人编号
  12 + PartnerId int64
  13 + //支付序号
  14 + PaymentSn int
  15 + //支付货款
  16 + PaymentAmount float64 `pg:",notnull,default:0"`
  17 + //分红金额
  18 + BonusAmount float64
  19 + //分红状态 1.等待支付分红 2.已支付分红
  20 + BonusStatus int `pg:",notnull,default:1"`
  21 + //创建时间
  22 + CreateAt time.Time
  23 + //更新时间
  24 + UpdateAt time.Time
  25 +}
  1 +package repository
  2 +
  3 +import (
  4 + "fmt"
  5 + "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/domain"
  6 + "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/infrastructure/pg/models"
  7 + "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/infrastructure/pg/transaction"
  8 +)
  9 +
  10 +type OrderPaymentRepository struct {
  11 + transactionContext *transaction.TransactionContext
  12 +}
  13 +
  14 +func (repository *OrderPaymentRepository) Save(dm *domain.OrderPayment) (*domain.OrderPayment, error) {
  15 + var (
  16 + err error
  17 + tx = repository.transactionContext.PgTx
  18 + )
  19 + m := &models.OrderPayment{
  20 + Id: dm.Id,
  21 + OrderId: dm.OrderId,
  22 + PartnerId: dm.PartnerId,
  23 + PaymentAmount: dm.PaymentAmount,
  24 + BonusAmount: dm.BonusAmount,
  25 + BonusStatus: dm.BonusStatus,
  26 + CreateAt: dm.CreateAt,
  27 + UpdateAt: dm.UpdateAt,
  28 + }
  29 + if m.Id == 0 {
  30 + err = tx.Insert(m)
  31 + dm.Id = m.Id
  32 + if err != nil {
  33 + return nil, err
  34 + }
  35 + } else {
  36 + err = tx.Update(m)
  37 + if err != nil {
  38 + return nil, err
  39 + }
  40 + }
  41 + return dm, nil
  42 +}
  43 +
  44 +func (repository *OrderPaymentRepository) Remove(OrderPayment *domain.OrderPayment) (*domain.OrderPayment, error) {
  45 + var (
  46 + tx = repository.transactionContext.PgTx
  47 + OrderPaymentModel = &models.OrderPayment{Id: OrderPayment.Identify().(int64)}
  48 + )
  49 + if _, err := tx.Model(OrderPaymentModel).Where("id = ?", OrderPayment.Id).Delete(); err != nil {
  50 + return OrderPayment, err
  51 + }
  52 + return OrderPayment, nil
  53 +}
  54 +
  55 +func (repository *OrderPaymentRepository) FindOne(queryOptions domain.OrderPaymentFindOneQuery) (*domain.OrderPayment, error) {
  56 + tx := repository.transactionContext.PgTx
  57 + OrderPaymentModel := new(models.OrderPayment)
  58 + query := tx.Model(OrderPaymentModel)
  59 +
  60 + if queryOptions.Id > 0 {
  61 + query.Where("order_payment.id = ?", "id")
  62 + }
  63 + if err := query.First(); err != nil {
  64 + return nil, err
  65 + }
  66 + if OrderPaymentModel.Id == 0 {
  67 + return nil, nil
  68 + }
  69 + return repository.transformPgModelToDomainModel(OrderPaymentModel)
  70 +}
  71 +
  72 +func (repository *OrderPaymentRepository) Find(queryOptions domain.OrderPaymentQuery) ([]*domain.OrderPayment, error) {
  73 + tx := repository.transactionContext.PgTx
  74 + var OrderPaymentModels []*models.OrderPayment
  75 + query := tx.Model(&OrderPaymentModels)
  76 + query.Where("order_payment.partner_id = ?", "partnerId")
  77 + var (
  78 + err error
  79 + rsp = make([]*domain.OrderPayment, 0)
  80 + )
  81 + err = query.Select()
  82 + if err != nil {
  83 + return rsp, err
  84 + }
  85 + for i := range OrderPaymentModels {
  86 + dm, err := repository.transformPgModelToDomainModel(OrderPaymentModels[i])
  87 + if err != nil {
  88 + return rsp, err
  89 + }
  90 + rsp = append(rsp, dm)
  91 + }
  92 + return rsp, nil
  93 +}
  94 +
  95 +func (repository OrderPaymentRepository) CountAll(queryOption domain.OrderPaymentQuery) (int, error) {
  96 + db := repository.transactionContext.PgDd
  97 + partnerModels := models.PartnerInfo{}
  98 + query := db.Model(&partnerModels)
  99 + //if len(queryOption.PartnerName) > 0 {
  100 + // query = query.Where("partner_name like ?", "%"+queryOption.PartnerName+"%")
  101 + //}
  102 + //if queryOption.RegionInfo != nil {
  103 + // query = query.Where("region_info::jsonb->>'regionName' like ?", "%"+queryOption.RegionInfo.RegionName+"%")
  104 + //}
  105 + //if len(queryOption.PartnerCategory) > 0 {
  106 + // query = query.WhereIn("partner_category in(?)", queryOption.PartnerCategory)
  107 + //}
  108 + cnt, err := query.Count()
  109 + return cnt, err
  110 +}
  111 +
  112 +func (repository *OrderPaymentRepository) transformPgModelToDomainModel(dm *models.OrderPayment) (*domain.OrderPayment, error) {
  113 + m := &domain.OrderPayment{
  114 + Id: dm.Id,
  115 + OrderId: dm.OrderId,
  116 + PartnerId: dm.PartnerId,
  117 + PaymentAmount: dm.PaymentAmount,
  118 + BonusAmount: dm.BonusAmount,
  119 + BonusStatus: dm.BonusStatus,
  120 + CreateAt: dm.CreateAt,
  121 + UpdateAt: dm.UpdateAt,
  122 + }
  123 + return m, nil
  124 +}
  125 +
  126 +func NewOrderPaymentRepository(transactionContext *transaction.TransactionContext) (*OrderPaymentRepository, error) {
  127 + if transactionContext == nil {
  128 + return nil, fmt.Errorf("transactionContext参数不能为nil")
  129 + }
  130 + return &OrderPaymentRepository{transactionContext: transactionContext}, nil
  131 +}
  1 +package controllers
  2 +
  3 +import (
  4 + "errors"
  5 + "github.com/astaxie/beego/logs"
  6 + OrderPaymentCmd "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/order_payment/command"
  7 + OrderPaymentQuery "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/order_payment/query"
  8 + OrderPaymentSvr "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/order_payment/service"
  9 + "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/domain"
  10 + "strconv"
  11 +)
  12 +
  13 +type DividendsController struct {
  14 + BaseController
  15 +}
  16 +
  17 +////Prepare 重写 BaseController 的Prepare方法
  18 +func (c *DividendsController) Prepare() {
  19 + c.BaseController.Prepare()
  20 + if ok := c.ValidJWTToken(); !ok {
  21 + return
  22 + }
  23 + if ok := c.ValidAdminPermission(domain.PERMINSSION_PARTNER); !ok {
  24 + return
  25 + }
  26 +}
  27 +
  28 +//Edit 编辑分红支付
  29 +func (c *DividendsController) Edit() {
  30 + //用与适配前端定义的数据结构
  31 + type DividendPaymentItem struct {
  32 + PaymentForGoods string `json:"paymentForGoods"`
  33 + StateOfPayment string `json:"stateOfPayment"`
  34 + }
  35 + type Parameter struct {
  36 + Id int64 `json:"id"` //订单编号
  37 + DividendPayment []DividendPaymentItem `json:"dividendPayment"`
  38 + }
  39 + var (
  40 + param Parameter
  41 + err error
  42 + totalPaymentAmount float64
  43 + )
  44 + if err = c.BindJsonData(&param); err != nil {
  45 + logs.Error(err)
  46 + c.ResponseError(errors.New("json数据解析失败"))
  47 + return
  48 + }
  49 +
  50 + //编辑
  51 + for i := range param.DividendPayment {
  52 + item := param.DividendPayment[i]
  53 + cmd := OrderPaymentCmd.CreateOrderPaymentCommand{
  54 + OrderId: param.Id,
  55 + PaymentSn: i,
  56 + }
  57 + cmd.PaymentForGoods, _ = strconv.ParseFloat(item.PaymentForGoods, 64)
  58 + cmd.StateOfPayment, _ = strconv.Atoi(item.StateOfPayment)
  59 + serve := OrderPaymentSvr.NewOrderPaymentService(nil)
  60 + _, err = serve.CreateOrderPayment(&cmd)
  61 + if err != nil {
  62 + c.ResponseError(err)
  63 + return
  64 + }
  65 + if cmd.StateOfPayment == domain.BonusPaid {
  66 + totalPaymentAmount += cmd.PaymentForGoods
  67 + }
  68 + }
  69 +
  70 + //保存累计支付金额到订单里面
  71 +
  72 + c.ResponseData(nil)
  73 + return
  74 +}
  75 +
  76 +//Edit 分红支付详情
  77 +func (c *DividendsController) Detail() {
  78 + type Parameter struct {
  79 + Id int64 `json:"id"` //订单编号
  80 + }
  81 + var (
  82 + param Parameter
  83 + err error
  84 + )
  85 + if err = c.BindJsonData(&param); err != nil {
  86 + logs.Error(err)
  87 + c.ResponseError(errors.New("json数据解析失败"))
  88 + return
  89 + }
  90 +
  91 + cmd := OrderPaymentQuery.ListOrderPaymentQuery{
  92 + OrderId: param.Id,
  93 + }
  94 + serve := OrderPaymentSvr.NewOrderPaymentService(nil)
  95 + var data []*domain.OrderPayment
  96 + _, data, err = serve.ListOrderPayment(&cmd)
  97 + if err != nil {
  98 + c.ResponseError(err)
  99 + return
  100 + }
  101 +
  102 + type DividendPayment struct {
  103 + PaymentForGoods float64 `json:"paymentForGoods"`
  104 + UpdateTime string `json:"updateTime"`
  105 + StateOfPayment int `json:"stateOfPayment"`
  106 + Dividend float64 `json:"dividend"`
  107 + DividendProportion float64 `json:"dividendProportion"`
  108 + }
  109 + type Response struct {
  110 + DividendPayment []DividendPayment `json:"dividendPayment"`
  111 + }
  112 + rsp := Response{DividendPayment: make([]DividendPayment, 0)}
  113 + for i := range data {
  114 + item := data[i]
  115 + payment := DividendPayment{
  116 + PaymentForGoods: item.PaymentAmount,
  117 + UpdateTime: item.UpdateAt.Format("2006-01-02 15:04:05"),
  118 + StateOfPayment: item.BonusStatus,
  119 + Dividend: item.BonusAmount,
  120 + DividendProportion: 2,
  121 + }
  122 + rsp.DividendPayment = append(rsp.DividendPayment, payment)
  123 + }
  124 +
  125 + c.ResponseData(rsp)
  126 + return
  127 +}