销售易怎么样_网络销售平台有哪些软件

销售易怎么样_网络销售平台有哪些软件销售易和云之家对接项目之二:销售易本地调试环境搭建_销售易统一待办对接

项目背景

销售易和云之家对接的问题,背景是这样的:
两个系统都有审批流, 领导对于在两个系统之间来回切换感觉不方便,所以打算将crm中的待办转到OA中.

crm产生待办后给OA发送一条通知消息,点击消息后跳转到CRM的页面(需要单点登陆),然后在CRM的页面中处理审批流, 审批流处理完成后再给OA发送一条消息,标记之前发送的那条通知消息为已完成.
这里解决的难点有这么几个:

1 单点登陆的问题(crm和oa两边不适配)
2 crm二开本地调试环境搭建
3 crm中流程处理完之后要回调oa接口,将之前发送的消息修改状态, 消息id的定义规则也称了一个难点.

销售易本地调试环境搭建

销售易算是国内头部CRM提供商之一. 程序架构用的是spring boot,支持二次开发,支持自定义对象,
在扩展性方面做的还是不错的.

二开有两种方式:
1 写完代码后直接上传到服务器,在云环境下测试 可以在后台查看log日志, 不支持在线修改代码, 每次修改都要重新上传,适合做代码后期的维护,小修小改的那种.
2 本地调试,需要部署一个spring boot 的项目, 本文就是解决这个问题的.

一、创建一个springboot的项目

1、SpringBoot的定义

​ Spring 的诞⽣是为了简化 Java 程序的开发的,⽽ Spring Boot 的诞⽣是为了简化 Spring 程序开发的。
​ Spring Boot 翻译⼀下就是 Spring 脚⼿架,就是为了快速开发 Spring 框架⽽诞⽣的
​ Spring Boot 项⽬的⼀大特点:约定⼤于配置。较于Spring需要配置Bean的扫描路径,而SpringBoot就不需要

2、Spring Boot 优点

快速集成框架,Spring Boot 提供了启动添加依赖的功能,⽤于秒级集成各种框架。
内置运⾏容器,⽆需配置 Tomcat 等 Web 容器,直接运⾏和部署程序。
快速部署项⽬,⽆需外部容器即可启动并运⾏项⽬。
可以完全抛弃繁琐的 XML,使⽤注解和配置的⽅式进⾏开发。
⽀持更多的监控的指标,可以更好的了解项⽬的运⾏情况。
SpringBoot的核心:
1、快速添加依赖
2、内置web容器
3、自动装配(即SpringBoot自动构建复杂对象,构建好的对象可以直接使用)

主要的几个代码介绍

1、@SpringBootApplication:Spring Boot项目的核心注解,主要目的是开启自动配置。;

2、@Configuration:这是一个配置Spring的配置类;

3、@Controller:标明这是一个Spring MVC的Controller控制器;

4、main方法:在main方法中启动一个应用,即:这个应用的入口;

3、安装SpringBoot插件

​ 因为我们⽤的 Idea 社区版2021.3,选择安装SpringBoot插件才能创建 Spring Boot 项目。
SpringBoot插件名字为

在这里插入图片描述

4、安装SpringBoot插件

接下来开始正式创建SpringBoot项目:

1、先选择file->new->project

2、选择Spring Initializr,选择国外的默认配置源, 唯一注意的是Type保留默认的Maven,其他的随便填一下

在这里插入图片描述

3、添加项目的依赖
在这里插入图片描述

一般是Web项目,所以我们勾选最基本的 Web选项,选择SpringBoot Devtools用于实现热部署,其他可以等用到的时候再添加。
Spring Boot Devtools:实现热部署

Lombok:Java注解

Spring Web: 外部服务

SpringBoot版本选择后缀不带英文字母的稳定版本,其中低版本的比较稳定

点击finash,等待项目的创建

项目创建完成后,目录结构是这样的:

在这里插入图片描述

现在看到有一个右上角带三角符号的启动类 Demo1Application,说明项目已经创建好了,运行这个启动类看看效果

销售易怎么样_网络销售平台有哪些软件

tomcat也运行起来了,用浏览器访问本地8080端口

在这里插入图片描述

二 、配置销售易二开环境

1 添加销售易jdk

在项目根目录下添加lib目录,并将销售易的jdk文件 ingageSDK.jar和 模型model.jar复制过来

在这里插入图片描述

