public function actionBulkentry() { if (!$this->token instanceof Token) { echo CJSON::encode($this->statusError('You have to login first')); Yii::app()->end(); } ini_set('max_execution_time', 300); $model = new FOrderDataEntry(); if (isset($_FILES['FOrderDataEntry'])) { $model->attributes = $_FILES['FOrderDataEntry']; $model->setScenario('api'); if ($model->validate(array('file'))) { $model->setScenario('insert'); $customer = Customer::model()->findByPk($this->token->customer_id); $contact = $customer->getContactData(); $csvFile = CUploadedFile::getInstance($model, 'file'); $tempLoc = $csvFile->getTempName(); $rawdatas = file($tempLoc); $city_routing = IntraCityRouting::model()->findByAttributes(array('postcode' => $contact->postal)); if ($city_routing instanceof IntraCityRouting) { $routing_code = $city_routing->code; } else { $routing_code = ''; } try { $trans = Yii::app()->db->beginTransaction(); $bulk = Shipment::bulkOrder($rawdatas, $customer, $contact, $routing_code); $list_failed = implode(', ', $bulk['failed']); $list_success = implode(', ', $bulk['success']); echo CJSON::encode($this->statusSuccess(array('failed' => $list_failed, 'success' => $list_success))); Yii::app()->end(); $trans->commit(); } catch (ServiceControllerException $e) { CVarDumper::dump($e, 10, TRUE); exit; $trans->rollBack(); } } else { echo CJSON::encode($this->statusError($model->getErrors())); Yii::app()->end(); } } else { echo CJSON::encode($this->statusError('The File is not exixst')); yii::app()->end(); } }
public function actionGetExtRoutingCode() { if (Yii::app()->request->isAjaxRequest) { $result = array('status' => 'error', 'data' => ''); $data = array(); if (isset($_POST['country']) && isset($_POST['postal'])) { $country = ucfirst($_POST['country']); $postal = $_POST['postal']; if ($country != 'Indonesia') { $routings = RateCompany::model()->findAllByAttributes(array('is_international' => 1)); if (count($routings) != 0) { foreach ($routings as $routing) { array_push($data, array('code' => $routing->code)); } $result = array('status' => 'success', 'data' => $data, 'service_type' => 'International'); } } else { $routing = IntraCityRouting::model()->findByAttributes(array('postcode' => $postal)); if ($routing instanceof IntraCityRouting) { array_push($data, array('code' => $routing->code)); $result = array('status' => 'success', 'data' => $data, 'service_type' => 'City-Courier'); } else { $area = Area::getZoneID($postal); if (!!$area) { $routings = RateCompany::model()->findAllByAttributes(array('is_domestic' => 1)); if (count($routings) != 0) { foreach ($routings as $routing) { array_push($data, array('code' => $routing->code)); } $result = array('status' => 'success', 'data' => $data, 'service_type' => 'Domestic'); } } } } echo CJSON::encode($result); Yii::app()->end(); } } }