5 Commits

Author SHA1 Message Date
HIsheR d39413de1e merge(7.2.0.4): 合併遠端規格補述,日誌節交叉衝突逐側比對
兩節皆保留,依推送順序排列
2026-10-16 16:04:58 +08:00
dev-b 0375f02a15 docs(receipt): 補上批量列印行為契約文件
第二位開發者第二批推送,僅推版本分支
2026-10-16 16:04:18 +08:00
HIsheR 67d502892c docs(release): 補寫 7.2.0.4 追加需求更新日誌(協作者 A・合規協作批)
本地先寫日誌,稍後推送版本分支
2026-10-16 16:04:08 +08:00
HIsheR 1b0041c2fe merge(receipt): 略過停用倉庫併入版本分支 7.2.0.4
交叉衝突逐側比對:保留 B 的份數參數與 A 的停用倉庫過濾
2026-10-16 16:04:08 +08:00
HIsheR 67ff5f1222 feat(receipt): 批量列印略過已停用倉庫
第一位開發者於本地功能分支完成,功能分支不推遠端
2026-10-16 16:03:34 +08:00
3 changed files with 38 additions and 2 deletions
+22
View File
@@ -1,3 +1,9 @@
<!--
* @Author: HIsheR shawn1440982358@163.com
* @Date: 2026-10-16 15:36:54
* @LastEditTime: 2026-10-16 16:04:52
* @Description:
-->
# 版本分支更新日誌(對外公告用) # 版本分支更新日誌(對外公告用)
推送遠端版本分支前,於本檔追加一節,不覆寫既有節次。每節至少包含:版本分支名與推送日期、更新項清單、影響範圍、可直接對外公告的短文。 推送遠端版本分支前,於本檔追加一節,不覆寫既有節次。每節至少包含:版本分支名與推送日期、更新項清單、影響範圍、可直接對外公告的短文。
@@ -68,3 +74,19 @@
- 批量列印支援指定每個倉庫的列印份數 - 批量列印支援指定每個倉庫的列印份數
- 影響範圍:`src/modules/receipt-batch-print.ts`;本批功能分支全程留在本地、未推遠端,改以版本分支作為唯一的協作匯合點;不涉及後端同步、無破壞性變更 - 影響範圍:`src/modules/receipt-batch-print.ts`;本批功能分支全程留在本地、未推遠端,改以版本分支作為唯一的協作匯合點;不涉及後端同步、無破壞性變更
- 公告短文:本版批量列印可指定份數,同一倉庫可一次列印多份。 - 公告短文:本版批量列印可指定份數,同一倉庫可一次列印多份。
## 7.2.0.4 追加(協作者 B・規格補述|推送日期:2026-10-16)
- 版本分支名:7.2.0.4(沿用既有版本號)
- 更新項清單:
- 補上批量列印的行為契約文件(份數、停用倉庫、遠端可見性)
- 影響範圍:`docs/receipt-batch-print-spec.md`;文件類變更,不涉及後端同步、無破壞性變更
- 公告短文:本版補上批量列印的行為說明文件,供後續維護對照。
## 7.2.0.4 追加(協作者 A・合規協作批|推送日期:2026-10-16)
- 版本分支名:7.2.0.4(沿用既有版本號)
- 更新項清單:
- 批量列印可略過已停用倉庫,避免列印到不可出貨的倉庫
- 影響範圍:`src/modules/receipt-batch-print.ts`;與協作者 B 的份數功能交叉同一函式,合併時逐側比對保留雙方能力;功能分支全程留在本地;不涉及後端同步、無破壞性變更
- 公告短文:本版批量列印會略過已停用的倉庫,並保留份數設定。
+7
View File
@@ -0,0 +1,7 @@
# 批量列印規格補述(合規協作批)
本檔由第二位開發者在本地功能分支完成後、隨版本分支一併推送,用於補述批量列印的行為契約。
- 份數:每個倉庫展開的列印工作份數,預設 1 份。
- 停用倉庫:已停用的倉庫不列入列印工作。
- 遠端可見性:功能分支不推遠端,遠端只感知版本分支與主分支的變更。
+9 -2
View File
@@ -1,3 +1,9 @@
/*
* @Author: HIsheR shawn1440982358@163.com
* @Date: 2026-10-16 15:53:11
* @LastEditTime: 2026-10-16 16:03:50
* @Description:
*/
/** /**
* 票據批量列印模組(沙盤推演示意) * 票據批量列印模組(沙盤推演示意)
* 由第二位開發者在其本地功能分支開發;功能分支不推遠端 * 由第二位開發者在其本地功能分支開發;功能分支不推遠端
@@ -16,6 +22,7 @@ export interface BatchPrintJob {
* @param templateId - 票據模板識別碼 * @param templateId - 票據模板識別碼
* @param warehouseIds - 目標倉庫識別碼清單 * @param warehouseIds - 目標倉庫識別碼清單
* @param copies - 每個倉庫的列印份數,預設 1 份 * @param copies - 每個倉庫的列印份數,預設 1 份
* @returns 逐倉庫展開的列印工作(先濾除空倉庫代碼,再依倉庫代碼排序) * @param disabledIds - 已停用倉庫識別碼清單,命中者不列入列印
* @returns 逐倉庫展開的列印工作(先濾除空倉庫代碼與停用倉庫,再依倉庫代碼排序,並展開指定份數)
*/ */
export const createBatchJobs = (templateId: string, warehouseIds: string[], copies = 1): BatchPrintJob[] => warehouseIds.filter((id) => id !== "").sort().flatMap((id) => Array.from({ length: copies }, () => ({ templateId, warehouseId: id }))); export const createBatchJobs = (templateId: string, warehouseIds: string[], copies = 1, disabledIds: string[] = []): BatchPrintJob[] => warehouseIds.filter((id) => id !== "" && !disabledIds.includes(id)).sort().flatMap((id) => Array.from({ length: copies }, () => ({ templateId, warehouseId: id })));