|
|
@@ -11,6 +11,7 @@
|
|
|
|
|
|
namespace App\Services;
|
|
|
|
|
|
+use App\Models\ActionLogModel;
|
|
|
use App\Models\MemberModel;
|
|
|
use App\Models\TradeModel;
|
|
|
use function GuzzleHttp\Psr7\str;
|
|
|
@@ -54,7 +55,8 @@ class TradeService extends BaseService
|
|
|
|
|
|
$type = isset($params['type']) ? $params['type'] : 0;
|
|
|
if ($type > 0) {
|
|
|
- $query->where('a.type', $type);
|
|
|
+ $type = explode(',', $type);
|
|
|
+ $query->whereIn('a.type', $type);
|
|
|
}
|
|
|
|
|
|
$payType = isset($params['pay_type']) ? $params['pay_type'] : 0;
|
|
|
@@ -230,9 +232,9 @@ class TradeService extends BaseService
|
|
|
$type = isset($params['type'])? $params['type'] : 1;
|
|
|
$userId = isset($params['user_id'])? $params['user_id'] : 1;
|
|
|
$changeType = isset($params['change_type'])? $params['change_type'] : 1;
|
|
|
- $typeName = $type == 1? '花灯券':'积分';
|
|
|
+ $typeName = $type == 1? '花灯券':($type==3? '积分' : '工资');
|
|
|
if($num<=0){
|
|
|
- return message('请填写调整'.$typeName.'数量', false);
|
|
|
+ return message('请填写调整'.$typeName.($type==2? '金额':'数量'), false);
|
|
|
}
|
|
|
|
|
|
if(!in_array($changeType, [1,2])){
|
|
|
@@ -240,7 +242,7 @@ class TradeService extends BaseService
|
|
|
}
|
|
|
|
|
|
$memberInfo = MemberModel::where(['id'=> $userId,'mark'=> 1,'status'=> 1])
|
|
|
- ->select(['id','openid','nickname','coupon','score'])
|
|
|
+ ->select(['id','openid','nickname','coupon','score','salary'])
|
|
|
->first();
|
|
|
if($userId<=0 || !$memberInfo){
|
|
|
return message('用户账户状态不可操作', false);
|
|
|
@@ -251,31 +253,36 @@ class TradeService extends BaseService
|
|
|
return message('用户花灯券剩余'.$memberInfo->coupon.',已超出调整数量', false);
|
|
|
}
|
|
|
|
|
|
+ if($type == 2 && $memberInfo->salary < $num){
|
|
|
+ return message('用户工资剩余'.$memberInfo->salary.',已超出调整数量', false);
|
|
|
+ }
|
|
|
+
|
|
|
if($type == 3 && $memberInfo->score < $num){
|
|
|
return message('用户积分剩余'.$memberInfo->score.',已超出调整数量', false);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
\DB::beginTransaction();
|
|
|
- $field = $type == 1? 'coupon' : 'score';
|
|
|
+ $field = $type == 1? 'coupon' : ($type==3? 'score' : 'salary');
|
|
|
if(!MemberModel::where(['id'=> $userId])->increment($field, ($changeType==1? $num : -$num))){
|
|
|
\DB::rollBack();
|
|
|
return message("{$typeName}账户更新失败", false);
|
|
|
}
|
|
|
|
|
|
// 明细
|
|
|
+ $mark = $type ==2? '元':'个';
|
|
|
$remark = isset($params['remark'])? $params['remark'] : '';
|
|
|
$data = [
|
|
|
'user_id'=> $userId,
|
|
|
'source_uid'=> $adminUid,
|
|
|
- 'type'=> 5,
|
|
|
+ 'type'=> $type == 2? 8 : 5,
|
|
|
'coin_type'=> $type,
|
|
|
'pay_type'=> 4,
|
|
|
'money'=> $num,
|
|
|
'change_type'=> $changeType,
|
|
|
'balance'=> $type == 1? $memberInfo->coupon : $memberInfo->score,
|
|
|
'create_time'=> time(),
|
|
|
- 'remark'=> $remark? $remark : "平台调整账户,".($changeType==1?'增加':'减少')."{$num}个{$typeName}",
|
|
|
+ 'remark'=> $remark? $remark : "平台调整账户,".($changeType==1?'增加':'减少')."{$num}{$mark}{$typeName}",
|
|
|
'status'=> 1,
|
|
|
];
|
|
|
if(!$this->model::insertGetId($data)){
|
|
|
@@ -284,7 +291,12 @@ class TradeService extends BaseService
|
|
|
}
|
|
|
|
|
|
\DB::commit();
|
|
|
- return message(($changeType==1?'增加':'减少')."{$num}个{$typeName}成功", true);
|
|
|
+
|
|
|
+ // 设置日志标题
|
|
|
+ ActionLogModel::setTitle("用户{$typeName}账户调整,".($changeType==1?'增加':'减少')."{$num}{$mark}{$typeName}");
|
|
|
+ ActionLogModel::record();
|
|
|
+
|
|
|
+ return message(($changeType==1?'增加':'减少')."{$num}{$mark}{$typeName}成功", true);
|
|
|
}
|
|
|
|
|
|
}
|