소스 검색

平台订单导入,平台订单号和平台商品编号不能重复,详情显示解析失败原因

wufeng 2 년 전
부모
커밋
9da0545164
2개의 변경된 파일23개의 추가작업 그리고 8개의 파일을 삭제
  1. 10 8
      app/admin/controller/OrderImport.php
  2. 13 0
      app/command/ImportOrderFromCAnalysisData.php

+ 10 - 8
app/admin/controller/OrderImport.php

@@ -27,14 +27,15 @@ class OrderImport extends Base
         try {
 
             //平台订单号不允许重复
-            $all_platform_codes = array_column($param['list'], 'platform_code');
-
-            $temp = Db::name('order_import_from_c')
-                ->field('id,platform_code')
-                ->whereIn('platform_code', $all_platform_codes)
-                ->find();
-
-            if (!empty($temp)) throw new Exception('平台订单号' . $temp['platform_code'] . '重复');
+            //平台订单号允许重复,但是平台订单号和平台商品编号的组合不能重复(2022-05-25 10)
+//            $all_platform_codes = array_column($param['list'], 'platform_code');
+//
+//            $temp = Db::name('order_import_from_c')
+//                ->field('id,platform_code')
+//                ->whereIn('platform_code', $all_platform_codes)
+//                ->find();
+//
+//            if (!empty($temp)) throw new Exception('平台订单号' . $temp['platform_code'] . '重复');
 
             $userinfo = GetUserInfo($param['token']);
             $createrid = isset($userinfo["data"]['id']) ? $userinfo["data"]['id'] : 0;
@@ -130,6 +131,7 @@ class OrderImport extends Base
             'orderCode' => $info['orderCode'],
             'success_date' => $info['status'] == OIFCModel::$status_success ? $info['updatetime'] : '',//录入成功时间
             'addtime' => $info['addtime'],
+            'error_msg' => $info['remark']//错误原因
         ];
 
         //导入原始数据

+ 13 - 0
app/command/ImportOrderFromCAnalysisData.php

@@ -66,6 +66,19 @@ class ImportOrderFromCAnalysisData extends Command
                 $update_c_data['remark'] = '数据错误,' . $val->getError();
             }
 
+            //平台订单号和平台商品编号的组合不能重复
+            $temp = $order_import_from_c_db
+                ->where([
+                    'is_del' => OIFCModel::$is_del_normal,
+                    'platform_code' => $rs['platform_code'],
+                    'plat_code' => $rs['plat_code'],
+                ])->find();
+
+            if (!empty($temp)) {
+                $update_c_data['status'] = OIFCModel::$status_wait_confirm;
+                $update_c_data['remark'] = isset($update_c_data['remark']) ? $update_c_data['remark'] . ',平台订单号和平台商品编号重复' : '平台订单号和平台商品编号重复';
+            }
+
             $extend_insert_data = [
                 'order_import_from_c_id' => $rs['id'],
                 'createrid' => 0,