NASER add setting controller & dynamic fee in settings & add send transactions to tahesab in settings
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Setting;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Artisan;
|
||||
|
||||
class SettingsController extends Controller
|
||||
{
|
||||
public function index(){
|
||||
$Setting = Setting::where('can_edit',1)->select('id','title_fa', 'key','value','description','is_active')->get();
|
||||
return response()->json($Setting);
|
||||
}
|
||||
public function edit(Request $request)
|
||||
{
|
||||
// Check if the setting exists
|
||||
$setting = Setting::where('key', $request->key)->first();
|
||||
|
||||
if ($setting) {
|
||||
// Update the existing setting
|
||||
$setting->value = $request->value;
|
||||
$setting->description = $request->description;
|
||||
$setting->is_active = $request->is_active;
|
||||
$setting->save();
|
||||
} else {
|
||||
// Create a new setting
|
||||
$setting = new Setting();
|
||||
$setting->key = $request->key;
|
||||
$setting->value = $request->value;
|
||||
$setting->description = $request->description;
|
||||
$setting->is_active = $request->is_active;
|
||||
$setting->save();
|
||||
}
|
||||
|
||||
// Return the setting as a JSON response
|
||||
return response()->json($setting);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -18,6 +18,7 @@ use Rooyesh\Wallet\models\Transaction;
|
||||
use Rooyesh\Wallet\models\Wallet;
|
||||
use Symfony\Component\HttpKernel\Exception\UnprocessableEntityHttpException;
|
||||
use App\Http\Controllers\Admin\TahesabController;
|
||||
use App\Models\Setting;
|
||||
|
||||
|
||||
class WalletController extends Controller
|
||||
@@ -117,9 +118,16 @@ class WalletController extends Controller
|
||||
'active' => true
|
||||
], 7, true, $deposit, $gold_block);
|
||||
|
||||
$data['direction'] = 0;
|
||||
// $tahesab = new TahesabController();
|
||||
// $tahesab->wallet($data);
|
||||
if(Setting::where('key', 'send_to_tahesab')->first()->value == "true"){
|
||||
try {
|
||||
$data['direction'] = 0;
|
||||
$tahesab = new TahesabController();
|
||||
$tahesab->wallet($data);
|
||||
}catch (\Exception $e){
|
||||
return response($e->getMessage(), 500);
|
||||
}
|
||||
}
|
||||
|
||||
$status = $data['value'] > 0 ?" شارژ شد ": " کسر شد ";
|
||||
$message = 'کیف پول شما به اندازه ' . number_format(abs($data['value'])) . " ریال در تاریخ " . verta()->format('Y/n/j H:i:s') .$status . "بابت" . "\n"
|
||||
. $data['note']
|
||||
|
||||
@@ -21,6 +21,7 @@ use Rooyesh\Wallet\models\Wallet;
|
||||
use App\Models\TransactionsAdmin;
|
||||
use Symfony\Component\HttpKernel\Exception\UnprocessableEntityHttpException;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
use App\Models\Setting;
|
||||
|
||||
|
||||
class SingleOrderController extends Controller
|
||||
@@ -36,8 +37,10 @@ class SingleOrderController extends Controller
|
||||
$data['all_price'] = $latestPrice;
|
||||
$data['price'] = $latestPrice->price;
|
||||
$data['price_id'] = $latestPrice->id;
|
||||
$data['difference'] = config('fee.cash');
|
||||
$data['service_charge_percentage'] = config('fee.service_charge_percentage');
|
||||
// $data['difference'] = config('fee.cash');
|
||||
$data['difference'] = Setting::where('key', 'fee_cash')->first()->value;
|
||||
// $data['service_charge_percentage'] = config('fee.service_charge_percentage');
|
||||
$data['service_charge_percentage'] = Setting::where('key', 'fee_service_charge_percentage')->first()->value;
|
||||
$data['pay_at'] = (new \DateTime())->format('Y-m-d H:i:s');
|
||||
} else if (auth('user')->id()) {//admin
|
||||
$data['service_charge_percentage'] = 0;
|
||||
@@ -103,13 +106,14 @@ class SingleOrderController extends Controller
|
||||
$response['sell'] = $this->processSellTransaction($data, $wallet, $wallet_interface);
|
||||
}
|
||||
}
|
||||
try {
|
||||
$tahesab = new TahesabController();
|
||||
$data['tahesab'] = $tahesab->storeTrade($data);
|
||||
}catch (\Exception $e){
|
||||
return response($e->getMessage(), 500);
|
||||
if(Setting::where('key', 'send_to_tahesab')->first()->value == "true"){
|
||||
try {
|
||||
$tahesab = new TahesabController();
|
||||
$data['tahesab'] = $tahesab->storeTrade($data);
|
||||
}catch (\Exception $e){
|
||||
return response($e->getMessage(), 500);
|
||||
}
|
||||
}
|
||||
|
||||
// $response['reward'] = $this->give_order_reward($data, $wallet, $wallet_interface);
|
||||
$response['Notifications'] = $this->sendTransactionNotifications($data, $transactionType);
|
||||
return response()->json([$response, $data]);
|
||||
|
||||
@@ -6,6 +6,7 @@ use App\Http\Controllers\Admin\PriceController;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Mail\YourMailableClass;
|
||||
use App\Models\Cnt;
|
||||
use App\Models\Setting;
|
||||
use App\Models\ConfigStatic;
|
||||
use App\Models\Customer;
|
||||
use App\Models\Price;
|
||||
@@ -43,7 +44,8 @@ class ReportController extends Controller
|
||||
|
||||
public function updatePrise()
|
||||
{
|
||||
$difference = config('fee.single');
|
||||
// $difference = config('fee.single');
|
||||
$difference = Setting::where('key', 'fee_single')->first()->value;
|
||||
$lastPrice = Price::latest()->first();
|
||||
$PriceTriggers = PriceTrigger::where("is_active", true)->get();
|
||||
foreach ($PriceTriggers as $PriceTrigger) {
|
||||
@@ -71,7 +73,8 @@ class ReportController extends Controller
|
||||
|
||||
public function upDownPrice()
|
||||
{
|
||||
$difference = config('fee.single');
|
||||
// $difference = config('fee.single');
|
||||
$difference = Setting::where('key', 'fee_single')->first()->value;
|
||||
$today = Carbon::now()->format("Y-m-d");
|
||||
$prises = Price::where('date_at', $today)->get("price");
|
||||
|
||||
@@ -119,7 +122,8 @@ class ReportController extends Controller
|
||||
|
||||
public function lastPrice()
|
||||
{
|
||||
$difference = config('fee.single');
|
||||
// $difference = config('fee.single');
|
||||
$difference = Setting::where('key', 'fee_single')->first()->value;
|
||||
|
||||
|
||||
// try {
|
||||
|
||||
@@ -4,18 +4,24 @@ namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Foundation\Auth\User as Authenticatable;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Rooyesh\Wallet\models\Transaction;
|
||||
use Tymon\JWTAuth\Contracts\JWTSubject;
|
||||
|
||||
class Setting extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
protected $table = 'settings';
|
||||
use HasFactory,Selector;
|
||||
protected $fillable = [
|
||||
'key',
|
||||
'title_fa',
|
||||
'is_active',
|
||||
'description',
|
||||
'value',
|
||||
'value_json'
|
||||
];
|
||||
protected $casts = [
|
||||
'value_json'=>'array'
|
||||
'value_json'=>'array',
|
||||
'is_active'=>'boolean',
|
||||
];
|
||||
}
|
||||
|
||||
+1
-3
@@ -12,9 +12,7 @@
|
||||
"laravel/framework": "^8.75",
|
||||
"laravel/sanctum": "^2.11",
|
||||
"laravel/tinker": "^2.5",
|
||||
"tymon/jwt-auth": "^1.0",
|
||||
"morilog/jalali": "^3.4"
|
||||
},
|
||||
"tymon/jwt-auth": "^1.0"},
|
||||
"require-dev": {
|
||||
"facade/ignition": "^2.5",
|
||||
"fakerphp/faker": "^1.9.1",
|
||||
|
||||
@@ -15,12 +15,19 @@ use App\Http\Controllers\Customer\PriceTriggerController;
|
||||
use App\Http\Controllers\Finance\FinanceController;
|
||||
use App\Http\Controllers\Admin\ProductController;
|
||||
use App\Http\Controllers\Admin\TahesabController;
|
||||
use App\Http\Controllers\Admin\SettingsController;
|
||||
|
||||
|
||||
Route::middleware('auth:user')->group(function (){
|
||||
Route::middleware('validation')->group(function (){
|
||||
Route::get('/p', function () {
|
||||
return Http::get('https://pricing.liman.gold/pricingApi', [])->json();
|
||||
});
|
||||
|
||||
//settigs
|
||||
Route::get('get_settings',[SettingsController::class, 'index']);
|
||||
Route::post('get_settings',[SettingsController::class, 'edit']);
|
||||
|
||||
//------------balence
|
||||
Route::post('getBalance', [DashboardController::class, 'getBalance']);
|
||||
//------------PriceTrigger
|
||||
|
||||
Reference in New Issue
Block a user