public function actionCookbookBatchHandle()
 {
     $accountId = $this->getAccountId();
     Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     $operation = $this->getParams('operation', '');
     if (strlen($operation) == 0) {
         return ['code' => 1202, 'msg' => 'operation is required.'];
     }
     $onSaleTime = $this->getParams('onSaleTime', '');
     $cookbookId = $this->getParams('cookbookId', '');
     $tags = $this->getParams('tags', '');
     if (count($cookbookId) <= 0) {
         return ['code' => 1202, 'msg' => 'cookbookId is required.'];
     }
     if ($operation == 'on') {
         for ($i = 0; $i < count($cookbookId); $i++) {
             $cookbook = Cookbook::findOne($cookbookId[$i]);
             if ($cookbook == null) {
                 return ['code' => 1204, 'msg' => 'cookbook not found.'];
             }
             $cookbook->active = 'Y';
             if ($onSaleTime == '') {
                 $onSaleTime = time();
             } else {
                 $onSaleTime = strlen($onSaleTime) > 0 ? $onSaleTime / 1000 : null;
             }
             $cookbook->startDate = $onSaleTime;
             //Sort time
             $activeSortTime = $cookbook->activeSortTime;
             $inactiveSortTime = $cookbook->inactiveSortTime;
             if ($activeSortTime == null) {
                 $activeSortTime = $cookbook->createdDate;
                 $inactiveSortTime = $cookbook->createdDate;
             }
             $activeSortTime = time();
             $inactiveSortTime = $cookbook->endDate;
             $cookbook->activeSortTime = $activeSortTime;
             $cookbook->inactiveSortTime = $inactiveSortTime;
             $cookbook->save();
         }
     } else {
         if ($operation == 'off') {
             for ($i = 0; $i < count($cookbookId); $i++) {
                 $cookbook = Cookbook::findOne($cookbookId[$i]);
                 if ($cookbook == null) {
                     return ['code' => 1204, 'msg' => 'cookbook not found.'];
                 }
                 $cookbook->active = 'N';
                 //Sort time
                 $activeSortTime = $cookbook->activeSortTime;
                 $inactiveSortTime = $cookbook->inactiveSortTime;
                 if ($activeSortTime == null) {
                     $activeSortTime = $cookbook->createdDate;
                     $inactiveSortTime = $cookbook->createdDate;
                 }
                 $inactiveSortTime = time();
                 $activeSortTime = $cookbook->startDate;
                 $cookbook->activeSortTime = $activeSortTime;
                 $cookbook->inactiveSortTime = $inactiveSortTime;
                 $cookbook->save();
             }
         } else {
             if ($operation == 'del') {
                 for ($i = 0; $i < count($cookbookId); $i++) {
                     Cookbook::deleteAll(['_id' => $cookbookId[$i]]);
                 }
             } else {
                 if ($operation == 'tags') {
                     for ($i = 0; $i < count($cookbookId); $i++) {
                         $cookbook = Cookbook::findOne($cookbookId[$i]);
                         if ($cookbook == null) {
                             return ['code' => 1204, 'msg' => 'cookbook not found.'];
                         }
                         $cookbook->type = array_merge($cookbook->type, $tags);
                         $cookbook->save();
                     }
                 }
             }
         }
     }
     return ['code' => 200, 'msg' => 'OK'];
 }