AicsKnowledgeBase_client/AicsKnowledgeBase/qml/page/SearchPage.qml

204 lines
6.0 KiB
QML

import QtQuick
import QtQuick.Layouts
import QtQuick.Window
import QtQuick.Controls
import QtQuick.Controls.Basic
import FluentUI
import "qrc:///AicsKnowledgeBase/qml/global"
import "qrc:///AicsKnowledgeBase/qml/component"
FluArea {
property string url: ''
backgroundColor: "#f9f9f9"
Layout.fillHeight: true
Layout.fillWidth: true
Layout.topMargin: 20
paddings: 10
// FluText {
// Layout.topMargin: 20
// text: "Search"
// }
/*
按标题,内容搜索
*/
ColumnLayout{
width: parent.width
RowLayout{
width:parent.width
// FluDropDownButton{
// id:select_model
// Layout.alignment: Qt.AlignLeft
// text:"标题"
// items:[
// FluMenuItem{
// text:"标题"
// onClicked: {
// select_model.text = text
// }
// },
// FluMenuItem{
// text:"内容"
// onClicked: {
// select_model.text = text
// }
// },
// FluMenuItem{
// text:"标题及内容"
// onClicked: {
// select_model.text = text
// }
// }
// ]
// }
FluTextBox{
placeholderText:"对标题进行搜索……"
Layout.fillWidth: true
}
FluIconButton{
Layout.alignment: Qt.AlignRight
iconSource:FluentIcons.Search
onClicked:{
var allTags = inputTags.getAllTags(tags.tagList)
var allTagId =[]
console.log(allTags)
for (var i = 0; i < allTags.length; i++) {
var url = "?name="
url = url + allTags[i]
console.log(url)
Request.get(url,
function(result, data){
allTagId.push()
}
)
}
}
}
}
FluCheckBox{
id:searchTitleAndContent
text:"同时搜索简介和内容"
}
//按文件类型
RowLayout{
id:selectFormat
width:parent.width
FluText{
Layout.alignment: Qt.AlignLeft
text:"类型: "
}
FluCheckBox{
id:selectAllFormat
text:"all"
Component.onCompleted:{
clicked()
}
onClicked:{
selectVideo.checked=true
selectDoc.checked=true
selectAudio.checked=true
}
}
FluCheckBox{
id:selectVideo
text:"Video"
onClicked:{
selectFormat.setAllStatus()
}
}
FluCheckBox{
id:selectDoc
text:"Doc"
onClicked:{
selectFormat.setAllStatus()
}
}
FluCheckBox{
id:selectAudio
text:"Audio"
onClicked:{
selectFormat.setAllStatus()
}
}
function setAllStatus() {
selectAllFormat.checked = selectVideo.checked && selectDoc.checked && selectAudio.checked
}
}
RowLayout{
id:inputTags
width:parent.width
height: 32
FluText{
Layout.alignment: Qt.AlignLeft
text:"标签: "
}
Tag{
id:tags
width: 290
}
function getAllTags(tagList){
var allTags=[];
for (var i = 0; i < tagList.count; i++) {
var item = tagList.get(i);
allTags.push(item.tag)
}
return allTags
//console.log(allTags)
}
}
FluArea {
backgroundColor: "#f9f9f9"
border.width: 0
width: parent.width
height: 500
FileList {
disableHeader: true
dataModel: ListModel {
ListElement {
uuid: "0"
title: "File 1"
isDir: true
brief: "This is a test file"
type: "FOLDER"
}
ListElement {
uuid: "2"
title: "File 2"
isDir: false
brief: "This is a test file"
size: 500
type: "WORD"
date: "2020-09-09"
pageView: 100
stars: 10
}
ListElement {
uuid: "3"
title: "File 3"
isDir: false
brief: "This is a test file"
type: "PPT"
date: "2020-09-09"
pageView: 100
size: 10200000022
stars: 10
}
}
}
}
}
}