Browse Source

完善功能

gorden 8 months ago
parent
commit
2acef0e022

+ 6 - 0
app/admin/controller/member/RuleAddedComponentController.php

@@ -79,6 +79,12 @@ class RuleAddedComponentController extends Curd
                 }
                 $item->rule_added_component_goods_json = $goodsJson;
             }
+            // $item->rule_added_component_json = [];
+            if (!empty($item->rule_added_component_json)){
+                $item->rule_added_component_json = json_decode($item->rule_added_component_json);
+            }else{
+                $item->rule_added_component_json = [];
+            }
             $item->rule_added_component_goods_nbr = intval($item->rule_added_component_goods_nbr);
             $item->goodsIds = $goodsIds;
             $item->goods = $goods;

+ 49 - 0
app/admin/controller/order/WholeController.php

@@ -905,6 +905,55 @@ class WholeController extends Curd
         }
     }
 
+    public function writeOffDishes(Request $request)
+    {
+        $orderId = $request->post('order_id','');
+        $memberId = $request->post('member_id', '');
+        $times = $request->post('times', '');
+        $code = $request->post('sms_code', '');
+
+        if (!$memberId || !$orderId) {
+            return json_fail('参数异常');
+        }
+
+        if (!$times) {
+            $times = date('Y-m-d H:i:s');
+        } else {
+            $times = date('Y-m-d H:i:s', strtotime($times));
+        }
+
+        try {
+            Db::beginTransaction();
+
+            // 记录核销
+            $params = [
+                'dept_premises_id' => $request->post('dept_premises_id'),
+                'order_remark' => $request->post('remark'),
+                'write_off_member_id' => $request->post('write_off_member_id'),
+                'join_order_member_id' => $memberId
+            ];
+            $writeOffData['charge'] = OrderService::generateWriteOffData($params);
+            $writeOffData['charge']['order_id'] = $orderId;
+            $writeOffData['charge']['member_id'] = $memberId;
+            $writeOffData['charge']['order_code'] = random_string(10,'number');
+            $writeOffData['express'] = 'N';
+            
+            Order::where('order_id',$orderId)->update([
+                'order_express_json'=>json_encode($writeOffData),
+                'order_is_complete'=>'Y',
+                'order_status_system'=>'DONE'
+            ]);
+
+            Db::commit();
+
+            return json_success('核销成功');
+        } catch (\Exception $e) {
+            dump($e->getMessage());
+            Db::rollBack();
+            return json_fail('核销失败');
+        }
+    }
+
     public function myOrder(Request $request)
     {
         $memberId = $request->get('member_id', '');

+ 1 - 1
app/admin/service/goods/GoodsService.php

@@ -42,7 +42,7 @@ class GoodsService
             ->when($goodsName != '', function ($query) use ($goodsName) {
                 $query->where('goods_name', 'like', "%" . $goodsName . '%');
             })
-            ->select('goods_id', 'goods_name')
+            ->select('goods_id', 'goods_name','goods_classify')
             ->get()
             ->toArray();
         foreach ($goods as &$item) {

+ 1 - 0
route/admin.php

@@ -771,6 +771,7 @@ Route::group('/admin', function () {
             Route::post('/add', [\app\admin\controller\order\WholeController::class, 'insert']);
             Route::post('/delete', [\app\admin\controller\order\WholeController::class, 'delete']);
             Route::post('/doRefund', [\app\admin\controller\order\WholeController::class, 'doRefund']);
+            Route::post('/writeOffDishes', [\app\admin\controller\order\WholeController::class, 'writeOffDishes']);
 
         })->middleware([
             \app\middleware\AdminAuthCheck::class