feat(energy): 电能统计切到 bi_ele_charge_record,外部数据接通
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
- /api/energy/electric/overview & /electric/monthly 不再读 tab_energy_electricity_bill - 改读 bi_ele_charge_record:kwh/fee/start_time - 外部/我司用 vehicle_kind 区分(external/internal) - 电能默认 customer 由 'external' 改 'lingniu',与导入页约定一致 - ElectricDaily 移除「数据对接中…」友好空状态(外部已有数据) ele 导入页同步收紧: - 命中系统车辆=internal,未命中(含车牌为空)一律 external - 移除 unknown 分类、KPI 卡、批次列、过滤按钮、UploadResult 字段 - 历史 unknown 行已 UPDATE 为 external Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -213,7 +213,8 @@ app.post('/import', async (c) => {
|
||||
const values = records.map(r => {
|
||||
const plate = r.values.plate || r.values.judgedPlate;
|
||||
const matchedId = plate ? plateMap.get(plate) || null : null;
|
||||
const kind = matchedId ? 'internal' : (plate ? 'external' : 'unknown');
|
||||
// 命中系统车辆=internal;其余(含车牌为空)一律 external
|
||||
const kind = matchedId ? 'internal' : 'external';
|
||||
return [
|
||||
r.orderNo,
|
||||
r.values.stationNo, r.values.stationName, r.values.terminalName,
|
||||
@@ -234,13 +235,12 @@ app.post('/import', async (c) => {
|
||||
const inserted = result.affectedRows;
|
||||
const dbDuplicates = records.length - inserted;
|
||||
|
||||
// 统计内/外/未知
|
||||
let internal = 0, external = 0, unknown = 0;
|
||||
// 统计内/外(无车牌也算外部)
|
||||
let internal = 0, external = 0;
|
||||
for (const r of records) {
|
||||
const plate = r.values.plate || r.values.judgedPlate;
|
||||
if (plate && plateMap.has(plate)) internal++;
|
||||
else if (plate) external++;
|
||||
else unknown++;
|
||||
else external++;
|
||||
}
|
||||
|
||||
return c.json({
|
||||
@@ -251,7 +251,7 @@ app.post('/import', async (c) => {
|
||||
fileDuplicates,
|
||||
inserted,
|
||||
dbDuplicates,
|
||||
breakdown: { internal, external, unknown },
|
||||
breakdown: { internal, external },
|
||||
});
|
||||
});
|
||||
|
||||
@@ -268,7 +268,7 @@ app.get('/list', async (c) => {
|
||||
|
||||
const where: string[] = ['1=1'];
|
||||
const params: (string | number)[] = [];
|
||||
if (kind === 'internal' || kind === 'external' || kind === 'unknown') {
|
||||
if (kind === 'internal' || kind === 'external') {
|
||||
where.push('vehicle_kind = ?');
|
||||
params.push(kind);
|
||||
}
|
||||
@@ -313,7 +313,6 @@ app.get('/batches', async (c) => {
|
||||
COUNT(*) AS records,
|
||||
SUM(CASE WHEN vehicle_kind='internal' THEN 1 ELSE 0 END) AS internal_count,
|
||||
SUM(CASE WHEN vehicle_kind='external' THEN 1 ELSE 0 END) AS external_count,
|
||||
SUM(CASE WHEN vehicle_kind='unknown' THEN 1 ELSE 0 END) AS unknown_count,
|
||||
ROUND(SUM(kwh), 2) AS total_kwh,
|
||||
ROUND(SUM(fee), 2) AS total_fee
|
||||
FROM bi_ele_charge_record
|
||||
|
||||
Reference in New Issue
Block a user