diff --git a/app/Service/v3/Implementations/AppointmentTimeService.php b/app/Service/v3/Implementations/AppointmentTimeService.php index 09cc205..a3b546c 100644 --- a/app/Service/v3/Implementations/AppointmentTimeService.php +++ b/app/Service/v3/Implementations/AppointmentTimeService.php @@ -77,14 +77,13 @@ class AppointmentTimeService implements AppointmentTimeServiceInterface $res = []; $time1Max = max($time1Arr); $time2Min = min($time2Arr); - if($time2Min > $nowTime+60*30) { + if($time2Min > $nowTime) { $res = array_merge($res,$this->calculateTime($time1Max, $time2Min)); } if(!empty($time3Arr) && !empty($time4Arr)){ - var_dump($time3Arr,$time4Arr); $time3Max = max($time3Arr); $time4Min = min($time4Arr); - if($time4Min > $nowTime+60*30) { + if($time4Min > $nowTime) { $res = array_merge($res,$this->calculateTime($time3Max, $time4Min)); } } @@ -102,7 +101,11 @@ class AppointmentTimeService implements AppointmentTimeServiceInterface $peakPeriod = strtotime('16:00'); $peakPeriodEnd = strtotime('18:00'); //取得订单下所有店铺时间段 交集 并计算时间段横跨单位区间长度 - $length = ceil(($endTime - $startTime) / (30*60)); + if($endTime == $startTime){ + $length = 1; + }else{ + $length = ceil(($endTime - $startTime) / (30*60)); + } for ($i=1;$i<=$length;$i++){ $addTime = $startTime + (30*60*$i); if($addTime >= $peakPeriod && $addTime < $peakPeriodEnd){ diff --git a/app/Service/v3/Implementations/LocationService.php b/app/Service/v3/Implementations/LocationService.php index bfcaaae..2e7eb18 100644 --- a/app/Service/v3/Implementations/LocationService.php +++ b/app/Service/v3/Implementations/LocationService.php @@ -160,8 +160,8 @@ class LocationService implements LocationServiceInterface $resultArr = json_decode($response,true); if($resultArr['status'] > 0) { - //return 1000; - throw new ErrorCodeException(ErrorCode::LOCATION_ERROR,$resultArr['message']); + return 1000; + //throw new ErrorCodeException(ErrorCode::LOCATION_ERROR,$resultArr['message']); } $distance = $resultArr['result']['routes'][0]['distance']; return $distance; diff --git a/app/Service/v3/Implementations/StoreLoginService.php b/app/Service/v3/Implementations/StoreLoginService.php index abbed09..0aa7e4e 100644 --- a/app/Service/v3/Implementations/StoreLoginService.php +++ b/app/Service/v3/Implementations/StoreLoginService.php @@ -11,7 +11,13 @@ class StoreLoginService implements StoreLoginServiceInterface { public function do($account,$password) { - $storeUsersModel = StoreUsers::query()->where('username',$account)->first(); + $storeUsersModel = StoreUsers::query()->where([ + ['username','=',$account], + ['status','=',2] + ])->first(); + if(empty($storeUsersModel)){ + throw new ErrorCodeException(ErrorCode::STORE_NOT_AVAILABLE); + } $password = $this->stringHash($password,$storeUsersModel->salt); if($storeUsersModel->password === $password){ return $storeUsersModel; diff --git a/app/Service/v3/Implementations/UserAddressService.php b/app/Service/v3/Implementations/UserAddressService.php index ed5cadc..ebfc46f 100644 --- a/app/Service/v3/Implementations/UserAddressService.php +++ b/app/Service/v3/Implementations/UserAddressService.php @@ -87,6 +87,7 @@ class UserAddressService implements UserAddressServiceInterface $market = Market::query()->select('lng','lat')->find($marketId); $distance = $this->locationService->getDistanceByTencent($address['address']->lng,$address['address']->lat,$market->lng,$market->lat); $distributionPrice = $this->distributionPriceService->do($distance); + var_dump($distance); $res['address'] = $address; $res['delivery_distance'] = $distance; $res['distribution_price'] = $distributionPrice;