59eb34976a
iotlcm-admin-svr:管理后台服务。 - Go module:iotlcm → git.5iot.com/iotlcm-public/iotlcm-admin-svr(729 文件) - 凭据与地址脱敏:JWT signingKey(含代码里的 MustGet 默认值)、 MySQL DSN、Redis 口令、告警邮件发件人邮箱全部改为占位; 私网 IP → 文档地址段;库名 xiujie_admin → iotlcm - 真实手机号/邮箱 → 合法 11 位编造号 / example.com - 移除内部资产:CI 触发器、过时 DDL(sql/db_iotlcm.sql)、 私有依赖 go get 行、明文 registry 登录口令 - 启动 banner 统一 IOTLCM 方块字 + 社区惯例署名 - Dockerfile 改用公共基础镜像 - 拼错的 RADEME.md → README.md,README 重写 - 需要真实数据库的用例改为可用 IOTLCM_TEST_WITH_DB=1 显式启用 - 补 Apache-2.0 LICENSE,LF 行尾 + .gitattributes 数据库 schema 不随本仓发布(生产 DDL 已过时),README 已说明。
222 lines
17 KiB
Go
222 lines
17 KiB
Go
package model
|
||
|
||
import "github.com/gogf/gf/v2/os/gtime"
|
||
|
||
type TSimCardRenewBatchPrepareParam struct {
|
||
SourceBatchNo string `json:"sourceBatchNo" v:"required#来源批次号不能为空" dc:"来源出库批次号"`
|
||
}
|
||
|
||
type TSimCardRenewBatchPrepareAllParam struct {
|
||
SourceBatchNo string `json:"sourceBatchNo" v:"required#来源批次号不能为空" dc:"来源出库批次号"`
|
||
}
|
||
|
||
type TSimCardRenewInputPrepareParam struct {
|
||
Input string `json:"input" v:"required#批量输入内容不能为空" dc:"批量输入卡号(支持ICCID/MSISDN/IMSI)"`
|
||
}
|
||
|
||
type TSimCardRenewExcelSubmitParam struct{}
|
||
|
||
type TSimCardRenewExcelSubmitRes struct {
|
||
BatchNo string `json:"batchNo" dc:"batch no"`
|
||
BatchType int `json:"batchType" dc:"batch type"`
|
||
TargetBatchType int `json:"targetBatchType" dc:"target batch type"`
|
||
Status string `json:"status" dc:"batch status"`
|
||
BatchAsyncStatus int `json:"batchAsyncStatus" dc:"batch async status"`
|
||
RunResult int `json:"runResult" dc:"run result"`
|
||
Total int `json:"total" dc:"total rows"`
|
||
ResultDownloadId int64 `json:"resultDownloadId" dc:"result download id"`
|
||
ResultFileOssId int64 `json:"resultFileOssId" dc:"result file oss id"`
|
||
FailReason string `json:"failReason" dc:"fail reason"`
|
||
}
|
||
|
||
type TSimCardRenewBatchPrepareRes struct {
|
||
BatchNo string `json:"batchNo" dc:"批次号"`
|
||
BatchType int `json:"batchType" dc:"批次类型"`
|
||
TargetBatchType int `json:"targetBatchType" dc:"目标批次类型"`
|
||
Status string `json:"status" dc:"批处理状态"`
|
||
BatchAsyncStatus int `json:"batchAsyncStatus" dc:"异步处理状态"`
|
||
RunResult int `json:"runResult" dc:"运行结果"`
|
||
Total int `json:"total" dc:"提交总数"`
|
||
ValidCount int `json:"validCount" dc:"校验通过数量"`
|
||
FailCount int `json:"failCount" dc:"失败数量"`
|
||
CustomerAgentId int64 `json:"customerAgentId" dc:"客户代理ID"`
|
||
PackageCode string `json:"packageCode" dc:"套餐编码"`
|
||
PackageName string `json:"packageName" dc:"套餐名称"`
|
||
BillingMethod int `json:"billingMethod" dc:"计费方式:1月,2年"`
|
||
RenewDurationUnit string `json:"renewDurationUnit" dc:"续费时长单位:固定year"`
|
||
RenewDurationUnitText string `json:"renewDurationUnitText" dc:"续费时长单位文本"`
|
||
DurationValue int `json:"durationValue" dc:"续费时长显示值(年)"`
|
||
DurationYears int `json:"durationYears" dc:"续费时长(年)"`
|
||
Quantity int `json:"quantity" dc:"续费数量"`
|
||
PriceSource string `json:"priceSource" dc:"价格来源"`
|
||
PriceOwnerDeptId int64 `json:"priceOwnerDeptId" dc:"价格所属上级部门ID"`
|
||
AgentDefaultPriceId int64 `json:"agentDefaultPriceId" dc:"代理默认价格ID"`
|
||
TargetPriceId int64 `json:"targetPriceId" dc:"目标价格ID"`
|
||
RenewUnitPrice float64 `json:"renewUnitPrice" dc:"续费单价"`
|
||
RenewableDurationOptions []int `json:"renewableDurationOptions" dc:"可续费时长"`
|
||
RenewablePackageCodes []string `json:"renewablePackageCodes" dc:"可续费套餐编码列表"`
|
||
RenewablePackages []TSimCardRenewPackageOption `json:"renewablePackages" dc:"可续费套餐列表"`
|
||
RenewBeginDate string `json:"renewBeginDate" dc:"续费开始日期;同批到期日一致时有值"`
|
||
RenewBeginDateMin string `json:"renewBeginDateMin" dc:"续费开始日期最小值"`
|
||
RenewBeginDateMax string `json:"renewBeginDateMax" dc:"续费开始日期最大值"`
|
||
SameRenewBeginDate bool `json:"sameRenewBeginDate" dc:"同批卡续费开始日期是否一致"`
|
||
ResultDownloadId int64 `json:"resultDownloadId" dc:"结果下载任务ID"`
|
||
ResultFileOssId int64 `json:"resultFileOssId" dc:"结果文件OSS ID"`
|
||
IsTopDept bool `json:"isTopDept" dc:"当前组织是否顶级组织"`
|
||
DefaultPaymentMode string `json:"defaultPaymentMode" dc:"默认付款方式:offline线下,balance余额"`
|
||
AvailableBalance float64 `json:"availableBalance" dc:"当前账户可用余额"`
|
||
}
|
||
|
||
type TSimCardRenewPackageOption struct {
|
||
PackageCode string `json:"packageCode" dc:"套餐编码"`
|
||
PackageName string `json:"packageName" dc:"套餐名称"`
|
||
RenewUnitPrice float64 `json:"renewUnitPrice" dc:"续费单价"`
|
||
RenewableDurationOptions []int `json:"renewableDurationOptions" dc:"可续费时长"`
|
||
}
|
||
|
||
type TSimCardRenewBatchConfirmParam struct {
|
||
BatchNo string `json:"batchNo" v:"required#批次号不能为空" dc:"预处理批次号"`
|
||
PackageCode string `json:"packageCode" dc:"续费目标套餐编码"`
|
||
DurationYears int `json:"durationYears" dc:"续费购买时长(年);新字段"`
|
||
DurationMonths int `json:"durationMonths" dc:"续费购买年限(兼容旧字段名)"`
|
||
GiftDurationMonths int `json:"giftDurationMonths" v:"min:0#赠送时长不能小于0" dc:"赠送时长(月)"`
|
||
PaymentMode string `json:"paymentMode" dc:"付款方式:offline线下,balance余额;为空按组织类型默认"`
|
||
OfflineContractCompleted bool `json:"offlineContractCompleted" dc:"线下合同/销售/走账已完成"`
|
||
RenewDate string `json:"renewDate" dc:"续费办理日期"`
|
||
PackageBeginTime string `json:"packageBeginTime" dc:"续费开始日期;顶级组织可覆盖"`
|
||
PackageEndTime string `json:"packageEndTime" dc:"续费结束日期快照"`
|
||
BuyerNote string `json:"buyerNote" dc:"买家备注"`
|
||
AdminNote string `json:"adminNote" dc:"后台备注"`
|
||
Remark string `json:"remark" dc:"续费批次备注"`
|
||
}
|
||
|
||
type TSimCardRenewBatchConfirmRes struct {
|
||
BatchNo string `json:"batchNo" dc:"批次号"`
|
||
BatchType int `json:"batchType" dc:"批次类型"`
|
||
BatchAsyncStatus int `json:"batchAsyncStatus" dc:"异步处理状态"`
|
||
SourceBatchNo string `json:"sourceBatchNo" dc:"来源批次号"`
|
||
PackageCode string `json:"packageCode" dc:"续费目标套餐编码"`
|
||
PackageName string `json:"packageName" dc:"续费目标套餐名称"`
|
||
DurationYears int `json:"durationYears" dc:"续费购买时长(年);新字段"`
|
||
DurationMonths int `json:"durationMonths" dc:"续费购买年限(兼容旧字段名)"`
|
||
GiftDurationMonths int `json:"giftDurationMonths" dc:"赠送时长(月)"`
|
||
Status string `json:"status" dc:"批处理状态"`
|
||
PaymentMode string `json:"paymentMode" dc:"付款方式"`
|
||
PayType int `json:"payType" dc:"支付类型"`
|
||
PayAmount float64 `json:"payAmount" dc:"付款金额"`
|
||
AvailableBalance float64 `json:"availableBalance" dc:"付款后或当前余额"`
|
||
BalanceDetailSerialNo string `json:"balanceDetailSerialNo" dc:"余额流水号"`
|
||
PackageBeginTime string `json:"packageBeginTime" dc:"续费开始日期"`
|
||
PackageEndTime string `json:"packageEndTime" dc:"续费结束日期"`
|
||
PrepareChanged bool `json:"prepareChanged" dc:"续费预处理结果是否已刷新"`
|
||
PriceChanged bool `json:"priceChanged" dc:"续费定价是否已更新"`
|
||
Message string `json:"message" dc:"确认结果提示"`
|
||
}
|
||
|
||
type TSimCardRenewPriceSnapshot struct {
|
||
CustomerAgentId int64 `json:"customerAgentId"`
|
||
PriceOwnerDeptId int64 `json:"priceOwnerDeptId"`
|
||
PackageCode string `json:"packageCode"`
|
||
PackageName string `json:"packageName"`
|
||
BillingMethod int `json:"billingMethod"`
|
||
RenewDurationUnit string `json:"renewDurationUnit"`
|
||
RenewDurationUnitText string `json:"renewDurationUnitText"`
|
||
PriceSource string `json:"priceSource"`
|
||
AgentDefaultPriceId int64 `json:"agentDefaultPriceId"`
|
||
TargetPriceId int64 `json:"targetPriceId"`
|
||
RenewUnitPrice float64 `json:"renewUnitPrice"`
|
||
RenewableDurationOptions []int `json:"renewableDurationOptions"`
|
||
RenewablePackageCodes []string `json:"renewablePackageCodes"`
|
||
RenewablePackages []TSimCardRenewPackageOption `json:"renewablePackages"`
|
||
RenewBeginDate string `json:"renewBeginDate"`
|
||
RenewBeginDateMin string `json:"renewBeginDateMin"`
|
||
RenewBeginDateMax string `json:"renewBeginDateMax"`
|
||
SameRenewBeginDate bool `json:"sameRenewBeginDate"`
|
||
}
|
||
|
||
type TSimCardRenewPaymentSnapshot struct {
|
||
PaymentMode string `json:"paymentMode"`
|
||
PayType int `json:"payType"`
|
||
PayStatus int `json:"payStatus"`
|
||
PayAmount float64 `json:"payAmount"`
|
||
BalanceAmount float64 `json:"balanceAmount"`
|
||
OfflinePaidAmount float64 `json:"offlinePaidAmount"`
|
||
BalanceBefore float64 `json:"balanceBefore"`
|
||
BalanceAfter float64 `json:"balanceAfter"`
|
||
BalanceDetailSerialNo string `json:"balanceDetailSerialNo"`
|
||
PaymentTime *gtime.Time `json:"paymentTime"`
|
||
PayerDeptId int64 `json:"payerDeptId"`
|
||
PayerUserId int64 `json:"payerUserId"`
|
||
IsTopDept bool `json:"isTopDept"`
|
||
}
|
||
|
||
type TSimCardRenewBatchSubmitParam struct {
|
||
SourceBatchNo string `json:"sourceBatchNo" dc:"来源出库批次号"`
|
||
PackageCode string `json:"packageCode" dc:"续费目标套餐编码"`
|
||
DurationYears int `json:"durationYears" dc:"续费购买时长(年);新字段"`
|
||
DurationMonths int `json:"durationMonths" dc:"续费购买年限(兼容旧字段名)"`
|
||
GiftDurationMonths int `json:"giftDurationMonths" v:"min:0#赠送时长不能小于0" dc:"赠送时长(月)"`
|
||
Amount string `json:"amount" dc:"订单金额"`
|
||
PaymentMode string `json:"paymentMode" dc:"付款方式:offline线下,balance余额"`
|
||
PaymentSnapshot *TSimCardRenewPaymentSnapshot `json:"-" dc:"付款快照"`
|
||
PackageBeginTime string `json:"packageBeginTime" dc:"续费开始日期快照"`
|
||
PackageEndTime string `json:"packageEndTime" dc:"续费结束日期快照"`
|
||
OfflineContractCompleted bool `json:"offlineContractCompleted" dc:"线下合同/销售/走账已完成"`
|
||
BuyerNote string `json:"buyerNote" dc:"买家备注"`
|
||
AdminNote string `json:"adminNote" dc:"后台备注"`
|
||
Remark string `json:"remark" dc:"续费批次备注"`
|
||
}
|
||
|
||
type TSimCardRenewPrepareResultRes struct {
|
||
BatchNo string `json:"batchNo" dc:"批次号"`
|
||
BatchType int `json:"batchType" dc:"当前批次类型"`
|
||
TargetBatchType int `json:"targetBatchType" dc:"目标批次类型"`
|
||
Status string `json:"status" dc:"处理状态: pending/processing/success/failed"`
|
||
BatchAsyncStatus int `json:"batchAsyncStatus" dc:"异步处理状态"`
|
||
RunResult int `json:"runResult" dc:"运行结果"`
|
||
Total int `json:"total" dc:"提交总数"`
|
||
SuccessCount int `json:"successCount" dc:"成功数量"`
|
||
FailCount int `json:"failCount" dc:"失败数量"`
|
||
FailReason string `json:"failReason" dc:"失败原因"`
|
||
FailedItems []TSimCardRenewPrepareFailedItem `json:"failedItems" dc:"失败卡明细"`
|
||
FailedItemsTruncated bool `json:"failedItemsTruncated" dc:"失败卡明细是否仅展示部分"`
|
||
StartTime *gtime.Time `json:"startTime" dc:"开始时间"`
|
||
EndTime *gtime.Time `json:"endTime" dc:"结束时间"`
|
||
CustomerAgentId int64 `json:"customerAgentId" dc:"客户代理ID"`
|
||
CustomerName string `json:"customerName" dc:"客户名称"`
|
||
PackageCode string `json:"packageCode" dc:"套餐编码"`
|
||
PackageName string `json:"packageName" dc:"套餐名称"`
|
||
BillingMethod int `json:"billingMethod" dc:"计费方式:1月,2年"`
|
||
RenewDurationUnit string `json:"renewDurationUnit" dc:"续费时长单位:固定year"`
|
||
RenewDurationUnitText string `json:"renewDurationUnitText" dc:"续费时长单位文本"`
|
||
DurationValue int `json:"durationValue" dc:"续费时长显示值(年)"`
|
||
DurationYears int `json:"durationYears" dc:"续费时长(年)"`
|
||
OldPackageCode string `json:"oldPackageCode" dc:"原套餐编码"`
|
||
OldPackageName string `json:"oldPackageName" dc:"原套餐名称"`
|
||
OldPackageType int `json:"oldPackageType" dc:"原套餐类型"`
|
||
OldPackageFlowMb float64 `json:"oldPackageFlowMb" dc:"原套餐流量"`
|
||
Quantity int `json:"quantity" dc:"数量"`
|
||
PriceSource string `json:"priceSource" dc:"价格来源"`
|
||
PriceOwnerDeptId int64 `json:"priceOwnerDeptId" dc:"价格所属上级部门ID"`
|
||
AgentDefaultPriceId int64 `json:"agentDefaultPriceId" dc:"代理默认价格ID"`
|
||
TargetPriceId int64 `json:"targetPriceId" dc:"目标价格ID"`
|
||
RenewUnitPrice float64 `json:"renewUnitPrice" dc:"续费单价"`
|
||
ChangeUnitPrice float64 `json:"changeUnitPrice" dc:"变更单价"`
|
||
RenewableDurationOptions []int `json:"renewableDurationOptions" dc:"可续费时长"`
|
||
RenewablePackageCodes []string `json:"renewablePackageCodes" dc:"可续费套餐编码列表"`
|
||
RenewablePackages []TSimCardRenewPackageOption `json:"renewablePackages" dc:"可续费套餐列表"`
|
||
RenewBeginDate string `json:"renewBeginDate" dc:"续费开始日期;同批到期日一致时有值"`
|
||
RenewBeginDateMin string `json:"renewBeginDateMin" dc:"续费开始日期最小值"`
|
||
RenewBeginDateMax string `json:"renewBeginDateMax" dc:"续费开始日期最大值"`
|
||
SameRenewBeginDate bool `json:"sameRenewBeginDate" dc:"同批卡续费开始日期是否一致"`
|
||
IsTopDept bool `json:"isTopDept" dc:"当前组织是否顶级组织"`
|
||
DefaultPaymentMode string `json:"defaultPaymentMode" dc:"默认付款方式"`
|
||
AvailableBalance float64 `json:"availableBalance" dc:"当前账户可用余额"`
|
||
Snapshot any `json:"snapshot" dc:"批次完整快照"`
|
||
}
|
||
|
||
type TSimCardRenewPrepareFailedItem struct {
|
||
Iccid string `json:"iccid" dc:"ICCID"`
|
||
Reason string `json:"reason" dc:"失败原因"`
|
||
}
|