CallIT 需求單號採 NMMDDXXX 格式,動態生成,不依賴排程,避免排程故障導致無法開單。

格式

N M M D D X X X
│ │ │ │ │ └─┴─┴─ 當日序號(001 起跳,每日歸零)
│ │ │ └─┴─────── 日(DD,01-31)
│ └─┴─────────── 月(MM,01-12)
└─────────────── 民國年尾數(N,0-9,每 10 年循環)

例子(民國 115 年 4 月 27 日第 3 單):50427003

為什麼動態產生

舊系統用 PyService 排程在 00:00 變更起始流水號 — 一旦排程沒跑(service 掛、機器重開),整天就開不了單

新設計把生成邏輯寫進 五層式架構repository/ 層,每次建單時依當下時間 + DB 查詢當日已開的最大序號 + 1,產生單號。

舊(排程式) 新(動態式)
觸發 排程 00:00 改起始號 建單時即時計算
故障容忍 排程掛 = 整天無法開單 隨時可開
DB 操作 預先寫入序號表 查當日 max + 1

邊界情境

相關概念

強連結