Commit 50ea8d35 authored by liuyuzhen's avatar liuyuzhen

合并master_dev

parents 7856714c 85d6b00b
...@@ -111,8 +111,18 @@ class IndexController extends \Our\Controller_Abstract { ...@@ -111,8 +111,18 @@ class IndexController extends \Our\Controller_Abstract {
$clientPush->pushTest(array()); $clientPush->pushTest(array());
exit; exit;
} }
public function testRelease(){
$obj=\Business\Order\OrderServiceModel::getInstance();
$obj->order='abc';
//\Business\Order\OrderServiceModel::realeaseInstance();
}
public function indexAction() { public function indexAction() {
$this->testRelease();
$obj=\Business\Order\OrderServiceModel::getInstance();
echo $obj->order;
exit;
$getKey=$_GET['key']; $getKey=$_GET['key'];
if($getKey!='~!@#$`1234qwert'){ if($getKey!='~!@#$`1234qwert'){
throw new Exception('非法',-1111); throw new Exception('非法',-1111);
......
...@@ -1099,7 +1099,7 @@ class OrderConfirmUtil { ...@@ -1099,7 +1099,7 @@ class OrderConfirmUtil {
$couponStoreIds[] = \Our\ApiConst::zero; $couponStoreIds[] = \Our\ApiConst::zero;
$couponIds = array_column($memberCouponArray,'coupon_id'); $couponIds = array_column($memberCouponArray,'coupon_id');
$couponSql = \Our\Common::format(' id in ({0}) and store_id in({1})',implode(',',$couponIds),implode(',',$couponStoreIds)); $couponSql = \Our\Common::format(' id in ({0}) and store_id in({1})',implode(',',$couponIds),implode(',',$couponStoreIds));
$couponDao = \DAO\Coupon\CouponModel::getInstance(\Our\DbNameConst::masterDBConnectName); $couponDao = \DAO\Coupon\CouponModel::getInstance(\Our\DbNameConst::salveDBConnectName);
$couponList = $couponDao->getCartCouponTitles($couponSql); $couponList = $couponDao->getCartCouponTitles($couponSql);
if(!$couponList){ if(!$couponList){
$storeCartData['couponList'] = array(); $storeCartData['couponList'] = array();
......
...@@ -38,7 +38,7 @@ class OrderServiceModel extends \Business\AbstractModel ...@@ -38,7 +38,7 @@ class OrderServiceModel extends \Business\AbstractModel
private $orderMessageField = "order_id as orderId,order_sn as orderSn,store_name as storeName,add_time as addTime,store_id as storeId,goods_amount as goodsAmount,shipping_fee as shippingFee,order_amount as orderAmount,shipping_type as shippingType,payment_type as paymentType,order_state as orderState,shipping_fee as shippingFee,refund_state as refundState,order_type as orderType,is_receive_payment as isReceivePayment,buyer_id as buyerId,buyer_name as buyerName,accept_time as acceptTime"; private $orderMessageField = "order_id as orderId,order_sn as orderSn,store_name as storeName,add_time as addTime,store_id as storeId,goods_amount as goodsAmount,shipping_fee as shippingFee,order_amount as orderAmount,shipping_type as shippingType,payment_type as paymentType,order_state as orderState,shipping_fee as shippingFee,refund_state as refundState,order_type as orderType,is_receive_payment as isReceivePayment,buyer_id as buyerId,buyer_name as buyerName,accept_time as acceptTime";
private $order; public $order;
//地址 //地址
private $address; private $address;
//收货人地址 //收货人地址
...@@ -55,6 +55,7 @@ class OrderServiceModel extends \Business\AbstractModel ...@@ -55,6 +55,7 @@ class OrderServiceModel extends \Business\AbstractModel
} }
private function getGoodsDetailField() private function getGoodsDetailField()
{ {
return $this->orderGoodsField . ',goods_commonid as goodsCommonId,goods_commonid as goodsCommonid,goods_group as goodsGroup'; return $this->orderGoodsField . ',goods_commonid as goodsCommonId,goods_commonid as goodsCommonid,goods_group as goodsGroup';
...@@ -583,7 +584,11 @@ class OrderServiceModel extends \Business\AbstractModel ...@@ -583,7 +584,11 @@ class OrderServiceModel extends \Business\AbstractModel
$res = $orderDao->updateStatusByOrderId($orderId, ApiConst::orderStateCancel,false,ApiConst::cancelOrderBySelf); $res = $orderDao->updateStatusByOrderId($orderId, ApiConst::orderStateCancel,false,ApiConst::cancelOrderBySelf);
$orderDao->setDb($orderDao->dbName); $orderDao->setDb($orderDao->dbName);
if ($res) { if ($res) {
$this->updateOrderGoodsStoregeByOrderIds(array($orderId)); $updateOrder=$this->updateOrderGoodsStoregeByOrderIds(array($orderId));
if(!$updateOrder){
$orderDao->db->doRollback();
ErrorModel::throwException(CodeConfigModel::updateGoodsStorageFail);
};
$order['refundOrderNo']=$refundReturnDao->getRefundsn($order['storeId']); $order['refundOrderNo']=$refundReturnDao->getRefundsn($order['storeId']);
if($order['paymentTime']>ApiConst::zero && in_array($order['paymentType'],ArrayConst::orderPayTypeOnlines)){ if($order['paymentTime']>ApiConst::zero && in_array($order['paymentType'],ArrayConst::orderPayTypeOnlines)){
$resultRefund=$refundReturnDao->refundMoney($order); $resultRefund=$refundReturnDao->refundMoney($order);
...@@ -1150,6 +1155,7 @@ class OrderServiceModel extends \Business\AbstractModel ...@@ -1150,6 +1155,7 @@ class OrderServiceModel extends \Business\AbstractModel
} }
file_put_contents($this->baseDir . \Our\PathConst::orderCloseWaitRecieveOrder, $endTime); file_put_contents($this->baseDir . \Our\PathConst::orderCloseWaitRecieveOrder, $endTime);
} }
public $errorMessage;
public function updateDateGoodsStoregeByOrderGoods($orderGoods,$type=ApiConst::plus,$updateSaleNumFlag=true){ public function updateDateGoodsStoregeByOrderGoods($orderGoods,$type=ApiConst::plus,$updateSaleNumFlag=true){
$orderConfirmUtilDao=OrderConfirmUtil::getInstance(DbNameConst::masterDBConnectName); $orderConfirmUtilDao=OrderConfirmUtil::getInstance(DbNameConst::masterDBConnectName);
$storeCartsList=array(); $storeCartsList=array();
...@@ -1175,7 +1181,9 @@ class OrderServiceModel extends \Business\AbstractModel ...@@ -1175,7 +1181,9 @@ class OrderServiceModel extends \Business\AbstractModel
}catch(\Exception $ex){ }catch(\Exception $ex){
$orderGoodsIds=array_column($orderGoods,'goodsId'); $orderGoodsIds=array_column($orderGoods,'goodsId');
$orderidsStr=implode(',',$orderGoodsIds); $orderidsStr=implode(',',$orderGoodsIds);
echo '商品库存更新失败:'.$ex->getMessage().$ex->getCode().":".$orderidsStr; $this->errorMessage='商品库存更新失败:'.$ex->getMessage().$ex->getCode().":".$orderidsStr;
// echo '商品库存更新失败:'.$ex->getMessage().$ex->getCode().":".$orderidsStr;
return false;
} }
} }
public function updateOrderGoodsStoregeByOrderIds($orderIds,$orderGoodsId=false){ public function updateOrderGoodsStoregeByOrderIds($orderIds,$orderGoodsId=false){
...@@ -1193,7 +1201,7 @@ class OrderServiceModel extends \Business\AbstractModel ...@@ -1193,7 +1201,7 @@ class OrderServiceModel extends \Business\AbstractModel
if(empty($orderGoods)){ if(empty($orderGoods)){
$orderGoods=$orderGoodses; $orderGoods=$orderGoodses;
} }
$this->updateDateGoodsStoregeByOrderGoods($orderGoods); return $this->updateDateGoodsStoregeByOrderGoods($orderGoods);
} }
...@@ -1789,7 +1797,11 @@ class OrderServiceModel extends \Business\AbstractModel ...@@ -1789,7 +1797,11 @@ class OrderServiceModel extends \Business\AbstractModel
* @var \DAO\UserModel * @var \DAO\UserModel
*/ */
private static $_instance = null; private static $_instance = null;
public static function realeaseInstance(){
if(!empty(self::$_instance)){
self::$_instance=null;
}
}
/** /**
* 单例模式获取类实例 * 单例模式获取类实例
* *
......
...@@ -68,6 +68,7 @@ class MemberCouponModel extends \DAO\AbstractModel{ ...@@ -68,6 +68,7 @@ class MemberCouponModel extends \DAO\AbstractModel{
$memberCouponRedisModel = \Redis\Db13\MemberCouponRedisModel::getInstance(); $memberCouponRedisModel = \Redis\Db13\MemberCouponRedisModel::getInstance();
$memberCoupons = $memberCouponRedisModel->tableCacheGet(\Our\NameConst::memberCounponListPrefix.$memberId); $memberCoupons = $memberCouponRedisModel->tableCacheGet(\Our\NameConst::memberCounponListPrefix.$memberId);
if($memberCoupons){ if($memberCoupons){
$memberCoupons = unserialize($memberCoupons);
$newMemberCouponArray = array(); $newMemberCouponArray = array();
foreach($memberCoupons as $tempMemberCoupon){ foreach($memberCoupons as $tempMemberCoupon){
if($tempMemberCoupon['out_time']>=TIMESTAMP){ if($tempMemberCoupon['out_time']>=TIMESTAMP){
...@@ -81,7 +82,7 @@ class MemberCouponModel extends \DAO\AbstractModel{ ...@@ -81,7 +82,7 @@ class MemberCouponModel extends \DAO\AbstractModel{
$field = 'coupon_id,add_time,out_time'; $field = 'coupon_id,add_time,out_time';
$memberCoupons = $this->getList($where , $field); $memberCoupons = $this->getList($where , $field);
if($memberCoupons){ if($memberCoupons){
$memberCouponRedisModel->tableCacheSet(\Our\NameConst::memberCounponListPrefix.$memberId,$memberCoupons,\Our\ApiConst::oneDaySecond); $memberCouponRedisModel->tableCacheSet(\Our\NameConst::memberCounponListPrefix.$memberId,serialize($memberCoupons),\Our\ApiConst::oneDaySecond);
} }
return $memberCoupons; return $memberCoupons;
} }
......
...@@ -192,7 +192,6 @@ class PBundlingModel extends \DAO\AbstractModel { ...@@ -192,7 +192,6 @@ class PBundlingModel extends \DAO\AbstractModel {
return false; return false;
} }
$pBundling = $result['result']; $pBundling = $result['result'];
\Our\Log::getInstance()->write(json_encode($pBundling),'/data/log/apptest');
$key = $result['key']; $key = $result['key'];
if($op == \Our\ApiConst::minus){ if($op == \Our\ApiConst::minus){
$pBundling['bl_storage'] = $pBundling['bl_storage']-$blStorage; $pBundling['bl_storage'] = $pBundling['bl_storage']-$blStorage;
...@@ -205,9 +204,7 @@ class PBundlingModel extends \DAO\AbstractModel { ...@@ -205,9 +204,7 @@ class PBundlingModel extends \DAO\AbstractModel {
$pBundling['bl_storage'] = $pBundling['bl_storage']+$blStorage; $pBundling['bl_storage'] = $pBundling['bl_storage']+$blStorage;
$pBundling['bl_origin_storage'] = $pBundling['bl_origin_storage']+$blStorage; $pBundling['bl_origin_storage'] = $pBundling['bl_origin_storage']+$blStorage;
} }
\Our\Log::getInstance()->write(json_encode($pBundling),'/data/log/apptest');
\Lock\RedisLock::getInstance()->releaseLock(\Our\NameConst::pBundlingStorageRedisPrefix.$blId); \Lock\RedisLock::getInstance()->releaseLock(\Our\NameConst::pBundlingStorageRedisPrefix.$blId);
\Our\Log::getInstance()->write($key,'/data/log/apptest');
return $pBundlingRedisDao->setNoPrefix($key,serialize($pBundling),\Our\ApiConst::oneDaySecond); return $pBundlingRedisDao->setNoPrefix($key,serialize($pBundling),\Our\ApiConst::oneDaySecond);
} }
...@@ -253,13 +250,27 @@ class PBundlingModel extends \DAO\AbstractModel { ...@@ -253,13 +250,27 @@ class PBundlingModel extends \DAO\AbstractModel {
public function deletePBundlingByBlId($blId){ public function deletePBundlingByBlId($blId){
$pBundlingDao = \Redis\Db4\PBundlingRedisModel::getInstance(); $isLock = \Lock\RedisLock::getInstance()->getLock(\Our\NameConst::pBundlingStorageRedisPrefix.$blId);
$pBundlingDao->tableDelAll($pBundlingDao->tableKeys('gid_'.$blId)); if(!$isLock){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::serverBusy);
}
$pBundlingRedisDao = \Redis\Db4\PBundlingRedisModel::getInstance();
$pBundlingRedisDao->tableDelAll($pBundlingRedisDao->tableKeys('gid_'.$blId));
$groups=\Business\Goods\GroupSaleServiceModel::getInstance()->getPBundlingListByBlIds(array($blId));
var_dump($groups);
\Lock\RedisLock::getInstance()->releaseLock(\Our\NameConst::pBundlingStorageRedisPrefix.$blId);
return true;
} }
public function deletePBundlingByGoodsCommonId($goodsCommonId){ public function deletePBundlingByGoodsCommonId($goodsCommonId){
$pBundlingDao = \Redis\Db4\PBundlingRedisModel::getInstance(); $pBundlingDao = \Redis\Db4\PBundlingRedisModel::getInstance();
return $pBundlingDao->tableDelAll($pBundlingDao->tableKeys('*'.\Our\NameConst::blGoods.$goodsCommonId)); $blIdsStrs = $pBundlingDao->tableKeys('*'.\Our\NameConst::blGoods.$goodsCommonId);
foreach($blIdsStrs as $blIdStr){
$newstr = substr($blIdStr,strpos($blIdStr,'gid_')+4);
$blId = substr($newstr,0,(strlen($newstr)-strlen(substr($newstr,strpos($newstr,'_goodsCommon')))));
$this->deletePBundlingByBlId($blId);
}
return true;
} }
/** /**
......
...@@ -330,6 +330,7 @@ class CodeConfigModel ...@@ -330,6 +330,7 @@ class CodeConfigModel
const addOrderFrequently = 300147; const addOrderFrequently = 300147;
const cancelRefundMoneyError = 300148; const cancelRefundMoneyError = 300148;
const serverBusy = 300149; const serverBusy = 300149;
const updateGoodsStorageFail=300150;
//店铺相关错误码 //店铺相关错误码
//商品分类 //商品分类
...@@ -789,6 +790,7 @@ class CodeConfigModel ...@@ -789,6 +790,7 @@ class CodeConfigModel
self::updateMemberCouponFailed => '优惠券更新失败', self::updateMemberCouponFailed => '优惠券更新失败',
self::updateAddressFailedForOrder => '下单时更新地址失败', self::updateAddressFailedForOrder => '下单时更新地址失败',
self::updateGoodsStorageForOrder => '非线上支付订单更新库存失败', self::updateGoodsStorageForOrder => '非线上支付订单更新库存失败',
self::updateGoodsStorageFail => '商品库存更新失败',
self::saveOrderCommonFailed => '保存订单相关收货信息失败', self::saveOrderCommonFailed => '保存订单相关收货信息失败',
self::saveOrderGoodsFailed => '保存订单商品失败', self::saveOrderGoodsFailed => '保存订单商品失败',
self::delCartFaileForAddOrder => '下单时删除购物车失败', self::delCartFaileForAddOrder => '下单时删除购物车失败',
......
File mode changed from 100755 to 100644
...@@ -439,21 +439,21 @@ elastic.master.scheme="http"; ...@@ -439,21 +439,21 @@ elastic.master.scheme="http";
[lyz : common] [lyz : common]
; 数据库配置 ; 数据库配置
resources.database.params.driver = "pdo_mysql" resources.database.params.driver = "pdo_mysql"
resources.database.params.hostname = "106.14.14.233" resources.database.params.hostname = "127.0.0.1"
resources.database.params.port = 3306 resources.database.params.port = 3306
resources.database.params.database = "qmcs" resources.database.params.database = "qmcs"
resources.database.params.username = "root" resources.database.params.username = "root"
resources.database.params.password = "!@#$%12345werty" resources.database.params.password = "123456"
resources.database.params.charset = "UTF8" resources.database.params.charset = "UTF8"
resources.database.params.driver_options.1002 = "SET NAMES utf8" resources.database.params.driver_options.1002 = "SET NAMES utf8"
; 从库配置 ; 从库配置
resources.database.slave.params.driver = "pdo_mysql" resources.database.slave.params.driver = "pdo_mysql"
resources.database.slave.params.hostname = "106.14.14.233" resources.database.slave.params.hostname = "127.0.0.1"
resources.database.slave.params.port = 3306 resources.database.slave.params.port = 3306
resources.database.slave.params.database = "qmcs" resources.database.slave.params.database = "qmcs"
resources.database.slave.params.username = "root" resources.database.slave.params.username = "root"
resources.database.slave.params.password = "!@#$%12345werty" resources.database.slave.params.password = "123456"
resources.database.slave.params.charset = "UTF8" resources.database.slave.params.charset = "UTF8"
resources.database.slave.params.driver_options.1002 = "SET NAMES utf8" resources.database.slave.params.driver_options.1002 = "SET NAMES utf8"
......
This diff is collapsed.
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