悟空crm二次开发 增加客户保护功能 (很久没有消息,但是有觉得有机会的客户)就进入了保护转态

需求:客户信息录入不限数量,但是录入的信息1个月内只有自己和部门领导能看到,如果1个月内未成交或者未转移至自己的客保 则掉入公海所有人可见,这里所说的客保就是现在系统自带的客保

1、需求思维导图

在这里插入图片描述

2、新增保护按钮

在这里插入图片描述

3、点击该客户(很久没有消息,但是有觉得有机会的客户)就进入了保护转态

在这里插入图片描述

4、搜索里面增加了:我的保护客户、下属保护客户

在这里插入图片描述

5、根据自己设定的规则,让一部分潜在客户进入保护期,不至于马上进入公海

在这里插入图片描述

6、二次开发新增加了:保护客户数量的设置

在这里插入图片描述
在这里插入图片描述

7、新增加的数据库表

ALTER TABLE `5kcrm_crm_customer` ADD `protect_pool_id` INT NOT NULL DEFAULT '0' COMMENT '公海保护(只匹配保护公海规则)' AFTER `crm_enufsp`;
INSERT INTO `5kcrm_admin_rule` (`id`, `types`, `title`, `name`, `level`, `pid`, `status`) VALUES (NULL, '2', '保护公海', 'protectPool', '3', '10', '1');

INSERT INTO `5kcrm_admin_scene` (`scene_id`, `types`, `name`, `user_id`, `order_id`, `data`, `is_hide`, `type`, `bydata`, 
`create_time`, `update_time`) VALUES (NULL, 'crm_customer', '我保护的客户', '0', '0', '', '0', '1', 'me_protect', '1546272000', '1546272000'), 
(NULL, 'crm_customer', '下属保护的客户', '0', '0', '', '0', '1', 'sub_protect', '1546272000', '1546272000');
ALTER TABLE `5kcrm_crm_customer` ADD `protect_pool_user_id` INT NOT NULL DEFAULT '0' COMMENT '保护人' AFTER `protect_pool_id`;
ALTER TABLE `5kcrm_crm_customer_config` CHANGE `is_deal` `is_deal` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '1成交客户';
ALTER TABLE `5kcrm_crm_customer_config` CHANGE `types` `types` INT(4) NOT NULL DEFAULT '1' COMMENT '1拥有客户上限2锁定客户上限';

8、公海回收定时器启动方式

执行定时任务
\application\common\command\PoolbCommand.php

 protected function configure()
    {
        $this->setName('poolb')
            ->addArgument('status', Argument::REQUIRED, 'start/stop/reload/status/connections')
            ->addOption('d', null, Option::VALUE_NONE, 'daemon(守护进程)方式启动')
            ->setDescription('公海回收定时器');
        
        // 读取数据库配置文件
        $filename = ROOT_PATH . 'config' . DS . 'database.php';
        // 重新加载数据库配置文件
        Config::load($filename, 'database');
    }

9、在网站根目录下执行命令:

php think pool start --d
php think poolb start -d

10、公海回收时间段是:

每天的00:00:00 – 06:00:00
在这里插入图片描述

11、执行命令列表

启动:php think pool start --d
重启:php think pool restart --d
停止:php think pool stop
状态:php think pool status

12、需要安装php-posix 扩展

前端修改的文件
\src\api\crm\customer.js
\src\views\admin\crm\bizParam\index.vue
\src\views\admin\crm\customer\index.vue
\src\views\crm\components\SelectionHandle\ProtectPoolHandle.vue
\src\views\crm\components\CRMTableHead.vue
\src\views\crm\components\CRMDetailHead.vue
\src\views\crm\seas\index.vue

13、需要悟空CRM二次开发的 可以QQ扫一扫:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/133555.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

transformers安装避坑

1.4 下载rust编辑器 看到这里你肯定会疑惑了,我们不是要用python的吗? 这个我也不知道,你下了就对了,不然后面的transformers无法安装 因为是windows到官网选择推荐的下载方式https://www.rust-lang.org/tools/install。 执行文…

Netty入门指南之NIO Selector监管

作者简介:☕️大家好,我是Aomsir,一个爱折腾的开发者! 个人主页:Aomsir_Spring5应用专栏,Netty应用专栏,RPC应用专栏-CSDN博客 当前专栏:Netty应用专栏_Aomsir的博客-CSDN博客 文章目录 参考文献前言问题解…

skynet学习笔记03— 服务

01、API newservice(name, ...): 阻塞的形势启动一个名为 name 的新服务,待start函数执行完后会返回这个服务的地址。uniqueservice(name, ...):针对于当前节点,启动一个唯一服务(相当于单例),…

src/main/resources/fonts/songti.ttc not found as file or resource.

https://blog.csdn.net/Lewishhhh/article/details/122812272文章浏览阅读4.8k次,点赞2次,收藏7次。背景遇到个需求需要用Java导出PDF文件,权衡之下选择了iText,Java操作pdf的各个开源库之间的对比可以参考https://blog.csdn.net/…

【C语言】【数据结构】【环形链表判断是否带环并返回进环节点】有数学推导加图解

1.判断是否带环: 用快慢指针 slow指针一次走一步,fast指针一次走两步 当两个指针相遇时,链表带环;两个指针不能相遇时,当fast走到倒数第一个节点或为空时,跳出循环返回空指针。 那么slow指针一次走一步&a…

浅浅地优化下视频流播放体验

