111 lines
4.4 KiB
PHP
111 lines
4.4 KiB
PHP
<?php
|
|
|
|
namespace App\Admin\Controllers;
|
|
|
|
use Slowlyo\OwlAdmin\Renderers\Page;
|
|
use Slowlyo\OwlAdmin\Renderers\Form;
|
|
use Slowlyo\OwlAdmin\Controllers\AdminController;
|
|
use App\Services\Admin\HydropowerFeeService;
|
|
use App\Models\Oldmen;
|
|
use Slowlyo\OwlAdmin\Renderers\TableColumn;
|
|
use App\Admin\Components;
|
|
|
|
/**
|
|
* 水电续费
|
|
*
|
|
* @property HydropowerFeeService $service
|
|
*/
|
|
class HydropowerFeeController extends AdminController
|
|
{
|
|
protected string $serviceName = HydropowerFeeService::class;
|
|
|
|
public function list(): Page
|
|
{
|
|
$crud = $this->baseCRUD()
|
|
->filterTogglable(false)
|
|
->headerToolbar([
|
|
$this->createButton(true, 'lg'),
|
|
...$this->baseHeaderToolBar()
|
|
])
|
|
->filter(
|
|
$this->baseFilter()->body([
|
|
amisMake()->TextControl('name', '姓名')->size('md'),
|
|
amisMake()->TextControl('card_no', '身份证')->size('md'),
|
|
amisMake()->TextControl('sn', '单据编号')->size('md'),
|
|
amis('button')->label(__('admin.reset'))->actionType('clear-and-submit'),
|
|
amis('submit')->label(__('admin.search'))->level('primary'),
|
|
])->actions([])
|
|
)
|
|
->columns([
|
|
amisMake()->TableColumn('sn', '单据编号')->sortable(),
|
|
amisMake()->TableColumn('oldman.name', '客人'),
|
|
amisMake()->TableColumn('start_at', '开始时间')->type('datetime')->sortable(true),
|
|
amisMake()->TableColumn('end_at', '结束时间')->type('datetime')->sortable(true),
|
|
amisMake()->TableColumn('money', '金额'),
|
|
amisMake()->TableColumn('created_at', '办理时间')->type('datetime')->sortable(true),
|
|
amisMake()->Operation()->label(__('admin.actions'))->buttons([
|
|
amisMake()->Button()->label('打印预览')->actionType('url')->blank(true)
|
|
->url(url('/print-water-fee').'?id=${id}')->level('link'),
|
|
$this->rowEditButton(true, 'lg'),
|
|
$this->rowDeleteButton()
|
|
]),
|
|
]);
|
|
|
|
return $this->baseList($crud);
|
|
}
|
|
|
|
public function form($isEdit = false): Form
|
|
{
|
|
return $this->baseForm()->body([
|
|
amisMake()->PickerControl('oldman_id', '姓名')
|
|
->valueField('id')
|
|
->labelField('name')
|
|
->joinValues(false)->extractValue(true)
|
|
->size('md')
|
|
->source([
|
|
'method' => 'get',
|
|
'url' => admin_url('oldmen?_action=getData&live_in='.Oldmen::STATUS_NORMAL),
|
|
'data' => [
|
|
'name'=>'${term}',
|
|
]
|
|
])
|
|
->pickerSchema(
|
|
[
|
|
'mode' => 'table',
|
|
'name' => 'monitor_list',
|
|
'headerToolbar' => amisMake()->form()
|
|
->wrapWithPanel(false)
|
|
->className('text-right')
|
|
->target('monitor_list')
|
|
->mode('inline')
|
|
->body([
|
|
amisMake()->TextControl('term', '姓名/身份证号')->addOn(
|
|
amis('submit')->label(__('admin.search'))->level('primary')
|
|
)
|
|
]),
|
|
'columns' => [
|
|
TableColumn::make()->name('name')->label('姓名'),
|
|
TableColumn::make()->name('card_no')->label('身份证号码'),
|
|
]
|
|
]
|
|
)->value(0)
|
|
->required(true),
|
|
amisMake()->GroupControl()->body([
|
|
amisMake()->DateControl('start_at', '开始时间')->format('YYYY-MM-DD 00:00:00')->required(true),
|
|
amisMake()->DateControl('end_at', '结束时间')->format('YYYY-MM-DD 23:59:59')->required(true),
|
|
]),
|
|
Components::make()->decimalControl('money', '金额')->required(true),
|
|
|
|
]);
|
|
}
|
|
|
|
public function detail(): Form
|
|
{
|
|
return $this->baseDetail()->body([
|
|
amisMake()->TextControl('id', 'ID')->static(),
|
|
amisMake()->TextControl('created_at', __('admin.created_at'))->static(),
|
|
amisMake()->TextControl('updated_at', __('admin.updated_at'))->static()
|
|
]);
|
|
}
|
|
}
|