This commit is contained in:
张成
2025-12-19 22:24:23 +08:00
parent abe2ae3c3a
commit 10aff2f266
12 changed files with 1101 additions and 147 deletions

View File

@@ -38,7 +38,7 @@ class AuthorizationService {
return {
is_authorized: false,
remaining_days: 0,
message: '账号未授权,请联系管理员'
message: '账号未授权,请购买使用权限后使用'
};
}
@@ -53,7 +53,7 @@ class AuthorizationService {
return {
is_authorized: false,
remaining_days: 0,
message: '账号授权已过期,请联系管理员续费'
message: '账号使用权限已到期,请充值续费后使用'
};
}

View File

@@ -7,6 +7,7 @@ const db = require('../middleware/dbProxy');
const scheduleManager = require('../middleware/schedule/index.js');
const locationService = require('./locationService');
const authorizationService = require('./authorization_service');
const { addRemainingDays, addRemainingDaysToAccounts } = require('../utils/account_utils');
class PlaAccountService {
/**
@@ -33,7 +34,8 @@ class PlaAccountService {
accountData.is_logged_in = false;
}
return accountData;
// 添加 remaining_days 字段
return addRemainingDays(accountData);
}
/**
@@ -71,7 +73,8 @@ class PlaAccountService {
accountData.is_logged_in = false;
}
return accountData;
// 添加 remaining_days 字段
return addRemainingDays(accountData);
}
/**
@@ -125,9 +128,12 @@ class PlaAccountService {
return accountData;
});
// 为所有账号添加 remaining_days 字段
const rowsWithRemainingDays = addRemainingDaysToAccounts(rows);
return {
count: result.count,
rows
rows: rowsWithRemainingDays
};
}
@@ -139,7 +145,7 @@ class PlaAccountService {
async createAccount(data) {
const pla_account = db.getModel('pla_account');
const { name, sn_code, platform_type, login_name, pwd, keyword, ...otherData } = data;
const { name, sn_code, platform_type, login_name, pwd, keyword, remaining_days, ...otherData } = data;
if (!name || !sn_code || !platform_type || !login_name) {
throw new Error('账户名、设备SN码、平台和登录名为必填项');
@@ -157,6 +163,9 @@ class PlaAccountService {
...otherData
};
// 过滤掉虚拟字段 remaining_days它是计算字段不应该保存到数据库
delete processedData.remaining_days;
booleanFields.forEach(field => {
if (processedData[field] !== undefined && processedData[field] !== null) {
processedData[field] = processedData[field] ? 1 : 0;
@@ -189,6 +198,10 @@ class PlaAccountService {
// 将布尔字段从 true/false 转换为 0/1确保数据库兼容性
const booleanFields = ['auto_deliver', 'auto_chat', 'auto_reply', 'auto_active'];
const processedData = { ...updateData };
// 过滤掉虚拟字段 remaining_days它是计算字段不应该保存到数据库
delete processedData.remaining_days;
booleanFields.forEach(field => {
if (processedData[field] !== undefined && processedData[field] !== null) {
processedData[field] = processedData[field] ? 1 : 0;