提交 efbe92a1 编写于 作者: T Terry

appserver部分剩余部分完成

上级 a652d7f7
......@@ -26,11 +26,14 @@ class AddressController extends AppserverTokenController
if(Yii::$app->request->getMethod() === 'OPTIONS'){
return [];
}
$identity = Yii::$app->user->identity;
return [
'code' => 200,
$code = Yii::$service->helper->appserver->status_success;
$data = [
'addressList' => $this->coll(),
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
......@@ -74,10 +77,13 @@ class AddressController extends AppserverTokenController
$address['stateArr'] = $stateArr;
$address['stateIsSelect'] = $stateIsSelect;
return [
'code' => 200,
$code = Yii::$service->helper->appserver->status_success;
$data = [
'address' => $address,
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
......@@ -90,16 +96,17 @@ class AddressController extends AppserverTokenController
$address_id = Yii::$app->request->post('address_id');
if($address_id){
$this->removeAddressById($address_id);
return [
'code' => 200,
'content' => 'remove customer address success',
];
$code = Yii::$service->helper->appserver->status_success;
$data = [];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}else{
return [
'code' => 401,
'content' => 'address id is not exist',
];
$code = Yii::$service->helper->appserver->account_address_is_not_exist;
$data = [];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
}
}
......@@ -148,11 +155,14 @@ class AddressController extends AppserverTokenController
if(!empty($stateArr)){
$stateIsSelect = 1;
}
return [
'code' => 200,
$code = Yii::$service->helper->appserver->status_success;
$data = [
'stateIsSelect' => $stateIsSelect,
'stateArr' => $stateArr,
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
}
......@@ -172,16 +182,16 @@ class AddressController extends AppserverTokenController
$street2 = Yii::$app->request->post('street2');
$zip = Yii::$app->request->post('zip');
$isDefaultActive = Yii::$app->request->post('isDefaultActive');
if($address_id){
$addressModel = Yii::$service->customer->address->getByPrimaryKey($address_id);
$identity = Yii::$app->user->identity;
$customer_id = $identity['id'];
if ($customer_id != $addressModel['customer_id']) {
return [
'code' => '401',
'content' => 'address is not exist'
];
$code = Yii::$service->helper->appserver->account_address_is_not_exist;
$data = [];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
}
......@@ -236,10 +246,13 @@ class AddressController extends AppserverTokenController
}
if (!empty($error)) {
$str = implode(',', $error).' can not empty';
return [
'code' => '401',
'content' => $str,
$code = Yii::$service->helper->appserver->account_address_edit_param_invaild;
$data = [
'error' => $str,
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
if ($isDefaultActive) {
......@@ -252,10 +265,11 @@ class AddressController extends AppserverTokenController
$identity = Yii::$app->user->identity;
$arr['customer_id'] = $identity['id'];
Yii::$service->customer->address->save($arr);
return [
'code' => '200',
'content' => 'success',
];
$code = Yii::$service->helper->appserver->status_success;
$data = [ ];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
......
......@@ -29,8 +29,8 @@ class EditaccountController extends AppserverTokenController
}
$identity = Yii::$app->user->identity;
if(isset($identity['email'])){
return [
'code' => 200,
$code = Yii::$service->helper->appserver->status_success;
$data = [
'email' => $identity['email'],
'firstname' => $identity['firstname'],
'lastname' => $identity['lastname'],
......@@ -38,15 +38,12 @@ class EditaccountController extends AppserverTokenController
'maxNameLength' => Yii::$service->customer->getRegisterNameMaxLength(),
'minPassLength' => Yii::$service->customer->getRegisterPassMinLength(),
'maxPassLength' => Yii::$service->customer->getRegisterPassMaxLength(),
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
}
public function actionUpdate(){
if(Yii::$app->request->getMethod() === 'OPTIONS'){
return [];
......@@ -57,8 +54,15 @@ class EditaccountController extends AppserverTokenController
$new_password = Yii::$app->request->post('new_password');
$confirm_new_password = Yii::$app->request->post('confirm_new_password');
$identity = Yii::$app->user->identity;
if($errorInfo = $this->validateParams($identity ,$firstname,$lastname,$current_password,$new_password,$confirm_new_password)){
return $errorInfo;
$errorInfo = $this->validateParams($identity ,$firstname,$lastname,$current_password,$new_password,$confirm_new_password);
if($errorInfo !== true){
$code = Yii::$service->helper->appserver->account_edit_invalid_data;
$data = [
'error' => $errorInfo,
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
$identity->firstname = $firstname;
$identity->lastname = $lastname;
......@@ -67,20 +71,22 @@ class EditaccountController extends AppserverTokenController
}
if ($identity->validate()) {
$identity->save();
return [
'code' => 200,
'content' => 'update account info success',
];
$code = Yii::$service->helper->appserver->status_success;
$data = [];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}else{
$errors = Yii::$service->helper->errors->getModelErrorsStrFormat($identity->errors);
if($errors){
return [
'code' => 401,
'content' => $errors,
$code = Yii::$service->helper->appserver->account_edit_invalid_data;
$data = [
'error' => $errors,
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
}
}
public function validateParams($identity ,$firstname,$lastname,$current_password,$new_password,$confirm_new_password){
......@@ -88,47 +94,33 @@ class EditaccountController extends AppserverTokenController
$maxNameLength = Yii::$service->customer->getRegisterNameMaxLength();
$minPassLength = Yii::$service->customer->getRegisterPassMinLength();
$maxPassLength = Yii::$service->customer->getRegisterPassMaxLength();
$errorArr = [];
if(!$identity){
return [
'code' => 401,
'content' => 'current user is not exist',
];
$errorArr[] = 'current user is not exist';
}
if ($current_password && !$new_password) {
return [
'code' => 401,
'content' => 'new password can not empty',
];
$errorArr[] = 'new password can not empty';
} elseif ($current_password && ($new_password != $confirm_new_password)) {
return [
'code' => 401,
'content' => 'Password and confirmation password must be consistent',
];
$errorArr[] = 'Password and confirmation password must be consistent';
} elseif ($current_password && (strlen($new_password) < $minPassLength || strlen($new_password) > $maxPassLength)) {
return [
'code' => 401,
'content' => 'password must >= '.$minPassLength.' and <= '.$maxPassLength,
];
$errorArr[] = 'password must >= '.$minPassLength.' and <= '.$maxPassLength;
} elseif (strlen($firstname) < $minNameLength || strlen($firstname) > $maxNameLength) {
return [
'code' => 401,
'content' => 'firstname must >= '.$minPassLength.' and <= '.$maxPassLength,
];
$errorArr[] = 'firstname must >= '.$minPassLength.' and <= '.$maxPassLength;
} elseif (strlen($lastname) < $minNameLength || strlen($lastname) > $maxNameLength) {
return [
'code' => 401,
'content' => 'lastname must >= '.$minPassLength.' and <= '.$maxPassLength,
];
$errorArr[] = 'lastname must >= '.$minPassLength.' and <= '.$maxPassLength;
}
if($current_password && !$identity->validatePassword($current_password)){
return [
'code' => 401,
'content' => 'current password is not correct',
];
$errorArr[] = 'current password is not correct';
}
if(!empty($errorArr)){
return implode(',',$errorArr);
}else{
return true;
}
return false;
}
}
\ No newline at end of file
......@@ -57,11 +57,14 @@ class OrderController extends AppserverTokenController
$order_list[$k]['created_at'] = date('Y-m-d H:i:s',$created_at);
}
}
return [
'code' => 200,
$code = Yii::$service->helper->appserver->status_success;
$data = [
'orderList' => $order_list,
'count' => $count,
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
}
......@@ -94,10 +97,13 @@ class OrderController extends AppserverTokenController
}
}
$order_info['products'] = $productArr;
return [
'code' => 200,
$code = Yii::$service->helper->appserver->status_success;
$data = [
'order'=> $order_info,
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
}
......@@ -106,6 +112,52 @@ class OrderController extends AppserverTokenController
}
public function actionReorder()
{
$order_id = Yii::$app->request->get('order_id');
$errorArr = [];
if (!$order_id) {
$errorArr[] = 'The order id is empty';
}
$order = Yii::$service->order->getByPrimaryKey($order_id);
if (!$order['increment_id']) {
$errorArr[] = 'The order is not exist';
}
$customer_id = Yii::$app->user->identity->id;
if (!$order['customer_id'] || ($order['customer_id'] != $customer_id)) {
$errorArr[] = 'The order does not belong to you';
}
if(!empty($errorArr)){
$code = Yii::$service->helper->appserver->account_reorder_order_id_invalid;
$data = [];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
$this->addOrderProductToCart($order_id);
$code = Yii::$service->helper->appserver->status_success;
$data = [];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
public function addOrderProductToCart($order_id)
{
$items = Yii::$service->order->item->getByOrderId($order_id);
//var_dump($items);
if (is_array($items) && !empty($items)) {
foreach ($items as $one) {
$item = [
'product_id' => $one['product_id'],
'custom_option_sku' => $one['custom_option_sku'],
'qty' => (int) $one['qty'],
];
//var_dump($item);exit;
Yii::$service->cart->addProductToCart($item);
}
}
}
}
\ No newline at end of file
......@@ -47,18 +47,19 @@ class ProductfavoriteController extends AppserverTokenController
'asArray' => true,
];
$data = Yii::$service->product->favorite->list($filter);
$coll = $data['coll'];
$count = $data['count'];
//$pageToolBar = $this->getProductPage($count);
$product_arr = $this->getProductInfo($coll);
return [
'code' => 200,
$code = Yii::$service->helper->appserver->status_success;
$data = [
'productList' => $product_arr,
'count' => $count,
'numPerPage' => $numPerPage,
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
// 得到产品的一些信息,来显示Favorite 的产品列表。
......@@ -124,11 +125,20 @@ class ProductfavoriteController extends AppserverTokenController
return [];
}
$favorite_id = Yii::$app->request->post('favorite_id');
if($favorite_id){
Yii::$service->product->favorite->currentUserRemove($favorite_id);
return [
'code' => 200,
'content' => 'remove favorite success',
];
$code = Yii::$service->helper->appserver->status_success;
$data = [];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
} else {
$code = Yii::$service->helper->appserver->account_favorite_id_not_exist;
$data = [];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
}
......
......@@ -56,18 +56,18 @@ class ProductreviewController extends AppserverTokenController
}else{
$coll = [];
}
return [
'code' => 200,
$code = Yii::$service->helper->appserver->status_success;
$data = [
'productList' => $coll,
'count' => $count,
'numPerPage' => $this->numPerPage,
'noActiveStatus'=> Yii::$service->product->review->noActiveStatus(),
'refuseStatus' => Yii::$service->product->review->refuseStatus(),
'activeStatus' => Yii::$service->product->review->activeStatus(),
];
$reponseData = Yii::$service->helper->appserver->getReponseData($code, $data);
return $reponseData;
}
......
......@@ -52,6 +52,11 @@ class Appserver extends Service
public $account_forget_password_token_timeout = 1100009; // 忘记密码:token超时
public $account_forget_password_reset_param_invalid = 1100010; // 忘记密码:通过邮件充值密码,传递的参数缺失或不正确
public $account_forget_password_reset_fail = 1100011; // 忘记密码:充值密码失败
public $account_address_is_not_exist = 1100012; // customer address:address id 不存在
public $account_address_edit_param_invaild = 1100013; // customer address:address 编辑传入的param存在问题,无效
public $account_reorder_order_id_invalid = 1100014; // customer order:reorder 传入的order_id 无效
public $account_favorite_id_not_exist = 1100015; // custome favorite: favorite id is not exit
/**
* category状态码
......@@ -243,6 +248,20 @@ class Appserver extends Service
'message' => 'account forget password reset fail',
],
$this->account_address_is_not_exist => [
'message' => 'account address id is not exist',
],
$this->account_address_edit_param_invaild => [
'message' => 'account address edit param is invalid',
],
$this->account_reorder_order_id_invalid => [
'message' => 'customer reorder order id is invalid',
],
$this->account_favorite_id_not_exist => [
'message' => 'customer favorite id is not exit',
],
/**
* category
*/
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册