Warning: Trying to access array offset on value of type bool in /www/wwwroot/www.acocoa.com/wp-content/module/public/function/acocoa/function/jinsom.php on line 163
2025年1月17日 1、在执行完成所有的验证处理后,寄售回收钩子xc_consignment_apply_hook会返回code=0、msg=‘寄售订单已成功提交’。整个的处理流程基本就已经追加完毕,后续如果需要对拦截或者回调做出修改调整,可以通过动态注册事件处理,也可以通过hook_afte和hook_afte两个钩子来进行。具体的话根据业务来进行设定,一般系统的行为通过自带钩子处理,外部事件则通过动态注册方法进行比较好。 2、前端新增回调动作事件:xc_hook_consignment_apply_ok,当服务端返回处理结果的时候。如果返回的收code=0,则表明申请已经成功提交,那么将会触发这个前端回调事件,负责页面的一些交互动作的处理。如果返回的是code=1,则页面会通过xc_msg触发一条短消息提醒,告知用户申请提交失败的具体原因。部分会携带jump参数,将会实现页面自动跳转处理。比如进入认证页面、进入绑定手机页面。 3、为了方便前端进行页面响应处理,寄售回收钩子如果返回的是code=0,还会额外返回两个字段参数。1、consignment:后端已成功封装好的订单数组对象信息,前端可以提取对应的参数,进行页面的参数处理。2、id:数据表主键ID值,这个参数相当重要,一旦提交成功,可以通过这个参数直接跳转到申请订单详情页。后续会进行集成处理。 4、防止非法触发页面回调动作,负责回调的动作钩子现在回初始化page_content变量,使用let进行区域锁定范围,避免溢出到外部造成内存泄露风险。封装的变量锁定元素位置publish_consignment_content,如果页面没有这个元素则说明用户并未处于寄售回收订单申请页面。此时会通过xc_is_last_page进行进一步检测,如果返回结果不等于publish_consignment则返回false。阻止后续的所有提交请求。 5、目前的页面回调交互设计规划比较简单,就是通过xc_setting_btn.xc_hook_consignment_apply进行操作按钮锁定,然后将其onclick事件进行移除处理,避免用户二次提交请求。然后将操作按钮文字变更为:寄售回收订单已提交成功。最后将背景颜色变更为更鲜艳的橙红色,提示用户此次操作已完成。注:通过xc_hook_consignment_apply进行元素锁定是为了兼容寄售和回收两个订单按钮。 6、修复寄售回收申请页面,联系人信息输入表单出现错误【 Trying to access array offset on value of type bool in 】该错误是集成了redis缓存方案后,但是没有经过验证直接使用,导致直接返回上述的异常报错结果,正确的处理方案为:使用三元运算进行empty进行验证,如果为空不存在则说明用户没有设置过联系人信息或者缓存过期了,此时应该将其设定为默认为空。 7、人工审核大厅(review_list),现在已经支持了寄售和回收的订单处理,当线上工作人员或者合作专家收到了用户的寄售或者回收藏品的申请订单,会在这个页面展示记录。需要注意的是:寄售和回收属于两个订单类型,她们并不归档在一起的。另外这个页面只是展示一个列表入口,需要点击进入对应的审核类型,才能看到完整的订单列表信息参数。 8、寄售回收订单比较特殊,获取待处理的任务的时候不能直接读取后台预设的sql参数,因为有个动态参数信息。user_id:这个根据当前用户ID来验证的。因为不同的藏品分类,设定的账户UID不同。因此需要做特殊处理。具体的方法为,读取后台的审核列表参数信息,如果key快即类别为【consignment:寄售藏品审核申请、recycle:回收藏品审核申请】,则单独执行sql的封装处理部分,不采用之前预设的值。 9、寄售回收待审核的数量,是通过total_count进行统计输出的。这个参数值的获取方式目前是通过下面sql语句来获取【SELECT COUNT(*) FROM wp_xc_consignment WHERE status = 0 AND type = 'consignment' AND auditor = $user_id"】其中status=0代表未审核的订单,type是交易的类型,如果是回收则变更为recycle,auditor则是当前用户,属于对方审核计划值。 10、考虑到审核场景的复杂性,后期会有各种各样的审核计划出现,如果每种待审核计划都通过sql语句去获取去待处理订单数、已完成订单数。那么后续的sql维护会非常的凌乱,而且稍有不慎就可能要对源代码进行重新变更处理。基于此,新增一个HOOK钩子。xc_review_add_hook(审核计划新增事件),不管什么样的审核计划出发,这个钩子都会触发并执行。然后在业务中进行一个订单计数,有什么需要扩展都几种在这里面处理,所需要做的就是,出现审核计划,确保该方法被触发即可。 11、新增的审核计划钩子事件,需要主动传递两个变量。1、key:审核场景配置标识,也可以理解为任务类别。2、user_id:触发审核的用户ID参数值。该钩子会返回标准的数组结构,方便后续的处理。如果执行成功则未code=0、如果执行失败则返回code=1。正常情况下不需要监听其返回结果,但是考虑到未来需求还是集成下,目前返回错误的可能只有一种,即传递的key未找到审核配置参数。
Warning: Trying to access array offset on value of type bool in /www/wwwroot/www.acocoa.com/wp-content/module/public/function/acocoa/function/jinsom.php on line 163
拉黑 举报 打赏 回复54楼
Warning: Trying to access array offset on value of type bool in /www/wwwroot/www.acocoa.com/wp-content/module/public/function/acocoa/function/jinsom.php on line 163
拉黑 举报 打赏 回复53楼
Warning: Trying to access array offset on value of type bool in /www/wwwroot/www.acocoa.com/wp-content/module/public/function/acocoa/function/jinsom.php on line 163
拉黑 举报 打赏 回复52楼