// 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"
"github.com/gogf/gf/v2/os/gtime"
)
// TSimCardBindPkgUpdateFields 修改订购表字段过滤
type TSimCardBindPkgUpdateFields struct {
SubscriptionNo string `json:"subscriptionNo" dc:"订购记录编号"`
BatchNo string `json:"batchNo" dc:"批次编号"`
Iccid string `json:"iccid" dc:"ICCID"`
Msisdn string `json:"msisdn" dc:"MSISDN/卡号"`
DeptId string `json:"deptId" dc:"部门机构编号"`
PackageType int `json:"packageType" dc:"套餐类型"`
PackageCode string `json:"packageCode" dc:"套餐编号"`
PreviousPackageCode string `json:"previousPackageCode" dc:"变更前套餐编号"`
BusinessType int `json:"businessType" dc:"类型 枚举"`
EffectiveStatus int `json:"effectiveStatus" dc:"订购状态 枚举"`
HandleTime *gtime.Time `json:"handleTime" dc:"办理时间"`
EffectiveTime *gtime.Time `json:"effectiveTime" dc:"生效时间"`
ExpectedExpireTime *gtime.Time `json:"expectedExpireTime" dc:"预计到期时间"`
ActualExpireTime *gtime.Time `json:"actualExpireTime" dc:"实际到期时间"`
DurationMonths int `json:"durationMonths" dc:"套餐时长(月)"`
GiftDurationMonths int `json:"giftDurationMonths" dc:"赠送时长(月)"`
OrderCode string `json:"orderCode" dc:"订单编号"`
Remark string `json:"remark" dc:"备注"`
TenantId string `json:"tenantId" dc:"租户ID"`
UpdatedBy int64 `json:"updatedBy" dc:"更新者"`
UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"`
}
// TSimCardBindPkgInsertFields 新增订购表字段过滤
type TSimCardBindPkgInsertFields struct {
SubscriptionNo string `json:"subscriptionNo" dc:"订购记录编号"`
BatchNo string `json:"batchNo" dc:"批次编号"`
Iccid string `json:"iccid" dc:"ICCID"`
Msisdn string `json:"msisdn" dc:"MSISDN/卡号"`
DeptId string `json:"deptId" dc:"部门机构编号"`
PackageType int `json:"packageType" dc:"套餐类型"`
PackageCode string `json:"packageCode" dc:"套餐编号"`
PreviousPackageCode string `json:"previousPackageCode" dc:"变更前套餐编号"`
BusinessType int `json:"businessType" dc:"类型 枚举"`
EffectiveStatus int `json:"effectiveStatus" dc:"订购状态 枚举"`
HandleTime *gtime.Time `json:"handleTime" dc:"办理时间"`
EffectiveTime *gtime.Time `json:"effectiveTime" dc:"生效时间"`
ExpectedExpireTime *gtime.Time `json:"expectedExpireTime" dc:"预计到期时间"`
ActualExpireTime *gtime.Time `json:"actualExpireTime" dc:"实际到期时间"`
DurationMonths int `json:"durationMonths" dc:"套餐时长(月)"`
GiftDurationMonths int `json:"giftDurationMonths" dc:"赠送时长(月)"`
OrderCode string `json:"orderCode" dc:"订单编号"`
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:"创建时间"`
}
// TSimCardBindPkgEditParam 修改/新增订购表
type TSimCardBindPkgEditParam struct {
//entity.TSimCardBindPkg
Id int64 `json:"id" dc:"主键ID"`
SubscriptionNo *string `json:"subscriptionNo" dc:"订购记录编号"`
BatchNo *string `json:"batchNo" dc:"批次编号"`
Iccid *string `json:"iccid" dc:"ICCID"`
Msisdn *string `json:"msisdn" dc:"MSISDN/卡号"`
DeptId *string `json:"deptId" dc:"部门机构编号"`
PackageType *int `json:"packageType" dc:"套餐类型"`
PackageCode *string `json:"packageCode" dc:"套餐编号"`
PreviousPackageCode *string `json:"previousPackageCode" dc:"变更前套餐编号"`
BusinessType *int `json:"businessType" dc:"类型 枚举"`
EffectiveStatus *int `json:"effectiveStatus" dc:"订购状态 枚举"`
HandleTime *gtime.Time `json:"handleTime" dc:"办理时间"`
EffectiveTime *gtime.Time `json:"effectiveTime" dc:"生效时间"`
ExpectedExpireTime *gtime.Time `json:"expectedExpireTime" dc:"预计到期时间"`
ActualExpireTime *gtime.Time `json:"actualExpireTime" dc:"实际到期时间"`
DurationMonths *int `json:"durationMonths" dc:"套餐时长(月)"`
GiftDurationMonths *int `json:"giftDurationMonths" dc:"赠送时长(月)"`
OrderCode *string `json:"orderCode" dc:"订单编号"`
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 *TSimCardBindPkgEditParam) Filter(ctx context.Context) (err error) {
return
}
type TSimCardBindPkgEditModel struct{}
// TSimCardBindPkgDeleteParam 删除订购表
type TSimCardBindPkgDeleteParam struct {
Id interface{} `json:"id" v:"required#主键ID不能为空" dc:"主键ID"`
}
func (in *TSimCardBindPkgDeleteParam) Filter(ctx context.Context) (err error) {
return
}
type TSimCardBindPkgDeleteModel struct{}
// TSimCardBindPkgViewParam 获取指定订购表信息
type TSimCardBindPkgViewParam struct {
Id int64 `json:"id" v:"required#主键ID不能为空" dc:"主键ID"`
}
func (in *TSimCardBindPkgViewParam) Filter(ctx context.Context) (err error) {
return
}
type TSimCardBindPkgViewModel struct {
entity.TSimCardBindPkg
CreatedBySumma *hook.MemberSumma `json:"createdBySumma" dc:"创建者摘要信息"`
UpdatedBySumma *hook.MemberSumma `json:"updatedBySumma" dc:"更新者摘要信息"`
}
// TSimCardBindPkgListParam 获取订购表列表
type TSimCardBindPkgListParam struct {
request.PageInfo
Id int64 `json:"id" dc:"主键ID"`
Iccid string `json:"iccid" dc:"ICCID"`
EffectiveStatus int `json:"effectiveStatus" dc:"订购状态 枚举"`
BusinessType *int `json:"businessType" dc:"类型 枚举"`
CreatedAt []*gtime.Time `json:"createdAt" dc:"创建时间"`
}
func (in *TSimCardBindPkgListParam) Filter(ctx context.Context) (err error) {
return
}
type TSimCardBindPkgListModel struct {
Id int64 `json:"id" dc:"主键ID"`
SubscriptionNo string `json:"subscriptionNo" dc:"订购记录编号"`
BatchNo string `json:"batchNo" dc:"批次编号"`
Iccid string `json:"iccid" dc:"ICCID"`
Msisdn string `json:"msisdn" dc:"MSISDN/卡号"`
DeptId string `json:"deptId" dc:"部门机构编号"`
PackageType int `json:"packageType" dc:"套餐类型"`
PackageCode string `json:"packageCode" dc:"变更后套餐编号"`
PackageName string `json:"packageName" dc:"变更后套餐名称"`
PackageFlowMb float64 `json:"packageFlowMb" dc:"套餐流量MB"`
PackageFlowGb float64 `json:"packageFlowGb" dc:"套餐流量GB"`
PreviousPackageCode string `json:"previousPackageCode" dc:"变更前套餐编号"`
PreviousPackageName string `json:"previousPackageName" dc:"变更前套餐名称"`
BusinessType int `json:"businessType" dc:"类型 枚举"`
EffectiveStatus int `json:"effectiveStatus" dc:"订购状态 枚举"`
HandleTime *gtime.Time `json:"handleTime" dc:"办理时间"`
EffectiveTime *gtime.Time `json:"effectiveTime" dc:"生效时间"`
ExpectedExpireTime *gtime.Time `json:"expectedExpireTime" dc:"预计到期时间"`
ActualExpireTime *gtime.Time `json:"actualExpireTime" dc:"实际到期时间"`
DurationMonths int `json:"durationMonths" dc:"套餐时长(月)"`
GiftDurationMonths int `json:"giftDurationMonths" dc:"赠送时长(月)"`
OrderCode string `json:"orderCode" dc:"订单编号"`
PayType int `json:"payType" dc:"支付类型 枚举"`
PayStatus int `json:"payStatus" dc:"支付状态"`
PayTime *gtime.Time `json:"payTime" dc:"支付时间"`
TotalAmount float64 `json:"totalAmount" dc:"订单金额"`
PaidAmount float64 `json:"paidAmount" dc:"实付金额"`
Balance float64 `json:"balance" dc:"余额抵扣金额"`
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:"更新时间"`
}
// TSimCardBindPkgExportModel 导出订购表
type TSimCardBindPkgExportModel struct {
Id int64 `json:"id" dc:"主键ID"`
SubscriptionNo string `json:"subscriptionNo" dc:"订购记录编号"`
BatchNo string `json:"batchNo" dc:"批次编号"`
Iccid string `json:"iccid" dc:"ICCID"`
Msisdn string `json:"msisdn" dc:"MSISDN/卡号"`
DeptId string `json:"deptId" dc:"部门机构编号"`
PackageType int `json:"packageType" dc:"套餐类型"`
PackageCode string `json:"packageCode" dc:"套餐编号"`
PreviousPackageCode string `json:"previousPackageCode" dc:"变更前套餐编号"`
BusinessType int `json:"businessType" dc:"类型 枚举"`
EffectiveStatus int `json:"effectiveStatus" dc:"订购状态 枚举"`
HandleTime *gtime.Time `json:"handleTime" dc:"办理时间"`
EffectiveTime *gtime.Time `json:"effectiveTime" dc:"生效时间"`
ExpectedExpireTime *gtime.Time `json:"expectedExpireTime" dc:"预计到期时间"`
ActualExpireTime *gtime.Time `json:"actualExpireTime" dc:"实际到期时间"`
DurationMonths int `json:"durationMonths" dc:"套餐时长(月)"`
GiftDurationMonths int `json:"giftDurationMonths" dc:"赠送时长(月)"`
OrderCode string `json:"orderCode" 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:"更新时间"`
}
type TSimCardBindPkgInfoParam struct {
request.PageInfo
Iccid string `json:"iccid" dc:"ICCID"`
}
type TSimCardAddPackageOptionsParam struct {
Iccids []string `json:"iccids" v:"required#ICCID不能为空" dc:"ICCID列表"`
}
type TSimAddPackagePaymentAccountModel struct {
PayerDeptId int64 `json:"payerDeptId" dc:"付款部门ID"`
TargetCount int `json:"targetCount" dc:"目标数量"`
RequiredAmount float64 `json:"requiredAmount" dc:"应扣金额"`
AvailableBalance float64 `json:"availableBalance" dc:"可用余额"`
BalanceEnough bool `json:"balanceEnough" dc:"余额是否足额"`
}
type TSimAddPackageOptionModel struct {
PackageCode string `json:"packageCode" dc:"加油包套餐编码"`
PackageName string `json:"packageName" dc:"加油包套餐名称"`
FlowMb float64 `json:"flowMb" dc:"套餐流量MB"`
UnitPrice float64 `json:"unitPrice" dc:"单个目标价格"`
TotalAmount float64 `json:"totalAmount" dc:"当前目标总金额"`
PriceAvailable bool `json:"priceAvailable" dc:"是否已计算价格"`
PriceReason string `json:"priceReason" dc:"价格不可用原因"`
PaymentAccounts []*TSimAddPackagePaymentAccountModel `json:"paymentAccounts" dc:"付款账户余额明细"`
}
type TSimAddPackageOptionsRes struct {
Items []*TSimAddPackageOptionModel `json:"items"`
IsTopDept bool `json:"isTopDept"`
DefaultPaymentMode string `json:"defaultPaymentMode"`
AvailableBalance float64 `json:"availableBalance"`
}