|
@@ -11,7 +11,7 @@ use App\Tools\Result;
|
|
|
use Hyperf\Validation\Contract\ValidatorFactoryInterface;
|
|
|
use App\Constants\ErrorCode;
|
|
|
use Hyperf\Context\Context;
|
|
|
-use App\Service\GatherQueueService;
|
|
|
+//use App\Service\GatherQueueService;
|
|
|
use App\Service\ImportQueueService;
|
|
|
/**
|
|
|
* ClassCollectorController
|
|
@@ -22,8 +22,8 @@ class CollectorController extends AbstractController
|
|
|
{
|
|
|
#[Inject]
|
|
|
protected ValidatorFactoryInterface $validationFactory;
|
|
|
- #[Inject]
|
|
|
- protected GatherQueueService $Gservice;
|
|
|
+// #[Inject]
|
|
|
+// protected GatherQueueService $Gservice;
|
|
|
#[Inject]
|
|
|
protected ImportQueueService $Iservice;
|
|
|
|
|
@@ -65,7 +65,7 @@ class CollectorController extends AbstractController
|
|
|
return Result::success($result['data']);
|
|
|
}
|
|
|
/**
|
|
|
- * 获取网站
|
|
|
+ * 获取及搜索网站
|
|
|
* @return array
|
|
|
*/
|
|
|
public function getWeb()
|
|
@@ -104,10 +104,456 @@ class CollectorController extends AbstractController
|
|
|
}
|
|
|
return Result::success($result['data']);
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 修改网站
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function upWeb()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'name'=> 'required',
|
|
|
+ 'url'=> 'required',
|
|
|
+ 'id' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name.required' => '网站名称不能为空',
|
|
|
+ 'url.required' => '网站地址不能为空',
|
|
|
+ 'id.required' => '网站id不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->upWeb($requireData);
|
|
|
+ if ($result['code'] != ErrorCode::SUCCESS) {
|
|
|
+ return Result::error($result['message'],0,[]);
|
|
|
+ }
|
|
|
+ return Result::success($result['data']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 删除网站
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function delWeb()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'id' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'id.required' => '网站id不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->delWeb($requireData);
|
|
|
+ if ($result['code'] != ErrorCode::SUCCESS) {
|
|
|
+ return Result::error($result['message'],0,[]);
|
|
|
+ }
|
|
|
+ return Result::success($result['data']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 添加规则任务
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+
|
|
|
+ public function addRule()
|
|
|
+ {
|
|
|
+
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'name' => 'required',
|
|
|
+ 'web_id' => 'required',
|
|
|
+ 'type' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name.required' => '任务规则名称不能为空',
|
|
|
+ 'web_id.required' => '网站id不能为空',
|
|
|
+ 'type.required' => '网站类型不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ switch($requireData['type']){
|
|
|
+ case 1:
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'first_url' => 'required',
|
|
|
+ 'second_start' => 'required',
|
|
|
+ 'second_num' => 'required',
|
|
|
+ 'second_end' => 'required',
|
|
|
+ 'end_pagenum' => 'required',
|
|
|
+ 'start' => 'required',
|
|
|
+ 'con_url' => 'required',
|
|
|
+ 'title' => 'required',
|
|
|
+ 'content' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'first_url.required' => '第1页网址不能为空',
|
|
|
+ 'second_start.required' => '第2页网址开头不能为空',
|
|
|
+ 'second_num.required' => '第2页代码页数不能为空',
|
|
|
+ 'second_end.required' => '第2页网址结束字符串不能为空',
|
|
|
+ 'end_pagenum.required' => '列表页结束页码不能为空',
|
|
|
+ 'start.required' => '开始代码不能为空',
|
|
|
+ 'con_url.required' => '详情页前缀地址不能为空',
|
|
|
+ 'title.required' => '标题标签类名不能为空',
|
|
|
+ 'content.required' => '内容标签类名不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'first_url' => 'required',
|
|
|
+ 'parameter' => 'required',
|
|
|
+ 'start' => 'required',
|
|
|
+ 'title' => 'required',
|
|
|
+ 'content' => 'required',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'first_url.required' => '开始采集地址不能为空',
|
|
|
+ 'parameter.required' => '接口参数不能为空',
|
|
|
+ 'start.required' => '列表标签不能为空',
|
|
|
+ 'title.required' => '标题标签不能为空',
|
|
|
+ 'content.required' => '内容标签不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ // var_dump("============2============");
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'diy_rule' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'diy_rule.required' => '采集规则不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ // var_dump("============3============");
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ return Result::error('请输入正确的网站类型');
|
|
|
+ break;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if(isset($requireData['writer_class']) && $requireData['type'] == 2){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'writer_class' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'writer_class.required' => '作者标签不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if(isset($requireData['writer']) && $requireData['type'] != 3){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'writer' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'writer.required' => '文章作者不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // return Result::success($requireData);
|
|
|
+ $result = $this->collectorServiceClient->addRule($requireData);
|
|
|
+ if ($result['code'] != ErrorCode::SUCCESS) {
|
|
|
+ return Result::error($result['message'],0,[]);
|
|
|
+ }
|
|
|
+ return Result::success($result['data']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取并搜索任务规则
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function getRule()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'pageSize' => 'required',
|
|
|
+ 'page' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'pageSize.required' => '每页显示数量不能为空',
|
|
|
+ 'page.required' => '第几页不能为空',
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if(isset($requireData['keyWord'])){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'keyWord' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'keyWord.required' => '搜索词不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ }
|
|
|
|
|
|
+ if(isset($requireData['web_id'])){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'web_id' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'web_id.required' => '网站id不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->getRule($requireData);
|
|
|
+ if ($result['code'] != ErrorCode::SUCCESS) {
|
|
|
+ return Result::error($result['message'],0,[]);
|
|
|
+ }
|
|
|
+ return Result::success($result['data']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 获取某个规则任务
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function getOneRule()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'id' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'id.required' => '任务规则id不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->getOneRule($requireData);
|
|
|
+ if ($result['code'] != ErrorCode::SUCCESS) {
|
|
|
+ return Result::error($result['message'],0,[]);
|
|
|
+ }
|
|
|
+ return Result::success($result['data']);
|
|
|
+ }
|
|
|
/**
|
|
|
- * 采集动作
|
|
|
+ * 修改规则任务
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function upRule()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ // var_dump("&&&&:",$requireData);
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'id' => 'required',
|
|
|
+ 'name' => 'required',
|
|
|
+ 'type' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name.required' => '任务规则名称不能为空',
|
|
|
+ 'id.required' => '任务规则id不能为空',
|
|
|
+ 'type.required' => '网站类型不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ switch($requireData['type']){
|
|
|
+ case 1:
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'first_url' => 'required',
|
|
|
+ 'second_start' => 'required',
|
|
|
+ 'second_num' => 'required',
|
|
|
+ 'second_end' => 'required',
|
|
|
+ 'start' => 'required',
|
|
|
+ 'con_url' => 'required',
|
|
|
+ 'title' => 'required',
|
|
|
+ 'content' => 'required',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'first_url.required' => '第1页网址不能为空',
|
|
|
+ 'second_start.required' => '第2页网址开头不能为空',
|
|
|
+ 'second_num.required' => '第2页代码页数不能为空',
|
|
|
+ 'second_end.required' => '第2页网址结束字符串不能为空',
|
|
|
+ 'end_pagenum.required' => '列表页结束页码不能为空',
|
|
|
+ 'start.required' => '开始代码不能为空',
|
|
|
+ 'con_url.required' => '详情页前缀地址不能为空',
|
|
|
+ 'title.required' => '标题标签类名不能为空',
|
|
|
+ 'content.required' => '内容标签类名不能为空',
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ // var_dump("============1============");
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'first_url' => 'required',
|
|
|
+ 'parameter' => 'required',
|
|
|
+ 'start' => 'required',
|
|
|
+ 'title' => 'required',
|
|
|
+ 'content' => 'required',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'first_url.required' => '开始采集地址不能为空',
|
|
|
+ 'parameter.required' => '接口参数不能为空',
|
|
|
+ 'start.required' => '列表标签不能为空',
|
|
|
+ 'title.required' => '标题标签不能为空',
|
|
|
+ 'content.required' => '内容标签不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ // var_dump("============2============");
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'diy_rule' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'diy_rule.required' => '采集规则不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ // var_dump("============3============");
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ return Result::error('请输入正确的网站类型');
|
|
|
+ break;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if(isset($requireData['writer_class']) && $requireData['type'] != 3){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'writer_class' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'writer_class.required' => '作者标签不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(isset($requireData['writer']) && $requireData['type'] != 3){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'writer' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'writer.required' => '文章作者不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // var_dump("++++++++++",$requireData);
|
|
|
+ $result = $this->collectorServiceClient->upRule($requireData);
|
|
|
+ if ($result['code'] != ErrorCode::SUCCESS) {
|
|
|
+ return Result::error($result['message'],0,[]);
|
|
|
+ }
|
|
|
+ return Result::success($result['data']);
|
|
|
+
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 删除任务规则
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function delRule()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'rule_id' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'rule_id.required' => '任务规则id不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->delRule($requireData);
|
|
|
+ if ($result['code'] != ErrorCode::SUCCESS) {
|
|
|
+ return Result::error($result['message'],0,[]);
|
|
|
+ }
|
|
|
+ return Result::success($result['data']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 开始采集
|
|
|
* @return array
|
|
|
*/
|
|
|
public function sendCrawler()
|
|
@@ -131,8 +577,9 @@ class CollectorController extends AbstractController
|
|
|
}
|
|
|
// $b = $this->Iservice->push($data,1);
|
|
|
$data['id'] = $requireData['id'];
|
|
|
- $result = $this->Gservice->push($data,3);
|
|
|
- return Result::success($result);
|
|
|
+ var_dump("发送数据:",$data);
|
|
|
+ $result = $this->collectorServiceClient->sendCrawler($data);
|
|
|
+ return $result['code']==200?Result::success($result['data']):Result::error('采集失败');
|
|
|
|
|
|
}
|
|
|
|
|
@@ -141,12 +588,256 @@ class CollectorController extends AbstractController
|
|
|
* @param $data
|
|
|
* @return array
|
|
|
*/
|
|
|
+
|
|
|
public function goSendCrawler($data=[])
|
|
|
{
|
|
|
var_dump("我要开始采集了!!!");
|
|
|
$this->collectorServiceClient->sendCrawler($data);
|
|
|
return Result::success([]);
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 获取并搜索资讯
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function getInfo()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'rule_id' => 'required',
|
|
|
+ 'pageSize' => 'required',
|
|
|
+ 'page' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'rule_id.required' => '规则任务id不能为空',
|
|
|
+ 'pageSize.required' => '每页显示数量不能为空',
|
|
|
+ 'page.required' => '第几页不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ if(isset($requireData['title'])){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'title' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'title.required' => '资讯题目不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(isset($requireData['source'])){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'source' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'source.required' => '资讯来源不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
|
|
|
|
|
|
+ }
|
|
|
+ if(isset($requireData['state'])){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'state' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'state.required' => '资讯状态不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->getInfo($requireData);
|
|
|
+ return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 获取某个资讯
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function getOneInfo()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'art_id' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'art_id.required' => '资讯id不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->getOneInfo($requireData);
|
|
|
+ return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ *修改资讯
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function upInfo()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'art_id' => 'required',
|
|
|
+ 'title' => 'required',
|
|
|
+ 'level' => 'required',
|
|
|
+ 'keyword' => 'required',
|
|
|
+ 'content' => 'required',
|
|
|
+ 'hits' => 'required',
|
|
|
+ 'is_original' => 'required',
|
|
|
+ 'islink' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'art_id.required' => '资讯id不能为空',
|
|
|
+ 'title.required' => '资讯标题不能为空',
|
|
|
+ 'level.required' => '推荐级别不能为空',
|
|
|
+ 'keyword.required' => '资讯关键词不能为空',
|
|
|
+ 'content.required' => '资讯内容不能为空',
|
|
|
+ 'hits.required' => '浏览量不能为空',
|
|
|
+ 'is_original.required' => '原创不能为空',
|
|
|
+ 'islink.required' => '外链不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ if($requireData['islink']==1){
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'linkurl' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'linkurl.required' => '外链地址不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if($requireData['is_original']==0){
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'fromurl' => 'required',
|
|
|
+ 'copyfrom' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'fromurl.required' => '采集来源地址不能为空',
|
|
|
+ 'copyfrom' => '采集来源不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->upInfo($requireData);
|
|
|
+ return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 删除资讯
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function delInfo()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'art_id' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'art_id.required' => '资讯id不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->delInfo($requireData);
|
|
|
+ return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 关联导航池
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function addCatid()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'rule_id' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'rule_id.required' => '任务规则id不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $result = $this->collectorServiceClient->addCatid($requireData);
|
|
|
+ return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 开始导入
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function addArt()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ if(!empty($requireData)){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'rule_id' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'rule_id.required' => '任务规则id不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $data['rule_id'] = $requireData['rule_id'];
|
|
|
+ $data['time'] = microtime();
|
|
|
+
|
|
|
+ // var_dump("=====111",$data);
|
|
|
+ $result = $this->collectorServiceClient->addArt($data);
|
|
|
+ // var_dump("=====222",$result);
|
|
|
+ return Result::success($result);
|
|
|
+ }
|
|
|
+
|
|
|
}
|