Commit 50ea8d35 authored by liuyuzhen's avatar liuyuzhen

合并master_dev

parents 7856714c 85d6b00b
......@@ -111,8 +111,18 @@ class IndexController extends \Our\Controller_Abstract {
$clientPush->pushTest(array());
exit;
}
public function testRelease(){
$obj=\Business\Order\OrderServiceModel::getInstance();
$obj->order='abc';
//\Business\Order\OrderServiceModel::realeaseInstance();
}
public function indexAction() {
$this->testRelease();
$obj=\Business\Order\OrderServiceModel::getInstance();
echo $obj->order;
exit;
$getKey=$_GET['key'];
if($getKey!='~!@#$`1234qwert'){
throw new Exception('非法',-1111);
......
......@@ -1099,7 +1099,7 @@ class OrderConfirmUtil {
$couponStoreIds[] = \Our\ApiConst::zero;
$couponIds = array_column($memberCouponArray,'coupon_id');
$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);
if(!$couponList){
$storeCartData['couponList'] = array();
......
......@@ -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 $order;
public $order;
//地址
private $address;
//收货人地址
......@@ -55,6 +55,7 @@ class OrderServiceModel extends \Business\AbstractModel
}
private function getGoodsDetailField()
{
return $this->orderGoodsField . ',goods_commonid as goodsCommonId,goods_commonid as goodsCommonid,goods_group as goodsGroup';
......@@ -583,7 +584,11 @@ class OrderServiceModel extends \Business\AbstractModel
$res = $orderDao->updateStatusByOrderId($orderId, ApiConst::orderStateCancel,false,ApiConst::cancelOrderBySelf);
$orderDao->setDb($orderDao->dbName);
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']);
if($order['paymentTime']>ApiConst::zero && in_array($order['paymentType'],ArrayConst::orderPayTypeOnlines)){
$resultRefund=$refundReturnDao->refundMoney($order);
......@@ -1150,6 +1155,7 @@ class OrderServiceModel extends \Business\AbstractModel
}
file_put_contents($this->baseDir . \Our\PathConst::orderCloseWaitRecieveOrder, $endTime);
}
public $errorMessage;
public function updateDateGoodsStoregeByOrderGoods($orderGoods,$type=ApiConst::plus,$updateSaleNumFlag=true){
$orderConfirmUtilDao=OrderConfirmUtil::getInstance(DbNameConst::masterDBConnectName);
$storeCartsList=array();
......@@ -1175,7 +1181,9 @@ class OrderServiceModel extends \Business\AbstractModel
}catch(\Exception $ex){
$orderGoodsIds=array_column($orderGoods,'goodsId');
$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){
......@@ -1193,7 +1201,7 @@ class OrderServiceModel extends \Business\AbstractModel
if(empty($orderGoods)){
$orderGoods=$orderGoodses;
}
$this->updateDateGoodsStoregeByOrderGoods($orderGoods);
return $this->updateDateGoodsStoregeByOrderGoods($orderGoods);
}
......@@ -1789,7 +1797,11 @@ class OrderServiceModel extends \Business\AbstractModel
* @var \DAO\UserModel
*/
private static $_instance = null;
public static function realeaseInstance(){
if(!empty(self::$_instance)){
self::$_instance=null;
}
}
/**
* 单例模式获取类实例
*
......
......@@ -68,6 +68,7 @@ class MemberCouponModel extends \DAO\AbstractModel{
$memberCouponRedisModel = \Redis\Db13\MemberCouponRedisModel::getInstance();
$memberCoupons = $memberCouponRedisModel->tableCacheGet(\Our\NameConst::memberCounponListPrefix.$memberId);
if($memberCoupons){
$memberCoupons = unserialize($memberCoupons);
$newMemberCouponArray = array();
foreach($memberCoupons as $tempMemberCoupon){
if($tempMemberCoupon['out_time']>=TIMESTAMP){
......@@ -81,7 +82,7 @@ class MemberCouponModel extends \DAO\AbstractModel{
$field = 'coupon_id,add_time,out_time';
$memberCoupons = $this->getList($where , $field);
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;
}
......
......@@ -192,7 +192,6 @@ class PBundlingModel extends \DAO\AbstractModel {
return false;
}
$pBundling = $result['result'];
\Our\Log::getInstance()->write(json_encode($pBundling),'/data/log/apptest');
$key = $result['key'];
if($op == \Our\ApiConst::minus){
$pBundling['bl_storage'] = $pBundling['bl_storage']-$blStorage;
......@@ -205,9 +204,7 @@ class PBundlingModel extends \DAO\AbstractModel {
$pBundling['bl_storage'] = $pBundling['bl_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);
\Our\Log::getInstance()->write($key,'/data/log/apptest');
return $pBundlingRedisDao->setNoPrefix($key,serialize($pBundling),\Our\ApiConst::oneDaySecond);
}
......@@ -253,13 +250,27 @@ class PBundlingModel extends \DAO\AbstractModel {
public function deletePBundlingByBlId($blId){
$pBundlingDao = \Redis\Db4\PBundlingRedisModel::getInstance();
$pBundlingDao->tableDelAll($pBundlingDao->tableKeys('gid_'.$blId));
$isLock = \Lock\RedisLock::getInstance()->getLock(\Our\NameConst::pBundlingStorageRedisPrefix.$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){
$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
const addOrderFrequently = 300147;
const cancelRefundMoneyError = 300148;
const serverBusy = 300149;
const updateGoodsStorageFail=300150;
//店铺相关错误码
//商品分类
......@@ -789,6 +790,7 @@ class CodeConfigModel
self::updateMemberCouponFailed => '优惠券更新失败',
self::updateAddressFailedForOrder => '下单时更新地址失败',
self::updateGoodsStorageForOrder => '非线上支付订单更新库存失败',
self::updateGoodsStorageFail => '商品库存更新失败',
self::saveOrderCommonFailed => '保存订单相关收货信息失败',
self::saveOrderGoodsFailed => '保存订单商品失败',
self::delCartFaileForAddOrder => '下单时删除购物车失败',
......
File mode changed from 100755 to 100644
......@@ -439,21 +439,21 @@ elastic.master.scheme="http";
[lyz : common]
; 数据库配置
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.database = "qmcs"
resources.database.params.username = "root"
resources.database.params.password = "!@#$%12345werty"
resources.database.params.password = "123456"
resources.database.params.charset = "UTF8"
resources.database.params.driver_options.1002 = "SET NAMES utf8"
; 从库配置
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.database = "qmcs"
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.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