attakhata->tika
*算法:
*在原始的html 文件里 如 s0404m1.mul.htm 有
* 在 so404a.att.htm 里也有
* 这说明这两个段落是关联段落,para2是段落编号 an8是书名只要书名一样,段落编号一样。
* 两个就是关联段落
*
* 表名:cs6_para
* 所以数据库结构是
* book 书号 1-217
* para 段落号
* bookid
* cspara 上述段落号
* book_name 上述书名
*
* 输入 book para
* 查询书名和段落号
* 输入这个书名和段落号
* 查询有多少段落有一样的书名和段落号
* 有些book 里面有两本书。所以又加了一个bookid
* 每个bookid代表一本真正的书。所以bookid 要比 book 多
* bookid 是为了输出书名用的。不是为了查询相关段落
*
* 数据要求:
* 制作时包含全部段落。做好后把没有相关段落的段落删掉??
*
*/
namespace App\Http\Controllers;
use App\Models\RelatedParagraph;
use Illuminate\Http\Request;
use App\Http\Resources\RelatedParagraphResource;
class RelatedParagraphController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index(Request $request)
{
//
$first = RelatedParagraph::where('book',$request->get('book'))
->where('para',$request->get('para'))
->where('cs_para','>',0)
->first();
$result = RelatedParagraph::where('book_name',$first->book_name)
->where('cs_para',$first->cs_para)
->orderBy('book_id')
->orderBy('para')
->get();
$books=[];
foreach ($result as $value) {
# 把段落整合成书。有几本书就有几条输出纪录
if(!isset($books[$value->book_id])){
$books[$value->book_id]['book'] = $value->book;
$books[$value->book_id]['book_id'] = $value->book_id;
$books[$value->book_id]['cs6_para'] = $value->cs_para;
}
$books[$value->book_id]['para'][]=$value->para;
}
return $this->ok(["rows"=>RelatedParagraphResource::collection($books),"count"=>count($books)]);
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*
* @param \App\Models\RelatedParagraph $relatedParagraph
* @return \Illuminate\Http\Response
*/
public function show(RelatedParagraph $relatedParagraph)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param \App\Models\RelatedParagraph $relatedParagraph
* @return \Illuminate\Http\Response
*/
public function update(Request $request, RelatedParagraph $relatedParagraph)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param \App\Models\RelatedParagraph $relatedParagraph
* @return \Illuminate\Http\Response
*/
public function destroy(RelatedParagraph $relatedParagraph)
{
//
}
}