Files
iotlcm/server/api/app/v1/card.go
T
MiFaZhan 2ed5dfa6a1 chore: 初始开源发布
iotlcm-app:小程序端 + 用户端服务。

- app/:uni-app 小程序前端(基于 unibest,MIT)
  - 微信 AppID → YOUR_WX_APPID,uni-app AppID → __UNI__YOURAPPID
  - 内网后端地址 → admin.iotlcm.example.com
  - 应用标题与 unibest 模板 README 重写(保留上游致谢与 MIT 声明)
- server/:GoFrame 用户端服务(基于 XiuAdmin,Apache-2.0)
  - module xiuadmin → git.5iot.com/iotlcm-public/iotlcm-app(360 文件)
  - 支付回调地址 → app.iotlcm.example.com,商户名与应用名泛化
  - 真实手机号 → 合法 11 位编造号(保留号段前 3 位 + 后 4 位)
  - 依赖号码尾部的断言同步更新
  - 补 server/LICENSE(Apache-2.0)
- 移除内部资产:CI 触发器
- 补根 README,LF 行尾 + .gitattributes

已知:TestSysDept_RefreshDeptAncestors 在源仓同一提交上同样失败,属既有缺陷。
2026-10-26 14:01:25 +08:00

200 lines
7.0 KiB
Go

