| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- <?php
- namespace App\Module\Fund\Logic;
- use App\Module\Fund\Models\FundTransferModel;
- use UCore\Trace;
- /**
- * Class Transfer 转账的服务层
- *
- * @package logic\user\fund\Service
- */
- class Transfer
- {
- /**
- * 日志信息
- *
- * @param $id
- */
- public static function logInfo($id)
- {
- $transfer = FundTransferModel::find($id);
- if (!$transfer) {
- return [];
- }
- $info = $transfer->toArray();
- // 获取用户信息 - 使用Laravel的用户模型
- $userInfo = \App\Module\User\Models\User::find($info['user_id']);
- $info['user_id_info'] = $userInfo ? $userInfo->toArray() : [];
- return $info;
- }
- /**
- * 转账给别人
- *
- * @param $user_id
- * @param $to_user_id
- * @param $amount
- * @param $remark
- * @return bool|\Illuminate\Database\Eloquent\Model|int|string
- */
- public static function to_user(
- $user_id,
- $fund_id,
- $to_user_id,
- $amount,
- $remark)
- {
- Trace::addData('info', func_get_args());
- $data = [
- 'fund_id' => $fund_id,
- 'user_id' => $user_id,
- 'to_user_id' => $to_user_id,
- 'remark' => $remark,
- 'amount' => $amount
- ];
- # 进行验证
- $va = new \App\Module\Fund\Validations\Transfer($data);
- $va->validate();
- if ($va->isFail()) {
- return $va->firstError();
- }
- $Model = new FundTransferModel();
- $Model->setData($data);
- if ($Model->save() === false) {
- return $Model->getMessage();
- }
- return (int)$Model->id;
- }
- }
|