File: /web/data/weixin.tbbbearing.com/App/Home/Controller/ModelController.class.php
<?php
/**
 * Created by PhpStorm.
 * User: 18613127572
 * Date: 2018/7/24
 * Time: 11:13
 */
namespace Home\Controller;
use Think\Controller;
class ModelController extends BaseController
{
    public function _initialize()
    {
//        $this->check_auth();
    }
    public function index()
    {
        C('TOKEN_ON',false);
        $this->assign('seo_title','产品速查');
        $this->display();
    }
    /*
     * 输入型号检索相关结果
     * */
    public function input_search()
    {
        $result_length = 15;
        $keyword = I('post.keyword','','trim');
        if(!$keyword){
            $this->error("未搜索到结果");
        }
        $modelModel = M('model');
        $list = $modelModel->where('`model` like "'.$keyword.'%"')->field(array('model'))->order(array('model asc','views desc','mid asc'))->limit(0,$result_length)->select();
        $list_length = count($list);
        if($result_length > $list_length){
            $list2 = $modelModel->where('`model` like "%'.$keyword.'"')->field(array('model'))->order(array('model asc','views desc','mid asc'))->limit(0,$result_length - $list_length)->select();
            foreach((array)$list2 as $v){
                array_push($list,$v);
            }
        }
        $this->success($list);
    }
    public function search_result()
    {
        C('TOKEN_ON',false);
        $this->assign('seo_title','产品速查');
        $result_length = 100;
        $keyword = I('get.keyword','','trim');
        if(!$keyword){
//            $this->error("未搜索到结果");
        }
        $modelModel = M('model');
        $list = $modelModel->where('`model` like "'.$keyword.'%"')->order(array('model asc','views desc','mid asc'))->select();
        $un_id = '';
        foreach((array)$list as $v){
            $un_id .= $v['mid'].',';
        }
        $list_length = count($list);
        if($result_length > $list_length){
            $list2 = $modelModel->where(array('`model` like "%'.$keyword.'%"','mid not in(0,'.$un_id.'-1)'))->order(array('model asc','views desc','mid asc'))->limit(0,$result_length - $list_length)->select();
            foreach((array)$list2 as $v){
                array_push($list,$v);
            }
        }
        $this->assign('list',$list);
        $this->display();
    }
    public function model_detail()
    {
        $mid = (int)I('get.mid');
        $row = M('model')->where('mid='.$mid)->find();
        if(!$row){
            $this->error('数据错误');
        }
        M('model')->where('mid='.$mid)->setInc('views',1);
        $detail_row = M('model_detail')->where('mid='.$mid)->find();
        $detail_row['model_control'] = @json_decode($detail_row['model_control'],true);
        $detail_row['attribute_values'] = @explode('###',$detail_row['attribute_values']);
        foreach((array)$detail_row['attribute_values'] as $k=>$v){
            $detail_row['attribute_values'][$k] = @explode('@',$v);
        }
        $row['picture'] = @json_decode($detail_row['picture'],true);
        $this->assign('seo_title',$row['model']);
        $this->assign('row',$row);
        $this->assign('detail_row',$detail_row);
        $this->assign('type_row',M('model_type')->where('type_id='.((int)$row['type_id']))->find());
        $this->assign('attribute',array_change_key(M('model_attr')->where('1')->select(),'attrid'));
        $this->display();
    }
    public function sync_pro()
    {
        $id = (int)$_GET['id'];
        $result = json_decode(curl_post('http://www.halobearing.com/weixin_model/sync_pro.html?id='.$id),true);
        if(!$result['info']['row']){
            exit($id.':失败');
        }
        $row = array(
            'mid'           =>  $result['info']['row']['MId'],
            'model'         =>    $result['info']['row']['Model'],
            'old_model	'   =>  $result['info']['row']['OldModel'],
            'type_id	'   =>  $result['info']['row']['TypeId'],
            'series_id'     =>  $result['info']['row']['SeriesId'],
            'n_d'           =>  $result['info']['row']['n_d'],
            'n_d_unit'      =>  $result['info']['row']['n_d_unit'],
            'n_d_desc'      =>  $result['info']['row']['n_d_desc'],
            'u_d'           =>  $result['info']['row']['u_D'],
            'u_d_unit'      =>  $result['info']['row']['u_D_unit'],
            'u_d_desc'      =>  $result['info']['row']['u_D_desc'],
            'u_b'           =>  $result['info']['row']['u_B'],
            'u_b_unit'      =>  $result['info']['row']['u_B_unit'],
            'u_b_desc'      =>  $result['info']['row']['u_B_desc'],
            'u_h'           =>  $result['info']['row']['u_H'],
            'u_h_unit'      =>  $result['info']['row']['u_H_unit'],
            'u_h_desc	'   =>  $result['info']['row']['u_H_desc'],
            'n_m'           =>  $result['info']['row']['n_m'],
            'n_m_unit'      =>  $result['info']['row']['n_m_unit'],
            'n_m_desc'      =>  $result['info']['row']['n_m_desc'],
            'views'         =>  0,
            'add_time'      =>  C('TIME')
        );
        $detail_row = array(
            'mid'           =>  $result['info']['detail']['MId'],
            'picture'           =>  str_replace('"/upload/','"https://www.halobearing.com/upload/',$result['info']['detail']['PicPath']),
            'model_control'           =>  $result['info']['detail']['ModelControl'],
            'attribute_values'           =>  $result['info']['detail']['AttributeValues'],
        );
        M('model')->add($row);
        M('model_detail')->add($detail_row);
        exit($id.':成功');
    }
    /*
var idx = 1;
setInterval(function(){
    $.get('http://weixin.tbbbearing.com/Model/sync_pro.html?id='+idx,function(xhr){
        document.title = xhr
    });
    idx ++;
},3000);
    */
}