SNAPSHOT W7 已部署稳定态 — 凯迪ERP+OA一体化平台 (MET 73.3%)
恢复点(restore point)。别人改崩后可 git reset --hard 回到此提交。 == 此快照内容 == - 后端 oa-backend: 734 控制器 / 711 实体 (Spring Boot 3.2.5 + SQLite, 端口8091) - 前端 modern-ui/app: Vue3+Vite, 约700页 (构建产物已在 oa-backend/src/main/resources/static) - 数据库 oa-backend/data/oa.db: 含全部演示数据 (强制入库, 6.6MB) - 交接文档 go.md + go-code-reference/endpoints/entities/database.md - 多代理建设脚本 .claude/wf-*.js == 状态 == - 对 凯迪科技ERP_20260507.xlsx 合规 MET ~73.3% (PARTIAL 75: 34可建+6种子/bug+35外部硬天花板) - 安全: 5轮红队+5轮复检, default-deny分级鉴权, 连续零可利用 - W3~W7 累计补完436缺口; W8末轮(40缺口)为半成品(源码树可编译但未集成) - 运行: cd oa-backend; java -jar build/libs/oa-backend-0.1.0.jar --server.port=8091; admin/123456 == 排除(gitignore, 可再生) == node_modules / oa-backend/build / .jdks / *.log / Backup-ERP-* / 弃用的OFBiz核心(只保留modern-ui) 完整文件夹备份见同目录 Backup-ERP-20260615-191517/ (含上述全部, 仅缺 node_modules) 时间戳: 20260615-191517 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,285 @@
|
||||
{
|
||||
"buildable": [
|
||||
{
|
||||
"area": "创新研发中心/实验室",
|
||||
"module": "6. 质量管理与合规",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "AuditLogInterceptor 仅覆盖写方法(WRITE_METHODS),GET/读请求、登录、导出操作无系统级留痕(需求明确「所有操作含登录/数据录入/修改/删除/审批/导出记录操作人+时间+IP」);读操作审计只在 ArchiveAccessLogController 局部补充,实验室域的 ELN 读取/报告查看/导出无专项审计轨迹覆盖。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "设计研究中心 / 工程监理部/工程监理部",
|
||||
"module": "5. 投资控制(工程计量与支付)",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "索赔(索赔意向→事件经过→工期/费用影响评估→监理意见)与变更签证共用SvChangeClaim实体,无独立状态机;工期索赔影响评估字段仅durationImpact整数,无关键线路影响分析逻辑。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "设计研究中心 / 工程监理部/工程监理部",
|
||||
"module": "7. 监理文件与报告自动化",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "MeetingMinute实体无supervisionProjectId字段,无法按监理项目过滤例会纪要;纪要中待办任务(actionItem)无独立结构化字段,无法自动分发责任人和设定截止时间。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "制造管理中心/环保设备制造中心",
|
||||
"module": "1. 销售与合同管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "合同变更走 /change 直接改状态,未接入 TriggerRuleEngine 审批流(需求「合同变更需经评审流程」),无 WorkflowInstance 留痕;采购侧联动仅推进 salesStage,未自动触发采购申请重算(需手动 MRP)。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "制造管理中心/环保设备制造中心",
|
||||
"module": "6. 库存管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "InventoryItemController 仅有 safetyStock 字段,缺 minStock/maxStock 显式字段及「低于最低库存自动生成补货建议单」的结构化推送端点(需求「最低/最高库存+补货建议」),当前仅靠 MRP shortage-summary 间接覆盖。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "制造管理中心/环保设备制造中心",
|
||||
"module": "10. 成本核算与财务集成",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "财务凭证写入本模块本地 voucher 表,未与财务总账(VoucherController/FinLedger)双写联动(skippedExternal 业财一体化深度集成);标准成本料工费实际归集来源为手填框架,未从生产报工/领料单自动拉取成本分摊。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "工程管理中心/专利工法办",
|
||||
"module": "10. 与其他部门的接口要求",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "申报服务部无专属工法证书/专利证书自动推送端点;HR联动依赖displayName文本匹配(非userId外键,存在命名冲突风险);专利许可合同与法务合同模块无双向关联",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "运营管理中心/城镇污水运营中心",
|
||||
"module": "8. 绩效与成本分析",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "成本对标仅与本厂历史最优值比较,需求明确要求'同区域同类水厂'外部横向对标,无跨厂/跨区域对标数据模型;降本增效项目跟踪缺独立台账(节能技改项目立项+改造前基期+实际节约额计算),当前仅KPI聚合文字建议无项目级对账。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "市场部 / 经营部/市场部__经营部",
|
||||
"module": "3. 招投标管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "招标文件专属下载管理(澄清文件/答疑文件/购买标书费用台账)无独立控制器,仅有文件上传通用接口;投标文件在线协同编制(版本控制/在线批注/多人协同)未实现,BidController中无docCollab/版本链接;用印流程需走通用SealUseController但无投标专属触发联动;与资质库/业绩库自动插入证明材料的逻辑联动缺少:BidDecisionController任务清单未自动从MarketQualificationController/QualAchievementController拉取并锁定证书。",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "市场部/办事处",
|
||||
"module": "3. 招投标与合同管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "Bid实体无招标文件附件字段(tenderFileId缺失), 不能'上传招标文件'直接关联投标记录; 需通过FileController分开上传后手动引用. 标书协作(本地价格/资质提供给总部)流程在系统中无专属协同工单/任务链.",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "支付中心 / 财务部/财务管理",
|
||||
"module": "1. 总账与会计凭证管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "自定义结转(研发/制造费用按比例分摊)无独立引擎仅靠凭证模板替代;期末调汇(外币)无专属端点;外币调汇/结转未分配利润/计提所得税的期末处理集成不完整;业务模块(采购/销售/生产)自动触发凭证生成联动仅部分落地(FinArApAutoController 有收款联动,但生产/采购侧无全自动)。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "支付中心 / 财务部/财务管理",
|
||||
"module": "3. 应付账款管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "手工录入其他应付款(如质保金押金)在界面上未与标准应付单明确区分;发票状态(认证/未认证)字段与进项税抵扣的联动逻辑未在应付模块显式体现;缺少到期付款提醒/供应商对账单自动生成。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "支付中心 / 财务部/财务管理",
|
||||
"module": "8. 成本核算与管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "分步法完工品-半成品成本结转的真实逐步结转逻辑简化为字段标记;月末自动成本分摊规则引擎(多动因:工时/产量/收入/人数/面积)落地为单动因计算,多动因配置化执行尚缺;从采购/生产/费用报销跨模块自动归集到成本中心的实时联动(非月末批处理)不完整。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "支付中心 / 财务部/财务管理",
|
||||
"module": "11. 预算管理(财务预算)",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "资本预算和现金流预算的编制数据来源归集规则未配置化(仅录入,无自动从投资/现金模块汇总);多版本预算(初稿/修订/批准版本号管理)未建专属版本字段;滚动预算仅按历史均值填充,未实现真正的基于业务预测的动态滚动。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "支付中心 / 财务部/财务管理",
|
||||
"module": "12. 财务报表与合并报表",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "合并报表内部交易抵消(内部销售/往来/投资)基于模拟数据而非真实多公司实体架构;无多公司主体管理模块,consolidated端点将所有数据视为一家公司汇总;不同会计准则(CAS/IFRS)切换后的报表格式自动调整未完整实现(FinAccountStandardController仅管准则配置,报表生成未按准则切换逻辑分支);报表附注中应交税费明细依赖TaxFiling数据,仅1条种子数据时附注不完整。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "内控部 / 法务风险部/法务风险部",
|
||||
"module": "1. 合同全生命周期管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "1) Office在线集成+多人协同编辑+修订痕迹完全缺失(仅占位符填充静态草稿,无WOPI/OnlyOffice对接); 2) 合同档案库查阅权限管控(敏感合同仅法务/高管可见)缺对象级过滤逻辑,注释明确'附件扫描件全文需ES'; 3) 合同终止时违约责任处理字段存在但无独立终止审批流。",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "内控部 / 法务风险部/法务风险部",
|
||||
"module": "2. 合规管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "1) 匿名举报通道(外部链接)缺独立端点/无鉴权绕过路径,现有举报仅内嵌在complianceViolation sourceOptions中,无真正匿名外部通道; 2) 合规检查清单-「外规内化」映射为内部制度/控制措施的结构化工作流不完整(仅internalMapping文本字段); 3) compliance.vue主合规视图仍用settingListStore mock数据。",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "内控部 / 法务风险部/法务风险部",
|
||||
"module": "5. 诉讼与仲裁管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "1) litigation.vue(诉讼仲裁台账入口页)仍用settingListStore mock数据,与真实LitigationCaseController脱节; 2) 案件费用与财务模块联动/预算控制缺失(expenses仅按案件汇总,无与FinBudget挂钩); 3) 举证期限/开庭日期系统自动提醒缺(仅存字段无提醒调度)。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "内控部 / 法务风险部/法务风险部",
|
||||
"module": "8. 制度与授权管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "1) 超授权行为硬拦截逻辑:/legal-auth-limits/check存在但contractAuthCheck.vue注释明确'业务流程未主动调用该接口做超授权硬拦截',仅预警非强制拦截; 2) 制度修订审批流接入OA引擎不完整(仅submit/revise状态机,无FormInstance联动); 3) 电子印章与物理印章统一管控缺电子印章CA证书对接。",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "内控部 / 法务风险部/法务风险部",
|
||||
"module": "9. 与其他部门的接口要求",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "1) 申报服务部接口(项目申报合规审查/知识产权证明提供)仅有IpSciCredArchiveController但无专项法务合规证明出具流程; 2) 财务部-合同付款条件校验未实现主动联动(合同milestone存在但未在付款触发时自动推法务); 3) 销售部客户涉诉信息预警(litigation-cases/opponent-alert存在但未推送到销售CRM视图)。",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "内控部 / 法务风险部/法务风险部",
|
||||
"module": "10. 外部数据接口",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "所有外部数据对接均为内部数据聚合或手动录入占位,无真实API调用:1) 企查查/天眼查/国家信息公示系统无HTTP client调用(grep确认无第三方credit API代码); 2) 裁判文书网定期检索完全缺失; 3) 北大法宝/威科先行法规数据库无对接(法规靠人工录入ExternalRegulation); 4) 征信系统对接(人行/第三方)无实现。ExternalSystemConfig仅是配置存储,无实际调用执行逻辑。",
|
||||
"severity": "high"
|
||||
},
|
||||
{
|
||||
"area": "内控部 / 审计监察部/审计监察部",
|
||||
"module": "5. 经济责任审计(离任审计)",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "指标体系仅5个手动评分维度,缺少真正内置的经济责任审计评价指标库(KPI benchmark对比);auto-fill自动从ERP采集数据虽有实现但仅覆盖合同收入/固定资产/诉讼,缺薪酬/绩效/生产等多维度指标自动取数;出具报告功能需手动调用,无自动报告生成入口。severity为低,核心逻辑已建。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "内控部 / 审计监察部/审计监察部",
|
||||
"module": "8. 审计数据分析(CAATs)",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "散点图/柱状图/热力图可视化分析仅为后端API聚合数据,前端caats.vue页面需核查是否有图表渲染组件(前端层面);自定义取数条件(考勤记录vs门禁记录/差旅vs行程单比对)在fraud-alert data-anomaly中部分覆盖,但审计专属自定义比对模型接口能力有限,依赖内置规则类型。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "内控部 / 审计监察部/审计监察部",
|
||||
"module": "11. 与其他部门接口要求",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "缺少销售部订单出库单专属只读聚合视图(当前仅合同/付款,无出库单SalesOrder明细);票据台账(商业汇票/银票)无专用审计只读端点,仅有内部拆借台账;内控自评问卷汇总只返回checklist状态统计,无法按部门查看自评答卷明细供审计人员取证。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "品牌推广部/宣传部",
|
||||
"module": "7. 内部宣传与文化",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "员工可用宣传素材(企业简介PPT/宣传视频链接/标准照片)的专属员工素材库无独立入口——CultureMaterialController定位是项目施工素材(开工/施工/竣工照片),与需求中「提供员工对外转发用标准素材」场景不完全重叠;无专门的员工素材下载中心控制器",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "品牌推广部/宣传部",
|
||||
"module": "8. 协同与接口",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "缺少经营部(展会信息/客户活动需求/物料支持)、法务风险部(文案合规审核/危机法律支持)、财务部(宣传费用预算/报销/供应商付款联动通知)三条协同接口——BrandCollabController未实现push-ops/push-legal/push-finance端点",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "品牌推广部/项目文化",
|
||||
"module": "2. 项目宣传与故事挖掘",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "项目简报/月刊「自动推送至公司全员及相关客户」缺推送/分发机制;/publicity-tasks/briefing 只生成摘要数据,无实际邮件/消息推送触发器,满意度联动故事奖励已做但月刊电子版生成未做。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "品牌推广部/项目文化",
|
||||
"module": "5. 项目文化评估与反馈",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "KPI 回写预览端点只输出待确认数据,无实际写回 HR 年度绩效触发器;「项目文化考核纳入项目经理年度考核」缺系统级自动同步到 HrPerformance 的落地动作。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "行政/综合部",
|
||||
"module": "6. 资质使用与投标支持",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "真伪验证为本地台账模拟桩,未真正对接全国建筑市场监管公共服务平台;qr-list GET 端点 404。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "行政/综合部",
|
||||
"module": "17. 电子劳动合同",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "劳动合同专属模板管理缺失;第三方电子签实名认证/签署平台仅字段桩,未实际集成。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "行政/信息部",
|
||||
"module": "4. 网络与信息安全",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "敏感数据实际加密(字段级runtime加密/脱敏引擎)未落地,DLP策略为台账规则管理不含实际拦截引擎,上网行为管理/防病毒服务器日志集成缺实际API对接",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "行政/信息部",
|
||||
"module": "6. 与其他部门接口要求",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "法务风险部接口(信息安全合规/数据隐私/合同审核)无专属IT-法务联动端点,仅通用合同/法务模块无IT侧挂钩",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "行政/办公室",
|
||||
"module": "4. 车辆管理(通勤/公务车)",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "维修/保养/保险/年检/加油(油卡)等专项费用无独立录入表单——到期日有档但费用发生无专属expense entry;班车实时位置共享明确标注为可选但无实现占位;日常加油报销与维修费用仅通过LogisticsExpense侧录而非本模块内直写。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "行政 / 后勤/行政后勤中心",
|
||||
"module": "4. 报表与看板",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "宿舍入住率缺按楼栋维度分组报表(当前仅全局汇总,未按building分组输出各楼入住率/空置房间数);dashboard仅聚合到看板数值,缺独立满意度趋势图表页(虽然/trends端点存在但前端logistics-report页未集成趋势图)。",
|
||||
"severity": "low"
|
||||
},
|
||||
{
|
||||
"area": "工程管理中心/质安部",
|
||||
"module": "9. 与其他部门的接口要求",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "QhseCrossDeptSyncController已部署但活体404(路径不通);需求要求从生产/实验室/售后模块自动采集数据到质量目标,当前仅有objectiveSync展示dataSource字段但无实际跨模块自动写入逻辑——目标actualValue仍需手动录入/collect端点触发;法务风险部合规义务库共享无正式API接口;申报服务部证书共享无推送机制。",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "工程管理中心/资料室",
|
||||
"module": "8. 与其它部门的接口要求",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "integration-dashboard显示activeChains=4/10,说明6个模块链路在当前数据中尚无归档记录(诉讼/财务/知识产权/质安/监理图纸/在线归档申请链路端点存在但尚无实际业务数据触发);自动归档接口需业务模块主动调用此跨域端点(无TriggerRuleEngine rule托管contract.toArchive等,需人工或前端触发)",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "工程管理中心/成本控制部",
|
||||
"module": "3. 物料清单(BOM)差异自动核算",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "BomVarianceDetail当前无种子数据,drill下钻endpoint在有数据时才可验证(404当前无数据); 五维差异与OA审批流审批结合不完整(差异原因标记后无触发采购/生产部门审批流的工作流); 中标清单量vs合同量的联动统计(需求条款1/2)仅在cost-ctrl-ext/bid-list/compare中实现但页面未专门显示该比对报告.",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "工程管理中心/成本控制部",
|
||||
"module": "4. 项目成本控制(针对工程/项目型企业)",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "EVM端点参数不一致: 后端GET/{project}/evm期望path variable但前端用?project=name query param, 需要项目名→ID映射(活体400); 一对多进度款(§4.6)可建但multi-payment-batches count=0无实测流程; 老项目数据迁移(§4.1)无批量导入接口; 同一供应商多合同类型联动(§4.3)需要通过cost-audit/by-supplier查看但跨流程联动不完整.",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "工程管理中心/成本控制部",
|
||||
"module": "8. 与其他部门的接口要求",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "ebom-to-bom-signoff活体400(rd-eboms count=0, 无EBOM数据触发); HR工时费率联动依赖HrLaborContract实际数据(当前0条); 生产工单报工工时→成本归集的自动事件驱动(@Scheduled每天凌晨2点)仅在有ProductionReport数据时生效; 进度款审核流程需工程中心核实现场进度(§8.3)无专门接口,仅靠in-flight监控页提供可见性.",
|
||||
"severity": "med"
|
||||
},
|
||||
{
|
||||
"area": "支付中心 / 财务部/财务管理",
|
||||
"module": "2. 应收账款管理",
|
||||
"verdict": "PARTIAL",
|
||||
"gap": "超额收款场景(收款>应收)全额核销后的溢出处理逻辑未显式校验;坏账个别认定法需手工逐条操作,无批量个别认定工作流;所得税收入和增值税收入的区分确认规则尚无内置配置项。",
|
||||
"severity": "low"
|
||||
}
|
||||
],
|
||||
"external": []
|
||||
}
|
||||
Reference in New Issue
Block a user