shish 2 年之前
父節點
當前提交
01a53a1b65
共有 2 個文件被更改,包括 109 次插入1 次删除
  1. 1 1
      app-ghs/controllers/UploadController.php
  2. 108 0
      console/controllers/CustomController.php

+ 1 - 1
app-ghs/controllers/UploadController.php

@@ -190,7 +190,7 @@ class UploadController extends BaseController
             $customerCachedKey = 'file_batch_create_customer_list';
             $value = $shopId . ',' . $fullPathFile;
             Yii::$app->redis->executeCommand('LPUSH', [$customerCachedKey, $value]);
-            
+
             noticeUtil::push("待批量导入客户的文件:" . $value, '15280215347');
 
             util::complete();

+ 108 - 0
console/controllers/CustomController.php

@@ -257,4 +257,112 @@ class CustomController extends Controller
         }
     }
 
+    //从文件批量创建客户 ssh 20240426
+    public function actionFileCreateCustom()
+    {
+        $customerCachedKey = 'file_batch_create_customer_list';
+        $customList = [];
+        while ($count = Yii::$app->redis->executeCommand('LLEN', [$customerCachedKey])) {
+            $customer = Yii::$app->redis->executeCommand('RPOP', [$customerCachedKey]);
+            $customList[] = $customer;
+        }
+
+//        if (empty($customList)) {
+//            return false;
+//        }
+
+        $customList = ['36523,/usr/local/nginx/html/huahuibao/vendor/../../resource/images/uploads/12970/36523/202404/26/028d7e2fada10ffa401a9dfcb5684c73.xls'];
+
+        $phpExcelFile = Yii::getAlias("@vendor/phpoffice/phpexcel/");
+        require_once($phpExcelFile . 'Classes/PHPExcel.php');
+
+        foreach ($customList as $customer) {
+
+            $connection = Yii::$app->db;
+            $transaction = $connection->beginTransaction();
+
+            $customerInfo = explode(',', $customer);
+            $shopId = $customerInfo[0];
+            $filePath = $customerInfo[1];
+
+            $PHPExcel = new \PHPExcel(); // 拿到实例,待会儿用
+            $PHPReader = new \PHPExcel_Reader_Excel2007();
+            if (!$PHPReader->canRead($filePath)) {
+                $PHPReader = new \PHPExcel_Reader_Excel5();
+                if (!$PHPReader->canRead($filePath)) {
+
+                    util::stop('无法读取文件');
+                }
+            }
+            $allSheet = $PHPExcel->getSheetCount(); // sheet数
+echo $allSheet;die;
+
+            try {
+
+                // 组织表单数据
+                $post = [];
+                $post['introSjId'] = $customerInfo[2];
+                $post['introShopId'] = $customerInfo[3];
+                $post['introSjName'] = $customerInfo[4];
+                $post['introStyle'] = SjClass::STYLE_SUPPLIER;
+
+                $post['name'] = $shopName;
+                if (empty($shopName)) {
+                    noticeUtil::push("花店 {$shopName} 手机号 {$mobile} 添加失败,名称没有填写", '15280215347');
+                    $transaction->rollBack();
+                    continue;
+                }
+                $post['mobile'] = $mobile;
+                if (stringUtil::isMobile($mobile) == false) {
+                    noticeUtil::push("花店 {$shopName} 手机号 {$mobile} 添加失败,手机号填写错误", '15280215347');
+                    $transaction->rollBack();
+                    continue;
+                }
+                if (stringUtil::getWordNum($shopName) > 15) {
+                    noticeUtil::push("花店 {$shopName} 手机号 {$mobile} 添加失败,名称超过了15个汉字", '15280215347');
+                    $transaction->rollBack();
+                    continue;
+                }
+                $has = ApplyClass::getByCondition(['mobile' => $mobile]);
+                if (!empty($has)) {
+                    noticeUtil::push("花店 {$shopName} 手机号 {$mobile} 添加失败,手机号已经存在了哦", '15280215347');
+                    $transaction->rollBack();
+                    continue;
+                }
+                $hasShop = ShopClass::getByCondition(['mobile' => $mobile]);
+                if (!empty($hasShop)) {
+                    noticeUtil::push("花店 {$shopName} 手机号 {$mobile} 添加失败,手机号已经存在了", '15280215347');
+                    $transaction->rollBack();
+                    continue;
+                }
+                $adminName = $post['adminName'] ?? '';
+                $miniOpenId = $post['miniOpenId'] ?? '';
+                $adminInfo = ['name' => $adminName, 'mobile' => $mobile, 'miniOpenId' => $miniOpenId];
+                $fromApp = dict::getDict('userSourceGetId', 'app', 'id');
+
+                $admin = AdminClass::replaceAdmin($adminInfo, $fromApp);
+                $adminId = $admin['id'] ?? 0;
+                $post['adminId'] = $adminId;
+                $post['adminName'] = $admin['name'] ?? '';
+                $post['long'] = isset($post['longitude']) ? $post['longitude'] : '';
+                $post['lat'] = isset($post['latitude']) ? $post['latitude'] : '';
+                $post['from'] = ApplyClass::FROM_RETAIL;
+                $post['style'] = SjClass::STYLE_RETAIL;
+                //增加或更新申请
+                $respond = ApplyService::replaceRetail($post);
+                $id = $respond['id'] ?? 0;
+                //后继代码,要用到此参数
+                Yii::$app->params['ptStyle'] = 2;
+                ApplyService::pass($id, '批发商手动添加');
+                $transaction->commit();
+                //只要手动添加的都标记为花店,任何情况都不会标记为散客
+                CustomClass::updateByCondition(['mobile' => $mobile], ['isHd' => 1]);
+                //noticeUtil::push("花店 {$shopName} 手机号 {$mobile} 由批发商添加成功");
+            } catch (\Exception $exception) {
+                $transaction->rollBack();
+                noticeUtil::push("花店 {$shopName} 手机号 {$mobile} 添加失败,原因:" . $exception->getMessage(), '15280215347');
+            }
+        }
+    }
+
 }