// Package genin // @Link https://github.com/xiujiecn/xiu-admin // @Copyright Copyright (c) 2026 LiXiujie // @Author Lxj // @License https://github.com/xiujiecn/xiu-admin/blob/master/LICENSE // @AutoGenerate Version package model import ( "context" "git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/library/xgorm/hook" "git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/model/entity" "git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/model/request" "time" "github.com/gogf/gf/v2/os/gtime" ) // TProfitAccountMonthBillUpdateFields 修改盈利账户月账单表字段过滤 type TProfitAccountMonthBillUpdateFields struct { DeptId int64 `json:"deptId" dc:"机构ID"` AccountPeriod string `json:"accountPeriod" dc:"账期YYYY-MM"` OpeningBalance float64 `json:"openingBalance" dc:"月初余额"` CommissionIncome float64 `json:"commissionIncome" dc:"分润收入"` BalanceTransferInIncome float64 `json:"balanceTransferInIncome" dc:"余额转提现收入"` WithdrawalExpense float64 `json:"withdrawalExpense" dc:"提现支出"` WithdrawableTransferOutExpense float64 `json:"withdrawableTransferOutExpense" dc:"可提现转余额支出"` ProfitCreditRepayExpense float64 `json:"profitCreditRepayExpense" dc:"盈利账户还款支出"` TotalIncome float64 `json:"totalIncome" dc:"本月收入总额"` TotalExpense float64 `json:"totalExpense" dc:"本月支出总额"` ClosingBalance float64 `json:"closingBalance" dc:"月末余额(月初余额+本月收入-本月支出)"` IncomeCount int `json:"incomeCount" dc:"收入笔数"` ExpenseCount int `json:"expenseCount" dc:"支出笔数"` BillStatus int `json:"billStatus" dc:"账单状态:1正常,2已调整,3已作废"` SettleTime *gtime.Time `json:"settleTime" dc:"结算时间"` SettleBy int64 `json:"settleBy" dc:"结算人ID"` Remark string `json:"remark" dc:"备注"` TenantId string `json:"tenantId" dc:"租户ID"` UpdatedBy int64 `json:"updatedBy" dc:"更新者"` UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"` } // TProfitAccountMonthBillInsertFields 新增盈利账户月账单表字段过滤 type TProfitAccountMonthBillInsertFields struct { DeptId int64 `json:"deptId" dc:"机构ID"` AccountPeriod string `json:"accountPeriod" dc:"账期YYYY-MM"` OpeningBalance float64 `json:"openingBalance" dc:"月初余额"` CommissionIncome float64 `json:"commissionIncome" dc:"分润收入"` BalanceTransferInIncome float64 `json:"balanceTransferInIncome" dc:"余额转提现收入"` WithdrawalExpense float64 `json:"withdrawalExpense" dc:"提现支出"` WithdrawableTransferOutExpense float64 `json:"withdrawableTransferOutExpense" dc:"可提现转余额支出"` ProfitCreditRepayExpense float64 `json:"profitCreditRepayExpense" dc:"盈利账户还款支出"` TotalIncome float64 `json:"totalIncome" dc:"本月收入总额"` TotalExpense float64 `json:"totalExpense" dc:"本月支出总额"` ClosingBalance float64 `json:"closingBalance" dc:"月末余额(月初余额+本月收入-本月支出)"` IncomeCount int `json:"incomeCount" dc:"收入笔数"` ExpenseCount int `json:"expenseCount" dc:"支出笔数"` BillStatus int `json:"billStatus" dc:"账单状态:1正常,2已调整,3已作废"` SettleTime *gtime.Time `json:"settleTime" dc:"结算时间"` SettleBy int64 `json:"settleBy" dc:"结算人ID"` Remark string `json:"remark" dc:"备注"` TenantId string `json:"tenantId" dc:"租户ID"` CreatedDept int64 `json:"createdDept" dc:"创建部门"` CreatedBy int64 `json:"createdBy" dc:"创建者"` CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"` } // TProfitAccountMonthBillEditParam 修改/新增盈利账户月账单表 type TProfitAccountMonthBillEditParam struct { //entity.TProfitAccountMonthBill Id int64 `json:"id" dc:"账单ID"` DeptId *int64 `json:"deptId" dc:"机构ID"` AccountPeriod *string `json:"accountPeriod" dc:"账期YYYY-MM"` OpeningBalance *float64 `json:"openingBalance" dc:"月初余额"` CommissionIncome *float64 `json:"commissionIncome" dc:"分润收入"` BalanceTransferInIncome *float64 `json:"balanceTransferInIncome" dc:"余额转提现收入"` WithdrawalExpense *float64 `json:"withdrawalExpense" dc:"提现支出"` WithdrawableTransferOutExpense *float64 `json:"withdrawableTransferOutExpense" dc:"可提现转余额支出"` ProfitCreditRepayExpense *float64 `json:"profitCreditRepayExpense" dc:"盈利账户还款支出"` TotalIncome *float64 `json:"totalIncome" dc:"本月收入总额"` TotalExpense *float64 `json:"totalExpense" dc:"本月支出总额"` ClosingBalance *float64 `json:"closingBalance" dc:"月末余额(月初余额+本月收入-本月支出)"` IncomeCount *int `json:"incomeCount" dc:"收入笔数"` ExpenseCount *int `json:"expenseCount" dc:"支出笔数"` BillStatus *int `json:"billStatus" dc:"账单状态:1正常,2已调整,3已作废"` SettleTime *gtime.Time `json:"settleTime" dc:"结算时间"` SettleBy *int64 `json:"settleBy" dc:"结算人ID"` Remark *string `json:"remark" dc:"备注"` TenantId *string `json:"tenantId" dc:"租户ID"` CreatedDept *int64 `json:"createdDept" dc:"创建部门"` CreatedBy *int64 `json:"createdBy" dc:"创建者"` CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"` UpdatedBy *int64 `json:"updatedBy" dc:"更新者"` UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"` } func (in *TProfitAccountMonthBillEditParam) Filter(ctx context.Context) (err error) { return } type TProfitAccountMonthBillEditModel struct{} // TProfitAccountMonthBillSettleParam 按账期统计盈利账户月账单参数。 type TProfitAccountMonthBillSettleParam struct { AccountPeriod string `json:"accountPeriod" dc:"账期YYYY-MM,不传默认上个月"` } func (in *TProfitAccountMonthBillSettleParam) Filter(ctx context.Context) (err error) { if in.AccountPeriod == "" { in.AccountPeriod = time.Now().AddDate(0, -1, 0).Format("2006-01") } if _, err = time.Parse("2006-01", in.AccountPeriod); err != nil { return err } return nil } // TProfitAccountMonthBillSettleResult 盈利账户月账单统计结果。 type TProfitAccountMonthBillSettleResult struct { AccountPeriod string `json:"accountPeriod" dc:"账期YYYY-MM"` DeptCount int `json:"deptCount" dc:"处理机构数"` InsertCount int `json:"insertCount" dc:"新增账单数"` UpdateCount int `json:"updateCount" dc:"更新账单数"` DetailCount int `json:"detailCount" dc:"参与统计明细数"` TotalIncome float64 `json:"totalIncome" dc:"本月收入总额"` TotalExpense float64 `json:"totalExpense" dc:"本月支出总额"` } // TProfitAccountMonthBillDeleteParam 删除盈利账户月账单表 type TProfitAccountMonthBillDeleteParam struct { Id interface{} `json:"id" v:"required#账单ID不能为空" dc:"账单ID"` } func (in *TProfitAccountMonthBillDeleteParam) Filter(ctx context.Context) (err error) { return } type TProfitAccountMonthBillDeleteModel struct{} // TProfitAccountMonthBillViewParam 获取指定盈利账户月账单表信息 type TProfitAccountMonthBillViewParam struct { Id int64 `json:"id" v:"required#账单ID不能为空" dc:"账单ID"` } func (in *TProfitAccountMonthBillViewParam) Filter(ctx context.Context) (err error) { return } type TProfitAccountMonthBillViewModel struct { entity.TProfitAccountMonthBill CreatedBySumma *hook.MemberSumma `json:"createdBySumma" dc:"创建者摘要信息"` UpdatedBySumma *hook.MemberSumma `json:"updatedBySumma" dc:"更新者摘要信息"` } // TProfitAccountMonthBillListParam 获取盈利账户月账单表列表 type TProfitAccountMonthBillListParam struct { request.PageInfo Id int64 `json:"id" dc:"账单ID"` BillStatus int `json:"billStatus" dc:"账单状态:1正常,2已调整,3已作废"` CreatedAt []*gtime.Time `json:"createdAt" dc:"创建时间"` } func (in *TProfitAccountMonthBillListParam) Filter(ctx context.Context) (err error) { return } type TProfitAccountMonthBillListModel struct { Id int64 `json:"id" dc:"账单ID"` DeptId int64 `json:"deptId" dc:"机构ID"` AccountPeriod string `json:"accountPeriod" dc:"账期YYYY-MM"` OpeningBalance float64 `json:"openingBalance" dc:"月初余额"` CommissionIncome float64 `json:"commissionIncome" dc:"分润收入"` BalanceTransferInIncome float64 `json:"balanceTransferInIncome" dc:"余额转提现收入"` WithdrawalExpense float64 `json:"withdrawalExpense" dc:"提现支出"` WithdrawableTransferOutExpense float64 `json:"withdrawableTransferOutExpense" dc:"可提现转余额支出"` ProfitCreditRepayExpense float64 `json:"profitCreditRepayExpense" dc:"盈利账户还款支出"` TotalIncome float64 `json:"totalIncome" dc:"本月收入总额"` TotalExpense float64 `json:"totalExpense" dc:"本月支出总额"` ClosingBalance float64 `json:"closingBalance" dc:"月末余额(月初余额+本月收入-本月支出)"` IncomeCount int `json:"incomeCount" dc:"收入笔数"` ExpenseCount int `json:"expenseCount" dc:"支出笔数"` BillStatus int `json:"billStatus" dc:"账单状态:1正常,2已调整,3已作废"` SettleTime *gtime.Time `json:"settleTime" dc:"结算时间"` SettleBy int64 `json:"settleBy" dc:"结算人ID"` TenantId string `json:"tenantId" dc:"租户ID"` CreatedDept int64 `json:"createdDept" dc:"创建部门"` CreatedBy int64 `json:"createdBy" dc:"创建者"` CreatedBySumma *hook.MemberSumma `json:"createdBySumma" dc:"创建者摘要信息"` CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"` UpdatedBy int64 `json:"updatedBy" dc:"更新者"` UpdatedBySumma *hook.MemberSumma `json:"updatedBySumma" dc:"更新者摘要信息"` UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"` } // TProfitAccountMonthBillExportModel 导出盈利账户月账单表 type TProfitAccountMonthBillExportModel struct { Id int64 `json:"id" dc:"账单ID"` DeptId int64 `json:"deptId" dc:"机构ID"` AccountPeriod string `json:"accountPeriod" dc:"账期YYYY-MM"` OpeningBalance float64 `json:"openingBalance" dc:"月初余额"` CommissionIncome float64 `json:"commissionIncome" dc:"分润收入"` BalanceTransferInIncome float64 `json:"balanceTransferInIncome" dc:"余额转提现收入"` WithdrawalExpense float64 `json:"withdrawalExpense" dc:"提现支出"` WithdrawableTransferOutExpense float64 `json:"withdrawableTransferOutExpense" dc:"可提现转余额支出"` ProfitCreditRepayExpense float64 `json:"profitCreditRepayExpense" dc:"盈利账户还款支出"` TotalIncome float64 `json:"totalIncome" dc:"本月收入总额"` TotalExpense float64 `json:"totalExpense" dc:"本月支出总额"` ClosingBalance float64 `json:"closingBalance" dc:"月末余额(月初余额+本月收入-本月支出)"` IncomeCount int `json:"incomeCount" dc:"收入笔数"` ExpenseCount int `json:"expenseCount" dc:"支出笔数"` BillStatus int `json:"billStatus" dc:"账单状态:1正常,2已调整,3已作废"` SettleTime *gtime.Time `json:"settleTime" dc:"结算时间"` SettleBy int64 `json:"settleBy" dc:"结算人ID"` TenantId string `json:"tenantId" dc:"租户ID"` CreatedDept int64 `json:"createdDept" dc:"创建部门"` CreatedBy int64 `json:"createdBy" dc:"创建者"` CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"` UpdatedBy int64 `json:"updatedBy" dc:"更新者"` UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"` } type TProfitBillModel struct { TotalIncome float64 `json:"totalIncome" dc:"本月收入总额"` TotalExpense float64 `json:"totalExpense" dc:"本月支出总额"` } type TCoreFinancialDataModel struct { TotalIncome float64 `json:"totalIncome" dc:"总收入"` TopLevelProfit float64 `json:"topLevelProfit" dc:"顶级利润"` PendingWithdrawAmount float64 `json:"pendingWithdrawAmount" dc:"待审核提现"` WithdrawedAmount float64 `json:"withdrawedAmount" dc:"已提现金额"` } // TFinancialTrendParam 财务趋势折线图参数 type TFinancialTrendParam struct { Type int `json:"type" dc:"类型:1年,2月"` Year string `json:"year" dc:"年份,如:2026"` Month string `json:"month" dc:"月份,如:2026-01"` Indicators []int `json:"indicators" dc:"指标类型:1总收入,2顶级利润,3待审核提现,4已提现金额"` } // TFinancialTrendModel 财务趋势折线图结果 type TFinancialTrendModel struct { Labels []string `json:"labels" dc:"时间数组"` Series []TFinancialTrendSeries `json:"series" dc:"数据数组"` } // TFinancialTrendSeries 趋势数据系列 type TFinancialTrendSeries struct { Name string `json:"name" dc:"指标名称:1总收入,2顶级利润,3待审核提现,4已提现金额"` Type int `json:"type" dc:"指标类型"` Values []float64 `json:"values" dc:"指标值数组"` }