diff --git a/app/admin/controller/store_product_price/StoreProductPriceController.php b/app/admin/controller/store_product_price/StoreProductPriceController.php
index 650fef664..b67b98dac 100644
--- a/app/admin/controller/store_product_price/StoreProductPriceController.php
+++ b/app/admin/controller/store_product_price/StoreProductPriceController.php
@@ -108,4 +108,11 @@ class StoreProductPriceController extends BaseAdminController
         return $this->success('导出成功', ['url' => $file_path]);
     }
 
+    public function chart()
+    {
+        $params = $this->request->get();
+        $data = StoreProductPriceLogic::chart($params);
+        return $this->data($data);
+    }
+
 }
\ No newline at end of file
diff --git a/app/admin/logic/store_product_price/StoreProductPriceLogic.php b/app/admin/logic/store_product_price/StoreProductPriceLogic.php
index 60446342b..47aa10ac1 100644
--- a/app/admin/logic/store_product_price/StoreProductPriceLogic.php
+++ b/app/admin/logic/store_product_price/StoreProductPriceLogic.php
@@ -243,4 +243,26 @@ class StoreProductPriceLogic extends BaseLogic
         return (new StoreProductPriceXlsx())->export($data);
     }
 
+    public static function chart($params)
+    {
+        $list = StoreProductPrice::where('product_id', $params['product_id'])
+            ->field('id,purchase_price,purchase,create_time')
+            ->order('id desc')->limit(30)
+            ->select()->toArray();
+        foreach ($list as &$item) {
+            $item['date'] = date('m-d', strtotime($item['create_time']));
+            if ($params['type'] == 1) {
+                $item['price'] = $item['purchase_price'];
+            } else {
+                $item['price'] = $item['purchase'];
+            }
+        }
+        $data = [
+            'name' => '价格趋势',
+            'series' => [['name' => '价格', 'value' => array_column($list, 'price')]],
+            'x' => array_column($list, 'date'),
+        ];
+        return $data;
+    }
+
 }