From 37953b7206b11c909f87eee9b9c66acd08f4f110 Mon Sep 17 00:00:00 2001
From: panliang <1163816051@qq.com>
Date: Fri, 24 Feb 2023 16:35:50 +0800
Subject: [PATCH] store-order
---
.../Controllers/Store/OrderController.php | 30 +++++++------------
.../Store/StockBatchController.php | 4 +--
app/Services/OrderService.php | 4 +--
resources/lang/zh_CN/store-order.php | 3 +-
4 files changed, 16 insertions(+), 25 deletions(-)
diff --git a/app/Admin/Controllers/Store/OrderController.php b/app/Admin/Controllers/Store/OrderController.php
index 774593f3..7b2e9cc9 100644
--- a/app/Admin/Controllers/Store/OrderController.php
+++ b/app/Admin/Controllers/Store/OrderController.php
@@ -65,15 +65,10 @@ class OrderController extends AdminController
{$phone}
HTML;
});
- $grid->column('total_amount')->display(function ($value) {
- return bcdiv($value, 100, 2);
- })->prepend('¥');
- $grid->column('market_price')->display(function ($value) {
- return bcdiv($value, 100, 2);
- })->prepend('¥');
- $grid->column('cost_price')->display(function ($value) {
- return bcdiv($value, 100, 2);
- })->prepend('¥');
+ $grid->column('total_amount')->display(fn ($value) => bcdiv($value, 100, 2))->prepend('¥');
+ $grid->column('market_price')->display(fn ($value) => bcdiv($value, 100, 2))->prepend('¥');
+ $grid->column('cost_price')->display(fn ($value) => bcdiv($value, 100, 2))->prepend('¥');
+ $grid->column('profit_price')->display(fn () => round(($this->total_amount - $this->cost_price) / 100, 2, PHP_ROUND_HALF_DOWN));
$grid->column('sales_value');
$grid->column('order_status')->using($this->statusMap)->dot($this->statusColor);
$grid->column('created_at');
@@ -149,7 +144,7 @@ class OrderController extends AdminController
$market_price = round($query->sum('market_price') / 100, 2, PHP_ROUND_HALF_DOWN);
$cost_price = round($query->sum('cost_price') / 100, 2, PHP_ROUND_HALF_DOWN);
$sales_value = round($query->sum('sales_value'), 2, PHP_ROUND_HALF_DOWN);
- $profit = round($total_amount - $cost_price, 2, PHP_ROUND_HALF_DOWN);
+ $profit_price = round($total_amount - $cost_price, 2, PHP_ROUND_HALF_DOWN);
return <<
@@ -157,7 +152,7 @@ class OrderController extends AdminController
统计 |
订单数: $count |
订单总额: $total_amount |
- 总毛利: $profit |
+ 总毛利: $profit_price |
成长值: $sales_value |
@@ -174,16 +169,11 @@ class OrderController extends AdminController
$show->field('sn');
$show->field('user.phone');
$show->field('inviter.phone');
- $show->field('total_amount')->as(function ($value) {
- return bcdiv($value, 100, 2);
- });
- $show->field('market_price')->as(function ($value) {
- return bcdiv($value, 100, 2);
- });
- $show->field('cost_price')->as(function ($value) {
- return bcdiv($value, 100, 2);
- });
$show->field('products_total_amount')->as(fn($value) => bcdiv($value, 100, 2))->prepend('¥');
+ $show->field('total_amount')->as(fn ($value) => bcdiv($value, 100, 2));
+ $show->field('market_price')->as(fn ($value) => bcdiv($value, 100, 2));
+ $show->field('cost_price')->as(fn ($value) => bcdiv($value, 100, 2));
+ $show->field('profit_price')->as(fn () => round(($this->total_amount - $this->cost_price) / 100, 2, PHP_ROUND_HALF_DOWN));
$show->field('vip_discount_amount')->as(fn ($v) => bcdiv($v, 100, 2))->prepend('- ¥');
$userCouponId = $show->model()->user_coupon_id;
diff --git a/app/Admin/Controllers/Store/StockBatchController.php b/app/Admin/Controllers/Store/StockBatchController.php
index ce6c0a71..23b7341f 100644
--- a/app/Admin/Controllers/Store/StockBatchController.php
+++ b/app/Admin/Controllers/Store/StockBatchController.php
@@ -27,8 +27,8 @@ class StockBatchController extends AdminController
$modal->title('商品记录');
$data = $this->productSkus->map(fn($item) => [
$item->name,
- round($item->sell_price, 2, PHP_ROUND_HALF_DOWN),
- round($item->cost_price, 2, PHP_ROUND_HALF_DOWN),
+ round($item->sell_price / 100, 2, PHP_ROUND_HALF_DOWN),
+ round($item->cost_price / 100, 2, PHP_ROUND_HALF_DOWN),
$item->pivot?->amount
])->all();
return Table::make(['名称', '售价', '成本价', '数量'], $data);
diff --git a/app/Services/OrderService.php b/app/Services/OrderService.php
index 2fd58df4..5b0bfa9c 100644
--- a/app/Services/OrderService.php
+++ b/app/Services/OrderService.php
@@ -383,8 +383,8 @@ class OrderService
$cost_price = 0;
foreach($mapProducts as $item) {
$sku = $item['sku'];
- $market_price += $sku->market_price;
- $cost_price += $sku->cost_price;
+ $market_price += $sku->market_price * $item['quantity'];
+ $cost_price += $sku->cost_price * $item['quantity'];
}
$attrs = [
diff --git a/resources/lang/zh_CN/store-order.php b/resources/lang/zh_CN/store-order.php
index c65271ab..95ca9da9 100644
--- a/resources/lang/zh_CN/store-order.php
+++ b/resources/lang/zh_CN/store-order.php
@@ -26,6 +26,7 @@ return [
'bargain_amount' => '砍价金额',
'shipping_fee' => '运费',
'products_total_amount' => '商品总额',
+ 'product_total_amount'=>'商品总额',
'total_amount' => '订单总额',
'weight' => '订单重量',
'note' => '客户备注',
@@ -48,7 +49,6 @@ return [
'sell_price'=>'价格',
'quantity' => '数量',
'after_sale_state'=>'售后状态',
- 'product_total_amount'=>'总价',
'shipping_company' => '快递公司',
'shipping_number' => '快递单号',
'packages'=>'包裹内容',
@@ -60,6 +60,7 @@ return [
'sales_value' => '成长值',
'market_price' => '市场价',
'cost_price' => '成本价',
+ 'profit_price' => '毛利',
],
'options' => [
],