diff --git a/app/common/model/store/order/StoreOrderLevel.php b/app/common/model/store/order/StoreOrderLevel.php
new file mode 100644
index 0000000..1865174
--- /dev/null
+++ b/app/common/model/store/order/StoreOrderLevel.php
@@ -0,0 +1,47 @@
+<?php
+
+// +----------------------------------------------------------------------
+// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
+// +----------------------------------------------------------------------
+// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.
+// +----------------------------------------------------------------------
+// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
+// +----------------------------------------------------------------------
+// | Author: CRMEB Team <admin@crmeb.com>
+// +----------------------------------------------------------------------
+
+
+namespace app\common\model\store\order;
+
+
+use app\common\model\BaseModel;
+
+/**
+ * Class StoreOrderStatus
+ * @package app\common\model\store\order
+ * @author xaboy
+ * @day 2020/6/12
+ */
+class StoreOrderLevel extends BaseModel
+{
+
+    /**
+     * @return string|null
+     * @author xaboy
+     * @day 2020/6/12
+     */
+    public static function tablePk(): ?string
+    {
+        return 'id';
+    }
+
+    /**
+     * @return string
+     * @author xaboy
+     * @day 2020/6/12
+     */
+    public static function tableName(): string
+    {
+        return 'order_level';
+    }
+}
diff --git a/app/common/repositories/store/order/StoreOrderRepository.php b/app/common/repositories/store/order/StoreOrderRepository.php
index 4cdc6c5..6c357f0 100644
--- a/app/common/repositories/store/order/StoreOrderRepository.php
+++ b/app/common/repositories/store/order/StoreOrderRepository.php
@@ -51,6 +51,7 @@ use Exception;
 use FormBuilder\Factory\Elm;
 use FormBuilder\Form;
 use http\Exception\InvalidArgumentException;
+use app\common\model\store\order\StoreOrderLevel;
 use crmeb\jobs\OrderPartnerJob;
 use think\db\exception\DataNotFoundException;
 use think\db\exception\DbException;
@@ -2292,4 +2293,45 @@ class StoreOrderRepository extends BaseRepository
         }
         return $query->select();
     }
+
+    public function getAllLevel()
+    {
+        $list = StoreOrderLevel::getDB()->select()->toArray();
+        return $list;
+    }
+
+    public function getLevelDetail($id)
+    {
+        $data = StoreOrderLevel::getDB()->where('id', '=', $id)->find()->toArray();
+        return $data;
+    }
+
+    public function getOrderLevel($level, $id = null)
+    {
+        if (empty($id)) {
+            $data = StoreOrderLevel::getDB()->where('level', '=', $level)->find();
+        } else {
+            $data = StoreOrderLevel::getDB()->where('level', '=', $level)
+                ->where('id', '<>', $id)
+                ->find();
+        }
+        return $data;
+    }
+
+    public function getLevelDelete($id)
+    {
+        return StoreOrderLevel::getDB()->where('id', '=', $id)->delete();
+    }
+
+    public function createOrderLevel($data)
+    {
+        return StoreOrderLevel::getDB()->insert($data);
+    }
+
+    public function updateOrderLevel($data)
+    {
+        $id = $data['id'];
+        unset($data['id']);
+        return StoreOrderLevel::getDB()->where('id', '=', $id)->update($data);
+    }
 }
