首页 > 解决方案 > 为支付交易生成唯一订单 ID 的最佳方法?

问题描述

目前,我正在使用简单的线性加法来生成新的订单 ID,例如 110000、110001、110002……但在这种方法中,任何人都可以计算在我的应用程序上下达的订单数量。因此,我想添加一种新方法,其中订单 ID 可读但用户无法理解。我想在我的 android 应用程序中使用它。那么我可以做些什么来使用一些逻辑或 3rd 方库来实现这一点?

标签: androidpayment-gatewaypaytm

解决方案


嗨,您可以通过计算生成非顺序唯一 ID

val idForUser = (9369712273 * dbId + 1365089121) % 999999937

更新:为了在插入后自动设置字段值创建触发器并设置 idForUser 值

CREATE TRIGGER id_generator
AFTER INSERT ON table_name
FOR EACH ROW
BEGIN
   UPDATE table_name SET idForUser = (9369712273 * _id + 1365089121) % 999999937 WHERE _id = NEW._id;
END;

推荐阅读