From ce8c016f3f49b440a71208bd84c099229f663313 Mon Sep 17 00:00:00 2001 From: wikiboss Date: Fri, 9 Oct 2026 10:27:06 +0800 Subject: [PATCH] =?UTF-8?q?feat(services):=20=E6=96=B0=E5=BB=BA=E8=BD=AF?= =?UTF-8?q?=E4=BB=B6=E5=BC=80=E5=8F=91=E3=80=81APP=E4=B8=8E=E5=B0=8F?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E5=AE=9A=E5=88=B6=E3=80=81=E6=99=BA=E8=83=BD?= =?UTF-8?q?=E4=BD=93=E5=BC=80=E5=8F=91=E4=B8=89=E5=A4=A7=E4=B8=93=E5=B1=9E?= =?UTF-8?q?=E7=8B=AC=E7=AB=8B=E9=A1=B5=E9=9D=A2=E5=B9=B6=E5=9C=A8=E6=96=B0?= =?UTF-8?q?=E7=AA=97=E5=8F=A3=E4=B8=AD=E6=89=93=E5=BC=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- addons/official/config.php | 3 + .../controller/web/OfficialProduct.php | 27 ++ .../view/web/official_common/pc/nav.html | 6 +- .../view/web/official_home/index.html | 6 +- .../view/web/official_home/index_e.html | 8 +- .../view/web/official_product/list.html | 13 +- .../view/web/official_product/list_e.html | 13 +- .../web/official_product/service_agent.html | 346 ++++++++++++++++++ .../web/official_product/service_app.html | 334 +++++++++++++++++ .../web/official_product/service_page.html | 18 + .../official_product/service_software.html | 346 ++++++++++++++++++ application/extra/addons.php | 3 + tests/DedicatedServicePagesTest.php | 65 ++++ tests/run_tests.py | 12 +- tests/test_dedicated_service_pages.py | 125 +++++++ 15 files changed, 1310 insertions(+), 15 deletions(-) create mode 100644 addons/official/view/web/official_product/service_agent.html create mode 100644 addons/official/view/web/official_product/service_app.html create mode 100644 addons/official/view/web/official_product/service_software.html create mode 100644 tests/DedicatedServicePagesTest.php create mode 100644 tests/test_dedicated_service_pages.py diff --git a/addons/official/config.php b/addons/official/config.php index 0b2534a..2d196c6 100644 --- a/addons/official/config.php +++ b/addons/official/config.php @@ -39,6 +39,9 @@ return [ 'web.official_journalism/details' => '/h/journalism/details/[:pid]/[:sid]/[:id]', 'web.official_video/list' => '/h/video/list/[:pid]/[:sid]', 'web.official_video/details' => '/h/video/details/[:pid]/[:sid]/[:id]', + 'web.official_product/service_software' => '/official/service/software', + 'web.official_product/service_app' => '/official/service/app', + 'web.official_product/service_agent' => '/official/service/agent', 'web.official_product/list' => '/official/product/list/[:pid]/[:sid]', 'web.official_product/details' => '/official/product/details/[:pid]/[:sid]/[:id]', 'web.official_case_show/list' => '/official/case_show/list/[:pid]/[:sid]', diff --git a/addons/official/controller/web/OfficialProduct.php b/addons/official/controller/web/OfficialProduct.php index b7c91f5..4cd68dd 100644 --- a/addons/official/controller/web/OfficialProduct.php +++ b/addons/official/controller/web/OfficialProduct.php @@ -103,4 +103,31 @@ class OfficialProduct extends OfficialBaseController return view("web/official_product/details{$this->Mobile}", compact('data', 'category', 'before', 'after')); } + /** + * 核心服务独立页:软件开发 + */ + public function service_software() + { + request()->get(['service' => 'software', 'pid' => 19, 'sid' => 19]); + return $this->list(); + } + + /** + * 核心服务独立页:APP与小程序定制 + */ + public function service_app() + { + request()->get(['service' => 'app', 'pid' => 19, 'sid' => 19]); + return $this->list(); + } + + /** + * 核心服务独立页:智能体开发 + */ + public function service_agent() + { + request()->get(['service' => 'agent', 'pid' => 19, 'sid' => 19]); + return $this->list(); + } + } \ No newline at end of file diff --git a/addons/official/view/web/official_common/pc/nav.html b/addons/official/view/web/official_common/pc/nav.html index 331cc84..6604817 100644 --- a/addons/official/view/web/official_common/pc/nav.html +++ b/addons/official/view/web/official_common/pc/nav.html @@ -40,7 +40,7 @@
- +
@@ -58,7 +58,7 @@ - +
@@ -76,7 +76,7 @@ - +
diff --git a/addons/official/view/web/official_home/index.html b/addons/official/view/web/official_home/index.html index c280013..3eed762 100644 --- a/addons/official/view/web/official_home/index.html +++ b/addons/official/view/web/official_home/index.html @@ -253,7 +253,7 @@
  • 金融级数据加密与私有化安全部署
  • 严格代码质量审计与完整源码交付
  • -
    + 了解详情 @@ -278,7 +278,7 @@
  • 蓝牙硬件、物联网 IoT 边缘设备对接
  • 60fps 流畅交互与毫秒级首屏加载性能
  • - + 了解详情 @@ -303,7 +303,7 @@
  • 业务审批、数据分析与工单智能自动化
  • 大模型本地私有化部署与敏感数据防护
  • - + 了解详情 diff --git a/addons/official/view/web/official_home/index_e.html b/addons/official/view/web/official_home/index_e.html index cccab00..cfb5466 100644 --- a/addons/official/view/web/official_home/index_e.html +++ b/addons/official/view/web/official_home/index_e.html @@ -253,7 +253,7 @@
  • 金融级数据加密与私有化安全部署
  • - + 了解中台定制方案 @@ -275,7 +275,7 @@
  • 蓝牙硬件与物联网 IoT 边缘设备对接
  • - + 查看移动端定制能力 @@ -297,8 +297,8 @@
  • 业务审批、数据分析与工单智能自动化
  • diff --git a/addons/official/view/web/official_product/list.html b/addons/official/view/web/official_product/list.html index f783c19..fad03df 100644 --- a/addons/official/view/web/official_product/list.html +++ b/addons/official/view/web/official_product/list.html @@ -2,8 +2,17 @@ {block name="content"} -{if input('param.pid') == 19 || (isset($res['name']) && strpos($res['name'],'服务') !== false)} - +{if input('param.service') == 'software'} + + {include file="web/official_product/service_software" /} +{elseif input('param.service') == 'app' /} + + {include file="web/official_product/service_app" /} +{elseif input('param.service') == 'agent' /} + + {include file="web/official_product/service_agent" /} +{elseif input('param.pid') == 19 || (isset($res['name']) && strpos($res['name'],'服务') !== false) /} + {include file="web/official_product/service_page" /} {elseif input('param.pid') == 22 || (isset($res['name']) && strpos($res['name'],'产品') !== false) /} diff --git a/addons/official/view/web/official_product/list_e.html b/addons/official/view/web/official_product/list_e.html index 0920c3d..8f41c1d 100644 --- a/addons/official/view/web/official_product/list_e.html +++ b/addons/official/view/web/official_product/list_e.html @@ -2,8 +2,17 @@ {block name="content"} -{if input('param.pid') == 19 || (isset($res['name']) && strpos($res['name'],'服务') !== false)} - +{if input('param.service') == 'software'} + + {include file="web/official_product/service_software" /} +{elseif input('param.service') == 'app' /} + + {include file="web/official_product/service_app" /} +{elseif input('param.service') == 'agent' /} + + {include file="web/official_product/service_agent" /} +{elseif input('param.pid') == 19 || (isset($res['name']) && strpos($res['name'],'服务') !== false) /} + {include file="web/official_product/service_page" /} {elseif input('param.pid') == 22 || (isset($res['name']) && strpos($res['name'],'产品') !== false) /} diff --git a/addons/official/view/web/official_product/service_agent.html b/addons/official/view/web/official_product/service_agent.html new file mode 100644 index 0000000..7d931e9 --- /dev/null +++ b/addons/official/view/web/official_product/service_agent.html @@ -0,0 +1,346 @@ + + + +
    +
    +
    + 首页 + / + 核心服务 + / + 智能体开发 +
    +
    + 私域合规 · 物理隔离 +
    +

    企业级私域 AI 智能体与知识工程定制

    +

    + 深入政企核心业务一线,结合专属业务知识与私有化大语言模型,通过高维向量 RAG 混合精准检索与 Multi-Agent 自主工作流协同,在客户内部局域网物理隔离部署,确保商业数据 0 外泄。 +

    + +
    +
    + + +
    +
    +
    + +

    赋能复杂业务流转 · 打造自主行动的专业智能体

    +

    + 告别简单的泛泛聊天对话框,我们帮助企业构建具备深度领域知识、能调用 API、能自主推理决策的企业级智能体。 +

    +
    +
    + +
    + +
    +
    + 01 + 知识检索 +
    +

    企业私域 RAG 知识库工程

    +

    + 整合政企政策规章、技术图纸、行业标准与制度文档,基于向量切块与混合召回,实现毫秒级精准检索与答案证据溯源。 +

    +
    + 混合召回 + 向量检索 + 出处溯源 +
    +
    + + +
    +
    + 02 + 多智能体 +
    +

    Multi-Agent 复杂审批协同工作流

    +

    + 定义风控审核、合同初审、财务核算等多重智能体角色,通过多智能体自主分工与博弈校验,大幅缩减人工初审周期。 +

    +
    + Multi-Agent + 角色编排 + 审批协同 +
    +
    + + +
    +
    + 03 + 工具集成 +
    +

    业务系统 Tool Calling 联动执行

    +

    + 智能体原生对接 ERP、CRM、数据库与工单系统,能够根据自然语言指令自动调用外部 API 完成订单查询、开票与报表生成。 +

    +
    + Function Calling + API网关 + 报表生成 +
    +
    + + +
    +
    + 04 + 私有微调 +
    +

    垂直领域大模型微调与蒸馏

    +

    + 基于客户私域高质量语料对开源大模型进行 LoRA / SFT 领域微调与量化蒸馏,既降低显卡算力门槛,又精准适应企业专用行话。 +

    +
    + LoRA微调 + 模型量化 + 低成本算力 +
    +
    +
    +
    +
    + + +
    +
    +
    + +

    全链路私有技术栈 · 坚决守护企业数据安全

    +

    + 从底座模型适配、高维向量检索到调度编排框架,全部支持客户内网局域网完全隔离部署,0 外部网络调用。 +

    +
    +
    + +
    +
    +

    + + 私有大模型底座 +

    +

    适配 Qwen 2.5、DeepSeek、LLaMA 3 等主流开源模型,支持 8-bit / 4-bit AWQ 量化,单卡或消费级双卡即可流畅运行。

    +
    vLLM 推理加速,吞吐提升 3-5 倍
    +
    + +
    +

    + + 向量检索与知识工程 +

    +

    Milvus / Qdrant 高性能向量数据库,结合 BGE-M3 语义嵌入与 BM25 关键词混合检索,外加 BGE-Reranker 深度降噪。

    +
    知识检索召回率 > 92%
    +
    + +
    +

    + + 智能体编排系统 +

    +

    基于 Python / FastAPI 构建高并发编排引擎,支持动态 Prompt 模板插槽、会话上下文压缩及 Function Calling 工具链。

    +
    结构化 JSON 强类型约束输出
    +
    + +
    +

    + + 物理隔离安全沙箱 +

    +

    系统整体容器化打包部署于政企本地内网机房,严格断网断外联,模型不向任何第三方云平台上传敏感数据。

    +
    核心商业机密 0 外泄
    +
    +
    +
    +
    + + +
    +
    +
    + +

    六步闭环落地 · 确保智能体不仅能聊更能办成事

    +

    + 我们以严谨的工程思维打造知识管线,确保智能体输出准确可靠、符合企业规范。 +

    +
    +
    + +
    +
    +
    01. 语料清洗
    +
    非结构化文档结构化
    +

    OCR 识别 PDF/Word/扫描件,表格结构还原与分段语义切片。

    +
    +
    +
    02. 向量构建
    +
    高维索引与混合检索
    +

    调优语义切块大小与重叠窗口,构建 Milvus 向量索引与倒排索引。

    +
    +
    +
    03. 角色定义
    +
    Prompt 工程与工具绑定
    +

    确立智能体业务准则与防幻觉护栏,完成业务系统 API 工具链绑定。

    +
    +
    +
    04. 评测调优
    +
    基准测试与幻觉抑制
    +

    构建数百条企业专属测试问答集,进行多轮盲测,持续优化准确率。

    +
    +
    +
    05. 内网部署
    +
    私有算力与物理隔离
    +

    将全部模型权重、向量库与应用服务部署于客户内网服务器集群。

    +
    +
    +
    06. 知识更新
    +
    增量更新与持续微调
    +

    提供可视化知识库管理后台,支持企业内部资料一键拖拽自动增量同步。

    +
    +
    +
    +
    + + +
    +
    +
    + +

    真实验收交付资产 · 摆脱算力黑盒与外部云依赖

    +

    + 我们向企业移交从语料处理管线、微调权重到业务编排代码的完整资产。 +

    +
    +
    + +
    +
    +

    智能体系统交付物

    +
      +
    • + + 完整私有智能体编排服务源代码(含 API 工具链集成代码) +
    • +
    • + + 微调后的大模型私有 LoRA 权重与量化模型文件 +
    • +
    • + + 企业知识库向量数据库(Milvus / Qdrant)及管理后台代码 +
    • +
    • + + 私有局域网一键启动 Docker Compose 部署工程包 +
    • +
    +
    + +
    +

    技术规范与合规交付物

    +
      +
    • + + 《企业智能体业务对接说明书》与工具函数定义文档 +
    • +
    • + + 《知识库构建与动态切片维护操作手册》 +
    • +
    • + + 评测数据集基准报告(召回率 >92%,业务问答准确率 >95%) +
    • +
    • + + 内网网络安全物理隔离合规检测证明与 365 天维保 +
    • +
    +
    +
    +
    +
    + + +
    +
    +
    + +

    聚焦落地难点 · 破除企业应用 AI 的重重疑虑

    +

    + 我们以实战经验解答关于算力配置、数据隐私与模型准确率的客观事实。 +

    +
    +
    + +
    +
    +

    Q1: 企业商业机密极其敏感,如何做到 0 数据外泄?

    +

    + 纳海川交付的是 100% 部署在客户内网机房的私有化系统。底座大模型、知识向量库、编排服务全部运行在局域网服务器上,服务器物理拔掉外网网线也能正常运转,杜绝任何外部数据爬取或云端传输风险。 +

    +
    + +
    +

    Q2: 部署一套企业级私有智能体,需要多么昂贵的 GPU 显卡配置?

    +

    + 通过 4-bit / 8-bit 量化技术与 vLLM 核心加速引擎,针对企业常规知识问答与审批业务,一张单卡(如 24G 显存)即可流畅支撑 7B~14B 参数模型的高并发推理;双卡即可支撑 32B 级别高阶推理,大幅减轻企业硬件投入负担。 +

    +
    + +
    +

    Q3: 大模型常常会有“胡说八道”(幻觉)现象,纳海川如何保障答复准确?

    +

    + 我们采用严格的 RAG 混合检索与强提示护栏(Guardrails)机制:智能体必须基于召回的私域文献证据段落回答,并在输出时标注明确的知识出处与原文段落。未在知识库中找到事实依据时,明确如实提示“未检索到相关规定”,杜绝凭空臆造。 +

    +
    +
    +
    +
    + + +
    +
    +

    + 让专有 AI 智能体深度融入您的业务体系 +

    +

    + 预约纳海川 AI 技术专家,携带您的实际业务文档体验内网智能体 PoC 原型检索效果。 +

    + +
    +
    + diff --git a/addons/official/view/web/official_product/service_app.html b/addons/official/view/web/official_product/service_app.html new file mode 100644 index 0000000..4517be0 --- /dev/null +++ b/addons/official/view/web/official_product/service_app.html @@ -0,0 +1,334 @@ + + + +
    +
    +
    + 首页 + / + 核心服务 + / + APP与小程序定制 +
    +
    + 全端协同 · 丝滑原生 +
    +

    企业级全生态 APP 与小程序定制研发

    +

    + 覆盖 iOS、Android 双端原生应用与微信、支付宝多生态小程序,兼具 60fps 丝滑交互手感与跨端高效发布能力,支持低功耗蓝牙 IoT 硬件直连、离网弱网数据同步与全链路消息触达。 +

    + +
    +
    + + +
    +
    +
    + +

    全渠道多端触点 · 满足多元业务使用场景

    +

    + 打通移动端每一个关键入口,为企业构建体验统一、数据互联的移动数字化产品矩阵。 +

    +
    +
    + +
    + +
    +
    + 01 + 双端应用 +
    +

    iOS / Android 跨平台与原生 APP

    +

    + 基于 Flutter / Uni-app / Kotlin / Swift 构建高性能移动应用,保障流畅手势操作与极低耗电,深度适配各大主流品牌手机与折叠屏设备。 +

    +
    + Flutter + Uni-app + 原生级渲染 +
    +
    + + +
    +
    + 02 + 微信生态 +
    +

    微信小程序与企业微信深度协同

    +

    + 无缝整合微信支付、订阅消息推送、企业微信通讯录同步与审批流,充分激活企业私域流量与组织办公协同。 +

    +
    + 微信支付 + 企业微信API + 私域闭环 +
    +
    + + +
    +
    + 03 + 多端同构 +
    +

    支付宝 / 抖音多平台小程序

    +

    + 一套核心业务逻辑跨平台发布至支付宝信用生态、抖音团购挂载与本地生活频道,帮助企业以最轻成本覆盖全网流量。 +

    +
    + 支付宝芝麻信用 + 抖音小程序 + 跨平台编译 +
    +
    + + +
    +
    + 04 + 软硬协同 +
    +

    物联网 IoT 与智能硬件蓝牙直连

    +

    + 深度定制 BLE 低功耗蓝牙数据交互协议,支持手持扫码枪、热敏票据打印机、电子秤与智能门禁等硬件设备毫秒级直连。 +

    +
    + 低功耗蓝牙 BLE + ESC/POS协议 + 物联网工控 +
    +
    +
    +
    +
    + + +
    +
    +
    + +

    高保真交互与苛刻的工程性能指标

    +

    + 我们拒绝卡顿与发热,坚持用工匠精神打磨每一个转场动效与弱网兜底逻辑。 +

    +
    +
    + +
    +
    +
    60 fps
    +

    界面渲染手势帧率

    +

    GPU 硬件加速与细粒度视图重绘控制,复杂列表滚动与滑动交互始终丝滑稳定。

    +
    + +
    +
    < 1.2 s
    +

    小程序冷启动首屏耗时

    +

    代码按需分包预加载、资源 CDN 压缩与接口本地缓存,带来即点即开的畅快体验。

    +
    + +
    +
    98.5 %
    +

    应用市场上架一次通过率

    +

    严格遵循苹果 App Store 审核准则与工信部隐私合规规范,提供完备资质辅导。

    +
    + +
    +
    100 %
    +

    离线操作断网无缝续传

    +

    内置 SQLite 本地事务队列,即使地下车库或野外断网亦可正常记账与保存操作。

    +
    +
    +
    +
    + + +
    +
    +
    + +

    全链路敏捷交付 · 助力移动产品极速上架

    +

    + 从交互原型到应用市场上架发行,全流程标准化管控,让移动端落地省心可靠。 +

    +
    +
    + +
    +
    +
    01. 体验设计
    +
    UI/UX 高保真原型
    +

    梳理用户旅程与操作链路,输出全交互高保真视觉原型与设计规范。

    +
    +
    +
    02. 架构搭建
    +
    跨端统一技术选型
    +

    确立状态管理、网络请求重试、本地离线持久化与路由导航基座。

    +
    +
    +
    03. 功能编码
    +
    多端协同敏捷开发
    +

    原生功能插件封装、多端样式精细适配与服务端接口联调。

    +
    +
    +
    04. 真机云测
    +
    多机型与弱网压测
    +

    覆盖数百款主流安卓与苹果机型,完成弱网、锁屏、断电极端测试。

    +
    +
    +
    05. 市场上架
    +
    应用商城提审与发布
    +

    协助企业办理软著、配置隐私政策,完成苹果 App Store 与各大安卓市场上架。

    +
    +
    +
    06. 源码移交
    +
    代码交割与维保支持
    +

    交付双端打包工程源码及签名证书文件,提供 365 天版本更新维护。

    +
    +
    +
    +
    + + +
    +
    +
    + +

    规范化移动工程交付 · 杜绝黑盒插件依赖

    +

    + 我们向客户交付标准化前端移动工程,客户可自由使用 Android Studio、Xcode 或 HBuilderX 自主编译打包。 +

    +
    +
    + +
    +
    +

    代码工程类交付物

    +
      +
    • + + 完整移动端前端工程源代码(支持自主一键编译与打包发布) +
    • +
    • + + 微信/支付宝小程序源码包及后台管理服务端代码 +
    • +
    • + + 生产环境 Android Keystore 证书与 iOS 打包发布描述文件 +
    • +
    • + + 物联网蓝牙通信协议编解码 SDK 源码包 +
    • +
    +
    + +
    +

    文档与上线资质类交付物

    +
      +
    • + + 《移动端接口对接文档》与鉴权 Token 刷新机制说明 +
    • +
    • + + 《应用市场审核上架指导手册》(含工信部备案/隐私协议模板) +
    • +
    • + + 真机兼容性与性能压测报告(含多分辨率适配记录) +
    • +
    • + + 软著申报技术材料与 365 天无忧维保协议 +
    • +
    +
    +
    +
    +
    + + +
    +
    +
    + +

    务实解惑 · 厘清跨端研发与上架关键环节

    +

    + 我们以丰富的移动端工程落地经验,帮助您避开应用商店提审与跨端性能的常见隐患。 +

    +
    +
    + +
    +
    +

    Q1: 跨平台跨端开发方案(如 Flutter/Uni-app)和纯原生相比,性能差异大吗?

    +

    + 在纳海川的工程实践中,Flutter 直接基于 Skia/Impeller 渲染引擎进行底层 GPU 绘制,界面手势帧率可达 60fps 原生流畅度;针对复杂的蓝牙通信、后台常驻服务,我们均采用原生 Android / iOS 原生桥接模块封装,既兼顾了跨端研发效率,又确保了底层硬件性能。 +

    +
    + +
    +

    Q2: 苹果 App Store 和主流安卓市场审核日趋严格,如何保证顺利上线?

    +

    + 纳海川提供从应用隐私合规清单梳理、工信部 APP 备案指导、苹果审核账号提审材料到演示视频录制的全流程陪跑服务。代码层面严格遵循各商城审核规范,确保项目上架一次性通过率超过 98.5%。 +

    +
    + +
    +

    Q3: 一个后端服务是否能够同时支撑 iOS、Android APP 与微信小程序?

    +

    + 可以。我们采用标准统一的 RESTful API 架构与 JWT 安全鉴权,前端多端共用同一套底层服务与业务中台。多端用户数据互通、订单同步流转,大幅降低后期的多端维护成本。 +

    +
    +
    +
    +
    + + +
    +
    +

    + 准备打造您的专属 APP 或全生态小程序? +

    +

    + 联系纳海川移动产品顾问,为您提供针对性的移动端技术选型对比与产品原型交互方案。 +

    + +
    +
    + diff --git a/addons/official/view/web/official_product/service_page.html b/addons/official/view/web/official_product/service_page.html index 09cfb6a..5250fca 100644 --- a/addons/official/view/web/official_product/service_page.html +++ b/addons/official/view/web/official_product/service_page.html @@ -77,6 +77,12 @@ 完整工程源代码与数据库字典规范移交 +
    @@ -141,6 +147,12 @@ 60fps 丝滑动画与离线弱网数据缓存 +
    @@ -205,6 +217,12 @@ 企业敏感数据安全可控 · 纯本地私有部署 +
    diff --git a/addons/official/view/web/official_product/service_software.html b/addons/official/view/web/official_product/service_software.html new file mode 100644 index 0000000..5501f49 --- /dev/null +++ b/addons/official/view/web/official_product/service_software.html @@ -0,0 +1,346 @@ + + + +
    +
    +
    + 首页 + / + 核心服务 + / + 软件开发 +
    +
    + 自主研发 · 源码交付 +
    +

    企业级软件开发与微服务架构定制

    +

    + 面向千万级数据吞吐与复杂业务逻辑流转,纳海川提供高可用微服务中台定制、分布式系统架构重构与异构系统整合研发,100% 移交工程源码与技术文档,支持客户本地私有化部署。 +

    + +
    +
    + + +
    +
    +
    + +

    聚焦关键业务场景 · 打造稳健工程底座

    +

    + 针对企业在数字化转型中的性能瓶颈、数据孤岛与复杂业务流转卡点,纳海川提供针对性工程化解决方案。 +

    +
    +
    + +
    + +
    +
    + 01 + 核心中台 +
    +

    高并发业务中台定制

    +

    + 打通会员、商品、订单、库存与资金结算中心,沉淀通用业务能力,支持前端多业务线敏捷调用与快速上线。 +

    +
    + 订单路由 + 分库分表 + 幂等结算 +
    +
    + + +
    +
    + 02 + 架构升级 +
    +

    微服务分布式解耦重构

    +

    + 针对老旧巨石单体应用进行领域驱动设计(DDD)拆分,引入分布式事务与断路器机制,消除单点故障风险。 +

    +
    + Spring Cloud + Sentinel + 高可用调度 +
    +
    + + +
    +
    + 03 + 系统集成 +
    +

    异构系统数据管道与 API 网关

    +

    + 无缝联通 ERP、CRM、WMS、金税发票及第三方银行资金清算通道,构建统一安全网关与数据校验审计通道。 +

    +
    + API网关 + 异构数据流 + 全链路审计 +
    +
    + + +
    +
    + 04 + 私有部署 +
    +

    政企专属合规系统研发

    +

    + 适配国产信创芯片与操作系统环境,支持客户内网服务器物理隔绝部署,严格满足网络安全等级保护与合规要求。 +

    +
    + 信创适配 + 物理隔离 + 等保合规 +
    +
    +
    +
    +
    + + +
    +
    +
    + +

    主流可靠技术体系 · 拒绝黑盒与依赖绑定

    +

    + 我们采用业界成熟、生态健康的开源技术方案构建系统,保障客户后续自主维护与二次开发无障碍。 +

    +
    +
    + +
    +
    +

    + + 后端工程栈 +

    +

    Java 17 / Spring Boot 3 / Spring Cloud Alibaba、PHP 8+ / Hyperf 微服务框架、Go 语言高并发网关服务。

    +
    核心模块平均响应 < 50ms
    +
    + +
    +

    + + 持久化与缓存集群 +

    +

    MySQL 8.0 主从读写分离、ShardingSphere 分库分表、Redis 7 哨兵/集群缓存、Elasticsearch 8 搜索引擎。

    +
    支持千万级数据量毫秒级召回
    +
    + +
    +

    + + 异步消息与调度 +

    +

    RabbitMQ 延迟队列削峰填谷、Apache Kafka 海量业务流事件回溯、XXL-JOB 分布式任务调度中心。

    +
    高并发削峰防雪崩保障
    +
    + +
    +

    + + 云原生与持续交付 +

    +

    Docker 容器化封装、Kubernetes 集群编排、GitLab CI / Jenkins 自动化构建部署、Prometheus 全维监控。

    +
    自动化发布与毫秒级服务自愈
    +
    +
    +
    +
    + + +
    +
    +
    + +

    六步标准工程化闭环 · 每一个节点皆可追溯

    +

    + 严格遵循 CMMI 软件成熟度与敏捷工程规范,杜绝扯皮与需求偏离,保障项目如期保质投产。 +

    +
    +
    + +
    +
    +
    01. 调研拆解
    +
    需求与边界评审
    +

    明确系统功能边界、非功能指标及业务用例,输出详细需求规格说明书。

    +
    +
    +
    02. 架构蓝图
    +
    架构设计与数据建模
    +

    确立系统拓扑结构、微服务划分、数据库 ER 关系与接口通信协议。

    +
    +
    +
    03. 敏捷开发
    +
    模块编码与单元自测
    +

    双周迭代开发,规范分支管理与严格代码审查,单元测试覆盖核心路径。

    +
    +
    +
    04. 全面测试
    +
    并发压测与安全渗透
    +

    JMeter 压力负载测试、SQL 注入及权限漏洞渗透测试,保障系统无缺陷。

    +
    +
    +
    05. 私有上线
    +
    内网部署与灰度割接
    +

    指导或协助部署至客户自有云/物理机房,平滑迁移历史数据并灰度上线。

    +
    +
    +
    06. 源码移交
    +
    交付验收与维保陪跑
    +

    交接全套代码与设计文档,提供技术人员交接培训及 365 天免费质保。

    +
    +
    +
    +
    + + +
    +
    +
    + +

    全套交付资产清清楚楚 · 源码资产客户专属独占

    +

    + 我们承诺向客户交付完整、无混淆、无后门的软件工程资产,客户拥有完全的自主处置权与二次开发自由。 +

    +
    +
    + +
    +
    +

    代码与工程类交付物

    +
      +
    • + + 完整后端服务工程源码(含完整的 Git 提交历史) +
    • +
    • + + 完整前端管理后台与客户端源代码 +
    • +
    • + + 生产环境 Dockerfile 与自动化部署 CI/CD 脚本 +
    • +
    • + + 单元测试用例及代码覆盖率验证报告 +
    • +
    +
    + +
    +

    文档与合规类交付物

    +
      +
    • + + 《系统架构设计说明书》与领域模型架构图 +
    • +
    • + + 《数据库字典说明书》(包含所有表结构与索引设计) +
    • +
    • + + 标准 OpenAPI 格式的 RESTful 接口规范文档 +
    • +
    • + + 《服务器部署与灾备运维手册》及技术交接培训记录 +
    • +
    +
    +
    +
    +
    + + +
    +
    +
    + +

    坦诚清晰 · 回答您关切的工程核心问题

    +

    + 我们以务实透明的态度面对技术细节,确保每一次合作都有始有终、边界明晰。 +

    +
    +
    + +
    +
    +

    Q1: 软件开发交付后,是否会移交全部源码?后续开发会受限制吗?

    +

    + 纳海川交付全部未经编译混淆的完整工程源代码、数据库结构和构建脚本。所有源码知识产权归客户所有,客户可自由组建自有技术团队进行二次开发,不存在任何隐性后门与商业绑定。 +

    +
    + +
    +

    Q2: 针对高并发大流量业务,纳海川如何保障系统的稳定性?

    +

    + 我们在架构设计阶段即引入微服务解耦、数据库主从读写分离、Redis 多级缓存与消息队列异步解耦。上线前会执行严苛的分布式压力测试(压测指标明确写入技术协议),保障高负载下核心接口响应时间稳定在 50ms 以内。 +

    +
    + +
    +

    Q3: 交付后的维保服务如何执行?出现故障如何响应?

    +

    + 项目验收后提供 365 天首年免费质保,包含系统运行 Bug 修复、突发故障应急排除与系统安全加固。我们提供紧急故障 15 分钟内响应并介入处理的 SLA 保障机制。 +

    +
    +
    +
    +
    + + +
    +
    +

    + 准备开启您的企业级定制软件工程? +

    +

    + 联系纳海川资深架构师,获得针对您企业实际业务场景的技术架构评估方案与详细实施计划。 +

    + +
    +
    + diff --git a/application/extra/addons.php b/application/extra/addons.php index e561bb4..61cdb65 100644 --- a/application/extra/addons.php +++ b/application/extra/addons.php @@ -19,6 +19,9 @@ return [ '/h/journalism/details/[:pid]/[:sid]/[:id]' => 'official/web.official_journalism/details', '/h/video/list/[:pid]/[:sid]' => 'official/web.official_video/list', '/h/video/details/[:pid]/[:sid]/[:id]' => 'official/web.official_video/details', + '/official/service/software' => 'official/web.official_product/service_software', + '/official/service/app' => 'official/web.official_product/service_app', + '/official/service/agent' => 'official/web.official_product/service_agent', '/official/product/list/[:pid]/[:sid]' => 'official/web.official_product/list', '/official/product/details/[:pid]/[:sid]/[:id]' => 'official/web.official_product/details', '/official/case_show/list/[:pid]/[:sid]' => 'official/web.official_case_show/list', diff --git a/tests/DedicatedServicePagesTest.php b/tests/DedicatedServicePagesTest.php new file mode 100644 index 0000000..c71f99d --- /dev/null +++ b/tests/DedicatedServicePagesTest.php @@ -0,0 +1,65 @@ +assert(file_exists($softwareFile), "软件开发独立页文件必须存在"); + $this->assert(file_exists($appFile), "APP与小程序定制独立页文件必须存在"); + $this->assert(file_exists($agentFile), "智能体开发独立页文件必须存在"); + + if (file_exists($softwareFile)) { + $softwareContent = file_get_contents($softwareFile); + $this->assert(strpos($softwareContent, '纳海川') !== false, "软件开发独立页包含品牌【纳海川】"); + $this->assert(strpos($softwareContent, '微服务') !== false && strpos($softwareContent, '中台') !== false, "软件开发独立页包含微服务与中台"); + } + + if (file_exists($appFile)) { + $appContent = file_get_contents($appFile); + $this->assert(strpos($appContent, '纳海川') !== false, "APP小程序独立页包含品牌【纳海川】"); + $this->assert(strpos($appContent, '60fps') !== false || strpos($appContent, '蓝牙') !== false, "APP小程序独立页包含真实移动工程指标"); + } + + if (file_exists($agentFile)) { + $agentContent = file_get_contents($agentFile); + $this->assert(strpos($agentContent, '纳海川') !== false, "智能体独立页包含品牌【纳海川】"); + $this->assert(strpos($agentContent, 'RAG') !== false || strpos($agentContent, '物理隔离') !== false, "智能体独立页包含RAG与物理隔离保障"); + } + + if (file_exists($navFile)) { + $navContent = file_get_contents($navFile); + $this->assert(strpos($navContent, 'service_software') !== false || strpos($navContent, 'service=software') !== false, "导航卡片支持跳转软件开发独立页"); + $this->assert(strpos($navContent, 'service_app') !== false || strpos($navContent, 'service=app') !== false, "导航卡片支持跳转APP小程序独立页"); + $this->assert(strpos($navContent, 'service_agent') !== false || strpos($navContent, 'service=agent') !== false, "导航卡片支持跳转智能体独立页"); + } + + echo "\n测试结果: {$this->passed} 通过, {$this->failed} 失败\n"; + return $this->failed === 0; + } + + private function assert($condition, $message) + { + if ($condition) { + echo " [PASS] {$message}\n"; + $this->passed++; + } else { + echo " [FAIL] {$message}\n"; + $this->failed++; + } + } +} diff --git a/tests/run_tests.py b/tests/run_tests.py index fff1231..4582b19 100644 --- a/tests/run_tests.py +++ b/tests/run_tests.py @@ -270,6 +270,15 @@ def test_journalism_and_articles_suite(): res.assert_true(test_result.wasSuccessful(), f"新闻资讯与文章深度断言全部通过 (共 {test_result.testsRun} 项)") return res.summary() +def test_dedicated_service_pages_suite(): + res = TestResult("三大服务独立页专项测试 (DedicatedServicePages)") + from tests.test_dedicated_service_pages import DedicatedServicePagesTest + suite = unittest.TestLoader().loadTestsFromTestCase(DedicatedServicePagesTest) + runner = unittest.TextTestRunner(verbosity=0) + test_result = runner.run(suite) + res.assert_true(test_result.wasSuccessful(), f"三大服务独立页断言全部通过 (共 {test_result.testsRun} 项)") + return res.summary() + def main(): import unittest results = [ @@ -284,7 +293,8 @@ def main(): test_ad_law_compliance_suite(), test_natural_copywriting_suite(), test_homepage_button_links_suite(), - test_journalism_and_articles_suite() + test_journalism_and_articles_suite(), + test_dedicated_service_pages_suite() ] sys.exit(0 if all(results) else 1) diff --git a/tests/test_dedicated_service_pages.py b/tests/test_dedicated_service_pages.py new file mode 100644 index 0000000..97a89b0 --- /dev/null +++ b/tests/test_dedicated_service_pages.py @@ -0,0 +1,125 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +""" +三大核心服务独立页面 (Dedicated Service Pages) TDD 验证 +覆盖:软件开发独立页、APP与小程序定制独立页、智能体开发独立页 +验证必备板块:分类、能力、流程、交付、FAQ、CTA、设计规范、去AI味道与禁止项,以及导航卡片联动 +""" +import os +import re +import unittest + +BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + +class DedicatedServicePagesTest(unittest.TestCase): + def setUp(self): + self.software_page = os.path.join(BASE_DIR, 'addons', 'official', 'view', 'web', 'official_product', 'service_software.html') + self.app_page = os.path.join(BASE_DIR, 'addons', 'official', 'view', 'web', 'official_product', 'service_app.html') + self.agent_page = os.path.join(BASE_DIR, 'addons', 'official', 'view', 'web', 'official_product', 'service_agent.html') + self.nav_path = os.path.join(BASE_DIR, 'addons', 'official', 'view', 'web', 'official_common', 'pc', 'nav.html') + self.home_path = os.path.join(BASE_DIR, 'addons', 'official', 'view', 'web', 'official_home', 'index.html') + self.controller_path = os.path.join(BASE_DIR, 'addons', 'official', 'controller', 'web', 'OfficialProduct.php') + + def test_01_files_exist(self): + """三个独立服务页面模板文件必须全部存在""" + self.assertTrue(os.path.exists(self.software_page), "软件开发独立页模板 (service_software.html) 必须存在") + self.assertTrue(os.path.exists(self.app_page), "APP与小程序定制独立页模板 (service_app.html) 必须存在") + self.assertTrue(os.path.exists(self.agent_page), "智能体开发独立页模板 (service_agent.html) 必须存在") + + def test_02_software_service_page_content(self): + """软件开发独立页必须包含完备板块与专业工程实践""" + if not os.path.exists(self.software_page): + self.fail("service_software.html 不存在") + with open(self.software_page, 'r', encoding='utf-8') as f: + content = f.read() + + self.assertIn("纳海川", content, "必须包含品牌名【纳海川】") + self.assertFalse(re.search(r'纳川(?!海)', content), "严禁简称为【纳川】") + self.assertIn("软件开发", content, "核心标题必须体现软件开发") + # 必备板块:分类、能力、流程、交付、FAQ + self.assertTrue("nhc-services-categories" in content or "分类" in content or "业务场景" in content, "必须包含业务分类或场景板块") + self.assertTrue("nhc-tech-capabilities" in content or "能力" in content or "技术底座" in content, "必须包含核心技术能力板块") + self.assertTrue("nhc-delivery-process" in content or "流程" in content or "研发流程" in content, "必须包含工程化流程板块") + self.assertTrue("nhc-deliverables" in content or "交付" in content or "交付标准" in content, "必须包含交付物清单板块") + self.assertTrue("nhc-faq" in content or "FAQ" in content or "常见问答" in content, "必须包含常见问题解答板块") + + # 真实工程栈与去AI化 + self.assertTrue("微服务" in content and "中台" in content, "必须体现企业级微服务与中台定制能力") + self.assertTrue("源码" in content, "必须承诺交付完整源代码") + self.assertFalse(re.search(r'[\U0001F600-\U0001F64F\U0001F300-\U0001F5FF\U0001F680-\U0001F6FF\u2600-\u26FF\u2700-\u27BF]', content), "严禁使用 emoji") + + def test_03_app_service_page_content(self): + """APP与小程序定制独立页必须包含移动生态全覆盖与真实指标""" + if not os.path.exists(self.app_page): + self.fail("service_app.html 不存在") + with open(self.app_page, 'r', encoding='utf-8') as f: + content = f.read() + + self.assertIn("纳海川", content, "必须包含品牌名【纳海川】") + self.assertFalse(re.search(r'纳川(?!海)', content), "严禁简称为【纳川】") + self.assertTrue("APP" in content and "小程序" in content, "核心标题必须体现 APP 与小程序定制") + # 必备板块 + self.assertTrue("分类" in content or "业务场景" in content or "终端覆盖" in content, "必须包含多端覆盖分类板块") + self.assertTrue("能力" in content or "技术" in content or "性能规格" in content, "必须包含移动核心能力板块") + self.assertTrue("流程" in content or "研发流程" in content, "必须包含端到端交付流程板块") + self.assertTrue("交付" in content or "交付物" in content or "交付标准" in content, "必须包含交付清单板块") + self.assertTrue("FAQ" in content or "问答" in content, "必须包含常见问题解答板块") + + # 移动特色真实能力 + self.assertTrue("iOS" in content and "Android" in content and "微信" in content, "必须覆盖 iOS / Android 与微信生态") + self.assertTrue("60fps" in content or "蓝牙" in content or "离线" in content, "必须体现真实移动工程指标") + self.assertFalse(re.search(r'[\U0001F600-\U0001F64F\U0001F300-\U0001F5FF\U0001F680-\U0001F6FF\u2600-\u26FF\u2700-\u27BF]', content), "严禁使用 emoji") + + def test_04_agent_service_page_content(self): + """智能体开发独立页必须包含企业级私域合规与知识工程落地""" + if not os.path.exists(self.agent_page): + self.fail("service_agent.html 不存在") + with open(self.agent_page, 'r', encoding='utf-8') as f: + content = f.read() + + self.assertIn("纳海川", content, "必须包含品牌名【纳海川】") + self.assertFalse(re.search(r'纳川(?!海)', content), "严禁简称为【纳川】") + self.assertTrue("智能体" in content, "核心标题必须体现智能体开发") + # 必备板块 + self.assertTrue("分类" in content or "业务场景" in content or "应用矩阵" in content, "必须包含智能体分类与场景板块") + self.assertTrue("能力" in content or "技术" in content or "技术底座" in content, "必须包含核心技术底座板块") + self.assertTrue("流程" in content or "实施流程" in content, "必须包含工程化实施流程板块") + self.assertTrue("交付" in content or "交付物" in content or "交付标准" in content, "必须包含交付物清单板块") + self.assertTrue("FAQ" in content or "问答" in content, "必须包含常见技术问答板块") + + # 私有合规与 RAG 真实特征 + self.assertTrue("RAG" in content or "向量" in content, "必须包含企业级 RAG 向量工程") + self.assertTrue("物理隔离" in content or "私有化" in content or "0 外泄" in content or "0外泄" in content, "必须体现内网物理隔离与数据安全保障") + self.assertFalse(re.search(r'[\U0001F600-\U0001F64F\U0001F300-\U0001F5FF\U0001F680-\U0001F6FF\u2600-\u26FF\u2700-\u27BF]', content), "严禁使用 emoji") + + def test_05_nav_mega_menu_links_to_dedicated_pages(self): + """顶部导航服务矩阵中的三个卡片必须分别指向独立的页面""" + with open(self.nav_path, 'r', encoding='utf-8') as f: + nav_html = f.read() + + # 提取服务下拉菜单中的三个卡片链接 + self.assertTrue( + "service_software" in nav_html or "service=software" in nav_html, + "导航【软件开发】卡片必须链接到专属独立页面" + ) + self.assertTrue( + "service_app" in nav_html or "service=app" in nav_html, + "导航【APP与小程序定制】卡片必须链接到专属独立页面" + ) + self.assertTrue( + "service_agent" in nav_html or "service=agent" in nav_html, + "导航【智能体开发】卡片必须链接到专属独立页面" + ) + + def test_06_controller_supports_dedicated_pages(self): + """OfficialProduct 控制器必须具备独立页面分发逻辑或独立动作""" + with open(self.controller_path, 'r', encoding='utf-8') as f: + code = f.read() + + has_software_route = "service_software" in code or "software" in code + has_app_route = "service_app" in code or "app" in code + has_agent_route = "service_agent" in code or "agent" in code + self.assertTrue(has_software_route and has_app_route and has_agent_route, "控制器必须支持软件开发、APP小程序、智能体独立页面") + +if __name__ == '__main__': + unittest.main()