diff --git a/app/controller/admin/order/Order.php b/app/controller/admin/order/Order.php
index e505071..387b0c1 100644
--- a/app/controller/admin/order/Order.php
+++ b/app/controller/admin/order/Order.php
@@ -34,7 +34,7 @@ class Order extends BaseController
     public function lst($id)
     {
         [$page, $limit] = $this->getPage();
-        $where = $this->request->params(['date','order_sn','order_type','keywords','username','activity_type','group_order_sn','store_name']);
+        $where = $this->request->params(['date', 'order_sn', 'order_type', 'keywords', 'username', 'activity_type', 'group_order_sn', 'store_name']);
         $where['reconciliation_type'] = $this->request->param('status', 1);
         $where['mer_id'] = $id;
         return app('json')->success($this->repository->adminMerGetList($where, $page, $limit));
@@ -58,9 +58,10 @@ class Order extends BaseController
 
     public function title()
     {
-        $where = $this->request->params(['type', 'date', 'mer_id','keywords','status','username','order_sn','is_trader','activity_type']);
+        $where = $this->request->params(['type', 'date', 'mer_id', 'keywords', 'status', 'username', 'order_sn', 'is_trader', 'activity_type']);
         return app('json')->success($this->repository->getStat($where, $where['status']));
     }
+
     /**
      * TODO
      * @return mixed
@@ -70,14 +71,14 @@ class Order extends BaseController
     public function getAllList()
     {
         [$page, $limit] = $this->getPage();
-        $where = $this->request->params(['type', 'date', 'mer_id','keywords','status','username','order_sn','is_trader','activity_type','group_order_sn','store_name']);
+        $where = $this->request->params(['type', 'date', 'mer_id', 'keywords', 'status', 'username', 'order_sn', 'is_trader', 'activity_type', 'group_order_sn', 'store_name']);
         $data = $this->repository->adminGetList($where, $page, $limit);
         return app('json')->success($data);
     }
 
     public function takeTitle()
     {
-        $where = $this->request->params(['date','order_sn','keywords','username','is_trader']);
+        $where = $this->request->params(['date', 'order_sn', 'keywords', 'username', 'is_trader']);
         $where['take_order'] = 1;
         $where['status'] = '';
         $where['verify_date'] = $where['date'];
@@ -94,7 +95,7 @@ class Order extends BaseController
     public function getTakeList()
     {
         [$page, $limit] = $this->getPage();
-        $where = $this->request->params(['date','order_sn','keywords','username','is_trader']);
+        $where = $this->request->params(['date', 'order_sn', 'keywords', 'username', 'is_trader']);
         $where['take_order'] = 1;
         $where['status'] = '';
         $where['verify_date'] = $where['date'];
@@ -110,7 +111,7 @@ class Order extends BaseController
      */
     public function chart()
     {
-        return app('json')->success($this->repository->OrderTitleNumber(null,null));
+        return app('json')->success($this->repository->OrderTitleNumber(null, null));
     }
 
     /**
@@ -121,7 +122,7 @@ class Order extends BaseController
      */
     public function takeChart()
     {
-        return app('json')->success($this->repository->OrderTitleNumber(null,1));
+        return app('json')->success($this->repository->OrderTitleNumber(null, 1));
     }
 
     /**
@@ -146,7 +147,7 @@ class Order extends BaseController
     public function status($id)
     {
         [$page, $limit] = $this->getPage();
-        $where = $this->request->params(['date','user_type']);
+        $where = $this->request->params(['date', 'user_type']);
         $where['id'] = $id;
         return app('json')->success($this->repository->getOrderStatus($where, $page, $limit));
     }
@@ -162,7 +163,7 @@ class Order extends BaseController
     {
         if (!$this->repository->getWhereCount(['order_id' => $id, 'delivery_type' => 1]))
             return app('json')->fail('订单信息或状态错误');
-        return app('json')->success($this->repository->express($id,null));
+        return app('json')->success($this->repository->express($id, null));
     }
 
     public function reList($id)
@@ -179,8 +180,8 @@ class Order extends BaseController
      */
     public function excel()
     {
-        $where = $this->request->params(['type', 'date', 'mer_id','keywords','status','username','order_sn','take_order']);
-        if($where['take_order']){
+        $where = $this->request->params(['type', 'date', 'mer_id', 'keywords', 'status', 'username', 'order_sn', 'take_order']);
+        if ($where['take_order']) {
             $where['verify_date'] = $where['date'];
             unset($where['date']);
         }
@@ -201,4 +202,52 @@ class Order extends BaseController
         $data = $this->repository->childrenList($id, 0);
         return app('json')->success($data);
     }
+
+    //消费等级配置
+    public function getLevelList()
+    {
+        $data = $this->repository->getAllLevel();
+        return app('json')->success($data);
+    }
+
+    public function getLevelDetail($id)
+    {
+        $data = $this->repository->getLevelDetail($id);
+        return app('json')->success($data);
+    }
+
+    public function getLevelDelete($id)
+    {
+        $data = $this->repository->getLevelDelete($id);
+        return app('json')->success('删除成功');
+    }
+
+    public function getLevelAdd()
+    {
+        $data = $this->request->params(['name', 'min_price', ['level', 1], 'pay_hp']);
+        if (empty($data['min_price']) || empty($data['name']) || empty($data['pay_hp'])) {
+            return app('json')->fail('数据缺失');
+        }
+        if ($this->repository->getOrderLevel($data['level'])) {
+            return app('json')->fail('该等级已存在');
+        }
+        $this->repository->createOrderLevel($data);
+        return app('json')->success('添加成功');
+    }
+
+    public function getLevelEdit()
+    {
+        $data = $this->request->params(['name', 'min_price', ['level', 1], 'pay_hp', 'id']);
+        if (empty($data['min_price']) || empty($data['name']) || empty($data['pay_hp']) || empty($data['id'])) {
+            return app('json')->fail('数据缺失');
+        }
+        if (!$this->repository->getDetail($data['id'])) {
+            return app('json')->fail('该数据不存在');
+        }
+        if ($this->repository->getOrderLevel($data['level'],$data['id'])) {
+        return app('json')->fail('该等级已存在');
+    }
+        $this->repository->updateOrderLevel($data);
+        return app('json')->success('编辑成功');
+    }
 }
diff --git a/route/admin/order.php b/route/admin/order.php
index 82dc3bd..f9915ba 100644
--- a/route/admin/order.php
+++ b/route/admin/order.php
@@ -42,21 +42,36 @@ Route::group(function () {
         Route::get('children/:id', 'Order/childrenList')->name('systemOrderChildrenList')->option([
             '_alias' => '关联订单',
         ]);
+        Route::get('level/list', 'Order/getLevelList')->name('OrderLevelList')->option([
+            '_alias' => '订单等级配置列表',
+        ]);
+        Route::get('level/detail/:id', 'Order/getLevelDetail')->name('OrderLevelDetail')->option([
+            '_alias' => '订单等级配置详情',
+        ]);
+        Route::get('level/delete/:id', 'Order/getLevelDelete')->name('OrderLevelDelete')->option([
+            '_alias' => '订单等级配置删除',
+        ]);
+        Route::post('level/add', 'Order/getLevelAdd')->name('OrderLevelAdd')->option([
+            '_alias' => '订单等级配置添加',
+        ]);
+        Route::post('level/edit', 'Order/getLevelEdit')->name('OrderLevelEdit')->option([
+            '_alias' => '订单等级配置编辑',
+        ]);
     })->prefix('admin.order.')->option([
         '_path' => '/order/list',
         '_auth' => true,
-        '_append'=> [
+        '_append' => [
             [
-                '_name'  =>'systemStoreExcelLst',
-                '_path'  =>'/order/list',
+                '_name' => 'systemStoreExcelLst',
+                '_path' => '/order/list',
                 '_alias' => '导出列表',
-                '_auth'  => true,
+                '_auth' => true,
             ],
             [
-                '_name'  =>'systemStoreExcelDownload',
-                '_path'  =>'/order/list',
+                '_name' => 'systemStoreExcelDownload',
+                '_path' => '/order/list',
                 '_alias' => '导出列表',
-                '_auth'  => true,
+                '_auth' => true,
             ],
         ]
     ]);
@@ -65,13 +80,13 @@ Route::group(function () {
 
         Route::get('take_title', 'Order/takeTitle')->name('systemOrderTakeStat')->option([
             '_alias' => '核销',
-            ]);
+        ]);
         Route::get('takelst', 'Order/getTakeList')->name('systemTakeOrderLst')->option([
             '_alias' => '核销订单',
-            ]);
+        ]);
         Route::get('takechart', 'Order/takeChart')->name('systemTakeOrderTitle')->option([
             '_alias' => '头部统计',
-            ]);
+        ]);
     })->prefix('admin.order.')->option([
         '_path' => '/order/cancellation',
         '_auth' => true,
@@ -80,25 +95,25 @@ Route::group(function () {
     Route::group('order', function () {
         Route::get('refund/lst', 'RefundOrder/getAllList')->name('systemRefundOrderLst')->option([
             '_alias' => '列表',
-            ]);
+        ]);
         Route::get('refund/excel', 'RefundOrder/Excel')->name('systemRefundOrderExcel')->option([
             '_alias' => '导出',
-            ]);
+        ]);
     })->prefix('admin.order.')->option([
         '_path' => '/order/refund',
         '_auth' => true,
-        '_append'=> [
+        '_append' => [
             [
-                '_name'  =>'systemStoreExcelLst',
-                '_path'  =>'/order/refund',
+                '_name' => 'systemStoreExcelLst',
+                '_path' => '/order/refund',
                 '_alias' => '导出列表',
-                '_auth'  => true,
+                '_auth' => true,
             ],
             [
-                '_name'  =>'systemStoreExcelDownload',
-                '_path'  =>'/order/refund',
+                '_name' => 'systemStoreExcelDownload',
+                '_path' => '/order/refund',
                 '_alias' => '导出下载',
-                '_auth'  => true,
+                '_auth' => true,
             ],
         ]
     ]);