概要
看板利用 teambition
企业 OA 零碎 kintone
咱们心愿能把本人企业 OA 零碎 (kintone) 中的工作间接公布到外包企业的我的项目管理系统 (teambition) 上。
效果图
要害代码
function genAppAccessToken(param) {
const periodical = 3600;
const iat = Math.floor(Date.now() / (1000 * periodical)) * periodical;
const oHeader = {
alg: 'HS256',
typ: 'JWT'
};
const oPayload = {
iat:iat,
exp: iat + Math.floor(1.1 * periodical),
_appId: param.appId,
};
return KJUR.jws.JWS.sign('HS256', oHeader, oPayload, { utf8: param.appSecret});
}
function createTask(param) {
const data = {
'operatorId': param.uid,
'projectId': param.projectId,
'templateId': param.templateId,
'content': param.content,
'priority': param.priority,
'visible': param.visible }
const options = ['tasklistId', 'taskgroupId', 'executorId', 'statusId', 'startDate', 'dueDate', 'note', 'parentTaskId', 'participants', 'customfields'];
for (let i = 0; i < options.length; i++) {param[options[i]] && (data[options[i]] = param[options[i]]);
}
return kintone.proxy('https://open.teambition.com/api/task/create', 'POST', {
'Content-Type': 'application/json',
'Authorization': 'Bearer' + param.appAccessToken,
'X-Tenant-Id': param.orgId,
'X-Tenant-Type': 'organization'
}, data);
}
具体实现请参考:
通过 kintone 公布 teambition 工作
更多文章和演示:Kintone demo 环境