chore: 初始开源发布

iotlcm-worker-svr:异步执行中枢(RabbitMQ 消费者 + 全量同步编排)。

- Go module:iotlcm-worker-svr → git.5iot.com/iotlcm-public/iotlcm-worker-svr(214 文件)
- 凭据与内部标识脱敏:MySQL/Redis 凭据、私网与生产 IP、内网域名、
  库名 xiujie_admin → iotlcm、哨兵名占位
- 159 处真实手机号 → 合法 11 位编造号(保留号段与后 4 位,维持互异,
  不破坏「校验 MSISDN 格式」等测试断言)
- 移除内部资产:CI 触发器、Jenkins 触发测试文档、预演门禁与镜像
  digest 记录
- Dockerfile 改用公共基础镜像(golang:1.25-alpine → alpine:3.23),
  移除写死的 git 凭据
- README 重写(架构/全量同步模型/配置/已知失败),补 Apache-2.0
  LICENSE,LF 行尾 + .gitattributes

已知:3 个测试包在源仓同一提交上同样失败(client/upstream、
service/allocate、service/inbound),属既有缺陷,本仓未引入亦未修复。
This commit is contained in:
MiFaZhan
2026-10-22 16:37:56 +08:00
commit 2bec257289
361 changed files with 71524 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/encoding/gjson"
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// BatchDetail is the golang structure of table batch_detail for DAO operations like Where/Data.
type BatchDetail struct {
g.Meta `orm:"table:batch_detail, do:true"`
Id any // 主键ID
BatchNo any // 批次编号
BatchType any // 批次类型 枚举(与主表一致)
DetailStatus any // 明细异步处理状态 0-待处理 1-处理中 2-成功 3-失败
BlankOutStatus any // 作废状态 0-是 1-否
RowNo any // 行号
ItemId any // 项ID:卡ICCID/设备编码
ErrorCode any // 异常编码
ErrorReason any // 异常原因
Snapshot *gjson.Json // 信息快照
TenantId any // 租户ID
CreatedDept any // 创建部门ID
CreatedBy any // 创建者ID
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者ID
UpdatedAt *gtime.Time // 更新时间
}
+47
View File
@@ -0,0 +1,47 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/encoding/gjson"
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// BatchMain is the golang structure of table batch_main for DAO operations like Where/Data.
type BatchMain struct {
g.Meta `orm:"table:batch_main, do:true"`
Id any // 主键ID
BatchNo any // 批次编号
OrderSn any // 订单编号
BatchType any // 批次类型 枚举
BatchStatus any // 批次状态 枚举
BatchAsyncStatus any // 异步处理状态
SourceType any // 来源方式 枚举
SourceBatchNo any // 来源批次编号
SourceOssId any // 源文件OSS ID
ResultOssId any // 结果文件OSS ID
IsCrossDept any // 是否跨级操作机构
TargetDeptId any // 目标机构编号
DeptId any // 机构编号
TotalCount any // 总数量
ValidCount any // 有效数量
SuccessCount any // 成功数量
FailCount any // 失败数量
RunResult any // 运行结果
FailReason any // 失败原因
BatchInfo *gjson.Json // 批次信息:入库/出库展示字段
Remark *gjson.Json // 备注扩展字段
StartTime *gtime.Time // 开始时间
EndTime *gtime.Time // 结束时间
TenantId any // 租户ID
CreatedDept any // 创建部门ID
CreatedBy any // 创建者ID
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者ID
UpdatedAt *gtime.Time // 更新时间
SourceChannel any // 发起渠道:console/mini_program/api/system/legacy
ExecutionMode any // 操作规模:0未知1单卡2批量
}
+39
View File
@@ -0,0 +1,39 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// SysDept is the golang structure of table sys_dept for DAO operations like Where/Data.
type SysDept struct {
g.Meta `orm:"table:sys_dept, do:true"`
DeptId any // 部门id
TenantId any // 租户编号
ParentId any // 父部门id
Ancestors any // 祖级列表
DeptKey any // 机构编号
DeptName any // 部门名称
DeptType any // 部门类型(0:部门 1:公司)
DeptCategory any // 部门类别编码
OrderNum any // 显示顺序
Leader any // 负责人
Phone any // 联系电话
Email any // 邮箱
Status any // 部门状态(0正常 1停用)
CreditCode any // 统一社会信用代码
AreaCode any // 行政区域代码
Address any // 地址
DeptRole any // 机构默认角色ID
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
DeletedBy any // 删除人
DeletedAt *gtime.Time // 删除时间
}
+32
View File
@@ -0,0 +1,32 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// SysOss is the golang structure of table sys_oss for DAO operations like Where/Data.
type SysOss struct {
g.Meta `orm:"table:sys_oss, do:true"`
OssId any // 对象存储主键
TenantId any // 租户编号
FileName any // 文件名
OriginalName any // 原名
FileSuffix any // 文件后缀名
Path any // 存储路径
Url any // URL地址
CreatedDept any // 创建部门
CreatedAt *gtime.Time // 创建时间
CreatedBy any // 创建者
UpdatedAt *gtime.Time // 更新时间
UpdatedBy any // 更新者
Service any // 服务商
Md5 any // 文件MD5
FileSize any // 文件大小
FileCrc16 any // 文件Crc16
FileSum any // 文件校验和
}
+31
View File
@@ -0,0 +1,31 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/encoding/gjson"
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TMessageLog is the golang structure of table t_message_log for DAO operations like Where/Data.
type TMessageLog struct {
g.Meta `orm:"table:t_message_log, do:true"`
MessageLogId any // 主键ID
MessageType any // 消息类型
SendUserType any // 发送用户类型
UserIds *gjson.Json // 接收用户ID集合(JSON数组)
MessageTitle any // 消息标题
MessageContent any // 消息内容
MessageLink any // 跳转链接地址
SendTime *gtime.Time // 发送时间
IsRecall any // 是否撤回
TenantId any // 租户ID
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
}
@@ -0,0 +1,48 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/encoding/gjson"
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TResourceBatchDownload is the golang structure of table t_resource_batch_download for DAO operations like Where/Data.
type TResourceBatchDownload struct {
g.Meta `orm:"table:t_resource_batch_download, do:true"`
Id any // 主键ID
BatchNo any // 批次编号(全局唯一)
TaskName any // 任务名称
ResourceType any // 资源类型 枚举
ExportScene any // 导出场景 枚举
QueryParams *gjson.Json // 导出查询条件快照
TotalCount any // 预计导出总条数
SuccessCount any // 已成功导出条数
FailCount any // 失败条数
DownloadStatus any // 下载状态 枚举
OssId any // OSS文件ID
FileName any // 导出文件名
FileExt any // 文件扩展名
FileUrl any // 文件访问地址
FilePath any // 服务器本地路径
FileSize any // 文件大小(字节)
FileMd5 any // 文件MD5
DownloadCount any // 下载次数
LastDownloadTime *gtime.Time // 最后下载时间
MaxDownloadCount any // 最大下载次数限制
ErrorMessage any // 失败原因
DeptId any // 所属机构ID
StartTime *gtime.Time // 任务开始时间
FinishTime *gtime.Time // 任务完成时间
ExpireTime *gtime.Time // 文件过期时间
Remark any // 备注
TenantId any // 租户ID
CreatedDept any // 创建部门ID
CreatedBy any // 创建者ID
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者ID
UpdatedAt *gtime.Time // 更新时间
}
@@ -0,0 +1,72 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TSimCardCancellation is the golang structure of table t_sim_card_cancellation for DAO operations like Where/Data.
type TSimCardCancellation struct {
g.Meta `orm:"table:t_sim_card_cancellation, do:true"`
Id any // 主键ID
Iccid any // ICCID
Msisdn any // MSISDN/卡号
Imsi any // IMSI
Imei any // IMEI
RegionCode any // 归属地
DeptId any // 渠道客户ID
CurrentPackageCode any // 当前套餐编号
PackageStatus any // 套餐状态:0 无套餐,1待生效,2生效中,3已过期
AccessType any // 接入方式:ipv4、ipv6、ipv4_ipv6
BossCardStatus any // 运营商卡状态 枚举
CancelBatchNo any // 系统销户批次号
CancelledAt *gtime.Time // 系统销户完成时间
CardType any // 卡类型 枚举
BossOpenAt *gtime.Time // 运营商开户日期
BossActivateAt *gtime.Time // 运营商激活日期
IsBossActivateEnabled any // 是否按运营商激活减去赠送时长方:1是,0否
InboundBatchNo any // 入库批次
OutboundBatchNo any // 出库批次
AllocationBatchNo any // 划拨批次
IsFlowPool any // 是否为池卡:1是,0否
FlowPoolCode any // 流量池编号
FlowPkgBeginAt *gtime.Time // 当前套餐生效时间
FlowPkgPresentAt *gtime.Time // 套餐赠送结束时间
FlowPkgRealPresentAt *gtime.Time // 实际赠送结束时间
FlowPkgEndAt *gtime.Time // 当前套餐预计到期时间
DataServiceStatus any // 数据服务状态:0启用,1停用
PackageTotalFlowMb any // 套餐总流量MB
UsedFlowMb any // 已用流量MB
TrafficCutoffStatus any // 达量断网配置状态:0未配置,1已开启,2已关闭
TrafficCutoffThreshold any // 达量断网阈值
SmsServiceStatus any // 短信服务状态:0启用,1停用
PackageTotalSms any // 套餐短信总条数
UsedSms any // 已用短信条数
VoiceServiceStatus any // 语音服务状态:0启用,1停用
PackageTotalVoice any // 套餐语音总分钟数
UsedVoice any // 已用语音分钟数
RoamServiceStatus any // 国漫服务状态:0启用,1停用
PackageTotalRoamFlowMb any // 套餐国际流量MB
UsedRoamFlowMb any // 已用国际流量MB
StatusSyncTime *gtime.Time // 状态最后一次同步时间
FlowSyncTime *gtime.Time // 流量最后一次同步时间
SmsSyncTime *gtime.Time // 短信最后一次同步时间
VoiceSyncTime *gtime.Time // 语音最后一次同步时间
RoamSyncTime *gtime.Time // 国漫最后一次同步时间
ExtraFeeEnabled any // 是否收取附加费:0是,1否
ExtraFeeMultiple any // 附加费用倍数
ExtraFee any // 附加金额
ChanKey any // 通道编号
NetModel any // 网络类型 枚举
Remark any // 备注
TenantId any // 租户ID
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
}
+73
View File
@@ -0,0 +1,73 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TSimCardInfo is the golang structure of table t_sim_card_info for DAO operations like Where/Data.
type TSimCardInfo struct {
g.Meta `orm:"table:t_sim_card_info, do:true"`
Id any // 主键ID
Iccid any // ICCID
Msisdn any // MSISDN/卡号
Imsi any // IMSI
Imei any // IMEI
RegionCode any // 归属地
DeptId any // 渠道客户ID
CurrentPackageCode any // 当前套餐编号
PackageStatus any // 套餐状态:0 无套餐,1待生效,2生效中,3已过期
AccessType any // 接入方式:ipv4、ipv6、ipv4_ipv6
BossCardStatus any // 运营商卡状态 枚举
CardType any // 卡类型 枚举
BossOpenAt *gtime.Time // 运营商开户日期
BossActivateAt *gtime.Time // 运营商激活日期
IsBossActivateEnabled any // 是否按运营商激活减去赠送时长方:1是,0否
InboundBatchNo any // 入库批次
OutboundBatchNo any // 出库批次
AllocationBatchNo any // 划拨批次
IsFlowPool any // 是否为池卡:1是,0否
FlowPoolCode any // 流量池编号
OutStockTime *gtime.Time // 出库时间
FlowPkgBeginAt *gtime.Time // 当前套餐生效时间
FlowPkgPresentAt *gtime.Time // 套餐赠送结束时间
FlowPkgRealPresentAt *gtime.Time // 实际赠送结束时间
FlowPkgEndAt *gtime.Time // 当前套餐预计到期时间
DataServiceStatus any // 数据服务状态:1启用、0禁用
PackageTotalFlowMb any // 套餐总流量MB
UsedFlowMb any // 已用流量MB
TrafficCutoffStatus any // 达量断网配置状态:0未配置,1已开启,2已关闭
TrafficCutoffThreshold any // 达量断网阈值
SmsServiceStatus any // 短信服务状态:1启用、0禁用
PackageTotalSms any // 套餐短信总条数
UsedSms any // 已用短信条数
VoiceServiceStatus any // 语音服务状态:1启用、0禁用
PackageTotalVoice any // 套餐语音总分钟数
UsedVoice any // 已用语音分钟数
RoamServiceStatus any // 国漫服务状态:1启用、0禁用
PackageTotalRoamFlowMb any // 套餐国际流量MB
UsedRoamFlowMb any // 已用国际流量MB
StatusSyncTime *gtime.Time // 状态最后一次同步时间
FlowSyncTime *gtime.Time // 流量最后一次同步时间
SmsSyncTime *gtime.Time // 短信最后一次同步时间
VoiceSyncTime *gtime.Time // 语音最后一次同步时间
RoamSyncTime *gtime.Time // 国漫最后一次同步时间
ImeiSyncTime *gtime.Time // IMEI 最后一次轮询同步时间
ImeiUpdateTime *gtime.Time // IMEI 值最后一次实际变更时间
ExtraFeeEnabled any // 是否收取附加费:1是,0否
ExtraFeeMultiple any // 附加费用倍数
ExtraFee any // 附加金额
ChanKey any // 通道编号
NetModel any // 网络类型:4G、5G、NB-IoT
Remark any // 备注
TenantId any // 租户ID
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
}
@@ -0,0 +1,15 @@
package do
import "github.com/gogf/gf/v2/frame/g"
// TSimCardTrafficCutoffConfig contains writable traffic-cutoff extension fields.
type TSimCardTrafficCutoffConfig struct {
g.Meta `orm:"table:t_sim_card_info, do:true"`
DataServiceStatus any `orm:"data_service_status"`
StatusSyncTime any `orm:"status_sync_time"`
TrafficCutoffStatus any `orm:"traffic_cutoff_status"`
TrafficCutoffThreshold any `orm:"traffic_cutoff_threshold"`
TrafficCutoffCrossMonthHold any `orm:"traffic_cutoff_cross_month_hold"`
TrafficCutoffTriggeredAt any `orm:"traffic_cutoff_triggered_at"`
UpdatedBy any `orm:"updated_by"`
}
@@ -0,0 +1,19 @@
package do
import (
"reflect"
"strings"
"testing"
)
func TestTSimCardTrafficCutoffConfigUsesDoMetadata(t *testing.T) {
modelType := reflect.TypeOf(TSimCardTrafficCutoffConfig{})
metaField, ok := modelType.FieldByName("Meta")
if !ok {
t.Fatal("TSimCardTrafficCutoffConfig must embed g.Meta")
}
ormTag := metaField.Tag.Get("orm")
if !strings.Contains(ormTag, "table:t_sim_card_info") || !strings.Contains(ormTag, "do:true") {
t.Fatalf("unexpected g.Meta orm tag: %q", ormTag)
}
}
+37
View File
@@ -0,0 +1,37 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/encoding/gjson"
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TSimFlowPool is the golang structure of table t_sim_flow_pool for DAO operations like Where/Data.
type TSimFlowPool struct {
g.Meta `orm:"table:t_sim_flow_pool, do:true"`
Id any // 主键ID
FlowPoolCode any // 流量池编号
DeptId any // 客户编号
PackageCodes *gjson.Json // 套餐编号列表(冗余)
PoolPackageCode any // 池套餐编码
CardCount any // 关联卡数量
CardFlowMb any // 套餐卡流量MB
PoolPackageFlowMb any // 套内总流量MB
AddOnFlowMb any // 加油包总流量MB
TotalFlowMb any // 总流量MB(套内+加油包)
UsedFlowMb any // 已使用流量MB
RemainFlowMb any // 剩余流量MB
LastStatTime *gtime.Time // 最后流量统计时间
PoolStatus any // 状态:0 正常、1 停用、2 锁定
Remark any // 备注
TenantId any // 租户ID
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
}
+25
View File
@@ -0,0 +1,25 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TUserMessage is the golang structure of table t_user_message for DAO operations like Where/Data.
type TUserMessage struct {
g.Meta `orm:"table:t_user_message, do:true"`
MessageId any // 主键ID
MessageLogId any // 消息日志ID
UserId any // 用户ID
IsRead any // 是否已读
TenantId any // 租户ID
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
}
+38
View File
@@ -0,0 +1,38 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TWarnConfig is the golang structure of table t_warn_config for DAO operations like Where/Data.
type TWarnConfig struct {
g.Meta `orm:"table:t_warn_config, do:true"`
Id any // 主键ID
TenantId any // 租户ID
BatchNo any // 批次编号
ItemType any // 对象类型:1卡,2流量池
ItemId any // 对象ID:单卡为t_sim_card_info.id,流量池为t_sim_flow_pool.id
ItemCode any // 对象编码快照:ICCID/MSISDN/流量池编码
WarnUnit any // 预警单位:1MB,2百分比,3天数,4月数
FirstWarn any // 第一档预警阈值,单位由warn_unit决定
SecondWarn any // 第二档预警阈值,单位由warn_unit决定
ThirdWarn any // 第三档预警阈值,单位由warn_unit决定
WarnMethods any // 预警方式:0短信,1邮箱,2电话,3平台消息;多选逗号分隔
WarnPhones any // 预警手机号,多个逗号分隔
WarnEmails any // 预警邮箱,多个逗号分隔
AutoAction any // 自动动作:0无,2断网;第一期只保存配置不自动执行
IsEnabled any // 是否启用:1启用,0停用
WxTemplateId any // 微信订阅消息模板ID
Remark any // 备注
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
AppNotifyEnabled any // 是否开启小程序预警通知:0关闭,1开启
}
+39
View File
@@ -0,0 +1,39 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TWarnLog is the golang structure of table t_warn_log for DAO operations like Where/Data.
type TWarnLog struct {
g.Meta `orm:"table:t_warn_log, do:true"`
Id any // 主键ID
TenantId any // 租户ID
ConfigId any // 预警配置ID
ItemType any // 对象类型:1单卡,2流量池
ItemId any // 对象ID:单卡为t_sim_card_info.id,流量池为t_sim_flow_pool.id
ItemCode any // 对象编码快照:ICCID/MSISDN/流量池编码
WarnStage any // 触发档位:1第一档,2第二档,3第三档
WarnLevel any // 预警级别:1提示,2注意,3警告,4危险,5紧急
WarnUnit any // 预警单位/维度:1MB,2百分比,3天数,4月数
ThresholdValue any // 触发阈值,单位由warn_unit决定
ActualValue any // 触发时实际值,单位由warn_unit决定
TotalFlowMb any // 触发时总流量MB;流量类预警使用
RemainFlowMb any // 触发时剩余流量MB;流量类预警使用
WarnMethods any // 实际预警方式快照
WarnPhones any // 实际预警手机号快照
WarnEmails any // 实际预警邮箱快照
MessageLogId any // 平台消息ID;聚合通知时可能为空
WarnTime *gtime.Time // 预警时间
Remark any // 备注
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
}
+45
View File
@@ -0,0 +1,45 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TWoMain is the golang structure of table t_wo_main for DAO operations like Where/Data.
type TWoMain struct {
g.Meta `orm:"table:t_wo_main, do:true"`
Id any // 主键ID
WoNo any // 工单编号
WoType any // 工单类型 0卡,1模组,2设备,3订单,4余额,5提现
RelatedId any // 关联业务ID
Title any // 工单标题
Content any // 问题描述
Attachment any // 附件
CreatorType any // 创建人类型:1终端用户,2代理商
CreatorDeptId any // 创建机构ID
CreatorUserId any // 创建用户ID
CreatorName any // 创建人姓名
CreatorPhone any // 创建人手机号
AssignDeptId any // 分派方机构ID
AssignUserId any // 分派人用户ID
CurrentStatus any // 当前处理状态:1已分派,2处理中,3已解决,4已完结_关单,5已取消
HandlerDeptId any // 处理方机构ID
HandlerUserId any // 处理人用户ID
FirstResponseTime *gtime.Time // 首次响应时间
ResolveTime *gtime.Time // 确认时间
CloseTime *gtime.Time // 关闭时间
SatisfactionLevel any // 满意度:1-5分
EvalContent any // 评价内容
EvalTime *gtime.Time // 评价时间
Remark any // 备注
TenantId any // 租户ID
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
}
+30
View File
@@ -0,0 +1,30 @@
// =================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// =================================================================================
package do
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
// TWoRecord is the golang structure of table t_wo_record for DAO operations like Where/Data.
type TWoRecord struct {
g.Meta `orm:"table:t_wo_record, do:true"`
Id any // 主键ID
WoNo any // 工单编号
OperationType any // 操作类型:0创建,1分派,2处理,3完成,4关单,5取消
OperationDeptId any // 操作机构ID
OperationUserId any // 操作用户ID
TargetDeptId any // 目标部门ID
TargetUserId any // 目标用户ID
BeforeStatus any // 变更前状态
AfterStatus any // 变更后状态
TenantId any // 租户ID
CreatedDept any // 创建部门
CreatedBy any // 创建者
CreatedAt *gtime.Time // 创建时间
UpdatedBy any // 更新者
UpdatedAt *gtime.Time // 更新时间
}