|
|
@@ -12,6 +12,9 @@ use app\common\model\UserArea;
|
|
|
use app\common\model\UserModel;
|
|
|
use app\common\model\LedgerTokenChangeModel;
|
|
|
use app\common\model\OfflineRechargeRecordModel;
|
|
|
+use app\api\logic\OrderLogic;
|
|
|
+use app\api\logic\MarketLogic;
|
|
|
+use app\common\model\ProductMarket;
|
|
|
use Exception;
|
|
|
use fast\Asset;
|
|
|
use think\Db;
|
|
|
@@ -26,7 +29,7 @@ class Order extends Api
|
|
|
/**
|
|
|
* 创建订单
|
|
|
*/
|
|
|
- public function create(ProductPopular $productPopular, ProductOrder $productOrder, LedgerWalletModel $ledgerWalletModel, UserModel $userModel)
|
|
|
+ public function create(ProductPopular $productPopular, OrderLogic $orderLogic, LedgerWalletModel $ledgerWalletModel, UserModel $userModel)
|
|
|
{
|
|
|
$params = $this->request->post();
|
|
|
$validate = \think\Loader::validate('Order');
|
|
|
@@ -46,12 +49,9 @@ class Order extends Api
|
|
|
if($order_info->start_time > time()) throw new Exception(__("抢购未开始"));
|
|
|
if($order_info->stock == 0 || time() >= $order_info->end_time) throw new Exception(__("抢购已结束"));
|
|
|
|
|
|
- //批量地区添加 1选择地区 2未选择地区
|
|
|
- if($params['type'] == 1)
|
|
|
- $result = $productOrder::setPopularAreaOrder($areaArr, $params['order_id'], $order_info->price, $params['product_id'], $this->auth->id, ProductOrder::Popular);
|
|
|
- else
|
|
|
- $result =$productOrder::setPopularNoAreaOrder($areaNum, $params['order_id'], $order_info->price, $params['product_id'], $this->auth->id,ProductOrder::Popular);
|
|
|
-
|
|
|
+ // //批量地区添加 1选择地区 2未选择地区
|
|
|
+ $result = $orderLogic::createOrderByType($params['type'], $areaArr, $params['order_id'], $order_info->price, $params['product_id'], $this->auth->id, $areaNum);
|
|
|
+
|
|
|
//余额记录
|
|
|
$ledgerWalletModel->changeWalletAccount($this->auth->id, Asset::TOKEN, -$totalPrice, LedgerTokenChangeModel::Popular, $this->auth->id);
|
|
|
|
|
|
@@ -125,7 +125,7 @@ class Order extends Api
|
|
|
* 订单寄售转让
|
|
|
* @return void
|
|
|
*/
|
|
|
- public function transfer(ProductOrder $productOrder, ProductTransfer $productTransfer)
|
|
|
+ public function transfer(ProductOrder $productOrder, MarketLogic $marketLogic)
|
|
|
{
|
|
|
$params = $this->request->post();
|
|
|
$validate = \think\Loader::validate('Order');
|
|
|
@@ -138,10 +138,8 @@ class Order extends Api
|
|
|
if($params['price'] < $order_info->min_transfer_fee || $params['price'] > $order_info->max_transfer_fee) throw new Exception(__("当前订单转让金额为").$order_info->min_transfer_fee.'~'.$order_info->max_transfer_fee);
|
|
|
|
|
|
//转让订单
|
|
|
- $fee = getConfig('transfer_fee');
|
|
|
- $feeAmount = bcmul($params['price'], $fee, 2) ;
|
|
|
- $productTransfer::setTransferOrder($this->auth->id, $order_info['product_id'], $order_info['area_id'], $feeAmount, $params);
|
|
|
-
|
|
|
+ $marketLogic::createTransferOrder($params['price'], $order_info['product_id'], $order_info['area_id'], $order_info['order_no'], $this->auth->id, $params);
|
|
|
+
|
|
|
//修改 类型状态
|
|
|
$order_info->type_id = $productOrder::Transfer;
|
|
|
$order_info->status = $productOrder::Transferred;
|
|
|
@@ -193,6 +191,7 @@ class Order extends Api
|
|
|
//增加购买Rwa有效
|
|
|
$userModel::updateForRwaNum($this->auth->id, $this->auth->parent_id, 1, '+');
|
|
|
}
|
|
|
+
|
|
|
//修改原订单状态
|
|
|
$popular_order->status=$productOrder::Closure;
|
|
|
$popular_order->save();
|
|
|
@@ -258,7 +257,7 @@ class Order extends Api
|
|
|
|
|
|
|
|
|
//取消转让
|
|
|
- public function cancel(ProductOrder $productOrder, ProductTransfer $productTransfer)
|
|
|
+ public function cancel(ProductOrder $productOrder, MarketLogic $marketLogic)
|
|
|
{
|
|
|
$params = $this->request->post();
|
|
|
$validate = \think\Loader::validate('Order');
|
|
|
@@ -270,12 +269,9 @@ class Order extends Api
|
|
|
$order_info = $productOrder->where('id', $params['order_id'])->find();
|
|
|
if(empty($order_info)) throw new Exception(__("参数有误,无可用产品"));
|
|
|
|
|
|
- //转让列表取消
|
|
|
- $productTransfer::where('order_id',$params['order_id'])->setField('status', $productTransfer::Stop);
|
|
|
+ //取消转让订单
|
|
|
+ $marketLogic::cancelTransferOrder($order_info['order_id'], $order_info['user_id'], $order_info);
|
|
|
|
|
|
- //新增记录
|
|
|
- $productOrder::setCreateOrder($order_info['order_id'], $order_info, $productOrder::Popular, $order_info['user_id'], $order_info['from_user'], getOrderSN('R'.$order_info['order_id']), 0, $order_info->popular_price);
|
|
|
-
|
|
|
//修改:类型状态
|
|
|
$order_info->type_id= $productOrder::Transfer;
|
|
|
$order_info->status = $productOrder::Cancelled;
|