Authored by 毕凯

增加 YOHO 币 详情页面

$vip: sprite-map("me/vip/*.png", $spacing: 10px);
$fav: sprite-map("me/fav/*.png", $spacing: 5px);
@import "home", "vip-grade", "order", "order-detail", "coupons", "personal-details", "yoho-coin", "fav", "suggest", "address", "online-service", "my-guang", "ihelp", "browse-record", "yoho-coin-new";
@import "home", "vip-grade", "order", "order-detail", "coupons", "personal-details", "yoho-coin", "fav", "suggest", "address", "online-service", "my-guang", "ihelp", "browse-record", "yoho-coin-new", "yoho-coin-detail";
... ...
.yoho-coin-detail-page {
background: #f0f0f0;
padding-bottom: pxToRem(40px);
.coin-detail {
background: #fff;
border-top: 1px solid #e0e0e0;
border-bottom: 1px solid #e0e0e0;
}
.detail-item {
position: relative;
margin-left: pxToRem(30px);
border-bottom: 1px solid #e0e0e0;
color: #444;
padding: pxToRem(15px) 0;
.title {
width: pxToRem(480px);
font-size: pxToRem(28px);
line-height: pxToRem(40px);
font-weight: bold;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.time {
font-size: pxToRem(20px);
line-height: pxToRem(30px);
color: #b0b0b0;
}
.count {
position: absolute;
right: 0;
top: 0;
margin-right: pxToRem(30px);
font-size: pxToRem(28px);
font-weight: bold;
line-height: pxToRem(100px);
}
}
li:last-child {
.detail-item {
border-bottom: none;
}
}
}
... ...
{{> layout/header}}
<div class="yoho-coin-detail-page yoho-page">
<ul class="coin-detail">
{{# currency}}
<li>
<div class="detail-item">
<p class="title">{{title}}</p>
<p class="time">{{time}}</p>
<div class="count">
{{count}}
</div>
</div>
</li>
{{/ currency}}
</ul>
</div>
{{> layout/footer}}
... ...
... ... @@ -277,14 +277,11 @@
</script>
{{/if}}
{{#if browseRecordPage}}
<<<<<<< HEAD
<script>
seajs.use('js/me/browse-record');
</script>
{{/if}}
{{#if logisticInfoPage}}
=======
>>>>>>> feature/hf
<script>
seajs.use('js/me/logistic');
</script>
... ...
... ... @@ -18,754 +18,6 @@ use Index\UserModel as UserModel;
class HomeController extends AbstractAction
{
<<<<<<< HEAD
protected $_uid;
/**
* 初始化
*/
public function init()
{
// 检查用户是否登录, 未登录则跳转到登录页
// @todo 为了方便测试,支持传uid参数
$uid = $this->getUid();
/*if (!$uid) {
$uid = $this->_uid = $this->get('uid', 8826435); //$this->getUid(true);
}*/
$action = $this->getRequest()->getActionName();
if (!$uid && $action !== 'index') {
$this->go(Helpers::url('/signin.html', array('refer' => $this->server('HTTP_REFERER', '/')) ) );
}
parent::init();
}
/**
* 个人中心入口
*/
public function indexAction()
{
// 设置网站标题
$this->setTitle('个人中心');
$this->setNavHeader('个人中心');
$data = array(
'myIndexPage' => true,
'showDownloadApp' => true,
'pageFooter' => true
);
$uid = $this->getUid();
if ($uid) {
$data['isLogin'] = true;
$data += UserModel::getUserProfileData($uid);
$data += UserModel::getInfoNumData($uid);
}
$this->_view->display('index', $data);
}
/**
* 为您优选
*/
public function preferenceAction()
{
$result = array();
if ($this->isAjax()) {
// 优选新品数据
$channel = Helpers::getChannelByCookie();
$result = UserModel::getPreferenceData($channel);
}
if (empty($result)) {
echo ' ';
} else {
$this->_view->display('recommend-content', $result);
}
}
/**
* 用户收藏的商品
*/
public function favoriteAction()
{
// 设置网站标题
$this->setTitle('我的收藏');
$this->setNavHeader('我的收藏', true, SITE_MAIN);
$tab = $this->get('tab', '');
$data = array(
'favPage' => true, //加载js
'pageFooter' => true,
'favorite' => true,
'productUrl' => '/product/new',
'brandUrl' => '/product/new',
);
// 判断是否为品牌收藏页
if ($tab === 'brand') {
$data['brandTab'] = true;
}
$this->_view->display('favorite', $data);
}
/**
* 用户收藏的商品数据获取接口
*/
public function favProductAction() {
$result = array();
if ($this->isAjax()) {
$page = $this->post('page', 1);
$result = UserModel::getFavProductData($this->_uid, $page, 10);
}
if (empty($result)) {
echo ' ';
} else if (isset($result['end'])) {
echo 'end';
} else {
$this->_view->display('favorite_product', $result);
}
}
/**
* 用户收藏的品牌数据获取接口
*/
public function favBrandAction() {
$result = array();
if ($this->isAjax()) {
$page = $this->post('page', 1);
$gender = Helpers::getGenderByCookie();
$result = UserModel::getFavBrandData($this->_uid, $gender, $page, 10);
}
if (empty($result)) {
echo ' ';
} else if (isset($result['end'])) {
echo 'end';
} else {
$this->_view->display('favorite_brand', $result);
}
}
/**
* 用户收藏的商品-删除
*/
public function favoriteDelAction()
{
$result = array();
if ($this->isAjax()) {
$uid = $this->getUid();
$fav_id = $this->post('id', 0);
$result = UserModel::favoriteDelete($uid, $fav_id);
}
if (empty($result)) {
echo ' ';
} else {
$this->echoJson($result);
}
}
/**
* 浏览记录
*/
public function recordAction()
{
$result = array();
if ($this->isAjax()) {
$uid = $this->getUid();
$udid = $this->getUdid();
$page = $this->get('page', 1);
$limit = $this->get('limit', 100);
$result = UserModel::browserRecord($uid, $udid, $page, $limit);
}
if (empty($result)) {
echo ' ';
} else {
$this->echoJson($result);
}
}
/**
* 个人信息
*/
public function mydetailsAction()
{
$this->setTitle('个人信息');
$this->setNavHeader('个人信息');
$uid = $this->getUid();
$data = UserModel::getUserProfileData($uid);
$data['personalDetailsPage'] = true;
$data['pageFooter'] = true;
$this->_view->display('personal-details', $data);
}
/**
* YOHO币
*/
public function currencyAction()
{
$this->setTitle('YOHO币');
$this->setNavHeader('YOHO币', true, false);
$uid = $this->getUid();
$currency = UserModel::getYohoCoinData($uid);
$currency['pageFooter'] = true;
$this->_view->display('currency', $currency);
}
/**
* YOHO币
*/
public function currencyNewAction()
{
$this->setTitle('YOHO币');
$this->setNavHeader('YOHO币', true, false);
$uid = $this->getUid();
$currency = UserModel::getYohoCoinData($uid);
$currency['pageFooter'] = true;
$this->_view->display('currency-new', $currency);
}
/**
* 优惠券
*/
public function couponsAction()
{
$this->setTitle('优惠券');
$this->setNavHeader('优惠券');
$uid = $this->getUid();
$coupons = array(
'couponsUrl' => UserModel::getCouponData($uid, 1),
'couponsPage' => true
);
$coupons['pageFooter'] = true;
$this->_view->display('coupons', $coupons);
}
/**
* 我的消息
*
* 暂时使用老的,因后面APP、PC、WAP会进行一次改版
*/
public function messageAction()
{
// $uid = $this->getUid();
// $page = $this->get('page', 0);
// $size = $this->get('size', 10);
//
// $messages = UserModel::getMessageData($uid, $page, $size);
}
/**
* 地址管理
*/
public function addressAction()
{
// 设置网站标题
$this->setTitle('地址管理');
$this->setNavHeader('地址管理');
$uid = $this->getUid();
$address = UserModel::getAddressData($uid);
$addressList = UserModel::getAddressListData($uid);
$this->_view->display('address', array(
'addressPage' => true,
'pageFooter' => true,
'address' => $address,
'addressList' => $addressList
));
}
/**
* 地址编辑或添加页面
*/
public function addressActAction() {
$id = $this->get('id', null);
$data = array(
'addressActionPage' => true,
'pageFooter' => true,
'addressList' => UserModel::getAddressListData($this->_uid)
);
if ($id !== null) { // 编辑地址
// 设置网站标题
$this->setTitle('编辑地址');
$this->setNavHeader('编辑地址');
$data['id'] = $id;
// 获取特定地址的数据
$data['address'] = UserModel::getAddressDataById($this->_uid, $id);
} else {
// 设置网站标题
$this->setTitle('添加地址');
$this->setNavHeader('添加地址');
}
$this->_view->display('address-act', $data);
}
/**
* 修改地址或者添加新地址
*/
public function saveAddressAction()
{
$result = array();
if ($this->isAjax()) {
$uid = $this->getUid();
$address = $this->post('address', '');
$area_code = $this->post('area_code', '');
$consignee = $this->post('consignee', '');
$email = $this->post('email', '');
$id = $this->post('id', null);
$mobile = $this->post('mobile', '');
$zip_code = $this->post('zip_code', '');
$result = UserModel::saveAddressData($uid, $address, $area_code, $consignee, $email, $id, $mobile, $zip_code);
}
if (empty($result)) {
echo ' ';
} else {
$this->echoJson($result);
}
}
/**
* 设置默认地址
*/
public function defaultAddressAction()
{
$result = array();
if ($this->isAjax()) {
$uid = $this->getUid();
$id = $this->post('id', '');
$result = UserModel::setDefaultAddress($uid, $id);
}
if (empty($result)) {
echo ' ';
} else {
$this->echoJson($result);
}
}
/**
* 删除地址
*/
public function delAddressAction()
{
$result = array();
if ($this->isAjax()) {
$uid = $this->getUid();
$id = $this->post('id', '');
$result = UserModel::deleteAddress($uid, $id);
}
if (empty($result)) {
echo ' ';
} else {
$this->echoJson($result);
}
}
/**
* 在线客服
*/
public function onlineServiceAction()
{
// 设置网站标题
$this->setTitle('在线客服');
$this->setNavHeader('在线客服', true, SITE_MAIN);
$service = Home\OnlineModel::getOnlineServiceInfo();
$this->_view->display('online-service', array(
'onlineServicePage' => true,
'pageFooter' => true,
'service' => $service
));
}
/**
* 在线客服-具体详情
*/
public function onlineServiceDetailAction()
{
$service = array();
$cateId = $this->get('cateId', 0);
$cateName = $this->get('cateName', '');
if ($cateId > 0) {
$service = Home\OnlineModel::getOnlineServiceDetail($cateId);
}
$this->setTitle('在线客服');
$this->setNavHeader($cateName, true, '');
$this->_view->display('online-service-detail', $service);
}
/**
* 我的逛
*/
public function myguangAction()
{
$page = $this->get('page', 1);
$limit = $this->get('limit', 10);
$uid = $this->getUid();
$gender = Helpers::getGenderByCookie();
$yh_channel = Helpers::getChannelByCookie();
$guangInfo = \Home\GuangModel::getMyGuang($uid, $page, $yh_channel, $gender, $limit);
$totalPage = $guangInfo['totalPage'];
if ($page == 1) {
$this->setTitle('我收藏的');
$this->setNavHeader('我收藏的', true, '');
$this->_view->display('my-guang', array('myGuangPage' => true, 'myGuang' => array('infos' => $guangInfo), 'pageFooter' => true));
} else if ($page > 1 && $page <= $totalPage) {
$this->_view->display('my-guang-partial', array('infos' => $guangInfo));
} else if ($page > 1 && $page > $totalPage) {
echo ' '; //退出循环
}
}
/**
* 意见反馈
*/
public function suggestAction()
{
// 设置网站标题
$this->setTitle('意见反馈');
$this->setNavHeader('意见反馈', true, SITE_MAIN);
$udid = $this->getUdid();
$page = $this->get('page', 1);
$limit = $this->get('limit', 30);
$suggest = UserModel::getSuggestData($udid, $page, $limit);
$this->_view->display('suggest', array(
'suggestPage' => true, //加载js
'pageFooter' => true,
'suggest' => true,
'suggestContent' => $suggest
));
}
/**
* 意见反馈-提交表单页面
*/
public function suggestSubAction()
{
// 设置网站标题
$this->setTitle('反馈问题');
$data = array(
'suggestPage' => true, //加载js
'pageHeader' => array(
'navBack' => true,
'navTitle' => '反馈问题',
'navBtn' => '提交'
),
'suggestSub' => true,
'pageFooter' => true
);
$this->_view->display('suggest-sub', $data);
}
/**
* 异步上传图片
*/
public function suggestimgUploadAction()
{
//$filename = $this->post('filename', '');
$result = UserModel::saveSuggestImg('fileData');
$this->echoJson($result);
}
/**
* 异步保存意见反馈数据
*/
public function savesuggestAction()
{
if ($this->isAjax()) {
$uid = $this->getUid();
$content = $this->post('content', '');
$suggest_type = $this->post('suggest_type', 2);
$image = $this->post('image', null);
$result = UserModel::saveSuggestData($uid, $content, $image, $suggest_type);
$this->echoJson($result);
}
}
/**
* 异步点击靠谱或者不靠谱
*/
public function upAndDownAction()
{
if ($this->isAjax()) {
$uid = $this->getUid();
$udid = $this->getUdid();
$suggest_id = $this->post('suggest_id', 0);
$result = UserModel::upAndDown($uid, $udid, $suggest_id);
$this->echoJson($result);
}
}
/**
* 会员等级展示页
*/
public function gradeAction()
{
//设置网站seo信息
$this->setTitle('会员等级');
//显示网站导航头部信息
$this->setNavHeader('会员等级');
$gender = Helpers::getGenderByCookie();
$channel = Helpers::getChannelByCookie();
$uid = $this->getUid();
$data = GradeModel::getGrade($gender, $channel, $uid);
$data['pageFooter'] = true;
$this->_view->display('vip-grade', $data);
}
/*
* 会员特权查看页
*/
public function preferentialAction()
{
//设置网站seo信息
$this->setTitle('会员等级');
//显示网站导航头部信息
$this->setNavHeader('会员特权详情');
$channel = Helpers::getChannelByCookie();
$uid = $this->getUid();
$data = GradeModel::getPreferential($channel, $uid);
$data['pageFooter'] = true;
$this->_view->display('privilege', $data);
}
/*
* 我的订单页面,获得nav导航条焦点。并且异步请求订单详情列表页(getOrders)
*/
public function orderAction()
{
//获得type值,type:1=>全部,2=>待付款,3=>待发货,4=>待收货,5=>待评论。
$type = $this->get('type', 1);
$this->setTitle('我的订单');
$this->setNavHeader('我的订单');
$data = OrderModel::getNavs($type);
if (!empty($data)) {
$order['navs'] = $data;
} else {
$this->error();
}
//渲染模板
$this->_view->display('order', array(
'order' => $order,
'pageFooter' => true,
'orderPage' => true
));
}
/**
* ajax请求订单页面
*/
public function getOrdersAction()
{
//判断是不是ajax请求
if (!$this->isAjax()) {
$this->error();
}
//获取基本参数:type:1=>全部,2=>待付款,3=>待发货,4=>待收货,5=>待评论
$type = $this->get('type', 1);
$page = $this->get('page', 1);
$limit = $this->get('limit', 10);
$gender = Helpers::getGenderByCookie();
$yh_channel = $this->get('yh_channel', 1);
$uid = $this->getUid();
$uid = '10267443';
//调用模型层getOrder方法获得并处理数据
$data = OrderModel::getOrder($type, $page, $limit, $gender, $yh_channel, $uid);
/* 如果取不到订单数据时,分两种情况:
1、page>1时,echo一个空格字符串到浏览器。
2、page=1时,就给一个随便逛逛的链接。
* */
$order = array();
if (!empty($data)) {
$order['orders'] = $data;
} else {
if ($page > 1) {
echo " ";
} elseif ($page == 1) {
$order['walkwayUrl'] = self::strollAction();
}
}
//渲染模板
$this->_view->display('order-content', $order);
}
/*
* 我的订单-取消订单
*/
public function cancelOrderAction()
{
//判断是不是ajax请求
if (!$this->isAjax()) {
$this->error();
}
//传入order_code和uid以取消订单
$order_code = $this->get('id');
$uid = $this->getUid();
$gender = Helpers::getGenderByCookie();
$yh_channel = $this->get('yh_channel', 1);
//调用取消订单接口,返回订单取消状态
$data = OrderData::cancelOrderData($order_code, $uid, $gender, $yh_channel);
//将取消状态返回至浏览器
$this->echoJson($data);
}
/*
* 我的订单-删除订单
*/
public function delOrderAction()
{
//判断是不是ajax请求
if (!$this->isAjax()) {
$this->error();
}
//传入order_code和uid以删除订单
$order_code = $this->get('id');
$uid = $this->getUid();
$gender = Helpers::getGenderByCookie();
$yh_channel = $this->get('yh_channel', 1);
//调用接口删除订单,并返回订单删除状态
$data = OrderData::deleteOrderData($order_code, $uid, $gender, $yh_channel);
//将订单删除状态返回至浏览器
$this->echoJson($data);
}
/*
* 我的订单-支付链接获取
*/
private function paymentAction()
{
$gender = Helpers::getGenderByCookie();
$yh_channel = $this->get('yh_channel', 1);
OrderModel::payment($gender, $yh_channel);
}
/*
* 我的订单-随便逛逛链接获取
*/
private function strollAction()
{
//获取性别、频道数据
$gender = Helpers::getGenderByCookie();
$yh_channel = $this->get('yh_channel', 1);
//调用接口获取随便逛逛url地址,并return数据
$data = OrderModel::stroll($gender, $yh_channel);
return $data;
}
/**
* 订单详情页
*/
public function orderDetailAction()
{
$data = array(
'name' => '毛毛莉Lydia',
'phoneNum' => '18600001133',
'address' => '南京市建邺区嘉陵江东街18号国家广告产业园5栋17楼',
'orderStatus' => '订单取消',
'orderNum' => '418358063',
'orderTime' => '2014-03-10 17:25:10',
'orderCancel' => true,
'goods' => array(
array(
'id' => 1,
'thumb' => 'http://img11.static.yhbimg.com/goodsimg/2015/11/04/05/01ce2aff32fc3c90584f516167cd526d91.jpg?imageMogr2/thumbnail/235x314/extent/235x314/background/d2hpdGU=/position/center/quality/90',
'name' => 'Adidas Originals ZX FLUXM22508',
'color' => '黄',
'size' => '43',
'price' => '699.00',
'count' => '2'
),
array(
'id' => 1,
'thumb' => 'http://img10.static.yhbimg.com/goodsimg/2015/11/04/05/0188f1aca49ac478a565ec029b5d2d4a6c.jpg?imageMogr2/thumbnail/235x314/extent/235x314/background/d2hpdGU=/position/center/quality/90',
'name' => 'B.Duck浴室玩伴mini浮水鸭',
'gift' => true,
'color' => '黄',
'size' => '43',
'price' => '0.00',
'count' => '1'
)
),
'sumPrice' => 799,
'salePrice' => 80,
'freight' => 5,
'coupon' => 0,
'yohoCoin' => 5,
'price' => 719
);
$this->_view->display('order-detail', array('orderDetail' => $data, 'orderDetailPage' => true));
}
/**
* 帮助列表页
*/
private function IHelpAction()
{
$this->setTitle('帮助中心');
$this->setNavHeader('帮助中心');
$data = array(
'iHelp' => array(
array('name' => '新用户注册','url' => 'http://m.dev.yohobuy.com/' ),
array('name' => '交款须知' ,'url' => 'http://m.dev.yohobuy.com/'),
array('name' => '服务条款' ,'url' => 'http://m.dev.yohobuy.com/'),
array('name' => '网站订购流程' ,'url' => 'http://m.dev.yohobuy.com/'),
array('name' => '会员登录' ,'url' => 'http://m.dev.yohobuy.com/'),
array('name' => '网站订单修改' ,'url' => 'http://m.dev.yohobuy.com/'),
array('name' => 'YOHO币' ,'url' => 'http://m.dev.yohobuy.com/'),
array('name' => '常见问题' ,'url' => 'http://m.dev.yohobuy.com/'),
array('name' => '支付方式' ,'url' => 'http://m.dev.yohobuy.com/'),
array('name' => '发票制度说明' ,'url' => 'http://m.dev.yohobuy.com/'),
array('name' => '配送时间' ,'url' => 'http://m.dev.yohobuy.com/')
)
);
$this->_view->display('i-help', $data);
}
=======
protected $_uid;
/**
... ... @@ -1567,5 +819,83 @@ class HomeController extends AbstractAction
$this->_view->display('i-help', $data);
}
>>>>>>> develop
/**
* YOHO币详情 新版
*/
public function currencyDetailAction()
{
$this->setTitle('YOHO币');
$this->setNavHeader('YOHO币', true, false);
$uid = $this->getUid();
$currency = array(
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋运动鞋运动鞋运动鞋运动鞋运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
),
array(
'title' => '购买商品 Nike XXXXXX 运动鞋',
'time' => '2015.11.23 12:45:33',
'count' => '+943'
)
);
$this->_view->display('currency-detail', array(
'currency' => $currency,
'pageFooter' => true,
'currencyDetailPage' => true
));
}
}
... ...