model = model('PalmpaySubAccount'); $this->view->assign("subAccountTypeList", $this->model->getSubAccountTypeList()); } /** * 默认生成的控制器所继承的父类中有index/add/edit/del/multi五个方法 * 因此在当前控制器中可不用编写增删改查的代码,如果需要自己控制这部分逻辑 * 需要将application/admin/library/traits/Backend.php中对应的方法复制到当前控制器,然后进行修改 */ public function getPalmSubAccountList() { $model = new \app\admin\model\PalmpaySubAccount(); $query = $model->where('sub_account_type', \app\main\constants\PayConstents::PALMPAY_ACCOUNT_CHANNEL) ->join('palmpay_company', 'palmpay_company.id=palmpay_sub_account.palmpay_company_id', 'LEFT') ->field([ 'concat(palmpay_company.name,"|",palmpay_sub_account.nickname)' => 'name', 'concat(palmpay_company.id,"|",palmpay_sub_account.id)' => 'id', ]); $name = $this->request->post('name'); $selected = $this->request->post('searchValue'); if ($name) { $query->where(function ($query) use ($name) { $query->where('palmpay_company.name', 'like', '%' . $name . '%') ->whereOr('palmpay_sub_account.nickname', 'like', '%' . $name . '%'); }); } if ($selected) { $query->whereIn('palmpay_sub_account.id', explode(',', $selected)); } $list = $query->select(); $data = []; foreach ($list as $item) { $data[] = [ 'id' => $item['id'], 'name' => $item['name'], ]; } $result = ["total" => count($data), "list" => $data]; return json($result); } }