CRM系统

作者:北京毫末科技有限公司

邮箱:hxgqh@haomo-studio.com

版本:0.1

这份文档是针对基于鸿合CRM项目的创业项目--CRM系统--的设计和说明文档。

1. 全体参与设计人员

胡小根  hxgqh@haomo-studio.com
唐培忠  tangpz@haomo-studio.com
曹桓榕  caohr@haomo-studio.com
姜兆京  763834497@qq.com
王东旗  wangdq@haomo-studio.com
任帅    renshuai@haomo-studio.com

2. 综述

本系统暂时命名为CRM系统。但本系统目前涵盖了两大功能模块:

1. CRM:客户关系管理系统
2. OA:办公系统

本系统将CRM系统和OA系统融合在一起,为以销售为导向的企业提供完善的办公平台。 本平台未来将逐步发展为涵盖多种功能模块的企业信息化系统,包括:

1. ERP:企业资源计划系统
2. R&D(PLM):研发管理
3. HR:人力资源管理

本项目使用的平台如下:

  1. Web项目管理地址
  2. iOS项目管理地址
  3. Android项目管理地址
  4. UI人员进度地址

本项目在开发过程中发布地址为:

  1. Android
  2. iOS
  3. Web前台
  4. Web后台配置

本项目定义的接口定义地址为:

  1. 主要接口
  2. 表单引擎接口定义
  3. 阶段引擎接口定义

3. 安装和部署

安装

Web安装

配置过程

配置文件为: (培忠补充)

可以配置的选项包括(培忠补充):

(日志配置选项)
(数据库配置选项)

部署过程

4. 使用入门

4.1 测试账号

测试用户名:18111266263
密码:123456

5. 概念

架构图

架构设计图

业务场景

本系统可以自定义业务场景。所有的自定义业务场景在CRM系统中,体现为二级菜单。系统在初始状态下只预置两种预置的业务场景:客户、物料。

自定义的业务场景,区分两种管理方式:

1. 阶段管理
2. 流程管理

不同的管理方式,管理的流程及后端的逻辑均不同。

阶段管理

流程管理

自定义字段

在Web的后台中,有多个地方出现了自定义字段的概念,包括:

1. 组织结构->自定义部门字段
2. 用户管理->用户字段
3. 基础主数据->客户->自定义字段
4. 基础主数据->物料->自定义字段
5. 业务主数据->阶段设置->自定义字段
6. 表单管理

以上六处,自定义字段的UI界面,我们统称为表单定义界面。其显示上,除1之外,其他的页面一致;但以上六处对应的后台数据表都不一样。对应的后台数据库设计截图如下:

1.组织结构->自定义部门字段

自定义部门字段

2.用户管理->用户字段

用户字段

3.基础主数据->客户->自定义字段

客户自定义字段

4.基础主数据->物料->自定义字段

物料自定义字段

5.业务主数据->阶段设置->自定义字段

业务场景自定义字段

6.表单管理

表单管理

自定义字段的涵盖概念以下几个子概念:

1. 表单定义(在用户管理中对应为用户类型定义,在基础主数据中对应为客户类型定义和物料类型定义,在业务主数据中对应为场景定义)
2. 表单实例(在用户管理中对应为用户表,在基础主数据中对应为客户表和物料表,在业务主数据中对应为场景实例)
1. 主表定义/明细表定义
3. 字段定义
2. 表实例(包括主表实例和明细表实例,不作区分,只通过表定义的表类型字段作区分)
4. 字段值/字段实例

表单定义界面及以上四个概念之间关系是:

1. 一个表单定义界面,包含多张主表,可以包含多张明细表;
2. 一个表单定义,可以有多个表单实例;
3. 一张主表或明细表定义,包含多个字段定义;
4. 一张主表或明细表定义,可以对应多个表实例;
5. 一个字段定义,可以包含多个字段值/字段实例
6. 一个表实例,其对应的某个主表定义的主表实例只能有一条;但其对应的某个明细表定义的明细表实例可以有多条。例如:用户填写个人信息表,其个人的基本信息属于主表(如名字、身份证等信息只会有一条),而其家属信息表、工作经理表等表属于明细表。

字段类型包括:

1. 普通文本域(text)
2,邮件文本域(email)
3. 时间文本域(datetime)
4. 日期文本域(date)
5. 密码文本域(password)
6. 单选(radio)
7. 复选(checkbox)
8. 下拉列表(select)

JSON的对应关系为:

columnTypes = [
        {
          'type': 1,
          'field': 'text',
          'name': '普通文本域'
        },
        {
          'type': 2,
          'field': 'email',
          'name': '邮件文本域'
        },
        {
          'type': 3,
          'field': 'datetime',
          'name': '时间文本域'
        },
        {
          'type': 4,
          'field': 'date',
          'name': '日期文本域'
        },
        {
          'type': 5,
          'field': 'password',
          'name': '密码文本域'
        },
        {
          'type': 6,
          'field': 'radio',
          'name': '单选'
        },
        {
          'type': 7,
          'field': 'checkbox',
          'name': '复选'
        },
        {
          'type': 8,
          'field': 'select',
          'name': '下拉列表'
        }
      ]

所有的字段类型,在App和Web里面都要支持列搜索/过滤的操作,对于以上字段类型,搜索/过滤的条件说明如下:

1. 普通文本域(text)、邮件文本域(email)
    字段的LIKE检索
2. 密码文本域(password)
    不支持搜索和过滤
3. 时间文本域(datetime)
    起始时间
    终止时间
4. 日期文本域(date)
    起始日期
    终止日期
5. 单选(radio)
    单选过滤(根据对应字段的单选选项进行过滤)
6. 复选(checkbox)
    复选过滤(根据对应字段的复选选项进行过滤)
7. 下拉列表(select)
    下拉选择过滤

对于5-7,后台需要给出过滤的选项列表,例如['选项1', '选项2']

有关自定义字段相关的删除的说明

删除的原则为:凡是有其下一个概念层级的内容为空,就能删除;否则就不能删除,应该提醒用户:“请先删除相关联的数据!”

1. 删除XX类型(部门类型、客户类型、物料类型、自定义业务场景)或表单定义等四种情况时,跟其关联的表定义存在的话,则不能删除。
2. 表定义(用户表定义、部门表定义、客户表定义、物料表定义、自定义业务场景表定义和表单引擎的表定义等五种情况)要被删除时,跟其关联的字段定义、表实例存在的话,则不能删除。
3. 字段定义(用户字段定义、部门字段定义、客户字段定义、物料字段定义、自定义业务场景字段定义和表单引擎的字段定义等五种情)要被删除时,跟其关联的字段实例存在的话,则不能删除。

关注

系统里的用户的关注包括如下几种:

1. 关注用户
2. 关注客户
3. 关注物料
4. 关注业务场景

关注的历史数据产生来源说明如下:

1. 关注用户
    a. 用户的所有操作历史(用户动态表)
2. 关注客户
    a. 跟客户相关的所有业务场景、流程的历史(客户历史表)
3. 关注物料
    a. 跟物料相关的所有业务场景、流程的历史(物料历史表)
4. 关注业务场景
    a. 跟业务场景相关的操作历史表(业务场景历史表)

动态

系统里的动态指的是用户的动态,也即用户的操作历史表——用户动态表。

6. 开发注意事项

开发过程中需要注意的事项如下:

1. 如果项目中的某些设计有问题,直接向设计人员或者项目负责人开issue
2. 当git提交时,如果提交的内容跟某个issue挂钩,一定要ref这个issue。示例:git commit -m "解决问题ref #10"(跟issue 10挂钩了)

results matching ""

    No results matching ""