基于SqlSugar的开发框架循序渐进介绍(30)-- 整合客户关系管理系统模块功能
以前在随笔《Winform开发框架之客户关系管理系统(CRM)的开发总结系列1-界面功能展示 》的几篇随笔中介绍过基于WInform开发框架开发的CRM系统,系统的功能主要也是围绕着客户相关信息来进行管理的,经过一些客户的定制应用,以及框架各种功能的完善,系统也已经很完善了,不过不同的CRM侧重点不同,有些ERP业务的可能倾向于整合ERP的各种流程模块,有些则希望整合一些特色的功能,不一而足。本篇随笔介绍在最新的《SqlSugar开发框架》中整合CRM系统模块的功能。
由于我们最新的《SqlSugar开发框架》中包含了多端的应用,其中就包含了Winform开发端,Winform端整合直接访问数据库和Web API的接口调用,可实现配置分布式的远程接口调用或者本地调用。它也是包含了常规的框架模块,这些模块从之前的Winform开发框架中继承过来,包括有权限管理的整套模块、工作流模块、字典模块、附件管理、分页控件、公用类库模块、自动升级模块等模块,而随着框架进一步的丰富,我也把之前开发好的《客户关系管理系统》也把它整合到《SqlSugar开发框架》,毕竟这个系统各种界面功能还是比较具有代表性,也具有很好的参考价值。
1、系统模块的整合效果
在SqlSuagar开发框架中,整合后的客户关系管理系统作为一个大系统中的一部分,基础也还是需要用到SqlSugar开发框架中的权限、字典等模块内容的。

整个CRM的系统布局沿袭原来的风格和主要的布局,对数据的查询处理,做了优化以及调整,相较于以前的处理效率更高一些。
客户关系管理系统中的客户信息及相关资料的管理是整个系统中比较复杂的内容之一了,除了对客户本身属性信息的快速查询,我们也针对客户信息的标注颜色、创建日期、联系日期、共享信息、销售特点进行了一些关联的展示处理,如下图所示。

其中供应商的管理,也是采用类似客户信息的管理方式,不过简化一些相关内容的管理。

客户相关的资料,我们也提供了一个统一的入口进行查询管理,如下界面所示。

而对客户信息来讲,可以通过修改客户的拥有者或者风险给相关系统人员,否则个人只是维护自己的客户信息,这样对于客户资源的维护比较重要。因此在系统中统一进行客户的分配管理。

另外,我们可以根据需要生成一些相关的报表来展示相关的数据报表。

2、客户关系管理系统的项目代码管理
在项目中,依照SqlSugar开发框架的不同模块进行管理,如基础的处理包括接口Interface、实体对象Modal、服务实现Service层进行分开,也是依照代码生成工具进行快速生成。
而其中UI部分也是通过Winform界面的生成部分进行处理,然后在系统中进行调整即可,由于是对已有CRM系统的更新,基本上UI部分是在原来的基础上进行的调整。

利用现有表结构信息,基于代码生成工具快是生成相关的业务类文件,合并到系统框架中就可以了。

我们利用现有表结构信息,基于代码生成工具快是生成相关的业务类文件, 直接复制Core目录到解决方案项目上就可以了,如下所示。

Winform部分的界面,选择对应的界面生成【SqlSugar框架Winform界面生成】生成。

在弹出的【常规Winform界面生成】面板中,勾选相关的设置信息,定制UI界面,如下界面效果所示。

基于SqlSugar的开发框架循序渐进介绍(30)-- 整合客户关系管理系统模块功能的更多相关文章
- 基于SqlSugar的开发框架循序渐进介绍(12)-- 拆分页面模块内容为组件,实现分而治之的处理
		
在早期的随笔就介绍过,把常规页面的内容拆分为几个不同的组件,如普通的页面,包括列表查询.详细资料查看.新增资料.编辑资料.导入资料等页面场景,这些内容相对比较独立,而有一定的代码量,本篇随笔介绍基于V ...
 - 基于SqlSugar的开发框架循序渐进介绍(15)-- 整合代码生成工具进行前端界面的生成
		
在前面随笔<基于SqlSugar的开发框架循序渐进介绍(12)-- 拆分页面模块内容为组件,实现分而治之的处理>中我们已经介绍过,对于相关的业务表的界面代码,我们已经尽可能把不同的业务逻辑 ...
 - 基于SqlSugar的开发框架循序渐进介绍(13)-- 基于ElementPlus的上传组件进行封装,便于项目使用
		
在我们实际项目开发过程中,往往需要根据实际情况,对组件进行封装,以更简便的在界面代码中使用,在实际的前端应用中,适当的组件封装,可以减少很多重复的界面代码,并且能够非常简便的使用,本篇随笔介绍基于El ...
 - 基于SqlSugar的开发框架循序渐进介绍(14)-- 基于Vue3+TypeScript的全局对象的注入和使用
		
