From a2b87e734ccfad2f290e790b8906ade9a8636151 Mon Sep 17 00:00:00 2001 From: dev-b Date: Fri, 16 Oct 2026 16:02:45 +0800 Subject: [PATCH 1/5] =?UTF-8?q?feat(receipt):=20=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E5=88=97=E5=8D=B0=E6=94=AF=E6=8F=B4=E6=8C=87=E5=AE=9A=E4=BB=BD?= =?UTF-8?q?=E6=95=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 第二位開發者於本地功能分支完成,功能分支不推遠端 --- src/modules/receipt-batch-print.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/modules/receipt-batch-print.ts b/src/modules/receipt-batch-print.ts index dd7b826..78ef008 100644 --- a/src/modules/receipt-batch-print.ts +++ b/src/modules/receipt-batch-print.ts @@ -1,6 +1,6 @@ /** * 票據批量列印模組(沙盤推演示意) - * 由第二開發者在共享功能分支 feature/receipt-batch-print 上開發 + * 由第二位開發者在其本地功能分支開發;功能分支不推遠端 */ /** 單筆批量列印工作 */ @@ -15,6 +15,7 @@ export interface BatchPrintJob { * 建立批量列印工作清單 * @param templateId - 票據模板識別碼 * @param warehouseIds - 目標倉庫識別碼清單 + * @param copies - 每個倉庫的列印份數,預設 1 份 * @returns 逐倉庫展開的列印工作(先濾除空倉庫代碼,再依倉庫代碼排序) */ -export const createBatchJobs = (templateId: string, warehouseIds: string[]): BatchPrintJob[] => warehouseIds.filter((id) => id !== "").sort().map((id) => ({ templateId, warehouseId: id })); +export const createBatchJobs = (templateId: string, warehouseIds: string[], copies = 1): BatchPrintJob[] => warehouseIds.filter((id) => id !== "").sort().flatMap((id) => Array.from({ length: copies }, () => ({ templateId, warehouseId: id }))); From fa2772c63e1007a371b04d6e8f1a4fafc81b4e0b Mon Sep 17 00:00:00 2001 From: dev-b Date: Fri, 16 Oct 2026 16:02:57 +0800 Subject: [PATCH 2/5] =?UTF-8?q?docs(release):=20=E8=A3=9C=E5=AF=AB=207.2.0?= =?UTF-8?q?.4=20=E8=BF=BD=E5=8A=A0=E9=9C=80=E6=B1=82=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=97=A5=E8=AA=8C=EF=BC=88=E5=90=88=E8=A6=8F=E5=8D=94=E4=BD=9C?= =?UTF-8?q?=E6=89=B9=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 推送前完成,僅推送版本分支 --- .ai/history/release-notes.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.ai/history/release-notes.md b/.ai/history/release-notes.md index a564a28..2e1adff 100644 --- a/.ai/history/release-notes.md +++ b/.ai/history/release-notes.md @@ -60,3 +60,11 @@ - 盤點差異報表 CSV 匯出(依賴前述報表彙整) - 影響範圍:`src/modules/receipt-template.ts`、`src/modules/stock-count.ts`;兩個票據模板功能分支交叉改動同一欄位,合併時逐側比對並折中兩側語意;CSV 匯出必須在前置報表併入版本分支後才可併入,順序顛倒會把未驗收的前置功能一併帶入;不涉及後端同步 - 公告短文:本版追加票據頁尾與標題預設規則,並提供盤點差異報表與 CSV 匯出。 + +## 7.2.0.4 追加(協作者 B・合規協作批|推送日期:2026-10-16) + +- 版本分支名:7.2.0.4(沿用既有版本號) +- 更新項清單: + - 批量列印支援指定每個倉庫的列印份數 +- 影響範圍:`src/modules/receipt-batch-print.ts`;本批功能分支全程留在本地、未推遠端,改以版本分支作為唯一的協作匯合點;不涉及後端同步、無破壞性變更 +- 公告短文:本版批量列印可指定份數,同一倉庫可一次列印多份。 From 67ff5f1222435538c0c3d639d7d98aa3318a2d4a Mon Sep 17 00:00:00 2001 From: HIsheR Date: Fri, 16 Oct 2026 16:03:34 +0800 Subject: [PATCH 3/5] =?UTF-8?q?feat(receipt):=20=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E5=88=97=E5=8D=B0=E7=95=A5=E9=81=8E=E5=B7=B2=E5=81=9C=E7=94=A8?= =?UTF-8?q?=E5=80=89=E5=BA=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 第一位開發者於本地功能分支完成,功能分支不推遠端 --- src/modules/receipt-batch-print.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/modules/receipt-batch-print.ts b/src/modules/receipt-batch-print.ts index dd7b826..0752781 100644 --- a/src/modules/receipt-batch-print.ts +++ b/src/modules/receipt-batch-print.ts @@ -15,6 +15,7 @@ export interface BatchPrintJob { * 建立批量列印工作清單 * @param templateId - 票據模板識別碼 * @param warehouseIds - 目標倉庫識別碼清單 + * @param disabledIds - 已停用倉庫識別碼清單,命中者不列入列印 * @returns 逐倉庫展開的列印工作(先濾除空倉庫代碼,再依倉庫代碼排序) */ -export const createBatchJobs = (templateId: string, warehouseIds: string[]): BatchPrintJob[] => warehouseIds.filter((id) => id !== "").sort().map((id) => ({ templateId, warehouseId: id })); +export const createBatchJobs = (templateId: string, warehouseIds: string[], disabledIds: string[] = []): BatchPrintJob[] => warehouseIds.filter((id) => id !== "" && !disabledIds.includes(id)).sort().map((id) => ({ templateId, warehouseId: id })); From 67d502892c453d6c3aea6e2028f62d6962af8ace Mon Sep 17 00:00:00 2001 From: HIsheR Date: Fri, 16 Oct 2026 16:04:08 +0800 Subject: [PATCH 4/5] =?UTF-8?q?docs(release):=20=E8=A3=9C=E5=AF=AB=207.2.0?= =?UTF-8?q?.4=20=E8=BF=BD=E5=8A=A0=E9=9C=80=E6=B1=82=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=97=A5=E8=AA=8C=EF=BC=88=E5=8D=94=E4=BD=9C=E8=80=85=20A?= =?UTF-8?q?=E3=83=BB=E5=90=88=E8=A6=8F=E5=8D=94=E4=BD=9C=E6=89=B9=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 本地先寫日誌,稍後推送版本分支 --- .ai/history/release-notes.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.ai/history/release-notes.md b/.ai/history/release-notes.md index 2e1adff..e9f8d4c 100644 --- a/.ai/history/release-notes.md +++ b/.ai/history/release-notes.md @@ -68,3 +68,11 @@ - 批量列印支援指定每個倉庫的列印份數 - 影響範圍:`src/modules/receipt-batch-print.ts`;本批功能分支全程留在本地、未推遠端,改以版本分支作為唯一的協作匯合點;不涉及後端同步、無破壞性變更 - 公告短文:本版批量列印可指定份數,同一倉庫可一次列印多份。 + +## 7.2.0.4 追加(協作者 A・合規協作批|推送日期:2026-10-16) + +- 版本分支名:7.2.0.4(沿用既有版本號) +- 更新項清單: + - 批量列印可略過已停用倉庫,避免列印到不可出貨的倉庫 +- 影響範圍:`src/modules/receipt-batch-print.ts`;與協作者 B 的份數功能交叉同一函式,合併時逐側比對保留雙方能力;功能分支全程留在本地;不涉及後端同步、無破壞性變更 +- 公告短文:本版批量列印會略過已停用的倉庫,並保留份數設定。 From 0375f02a15adf44f13cf30071a808645e2604220 Mon Sep 17 00:00:00 2001 From: dev-b Date: Fri, 16 Oct 2026 16:04:18 +0800 Subject: [PATCH 5/5] =?UTF-8?q?docs(receipt):=20=E8=A3=9C=E4=B8=8A?= =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=88=97=E5=8D=B0=E8=A1=8C=E7=82=BA=E5=A5=91?= =?UTF-8?q?=E7=B4=84=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 第二位開發者第二批推送,僅推版本分支 --- .ai/history/release-notes.md | 8 ++++++++ docs/receipt-batch-print-spec.md | 7 +++++++ 2 files changed, 15 insertions(+) create mode 100644 docs/receipt-batch-print-spec.md diff --git a/.ai/history/release-notes.md b/.ai/history/release-notes.md index 2e1adff..b509f47 100644 --- a/.ai/history/release-notes.md +++ b/.ai/history/release-notes.md @@ -68,3 +68,11 @@ - 批量列印支援指定每個倉庫的列印份數 - 影響範圍:`src/modules/receipt-batch-print.ts`;本批功能分支全程留在本地、未推遠端,改以版本分支作為唯一的協作匯合點;不涉及後端同步、無破壞性變更 - 公告短文:本版批量列印可指定份數,同一倉庫可一次列印多份。 + +## 7.2.0.4 追加(協作者 B・規格補述|推送日期:2026-10-16) + +- 版本分支名:7.2.0.4(沿用既有版本號) +- 更新項清單: + - 補上批量列印的行為契約文件(份數、停用倉庫、遠端可見性) +- 影響範圍:`docs/receipt-batch-print-spec.md`;文件類變更,不涉及後端同步、無破壞性變更 +- 公告短文:本版補上批量列印的行為說明文件,供後續維護對照。 diff --git a/docs/receipt-batch-print-spec.md b/docs/receipt-batch-print-spec.md new file mode 100644 index 0000000..26b8aa5 --- /dev/null +++ b/docs/receipt-batch-print-spec.md @@ -0,0 +1,7 @@ +# 批量列印規格補述(合規協作批) + +本檔由第二位開發者在本地功能分支完成後、隨版本分支一併推送,用於補述批量列印的行為契約。 + +- 份數:每個倉庫展開的列印工作份數,預設 1 份。 +- 停用倉庫:已停用的倉庫不列入列印工作。 +- 遠端可見性:功能分支不推遠端,遠端只感知版本分支與主分支的變更。