更新数据关联查询,以及基本的数据的编辑,部分有待进一步完善。

This commit is contained in:
panx
2025-01-06 00:06:03 +08:00
parent d70fcccc1d
commit 018322d8c1
22 changed files with 1693 additions and 748 deletions

View File

@@ -30,7 +30,51 @@ class PdmPurchasecode extends AdminController
* 默认生成的方法为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, 'asc')->select() ;
// $list = $this->model->where($where)->limit((int)$limit)->page((int)$page)->select();
return $this->success('查询成功', null, $list, $count);
}
return $this->view();
// return view('/pdm_partitem_view/index',[ ]);
}
}