刚完成一些前端项目的开发,腾出精力来总结一些前端开发的技术点,以及继续完善基于SqlSugar的开发框架循序渐进介绍的系列文章,本篇随笔主要介绍一下基于Vue3+TypeScript的全局对象的注入和 ...
 - 基于SqlSugar的开发框架循序渐进介绍(17)-- 基于CSRedis实现缓存的处理
		
在一个应用系统的开发框架中,往往很多地方需要用到缓存的处理,有些地方是为了便于记录用户的数据,有些地方是为了提高系统的响应速度,如有时候我们在发送一个短信验证码的时候,可以在缓存中设置几分钟的过期时间 ...
 - 基于SqlSugar的开发框架循序渐进介绍(20)-- 在基于UniApp+Vue的移动端实现多条件查询的处理
		
在做一些常规应用的时候,我们往往需要确定条件的内容,以便在后台进行区分的进行精确查询,在移动端,由于受限于屏幕界面的情况,一般会对多个指定的条件进行模糊的搜索,而这个搜索的处理,也是和前者强类型的条件 ...
 - 基于SqlSugar的开发框架循序渐进介绍(21)-- 在工作流列表页面中增加一些转义信息的输出,在后端进行内容转换
		
有时候,为了给前端页面输出内容,有时候我们需要准备和数据库不一样的实体信息,因为数据库可能记录的是一些引用的ID或者特殊字符,那么我们为了避免前端单独的进行转义处理,我们可以在后端进行统一的格式化后再 ...
 - 基于SqlSugar的开发框架循序渐进介绍(22)-- Vue3+TypeScript的前端工作流模块中实现统一的表单编辑和表单详情查看处理
		
在工作流页面中,除了特定的业务表单信息外,往往也需要同时展示通用申请单的相关信息,因此在页面设计的时候需要使用一些组件化的概念来实现动态的内容展示处理,本篇随笔介绍Vue3+TypeScript+El ...
 - 基于SqlSugar的开发框架循序渐进介绍(26)-- 实现本地上传、FTP上传、阿里云OSS上传三者合一处理
		
在前面介绍的随笔<基于SqlSugar的开发框架循序渐进介绍(7)-- 在文件上传模块中采用选项模式[Options]处理常规上传和FTP文件上传>中介绍过在文件上传处理的过程中,整合了本 ...
 - 基于SqlSugar的开发框架循序渐进介绍(3)-- 实现代码生成工具Database2Sharp的整合开发
		
我喜欢在一个项目开发模式成熟的时候,使用代码生成工具Database2Sharp来配套相关的代码生成,对于我介绍的基于SqlSugar的开发框架,从整体架构确定下来后,我就着手为它们量身定做相关的代码 ...
 
随机推荐
- 2023GDKOI总结
			
2023GDKOI总结 说明:不是GD选手,只是因为来zsjz集训就顺便参加了GDKOI,不过也不参与GD选手排名. 考前看了看GDKOI2021的题,当时是考了3天,每天4题,而里面只有一道题是我一 ...
 - java多线程--7 线程协作 线程池
			
java多线程--7 线程协作 线程池 并发协作模型--生产者消费者模式 这是一个线程同步问题,生产者和消费者共享同一个资源,并且生产者和消费者之间互相依赖,互为条件. java提供了几个方法解决线程 ...
 - FastDFS 使用流程
			
一.什么是FastDFS? FastDFS 是用 C 语言编写的一款开源的分布式文件系统,对文件进行管理,主要功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡 ...
 - flutter widget---->FloatingActionButton
			
在Flutter中说起Button,floatingActionButton用的也非常的多.今天我们就来学习一下. Simple Example import 'package:flutter/mat ...
 - rocketMq和kafka对比
			
为什么在RocketMQ和kafka中选型 在单机同步发送的场景下,Kafka>RocketMQ,Kafka的吞吐量高达17.3w/s,RocketMQ吞吐量在11.6w/s. kafka高性能 ...
 - ACM-NEFU新生训练2-排序和CMP
			
A.谁考了第k名-排序 Description 在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学号和成绩,求考第k名学生的学号和成绩. Input 第一行有两个整数,分别是学生的人数n(1≤ ...
 - 使用 Istioctl 安装 istio
			
使用 Istioctl 安装 istio 下载 Istio 转到 Istio 发布 页面,下载针对你操作系统的安装文件, 或用自动化工具下载并提取最新版本(Linux 或 macOS): [root@ ...
 - ChatGPT,我彻彻底底沦陷了!
			
当谈到人工智能技术的时候,我们会经常听到GPT这个术语.它代表"Generative Pre-trained Transformer",是一种机器学习模型,采用了神经网络来模拟人类 ...
 - 巧用Nginx配置解决跨域问题
			
页面nginx配置 1,前端页面放在域名根目录,比如,http://www.xuecheng.com/ ,对应的nginx配置: #门户 location / { alias D:/Z_lhy/Spr ...
 - docker安装python+nginx
			
一个容器安装python和nginx dockerfile FROM centos:7.9.2009 USER root RUN yum install gcc openssl-devel bzip2 ...