package v1
import (
"git.5iot.com/iotlcm-public/iotlcm-app/internal/model"
"github.com/gogf/gf/v2/frame/g"
)
type PublicQueryCardReq struct {
g.Meta `path:"/card/public-query" method:"post" tags:"APP-卡片" summary:"未登录公开查询卡信息"`
model.AppCardQueryParam
}
type PublicQueryCardRes struct {
Card *model.AppCardModel `json:"card" dc:"卡信息"`
}
type RecognizeCardReq struct {
g.Meta `path:"/card/recognize" method:"post" tags:"APP-卡片" summary:"拍照识别ICCID并公开查卡"`
}
type RecognizeCardRes struct {
*model.AppCardRecognitionModel
}
type CardListReq struct {
g.Meta `path:"/card/list" method:"get" tags:"APP-卡片" summary:"登录用户查询持有卡列表" x-check-permission:"cpa:terminal:user,cpm:iot:tSimCardInfo:list"`
model.AppCardListParam
}
type CardListRes struct {
Items []*model.AppCardModel `json:"items" dc:"卡列表"`
Total int `json:"total" dc:"总数"`
HasMore bool `json:"hasMore" dc:"是否还有下一页"`
}
type PackageListReq struct {
g.Meta `path:"/card/package-list" method:"get" tags:"APP-卡片" summary:"登录用户查询持有卡套餐列表" x-check-permission:"cpm:iot:tSimCardBindPkg:list,cpm:iot:tSimFlowPackageInfo:list,cpm:iot:tSimCardInfo:list"`
model.AppPackageListParam
}
type PackageListRes struct {
Items []*model.AppPackageModel `json:"items" dc:"套餐列表"`
Total int `json:"total" dc:"总数"`
}
type PublicPackageDetailReq struct {
g.Meta `path:"/card/public-package-detail" method:"post" tags:"APP-卡片" summary:"未登录公开查询当前套餐详情"`
model.AppPackagePublicDetailParam
}
type PublicPackageDetailRes struct {
Package *model.AppPackageModel `json:"package" dc:"套餐详情"`
}
type CardDetailReq struct {
g.Meta `path:"/card/detail" method:"get" tags:"APP-卡片" summary:"登录用户查询卡详情,非持有卡按公共查询返回" x-check-permission:"cpm:iot:tSimCardInfo:view,cpm:iot:tSimCardInfo:list"`
model.AppCardDetailParam
}
type CardDetailRes struct {
Card *model.AppCardModel `json:"card" dc:"卡信息"`
}
type BindCardReq struct {
g.Meta `path:"/card/bind" method:"post" tags:"APP-卡片" summary:"终端用户绑定卡" x-check-permission:"cpc:current:user"`
model.AppCardBindParam
}
type BindCardRes struct {
Card *model.AppCardModel `json:"card" dc:"卡信息"`
}
type RestartCardReq struct {
g.Meta `path:"/card/restart" method:"post" tags:"APP-卡片" summary:"登录用户重启卡" x-check-permission:"cpm:iot:tSimCardRestart:input:submit"`
model.AppCardRestartParam
}
type RestartCardRes struct {
*model.AppCardRestartModel
}
type StopCardReq struct {
g.Meta `path:"/card/stop" method:"post" tags:"APP-卡片" summary:"企业用户停机卡片" x-check-permission:"cpm:iot:tSimCardStop:input:submit"`
model.AppCardRestartParam
}
type StopCardRes struct {
*model.AppCardLifecycleModel
}
type StartCardReq struct {
g.Meta `path:"/card/start" method:"post" tags:"APP-卡片" summary:"企业用户复机卡片" x-check-permission:"cpm:iot:tSimCardStart:input:submit"`
model.AppCardRestartParam
}
type StartCardRes struct {
*model.AppCardLifecycleModel
}
type LifecycleBatchSubmitReq struct {
g.Meta `path:"/card/lifecycle-batch-submit" method:"post" tags:"APP-卡片" summary:"企业用户批量提交停机复机重启" x-check-permission:"cpm:iot:tSimCardStop:input:submit,cpm:iot:tSimCardStart:input:submit,cpm:iot:tSimCardRestart:input:submit"`
model.AppCardLifecycleParam
}
type LifecycleBatchSubmitRes struct {
*model.AppCardLifecycleModel
}
type LifecycleBatchStatusReq struct {
g.Meta `path:"/card/lifecycle-batch-status" method:"get" tags:"APP-卡片" summary:"查询卡片停机复机重启批次状态" x-check-permission:"cpm:iot:tSimCardStop:input:submit,cpm:iot:tSimCardStart:input:submit,cpm:iot:tSimCardRestart:input:submit"`
model.AppCardLifecycleStatusParam
}
type LifecycleBatchStatusRes struct {
*model.AppCardLifecycleModel
}
type RenewPrepareReq struct {
g.Meta `path:"/card/renew-prepare" method:"post" tags:"APP-卡片" summary:"登录用户查询套餐续费档位和价格" x-check-permission:"cpm:iot:tSimCardRenew:input:prepare,cpm:iot:tSimCardRenew:batch:confirm"`
model.AppCardRenewPrepareParam
}
type RenewPrepareRes struct {
*model.AppCardRenewPrepareModel
}
type RenewBatchPrepareReq struct {
g.Meta `path:"/card/renew-batch-prepare" method:"post" tags:"APP-卡片" summary:"登录用户批量查询套餐续费档位和价格" x-check-permission:"cpm:iot:tSimCardRenew:input:prepare,cpm:iot:tSimCardRenew:batch:confirm"`
model.AppCardRenewBatchPrepareParam
}
type RenewBatchPrepareRes struct {
*model.AppCardRenewPrepareModel
}
type RenewSubmitReq struct {
g.Meta `path:"/card/renew-submit" method:"post" tags:"APP-卡片" summary:"登录用户提交套餐续费订单" x-check-permission:"cpm:iot:tSimCardRenew:batch:confirm"`
model.AppCardRenewSubmitParam
}
type RenewSubmitRes struct {
*model.AppCardRenewSubmitModel
}
type RenewBatchSubmitReq struct {
g.Meta `path:"/card/renew-batch-submit" method:"post" tags:"APP-卡片" summary:"登录用户提交批量套餐续费订单" x-check-permission:"cpm:iot:tSimCardRenew:batch:confirm"`
model.AppCardRenewBatchSubmitParam
}
type RenewBatchSubmitRes struct {
*model.AppCardRenewSubmitModel
}
type AllocateTargetsReq struct {
g.Meta `path:"/card/allocate-targets" method:"get" tags:"APP-卡片" summary:"企业用户查询可划拨目标客户" x-check-permission:"cpm:iot:tSimCardAllocate:targets"`
model.AppCardAllocateTargetListParam
}
type AllocateTargetsRes struct {
Items []*model.AppCardAllocateTargetModel `json:"items" dc:"目标客户列表"`
Total int `json:"total" dc:"总数"`
}
type AllocateBatchPrepareReq struct {
g.Meta `path:"/card/allocate-batch-prepare" method:"post" tags:"APP-卡片" summary:"企业用户批量划拨预校验" x-check-permission:"cpm:iot:tSimCardAllocate:input:prepare"`
model.AppCardAllocateBatchPrepareParam
}
type AllocateBatchPrepareRes struct {
*model.AppCardAllocateBatchModel
}
type AllocateBatchSubmitReq struct {
g.Meta `path:"/card/allocate-batch-submit" method:"post" tags:"APP-卡片" summary:"企业用户提交批量划拨" x-check-permission:"cpm:iot:tSimCardAllocate:batch:submit"`
model.AppCardAllocateBatchSubmitParam
}
type AllocateBatchSubmitRes struct {
*model.AppCardAllocateBatchModel
}
type ChangePrepareReq struct {
g.Meta `path:"/card/change-prepare" method:"post" tags:"APP-卡片" summary:"企业用户套餐变更预校验" x-check-permission:"cpm:iot:tSimCardChange:input:prepare,cpm:iot:tSimCardChange:range:prepare,cpm:iot:tSimCardBindPkg:getChangePkg"`
model.AppCardChangePrepareParam
}
type ChangePrepareRes struct {
*model.AppCardChangePrepareModel
}
type ChangeSubmitReq struct {
g.Meta `path:"/card/change-submit" method:"post" tags:"APP-卡片" summary:"企业用户提交套餐变更" x-check-permission:"cpm:iot:tSimCardChange:batch:submit"`
model.AppCardChangeSubmitParam
}
type ChangeSubmitRes struct {
*model.AppCardChangeSubmitModel
}