折腾:
后,继续去在Mac中使用Eclipse开发销售易的项目。
参考:
需要先去导入SDK
之前邮件发过:ingageSDK.jar
从官网:
中也有:
https://crm.xiaoshouyi.com/doc/document/docs/developerResources/ingageSDK.jar
参考:
去创建连接器:
销售易自定义开发测试的客户端信息
Client_Id:043fdxxxa18142
Client_Secret:5f4efxxx766
Redirect_Uri:https://xxxx.com/
Package:other.eacpjk.bjbbkdkfcfdcf
拷贝代码后,把equals改为:contains,变为
package other.eacpjk.bjbbkdkfcfdcf;
import java.util.List;
import com.rkhd.platform.sdk.ScriptTrigger;
import com.rkhd.platform.sdk.exception.ScriptBusinessException;
import com.rkhd.platform.sdk.log.Logger;
import com.rkhd.platform.sdk.log.LoggerFactory;
import com.rkhd.platform.sdk.model.DataModel;
import com.rkhd.platform.sdk.param.ScriptTriggerParam;
import com.rkhd.platform.sdk.param.ScriptTriggerResult;
public class CreateCustomerRuleCheck implements ScriptTrigger {
private static final Logger logger = LoggerFactory.getLogger();
@Override
public ScriptTriggerResult execute(ScriptTriggerParam scriptTriggerParam) throws ScriptBusinessException {
if (scriptTriggerParam != null) {
// 获取业务对象列表
List<DataModel> modelList = scriptTriggerParam.getDataModelList();
if (modelList != null & modelList.size() > 0) {
for (DataModel dataModel : modelList) {
// 获取业务对象备注信息;字段信息可通过业务对象的describe API获取
String comment = (String) dataModel.getAttribute("comment");
if ("forbid".contains(comment)) {
// 记录错误信息,可在销售易后台业务逻辑代码日志中查询/进行业务规则校验,这里是对备注这个字段进行的简单校验,校验失败抛出错误异常
logger.error("this account is not allowed to save");
throw new ScriptBusinessException("新建客户失败");
}
}
}
return new ScriptTriggerResult(scriptTriggerParam.getDataModelList());
}
return null;
}
}
再去src下创建scriptTrigger.xml
好像是没有起效果
重新登录试试
去点击测试:
点击测试
跳转到:
https://crm.xiaoshouyi.com/admin/admin-home/class=’pop_button’
然后没反应了。
去看了看,没问题:
难道客户搞错了,去选择客户:
结果这个客户是自定义的对象:
没有备注项,不是我要的。
突然发现,貌似此处改动的代码的逻辑出了问题:
之前是:
if ("forbid".equals(comment)) {
现在是:
if ("forbid".contains(comment)) {
变成了:
forbid字符串包含comment,肯定不对了。
所以去改为:
if (comment.contains("forbid")) {
然后再去更新包:
注意:需要先禁止停用,才能更新(点击更新才会弹出选择框,否则没有提示,做的不够好,应该有提示,需要停用才能更新)
终于生效了。
【总结】
更新一下代码:
逻辑是:
当新建客户account时,新建的用户的备注中,包含了forbid字符串,则新建失败,且提示:
新建客户失败:备注comment中包含了forbid则禁止创建新客户
package other.eacpjk.bjbbkdkfcfdcf;
import java.util.List;
import com.rkhd.platform.sdk.ScriptTrigger;
import com.rkhd.platform.sdk.exception.ScriptBusinessException;
import com.rkhd.platform.sdk.log.Logger;
import com.rkhd.platform.sdk.log.LoggerFactory;
import com.rkhd.platform.sdk.model.DataModel;
import com.rkhd.platform.sdk.param.ScriptTriggerParam;
import com.rkhd.platform.sdk.param.ScriptTriggerResult;
public class CreateCustomerRuleCheck implements ScriptTrigger {
private static final Logger logger = LoggerFactory.getLogger();
@Override
public ScriptTriggerResult execute(ScriptTriggerParam scriptTriggerParam) throws ScriptBusinessException {
if (scriptTriggerParam != null) {
// 获取业务对象列表
List<DataModel> modelList = scriptTriggerParam.getDataModelList();
if (modelList != null & modelList.size() > 0) {
for (DataModel dataModel : modelList) {
// 获取业务对象备注信息;字段信息可通过业务对象的describe API获取
String comment = (String) dataModel.getAttribute("comment");
// if ("forbid".contains(comment)) {
if (comment.contains("forbid")) {
// 记录错误信息,可在销售易后台业务逻辑代码日志中查询/进行业务规则校验,这里是对备注这个字段进行的简单校验,校验失败抛出错误异常
logger.error("this account is not allowed to save");
throw new ScriptBusinessException("新建客户失败:备注comment中包含了forbid则禁止创建新客户");
}
}
}
return new ScriptTriggerResult(scriptTriggerParam.getDataModelList());
}
return null;
}
}
效果:
对应的可以去查看到对应的日志:
转载请注明:在路上 » 【记录】Mac下用Eclipse去开发销售易的自定义业务逻辑代码