作者:唐子玄 这一篇将从零开始,一步步解决如下这些问题:如何播放单个视频?如何将播放器模块化?如何实现视频流?如何优化视频播放内存?如何优化视频流播放体验? 播放视频 ExoPlayer…

考研数据结构单链表的增删改查看这一篇就够了

目录 一. 单链表的特点 1.1 解引用拓展 🤖 二. 单链表的操作 2.1不带头节点的操作 2.1.1 打印 2.1.1.1 创建结点 2.1.2 尾插(需要二级指针) 注意形参的值不改变实参:(精髓部分) 2.1.3 头插 2.1.4…

java项目之服装定制系统(ssm框架)

项目简介 服装定制系统实现了以下功能: 管理员:管理员使用本系统涉到的功能主要有首页、个人中心、用户管理、服装类型管理、服装信息管理、服装定制管理、留言反馈、系统管理等功能。用户:用户进入系统可以对首页、个人中心、服装定制管理…

测试开源加解密库NETCore.Encrypt中的RSA加解密函数

微信公众号“dotNET跨平台”的文章《开箱即用,.NET最全的加解密开源库》介绍了开源通用工具库NETCore.Encrypt,其支持对称加密算法、非对称加密算法、摘要算法等多种常用算法,使用方便,不过目前仅支持.net core。本文主要测试调用…

Python每日练习:20个常用代码,初学者也可以自己实现!

文章目录 前言20个代码1.重复元素判定2.字符元素组成判定3.内存占用4.字节占用5.打印 N 次字符串6.大写第一个字母7.分块8.压缩9.解包10.链式对比11.逗号连接12.元音统计13.首字母小写14.展开列表15.列表的差16.通过函数取差17.链式函数调用18.检查重复项19.合并两个字典20.将两…

jmeter接口自动化测试工具在企业开展实际的操作

在企业使用jmeter开展实际的接口自动化测试工具,建议按如下操作流程, 可以使整个接口测试过程更规范,更有效。 接口自动化的流程: 1、获取到接口文档:swagger、word、excel ... 2、熟悉接口文档然后设计测试用例&am…

推荐这款机器学习的特征筛选神器!

大家好,特征选择是机器学习建模流程中最重要的步骤之一,特征选择的好坏直接决定着模型效果的上限,好的特征组合甚至比模型算法更重要。除了模型效果外,特征选择还有以下几点好处: 提高模型性能并降低复杂性&#xff08…

不可否认程序员的护城河已经越来越浅了

文章目录 那些在冲击程序员护城河低代码/无代码开发平台自动化测试和部署工具AI辅助开发工具在线学习和教育平台 面临冲击,程序员应该怎么做深入专业知识:不断学习全栈技能开发解决问题的能力建立人际网络管理和领导技能 推荐阅读 技术和应用的不断发展对…

Springboot通过ObjectMapper(节点树)解析JSON

1、ObjectMapper通过节点树的方式解析JSON字符串 1.1、通过节点直接获取属性值 1.1.1、测试代码 node.get("order_id"):直接获取JSON中属性对应的值 Test public void parseJson() throws Exception{//创建json字符串,模拟从外界接收的订…

第二章 03Java基础-IDEA相关叙述

文章目录 前言一、IDEA概述二、IDEA下载和安装三、IDEA项目结构介绍四、IDEA的项目和模块操作总结前言 今天我们学习Java基础,IDEA下载以及相关配置和基础使用方法 一、IDEA概述 1.IDEA全称IntelliJ IDEA,是用于Java语言开发的集成工具,是业界公认的目前用于Java程序开发最…

Leetcode Hot100之六:42.接雨水

题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 提示&#xff1a; n height.length 1 < n < 2 * 10^4 0 < height[i] < 10^5 思路 暴力循环&#xff1a; 原本的思路是左边界i从左到…

阿里云从公网IP转为弹性公网IP,同时绑定多个IP教程

先将云服务器ECS 转为弹性IP 购买新的弹性辅助网卡 购买弹性公网iP 购买之后选择绑定资源选择第二步购买的网卡 进入ECS 终端 ,输入 ip address可以查看到eth1 的对应mac 地址 终端输入 vi /etc/sysconfig/network-scripts/ifcfg-eth1保存一下信息 DEVICEeth1 #表示新配置…

RK3568平台 查看内存的基本命令

一.free命令 free命令显示系统使用和空闲的内存情况&#xff0c;包括物理内存、交互区内存(swap)和内核缓冲区内存。共享内存将被忽略。 Mem 行(第二行)是内存的使用情况。 Swap 行(第三行)是交换空间的使用情况。 total 列显示系统总的可用物理内存和交换空间大小。 used 列显…

《Redis实战》笔记

文章目录 1.字符串命令2.列表命令3.集合命令4.散列命令5.有序集合命令6.发布订阅命令7.其他命令8.redis事务9.键的过期时间10.redis的持久化 1.字符串命令 2.列表命令 3.集合命令 4.散列命令 5.有序集合命令 6.发布订阅命令 7.其他命令 8.redis事务 5个命令&#xff1a;WATCH …

Spring IoC注解式开发

2023.11.11 注解的存在主要是为了简化XML的配置。Spring6倡导全注解开发。 负责声明Bean的注解&#xff0c;常见的包括四个&#xff1a; ComponentControllerServiceRepository 通过源码可以发现&#xff0c;Controller、Service、Repository这三个注解都是Component注解的别名…