homepagePHP/app/Common/Model/KeywordsModel.class.php

78 lines
2.2 KiB
PHP
Executable File

<?php
namespace Common\Model;
use Gy_Library\DBCont;
//自动生成代码
class KeywordsModel extends \Gy_Library\GyListModel {
protected $_validate = array(
array('name', 'require', '关键词名称不能为空'),
array('name','','关键词已经存在!',0,'unique',3), // 验证name字段是否唯一
);
protected $_auto = array(
);
public function genKeyword($keyword_ids){
$res = $this->where(['id'=>['IN',$keyword_ids]])->select();
$datas = [];
foreach ($res as $vo){
$tem =[];
$tem[]=['name'=>'keyword','type'=>'select2','value'=>$vo['name']];
$datas[]=$tem;
}
return $datas;
}
public function genKeywordId($keyword_ids) {
$res = $this->where(['id'=>['IN',$keyword_ids]])->select();
$datas = [];
foreach ($res as $vo){
$tem =[];
$tem[]=['name'=>'keywords_id','type'=>'select2','value'=>$vo['id']];
$datas[]=$tem;
}
return $datas;
}
public function checkKeywords($words){
$words_arr= array_unique($words);
$this->startTrans();
try{
foreach ($words_arr as $item){
if(!empty($item)){
if (strpos($item, '@') === 0) {
$key_name = substr($item, 1);
$indist=$this->where(['name'=>$key_name])->getField('id');
} else {
$indist=$item;
}
if(empty($indist)){
$r=$this->createAdd(['name'=>$key_name]);
if($r===false){
$this->error=$key_name.'添加失败';
return false;
}else{
$r_id[]=$r;
}
}else{
$r_id[]=$indist;
}
}
}
$this->commit();
return $r_id;
} catch (\Think\Exception $ex) {
$this->rollback();
$this->error = $ex->getMessage();
return false;
}
}
}