统一91卡券环境变量命名
This commit is contained in:
@@ -25,5 +25,5 @@ ADMIN_SESSION_SECRET=dev-local-session-secret
|
|||||||
ADMIN_DEFAULT_USERS_JSON=[{"username":"admin","password":"dev-admin-123456","role":"admin"},{"username":"operator","password":"dev-operator-123456","role":"operator"}]
|
ADMIN_DEFAULT_USERS_JSON=[{"username":"admin","password":"dev-admin-123456","role":"admin"},{"username":"operator","password":"dev-operator-123456","role":"operator"}]
|
||||||
|
|
||||||
# 91Kaquan
|
# 91Kaquan
|
||||||
NINETYONE_USER_ID=
|
KAQUAN91_USER_ID=
|
||||||
NINETYONE_SECRET=
|
KAQUAN91_SECRET=
|
||||||
|
|||||||
+2
-2
@@ -24,5 +24,5 @@ ADMIN_SESSION_SECRET=change-me-long-random-session-secret
|
|||||||
ADMIN_DEFAULT_USERS_JSON=[{"username":"admin","password":"change-me-admin-password","role":"admin"},{"username":"operator","password":"change-me-operator-password","role":"operator"}]
|
ADMIN_DEFAULT_USERS_JSON=[{"username":"admin","password":"change-me-admin-password","role":"admin"},{"username":"operator","password":"change-me-operator-password","role":"operator"}]
|
||||||
|
|
||||||
# 91Kaquan
|
# 91Kaquan
|
||||||
NINETYONE_USER_ID=
|
KAQUAN91_USER_ID=
|
||||||
NINETYONE_SECRET=
|
KAQUAN91_SECRET=
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ cp .env.server.example .env
|
|||||||
- `DATABASE_URL`:PostgreSQL 连接串
|
- `DATABASE_URL`:PostgreSQL 连接串
|
||||||
- `ADMIN_SESSION_SECRET`:后台登录态签名密钥
|
- `ADMIN_SESSION_SECRET`:后台登录态签名密钥
|
||||||
- `ADMIN_DEFAULT_USERS_JSON`:默认后台用户
|
- `ADMIN_DEFAULT_USERS_JSON`:默认后台用户
|
||||||
- `NINETYONE_USER_ID` / `NINETYONE_SECRET`:91 卡券开放接口凭据
|
- `KAQUAN91_USER_ID` / `KAQUAN91_SECRET`:91 卡券开放接口凭据
|
||||||
|
|
||||||
## 运行数据
|
## 运行数据
|
||||||
|
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ npm test
|
|||||||
- 数据库连接 `DATABASE_URL`
|
- 数据库连接 `DATABASE_URL`
|
||||||
- 后台登录密钥 `ADMIN_SESSION_SECRET`
|
- 后台登录密钥 `ADMIN_SESSION_SECRET`
|
||||||
- 默认后台用户 `ADMIN_DEFAULT_USERS_JSON`
|
- 默认后台用户 `ADMIN_DEFAULT_USERS_JSON`
|
||||||
- 91 卡券开放接口凭据 `NINETYONE_USER_ID` / `NINETYONE_SECRET`
|
- 91 卡券开放接口凭据 `KAQUAN91_USER_ID` / `KAQUAN91_SECRET`
|
||||||
|
|
||||||
## 接口
|
## 接口
|
||||||
|
|
||||||
|
|||||||
@@ -13,6 +13,8 @@ test('applyEnvOverrides maps typed environment values without mutating base conf
|
|||||||
DATA_ROOT: './tmp/backend-data',
|
DATA_ROOT: './tmp/backend-data',
|
||||||
DATABASE_SSL: 'yes',
|
DATABASE_SSL: 'yes',
|
||||||
ADMIN_DEFAULT_USERS_JSON: '[{"username":"admin","password":"secret","role":"admin"}]',
|
ADMIN_DEFAULT_USERS_JSON: '[{"username":"admin","password":"secret","role":"admin"}]',
|
||||||
|
KAQUAN91_USER_ID: 'kaquan-user',
|
||||||
|
KAQUAN91_SECRET: 'kaquan-secret',
|
||||||
CLOUDTENTACLES_DEVICE_TYPE: '3',
|
CLOUDTENTACLES_DEVICE_TYPE: '3',
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -22,6 +24,8 @@ test('applyEnvOverrides maps typed environment values without mutating base conf
|
|||||||
assert.deepEqual(config.admin.defaultUsers, [
|
assert.deepEqual(config.admin.defaultUsers, [
|
||||||
{ username: 'admin', password: 'secret', role: 'admin' },
|
{ username: 'admin', password: 'secret', role: 'admin' },
|
||||||
])
|
])
|
||||||
|
assert.equal(config.platforms.ninetyone.userId, 'kaquan-user')
|
||||||
|
assert.equal(config.platforms.ninetyone.secret, 'kaquan-secret')
|
||||||
assert.equal(config.platforms.cloudtentacles.deviceType, 3)
|
assert.equal(config.platforms.cloudtentacles.deviceType, 3)
|
||||||
|
|
||||||
assert.equal(baseConfig.server.port, 3000)
|
assert.equal(baseConfig.server.port, 3000)
|
||||||
|
|||||||
@@ -38,17 +38,17 @@ export const ENV_OVERRIDES: readonly EnvOverride[] = [
|
|||||||
stringEnv("ADMIN_SESSION_SECRET", ["admin", "sessionSecret"]),
|
stringEnv("ADMIN_SESSION_SECRET", ["admin", "sessionSecret"]),
|
||||||
integerEnv("ADMIN_SESSION_TTL_HOURS", ["admin", "sessionTtlHours"]),
|
integerEnv("ADMIN_SESSION_TTL_HOURS", ["admin", "sessionTtlHours"]),
|
||||||
adminUsersJsonEnv("ADMIN_DEFAULT_USERS_JSON", ["admin", "defaultUsers"]),
|
adminUsersJsonEnv("ADMIN_DEFAULT_USERS_JSON", ["admin", "defaultUsers"]),
|
||||||
stringEnv("NINETYONE_USER_ID", ["platforms", "ninetyone", "userId"]),
|
stringEnv("KAQUAN91_USER_ID", ["platforms", "ninetyone", "userId"]),
|
||||||
stringEnv("NINETYONE_SECRET", ["platforms", "ninetyone", "secret"]),
|
stringEnv("KAQUAN91_SECRET", ["platforms", "ninetyone", "secret"]),
|
||||||
stringEnv("NINETYONE_VERSION", ["platforms", "ninetyone", "version"]),
|
stringEnv("KAQUAN91_VERSION", ["platforms", "ninetyone", "version"]),
|
||||||
stringEnv("NINETYONE_SHOP_ID", ["platforms", "ninetyone", "shopId"]),
|
stringEnv("KAQUAN91_SHOP_ID", ["platforms", "ninetyone", "shopId"]),
|
||||||
stringEnv("NINETYONE_SHOP_NAME", ["platforms", "ninetyone", "shopName"]),
|
stringEnv("KAQUAN91_SHOP_NAME", ["platforms", "ninetyone", "shopName"]),
|
||||||
integerEnv("NINETYONE_TIMESTAMP_TOLERANCE_SECONDS", [
|
integerEnv("KAQUAN91_TIMESTAMP_TOLERANCE_SECONDS", [
|
||||||
"platforms",
|
"platforms",
|
||||||
"ninetyone",
|
"ninetyone",
|
||||||
"timestampToleranceSeconds",
|
"timestampToleranceSeconds",
|
||||||
]),
|
]),
|
||||||
stringEnv("NINETYONE_CARDS_ENCODING", [
|
stringEnv("KAQUAN91_CARDS_ENCODING", [
|
||||||
"platforms",
|
"platforms",
|
||||||
"ninetyone",
|
"ninetyone",
|
||||||
"cardsEncoding",
|
"cardsEncoding",
|
||||||
|
|||||||
+7
-7
@@ -100,13 +100,13 @@ platforms: {
|
|||||||
|
|
||||||
建议环境变量:
|
建议环境变量:
|
||||||
|
|
||||||
- `NINETYONE_USER_ID`
|
- `KAQUAN91_USER_ID`
|
||||||
- `NINETYONE_SECRET`
|
- `KAQUAN91_SECRET`
|
||||||
- `NINETYONE_VERSION`
|
- `KAQUAN91_VERSION`
|
||||||
- `NINETYONE_SHOP_ID`
|
- `KAQUAN91_SHOP_ID`
|
||||||
- `NINETYONE_SHOP_NAME`
|
- `KAQUAN91_SHOP_NAME`
|
||||||
- `NINETYONE_TIMESTAMP_TOLERANCE_SECONDS`
|
- `KAQUAN91_TIMESTAMP_TOLERANCE_SECONDS`
|
||||||
- `NINETYONE_CARDS_ENCODING`
|
- `KAQUAN91_CARDS_ENCODING`
|
||||||
|
|
||||||
## 6. 签名设计
|
## 6. 签名设计
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user