LOADING...

加载过慢请开启缓存(浏览器默认开启)

loading

API事件处理

API事件处理

一、本地授权

注意:请先确认本地是否安装【密码加密控件】

点击下载 密码加密控件

1、配置授权规则

【集中运营】对需要授权的交易配置授权规则>【集中运营】对需要授权的交易配置授权规则 @何计杭

2、开发调用

 try {
     // 接口参数同this.request
     let r = await fox.event({
         vm: this,
         app: backend.oca,
         path: 'api/adminSmUser/queryUser',
         data: {
         	// 【集中运营】 授权规则要素配置
         	xxx: 'xxxx',
            xxx: 'xxxx',
            xxx: 'xxxx',
            ...
            
         	// 交易参数
            xxx: 'xxxx',
            xxx: 'xxxx',
            xxx: 'xxxx',
            xxx: 'xxxx',
            xxx: 'xxxx',
            xxx: 'xxxx',
            xxx: 'xxxx',
            xxx: 'xxxx',
            ...
         },
     })
     console.log('最终结果', r)
     fox.custom.closePage(this)
     context.resolve()
 } catch (e) {
     console.error('最终结果', e)
     context.reject()
 }

注意:

  • 1、fox-commmonts.js 是否是连接【sit】/【uat】环境的最新版
  • 2、授权规则是否已在【集中运营】配制过
  • 3、不允许使用 【admin】 账号、机构号为【999000】的柜员号测试
  • 4、确认菜单里【菜单代码】是否配制,接口请求头【tradeHead】里】【tradeCode】是否与菜单码(交易码)相同
  • 5、接口是否返回 事件信息字段【ruleEvents】
  • 6、fox.event({vm:this}) 函数是否 传递 vm 字段

3、授权界面

1. 密码授权

API事件处理01.png

2. 指纹授权

API事件处理02.png

4、授权成功/失败 返回信息

authUserIdArray 返回本地授权人员信息

二、集中授权

1、配置授权规则、授权要素

【集中运营】对需要授权的交易配置授权规则>【集中运营】对需要授权的交易配置授权规则、授权要素 @何计杭

2、开发调用

try {
            let r = await fox.event({
                vm: this,
                app: backend.oca,
                path: 'api/message/TemplateAlter',
                data: {
                    // -- 具体交易具体填写类型 固定字段 交易选择 --
                    //交易场景 1-集中授权,3-集中复核,4-企业互联集中授权
                    transModel: "4",
                    
                    // 【集中运营】 授权规则要素配置
                    xxx: 'xxxx',
                    xxx: 'xxxx',
                    xxx: 'xxxx',
                    ...
                    
                    // 交易参数
                    xxx: 'xxxx',
                    xxx: 'xxxx',
                    xxx: 'xxxx',
                    xxx: 'xxxx',
                   ...

                },
                "tradeHead": {
                    // -- 具体交易具体填写类型 固定字段 交易选择 --
                    // 交易类型 01 非账务流水 99 其他
                    "tradeType": "01",
                    // 交易类别 01 单笔交易 02 组合交易
                    "tradeCls": "01",
                    // 交易方式 1 无纸 2 有纸
                    "tradeMode": "0",
                    // 打印场景
                    "printScene": {
                        // 该交易是否支持补打 0 不支持 1 支持
                        "isReprint": "0"
                    },

                    // 【静态授权(集中运营)】 授权要点 交易传(一级结构)
                    "authInfo": {
                        // -- 具体交易具体填写类型 --
                        "authPoints": {
                            // 集中授权 授权要素
                            xxx: 'xxxx',
                            xxx: 'xxxx',
                            xxx: 'xxxx',
                            xxx: 'xxxx',
                            xxx: 'xxxx',
                            ...
                        }
                    },
                }
            })
            
            console.log('最终结果', r)
            fox.custom.closePage(this)
            context.resolve()
        } catch (e) {
            console.error('最终结果', e)
            context.reject()
        }

