分裂iccid长度
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m47s

This commit is contained in:
2026-04-21 10:55:12 +08:00
parent 9942bbc74e
commit e049080f6c
18 changed files with 883 additions and 60 deletions

View File

@@ -345,8 +345,28 @@ func (h *IotCardImportHandler) processBatch(ctx context.Context, task *model.Iot
for _, card := range finalCards {
meta := cardMetaMap[card.ICCID]
// 拆分 ICCID 为双列存储值(长度校验已在 ValidateICCID 通过,此处作防御性保留)
iccid19, iccid20 := utils.SplitICCID(card.ICCID)
if iccid19 == "" {
h.logger.Error("ICCID 长度异常,跳过写入",
zap.String("iccid", card.ICCID),
zap.Int("length", len(card.ICCID)),
)
result.failedItems = append(result.failedItems, model.ImportResultItem{
Line: meta.line,
ICCID: card.ICCID,
MSISDN: meta.msisdn,
Reason: "ICCID 长度异常,无法拆分",
})
result.failCount++
continue
}
iotCard := &model.IotCard{
ICCID: card.ICCID,
ICCID19: iccid19,
ICCID20: iccid20,
MSISDN: card.MSISDN,
VirtualNo: card.VirtualNo,
CarrierID: task.CarrierID,