|
@@ -20,9 +20,7 @@ use think\facade\Log;
|
|
|
use app\models\system\SystemStore;
|
|
|
use app\models\routine\RoutineTemplate;
|
|
|
use app\models\user\{User, UserAddress, UserBill, UserSpread, WechatUser};
|
|
|
-use crmeb\services\{
|
|
|
- SystemConfigService, WechatTemplateService, workerman\ChannelService
|
|
|
-};
|
|
|
+use crmeb\services\{OtherSMSService, SystemConfigService, WechatTemplateService, workerman\ChannelService};
|
|
|
use crmeb\repositories\{
|
|
|
GoodsRepository, PaymentRepositories, OrderRepository, ShortLetterRepositories, UserRepository
|
|
|
};
|
|
@@ -277,7 +275,7 @@ class StoreOrder extends BaseModel
|
|
|
* @throws \think\exception\DbException
|
|
|
*/
|
|
|
|
|
|
- public static function cacheKeyCreateOrder($uid, $key, $addressId, $payType, $useIntegral = false, $couponId = 0, $mark = '', $combinationId = 0, $pinkId = 0, $seckill_id = 0, $bargain_id = 0, $integral_id = 0, $test = false, $isChannel = 0, $shipping_type = 1, $real_name = '', $phone = '', $storeId = 0, $pointId = 0, $store_order = 0)
|
|
|
+ public static function cacheKeyCreateOrder($uid, $key, $addressId, $payType, $useIntegral = false, $couponId = 0, $mark = '', $combinationId = 0, $pinkId = 0, $seckill_id = 0, $bargain_id = 0, $integral_id = 0, $test = false, $isChannel = 0, $shipping_type = 1, $real_name = '', $phone = '', $storeId = 0, $pointId = 0, $store_order = 0, $free_check = 0)
|
|
|
{
|
|
|
self::beginTrans();
|
|
|
try {
|
|
@@ -376,7 +374,7 @@ class StoreOrder extends BaseModel
|
|
|
//门店自提没有邮费支付
|
|
|
$priceGroup['storePostage'] = 0;
|
|
|
$payPostage = 0;
|
|
|
- if (!$pointId && !$test && !$store_order) {
|
|
|
+ if (!$pointId && !$test && !$store_order && !$free_check) {
|
|
|
return self::setErrorInfo('请选择自提点', true);
|
|
|
}
|
|
|
}
|
|
@@ -465,12 +463,22 @@ class StoreOrder extends BaseModel
|
|
|
'deposit_back' => 0,
|
|
|
'deposit_status' => 0,
|
|
|
'store_order' => $store_order,
|
|
|
+ 'province' => $addressInfo['province'],
|
|
|
+ 'city' => $addressInfo['city'],
|
|
|
+ 'district' => $addressInfo['district'],
|
|
|
];
|
|
|
$orderInfo['store_id'] = SystemStore::getStoreDispose($storeId, 'id');
|
|
|
- if (!$orderInfo['store_id']) return self::setErrorInfo('暂无门店无法选择门店!', true);
|
|
|
+ if (!$orderInfo['store_id'] && !$free_check) return self::setErrorInfo('暂无门店无法选择门店!', true);
|
|
|
+ else $orderInfo['store_id'] = 0;
|
|
|
+ if ($orderInfo['store_id']) {
|
|
|
+ $store = SystemStore::get($orderInfo['store_id']);
|
|
|
+ $orderInfo['province'] = explode(',', $store['address'])[0] ?? '';
|
|
|
+ $orderInfo['city'] = explode(',', $store['address'])[1] ?? '';
|
|
|
+ $orderInfo['district'] = explode(',', $store['address'])[2] ?? '';
|
|
|
+ }
|
|
|
if ($shipping_type === 2) {
|
|
|
$orderInfo['verify_code'] = self::getStoreCode();
|
|
|
- if (!$store_order) {
|
|
|
+ if (!$store_order && !$free_check) {
|
|
|
$orderInfo['point_id'] = SystemStorePoint::verificWhere()->where('store_id', $orderInfo['store_id'])->where('id', $pointId)->value('id');
|
|
|
if (!$orderInfo['point_id']) return self::setErrorInfo('找不到对应自提点!', true);
|
|
|
}
|
|
@@ -805,6 +813,9 @@ class StoreOrder extends BaseModel
|
|
|
//支付成功后
|
|
|
event('OrderPaySuccess', [$order, $formId]);
|
|
|
$res = $res1 && $resPink && UserSpread::setSpreadSure($order['uid']) && User::backOrderBrokerage($order);
|
|
|
+ $user = User::getUserInfo($order['uid']);
|
|
|
+ if ($user['phone'])
|
|
|
+ OtherSMSService::send($user['phone'], '成功支付' . floatval(bcadd($order['pay_price'], $order['deposit'], 2)) . '元购买商品' . ($order['deposit'] ? "(含押金{$order['deposit']})" : ''));
|
|
|
return false !== $res;
|
|
|
}
|
|
|
|