京准通增加记账时间 (#168)

京准通明细及 CSV 增加数据库记账时间字段。
This commit is contained in:
chenxi 2026-09-12 13:42:19 +08:00
parent 2d3e9cd865
commit 0ae8afb0e8
4 changed files with 10 additions and 3 deletions

View File

@ -1545,7 +1545,7 @@ class Pages extends Controller
if ($platform === 'jd') {
fputcsv($csv, [
'平台', '店铺', '账户', '日期', '收支类型', '交易类型',
'平台', '店铺', '账户', '日期', '记账时间', '收支类型', '交易类型',
'金额(元)', '余额(元)', '备注',
]);
foreach ($data['jd'] ?? [] as $row) {
@ -1553,7 +1553,8 @@ class Pages extends Controller
'京东京准通',
$row['shop_name'] ?? '',
$row['account'] ?? '',
$row['show_date'] ?? $row['settle_datetime'] ?? '',
$row['show_date'] ?? '',
$row['settle_datetime'] ?? '',
$row['in_out_type_name'] ?? '',
$row['trade_type_name'] ?? '',
$row['amount'] ?? '',

View File

@ -11,7 +11,7 @@
$titles = ['jd' => '京东京准通', 'douyin' => '抖音千川', 'dewu' => '得物推广账户', 'vip' => '唯品会推广流水'];
$filterLabel = $platform === 'vip' ? $titles[$platform] . '筛选' : $titles[$platform] . '推广账户筛选';
$columns = match ($platform) {
'jd' => [['shop_name', '店铺'], ['account', '账户'], ['show_date', '日期'], ['in_out_type_name', '收支类型'], ['trade_type_name', '交易类型'], ['amount', '金额'], ['balance_amount', '余额'], ['remark', '备注']],
'jd' => [['shop_name', '店铺'], ['account', '账户'], ['show_date', '日期'], ['settle_datetime', '记账时间'], ['in_out_type_name', '收支类型'], ['trade_type_name', '交易类型'], ['amount', '金额'], ['balance_amount', '余额'], ['remark', '备注']],
'douyin' => [['shopName', '店铺'], ['account', '账户'], ['qianchuanAavid', '广告账户'], ['statDate', '日期'], ['cost', '花费'], ['income', '收入'], ['transferIn', '转入'], ['transferOut', '转出'], ['balance', '余额'], ['status', '状态'], ['remark', '备注']],
'dewu' => [['shop_name', '店铺'], ['account', '账户'], ['trade_date', '日期'], ['amount_type', '金额类型'], ['flow_type', '收支类型'], ['trade_amount_yuan', '金额'], ['balance_yuan', '余额'], ['remark', '备注']],
default => [

View File

@ -32,6 +32,8 @@ class MarketingPlatformPromotionBillsTest extends FeatureTestCase
->assertSeeText('京东京准通')
->assertSee('aria-label="京东京准通推广账户筛选"', false)
->assertSeeText('测试店铺')
->assertSeeText('记账时间')
->assertSeeText('2026-08-02 09:10:57')
->assertSeeText('收支类型')
->assertSeeText('出账')
->assertSeeText('导出 CSV')
@ -78,6 +80,8 @@ class MarketingPlatformPromotionBillsTest extends FeatureTestCase
$this->assertStringContainsString('测试店铺', $csv);
$this->assertStringContainsString('收支类型', $csv);
$this->assertStringContainsString('交易类型', $csv);
$this->assertStringContainsString('记账时间', $csv);
$this->assertStringContainsString('2026-08-02 09:10:57', $csv);
$this->assertStringContainsString('出账', $csv);
$this->assertStringContainsString('推广费', $csv);
}
@ -202,6 +206,7 @@ class MarketingPlatformPromotionBillsTest extends FeatureTestCase
'shop_name' => '测试店铺',
'account' => 'account-01',
'show_date' => '2026-08-01',
'settle_datetime' => '2026-08-02 09:10:57',
'in_out_type_name' => '出账',
'trade_type_name' => '推广费',
'amount' => 100,

View File

@ -22,6 +22,7 @@ class PlatformPromotionAccountRepositoryTest extends TestCase
$query->shouldReceive('select')->once()->ordered()->with(
Mockery::on(static fn (string $sql): bool => str_contains($sql, 'SELECT TOP 5000')
&& str_contains($sql, 'jd_jzt_finance_records')
&& str_contains($sql, 'settle_datetime')
&& str_contains($sql, 'in_out_type_name')),
['2026-08'],
)->andReturn([['shop_name' => '测试店铺', 'amount' => 100]]);