致远OA——自定义开发rest接口

文章目录

    • [:apple: 业务流程](#:apple: 业务流程)

🍎 业务流程

代码案例: https://pan.quark.cn/s/57fa808c823f
官方文档:

登录系统 ------ 后台管理 ------ 切换系统管理员 ------ 信息集成配置 ------ rest用户管理 ------ 新建

根据上面生成的用户名和密码,发送请求获取 token,后续用于访问自己的定义的 `rest`` 接口使用。

官方文档如下:

我们自己进行测试获取:

注意:上面的 token 失效只有十五分钟。


自定 rest 接口:

根据官方文档,提供的案例我们进行自己的 rest 接口开发,下面是官方文档案例:

注意:这里我们定义的 rest 接口的包位置一定要放在 com.seeyon.ctp.rest.resources 包的下面。项目是按照一定规则去加载的,如果包名不一致是加载不到的,接口是访问不到的

java 复制代码
package com.seeyon.ctp.rest.resources;

import java.util.Map;

import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Response;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import com.seeyon.apps.ext.HaiKangDataSysn.manager.HaiKangAllDataSysnManager;
import com.seeyon.ctp.common.AppContext;
import com.seeyon.ctp.common.exceptions.BusinessException;
import com.seeyon.ctp.services.ServiceException;
import com.seeyon.ctp.util.annotation.RestInterfaceAnnotation;

@Path("/custmerBtnRest")
@Produces({ "application/json", "application/xml" })
public class CustmerBtnRestResource extends BaseResource {
	private static final Log log = LogFactory.getLog(CustmerBtnRestResource.class);
	private HaiKangAllDataSysnManager HaiKangAllDataSysnManager=(HaiKangAllDataSysnManager) AppContext.getBean("HaiKangAllDataSysnManager");

	@GET
	@Consumes({ "application/xml", "application/json" })
	@Path("findHaiKangData")
	@RestInterfaceAnnotation
	public Response findHaiKangData(@QueryParam("type") String type) throws ServiceException {
		HaiKangAllDataSysnManager.sysnAllDataToOA(Integer.valueOf(type));
		return success("ok");
		
	}


	@POST
	@Path("finishaffair")
	@Consumes({ "application/xml", "application/json" })
	@RestInterfaceAnnotation
	public Response finishaffair(Map<String, String> param) throws BusinessException {

		return this.ok(Boolean.valueOf(true));
	}

}

将开发好的接口编译成 .class 文件,替换到项目中,重新启动项目常识访问我们的接口即可。访问前需要添加请求头,将我们前面获取到的 token 放到请求头中:

请求头:

key value
token d07f4800-6835-4edc-8ff8-d3eff936b91b
Accept application/json
Content-Type application/json;charset=UTF-8
User-Agent Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.76 Safari/537.36
相关推荐
M-Robots echo9 小时前
轻量化裁剪方案解析:M-Robots 模块化构建,适配高低端各类机器人硬件平台
java·机器人·ros·开源社区·atomgit·m-robots
不可求~10 小时前
多模型路由怎么落地:把任务分流写进项目的最小实现
java·前端·数据库
tianxuanjg10 小时前
0.005mm 高精度 CNC 加工:机器人薄壁复杂零件变形控制与全维度品控方案
经验分享·机器人·无人机·制造·材质
mldong10 小时前
用 DDD 设计工作流引擎:聚合根与充血模型
java·架构
风流 少年11 小时前
Spring AI 2.0:Advisor
android·人工智能·spring
mqiqe12 小时前
AgentScope Java Harness:4. 双层记忆系统 让 Agent 拥有真正的“长期大脑“
java·开发语言
伍一5112 小时前
03-文件管理模块-一个看似简单的模块藏着多少细节
java·ruoyi·若依
gugucoding12 小时前
46. 【Java】JUC并发工具:让并发更简单
java·开发语言
砍材农夫12 小时前
spring-ai|Spring‑AI 2.0.0 新特性 + 入门教程
spring boot·spring·spring cloud
Nebula_g12 小时前
JavaSE基础语法:面向对象高级(代码中的成分)
java·开发语言·编程·javase·技术栈·高级语法