DengTao 8 years ago
parent
commit
69b21ff981

+ 77 - 0
www/protected/commands/GetKennelWorkCommand.php

@@ -0,0 +1,77 @@
+<?php
+/**
+ * Created by PhpStorm.
+ * User: PHP
+ * Date: 2016/11/23
+ * Time: 9:11
+ */
+class GetKennelWorkCommand extends CConsoleCommand {
+    public function run($args){
+        error_reporting(E_ERROR);
+        ini_set('memory_limit', '256M');
+        //ini_set('mongo.long_as_object',1);
+        set_time_limit(0);
+        self::getKennel();
+    }
+
+    public function getKennel(){
+        $count = 0;
+        $page = intval(Yii::app()->redis->get('page'));
+        if (empty($page)) $page =1;
+        while($page) {
+            if ($count >= 1000) {
+                Yii::app()->redis->set('page', intval(--$page));
+                exit;
+            }
+            $res = CommonFn::simple_http("http://deal.wozhua.mobi/api/kennel/list?user_id=546b16f50eb9fb494f8b4664&page=".$page++."&rows=10");
+            $res = json_decode($res,true);
+            if ($res['success']) {
+                $list = $res['data']['list'];
+
+                foreach ($list as $key => $value) {
+                    $count++;
+                    $tmp = json_decode(CommonFn::simple_http("http://deal.wozhua.mobi/api/kennel/desc?user_id=546b16f50eb9fb494f8b4664&kennel_id=" . $value['id']), true);
+                    if (!empty($tmp)) {
+                        $tmp = $tmp['data'];
+                        if (!empty(Kennel::model()->get(new MongoId($value['id'])))) {
+                            $kennel = Kennel::model()->get(new MongoId($value['id']));
+                        } else {
+                            $kennel = new Kennel();
+                        }
+                        $kennel->_id = new MongoId($value['id']);
+                        $kennel->status = 1;
+                        $kennel->weight = 0;
+                        $kennel->name = $value['name'];
+                        $kennel->avatar = $value['avatar'];
+                        $kennel->join_time = time();
+                        $kennel->region = (Object)$value['region'];
+                        $kennel->video = (Object)$value['video'];
+                        //if ($value['is_certified']) {
+                            //$kennel->type = 1;
+                        //} else {
+                            $kennel->type = 2;
+                        //}
+                        foreach ( $tmp['tags'] as $k => $v)
+                            $kennel->tags[$k] = $v;
+                        $kennel->desc = $tmp['desc'];
+                        foreach ($tmp['desc_pics'] as $k => $v) {
+                            $kennel->desc_pics[$k] = $v;
+                        }
+                        $kennel->address = $tmp['address'];
+                        $kennel->phone = $tmp['phone'];
+                        $kennel->from = 'wozhua';
+                        //$kennel->favorable_rate = $tmp['favorable_rate'];
+                        //$kennel->comment_count = $tmp['comment_count'];
+                        //$kennel->favorable_count = $tmp['favorable_count'];
+                        //$kennel->average = $tmp['favorable_star'];
+                        $kennel->save();
+                        sleep(3);
+                    }
+                }
+                sleep(3);
+            }
+        }
+    }
+
+
+}

+ 20 - 18
www/protected/commands/GetPetWorkCommand.php

@@ -21,7 +21,7 @@ class GetPetWorkCommand extends CConsoleCommand
         $kennels = new Kennel();
         $cursor = $kennels->findAll();
         foreach ($cursor as $kennel) {
-            $resources = CommonFn::simple_http("http://deal.wozhua.mobi/api/pet/list?user_id=546b16f50eb9fb494f8b4664&kennel=" . $kennel['_id']);
+            $resources = CommonFn::simple_http("http://deal.wozhua.mobi/api/pet/list?user_id=546b16f50eb9fb494f8b4664&page=1&rows=2000&kennel=" . $kennel['_id']);
             $resources = json_decode($resources, true);
             if (!empty($resources['data']['list'])) {
                 $petsList = $resources['data']['list'];
@@ -40,33 +40,35 @@ class GetPetWorkCommand extends CConsoleCommand
                         $dealPet->name = $tmp['name'];
                         $dealPet->status = $tmp['status'];
                         $dealPet->price = $tmp['price'];
-                        foreach ($tmp['pics'] as $v) {
-                            $dealPet->pics[] = $v;
+                        foreach ($tmp['pics'] as $key => $v) {
+                            $dealPet->pics[$key] = $v;
                         }
                         $dealPet->root_parent = new MongoId($tmp['root_praent']);
                         $dealPet->kennel = new MongoId($tmp['kennel']);
                         $dealPet->pet_type = new MongoId($tmp['pet_type']);
                         $dealPet->birth_date = intval($tmp['birth_date']);
                         $dealPet->gender = $tmp['gender'];
-                        $dealPet->tags = $tmp['tags'];
-                        $dealPet->father_info = $tmp['father_info'];
-                        $dealPet->mother_info = $tmp['mother_info'];
+                        foreach ($tmp['tags'] as $key => $v)
+                            $dealPet->tags[$key] = $v;
+                        $dealPet->father_info = (Object)$tmp['father_info'];
+                        $dealPet->mother_info = (Object)$tmp['mother_info'];
                         $dealPet->desc = $tmp['desc'];
-                        $dealPet->vaccine_info = $tmp['vaccine_info'];
-                        $dealPet->add_time = $tmp['add_time'];
-                        $dealPet->sort_weight = $tmp['sort_weight'];
+                        foreach ($tmp['vaccine_info'] as $key => $v)
+                            $dealPet->vaccine_info[$key] = $v;
+                        $dealPet->add_time = time();
+                        //$dealPet->sort_weight = $tmp['sort_weight'];
                         $dealPet->delivery_time = $tmp['delivery_time'];
                         $dealPet->delivery_date = $tmp['delivery_date'];
-                        $dealPet->deworming_info = $tmp['deworming_info'];
+                        $dealPet->deworming_info = (Object)$tmp['deworming_info'];
                         $dealPet->hair_color = $tmp['hair_color'];
-                        $dealPet->video = $tmp['video'];
-                        $dealPet->carriage = $tmp['carriage'];
-                        $dealPet->last_modify = $tmp['last_modify'];
-                        $dealPet->view_count = $tmp['view_count'];
-                        $dealPet->contact_count = $tmp['contact_count'];
-                        $dealPet->region = $tmp['region'];
-                        $dealPet->last_deny_reason = $tmp['last_deny_reason'];
-
+                        $dealPet->video = (Object)$tmp['video'];
+                        $dealPet->carriage = (Object)$tmp['carriage'];
+                        //$dealPet->last_modify = $tmp['last_modify'];
+                        //$dealPet->view_count = $tmp['view_count'];
+                        //$dealPet->contact_count = $tmp['contact_count'];
+                        $dealPet->region = (Object)$tmp['region'];
+                        //$dealPet->last_deny_reason = $tmp['last_deny_reason'];
+                        $dealPet->from = 'wozhua';
 
                         $dealPet->save();