| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- <?php
- namespace App\Module\Fund\Admin\Actions;
- use App\Module\Fund\AdminControllers\Helper\FormHelper;
- use App\Module\Fund\Enums\FUND_TYPE;
- use App\Module\Fund\Models\FundModel;
- use App\Module\Fund\Services\AccountService;
- use App\Module\Fund\Services\FundService;
- use Dcat\Admin\Contracts\LazyRenderable;
- use Dcat\Admin\Traits\LazyWidget;
- use UCore\DcatAdmin\Widgets\Form;
- use function request;
- use Illuminate\Support\Facades\DB;
- /**
- * 订单推送,单页面版本
- *
- */
- class CirculationForm extends Form implements LazyRenderable
- {
- use LazyWidget;
- public function run($input)
- {
- // 验证 start
- $id = request('id');
- // dd($input);
- $user_id = $input['user_id'];
- $fund_id = $input['fund_id'];
- $to_fund_id = $input['to_fund_id'];
- $acc = $input['acc'];
- $remark = $input['remark'];
- DB::beginTransaction();
- $fund= new FundService($user_id,(int)$fund_id);
- $res = $fund->circulation(FUND_TYPE::tryFrom($to_fund_id), $acc ,0,'admin', $remark);
- if($res){
- DB::commit();
- return $this->_success('ok');
- }
- DB::rollBack();
- return $this->_error('error');
- }
- public function form()
- {
- $id = request('id');
- $funddata = FundModel::query()->find($id);
- // dump($funddata);
- // 备注, 目标账户,钱数
- $help = new FormHelper($this, $this);
- $help->hidden('id')->value($funddata->id);
- $help->hidden('user_id')->value($funddata->user_id);
- $help->hidden('fund_id')->value($funddata->fund_id);
- $help->text('remark')->value("流转原因:");
- $help->display("balance")->value($funddata->balance/1000);
- $index = AccountService::getFundsDesc();
- unset($index[$funddata->fund_id->value()]);
- $help->radio('to_fund_id',$index)->required();
- $help->number("acc")->value(1)->max($funddata->balance/1000);
- }
- }
|