...
|
...
|
@@ -31,198 +31,200 @@ class ShoppingCartController extends AbstractAction |
|
|
$this->_view->display('index', $data);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 移出购物车
|
|
|
*/
|
|
|
public function delAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$productId = $this->post('id', 0);
|
|
|
$uid = $this->getUid(true);
|
|
|
$shoppingKey = $this->getSession('shoppingKey');
|
|
|
$result = CartModel::removeFromCart($uid, $productId, $shoppingKey);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 移入收藏夹
|
|
|
*/
|
|
|
public function colAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$productId = $this->post('id', 0);
|
|
|
$uid = $this->getUid(true);
|
|
|
$result = CartModel::addToFav($uid, $productId);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/*
|
|
|
* 获取购物车商品数据
|
|
|
*/
|
|
|
public function goodinfoAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$num = $this->get('buy_num', 1);
|
|
|
$skn = $this->get('id', 1);
|
|
|
$uid = $this->getUid(true);
|
|
|
$result = CartModel::cartProductData($uid, $skn, $num); // 测试skn的ID为51172055
|
|
|
$result['num'] = $num;
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/*
|
|
|
* 获取购物车加价购商品数据
|
|
|
*/
|
|
|
public function giftinfoAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$skn = $this->get('skn', null);
|
|
|
$promotionId = $this->get('promotionId', null);
|
|
|
$result = CartModel::giftProductData($skn, $promotionId);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 修改购物车商品数据
|
|
|
*/
|
|
|
public function modifyAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$shoppingKey = $this->getSession('shoppingKey');
|
|
|
$uid = $this->getUid(true);
|
|
|
|
|
|
$params = array();
|
|
|
$params['old_product_sku']= $this->post('old_product_sku', 0);
|
|
|
$params['new_product_sku']= $this->post('new_product_sku', 0);
|
|
|
$params['buy_number']= $this->post('buy_number', 0);
|
|
|
$params['selected']= $this->post('selected', null);
|
|
|
$result = CartModel::modifyCartProduct($uid, $params, $shoppingKey);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 购物车结算请求
|
|
|
*/
|
|
|
public function orderEnsureAction()
|
|
|
{
|
|
|
$this->setTitle('购物车');
|
|
|
$this->setNavHeader('购物车');
|
|
|
|
|
|
$cartType = $this->post('cartType', 'ordinary');
|
|
|
$cookieData = $this->getCookie('order-info', null);
|
|
|
$uid = $this->getUid(true);
|
|
|
$data = array(
|
|
|
'orderEnsurePage' => true,
|
|
|
'orderEnsure' => CartModel::cartPay($uid, $cartType, $cookieData)
|
|
|
);
|
|
|
|
|
|
|
|
|
$this->_view->display('order-ensure', $data);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 购物车选择改变字段,重新运算订单数据
|
|
|
*/
|
|
|
public function orderComputeAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$cartType = $this->post('cartType', 'ordinary');
|
|
|
$deliveryWay = $this->post('deliveryWay', 1);
|
|
|
$paymentType = $this->post('paymentType', 1);
|
|
|
$couponCode = $this->post('paymentType', null);
|
|
|
$yohoCoin = $this->post('paymentType', null);
|
|
|
$uid = $this->getUid(true);
|
|
|
$result = CartModel::orderCompute($uid, $cartType, $deliveryWay, $paymentType, $couponCode, $yohoCoin);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 购物车输入优惠券码使用优惠券
|
|
|
*/
|
|
|
public function couponSearchAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$couponCode = $this->get('couponCode', '');
|
|
|
$uid = $this->getUid(true);
|
|
|
$result = CartModel::searchCoupon($uid, $couponCode);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 购物车结算--获取优惠券列表
|
|
|
*/
|
|
|
public function couponListAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$uid = $this->getUid(true);
|
|
|
$page = $this->get('page', 1);
|
|
|
$result = CartModel::getCouponList($uid);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
/**
|
|
|
* 移出购物车
|
|
|
*/
|
|
|
public function delAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$productId = $this->post('id', 0);
|
|
|
$uid = $this->getUid(true);
|
|
|
$shoppingKey = $this->getSession('shoppingKey');
|
|
|
$result = CartModel::removeFromCart($uid, $productId, $shoppingKey);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 移入收藏夹
|
|
|
*/
|
|
|
public function colAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$productId = $this->post('id', 0);
|
|
|
$uid = $this->getUid(true);
|
|
|
$result = CartModel::addToFav($uid, $productId);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/*
|
|
|
* 获取购物车商品数据
|
|
|
*/
|
|
|
|
|
|
public function goodinfoAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$num = $this->get('buy_num', 1);
|
|
|
$skn = $this->get('id', 1);
|
|
|
$uid = $this->getUid(true);
|
|
|
$result = CartModel::cartProductData($uid, $skn, $num); // 测试skn的ID为51172055
|
|
|
$result['num'] = $num;
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/*
|
|
|
* 获取购物车加价购商品数据
|
|
|
*/
|
|
|
|
|
|
public function giftinfoAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$skn = $this->get('skn', null);
|
|
|
$promotionId = $this->get('promotionId', null);
|
|
|
$result = CartModel::giftProductData($skn, $promotionId);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 修改购物车商品数据
|
|
|
*/
|
|
|
public function modifyAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$shoppingKey = $this->getSession('shoppingKey');
|
|
|
$uid = $this->getUid(true);
|
|
|
|
|
|
$params = array();
|
|
|
$params['old_product_sku'] = $this->post('old_product_sku', 0);
|
|
|
$params['new_product_sku'] = $this->post('new_product_sku', 0);
|
|
|
$params['buy_number'] = $this->post('buy_number', 0);
|
|
|
$params['selected'] = $this->post('selected', null);
|
|
|
$result = CartModel::modifyCartProduct($uid, $params, $shoppingKey);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 购物车结算请求
|
|
|
*/
|
|
|
public function orderEnsureAction()
|
|
|
{
|
|
|
$this->setTitle('购物车');
|
|
|
$this->setNavHeader('购物车');
|
|
|
|
|
|
$cartType = $this->post('cartType', 'ordinary');
|
|
|
$cookieData = $this->getCookie('order-info', null);
|
|
|
$uid = $this->getUid(true);
|
|
|
$data = array(
|
|
|
'orderEnsurePage' => true,
|
|
|
'orderEnsure' => CartModel::cartPay($uid, $cartType, $cookieData)
|
|
|
);
|
|
|
|
|
|
|
|
|
$this->_view->display('order-ensure', $data);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 购物车选择改变字段,重新运算订单数据
|
|
|
*/
|
|
|
public function orderComputeAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$cartType = $this->post('cartType', 'ordinary');
|
|
|
$deliveryWay = $this->post('deliveryWay', 1);
|
|
|
$paymentType = $this->post('paymentType', 1);
|
|
|
$couponCode = $this->post('paymentType', null);
|
|
|
$yohoCoin = $this->post('paymentType', null);
|
|
|
$uid = $this->getUid(true);
|
|
|
$result = CartModel::orderCompute($uid, $cartType, $deliveryWay, $paymentType, $couponCode, $yohoCoin);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 购物车输入优惠券码使用优惠券
|
|
|
*/
|
|
|
public function couponSearchAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$couponCode = $this->get('couponCode', '');
|
|
|
$uid = $this->getUid(true);
|
|
|
$result = CartModel::searchCoupon($uid, $couponCode);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 购物车结算--获取优惠券列表
|
|
|
*/
|
|
|
public function couponListAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$uid = $this->getUid(true);
|
|
|
$page = $this->get('page', 1);
|
|
|
$result = CartModel::getCouponList($uid);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 下单流程 选择地址
|
...
|
...
|
@@ -233,7 +235,7 @@ class ShoppingCartController extends AbstractAction |
|
|
$this->setTitle('选择地址');
|
|
|
$this->setNavHeader('选择地址', Helpers::url('/shoppingCart/orderEnsure'));
|
|
|
|
|
|
$uid = $this->getUid(true);
|
|
|
$uid = $this->getUid(true);
|
|
|
$address = UserModel::getAddressData($uid);
|
|
|
|
|
|
$this->_view->display('select-address', array(
|
...
|
...
|
@@ -257,35 +259,71 @@ class ShoppingCartController extends AbstractAction |
|
|
));
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 确认结算订单
|
|
|
*/
|
|
|
public function orderSubAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$uid = $this->getUid(true);
|
|
|
$addressId = $this->post('addressId', null);
|
|
|
$cartType = $this->post('cartType', 'ordinary'); // 默认普通购物车
|
|
|
$deliveryTime = $this->post('deliveryTime', 1); // 默认只工作日配送
|
|
|
$deliveryWay = $this->post('deliveryWay', 1); // 默认普通快递
|
|
|
$invoiceTitle = $this->post('invoiceTitle', null);
|
|
|
$invoiceId = $this->post('invoiceId', null);
|
|
|
$paymentId = $this->post('paymentId', 15);
|
|
|
$paymentType = $this->post('paymentType', 1); // 默认在线支付
|
|
|
$remark = $this->post('remark', null); // 默认在线支付
|
|
|
$yohoCoin = $this->post('yohoCoin', 1);
|
|
|
$result = CartModel::orderSub($uid, $addressId, $cartType, $deliveryTime, $deliveryWay, $invoiceTitle, $invoiceId, $paymentId, $paymentType, $remark, $yohoCoin);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
// 提交成功清除Cookie
|
|
|
$this->setCookie('orderInfo', null);
|
|
|
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
/**
|
|
|
* 确认结算订单
|
|
|
*/
|
|
|
public function orderSubAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$uid = $this->getUid(true);
|
|
|
$addressId = $this->post('addressId', null);
|
|
|
$cartType = $this->post('cartType', 'ordinary'); // 默认普通购物车
|
|
|
$deliveryTime = $this->post('deliveryTime', 1); // 默认只工作日配送
|
|
|
$deliveryWay = $this->post('deliveryWay', 1); // 默认普通快递
|
|
|
$invoiceTitle = $this->post('invoiceTitle', null);
|
|
|
$invoiceId = $this->post('invoiceId', null);
|
|
|
$paymentId = $this->post('paymentId', 15);
|
|
|
$paymentType = $this->post('paymentType', 1); // 默认在线支付
|
|
|
$remark = $this->post('remark', null); // 默认在线支付
|
|
|
$yohoCoin = $this->post('yohoCoin', 1);
|
|
|
$result = CartModel::orderSub($uid, $addressId, $cartType, $deliveryTime, $deliveryWay, $invoiceTitle, $invoiceId, $paymentId, $paymentType, $remark, $yohoCoin);
|
|
|
}
|
|
|
|
|
|
if (empty($result)) {
|
|
|
echo ' ';
|
|
|
} else {
|
|
|
// 提交成功清除Cookie
|
|
|
$this->setCookie('orderInfo', null);
|
|
|
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 加入购物车
|
|
|
*
|
|
|
* @param string productSku 商品的SKU
|
|
|
* @param int buyNumber 购买数量
|
|
|
* @param int promotionId 促销ID, 加价购有关
|
|
|
* @param int goodsType 商品类型,0表示普通商品,1表示加价购商品
|
|
|
* @param int isEdit 是否是编辑商品SKU,0表示不是编辑
|
|
|
* @return json
|
|
|
*/
|
|
|
public function addAction()
|
|
|
{
|
|
|
$result = array();
|
|
|
|
|
|
if ($this->isAjax()) {
|
|
|
$shoppingKey = Helpers::getShoppingKeyByCookie();
|
|
|
$productSku = $this->post('productSku');
|
|
|
$buyNumber = $this->post('buyNumber', 1);
|
|
|
$goodsType = $this->post('goodsType', 0);
|
|
|
$promotionId = $this->post('promotionId', 0);
|
|
|
$isEdit = $this->post('isEdit', 0);
|
|
|
$uid = $this->getUid(true);
|
|
|
|
|
|
// 执行加入购物车操作
|
|
|
$result = CartModel::addToCart($productSku, $buyNumber, $goodsType, $isEdit, $promotionId, $uid, $shoppingKey);
|
|
|
|
|
|
// 设置加入购物车凭证到客户端浏览器
|
|
|
if (isset($result['data']['shopping_key'])) {
|
|
|
$this->setCookie('_spk', $shoppingKey);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
$this->echoJson($result);
|
|
|
}
|
|
|
|
|
|
} |
...
|
...
|
|