|
@@ -167,6 +167,7 @@ class CollectorController extends AbstractController
|
|
|
*/
|
|
|
public function addRule()
|
|
|
{
|
|
|
+
|
|
|
$requireData = $this->request->all();
|
|
|
$validator = $this->validationFactory->make(
|
|
|
$requireData,
|
|
@@ -185,7 +186,7 @@ class CollectorController extends AbstractController
|
|
|
$errorMessage = $validator->errors()->first();
|
|
|
return Result::error($errorMessage);
|
|
|
}
|
|
|
- switch ($requireData['type']){
|
|
|
+ switch($requireData['type']){
|
|
|
case 1:
|
|
|
$validator = $this->validationFactory->make(
|
|
|
$requireData,
|
|
@@ -203,12 +204,19 @@ class CollectorController extends AbstractController
|
|
|
'second_start.required' => '第2页网址开头不能为空',
|
|
|
'second_num.required' => '第2页代码页数不能为空',
|
|
|
'second_end.required' => '第2页网址结束字符串不能为空',
|
|
|
+ 'end_pagenum.required' => '列表页结束页码不能为空',
|
|
|
'start.required' => '开始代码不能为空',
|
|
|
'title.required' => '标题标签类名不能为空',
|
|
|
'content.required' => '内容标签类名不能为空',
|
|
|
]
|
|
|
- );
|
|
|
- // var_dump("============1============");
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ // var_dump("============1============");
|
|
|
+
|
|
|
+ break;
|
|
|
case 2:
|
|
|
$validator = $this->validationFactory->make(
|
|
|
$requireData,
|
|
@@ -226,26 +234,78 @@ class CollectorController extends AbstractController
|
|
|
'title.required' => '标题标签不能为空',
|
|
|
'content.required' => '内容标签不能为空'
|
|
|
]
|
|
|
- );
|
|
|
- // var_dump("============2============";
|
|
|
+ );
|
|
|
+ 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['source']) && $requireData['type'] != 3){
|
|
|
$validator = $this->validationFactory->make(
|
|
|
$requireData,
|
|
|
[
|
|
|
- 'rule' => 'required'
|
|
|
+ 'source' => 'required'
|
|
|
],
|
|
|
[
|
|
|
- 'rule.required' => '采集规则不能为空'
|
|
|
+ 'source.required' => '文章来源不能为空'
|
|
|
]
|
|
|
- );
|
|
|
- // var_dump("============3============");
|
|
|
- break;
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
}
|
|
|
- // return Result::success($requireData);
|
|
|
- if ($validator->fails()) {
|
|
|
- $errorMessage = $validator->errors()->first();
|
|
|
- return Result::error($errorMessage);
|
|
|
+ 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);
|
|
|
+ }
|
|
|
}
|
|
|
$result = $this->collectorServiceClient->addRule($requireData);
|
|
|
if ($result['code'] != ErrorCode::SUCCESS) {
|
|
@@ -295,7 +355,7 @@ class CollectorController extends AbstractController
|
|
|
return Result::success($result['data']);
|
|
|
}
|
|
|
/**
|
|
|
- * 修改规则任务待开发
|
|
|
+ * 获取某个规则任务
|
|
|
* @return array
|
|
|
*/
|
|
|
public function getOneRule()
|
|
@@ -321,46 +381,152 @@ class CollectorController extends AbstractController
|
|
|
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',
|
|
|
- 'first_url' => 'required',
|
|
|
- 'second_start' => 'required',
|
|
|
- 'second_num' => 'required',
|
|
|
- 'second_end' => 'required',
|
|
|
- 'start' => 'required',
|
|
|
- 'title' => 'required',
|
|
|
- 'content' => 'required',
|
|
|
- 'source' => 'required',
|
|
|
- 'writer_class' => 'required',
|
|
|
- 'writer' => 'required'
|
|
|
+ 'type' => 'required'
|
|
|
],
|
|
|
[
|
|
|
- 'id.required' => '任务规则id不能为空',
|
|
|
'name.required' => '任务规则名称不能为空',
|
|
|
- 'first_url.required' => '第2页网址开头不能为空',
|
|
|
- 'second_num.required' => '第2页代码页数不能为空',
|
|
|
- 'second_end.required' => '第2页网址结束字符串不能为空',
|
|
|
- 'start.required' => '开始代码不能为空',
|
|
|
- 'title.required' => '标题标签类名不能为空',
|
|
|
- 'content.required' => '内容标签类名不能为空',
|
|
|
- 'source.required' => '来源标签类名不能为空',
|
|
|
- 'writer_class.required' => '作者标签类名不能为空',
|
|
|
- 'writer.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',
|
|
|
+ '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' => '开始代码不能为空',
|
|
|
+ '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['source']) && $requireData['type'] != 3){
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'source' => 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'source.required' => '文章来源不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ 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,[]);
|