Files
swiftadmin/app/admin/controller/PdmPartitemView.php

81 lines
2.8 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
declare (strict_types = 1);
namespace app\admin\controller;
use app\AdminController;
use Webman\Http\Request;
use app\admin\model\PdmPartitemView as PdmPartitemViewModel;
/**
* pdm_partitem_view
* PN查询
* <!--partview-->
* Class PdmPartitemView
* @package app\admin\controller
*/
class PdmPartitemView extends AdminController
{
/**
* PdmPartitemView模型对象
* @var \app\admin\model\PdmPartitemView
*/
public function __construct()
{
parent::__construct();
$this->model = new PdmPartitemViewModel;
}
/**
* 默认生成的方法为index/add/edit/del/status 五个方法
* 当创建CURD的时候DIY的函数体和模板为空请自行编写代码
*/
public function index(): \support\Response
{
if (request()->isAjax()) {
// $post = input();
// $post = request()->post();
$post = request()->all();
// $post['partnumber'] = input('partnumber');
// $pid = input('pid');
$limit = (int)input('limit') ?? 10;
$page = (int)input('page') ?? 1;
// if ($pid == null) {
// $pid = (string)$this->model->minId();
// }
// 生成查询数据
$where = $this->buildSelectParams();
$fieldList = $this->model->getFields();
$order = !array_key_exists('sort', $fieldList) ? 'id' : 'sort';
// $where[] = ['pid','in',$pid];
// $where[] = [];
if (!empty($post['keyword'])) {
$where[] = ['partnumber|purchasecode|parttype|value|description|mpn|mfgname|symbol|footprint|datasheet|usernickname|department','like','%'.$post['keyword'].'%'];
// $where[] = ['reference','like','%'.$post['keyword'].'%'];
// $where[] = ['content','like','%'.$post['keyword'].'%'];
// $where[] = ['item','like','%'.$post['keyword'].'%'];
}
$count = $this->model->where($where)->count();
$subQuery = $this->model->field('id')->where($where)->order($order, 'desc')->limit($limit)->page($page)->buildSql();
$subQuery = '( SELECT object.id FROM ' . $subQuery . ' AS object )';
// $list = $this->model->where($where)->limit((int)$limit)->page((int)$page)->select();
$list = $this->model->with($this->relationModel)->where('id in' . $subQuery)->order($order, 'desc')->select() ;
// $list = $this->model->where($where)->limit((int)$limit)->page((int)$page)->select();
return $this->success('查询成功', null, $list, $count);
}
return view('/pdm_partitem_view/index',[ ]);
}
}