项目启动报错

  1. 检查是否复制了 application.yml 文件
  2. jdk版本 1.8

OSS配置

(1)公钥和私钥桶配置
(2)要设置跨域配置

扩展知识

文件上传分为 公共读 和私有读。
公共读比如: 图片, 头像这些。
私有读比如: 证书, 一些敏感文件。

A、 文件上传使用【本地文件上传】时:

  1. 上传头像图片公共读时的流程: 用户 –》 浏览器 –》上传图片到本地服务器, 并保存在: 【isys.oss.file-public-path】配置文件夹内。 –》 响应的地址为 【公共oss访问地址(系统设置中的配置项) + 文件路径】, 比如: https://mgr.xxxxxpay.com/api/anon/localOssFiles/1232.png

  2. 上传证书文件流程: 用户 –》 浏览器 –》上传文件,保存在: 【isys.oss.file-private-path】配置文件夹内。 无外网下载地址。 仅可通过程序读取。

B、 文件上传使用【阿里云OSS】时:

  1. 上传头像图片公共读时的流程: 用户 –》 浏览器 –》 图片文件直传到OSS公共读桶( 直传技术文档: https://help.aliyun.com/document_detail/112718.html), 本地不保留, 返回访问地址例如: https://public.oss-cn-beijing.aliyuncs.com/applyment/fj-test-test-test.jpg

  2. 上传证书文件流程: 用户 –》 浏览器 –》上传文件, 图片文件直传到OSS私有桶 , 无外网下载地址, 当应用需要读取文件时会自动下载并保存在: 【isys.oss.file-private-path】配置文件夹内, 避免下载再次下载影响效率。

Linux下启动脚本报错

场景:在windows下将app.sh上传至linux服务器,执行启动时报如下错误提示

解决:windows系统下的文件格式和unix下不同,使用ftp等软件上传到unix服务器上的文件都需要转换为unix格式后,才可以使用;使用命令:

dos2unix  $filename

转换后,就可以了。

Uniapp 安卓签名证书生成指南

https://ask.dcloud.net.cn/article/35777

Hbuilder相关知识介绍

Hbuilder 入门教程: https://hx.dcloud.net.cn/Tutorial/StartedTutorial

manifest.json文件配置: https://uniapp.dcloud.net.cn/collocation/manifest.html

DCloud appid 用途/作用/使用说明 : https://ask.dcloud.net.cn/article/35907

如何配置aliyunRocketMQ

jeepay plus现已全面支持 aliyunRocketMQ, 但是此服务相比其他三种MQ配置稍微有些繁琐一些。

  1. 服务的开通和基础信息建设

1.1 开通阿里云ONS服务 (https://ons.console.aliyun.com/overview)
1.2 创建实例
1.3 进入实例详情、 点击【 接入点 】
1.4 TCP 协议接入点的【接入点和网络信息】 需要配置到项目中。
1.5 Topic管理 –》 新建 【普通消息】

名称 备注
QUEUE_APP_PUSH (订单支付成功app推送)
QUEUE_CLEAN_AGENT_LOGIN_AUTH_CACHE (清除代理商登录消息)
QUEUE_CLEAN_MCH_LOGIN_AUTH_CACHE (清除商户登录消息)
QUEUE_PAY_ORDER_DIVISION (支付订单分账消息)
QUEUE_PAY_ORDER_MCH_NOTIFY (支付订单商户消息)
QUEUE_PAY_ORDER_REISSUE (支付订单补单消息)
QUEUE_PUSH_PRINTER (订单支付成功云打印通知消息)
QUEUE_PUSH_SPEAKER (订单支付成功云喇叭通知消息)
QUEUE_PUSH_WX_MP_MSG (订单支付成功消息通知)
QUEUE_SETT_ORDER_MCH (支付宝直付通订单结算消息)
QUEUE_PAY_ORDER_CASHOUT (订单支付成功自动提现(渠道侧)消息)
BROADCAST_RESET_APP_CONFIG (更新系统配置参数消息)
BROADCAST_RESET_ISV_MCH_APP_INFO_CONFIG (更新服务商/商户/商户应用配置信息消息)

1.6 Group 管理 –》新建 TCP协议Group

名称 备注
GID_JEEPAY_MANAGER_BROADCAST (运营平台_广播分组)
GID_JEEPAY_PAYMENT_QUEUE (支付网关_队列分组)
GID_JEEPAY_PAYMENT_BROADCAST (支付网关_广播分组)
GID_JEEPAY_MERCHANT_QUEUE (商户系统_队列分组)
GID_JEEPAY_MERCHANT_BROADCAST (商户系统_广播分组)
GID_JEEPAY_AGENT_QUEUE (代理商系统_队列分组)
GID_JEEPAY_AGENT_BROADCAST (代理商系统_广播分组)

1.7 更改项目下的yml配置

aliyun-rocketmq:
namesrvAddr: 1.4中的地址
accessKey: 阿里云访问控制中查看
secretKey:
groupIdPrefix: GID_JEEPAY_ # 与1.6中的对应

1.8 更改application.yml 中的mq.vender改为: aliYunRocketMQ

1.9 更改jeepay-components/jeepay-components-mq/pom.xml
AliyunRocketMQ 删除provided节点
其他MQ改为 provided或者删除依赖。 并且将配置注释掉。

其他知识

阿里云ROCKETMQ,在消费者端的gid下的机器要求所有的监听topID是一样的, 如果不一样可能出现丢失消息的情况。
消息模式也应该是一样的(文档没有写,但是在 【消息队列 RocketMQ 版/实例列表/Group 管理/Group 详情】)
可以清晰的看到 消费模式, 是放置在上面的, 也就是需要是一样的。 !

【消息队列 RocketMQ 版/实例列表/Group 管理/Group 详情】 如果有异常, 这里可以清晰的看到。

阿里云文档 :https://help.aliyun.com/document_detail/43523.html?spm=5176.rocketmq.help.dexternal.4370176fcn7PRB

GroupID命名规则: 前缀 + 系统名称 + 模式
示例:
GID_JEEPAY_MANAGER_BROADCAST : 运营平台广播分组
GID
JEEPAY_PAYMENT_QUEUE : 支付网关队列分组
GID
JEEPAY_PAYMENT_BROADCAST : 支付网关_广播分组

SQL执行问题

部署项目时,根据自己的实际情况执行sql。如果是首次部署,执行所有的以init_开头的sql和channel.sq语句即可。其他sql为升级时对应版本的sql。

sql语句说明参考:https://docs.jeequan.com/docs/jeepay-plus/jeepay-plus-1doq37i2jnsf1

码牌字体显示乱码

配置码牌时,字体显示不正常。这是因为系统未配置字体导致。按以下方法配置字体(字体在项目根目录docs/fonts下),重启项目。

小程序发布类目选择什么

商户通和展业宝小程序添加服务类目,可选择:工具 > 查询 。
聚合码小程序添加服务类目,可选择:商业服务 > 软件/建站/技术开发。

聚合码cashier项目打包失败

预编译报错:代码使用了sass语言,但未安装相应的编译插件
解决方法:安装该插件。(已有该插件依然报错,卸载原有插件并重新安装)

下单请求收银台404

nginx配置(payment)添加:

#解决vue刷新404问题
try_files $uri $uri/ /cashier/index.html;

小程序打包问题

【以下代码配置修改时请务必确保ctrl + s保存成功后,再进行编译,运行到微信开发工具。】

  1. 商户通的.env中地址配置为商户服务端地址。
  2. 展业宝的.env中地址配置为代理商服务端地址。
  3. 先install,再执行打包。
  4. 打包出现文件查找失败问题,升级Hbuilder版本。
  5. 发布小程序时提示包大小超了,将微信开发者工具项目基本设置中的ES6转ES5勾选去掉
  6. 小程上传失败:插件未授权使用。登录小程序添加位置选点插件。

图片上传问题

确保已配置阿里云oss文件上传,且点击保存,如其他端未同步到图片,请检查mq是否正常运行
问题:出现上传异常,查看是否为跨域问题,如果出现跨域问题请配置阿里云跨域访问。
跨域规则设置:1.来源设置为* 2.允许Methods勾选 3.允许Headers设置为 *
上传成功并返回图片地址,服务端后台正常,但小程序显示请求异常问题。
小程序服务器域名设置:uploadFile合法域名,配置增加阿里云oss地址。

百度语音业务开通

仅短文本在线合成接口即可。且保证百度账号对该业务进行充值。

Node 版本

建议为:16.xx.xx版本

涉及到数据库加密的报错

​ a、检查 db-encrypt-secret 密钥配置是否更改,更改将导致旧数据无法解密

​ b、mq未正常启动,启动项目时未加载配置

​ 1、是不是重启过服务器
​ 2、mq连接串是不是本地或内网IP
​ 3、检查内网环境是否稳定

阿里OCR识别失败

阿里OCR识别失败,图片上传地址也是阿里OSS。如上提示,由于服务器时间不是标准时间,和阿里相差超过15分钟,会报这个错。

npm打包内容溢出

解决: 在打包时增加内容容量,即在项目所在位置的命令行执行:

linux、mac、jenkins下

export NODE_OPTIONS=--max_old_space_size=4096

windows下:

set NODE_OPTIONS=--max_old_space_size=4096

数据库异常sql_mode=only_full_group_by问题

当数据库报错提示:In aggregated query without GROUP BY … sql_mode=only_full_group_by

该错误是由于mysql 5.7后,默认开启了SQL_MODE严格模式导致。

修改mysql配置,将sql_mode中的only_full_group_by去掉,然后重启服务。

如使用的RDS数据库,可在参数配置中修改。

其他常见问题

详见: https://docs.jeequan.com/docs/jeepay/jeepay-1d99ciatu11h5#booj5l

文档更新时间: 2024-07-10 10:31   作者:大森林