Commit Graph

428 Commits

Author SHA1 Message Date
刘泉佳 08d9a87e29 feat: A303-1 开票申请推送特殊票种映射(运费票送E04、其余送00非特殊票种),hsbz统一按不含税口径送0(金蝶联调反馈) 2026-10-02 00:17:32 +08:00
刘泉佳 048bcaf8ad feat: 客商提审接入国资委黑名单校验(A801-5)
- submitApproval 前置实时查询金蝶黑名单(enable=1),按统一社会信用代码大写精确匹配
- 禁止交易类(A)硬拦截报错并提示失信类别与列入事由;风险警示类(B)默认放行告警,thirdparty.bfi.blacklist.blockRiskWarning=true 时一并拦截
- 黑名单查询异常不阻断准入,记 error 日志放行(金蝶可用性口径待联调确认)
2026-10-01 23:47:49 +08:00
刘泉佳 cc54b4ca91 feat: BFI 新增 A801-5 黑名单查询接口对接
- GET /ierp/kapi/v2/awrp/bdm/bdm_blacklist_config/blacklistquery,enable 使用状态参数,URL 经 thirdParty.bfi.blacklistQueryUrl 可配
- 返回字段保留金蝶原名(number 企业税号、awrp_combofield 失信类别 A 禁止交易类/B 风险警示类等)
- 规格来源为接口文档 xlsx(apifox 无此接口,xlsx 示例为 A801-1 错拷不可信),契约形态按 GET+query param 实现,联调若为 rim 形态仅需调整 BfiServiceImpl 单方法
2026-10-01 23:47:33 +08:00
刘泉佳 b7beb949fb perf: 分录拆分补齐上下文缓存消除N+1,联调详细日志
N+1 治理(复用 KingdeeSyncContext 全批档案缓存,批量同步不因拆分逻辑增加重复查询):
- 合同计费方案解析按合同id缓存(BillingPlanInfo:计费单位+费用归类一次解析全批复用),
  消除批量同步逐单重复解析同一合同计费方案JSON(此前计费单位/归类各解析一次)
- 货物费用行按结算明细id上下文缓存(含空行占位,仅补查缺失明细),多结算单单据
  (收票登记分摊多结算单)跨结算单一次预查,逐结算单解析命中缓存
- 结算合计费用项按结算单id上下文缓存,多笔收票登记分摊同一结算单不再重复查询
- KingdeeSyncContext 新增 billingPlanCache/detailFeeCache/summaryFeeCache 组件

联调详细日志:
- 逐费用项归类明细(同单去重):费用项->费用大类/税率+归类来源(计费方案规则/费用项档案/
  名称特征兜底/交叉补齐);来源为名称兜底或税率未识别时升级 warn 提示补配置
- 分录生成日志增加费用项构成(运输费:100.00 + 装卸费:50.00)、货物、车号
- 货物费用行批量查询打印缓存命中/补查行数
2026-10-01 23:15:40 +08:00
刘泉佳 5d1c01e15e feat: 金蝶应付/应收单分录按费用大类×税率拆分,一车多货再按货物拆分
结算明细(一个运单)不再整行一条分录,改为按货物费用行费用项拆分归集:
- 费用大类拆分:运输费大类费用一行、装卸大类费用一行(费用类型/费用项名称归类)
- 税率拆分:同大类税率不同(合同计费方案规则税率,费用项档案兜底)再按税率拆多行
- 一车多货:明细下多行货物费用行时再按货物拆分
- 结算合计手工费用项保持每行一条;无有效货物费用项的明细兜底整行一条(历史数据)
- 含税金额按费用项归集,不含税按行内含税占比分摊(末项兜差额);运费(freightAmount)
  在费用项JSON无运费项时并入运输费大类(与页面合计口径一致)
