58 lines
1.4 KiB
PHP
58 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace app\store\model\food;
|
|
|
|
|
|
|
|
use app\common\model\food\Record as RecordModel;
|
|
|
|
use think\facade\Db;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 交易记录模型
|
|
|
|
*/
|
|
|
|
class Record extends RecordModel
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* 充值余额
|
|
|
|
*/
|
|
|
|
public function add(array $data)
|
|
|
|
{
|
|
|
|
$user = User::get($data['user_id']);
|
|
|
|
if(empty($data["value"])){
|
|
|
|
$this->error = '变更金额不可为空';
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
if(strpos($data["value"],".")){
|
|
|
|
$this->error = '变更金额必须为整数';
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
if(empty($data["shop_id"])){
|
|
|
|
$this->error = '请选择门店';
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
if($data["mode"] == 20 or $data["mode"] == 50){
|
|
|
|
$user->money = ['dec',$data["value"]];//扣减
|
|
|
|
}else{
|
|
|
|
$user->money = ['inc',$data["value"]];//增加
|
|
|
|
}
|
|
|
|
empty($data['remark']) && $data['remark'] = '后台操作';
|
|
|
|
$data = [
|
|
|
|
'type' => 10, //余额
|
|
|
|
'mode' => $data['mode'],
|
|
|
|
'order_no' => order_no(),
|
|
|
|
'money' => $data['value'],
|
|
|
|
'remark' => $data['remark'],
|
|
|
|
'shop_id' => $data['shop_id'],
|
|
|
|
'user_id' => $data['user_id'],
|
|
|
|
'applet_id' => self::$applet_id
|
|
|
|
];
|
|
|
|
// 开启事务
|
|
|
|
Db::startTrans();
|
|
|
|
try {
|
|
|
|
$user->save();
|
|
|
|
$this->save($data);
|
|
|
|
Db::commit();
|
|
|
|
return true;
|
|
|
|
} catch (\Exception $e) {
|
|
|
|
Db::rollback();
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
} |