ukraska listow produkts i paymants wadminki dobavlena knopka approve decline na paymenrt

This commit is contained in:
merdan 2021-11-09 19:11:32 +05:00
parent bf90330285
commit fb50ccddb6
7 changed files with 131 additions and 52 deletions

View File

@ -2,6 +2,7 @@
use App;
use Auth;
use Carbon\Carbon;
use Event;
use Backend;
use System\Classes\PluginBase;

View File

@ -37,6 +37,40 @@ class Plugin extends PluginBase
{
$this->registerConsoleCommand('birzha:databasebackup', DatabaseBackUp::class);
}
public function registerListColumnTypes()
{
return [
// A local method, i.e $this->evalUppercaseListColumn()
'status' => [$this, 'statusListColumn'],
'vendor' => [$this, 'vendorLinkListColumn'],
'user' => [$this, 'userLinkListColumn'],
];
}
public function userLinkListColumn($value, $column, $record){
return '<a href="'.Backend::url('rainlab/user/users/preview',$record->user_id).'" class="btn btn-link">'.$value.'</a>';
}
public function vendorLinkListColumn($value, $column, $record){
return '<a href="'.Backend::url('rainlab/user/users/preview',$record->vendor_id).'" class="btn btn-link">'.$value.'</a>';
}
public function statusListColumn($value, $column, $record)
{
switch ($value){
case 'draft' : return '<span class="btn btn-default btn-xs">'.$value.'</span>';
case 'bank' : return '<span class="btn btn-outline-warning btn-xs">'.$value.'</span>';
case 'online' : return '<span class="btn btn-outline-primary btn-xs">'.$value.'</span>';
case 'approved' : return '<span class="btn btn-primary btn-xs">'.$value.'</span>';
case 'payed' : return '<span class="btn btn-primary btn-xs">'.$value.'</span>';
case 'new' : return '<span class="btn btn-secondary btn-xs">'.$value.'</span>';
case 'denied' : return '<span class="btn btn-danger btn-xs bg-s">'.$value.'</span>';
case 'disabled' : return '<span class="btn btn-outline-danger btn-xs bg-s">'.$value.'</span>';
default : return $value;
}
}
public function registerSchedule($schedule)
{
@ -88,9 +122,9 @@ class Plugin extends PluginBase
$controller = \Cms\Classes\Controller::getController() ?? new \Cms\Classes\Controller();
// Search your plugin's contents
$locale = Session::get('rainlab.translate.locale');
if($locale == 'tm') {
// user enters product name
$items = Models\Product
@ -100,7 +134,7 @@ class Plugin extends PluginBase
->get();
} else {
$queryString = $query;
// user enters product name
$items = Models\Product::whereHas('translations', function ($query) use ($locale,$queryString) {
$query->where('locale', $locale)->where('attribute_data', 'like', "%${queryString}%");
@ -109,8 +143,8 @@ class Plugin extends PluginBase
->where('ends_at','>=',\DB::raw('curdate()'))->orderBy('updated_at', 'desc')
->get();
}
// show all offers that have that product
// $items = collect(new Offer);
// foreach($products as $p) {

View File

@ -3,6 +3,7 @@
use Backend\Classes\Controller;
use BackendMenu;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
use TPS\Birzha\Models\Payment;
class Payments extends Controller
@ -47,5 +48,12 @@ class Payments extends Controller
?? 0;
}
public function onApprove(){
Log::info('test approve');
}
public function onDecline(){
Log::info('test approve');
}
//todo amount funksia yazmaly
}

View File

@ -2,9 +2,62 @@
<ul>
<li><a href="<?= Backend::url('tps/birzha/payments') ?>">Payments</a></li>
<li><?= e($this->pageTitle) ?></li>
</ul>
<?php Block::endPut() ?>
</ul>
<?php Block::endPut() ?>
<div class="control-toolbar">
<div class="toolbar-item toolbar-primary">
<div data-control="toolbar">
<button
type="button"
data-request="onApprove"
data-request-data="redirect:0"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-outline-success">
Approve
</button>
<button
type="button"
data-request="onSave"
data-request-data="redirect:0"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-outline-danger">
Decline
</button>
<button
type="submit"
data-request="onSave"
data-request-data="redirect:0"
data-hotkey="ctrl+s, cmd+s"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-primary">
<?= e(trans('backend::lang.form.save')) ?>
</button>
<button
type="button"
data-request="onSave"
data-request-data="close:1"
data-hotkey="ctrl+enter, cmd+enter"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-default">
<?= e(trans('backend::lang.form.save_and_close')) ?>
</button>
<button
type="button"
class="oc-icon-trash-o btn-icon danger pull-right"
data-request="onDelete"
data-load-indicator="<?= e(trans('backend::lang.form.deleting')) ?>"
data-request-confirm="<?= e(trans('backend::lang.form.confirm_delete')) ?>">
</button>
<span class="btn-text ">
<?= e(trans('backend::lang.form.or')) ?> <a href="<?= Backend::url('tps/birzha/payments') ?>"><?= e(trans('backend::lang.form.cancel')) ?></a>
</span>
</div>
</div>
</div>
<?php if (!$this->fatalError): ?>
<?= Form::open(['class' => 'layout']) ?>
@ -15,35 +68,7 @@
<div class="form-buttons">
<div class="loading-indicator-container">
<button
type="submit"
data-request="onSave"
data-request-data="redirect:0"
data-hotkey="ctrl+s, cmd+s"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-primary">
<?= e(trans('backend::lang.form.save')) ?>
</button>
<button
type="button"
data-request="onSave"
data-request-data="close:1"
data-hotkey="ctrl+enter, cmd+enter"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-default">
<?= e(trans('backend::lang.form.save_and_close')) ?>
</button>
<button
type="button"
class="oc-icon-trash-o btn-icon danger pull-right"
data-request="onDelete"
data-load-indicator="<?= e(trans('backend::lang.form.deleting')) ?>"
data-request-confirm="<?= e(trans('backend::lang.form.confirm_delete')) ?>">
</button>
<span class="btn-text">
<?= e(trans('backend::lang.form.or')) ?> <a href="<?= Backend::url('tps/birzha/payments') ?>"><?= e(trans('backend::lang.form.cancel')) ?></a>
</span>
</div>
</div>
<?= Form::close() ?>
@ -51,4 +76,4 @@
<?php else: ?>
<p class="flash-message static error"><?= e(trans($this->fatalError)) ?></p>
<p><a href="<?= Backend::url('tps/birzha/payments') ?>" class="btn btn-default"><?= e(trans('backend::lang.form.return_to_list')) ?></a></p>
<?php endif ?>
<?php endif ?>

View File

@ -8,11 +8,15 @@ columns:
invisible: false
user_id:
label: User
type: text
type: user
relation: user
valueFrom: email
amount:
label: Amount
type: text
payment_type:
label: 'Payment type'
type: text
type: status
status:
label: Status
type: status

View File

@ -4,6 +4,7 @@ fields:
span: auto
disabled: 0
readOnly: 0
required: 1
type: number
user:
label: Payer
@ -20,17 +21,21 @@ fields:
type: datepicker
payment_type:
label: 'Payment type'
span: auto
options:
bank: Bank
online: Online
span: auto
readOnly: 1
type: balloon-selector
status:
label: Status
options:
new: new
approved: approved
declined: declined
payed: payed
span: auto
readOnly: 1
type: balloon-selector
note:
label: Note

View File

@ -3,28 +3,30 @@ columns:
label: id
type: number
sortable: true
created_at:
label: 'Created at'
type: datetime
invisible: true
updated_at:
label: 'Updated at'
type: datetime
invisible: true
name:
label: Name
type: text
searchable: true
sortable: true
sortable:
user_id:
label: User
type: vendor
relation: vendor
valueFrom: email
status:
label: Status
type: text
type: status
sortable: true
slug:
label: Slug
type: text
mark:
label: Marka
type: text
searchable: true
sortable: true
updated_at:
label: 'Updated at'
type: datetime
invisible: true
ends_at:
label: 'Ends at'
type: datetime
invisible: true