在moven的配置文件 pom.xml里面增加依赖

        <dependency>
            <groupId>xsy</groupId>
            <artifactId>sdk</artifactId>
            <version>1.0.0</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/lib/ingageSDK.jar</systemPath>
        </dependency>

        <dependency>
            <groupId>xsy</groupId>
            <artifactId>model</artifactId>
            <version>1.0.0</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/lib/model.jar</systemPath>
        </dependency>

2 配置连接器

登陆销售易后台,在平台工具->开发-> 连接器里面配置一个连接器

在这里插入图片描述

查看连接器信息:

在这里插入图片描述

3 配置oauthConfig.properties

在idea中增加oauth2的配置文件: src/main/resources/oauthConfig.properties

在这里插入图片描述

文件内容:

# 用户名
userName=1111111111
#密码
password=2222222222
#账号的安全令牌, 到设置->个人设置->安全令牌-> 获取安全令牌里去查看, 注意不要更新,更新的话其他用到安全令牌的地方就废了
securityCode=aaaaaaa

# 上一步连接器配置的id和secret
clientId=xxxxxxxxxxxxxxxxxxx
clientSecret=yyyyyyyyyyyyyyyyyyyyyyyy
# 销售易沙盒环境地址
domain=https://api-sandbox.xiaoshouyi.com      

4 一个流程业务逻辑的例子

在这里插入图片描述

在src/main/java目录下 增加目录结构other/oa/message ,销售易要求包名必须以以other开头.

在other同级目录下,增加配置文件scriptTrigger.xml, 这个名字也是固定的

现在就可以写java代码了. 这是一个审批流中的触发器的案例:

新建一个类,实现ApprovalEvent 接口,重新execute 方法,这个方法只有一个参数

ApprovalEventRequest , 这个request对象,包含当前上下文的信息,主要是三个属性

    String apiKey= request.getEntityApiKey();     对象的api名称,比如客户就是account
    Long dataId= request.getDataId();             对象实例的id
    Long logId= request.getUsertaskLogId();       当前审批流节点id
public class SendMessageApproval implements ApprovalEvent { 
   
    Logger log = LoggerFactory.getLogger();
    @Override
    public ApprovalEventResponse execute(ApprovalEventRequest request) throws ScriptBusinessException { 
   
        ApprovalEventResponse response = new ApprovalEventResponse();
        String apiKey= request.getEntityApiKey();
        Long dataId= request.getDataId();
        Long logId= request.getUsertaskLogId();
        //调试用
                
        apiKey="account";
        dataId=2815746268447776L;
        logId=2815760430318550L;
        log.info(apiKey);
        log.info(dataId.toString());
        log.info(logId.toString());
        
        response.setSuccess(true);
        response.setMsg("success");
        return response;

    }

对应的配置文件scriptTrigger.xml

<?xml version="1.0" encoding="UTF-8"?>
<configs>
    <config>

        <approvalevent>
            <object>account</object>
            <operate>agree</operate>
            <position>after</position>
            <class>other.oa.message.SendMessageApproval</class>
        </approvalevent>

        <approvalevent>
            <object>account</object>
            <operate>agree</operate>
            <position>validate</position>
            <class>other.oa.message.SendMessageApproval</class>
        </approvalevent>

    </config>
</configs>

将other目录和scriptTrigger.xml 打包成一个zip文件上传到服务器上去,就可以在审批流中进行配置了.

注意: 测试的话, position配置成 validate , 也就是审批前校验,并且要设置成校验失败,这样做的目的有两个:

  • 从日志中获取当前节点上下文信息
  • 不改变审批流状态

查看后台日志,手工给上下文环境赋值,就可以开启本地测试了

    apiKey="account";
    dataId=2815746268447776L;
    logId=2815760430318550L;

测试之前,要写一个main函数

     public static void main(String[] args) { 
   
        SendMessageApproval approval = new SendMessageApproval();
        ApprovalEventRequest approvalEventRequest = new ApprovalEventRequest();
        try { 
   
            approval.execute(approvalEventRequest);
        } catch (ScriptBusinessException e) { 
   
            e.printStackTrace();
        }

三 、参考文档

配置spring boot 参考了这篇文章 https://blog.csdn.net/qq_73471456/article/details/130477381

销售易帮助文档:

登陆销售易,点击左下角的帮助->帮助文档

销售易新版审批流参考文档: 文档中心-pass平台->pass平台开发手册

选新版审批流相关脚本开发

在这里插入图片描述

销售易API参考文档:

在这里插入图片描述

今天的文章销售易怎么样_网络销售平台有哪些软件分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/83636.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注