【增加】期货插件

This commit is contained in:
liqianjin 2023-02-23 14:46:31 +08:00
parent c98a101857
commit 1992ca757f
2 changed files with 85 additions and 11 deletions

View File

@ -0,0 +1,42 @@
<?php
namespace addon\futures\api\controller;
use app\api\controller\BaseApi;
use addon\futures\model\Futures as FuturesModel;
class Futures extends BaseApi{
/**
* 列表
* @return false|string
*/
public function page()
{
return $this->response();
}
/**
* 发布
* @return false|string
*/
public function release()
{
$id = input('id', 0);
$price = input('price', 0);
$futuresModel = new FuturesModel;
return $this->response($futuresModel->release($id, $price));
}
/**
* 下架到库存
* @return false|string
*/
public function stock(){
$id = input('id', 0);
$futuresModel = new FuturesModel;
return $this->response($futuresModel->stock($id));
}
}

View File

@ -27,17 +27,17 @@ class Futures extends BaseModel{
* 发布 * 发布
* @return array * @return array
*/ */
public function release($futures_id, $price){ public function release($id, $price){
$date = model('futures')->getInfo([['id', '=', $futures_id]]); $date = model('futures')->getInfo([['id', '=', $id]]);
if($date['status'] !== 1){ if(empty($date) || $date['status'] !== 1){
return $this->error(); return $this->error('','发布失败');
} }
model('futures')->update([ model('futures')->update([
'status' => 2, 'status' => 2,
'release_time' => time(), 'release_time' => time(),
'price' => $price 'price' => $price
], [['id', '=', $futures_id]]); ], [['id', '=', $id]]);
Cache::store('redis_concurrent')->set('addon_futures_'.$futures_id,'1'); Cache::store('redis_concurrent')->set('addon_futures_'.$id,'1');
return $this->success(); return $this->success();
} }
@ -45,15 +45,38 @@ class Futures extends BaseModel{
* 下架到库存 * 下架到库存
* @return array * @return array
*/ */
public function stock($futures_id){ public function stock($id){
return $this->success(Cache::store('redis_concurrent')->delete('addon_futures_'.$futures_id)); $date = model('futures')->getInfo([['id', '=', $id]]);
if(empty($date) || $date['status'] !== 2){
return $this->error('','下架失败');
}
if(!Cache::store('redis_concurrent')->delete('addon_futures_'.$id)){
return $this->error('','下架失败');
}
model('futures')->update([
'status' => 1,
], [['id', '=', $id]]);
return $this->success();
} }
/** /**
* 订单创建 * 订单创建
* @return array * @return array
*/ */
public function orderCreate(){ public function orderCreate($id, $order_id, $member_id){
$date = model('futures')->getInfo([['id', '=', $id]]);
if(empty($date) || $date['status'] !== 2 || $date['status'] !== 7){
return $this->error('','下单失败');
}
if(!Cache::store('redis_concurrent')->delete('addon_futures_'.$id)){
return $this->error('','下单失败');
}
model('futures')->update([
'status' => 6,
'created_time' => time(),
'order_id' => $order_id,
'member_id' => $member_id
], [['id', '=', $id]]);
return $this->success(); return $this->success();
} }
@ -61,7 +84,10 @@ class Futures extends BaseModel{
* 订单完成 * 订单完成
* @return array * @return array
*/ */
public function orderComplete(){ public function orderComplete($id){
model('futures')->update([
'status' => 3,
], [['id', '=', $id]]);
return $this->success(); return $this->success();
} }
@ -69,7 +95,13 @@ class Futures extends BaseModel{
* 订单取消 * 订单取消
* @return array * @return array
*/ */
public function orderClose(){ public function orderClose($id){
model('futures')->update([
'status' => 7,
'member_id' => 0,
'order_id' => 0
], [['id', '=', $id]]);
Cache::store('redis_concurrent')->set('addon_futures_'.$id,'1');
return $this->success(); return $this->success();
} }
} }