注意:

  • 1、fox-commmonts.js 是否是连接【sit】/【uat】环境的最新版
  • 2、授权规则是否已在【集中运营】配制过
  • 3、不允许使用 【admin】 账号、机构号为【999000】的柜员号测试
  • 4、确认菜单里【菜单代码】是否配制,接口请求头【tradeHead】里】【tradeCode】是否与菜单码(交易码)相同
  • 5、接口是否返回 事件信息字段【ruleEvents】
  • 6、fox.event({vm:this}) 函数是否 传递 vm 字段
  • 7、交易场景【transModel】是否传递
  • 8、【tradeHead】里 【tradeType】、【tradeCls】、【tradeMode】、【printScene】、【tradeCode】、【authPoints】是否传递

3、授权界面(影像功能集成中,直接点击提交按钮)

API事件处理04.png

三、授权不通排查思路

http://158.220.199.49:8081/download/FoxIDE/_fox_commons/


最新版【fox-commonts.js 】有需要可自行下载。

  • 1、fox-commmonts.js 是否是连接【sit】/【uat】环境的最新版

  • 2、授权规则是否已在【集中运营】配制过

  • 3、不允许使用 【admin】 账号、机构号为【999000】的柜员号测试

  • 4、确认菜单里【菜单代码】是否配制,接口请求头【tradeHead】里】【tradeCode】是否与菜单码(交易码)相同

  • 5、接口是否返回 事件信息字段【ruleEvents】

  • 6、fox.event({vm:this}) 函数是否 传递 vm 字段

四、授权调试Demo

<template>
    <!--page每个页面的root元素-->
    <fox-page>
        <fox-content>
            <fox-button @click="test" type="primary">事件111</fox-button>
            <fox-button @click="onExit" type="primary">关闭</fox-button>
        </fox-content>
    </fox-page>
</template>

