<?php
namespace model;

use \model;
use \model\collocation;

class oeModelNA extends model{

	/**
     * @method 获取北美车型信息
     * @author hongzhang
     * @copyright 2026-04-10
     */
    public function getModelList($params){
        $filters = $params['filters'];
		$page = $params['page'];
		$pagesize = $params['rows'];
		$sidx = empty($params['sidx'])? '': $params['sidx'];
		$sord = empty($params['sord'])? 'asc': $params['sord'];
		$orderby = empty($params['orderby'])? 'base_year_id DESC,base_make_name,base_model_name': $params['orderby'];
        $table = 'oe_model_na(oml)';
        $fields = ['base_id','base_year_id', 'base_make_name', 'base_model_name', 'oml.*','au_name'];
        $join = [
            '[>]na_vehicle_base' => ['oml.oml_base_id' => 'base_id'],
            "[>]adm_user(au)"=>["oml.oml_opuser"=>"au_id"]
        ];
        $where = $this->filter2medoo($filters,function(&$field,&$op,&$data){
        });
        if(!empty($params['oe_id'])){
			$where['oml_oe_id'] = $params['oe_id'];
		}
        $where = $this->listWhere($where,$page,$pagesize,$sidx,$sord,$orderby);
		if($page>0 && $pagesize>0){
			$pages = $this->paging($table,$join, 'oml_id',$where,$page,$pagesize);
			$where["LIMIT"] = [$pages['limit'],$pagesize];
		}
		
        $modArr = $this->db->select($table,$join,$fields, $where);
        
		$collocation = new collocation();
		$collArr = $collocation->lrtree->getChilds(13);
		$collArr = array_column($collArr, LG_NAME, 'o_id');

		foreach($modArr as $k=>&$v)
		{
			$v['captions'] = [
				'oml_from_id'=>!empty($collArr[$v['oml_from_id']])? $collArr[$v['oml_from_id']]: '',
				'oml_opuser'=>$v['au_name']
			];
		}
		unset($v);
        $data = [
			'page'=> $page,
			'total'=> $pages['total'],
			'records' => $pages['records'],
			'rows' => array_values($modArr)
		];
		return $data;
    }
}