如何正确阅读货币汇率?

问题描述 投票:0回答:1

有人知道如何在 laravel 中读取货币汇率吗?

我们开发网络交换货币,所以当我输入正确的汇率但得到不同的结果时,我遇到了问题。

示例:美元与埃及镑之间的兑换:1 美元 = 15.70 埃及镑 所以我需要将货币美元转为 15.70 埃及镑,但如果我将其放入,将得到汇率 - 1 美元 = 4 埃及镑而不是 15.70

跟随图片了解

1-

2-

3-

4-

所以我的问题是:

有人知道解决这些费率的方法吗?

家用刀片

<form class="exchange-form" method="POST" action="{{ route('user.exchange') }}">
                        @csrf
                        <div class="form-group">
                            <label for="send">@lang('You Send')</label>
                            <input type="text" name="send_amount" id="send_val" placeholder="@lang('Send')" required
                                onkeyup="this.value = this.value.replace (/^\.|[^\d\.]/g, '')">
                            <select class="select-bar" name="send" id="send">
                                <option value="">@lang('Select Currency')</option>
                                @foreach ($currencys_sell as $currency)
                                    <option value="{{ $currency->id }}"
                                        data-min_max="{{ filterCollection($currency, 'rate', 'sell_at', 'buy_at', 'fixed_charge', 'percent_charge', 'reserve', 'min_exchange', 'max_exchange', 'cur_sym', 'payment_type_sell') }}">
                                        {{ $currency->name }} {{$currency->cur_sym}}
                                    </option>
                                @endforeach
                            </select>
                            <div class="exchange-limit exchange-buy d-none">
                                <div class="item">
                                    <span class="subtitle">@lang('Min')</span>
                                    <span class="amount min-amount"></span>
                                </div>
                                <div class="item">
                                    <span class="subtitle">@lang('Max')</span>
                                    <span class="amount max-amount"></span>
                                </div>
                            </div>
                        </div>
                        <div class="form-group receiveData">
                            <label for="receive">@lang('You Get')</label>

                            <input type="text" name="receive_amount" id="receive_val" min="0" placeholder="@lang('Receive')"
                                readonly>
                            <select class="select-bar" name="receive" id="receive">
                                <option value="" class="wrap">@lang('Select Currency')</option>
                                @foreach ($currencys_buy as $currency)
                                    <option value="{{ $currency->id }}"
                                        data-min_max="{{ filterCollection($currency, 'cur_sym', 'rate', 'sell_at', 'buy_at', 'fixed_charge', 'percent_charge', 'reserve', 'min_exchange', 'max_exchange', 'payment_type_sell') }}">
                                        {{ $currency->name }} {{$currency->cur_sym}}
                                    </option>
                                @endforeach
                            </select>
                            <div class="exchange-limit reserve-section d-none">
                                <div class="item reserve">
                                    <span class="subtitle">@lang('Reserve')</span>
                                    <span class="amount"></span>
                                </div>

                                    <div class="item reserve">
                                    <span class="subtitle">@lang('Rate')</span>
                                    <span class="amount conversion"></span>
                                </div>
                            </div>
                        </div>

家庭控制器

public function exchange(Request $request)
{
    session()->forget('Track');

    $receive = Currency::find($request->receive);
    $send = Currency::find($request->send);

   

    if ($receive == null) {
        $notify[] = ['error', 'Select any method that we send u the money'];
        return back()->withNotify($notify);
    }

    if ($send == null) {
        $notify[] = ['error', 'Select any method that we get money'];
        return back()->withNotify($notify);
    }

    $field = json_decode($receive->user_input);

    $validate_array = [
        'send' => 'required|numeric',
        'send_amount' => 'required|numeric|gt:0',
        'receive' => 'required|numeric',
        'receive_amount' => 'required|numeric|gt:0',

    ];
    foreach ($field as $value) {
        if (strtolower($value->type) === 'email') {
            $validate_array[$value->field_name] = "sometimes|{$value->validation}|email";
            continue;
        }

        $validate_array[$value->field_name] = "sometimes|{$value->validation}";
    }

    $this->validate($request, $validate_array);


    // new Calculation for covert amount 

    $percentCharge = ($request->send_amount * $send->percent_charge) / 100;

    $totalCharge = $percentCharge + $send->fixed_charge;

    $totalSendAmount = $request->send_amount - $totalCharge;

    $sendAmountConvertInBaseCurrency =  $totalSendAmount * $send->buy_at;

    $userReceiveAmount = $sendAmountConvertInBaseCurrency / $receive->sell_at;
php laravel currency finance currency-exchange-rates
1个回答
0
投票

打开代码并从选项中选择第一个选项并添加如下

@lang('选择货币')
© www.soinside.com 2019 - 2024. All rights reserved.