<?php
namespace admin\action\pack;

use model\pack\type;

class typeAction extends \action
{
    public function detail()
    {
        $req = \mvc::$req;
        $pat_id = $req['pat_id'];
        $type = new type();
        if($pat_id){
            $item = $type->getDetail($pat_id);
            $oArr = $type->db->select('object',['[><]pack_attributes'=>['o_id'=>'paa_attcat']],['o_id',LG_NAME.'(o_name)'],['o_parent_id'=>1169,'paa_pat_id'=>$pat_id,'GROUP'=>'o_id']);
            \view::set('oArr',$oArr);
        }
        //通用的用于回显列表没有的属性
        $allArr = $type->db->select('object',['o_id',LG_NAME.'(o_name)'],['o_parent_id'=>1169]);
        \view::set('allArr',$allArr);
        \view::set('item',$item);
        \view::put(); 
    }

    public function list()
    {
        $req = \mvc::$req;
        \view::put();
    }
    public function getList()
    {
        $req = \mvc::$req;
        $type = new type();
        $data = $type->getList($req);
        $this->successJson($data);
    }
    public function saveDetail()
    {
        $req = \mvc::$req;
        $type = new type();
        $id = $type->saveDetail($req);
        $this->successJson(['key'=>$id]);
    }

    public function getPackTypeKVList()
    {
        $req = \mvc::$req;
		$type = new type();
      
        $where['OR'] = [
            'pat_'.LG_NAME.'[~]'=>$req['query'],
        ];

        //权限 - 小类
        // $cates = \p::cates($req['pwcode']?:'1300');
        $join = [];    
        // if(!\p::isAdmin() && $cates){
        //     $join = ['[><]factory_cate(fc)'=>['fac.fac_id'=>'fc_fac_id']];
        //     $where['fc.fc_cat_id'] = explode(',', $cates);
        //     $where['GROUP'] = 'fac_id'; //去重
        // }

        $rows = $type->getDb()->select('pack_type(pat)',$join,'*',$where);
        $data = [];
        $regi=0;
		$firstkey = isset($req['firstkey'])? $req['firstkey']: 0;
        if(isset($req['hasFirst']) && $req['hasFirst']){
            $data[0] = ['key'=>$firstkey, 'value'=>'' ];
            $regi = 1;
        }
        foreach($rows as $k=>$row){

            $data[$k+$regi] = ['key'=>$row['pat_id'], 'value'=> $row['pat_'.LG_NAME] ];
        }
        $this->successJson($data);
    }


    public function delData()
    {
        $req = \mvc::$req;
        $type = new type();
        if(!isset($req['ids'])){
            $this->errorJson('请选择要删除的数据');
        }
        $ids = !is_array($req['ids'])?explode(',',$req['ids']):$req['ids'];
        $data = $type->delData($ids);
        $this->successJson($data);
    }


    public function getPackTypeInfo()
    {
        $item  = [];
        $req = \mvc::$req;
        $pat_id = $req['pat_id'];
        $type = new type();
        if($pat_id){
            $item = $type->getDetail($pat_id);
            $item['attributes'] = $type->db->select('object',['[><]pack_attributes'=>['o_id'=>'paa_attcat']],['o_id',LG_NAME.'(o_name)'],['o_parent_id'=>1169,'paa_pat_id'=>$pat_id,'GROUP'=>'o_id']);
        }
        $this->successJson($item);
    }
}