From fe85e4208e502c78e3494a460617ae8753f51341 Mon Sep 17 00:00:00 2001 From: YM <479443481@qq.com> Date: 星期五, 26 七月 2024 11:16:11 +0800 Subject: [PATCH] Merge branch 'master' of http://182.92.203.7:2001/r/TCM_CharacterLibrary --- src/pages/knowledgeBase/knowledgeBase.vue | 250 +++++++++++++++++++++++++++++--------------------- 1 files changed, 145 insertions(+), 105 deletions(-) diff --git a/src/pages/knowledgeBase/knowledgeBase.vue b/src/pages/knowledgeBase/knowledgeBase.vue index da9b5a8..2c40043 100644 --- a/src/pages/knowledgeBase/knowledgeBase.vue +++ b/src/pages/knowledgeBase/knowledgeBase.vue @@ -1,7 +1,7 @@ <template> <view> <!-- 椤堕儴 --> - <headNav idIndex="0" text="涓浗鍖诲浜虹墿鐭ヨ瘑搴�" /> + <headNav idIndex="0" text="涓浗鍘嗕唬鍖诲浜虹墿鐭ヨ瘑搴�" /> <!-- 鎼滅储 --> <view class="flex flex-center Search"> <!-- <luanqing-search class="search_bar" @onSearch="onSearch"></luanqing-search> --> @@ -15,7 +15,7 @@ class="advancedSea" @click="isAvancedClick" style="color: #244a7b; cursor: pointer" - >楂樼骇鎼滅储 鈭�</view + >楂樼骇鎼滅储 {{ isAdvancedSearch ? "鈭�" : "鈭�" }}</view > </view> <!-- 鐑棬鎼滅储 --> @@ -26,11 +26,11 @@ 鐑棬鎼滅储锛� <ul class="flex" style="margin-right: 10rpx"> <li - v-for="item in hot" - @click="hotSearchClick(item)" + v-for="(item, index) in hot" + @click="hotSearchClick(item, index)" :key="item.id" - class="cursor" - style="color: #5879a4" + :class="{ cursor: true, active: hotAciveIndex === index }" + style="color: #244a7b" > {{ item.name }} </li> @@ -77,15 +77,15 @@ :style="{ background: profession.index === item.tagId ? '#d6e3f4' : '', borderRadius: profession.index === item.tagId ? '60rpx' : '', - display: index + 1 > professionIndex ? 'none' : 'flex', + display: index + 1 > professionIndex ? 'none' : 'flex' }" v-for="(item, index) in profession.list" :key="index" style="padding: 0 20rpx; line-height: 0.3rem; height: 0.3rem" @click="handInstitCLick(item, 'a')" > - <view class="">{{ item.tagName }}</view> - <view class="">{{ item.count }}</view> + <view>{{ item.tagName }}</view> + <view>{{ item.count }}</view> </li> </ul> <view v-if="profession.list.length - 1 > 3" class="flex flex-center"> @@ -115,15 +115,15 @@ :style="{ background: dynasty.index === item.dynastyId ? '#d6e3f4' : '', borderRadius: dynasty.index === item.dynastyId ? '60rpx' : '', - display: index + 1 > dynastyIndex ? 'none' : 'flex', + display: index + 1 > dynastyIndex ? 'none' : 'flex' }" v-for="(item, index) in dynasty.list" :key="index" style="padding: 0 20rpx" @click="handInstitCLick(item, 'b')" > - <view class="">{{ item.dynastyName }}</view> - <view class="">{{ item.count }}</view> + <view>{{ item.dynastyName }}</view> + <view>{{ item.count }}</view> </li> </ul> <view v-if="dynasty.list.length - 1 > 3" class="flex flex-center"> @@ -160,7 +160,7 @@ style="padding: 0 20rpx; color: #244a7b" @click="handInstitCLick(item, 'c')" > - <view class="">{{ index + 1 + ". " + item.source }}</view> + <view>{{ index + 1 + ". " + item.source }}</view> </li> </ul> <!-- <view class="flex flex-center"> @@ -182,12 +182,25 @@ " > <view class="flex lightTop" style="width: 100%; margin: 0.1rem 0"> - <view class="" style="color: #2c2c2c">鍏眥{ total }}鏉�</view> + <view style="color: #2c2c2c">鍏眥{ total }}鏉�</view> <el-button size="small" @click="exportClick">涓嬭浇</el-button> </view> - <el-table :data="tableData" class="lightBo" style="width: 100%"> + <el-table + :data="tableData" + class="lightBo" + style="width: 100%" + empty-text="鏆傛棤鎼滅储淇℃伅" + > <el-table-column prop="id" label="搴忓彿" width="110"></el-table-column> - <el-table-column prop="personName" label="濮撳悕"></el-table-column> + <el-table-column prop="personName" label="濮撳悕"> + <template slot-scope="scope"> + <a + style="cursor: pointer; color: #027edc" + @click="gotoDetail(scope.row.id)" + >{{ scope.row.personName }}</a + > + </template> + </el-table-column> <el-table-column prop="personAlias" label="鍒悕"></el-table-column> <el-table-column prop="gender" @@ -247,14 +260,16 @@ getPList, getHotSearch, getPersonList, + getInstitutionList } from "@/api/index.js"; export default { components: { Footer1, - MyForm, + MyForm }, data() { return { + hotAciveIndex: "", // 楂樼骇鎼滅储鏄剧ず isAdvancedSearch: false, // 楂樼骇鎼滅储 @@ -264,19 +279,19 @@ type: "input", label: "濮撳悕", name: "name", - value: "", + value: "" }, { type: "input", label: "鍒悕", name: "alias", - value: "", + value: "" }, { type: "input", label: "绫嶈疮", name: "nativePlace", - value: "", + value: "" }, { type: "select", @@ -286,20 +301,20 @@ options: [ { label: "鍖诲", - value: "1", + value: "1" }, { label: "涓栧", - value: "2", - }, - ], + value: "2" + } + ] }, - { - type: "input", - label: "鑱屽畼", - name: "official", - value: "", - }, + // { + // type: "input", + // label: "鑱屽畼", + // name: "official", + // value: "" + // }, { type: "select", label: "鎬у埆", @@ -308,31 +323,31 @@ options: [ { label: "鏈寚鏄�", - value: "UNKNOWN", + value: "UNKNOWN" }, { label: "鐢�", - value: "MALE", + value: "MALE" }, { label: "濂�", - value: "WOMAN", - }, - ], + value: "WOMAN" + } + ] }, { type: "input", label: "鏃舵湡", name: "dynasty", - value: "", + value: "" }, - { - type: "input", - label: "鏈烘瀯", - name: "institution", - value: "", - }, - ], + // { + // type: "select", + // label: "鏈烘瀯", + // name: "institution", + // options: [] + // } + ] }, // 鐑棬鎼滅储 @@ -342,7 +357,7 @@ title: "鑱屼笟", index: 0, id: 0, - list: [], + list: [] }, // 鐜板湪澶氬皯鏉¤亴涓氭暟鎹� professionIndex: 4, @@ -353,7 +368,7 @@ title: "鏃舵湡", id: "", index: "", - list: [], + list: [] }, // 鐜板湪澶氬皯鏉℃椂鏈熸暟鎹� dynastyIndex: 4, @@ -362,7 +377,7 @@ title: "鏉ユ簮", index: 0, id: 0, - list: [], + list: [] }, // 琛ㄦ牸鐨勬暟缁� tableData: [], @@ -381,21 +396,61 @@ nativePlace: "", tagId: "", official: "", - genderType: "", - }, + genderType: "" + } }; }, onLoad(options) { - console.log(options.keyword); - this.onSearch({ text: options.keyword }); + if (options.isAdvancedSearch && options.isAdvancedSearch == "1") { + this.isAdvancedSearch = true; + } + if (options.official) { + if (options.official) { + this.from.from[ + this.from.from.findIndex((item) => item.name == "official") + ].value = options.official; + } + + const result = this.from.from.reduce((obj, item) => { + obj[item.name] = item.value; + return obj; + }, {}); + // 鎻愪氦閫昏緫 + this.onSubmit(result); + } else { + if (options.dynasty) { + this.dynasty.index = Number(options.dynasty); + this.dynasty.id = Number(options.dynasty); + } + this.onSearch({ text: options.keyword }); + } }, mounted() { this.getStatistics(); + this.institutionList(); }, methods: { + institutionList() { + getInstitutionList().then((res) => { + this.$set( + this.from.from[ + this.from.from.findIndex((item) => item.name == "institution") + ], + "options", + res.list.map((item) => { + return { + label: item.name, + value: item.id + }; + }) + ); + + console.log(this.from.from); + }); + }, //閲嶇疆鎼滅储缁撴灉 resetForm() { - this.tableData = []; + this.onSearch(""); }, // ExportJsonExcel瀹炰緥 Ture() { @@ -407,9 +462,8 @@ // 涓嬭浇鎸夐挳 async exportClick() { const dataList = this.tableData; - console.log(this.keywords, "keywords"); let Obj = { - keywords: "妤�", //鎼滅储妗嗘绱� + keywords: "", //鎼滅储妗嗘绱� // keywords: this.keywords, //鎼滅储妗嗘绱� name: this.submitData.name, //濮撳悕 alias: this.submitData.alias, //鍒悕 @@ -422,14 +476,11 @@ institution: "", //鏈烘瀯 bookId: null, //鏉ユ簮id page: 1, - pageSize: 1, + pageSize: 1 }; - console.log(Obj, "Obj"); // // 鎼滅储 await getPDownload(Obj).then((res) => { - console.log(res, "exportClick"); // if (res.success) { - // console.log(res, "鎼滅储鎺ュ彛"); // this.tableData = res.list; // // 鎬绘暟閲� // this.total = res.npage.totalCount; @@ -448,7 +499,7 @@ 鍗掑勾: dataList[i].deathYear, 绫嶈疮: dataList[i].nativePlace, 绀句細韬唤: dataList[i].socialDistinction, - 瀹樿亴: dataList[i].official, + 瀹樿亴: dataList[i].official }; dataTable.push(obj); // 璁剧疆excel姣忓垪鑾峰彇鐨勬暟鎹簮 @@ -474,7 +525,7 @@ "鍗掑勾", "绫嶈疮", "绀句細韬唤", - "瀹樿亴", + "瀹樿亴" ], // excel鏂囦欢鍒楀悕 sheetFilter: [ @@ -488,28 +539,26 @@ "鍗掑勾", "绫嶈疮", "绀句細韬唤", - "瀹樿亴", - ], + "瀹樿亴" + ] // columnWidths: ['10', '10', '20'] //excel鍒楀搴﹁缃� - }, + } ]; this.Ture(); }, // 鎺ュ彛 - async getStatistics() { + getStatistics() { // 鐑棬鎼滅储 - await getHotSearch().then((res) => { - console.log(res, "鐑棬鎼滅储"); + getHotSearch().then((res) => { this.hot = Object.keys(res.object).map((key) => { return { id: parseInt(key), - name: res.object[key], + name: res.object[key] }; }); }); // 鍙充晶鑱屼笟銆佹椂鏈熴�佹潵婧愮殑鏁版嵁 - await getPDataStatistics().then((res) => { - console.log(res, "鎺ュ彛鎴愬姛sdsdfsdsfs"); + getPDataStatistics().then((res) => { let totalCount1 = res.object.occupationStatistic.details.reduce( (total, item) => total + item.count, 0 @@ -521,7 +570,7 @@ // 鑱屼笟 this.profession.list = [ { count: totalCount1, tagName: "鍏ㄩ儴", tagId: 0 }, - ...res.object.occupationStatistic.details, + ...res.object.occupationStatistic.details ]; // 楂樼骇鎼滅储閲岄潰鐨勮亴涓�-------------------------------------------------- // 鎵惧埌鑱屼笟瀛楁鍦� from 瀵硅薄涓殑绱㈠紩 @@ -533,7 +582,7 @@ // 灏� profession.list 杞崲涓� options 鏍煎紡 const options = this.profession.list.map((item) => ({ label: item.tagName, - value: item.tagId.toString(), // 灏� id 杞崲涓哄瓧绗︿覆锛岀‘淇濅笌 value 绫诲瀷涓�鑷� + value: item.tagId.toString() // 灏� id 杞崲涓哄瓧绗︿覆锛岀‘淇濅笌 value 绫诲瀷涓�鑷� })); // 鏇存柊鑱屼笟瀛楁鐨� options 灞炴�� @@ -544,17 +593,21 @@ // 鏃舵湡 this.dynasty.list = [ { count: totalCount2, dynastyName: "鍏ㄩ儴", dynastyId: "" }, - ...res.object.dynastyStatistic.details, + ...res.object.dynastyStatistic.details ]; // 鏉ユ簮 this.source.list = res.object.sourceStatistic.details; this.source.index = this.source.list[0].bookId; }); }, + gotoDetail(id) { + uni.navigateTo({ + url: "/pages/character/detail?id=" + id + }); + }, // 鐑棬鎼滅储 - hotSearchClick(item) { - this.onSearch({ text: item.name }); - console.log(item, "鐑棬鎼滅储"); + hotSearchClick(item, index) { + this.onSearch({ text: item.name }, index); }, // 宸︿晶鐨勬満鏋勭粺璁$瓑绛夋寜閽� handInstitCLick(item, name) { @@ -570,16 +623,12 @@ this.dynasty.index = item.dynastyId; this.dynasty.id = item.dynastyId; this.CurrentPage = 1; - console.log(item); } else if (name == "c") { this.source.index = item.bookId; this.source.id = item.bookId; this.CurrentPage = 1; - console.log("鏉ユ簮"); } this.onSearch(""); - - console.log(item, name); }, isAvancedClick() { this.isAdvancedSearch = !this.isAdvancedSearch; @@ -594,7 +643,6 @@ }, // 楂樼骇鎼滅储 async onSubmit(val) { - console.log(val); this.profession.index = Number(val.tagId); this.profession.id = Number(val.tagId); const currentDynasty = this.dynasty.list.find( @@ -619,23 +667,26 @@ institution: val.institution, //鏈烘瀯 bookId: null, //鏉ユ簮id page: this.CurrentPage, - pageSize: this.pageSize, + pageSize: this.pageSize }; // // 鎼滅储 await getPersonList(Obj).then((res) => { - console.log(res); if (res.success) { - console.log(res, "鎼滅储鎺ュ彛"); this.tableData = res.list; // 鎬绘暟閲� this.total = res.npage.totalCount; } }); - console.log(val); }, // 鍩虹鎼滅储 - async onSearch(val) { + async onSearch(val, index) { this.keywords = val.text; + if (index !== undefined) { + this.keywords = ""; + this.hotAciveIndex = index; + } else { + this.hotAciveIndex = ""; + } let Obj = { keywords: val.text, //鎼滅储妗嗘绱� name: "", //濮撳悕 @@ -649,40 +700,31 @@ institution: "", //鏈烘瀯 bookId: this.source.id, //鏉ユ簮id page: this.CurrentPage, - pageSize: this.pageSize, + pageSize: this.pageSize }; - console.log(Obj,"ObjObjObj"); // // 鎼滅储 await getPersonList(Obj).then((res) => { if (res.success) { - console.log(res, "鎼滅储鎺ュ彛"); this.tableData = res.list; // 鎬绘暟閲� this.total = res.npage.totalCount; } }); - // console.log(val, '澹ぇ澶絾鏄�'); }, // 鐑棬鎼滅储 HotClick(id) { this.hot.forEach((item) => { if (item.id === id) { - console.log(item.id === id); item.bgColor = true; } else { - console.log(item.id === id); item.bgColor = false; } }); }, // 灞曞紑鏀剁缉 shrinkClick(box, name) { - console.log(box); - console.log(this.dynasty.list); - // this.activeBox = this.activeBox === 'a' ? null : 'a'; if (name == "鑱屼笟") { - console.log("鑱屼笟"); this.professionIndex = this.professionIndex < this.profession.list.length ? this.profession.list.length @@ -690,7 +732,6 @@ this.dynastyIndex = 4; this.activeBox = this.activeBox === "a" ? null : "a"; } else { - console.log("鏃舵湡"); this.dynastyIndex = this.dynastyIndex < this.dynasty.list.length ? this.dynasty.list.length @@ -703,29 +744,24 @@ CurrentChange(val) { if (this.CurrentPage != val) { this.CurrentPage = val; - console.log("褰撳墠椤�", val); - this.onSearch(""); + this.onSearch({ text: this.keywords }); } }, // 涓婁竴椤� PrevClick(val) { if (this.CurrentPage != val) { this.CurrentPage = val; - // console.log('涓婁竴椤�', val); - // console.log(this.CurrentPage); - this.onSearch(""); + this.onSearch({ text: this.keywords }); } }, // 涓嬩竴椤� NextClick(val) { if (this.CurrentPage != val) { - // console.log('涓嬩竴椤�',val); this.CurrentPage = val; - // console.log(this.CurrentPage); - this.onSearch(""); + this.onSearch({ text: this.keywords }); } - }, - }, + } + } }; </script> @@ -1226,6 +1262,10 @@ li { font-size: 0.12rem; margin: 0 0.1rem; + &.active { + color: #027edc !important; + font-weight: bold; + } } } -- Gitblit v1.9.1