Authored by Rock Zhang

初步完成调取个人中心各页面的接口数据

<?php
namespace LibModels\Wap\Home;
use Api\Sign;
use Api\Yohobuy;
/**
* 个人中心的数据模型
*
* @name UserData
* @package LibModels/Wap/Home
* @copyright yoho.inc
* @version 1.0 (2015-11-09 16:30:27)
* @author Gtskk <tttt6399998@126.com>
*/
class UserData
{
/**
* 个人详情数据
*
* @param int $uid 用户ID
* @return array 个人详情接口返回的数据
*/
public static function userData($uid)
{
$param = Yohobuy::param();
$param['method'] = 'app.passport.profile';
$param['uid'] = $uid;
$param['client_secret'] = Sign::getSign($param);
return Yohobuy::get(Yohobuy::API_URL, $param);
}
/**
* 订单数据
*
* @param int $uid 用户ID
* @param int $type 订单类型,1表示全部,2表示待付款,3表示待发货,4表示待收货,5表示待评价
* @param int $page 第几页,默认1
* @param int $limit 限制读取的数目,默认10
* @return array 订单接口返回的数据
*/
public static function orderData($uid, $type, $page = 1, $limit = 10)
{
$param = Yohobuy::param();
$param['method'] = 'app.SpaceOrders.get';
$param['uid'] = $uid;
$param['type'] = $type;
$param['page'] = $page;
$param['limit'] = $limit;
$param['client_secret'] = Sign::getSign($param);
return Yohobuy::get(Yohobuy::API_URL, $param);
}
/**
* 收藏的商品数据
*
* @param int $uid 用户ID
* @param int $page 第几页,默认1
* @param int $limit 限制读取的数目,默认10
* @return array 收藏的商品接口返回的数据
*/
public static function favoriteProductData($uid, $page = 1, $limit = 10)
{
$param = Yohobuy::param();
$param['method'] = 'app.favorite.product';
$param['uid'] = $uid;
$param['page'] = $page;
$param['limit'] = $limit;
$param['client_secret'] = Sign::getSign($param);
return Yohobuy::get(Yohobuy::API_URL, $param);
}
/**
* 收藏的品牌数据
*
* @param int $uid 用户ID
* @param string $gender 性别 1,3表示男,2,3表示女,1,2,3表示全部
* @param int $page 第几页,默认1
* @param int $limit 限制读取的数目,默认10
* @return array 收藏的品牌接口返回的数据
*/
public static function favoriteBrandData($uid, $gender, $page = 1, $limit = 10)
{
$param = Yohobuy::param();
$param['method'] = 'app.favorite.brand';
$param['uid'] = $uid;
$param['gender'] = $gender;
$param['page'] = $page;
$param['limit'] = $limit;
$param['client_secret'] = Sign::getSign($param);
return Yohobuy::get(Yohobuy::API_URL, $param);
}
/**
* YOHO币数据
*
* @param int $uid 用户ID
* @param int $page 第几页,默认1
* @param int $limit 限制读取的数目,默认10
* @return array YOHO币接口返回的数据
*/
public static function yohoCoinData($uid, $page = 1, $limit = 10)
{
$param = Yohobuy::param();
$param['method'] = 'app.yohocoin.lists';
$param['uid'] = $uid;
$param['page'] = $page;
$param['limit'] = $limit;
$param['client_secret'] = Sign::getSign($param);
return Yohobuy::get(Yohobuy::API_URL, $param);
}
/**
* 优惠券数据
*
* @param int $uid 用户ID
* @param int $status 优惠券状态,0表示未使用,1表示已使用
* @param int $page 第几页,默认1
* @param int $limit 限制读取的数目,默认10
* @return array 优惠券接口返回的数据
*/
public static function couponData($uid, $status, $page = 1, $limit = 10)
{
$param = Yohobuy::param();
$param['method'] = 'app.yohocoin.lists';
$param['uid'] = $uid;
$param['status'] = $status;
$param['page'] = $page;
$param['limit'] = $limit;
$param['client_secret'] = Sign::getSign($param);
return Yohobuy::get(Yohobuy::API_URL, $param);
}
/**
* 地址数据
*
* @param int $uid 用户ID
* @return array 地址接口返回的数据
*/
public static function addressData($uid)
{
$param = Yohobuy::param();
$param['method'] = 'app.address.get';
$param['uid'] = $uid;
$param['client_secret'] = Sign::getSign($param);
return Yohobuy::get(Yohobuy::API_URL, $param);
}
/**
* 意见反馈数据
*
* @param string $udid 客户端唯一标识
* @param int $page 第几页,默认1
* @param int $limit 限制读取的数目,默认10
* @return array 意见反馈接口返回的数据
*/
public static function suggestData($udid, $page = 1, $limit = 30)
{
$param = Yohobuy::param();
$param['udid'] = $udid;
$param['page'] = $page;
$param['limit'] = $limit;
$param['client_secret'] = Sign::getSign($param);
return Yohobuy::get(Yohobuy::SERVICE_URL . 'suggest/api/v1/suggest/getList', $param);
}
/**
* 提交意见反馈接口
*
* @param int $uid 用户ID
* @param string $content 意见内容
* @param int $suggest_type 意见类型
* @return array 意见反馈接口返回的数据
*/
public static function suggestData($uid, $content, $suggest_type, $limit = 30)
{
$param = Yohobuy::param();
$param['uid'] = $uid;
$param['content'] = $content;
$param['client_secret'] = Sign::getSign($param);
return Yohobuy::get(Yohobuy::SERVICE_URL . 'suggest/api/v1/suggest/saveSuggest', $param);
}
}
... ...
<?php
use Action\AbstractAction;
use Plugin\Helpers;
/**
* 个人中心相关的控制器
... ... @@ -18,8 +19,117 @@ class HomeController extends AbstractAction
*/
public function indexAction()
{
// 目前跳到老站
// $this->go(OLD_MAIN . '/home');
$uid = $uid = $this->getUid();;
$data = \Index\UserModel::getUserProfileData($uid);
print_r($data);
}
/**
* 用户订单
*/
public function ordersAction()
{
$uid = $this->getUid();
$type = $this->get('type', 1);
$orders = \Index\UserModel::getUserOrderData(967016, $type);
print_r($orders);
}
/**
* 用户收藏的商品
*/
public function favoriteAction()
{
$uid = $this->getUid();
$favProducts = \Index\UserModel::getFavProductData($uid);
print_r($favProducts);
}
/**
* 用户收藏的品牌
*/
public function favoritebrandAction()
{
$uid = $this->getUid();
$gender = Helpers::getGenderByCookie();
$favBrands = \Index\UserModel::getFavBrandData($uid, $gender);
print_r($favBrands);
}
/**
* YOHO币
*/
public function currencyAction()
{
$uid = $this->getUid();
$favBrands = \Index\UserModel::getYohoCoinData($uid);
print_r($favBrands);
}
/**
* 优惠券
*/
public function couponsAction()
{
$uid = $this->getUid();
$status = $this->get('status', 0);
$coupons = \Index\UserModel::getCouponData($uid, $status);
print_r($coupons);
}
/**
* 地址管理
*/
public function addressAction()
{
$uid = $this->getUid();
$address = \Index\UserModel::getAddressData($uid);
print_r($address);
}
/**
* 意见反馈
*/
public function suggestAction()
{
$udid = $this->getUdid();
$page = $this->get('page', 1);
$limit = $this->get('limit', 30);
$suggest = \Index\UserModel::getSuggestData($udid, $page, $limit);
print_r($suggest);
}
/**
* 异步保存意见反馈数据
*/
public function savesuggestAction()
{
if($this->isAjax()) {
$uid = $this->getUid();
$content = $this->post('content', '');
$suggest_type = $this->get('suggest_type', 2);
$result = \Index\UserModel::saveSuggestData($uid, $content, $suggest_type);
$this->echoJson($result);
}
}
}
... ...
... ... @@ -12,9 +12,10 @@ class ShoppingCartController extends AbstractAction
$this->setTitle('购物车');
$this->setNavHeader('购物车');
$uid = $this->getUid();
$data = array(
'shoppingCartPage' => true,
'shoppingCart' => \Index\CartModel::getCartData(967016)
'shoppingCart' => \Index\CartModel::getCartData($uid)
);
// 渲染模板
... ...
... ... @@ -31,7 +31,6 @@ class CartModel
$cartData = CartData::cartData($uid);
// 处理普通购物车和预售购物车的数据
/* 普通购物车 */
if (isset($cartData['data']) && !empty($cartData['data'])) {
$cart = $cartData['data'];
... ...
<?php
namespace Index;
use LibModels\Wap\Home\UserData;
use Plugin\Images;
/**
*
* @name UserModel
* @package models/Index
* @copyright yoho.inc
* @version 1.0 (2015-11-09 14:05:09)
* @author Gtskk (tttt6399998@126.com)
*/
class UserModel
{
/**
* 处理用户个人详情数据
*
* @param int $uid 用户ID
* @return array|mixed 处理之后的个人详情数据
*/
public static function getUserProfileData($uid)
{
$result = array();
// 调用接口获取个人详情
$userData = UserData::userData($uid);
// 处理个人详情数据
if (isset($userData['data']) && !empty($userData['data'])) {
$result = $userData['data'];
$result['head_ico'] = Images::getImageUrl($result['head_ico'], 150, 150);
}
return $result;
}
/**
* 处理用户订单数据
*
* @param int $uid 用户ID
* @param int $type 订单类型,1表示全部,2表示待付款,3表示待发货,4表示待收货,5表示待评价
* @return array|mixed 处理之后的个人详情数据
*/
public static function getUserOrderData($uid, $type)
{
$result = array();
// 调用接口获取用户订单数据
$orderData = UserData::orderData($uid, $type);
// 处理用户订单数据
if (isset($orderData['data']) && !empty($orderData['data'])) {
$result = $orderData['data'];
}
return $result;
}
/**
* 处理用户收藏的商品数据
*
* @param int $uid 用户ID
* @return array|mixed 处理之后的收藏的商品数据
*/
public static function getFavProductData($uid)
{
$result = array();
// 调用接口获取用户收藏的商品数据
$favProduct = UserData::favoriteProductData($uid);
// 处理用户收藏的商品数据
if (isset($favProduct['data']) && !empty($favProduct['data'])) {
$result = $favProduct['data'];
}
return $result;
}
/**
* 处理用户收藏的品牌数据
*
* @param int $uid 用户ID
* @param string $gender 性别 1,3表示男,2,3表示女,1,2,3表示全部
* @return array|mixed 处理之后的收藏的品牌数据
*/
public static function getFavBrandData($uid, $gender)
{
$result = array();
// 调用接口获取户收藏的品牌数据
$favBrand = UserData::favoriteBrandData($uid, $gender);
// 处理用户收藏的品牌数据
if (isset($favBrand['data']) && !empty($favBrand['data'])) {
$result = $favBrand['data'];
}
return $result;
}
/**
* 处理YOHO币数据
*
* @param int $uid 用户ID
* @return array|mixed 处理之后的YOHO币数据
*/
public static function getYohoCoinData($uid)
{
$result = array();
// 调用接口获取YOHO币
$yohoCoin = UserData::yohoCoinData($uid);
// 处理YOHO币数据
if (isset($yohoCoin['data']) && !empty($yohoCoin['data'])) {
$result = $yohoCoin['data'];
}
return $result;
}
/**
* 处理优惠券数据
*
* @param int $uid 用户ID
* @return array|mixed 处理之后的优惠券数据
*/
public static function getCouponData($uid, $status)
{
$result = array();
// 调用接口获取优惠券数据
$coupons = UserData::couponData($uid, $status);
// 处理优惠券数据
if (isset($coupons['data']) && !empty($coupons['data'])) {
$result = $coupons['data'];
}
return $result;
}
/**
* 处理地址数据
*
* @param int $uid 用户ID
* @return array|mixed 处理之后的地址数据
*/
public static function getAddressData($uid)
{
$result = array();
// 调用接口获取地址数据
$address = UserData::addressData($uid);
// 处理地址数据
if (isset($address['data']) && !empty($address['data'])) {
$result = $address['data'];
}
return $result;
}
/**
* 处理意见反馈数据
*
* @param string $udid 客户端唯一标识
* @param int $page 第几页,默认1
* @param int $limit 限制读取的数目,默认10
* @return array|mixed 处理之后的意见反馈数据
*/
public static function getSuggestData($udid, $page, $limit)
{
$result = array();
// 调用接口获取地址数据
$suggest = UserData::suggestData($udid, $page, $limit);
print_r($suggest);
// 处理意见反馈数据
if (isset($suggest['data']) && !empty($suggest['data'])) {
$result = $suggest['data'];
}
return $result;
}
/**
* 保存意见反馈数据
*
* @param int $uid 用户ID
* @param string $content 意见内容
* @param int $suggest_type 意见类型
* @return array|mixed 保存意见反馈数据之后的返回
*/
public static function saveSuggestData($uid, $content, $suggest_type)
{
$result = array();
// 调用接口保存意见反馈数据
return UserData::suggestData($uid, $content, $suggest_type);
}
}
... ...