|
@@ -7,6 +7,7 @@ use biz\sj\services\MerchantExtendService;
|
|
|
use biz\sj\services\MerchantService;
|
|
use biz\sj\services\MerchantService;
|
|
|
use bizGhs\product\classes\ProductClass;
|
|
use bizGhs\product\classes\ProductClass;
|
|
|
use bizHd\custom\classes\CustomClass;
|
|
use bizHd\custom\classes\CustomClass;
|
|
|
|
|
+use bizHd\goods\classes\GoodsClass;
|
|
|
use bizHd\merchant\services\ShopService;
|
|
use bizHd\merchant\services\ShopService;
|
|
|
use bizHd\order\classes\OrderClass;
|
|
use bizHd\order\classes\OrderClass;
|
|
|
use bizHd\order\classes\OrderSendClass;
|
|
use bizHd\order\classes\OrderSendClass;
|
|
@@ -32,7 +33,7 @@ class OrderController extends BaseController
|
|
|
|
|
|
|
|
public $guestAccess = ['order-relate', 'fast-pay', 'create-order', 'list'];
|
|
public $guestAccess = ['order-relate', 'fast-pay', 'create-order', 'list'];
|
|
|
|
|
|
|
|
- //开单操作 ssh 2019.12.3
|
|
|
|
|
|
|
+ //开单操作 ssh 20220316
|
|
|
public function actionCreateOrder()
|
|
public function actionCreateOrder()
|
|
|
{
|
|
{
|
|
|
$post = Yii::$app->request->post();
|
|
$post = Yii::$app->request->post();
|
|
@@ -45,11 +46,45 @@ class OrderController extends BaseController
|
|
|
$post['deadline'] = $expireTime;
|
|
$post['deadline'] = $expireTime;
|
|
|
//商城
|
|
//商城
|
|
|
$post['fromType'] = 1;
|
|
$post['fromType'] = 1;
|
|
|
|
|
+ //客户
|
|
|
|
|
+ $customId = $post['customId'] ?? 0;
|
|
|
|
|
+ if (empty($customId)) {
|
|
|
|
|
+ $customId = isset($this->shop->skCustomId) ? $this->shop->skCustomId : 0;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (empty($customId)) {
|
|
|
|
|
+ util::fail('没有找到客户');
|
|
|
|
|
+ }
|
|
|
|
|
+ $custom = CustomClass::getById($customId);
|
|
|
|
|
+ if (empty($custom)) {
|
|
|
|
|
+ util::fail('没有找到客户哦');
|
|
|
|
|
+ }
|
|
|
|
|
+ $post['customId'] = $customId;
|
|
|
|
|
|
|
|
-// $payWay = $post['payWay'] ?? dict::getDict('payWay', 'wxPay');
|
|
|
|
|
-// OrderClass::staffKdPay($payWay, $orderSn);
|
|
|
|
|
|
|
+ $hasPay = $post['hasPay'] ?? dict::getDict('hasPay', 'unPay');
|
|
|
|
|
|
|
|
-// util::success(['orderSn' => $orderSn, 'totalPrice' => $currentPrice, 'couponId' => $couponId, 'orderId' => $orderId]);
|
|
|
|
|
|
|
+ $productJson = $post['product'] ?? '';
|
|
|
|
|
+ if (empty($productJson)) {
|
|
|
|
|
+ util::fail('请选择商品');
|
|
|
|
|
+ }
|
|
|
|
|
+ $productList = json_decode($productJson, true);
|
|
|
|
|
+ if (empty($productList)) {
|
|
|
|
|
+ util::fail('请选择商品');
|
|
|
|
|
+ }
|
|
|
|
|
+ $connection = Yii::$app->db;//事务处理
|
|
|
|
|
+ $transaction = $connection->beginTransaction();
|
|
|
|
|
+ try {
|
|
|
|
|
+ //批量验证商品
|
|
|
|
|
+ GoodsClass::batchValid($productList, $this->mainId);
|
|
|
|
|
+ $post['product'] = $productList;
|
|
|
|
|
+ $post['deadline'] = date("Y-m-d H:i:s", strtotime('+360 day'));
|
|
|
|
|
+ $return = OrderService::createFinishOrder($post, $custom, $hasPay);
|
|
|
|
|
+ $transaction->commit();
|
|
|
|
|
+ util::success($return);
|
|
|
|
|
+ } catch (\Exception $e) {
|
|
|
|
|
+ $transaction->rollBack();
|
|
|
|
|
+ Yii::error("下单失败原因:" . $e->getMessage());
|
|
|
|
|
+ util::fail('下单失败');
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|