<script>
    import {log} from '@/page/trtc/utils'
    import {judgeCommitAuth, addAuthBookVoucher, tradeMsgbox} from "@/api/request/trade";
    import {TradeMixin} from '@/utils/commons/controller/trade-mixin'

    export default {
        name: 'test',
        // 混入
        // mixins: [TradeMixin],
        // 数据
        data: function () {
            return {
                authorizeParams: {},
                // 替换 fx_tradeInfo
                //打印场景,name打印场景名称,title打印标题,values存款要素信息,type 1-凭证,2-报表,3-存折,4-
                eventTradeInfo: {
                    tradeCode: "", //交易代码 100294  1072 账号 6214372600000040228
                    authChkSeal: "0", //是否验印 0否 1是,
                    /** 用户信息 **/
                    userId: "", //用户id
                    userName: "", //用户名
                    orgId: "", //机构号
                    orgName: "", //机构名
                },
                // 替换 fx_trade_config_head
                eventTradeConfigHead: {}, //接口获取的参数
            }
        },
        mounted() {
            console.log(this.$route)
        },
        // 方法
        methods: {
            test() {
                console.log('触发了事件------------')
                this.fox_submit()
            },
            onExit() {
                fox.custom.closePage(this)
            },
        },
        fox_flow() {
            return {
                /**
                 *  界面渲染后,更改数据会触发钩子函数
                 * @param session
                 * @param context
                 */
                async mounted(session, context) {
                    console.log('session, context', session, context)
                    context.resolve()
                },

                /**
                 * 销毁处理
                 */
                beforeDestroy(session) {
                    console.log('session', session)
                },

                /**
                 * 消息
                 * @param type
                 * @param data
                 */
                onMessage(type, data) {
                    console.log(type, data)
                },

                /**
                 * 设置检查条件
                 * @param context
                 */
                setCheckConditions(context) {
                    console.log(context)
                    // 触发check函数调用(必须执行context.resolve或context.reject)
                    context.resolve()
                },

                /**
                 * 提交前处理
                 * @param context
                 * @param checkResult
                 */
                preSubmit(context, checkResult) {
                    console.info('pre submit流程', context, checkResult)

                    // 触发submit函数调用(必须执行context.resolve或context.reject)
                    context.resolve()
                },

                /**
                 * 提交处理
                 * @param context
                 * @param args
                 */
                async submit(context) {
                    console.info('submit流程')
                    try {
                        let r = await fox.event({
                            vm: this,
                            // app: backend.oca,
                            // path: 'api/adminSmUser/queryUser',
                            path: '/ifs-eiubm-pm-starter/api/message/TemplateAlter',
                            data: {
                                //交易场景 1-集中授权,3-集中复核,4-企业互联集中授权
                                transModel: "4",

                                // 测试账号 8910521 柜员账号
                                // 授权账号 8910020
                                // local 静态+本地 11级
                                // remote 静态+远程 11级(影像目录有但随意)
                                // all 静态+本地+远程 11级(影像目录有但随意)
                                templateContent: 'local',

                                // 交易信息
                                clickMsgType: "1",
                                busiId: "c7d953a60a0b4365b3f15b174c35e0ff",
                                frontDisType: "1",
                                channelType: "APP",
                                templateCode: "AQHLIIIIIII44445",
                                templateId: "EXXXNASTEST00001001",
                                title: "对账单邮件发送",
                                isSync: "1",
                                touchSystem: "b15d4b3b147141b0bb1ede06b70e04a1",
                                labelId: "0",
                                displayContent: "亲情钱包确认提醒",
                                clickActType: "1",
                                draft: 1,
                                appId: "78563531c3134032829b85e3ae1b2e55",
                                appPushType: "0",
                                rejectId: "0",
                                clickActBody: "弹窗动作值",
                                updateTime: 1657614238000,
                                priority: 5,
                                isDisplay: "0",
                                clickMsgBody: "消息盒子动作值",
                                versions: "001",
                                templateName: "对账单邮件发送1",
                                createTime: 1657614238000,
                                sendType: "1",
                                auditStatus: "1",
                                createUser: "9990053",
                                applyId: "0",
                                emailId: "1",
                                pageSize: 10,
                                pageIndex: 0

                            },
                            "tradeHead": {
                                // -- 具体交易具体填写类型 固定字段 交易选择 --
                                // 交易类型 01 非账务流水 99 其他
                                "tradeType": "01",
                                // 交易类别 01 单笔交易 02 组合交易
                                "tradeCls": "01",
                                // 交易方式 1 无纸 2 有纸
                                "tradeMode": "0",
                                // 打印场景
                                "printScene": {
                                    // 该交易是否支持补打 0 不支持 1 支持
                                    "isReprint": "0"
                                },

                                // 【静态授权(集中运营)】 授权要点 交易传(一级结构)
                                "authInfo": {
                                    "authPoints": {
                                        "appPushType": "0",
                                        "rejectId": "0",
                                        "clickActBody": "",
                                        "updateTime": 1657614238000,
                                        "priority": 5,
                                        "isDisplay": "2",
                                        "clickMsgBody": ""
                                    }
                                },

                                // -- 系统自动获取 --
                                tradeCode: "D00001", // 交易码
                                // tradeName: "授权测试", // 交易名称
                                // transName: "授权测试", // 交易名称
                                // workDate: "2022-07-25", // 时间
                                // orgId: "891000", // 柜员机构号
                                // userId: "8910521", // 柜员id
                                // routePath: "fox-test/manager/index",
                            }
                        })
                        console.log('最终结果', r)
                        fox.custom.closePage(this)
                        context.resolve()
                    } catch (e) {
                        console.error('最终结果', e)
                        context.reject()
                    }
                    // 触发post submit函数调用(必须执行context.resolve或context.reject)

                },

                /**
                 * 提交后处理
                 * @param context
                 * @param params
                 */
                postSubmit(context) {
                    console.log('post submit流程', context)
                    console.info('post submit流程')
                }
                ,

                /**
                 * 提交取消处理
                 * @param context
                 * @param args
                 */
                cancelSubmit(context, error) {
                    console.info(JSON.stringify(error))
                }
                ,
            }
        }
        ,
    }
</script>

<style scoped>
</style>
img_show