Commit e8b75618 authored by zhz's avatar zhz

Merge branch 'master_dev' of git.shenbd.com:qm-develop/shenbd into master_dev

parents 83407fe5 daf366f9
......@@ -116,8 +116,14 @@ class CartController extends \Our\Controller_AbstractApi{
//var_dump($storeCartData);
$storeCartData = $cartService->checkCouponForCart($storeCartData,$this->memberId);
//$this->success($storeCartData);
if(CURRENTVERSION==\Our\NameConst::versionOne){
$storeCartData = $cartService->getDeliveryTypeForCartNew($address,$storeCartData);
//$this->success($storeCartData);
$data = $cartService->getFormatCartListForOrderNew($storeCartData,$address);
}else{
$storeCartData = $cartService->getDeliveryTypeForCart($address,$storeCartData);
$data = $cartService->getFormatCartListForOrder($storeCartData,$address);
}
$this->success($data);
}
......@@ -163,30 +169,14 @@ class CartController extends \Our\Controller_AbstractApi{
$storeCartData = array('cartList'=>$cartList['list'],'storeIds'=>array_keys($cartList['list']),'goodsIds'=>$cartList['goodsIds'],'goodsCommonIds'=>$cartList['goodsCommonIds'],'blIds'=>$cartList['blIds'],'gcIds'=>$gcIds);
$storeCartData = $cartService->checkCouponForCart($storeCartData,$this->memberId);
//$this->success($storeCartData);
$storeCartData = $cartService->getDeliveryTypeForCart($address,$storeCartData);
$data = $cartService->getFormatCartListForOrder($storeCartData,$address);
$this->success($data);
}
/**
* 立即购买
*/
public function buyNowNewAction(){
$cartService = \Business\Cart\CartServiceModel::getInstance();
$data = $this->req[\Our\NameConst::data];
$sess=\Yaf\Session::getInstance();
$currentAddress = $sess->get('currentAddress');
$address = $cartService->checkCurrentAddress($currentAddress,$this->memberId);
$cartService->checkBuynow($data,$this->memberId);
$pBundlingService = \Business\Goods\GroupSaleServiceModel::getInstance();
$cartList = $pBundlingService->getFormatBuyNowListForOrder($data,$this->memberId);
$gcIds = isset($cartList['gcIds'])?$cartList['gcIds']:array();
$storeCartData = array('cartList'=>$cartList['list'],'storeIds'=>array_keys($cartList['list']),'goodsIds'=>$cartList['goodsIds'],'goodsCommonIds'=>$cartList['goodsCommonIds'],'blIds'=>$cartList['blIds'],'gcIds'=>$gcIds);
$storeCartData = $cartService->checkCouponForCart($storeCartData,$this->memberId);
if(CURRENTVERSION==\Our\NameConst::versionOne){
$storeCartData = $cartService->getDeliveryTypeForCartNew($address,$storeCartData);
//$this->success($storeCartData);
$data = $cartService->getFormatCartListForOrderNew($storeCartData,$address);
}else{
$storeCartData = $cartService->getDeliveryTypeForCart($address,$storeCartData);
$data = $cartService->getFormatCartListForOrder($storeCartData,$address);
}
$this->success($data);
}
......@@ -196,6 +186,7 @@ class CartController extends \Our\Controller_AbstractApi{
$data = $this->req[\Our\NameConst::data];
$sess=\Yaf\Session::getInstance();
$currentAddress = $sess->get('currentAddress');
$result = $cartService->addOrder($data,$this->memberId,$currentAddress);
$this->success($result);
}
......
......@@ -6,6 +6,17 @@ namespace Our;
* 控制器抽象类
*/
abstract class Controller_Abstract extends \Yaf\Controller_Abstract {
public function init(){
$this->req=$this->getRequest()->getPost();
$version = $this->req['data']['currentVersion'];
if($version){
define('CURRENTVERSION',$version);
}else{
define('CURRENTVERSION',\Our\NameConst::versionDefault);
}
}
public function success($data=array(),$shortMessage = DescribeConst::successMessage,$longMessage=DescribeConst::successMessage,$resultCode=ApiConst::returnSuccess)
{
$returnMessage[NameConst::shortMessage] = $shortMessage;
......
......@@ -21,7 +21,7 @@ abstract class Controller_AbstractApi extends \Our\Controller_Abstract {
* api控制器直接输出json格式数据,不需要渲染视图
*/
public function init() {
$this->req=$this->getRequest()->getPost();
parent::init();
$this->checkEncrypt();
if(empty($this->req['data']['key'])){
ErrorModel::throwException(CodeConfigModel::illegalAccess);
......
......@@ -25,6 +25,7 @@ abstract class Controller_AbstractClient extends \Our\Controller_Abstract {
* api控制器直接输出json格式数据,不需要渲染视图
*/
public function init() {
parent::init();
$this->req=$this->getRequest()->getPost();
$this->checkEncrypt();
if(empty($this->req['data']['key'])){
......
......@@ -22,6 +22,7 @@ abstract class Controller_AbstractIndex extends \Our\Controller_Abstract {
}
}
public function init(){
parent::init();
$this->req=$this->getRequest()->getPost();
$postData=$this->req['data'];
$this->checkEncrypt();
......
......@@ -178,6 +178,9 @@ class NameConst {
const logOut='logOut';
const versionOne = '1.0.0';
const versionDefault = '1.0';
}
?>
\ No newline at end of file
......@@ -89,7 +89,9 @@ class TencentPay {
function postXml()
{
$xml = $this->createXml();
\Our\Log::getInstance()->write($xml,'/data/log/applog');
$this->response = $this->postXmlCurl($xml,$this->pay_url,$this->curl_timeout);
\Our\Log::getInstance()->write(serialize($this->response),'/data/log/applog');
return $this->response;
}
......
......@@ -663,7 +663,7 @@ class CartServiceModel extends \Business\AbstractModel{
* @param $address
* @param $storeCartData
*/
public function getDeliveryTypeForCartNew($address,$storeCartData,$dbName = \Our\DbNameConst::salveDBConnectName){
public function getDeliveryTypeForCartNew($address,$storeCartData,$dbName = \Our\DbNameConst::salveDBConnectName,$checkFlag = false){
$storeIds = $storeCartData['storeIds'];
$storeDao = \DAO\StoreModel::getInstance();
$deliveryFormulaDao = \DAO\DeliveryFormulaModel::getInstance($dbName);
......@@ -695,16 +695,19 @@ class CartServiceModel extends \Business\AbstractModel{
'cityCode' => $store['store_citycode']
);
if($deliverySetting['buyerDistribution']){
$deliverySetting['selfDeliveryTimeList'] = $deliveryFormulaDao->getBuyerFormulaForCart($store);
$selfDeliveryTimeData = $deliveryFormulaDao->getBuyerFormulaForCart($store);
$deliverySetting['selfDeliveryTimeList'] = $selfDeliveryTimeData['timeList'];
$deliverySetting['selfDeliveryFee'] = $selfDeliveryTimeData['default'];
}
$deliverySetting['sellerDistribution'] = $store['seller_distribution'];
if($deliverySetting['sellerDistribution']){
$deliverySetting['leftAmount'] = \Our\ApiConst::zero;
$deliverySetting['inServiceAreaFlag'] = \Our\ApiConst::zero;
//var_dump(json_encode($store));
if((isset($store['start_shipping_price'])&&$store['start_shipping_price']>\Our\ApiConst::zero)&&$storeCarts['storeTotalPrice']<$store['start_shipping_price']){
//$deliverySetting['sellerDistribution'] = \Our\ApiConst::zero;
$deliverySetting['leftAmount'] = $store['start_shipping_price']-$storeCarts['storeTotalPrice'];//差价
}else{
}
$deliveryFreeFlag = $storeCarts['deliveryFreeFlag'];
if((isset($store['free_shipping_price'])&&$store['free_shipping_price']>\Our\ApiConst::zero)&&$storeCarts['storeTotalPrice']>=$store['free_shipping_price']){
$deliveryFreeFlag = \Our\ApiConst::one;
......@@ -715,12 +718,11 @@ class CartServiceModel extends \Business\AbstractModel{
$storeDistance = \Our\CommonExtension::getDistance($address['lat'],$address['lng'],$store['store_latitude'],$store['store_longitude'],\Our\ApiConst::one);
if($result){
$deliverySetting['inServiceAreaFlag'] = \Our\ApiConst::one;
$deliverTimeList = $deliveryFormulaDao->getDeliveryFormulaForCartNew($store,$storeDistance,$deliveryFreeFlag);
$deliverTimeList = $deliveryFormulaDao->getDeliveryFormulaForCartNew($store,$storeCarts,$storeDistance,$deliveryFreeFlag,$checkFlag);
if($deliverTimeList){
$deliverySetting['deliverTimeList'] =$deliverTimeList['timeList'];
$storeCartData['cartList'][$storeId]['storeDistance'] = $storeDistance;
$deliverySetting['defaultFee'] = $deliverTimeList['default']?$deliverTimeList['default']:\Our\ApiConst::zero;
}
$deliverySetting['sellerDefaultFee'] = $deliverTimeList['default']?$deliverTimeList['default']:\Our\ApiConst::zero;
}
}
}
......@@ -964,7 +966,7 @@ class CartServiceModel extends \Business\AbstractModel{
$delivery = array();
$delivery['name'] = \Our\DescribeConst::deliveryNameStore;
$delivery['type'] = \Our\ApiConst::deliveryStore;
$deliveryFee = $deliverySetting['defaultFee'];
$deliveryFee = $deliverySetting['sellerDefaultFee'];
$shippingFee = $deliveryFee;
$delivery['isChoosed'] = \Our\ApiConst::one;
$delivery['deliveryFee'] = $deliveryFee;
......@@ -977,7 +979,7 @@ class CartServiceModel extends \Business\AbstractModel{
$delivery = array();
$delivery['name'] = \Our\DescribeConst::deliveryNameExpress;
$delivery['type'] = \Our\ApiConst::deliveryExpress;
if(isset($shippingFee)){
if($deliverySettings){
$delivery['isChoosed'] = \Our\ApiConst::zero;
}else{
$shippingFee = $deliveryFee;
......@@ -992,7 +994,7 @@ class CartServiceModel extends \Business\AbstractModel{
$delivery = array();
$delivery['name'] = \Our\DescribeConst::deliveryNameBuyer;
$delivery['type'] = \Our\ApiConst::deliveryBuyer;
if(isset($shippingFee)){
if($deliverySettings){
$delivery['isChoosed'] = \Our\ApiConst::zero;
}else{
$shippingFee = $deliveryFee;
......@@ -1000,7 +1002,6 @@ class CartServiceModel extends \Business\AbstractModel{
$storeSumData['deliveryFee'] = $deliveryFee;
}
$delivery['deliveryFee'] = $deliveryFee;
$delivery['timeList'] = $deliverySetting['selfDeliveryTimeList'];
$deliverySettings[]= $delivery;
}
......
......@@ -89,12 +89,13 @@ class GoodsClassServiceModel extends \Business\AbstractModel{
if($serviceParentClassIds){
$classIds = array_merge($serviceParentClassIds,$classIds);
}
/*
//获取可快递店铺对应分类
$expressClassIds = $this->getExpressStoreClasses($where);
if($expressClassIds){
$classIds = array_merge($expressClassIds,$classIds);
}
*/
$classIdKeys = array_flip($classIds);
$goodsClassDao = \DAO\GoodsClassModel::getInstance();
$parentClasses = $goodsClassDao->getParentClasses();
......
......@@ -606,7 +606,7 @@ class StoreServiceModel extends \Business\AbstractModel{
//服务分类对应店铺
$serviceStores = $this->getServiceClassStores($gcId,$condition);
//获取签约分类对应店铺
$expressStores = $this->getExpressStores($gcId,$condition);
//$expressStores = $this->getExpressStores($gcId,$condition);
$goodsClassList = $goodsClassDao->getOnlineSecondClassList($gcId);
......@@ -620,11 +620,13 @@ class StoreServiceModel extends \Business\AbstractModel{
$purchasedStore = array();
if($signStores&&in_array($goodsClass['gcId'],array_keys($signStores))){//如果当前分类存在对应签约店铺
$exitStore = $allStores[$signStores[$goodsClass['gcId']]];
}else if($serviceStores&&in_array($goodsClass['gcId'],array_keys($serviceStores))){
}
if(empty($exitStore)&&$serviceStores&&in_array($goodsClass['gcId'],array_keys($serviceStores))){
$exitStore = $allStores[$serviceStores[$goodsClass['gcId']]];
}else if($expressStores&&in_array($goodsClass['gcId'],array_keys($expressStores))){
$exitStore = $allStores[$expressStores[$goodsClass['gcId']]];
}
/*if(empty($exitStore)&&$expressStores&&in_array($goodsClass['gcId'],array_keys($expressStores))){
$exitStore = $allStores[$expressStores[$goodsClass['gcId']]];
}*/
if($memberStores){
if($memberStores&&in_array($goodsClass['gcId'],array_keys($memberStores))){
$purchasedStore = $allStores[$memberStores[$goodsClass['gcId']]];
......
......@@ -309,7 +309,6 @@ class AddressServiceModel extends \Business\AbstractModel {
}
}
return array('returnAddressId'=>$choosedAddressId,'choosedAddressFlag'=>$choosedAddressFlag,'addresses'=>$returnAddresses);
}
public function getMyCurrentAddressByMemberId($memberId){
......
This diff is collapsed.
......@@ -48,7 +48,7 @@ class FavoritesStoreModel extends \DAO\AbstractModel {
return $this->db->fetchAll();
}
public function getOne($field,$where,$order = array('fav_time'=>'desc')){
public function getOne($field,$where,$order = array('fav_time'=>'desc','favid'=>'desc')){
$this->setDb($this->dbName);
if($order){
foreach($order as $key=>$value){
......
......@@ -310,6 +310,7 @@ class GoodsModel extends \DAO\AbstractModel {
if(isset($returnData[$temp['goods_commonid']]['is_transport'])){
continue;
}
$returnData[$temp['goods_commonid']]['delivery_template_id'] = $temp['delivery_template_id'];
$returnData[$temp['goods_commonid']]['is_transport'] = $temp['is_transport'];
$returnData[$temp['goods_commonid']]['transport_id'] = $temp['transport_id'];
$returnData[$temp['goods_commonid']]['goods_freight'] = $temp['goods_freight'];
......
......@@ -284,6 +284,8 @@ class CodeConfigModel
const notExsitOrder = 300112;
const alreadyExsitRefundGoods = 300113;
const notAllowDelete = 300114;
const emptyDeliveryTime = 300115;
const noExpressDeliveryForOrder1 = 30115;
const goodsNoStoreForCartOrOrder1 = 30116;
......@@ -302,6 +304,11 @@ class CodeConfigModel
const selfGoodsForStoreOrder = 30121;
const refundAddPointsLogError = 30122;
const wrongDeliveryTime = 300123;
const wrongBuyerTimeRangeForOrder =300124;
const emptyBuyerMobile = 300125;
const wrongBuyerMobile = 300126;
const leftAmountError = 300127;
//店铺相关错误码
//商品分类
......@@ -707,6 +714,12 @@ class CodeConfigModel
self::notExsitOrder => '订单不存在',
self::alreadyExsitRefundGoods => '退款订单已经存在',
self::notAllowDelete => '当前订单状态不允许删除',
self::emptyDeliveryTime => '配送时间或者自提时间不能为空',
self::wrongDeliveryTime => '配送时间格式错误',
self::wrongBuyerTimeRangeForOrder => '自提时间点错误',
self::emptyBuyerMobile => '自提人手机号码不能为空',
self::wrongBuyerMobile => '自提人手机号码格式错误',
self::leftAmountError => '没有达到店铺起送金额,不能下单',
self::platFormAreadyIn => '您已经申请过平台介入',
self::deleteError => '放入回收站失败,订单状态有误',
self::restoreError => '永久删除、从回收站还原失败,订单状态有误',
......@@ -764,7 +777,7 @@ class CodeConfigModel
self::emptyOrderForPay => '支付的订单不存在',
self::emptyOrderIdForPay => '订单ID不能为空',
self::noRightForOrder => '您没有该订单权限',
self::wrongPayForOrder => '该订单无需线上支付',
self::wrongPayForOrder => '订单状态发生改变,请刷新后重试',
self::newPaySnInsertFailed => '新订单支付参数生成失败',
self::updateOrderForPayFailed => '唤起支付时更新订单失败',
self::noOrderListForPaySn => '当前paySn没有找到对应订单列表',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment