FamilyModal.php 2.8 KB
<?php
/**
+-----------------------------------------------------------------------------------------------------------------------
 * grid 列表 modal 类:商家-群组 modal 类
+-----------------------------------------------------------------------------------------------------------------------
 *
 * PHP version 7
 *
 * @category  App\Admin\Grids\Modal
 * @package   App\Admin\Grids\Modal
 * @author    Richer <yangzi1028@163.com>
 * @date      2022年3月15日09:22:19
 * @copyright 2020-2022 Richer (http://www.Richer.com/)
 * @license   http://www.Richer.com/ License
 * @link      http://www.Richer.com/
 */
namespace App\Admin\Grids\Modal\Score;

use App\Admin\Grids\Modal\BaseModal;
use App\Models\Score\TaskDetail;
use App\Models\User\Family;
use App\Transformers\Score\TaskDetailTransformer;
use App\Transformers\User\FamilyTransformer;

/**
 * Class FamilyModal
 *
 * @category  App\Admin\Grids\Modal\Score
 * @package   App\Admin\Grids\Modal\Score
 * @author    Richer <yangzi1028@163.com>
 * @date      2022年3月15日09:22:19
 * @copyright 2020-2022 Richer (http://www.Richer.com/)
 * @license   http://www.Richer.com/ License
 * @link      http://www.Richer.com/
 */
class FamilyModal extends BaseModal
{
    public function render($key = null)
    {
        $list = TaskDetail::with(['family'])->where('task_id', $key)->latest()->paginate(request('per_page', 10));
        $paginator = $this->renderPaginator($key, $list, app(TaskDetailTransformer::class));
        // 定义需要展示的字段
        $columns = [
            [
                'name'      => __('group_name'),
                'field'     => 'group_name',
            ],
            [
                'name'      => __('户主姓名'),
                'field'     => 'user_name',
            ],
            [
                'name'      => __('户主手机'),
                'field'     => 'user_mobile',
            ],
            [
                'name'      => __('house_number'),
                'field'     => 'house_number',
            ],
            [
                'name'      => __('score'),
                'field'     => 'score',
            ],
//            [
//                'name'      => __('star'),
//                'field'     => 'star',
//            ],
            [
                'name'      => __('star'),
                'field'     => 'star_show',
            ],
            [
                'name'      => __('scored_at'),
                'field'     => 'scored_at',
            ],
            [
                'name'      => __('confirmed_at'),
                'field'     => 'confirmed_at',
            ],
            [
                'name'      => __('is_vetoed'),
                'field'     => 'vetoed_show',
            ],
        ];

        $paginator['columns'] = $columns;

        return view(
            'admin::grid.modal',
            $paginator
        );
    }
}