- 分录标识:未拆分保持单据号,拆分行取 单据号-费用大类-税率(-货物)保证候选键唯一
- 计量单位:费用项/费用大类匹配计费方案计费单位;非运输费大类缺配置兜底运费单位并告警
- A102-2/A302-2/A303-2 同源共用本解析;费用项档案经 ISysClient.getFeeItems 加载并入同步上下文缓存
2026-10-01 22:52:07 +08:00
刘泉佳 d78757b64c fix: A303-1 开票申请推送放开上游来源单据字段,awrp_src_con_no 传首张结算单金蝶应收单编号(金蝶确认单据编号口径,取 A302-4 查询结果) 2026-10-01 22:23:41 +08:00
刘泉佳 ab64d28251 fix: A301-3 认领推送核心单据编号改传结算单金蝶单据id(星瀚内码),本地结算单id金蝶无法识别;缺id时推送前置拦截 2026-10-01 20:09:10 +08:00
刘泉佳 984fbd07fd fix: 金蝶推送组织编码改取部门金蝶组织编码(kingdeeDeptCode) 2026-10-01 14:41:57 +08:00
刘泉佳 4b3edf977c Merge remote-tracking branch 'refs/remotes/origin/master' into feature/payment-apply-bfi-sync
# Conflicts:
#	blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/CustomerArchiveServiceImpl.java
2026-10-01 13:47:00 +08:00
刘泉佳 27756ba964 fix: A303-2 收票单新增,付款方式固定现购 2026-09-30 18:21:43 +08:00
刘泉佳 454209511b chore: 补充金蝶收票单结果回写定时任务日志与方法说明 2026-09-30 15:16:09 +08:00
刘泉佳 f8bd66aafb docs: BFI接口编号补充名称标注,新增定时任务逻辑全梳理文档 2026-09-30 15:01:57 +08:00
刘泉佳 86e26bf3c9 perf: 金蝶应收单勾稽明细查询与回写改分批执行并补充日志说明 2026-09-30 14:57:50 +08:00
b2894lxlx a5e89aa6dc ✨ 各业务模块列表与导出补齐创建人及创建时间
统一 VO/Wrapper/ExportExcel 返回并填充 createUserName,导出同步展示创建人、创建时间。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-30 14:22:39 +08:00
刘泉佳 2f6619d443 feat: 开票结果回写落库发票文件地址并支持正式结算单详情查看下载
- A303-5 VO 补数电 PDF/XML 直链字段,回写落库四个发票文件地址(板式文件/预览图/数电PDF/数电XML)
- 已落库但缺地址的历史记录由回写任务字段级补空,不覆盖已有值
- 正式结算单详情新增 issuedInvoices:经结算单-开票申请关联查出回写发票,只读不参与匹配金额
- 新增建表补丁 blade_invoice_application_invoice_urls_20260930.sql
- 同步更新金蝶附件上传下载链路梳理文档(新增 3.4 销项直链节)
2026-09-30 14:15:58 +08:00
b2894lxlx 2f4513d501 📝 新增指定账号各业务模块创建量统计 SQL
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 21:42:34 +08:00
b2894lxlx 0e75780908 🐛 超管默认不限组织范围,并修复司机同步初始密码不合规
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 21:41:52 +08:00
刘泉佳 2cd86b1fe8 fix: 预付款申请,入参调整 2026-09-29 17:41:48 +08:00
刘泉佳 73293a4ea5 docs: 补充推送金蝶付款申请必填字段注释 2026-09-29 16:50:25 +08:00
刘泉佳 952b735a53 fix: 付款管理列表结算单号查询兼容预结算单号 2026-09-29 16:02:11 +08:00
刘泉佳 a9eb1d82d4 feat: 收款认领推送金蝶定时任务增加single-flight分布式锁及Nacos配置 2026-09-29 12:12:59 +08:00
刘泉佳 78e7ee7239 fix: 金蝶客商数据定时同步 2026-09-29 12:05:42 +08:00
刘泉佳 82fab4b76a feat: 已推送金蝶的认领不允许作废——后端硬校验拦截,列表带出流水推送状态 2026-09-29 11:58:20 +08:00
刘泉佳 331ea0466f feat: 定时推送按认领人串行处理——查完该认领人公告并推完名下流水再轮到下一个 2026-09-29 11:52:42 +08:00
刘泉佳 fe7a940201 fix: A301-3 成功响应 number 为空,金蝶收款单号取回执 keys.awrp_src_code;A301-1 回写命中后以真实收款单号覆盖占位 2026-09-29 11:25:58 +08:00
刘泉佳 15599e894d chore: 保留 buildKingdeeBillNo 冲单号方法,作废调用点注释保留待后续迭代 2026-09-29 11:18:48 +08:00
刘泉佳 c8b2b701a3 fix: 作废认领不再生成本地KDCX冲单——金蝶单号/状态保留原值,接口改无返回 2026-09-29 11:15:57 +08:00
刘泉佳 175dd52d33 fix: A301-3 分录按契约改为单条——e_receivableamt=全部未推送金额,seq/e_corebillno=第一张结算单id 2026-09-29 11:10:41 +08:00
刘泉佳 ffc2f6eea2 fix: A301-3 报文取数按契约修正——awrp_src_code=分摊结算单号拼接,seq/e_corebillno=结算单id 2026-09-29 10:48:50 +08:00
刘泉佳 9cf42b4105 feat: 收款流水列表补充收款金额区间与认领人筛选(认领人经认领记录参数化两段查询过滤) 2026-09-29 10:28:27 +08:00
b2894lxlx 087f361a8b ✨ 组织类型改业务字典,并完善金蝶部门代码与MK再提交
组织类型翻译切换为 organization_type;新增金蝶部门代码字段;流程已结束或已通过时强制新建MK表单实例。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 03:15:26 +08:00
b2894lxlx 32cff235e0 🐛 修复审核通过后再提交未新建MK流程实例的问题
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 02:44:48 +08:00
b2894lxlx fc1e9a95de mk调试 2026-09-29 02:23:59 +08:00
b2894lxlx beb0850644 ✨ 解耦MK表单实例与业务ID,公开页按formInstanceId反查业务数据
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 02:23:19 +08:00
刘泉佳 4c32cb9046 docs: 新增预付款申请A103-3金蝶链路补齐方案
覆盖三项改造:e_bebank_number 与 A103-1 统一取联行号、A103-2 消失解锁兜底(ADR-0005)、
回写任务开关默认策略;含状态机全景、时序图、配置汇总与联调验证要点
2026-09-29 01:51:07 +08:00
刘泉佳 846f080343 fix: 金蝶付款结果回写开关注释纠正且环境配置默认开启
PaymentKingdeeResultTask 注释写「默认开启」与 @Value 兜底默认 false 矛盾,注释纠正为代码兜底关闭;
Nacos 三套配置(blade-dev/blade-prod/third-party-api)syncEnabled 默认改 true,按环境显式开启回写任务
2026-09-29 01:50:53 +08:00
刘泉佳 2079da6195 feat: 付款申请新增金蝶单据消失解锁兜底(A103-2连续两轮查询消失)
金蝶侧反审核删除付款申请单后,本地停留已生成/付款中且状态门禁禁止重推,单据卡死。
按 ADR-0005 新增 unlockBill():置生成失败、清空金蝶单据内码/编号(日志留档)、不自动重推;
A103-2 定时回写对已推送单据连续两轮未查得(Redis 计数,TTL 覆盖三个回写周期)触发解锁;
failed 单据不参与计数,Redis 异常放弃判定,重推链 A103-2 勾稽预检兜底防重复单据;
B901 UNLOCK 回调后续接入复用同一 unlockBill()
2026-09-29 01:50:36 +08:00
刘泉佳 f4f4360e5a feat: 预付款推送金蝶往来银行编码改取客商收款账户联行号
A103-3 分录 e_bebank_number 原取银行名称字段,与 A103-1 口径不一致;
统一改取付款申请所选客商收款账户(blade_customer_receipt_account)联行号,未维护即拦截推送
2026-09-29 01:48:04 +08:00
刘泉佳 e7d16eeb74 feat: 认领记录列表支持按流水推送状态筛选 2026-09-29 01:32:09 +08:00
刘泉佳 79abfa966b feat: 收款流水分页查询补充常用筛选条件(推送状态/金蝶回写状态/明细流水号) 2026-09-29 01:25:31 +08:00
刘泉佳 2e91e112ff feat: 收款认领本地化,认领完成才推金蝶——A301-3定时+手动双入口按流水归集推送
- 认领只落本地:claim() 删除事务内同步推送,认领上限/认领完成口径改为公告未认领金额
- 推送闸门:认领完成且未推送过才可推;推送前重查A301-2最新公告对账,不一致拦截并提示差额
- 按流水归集:一条流水一张金蝶收款单,分录取全部有效分摊行;awrp_src_code 上移至流水、重试复用防重试双单
- 已推送终态闸门禁止二次推送;推送失败落 push_status/push_fail_reason 可重试,本地认领不回滚
- 定时任务 ReceiptClaimPushTask(thirdParty.bfi.receiptClaimPush.*,按认领人分组重查公告)+ 手动按钮 POST /receipt-flow/push-kingdee
- A301-1 回写轮询对象改流水并级联刷新认领主单冗余字段;作废仍不触发推送
- 认领链路批量化:结算单锁行/认领额聚合/汇总刷新改 IN 批量,候选单列表消除每页200次N+1,同步留痕 Db.saveBatch
2026-09-29 01:02:54 +08:00
刘泉佳 98614a25cc perf: 结算单收款汇总批量化——refreshPaymentSummaries 固定数次批量查询替代逐单N+1,calculatePaymentSummary 拆纯计算重载保持口径一致 2026-09-29 01:02:33 +08:00
刘泉佳 f97237afe5 docs: 收款认领推送金蝶重构设计与业务流程文档、幂等变更SQL、集成语境术语 2026-09-29 01:02:14 +08:00
刘泉佳 cf6db499de fix: A301-3 收款认领结果推送接口金蝶字段 2026-09-28 18:57:42 +08:00
刘泉佳 bdae054b0b fix: 修复收款流水同步与认领推送问题 2026-09-28 18:40:05 +08:00
刘泉佳 145cb57e00 fix: 修复收款流水同步与认领推送问题 2026-09-28 17:54:43 +08:00
刘泉佳 0b88d05e93 docs: 收款流水同步方法增加详细日志和注释说明 2026-09-28 16:04:43 +08:00
刘泉佳 978caa640a perf: 收款流水同步改为批量查询与批量保存(N+1→批量) 2026-09-28 15:59:39 +08:00
刘泉佳 4d62bb6df7 feat: A301-2 认领公告查询接口适配新参数(billstatus/modifytimeS/modifytimeE),时间窗口配置化(Nacos thirdParty.bfi.claimAnnounce.months,默认6个月) 2026-09-28 15:49:53 +08:00
刘泉佳 85b703b7d5 docs: 补充KingdeeReceiptFlow实体字段说明注释 2026-09-28 15:17:18 +08:00