# 全新环境部署说明 ## 目标 本仓库已经把 CRM 自有业务表整理为单一入口脚本: - `sql/init_full_pg17.sql` 后续部署 CRM 表时,优先只执行这一份脚本即可。历史迁移脚本已归档到: - `sql/archive/` ## 执行顺序 ### 1. 准备基础环境 需要先准备: - PostgreSQL 17 - Redis - Java 17+ - Maven 3.9+ ### 2. 先初始化基础框架(UnisBase)表和基础数据 这一步不在本仓库维护,需要先由基础框架提供方执行。 当前 CRM 代码运行时会依赖下列基础表或基础数据: - `sys_user` - `sys_org` - `sys_dict_item` - `sys_tenant_user` - `sys_role` - `sys_user_role` - `sys_param` - `sys_log` - `device` 如果这些表或基础数据未准备完成,CRM 即使业务表建好了,也会在登录、字典加载、组织信息、角色信息等链路上报错。 ### 3. 执行 CRM 单文件初始化脚本 ```bash psql -h 127.0.0.1 -U postgres -d nex_auth -f sql/init_full_pg17.sql ``` 说明: - 这份脚本既适合空库初始化,也兼容大部分旧环境补齐结构 - 它已经吸收了仓库里原来的 DDL 迁移脚本 - `sql/archive/` 中的旧脚本仅保留作历史追溯,正常部署不再单独执行 ### 4. 初始化完成后建议检查的 CRM 表 建议至少确认以下表已存在: - `crm_customer` - `crm_opportunity` - `crm_opportunity_followup` - `crm_sales_expansion` - `crm_channel_expansion` - `crm_channel_expansion_contact` - `crm_expansion_followup` - `work_checkin` - `work_daily_report` - `work_daily_report_comment` - `work_todo` - `sys_activity_log` ### 5. 启动后端服务 ```bash cd backend mvn spring-boot:run ``` 默认端口: - `8080` ### 6. 启动前端并验证 建议至少验证以下链路: - 登录 - 首页统计、待办、动态 - 拓展列表与详情 - 商机列表与详情 - 工作台打卡、日报、历史记录 ## 升级已有环境时的建议 如果不是全新环境,而是已有库升级: 1. 先备份数据库 2. 直接执行 `sql/init_full_pg17.sql` 3. 验证登录、字典、组织、日报、商机、拓展几条主链路 ## 当前目录约定 - `sql/init_full_pg17.sql`:唯一部署入口脚本 - `sql/archive/`:历史迁移与修数脚本归档目录