|
|
@@ -4,16 +4,18 @@
|
|
|
namespace App\Http\Controllers;
|
|
|
|
|
|
use Illuminate\Support\Str;
|
|
|
-use App\Http\Api\AuthApi;
|
|
|
+use Illuminate\Support\Facades\Http;
|
|
|
+use Illuminate\Support\Facades\Log;
|
|
|
+use Illuminate\Http\Request;
|
|
|
+
|
|
|
use App\Models\SentPr;
|
|
|
use App\Models\Channel;
|
|
|
use App\Models\PaliSentence;
|
|
|
use App\Models\Sentence;
|
|
|
+use App\Models\Notification;
|
|
|
use App\Http\Resources\SentPrResource;
|
|
|
-use Illuminate\Http\Request;
|
|
|
-use Illuminate\Support\Facades\Http;
|
|
|
-use Illuminate\Support\Facades\Log;
|
|
|
use App\Http\Api\Mq;
|
|
|
+use App\Http\Api\AuthApi;
|
|
|
|
|
|
class SentPrController extends Controller
|
|
|
{
|
|
|
@@ -33,12 +35,26 @@ class SentPrController extends Controller
|
|
|
->where('word_end',$request->get('end'))
|
|
|
->where('channel_uid',$request->get('channel'));
|
|
|
$all_count = $table->count();
|
|
|
- $chapters = $table->orderBy('created_at','desc')->get();
|
|
|
+ $result = $table->orderBy('created_at','desc')->get();
|
|
|
|
|
|
break;
|
|
|
}
|
|
|
- if($chapters){
|
|
|
- return $this->ok(["rows"=>SentPrResource::collection($chapters),"count"=>$all_count]);
|
|
|
+ if($result){
|
|
|
+ //修改notification 已读状态
|
|
|
+ $user = AuthApi::current($request);
|
|
|
+ if($user){
|
|
|
+ $id=array();
|
|
|
+ foreach ($result as $key => $row) {
|
|
|
+ $id[] = $row->uid;
|
|
|
+ }
|
|
|
+ Notification::whereIn('res_id',$id)
|
|
|
+ ->where('to',$user['user_uid'])
|
|
|
+ ->update(['status'=>'read']);
|
|
|
+ }
|
|
|
+ return $this->ok([
|
|
|
+ "rows"=>SentPrResource::collection($result),
|
|
|
+ "count"=>$all_count
|
|
|
+ ]);
|
|
|
}else{
|
|
|
return $this->error("no data");
|
|
|
}
|
|
|
@@ -136,88 +152,8 @@ class SentPrController extends Controller
|
|
|
Mq::publish('suggestion',['data'=>new SentPrResource($new),
|
|
|
'token'=>AuthApi::getToken($request)]);
|
|
|
|
|
|
- $robotMessageOk=false;
|
|
|
+ $robotMessageOk=true;
|
|
|
$webHookMessage="";
|
|
|
- if(app()->isLocal()==false)
|
|
|
- {
|
|
|
- /*
|
|
|
- 初译:e5bc5c97-a6fb-4ccb-b7df-be6dcfee9c43
|
|
|
- 模版:#用户名 就“##该句子巴利前20字符##”提出了这样的修改建议:“##PR内容前20字##”,欢迎大家[点击链接](句子/段落链接)前往查看并讨论。
|
|
|
-
|
|
|
- 问题集:8622ad73-deef-4525-8e8e-ba3f1462724e
|
|
|
- 模版:#用户名 就 “##该句子巴利前20字符##”有这样的疑问:“##PR内容前20字##”,欢迎大家[点击链接](句子/段落链接)参与讨论。
|
|
|
-
|
|
|
- 初步答疑:5ab653d7-1ae3-40b0-ae07-c3d530a2a8f8
|
|
|
- 模版:#用户名 就“##该句子巴利前20字符##”中的问题做了这样的回复:“##PR内容前20字##”,欢迎大家[点击链接](句子/段落链接)前往查看并讨论。
|
|
|
-
|
|
|
- 机器人地址:https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=25dbd74f-c89c-40e5-8cbc-48b1ef7710b8
|
|
|
-
|
|
|
- 项目范围:
|
|
|
- book65 par:829-1306
|
|
|
- book67 par:759-1152
|
|
|
- */
|
|
|
-
|
|
|
- //if(($data['book']==65 && $data['para']>=829 && $data['para']<=1306) || ($data['book']== 67 && $data['para'] >= 759 && $data['para'] <= 1152)){
|
|
|
- $username = 'nickname';
|
|
|
- $palitext = PaliSentence::where('book',$data['book'])
|
|
|
- ->where('paragraph',$data['para'])
|
|
|
- ->where('word_begin',$data['begin'])
|
|
|
- ->where('word_end',$data['end'])
|
|
|
- ->value('text');
|
|
|
- $sent_num = "{$data['book']}-{$data['para']}-{$data['begin']}-{$data['end']}";
|
|
|
- $palitext = mb_substr($palitext,0,20,"UTF-8");
|
|
|
- $prtext = mb_substr($data['text'],0,140,"UTF-8");
|
|
|
- $link = "https://www-hk.wikipali.org/app/article/index.php?view=para&book={$data['book']}&par={$data['para']}&begin={$data['begin']}&end={$data['end']}&channel={$data['channel']}&mode=edit";
|
|
|
- switch ($data['channel']) {
|
|
|
- //测试
|
|
|
- //case '3b0cb0aa-ea88-4ce5-b67d-00a3e76220cc':
|
|
|
- //正式
|
|
|
- case 'e5bc5c97-a6fb-4ccb-b7df-be6dcfee9c43':
|
|
|
- $strMessage = "{$username} 就文句`{$palitext}`提出了修改建议:
|
|
|
- >内容摘要:<font color=\"comment\">{$prtext}</font>,\n
|
|
|
- >句子编号:<font color=\"info\">{$sent_num}</font>\n
|
|
|
- 欢迎大家[点击链接]({$link}&channel=e5bc5c97-a6fb-4ccb-b7df-be6dcfee9c43,8622ad73-deef-4525-8e8e-ba3f1462724e,5ab653d7-1ae3-40b0-ae07-c3d530a2a8f8)查看并讨论。";
|
|
|
- break;
|
|
|
- case '8622ad73-deef-4525-8e8e-ba3f1462724e':
|
|
|
- $strMessage = "{$username} 就文句`{$palitext}`有疑问:\n
|
|
|
- >内容摘要:<font color=\"comment\">{$prtext}</font>,\n
|
|
|
- >句子编号:<font color=\"info\">{$sent_num}</font>\n
|
|
|
- 欢迎大家[点击链接]({$link}&channel=8622ad73-deef-4525-8e8e-ba3f1462724e,5ab653d7-1ae3-40b0-ae07-c3d530a2a8f8)查看并讨论。";
|
|
|
- break;
|
|
|
- case '5ab653d7-1ae3-40b0-ae07-c3d530a2a8f8':
|
|
|
- $strMessage = "{$username} 就文句`{$palitext}`中的疑问有这样的回复:\n
|
|
|
- >内容摘要:<font color=\"comment\">{$prtext}</font>,\n
|
|
|
- >句子编号:<font color=\"info\">{$sent_num}</font>\n
|
|
|
- 欢迎大家[点击链接]({$link}&channel=8622ad73-deef-4525-8e8e-ba3f1462724e,5ab653d7-1ae3-40b0-ae07-c3d530a2a8f8)查看并讨论。";
|
|
|
- break;
|
|
|
- default:
|
|
|
- $strMessage = "";
|
|
|
- break;
|
|
|
- }
|
|
|
- $url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=25dbd74f-c89c-40e5-8cbc-48b1ef7710b8";
|
|
|
- $param = [
|
|
|
- "msgtype"=>"markdown",
|
|
|
- "markdown"=> [
|
|
|
- "content"=> $strMessage,
|
|
|
- ],
|
|
|
- ];
|
|
|
- if(!empty($strMessage)){
|
|
|
- $response = Http::post($url, $param);
|
|
|
- if($response->successful()){
|
|
|
- $robotMessageOk = true;
|
|
|
- $webHookMessage = "消息发送成功";
|
|
|
- }else{
|
|
|
- $webHookMessage = "消息发送失败";
|
|
|
- $robotMessageOk = false;
|
|
|
- }
|
|
|
- }else{
|
|
|
- $webHookMessage = "channel不符";
|
|
|
- $robotMessageOk = false;
|
|
|
- }
|
|
|
- //}else{
|
|
|
- // $webHookMessage = "不在段落范围内";
|
|
|
- //}
|
|
|
- }
|
|
|
|
|
|
#同时返回此句子pr数量
|
|
|
$info['book_id'] = $data['book'];
|
|
|
@@ -238,17 +174,26 @@ class SentPrController extends Controller
|
|
|
|
|
|
/**
|
|
|
* Display the specified resource.
|
|
|
- *
|
|
|
- * @param \App\Models\SentPr $sentPr
|
|
|
+ * @param \Illuminate\Http\Request $request
|
|
|
+ * @param string $uid
|
|
|
* @return \Illuminate\Http\Response
|
|
|
*/
|
|
|
- public function show(string $uid)
|
|
|
+ public function show(Request $request,string $uid)
|
|
|
{
|
|
|
//
|
|
|
+
|
|
|
$pr = SentPr::where('uid',$uid)->first();
|
|
|
if(!$pr){
|
|
|
return $this->error('no data',404,404);
|
|
|
}
|
|
|
+ //修改notification 已读状态
|
|
|
+ $user = AuthApi::current($request);
|
|
|
+ if($user){
|
|
|
+ Notification::where('res_id',$uid)
|
|
|
+ ->where('to',$user['user_uid'])
|
|
|
+ ->update(['status'=>'read']);
|
|
|
+ }
|
|
|
+
|
|
|
return $this->ok(new SentPrResource($pr));
|
|
|
}
|
|
|
|