调整下单校验

This commit is contained in:
luofei 2024-01-21 17:23:59 +08:00
parent 2feea0369b
commit 096d946574

View File

@ -26,6 +26,7 @@ use app\validate\api\OrderVirtualFieldValidate;
use app\validate\api\UserAddressValidate;
use crmeb\jobs\SendSmsJob;
use crmeb\services\SwooleTaskService;
use crmeb\utils\Curl;
use think\exception\ValidateException;
use think\facade\Db;
use think\facade\Queue;
@ -107,16 +108,17 @@ class StoreOrderCreateRepository extends StoreOrderRepository
if ($cart['product']['extend']) {
$order_extend = json_decode($cart['product']['extend'], true);
}
$allowDelivery = true;
if ($address) {
if ($cart['source'] == 0) {
// $userAddressCode = ($address['province_code'] ?? '') . ',' . ($address['city_code'] ?? '') . ',' . ($address['district_code'] ?? '') . ',' . ($address['street_code'] ?? '') . ',' . ($address['village_code'] ?? '') . ',' . ($address['brigade_id'] ?? 0);
// $getUrl = env('LOGISTICS_HOST_URL') . '/api/hasCourier?user_address_code=' . $userAddressCode;
// $client = new \GuzzleHttp\Client();
// $response = $client->request('GET', $getUrl);
// $courierData = json_decode($response->getBody(), true);
// if (empty($courierData['code']) || $courierData['code'] != 1) {
// throw new ValidateException('该收货区域未设置快递员');
// }
if ($cart['source'] == 0 || $cart['source'] == 103) {
$userAddressCode = ($address['province_code'] ?? '') . ',' . ($address['city_code'] ?? '') . ',' . ($address['district_code'] ?? '') . ',' . ($address['street_code'] ?? '') . ',' . ($address['village_code'] ?? '') . ',' . ($address['brigade_id'] ?? 0);
$getUrl = env('LOGISTICS_HOST_URL') . '/api/hasCourier?user_address_code=' . $userAddressCode;
$curl = new Curl();
$response = $curl->get($getUrl);
$courierData = json_decode($response, true);
if (empty($courierData['data']['user_id'])) {
$allowDelivery = false;
}
}
}
}
@ -664,7 +666,8 @@ class StoreOrderCreateRepository extends StoreOrderRepository
'key',
'platformConsumption',
'consumption_money',
'consumption_id'
'consumption_id',
'allowDelivery'
) + ['allow_address' => !$allow_no_address, 'order_delivery_status' => $orderDeliveryStatus];
}