3 && $km <= 5) : // $distributionPrice = bcmul(0.70,($km-3),2); $distributionPrice = 0; break; case ($km > 5 && $km < 7) : $distributionPrice = bcmul(1.00,($km-3),2); break; case ($km >= 7 && $km <= $deliveryDistance) : $distributionPrice = bcmul(1.50,($km-3),2); break; case ($km > $deliveryDistance) : throw new ErrorCodeException(ErrorCode::LOCATION_LONG_DISTANCE,'',['message' => '超出配送范围', 'data' => ['距离' => $km, '配送距离' => $deliveryDistance]]); break; default: $distributionPrice = 0; } $distributionPrice = bcadd($distributionPrice,3.50,2); return (float) $distributionPrice; } public function check() { // TODO: Implement check() method. } public function undo() { // TODO: Implement undo() method. } }