123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209 |
- <?php
- /**
- * Created by PhpStorm.
- * User: xiaofeng
- * Date: 2018/3/13
- * Time: 上午8:46
- * 资讯,奇葩说
- **/
- namespace backend\controllers;
- use backend\base\CommonController;
- use common\models\NewsKnowledge;
- use common\models\NewKnowledgelabel;
- use backend\base\Help;
- use backend\server\UploadFile;
- use backend\server\SetUploadImg;
- use Yii;
- use yii\helpers\ArrayHelper;
- use linslin\yii2\curl;
- class NewsknowledgeController extends CommonController
- {
- public function actionHome()
- {
- return $this->render('@app/views/news/knowledge.php');
- }
- public function actionHomeform()
- {
- $model = new NewsKnowledge();
- $input = Yii::$app->request->post();
- if( ArrayHelper::keyExists('name',$input))
- {
- $model->subject = $input['name'];
- }
- if( ArrayHelper::keyExists('city',$input))
- {
- $m = new NewKnowledgelabel();
- $r = $m->FatherOrSon($input['city']);
- if(!empty($r) && isset($r[0]))
- {
- $model->label_id = array_column($r,'id');
- }
- else
- {
- $model->label_id = $input['city'];
- }
- }
- if( ArrayHelper::keyExists('id',$input))
- {
- $model->id = $input['id'];
- }
- $rows = $model->getList($input,
- ['pfg_new_knowledgelabel.name','pfg_news_knowledge.subject','pfg_news_knowledge.is_show','pfg_news_knowledge.id','pfg_news_knowledge.sort','pfg_news_knowledge.clicks','pfg_news_knowledge.true_click','pfg_news_knowledge.create_at','pfg_news_knowledge.label_id']
- ,3);
- if(!empty($rows))
- {
- foreach ($rows as &$val)
- {
- $val['create_at'] = date('Y-m-d',$val['create_at']);
- }
- return Help::JsonData(0,Yii::t('app','get_success'),$model->getListTotal(),$rows);
- }
- return Help::JsonCode(Help::ERROR,Yii::t('app','get_error'),[]);
- }
- public function actionEdit()
- {
- $input = Yii::$app->request->get();
- $model = new NewsKnowledge();
- $row = $model->FindById($input['id']);
- $row['thumb'] = json_decode($row['thumb'],true);
- $label = new NewKnowledgelabel();
- $label = $label->FindById($row['label_id']);
- $parentlabel = $label->FindById($label['pid']);
- return $this->render('@app/views/news/knowledgeedit.php',['model'=>$row,'label'=>$label,'parentlabel'=>$parentlabel]);
- }
- public function actionEditfrom()
- {
- $input = Yii::$app->request->post();
- $model = new NewsKnowledge();
- $row = $model->FindById($input['id']);
- if(empty($row)) return Help::JsonCode(Help::ERROR,Yii::t('app','edit_success'));
- $thumb = json_decode($row['thumb'],true);
- $url = Yii::$app->params['img_url']['newsknowledge'];
- $imgArr = \backend\server\UploadFile::InstancesImgName('img',$url);
- if(empty($input['label_id']) && ArrayHelper::keyExists('type_id',$input) )
- {
- $input['label_id'] = $input['type_id'];
- }
- //需要删除的图片
- if(!empty($input['delimg']))
- {
- $arrImg = array_diff($thumb,$input['delimg']); //需要保留的数组 如果删除全部图片 返回空数组
- $input['thumb'] = json_encode($arrImg);
- if(empty($arrImg) && !is_array($imgArr))
- {
- return Help::JsonCode(Help::ERROR,'检测到你删除了所有图片,请从新上传图片!');
- }
- foreach ($input['delimg'] as $val)
- {
- UploadFile::delImg($url,$val);
- }
- }
- if(is_array($imgArr))
- {
- //处理水印
- if(Yii::$app->request->post('thumb_watermark') == 1 )
- {
- $ImgSet = new SetUploadImg();
- $ImgSet->SetImgWatermark($imgArr,$url);
- }
- $input['thumb'] = json_encode(ArrayHelper::merge($imgArr,(array) $arrImg));
- }
- if( $row->load($input,'') && $row->save()) return Help::JsonCode(Help::SUCCESS,Yii::t('app','edit_success'));
- return Help::JsonCode(Help::ERROR,Yii::t('app','edit_error'),$row->errors);
- }
- public function actionCreate()
- {
- return $this->render('@app/views/news/knowledgeadd.php');
- }
- public function actionCreateform()
- {
- //处理图片
- $url = Yii::$app->params['img_url']['newsknowledge'];
- $row = \backend\server\UploadFile::InstancesImgName('img',$url);
- if(is_array($row))
- {
- $model = new NewsKnowledge();
- $input = Yii::$app->request->post();
- $model->scenario = 'add';
- $input['accountability'] = Yii::$app->session['user_info']['uid'];
- $input['thumb'] = json_encode($row);
- if($model->load($input,'') && $model->save())
- {
- //处理水印
- if(Yii::$app->request->post('thumb_watermark') == 1 )
- {
- $ImgSet = new SetUploadImg();
- $ImgSet->SetImgWatermark($row,$url);
- }
- return Help::JsonCode(Help::SUCCESS,Yii::t('app','add_success'));
- }
- foreach ($row as $val)
- {
- UploadFile::delImg($url,$val);
- }
- return Help::JsonCode(Help::ERROR,Yii::t('app','add_error'),$model->errors);
- }
- return Help::JsonCode(Help::ERROR,$row);
- }
- public function actionDels()
- {
- $input = Yii::$app->request->post();
- if(!empty($input['id']) && is_array($input))
- {
- $result = NewsKnowledge::updateAll(['del'=>2],['id'=>$input['id']]);
- if($result >0)return Help::JsonCode(Help::SUCCESS,Yii::t('app','edit_success'));
- }
- return Help::JsonCode(Help::ERROR,Yii::t('app','edit_error'));
- }
- // 分词
- public function actionParticiple()
- {
- $title=Yii::$app->request->post();
- $result['data']=$title['title'];
- $result['ignore']='yes';
- $curl = new curl\Curl();
- $url='http://www.xunsearch.com/scws/api.php';
- $response = $curl->reset()->setOption(CURLOPT_POSTFIELDS,http_build_query($result))->post($url);
- $response=unserialize($response);
- $arr=array();
- foreach($response['words'] as $k=>$v){
- if(strlen($v['word']) > 4){
- $arr[]=$v;
- }
- }
- if(!empty($arr) && count($arr) > 4)
- {
- $num=array_rand($arr,5);
- foreach($num as $k1=>$v1)
- {
- $rand_arr[]=$arr[$v1];
-
- }
- return Help::JsonCode(Help::SUCCESS,'成功',$rand_arr);
- }
- return Help::JsonCode(Help::SUCCESS,'成功',$arr);
- }
- }
|