审批核心 - 用于自定义(pc,h5)审批页面,提供了一些定好的接口和数据
仅用于自定义审批页面,现成提供的 pc,h5 都是基于这个写的
使用@qse/approve-core
的话,就不用下载@qse/approve-h5
@qse/approve-pc
# 安装 更新
npm i @qse/approve-core@latest
import React from 'react'
import { withApprove, WithApproveProps } from '@qse/approve-core'
/**
* 你自定义的审批页面/组件
*
* withApprove 会包裹你的组件,并向下传递审批相关的所有数据,具体可以看声明文件
*
* @extends {React.Component<WithApproveProps>}
*/
class CustomApprove extends React.Component {
render() {
// 数据源
const { approveState, actions } = this.props
const { record, canIApprove, canRevoke, element_list, dataSource, sprList } = approveState
const { init, resolve, reject, revoke } = actions
// 你的页面
return <div />
}
}
// 导出的时候用高阶组件包裹下
export default withApprove(CustomApprove)
// 使用
<CustomApprove userId="" sheet_id="" campusid="" onCreated={(approveState, actions)=> {}}/>
声明文件里有更详细的解释
属性 | 说明 | 类型 | 默认值 |
---|---|---|---|
sheet_id | 表单 id | string | |
userId | 当前登录人 id | string | |
campusid | 校区 id 影响编辑时 List 类型的数据 | string | |
onCreated | 当 init 调用后,会执行这个方法返回详情数据 | (approveState: ApproveState) => void | |
allowNextSheet | 允许审批完成后自动跳转下一条单据 | boolean | false |
ApproveState
属性 | 说明 | 类型 |
---|---|---|
sheet_id | 当前单据的 sheet_id,可能与 props 中的 sheet_id 不同 | string |
next_sheet_id | 下一条单据的 sheet_id 只有完成审批时才会填入 | string |
modifyStore | 修改表单数据存储 | any |
canIApprove | 当前人是否可以审批 | boolean |
record | 单据详情 | any |
element_list | 表单显示字段 | any[] |
dataSource | 请审提交时候的数据 | any |
sprList | 审批设置里面的审批人 处理过的数据 | any[] |
originSprList | 审批设置里面的审批人 原始数据 | any[] |
canRevoke | 能否撤回 | boolean |
is_sign | 是否需要签名 | boolean |
lastSignInfo | 最后一次签名的信息 | {sign_hash: string; base64: string } |
Actions
属性 | 说明 | 类型 |
---|---|---|
init | 初始化数据 | 看声明文件 |
resolve | 审批同意 | 看声明文件 |
reject | 审批撤回 | 看声明文件 |
rejectAfterApproveComplete | 审批驳回(审批通过后) | 看声明文件 |
revoke | 审批撤回 | 看声明文件 |
urge | 催办 | 看声明文件 |
sign2hash | base4 签名转 hash | 看声明文件 |
hash2sign | hash 转 base64 签名 | 看声明文件 |
queryLastSignHash | 获取最后一次 hash | 看声明文件 |
modifyForm | 修改表单 | 看声明文件 |
queryElementValueList | 获取 form 里的 list 数据 | 看声明文件 |
setState | 更新 ApproveState 数据 | 看声明文件 |
canIGotoNextSheet | 是否可以前往下一条单据 | 看声明文件 |
gotoNextSheet | 前往下一条单据 | 看声明文件 |
deliver | 转交 | 看声明文件 |