소스 검색

Merge branch 'ETA2.3.5' into debug

ldong 2 달 전
부모
커밋
42be7f6db2

+ 9 - 0
src/api/sheet.js

@@ -27,6 +27,15 @@ export default {
     sheetList(params){
         return get('/datamanage/excel_info/list',params)
     },
+    /**
+     * 表格列表es
+     * @param Keyword
+     * @param CurrentIndex
+     * @param PageSize
+     */
+    sheetListEs(params){
+        return get('/datamanage/excel_info/search_by_es',params)
+    },
 
     /**
      * 表格刷新

+ 8 - 0
src/hooks/common.js

@@ -80,4 +80,12 @@ export async function setClipboardData(text,msg){
        document.body.removeChild(input);
        showToast({message:msg||'复制链接成功',type:'success'})
    }
+}
+
+// 设置高亮
+export function setHightLightText(text, keyword) {
+    let reg = new RegExp(keyword, "g");
+    let replaceString = `<span style='color: #0052D9;'>${keyword.trim()}</span>`;
+    text = text.replace(reg, replaceString);
+    return text;
 }

+ 1 - 1
src/views/chartETA/Search.vue

@@ -96,7 +96,7 @@ function goDetail(item){
         >
             <ul class="list-wrap">
                 <li class="item" v-for="item in listState.list" :key="item.ChartInfoId" @click="goDetail(item)">
-                    <div class="van-ellipsis name">{{currentLang==='EN'?(item.ChartNameEn||item.ChartName):item.ChartName}}</div>
+                    <div class="van-ellipsis name" v-html="item.SearchText"></div>
                     <img class="img" :src="!item.HaveOperaAuth?useNoAuth().noAuthImg:item.ChartImage" alt="">
                     <div class="time">
                         <span>{{moment(item.CreateTime).format('YYYY-MM-DD')}}</span>

+ 1 - 1
src/views/dataEDB/SearchList.vue

@@ -84,7 +84,7 @@ function goDetail(item){
         >
             <ul class="list-wrap">
                 <li class="item" v-for="item in listState.list" :key="item.EdbInfoId" @click="goDetail(item)">
-                    <div class="van-multi-ellipsis--l2 name">{{item.EdbName}}</div>
+                    <div class="van-multi-ellipsis--l2 name" v-html="item.SearchText"></div>
                     <van-image
                         class="img"
                         :src="!item.HaveOperaAuth?useNoAuth().noAuthImg:item.ChartImage"

+ 1 - 1
src/views/dataEDB/calculate/components/SelectEDB.vue

@@ -147,7 +147,7 @@ function handleShowEDBInfo(item){
                                 <van-radio :name="item.EdbInfoId" :disabled="!item.HaveOperaAuth">
                                     <div class="con">
                                         <img :src="useNoAuth().noAuthIco" width="18" height="18" v-if="!item.HaveOperaAuth">
-                                        <div class="name">{{item.EdbName}}</div>
+                                        <div class="name" v-html="item.SearchText"></div>
                                         <svg-icon @click.stop="handleShowEDBInfo(item)" class="icon" name="error-circle-filled" size="16px" color="#999"/>
                                     </div>
                                 </van-radio>

+ 2 - 1
src/views/externalReport/List.vue

@@ -1,4 +1,5 @@
 <script setup name="WarResearchReport">
+import {setHightLightText} from '@/hooks/common'
 import {computed, nextTick, onMounted, reactive,ref} from 'vue'
 import apiReport from '@/api/report'
 import {reportExternalInterface} from '@/api/reportExternal'
@@ -490,7 +491,7 @@ function goDetail(item){
                 >   
                     <div class="list-top">
                         <h2 class="van-ellipsis title">
-                            {{item.Title}}
+                            <span v-html="setHightLightText(item.Title,listState.keyWord)"></span>
                             <template v-if="isRise">
                                 ({{ moment(item.MsgSendTime||item.PublishTime||item.CreateTime).format('MMDD')}})
                             </template>

+ 13 - 5
src/views/myETA/ChooseChart.vue

@@ -5,6 +5,7 @@ import apiFuture from '@/api/futureChart'
 import apiCorrelation from '@/api/correlationChart'
 import apiLineEquationChart from '@/api/lineEquationChart'
 import apiStatisticFeatureChart from '@/api/statisticFeatureChart'
+import apiCrossVarietyChart from '@/api/crossVarietyChart'
 import {apiMyClassifyList,apiMyChartAdd,apiAddClassify} from '@/api/myETA'
 import { showToast } from 'vant';
 import { useWindowSize } from '@vueuse/core'
@@ -33,6 +34,10 @@ const typeOpt=[
     {
         name:"统计特征",
         type:5,
+    },
+    {
+        name:"跨品种分析",
+        type:6,
     }
 
 ]
@@ -53,19 +58,22 @@ async function getChartList(){
         CurrentIndex: listState.page,
         ChartClassifyId: 0,
         KeyWord: keyword.value,
+        Keyword:keyword.value,
         IsShowMe:isShowMe.value
     }
     let res
     if(type.value==1){
-        res=await apiChart.pubChartList(params)
+        res=await apiChart.ETAChartListByES(params)
     }else if(type.value==2){
         res=await apiFuture.searchChartList(params)
     }else if(type.value==3){
-        res=await apiCorrelation.chartList(params)
+        res=await apiCorrelation.searchChartList(params)
     }else if(type.value==4){
-        res=await apiLineEquationChart.chartList(params)
+        res=await apiLineEquationChart.searchChartList(params)
     }else if(type.value==5){
-        res=await apiStatisticFeatureChart.chartList(params)
+        res=await apiStatisticFeatureChart.searchChart(params)
+    }else if(type.value==6){
+        res=await apiCrossVarietyChart.searchChart(params)
     }
     
     if(res.Ret==200){
@@ -222,7 +230,7 @@ async function handleConfirmEditClassify(){
         <img v-if="listState.list.length==0&&listState.finished" class="list-empty-img" src="https://hzstatic.hzinsights.com/static/ETA_mobile/empty_img.png" alt="">
         <ul class="list-wrap">
             <li class="item" v-for="item in listState.list" :key="item.ChartInfoId">
-                <div class="van-multi-ellipsis--l2 name">{{item.ChartName}}</div>
+                <div class="van-multi-ellipsis--l2 name" v-html="item.SearchText"></div>
                 <van-image
                     fit="contain"
                     lazy-load

+ 1 - 1
src/views/myETA/SearchList.vue

@@ -83,7 +83,7 @@ function goDetail(item){
         >
             <ul class="list-wrap">
                 <li class="item" v-for="item in listState.list" :key="item.ChartInfoId" @click="goDetail(item)">
-                    <div class="van-multi-ellipsis--l2 name">{{item.ChartName}}</div>
+                    <div class="van-multi-ellipsis--l2 name" v-html="item.SearchText"></div>
                     <img class="img" :src="!item.HaveOperaAuth?useNoAuth().noAuthImg:item.ChartImage" alt="">   
                     <div class="time">
                         <span>{{item.CreateTime.slice(0,10)}}</span>

+ 2 - 1
src/views/report/Search.vue

@@ -1,4 +1,5 @@
 <script setup name="ReportSearch">
+import {setHightLightText} from '@/hooks/common'
 import {ref,reactive} from 'vue'
 import apiReport from '@/api/report'
 import { showToast } from 'vant'
@@ -114,7 +115,7 @@ function goDetail(item){
                     class="item" 
                     @click="goDetail(item)"
                 >
-                    <h2 :class="['van-ellipsis title',item.Title.startsWith('【')?'inline-title':'']">{{item.Title}}</h2>
+                    <h2 v-html="setHightLightText(item.Title,keyword)" :class="['van-ellipsis title',item.Title.startsWith('【')?'inline-title':'']"></h2>
                     <p class="van-multi-ellipsis--l2 des">{{item.Abstract}}</p>
                     <div class="bot-info">
                         <div>

+ 1 - 1
src/views/report/components/reportInsert/ETAChart.vue

@@ -102,7 +102,7 @@ watch(
                     :key="item.ChartInfoId"
                     @click="handleSelect(item)"
                 >
-                    <div class="van-multi-ellipsis--l2 title">{{item.ChartName}}</div>
+                    <div class="van-multi-ellipsis--l2 title" v-html="item.SearchText"></div>
                     <img :src="!item.HaveOperaAuth?useNoAuth().noAuthImg:item.ChartImage" alt="">
 
                     <svg v-if="selectChartList.includes(item.UniqueCode)" width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">

+ 1 - 1
src/views/report/components/reportInsert/PriceChart.vue

@@ -101,7 +101,7 @@ watch(
                     :key="item.ChartInfoId"
                     @click="handleSelect(item)"
                 >
-                    <div class="van-multi-ellipsis--l2 title">{{item.ChartName}}</div>
+                    <div class="van-multi-ellipsis--l2 title" v-html="item.SearchText"></div>
                     <img :src="!item.HaveOperaAuth?useNoAuth().noAuthImg:item.ChartImage" alt="">
 
                     <svg v-if="selectChartList.includes(item.UniqueCode)" width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">

+ 2 - 1
src/views/report/components/reportInsert/SandTableImg.vue

@@ -1,4 +1,5 @@
 <script setup>
+import {setHightLightText} from '@/hooks/common'
 import {reactive, ref,watch} from 'vue'
 import apiSandBox from '@/api/sandBox'
 import { vInfiniteScroll } from '@vueuse/components'
@@ -83,7 +84,7 @@ watch(
                     :key="item.SandboxId"
                     @click="handleSelect(item)"
                 >
-                    <div class="van-multi-ellipsis--l2 title">{{item.Name}}</div>
+                    <div class="van-multi-ellipsis--l2 title" v-html="setHightLightText(item.Name,searchVal)"></div>
                     <img :src="item.PicUrl" alt="">
 
                     <svg v-if="selectChartList.includes(item.SandboxId)" width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">

+ 2 - 1
src/views/report/components/reportInsert/SemanticsImg.vue

@@ -1,4 +1,5 @@
 <script setup>
+import {setHightLightText} from '@/hooks/common'
 import {reactive, ref,watch} from 'vue'
 import apiSemanticAnalysis from '@/api/semanticAnalysis'
 import { vInfiniteScroll } from '@vueuse/components'
@@ -83,7 +84,7 @@ watch(
                     :key="item.SaCompareId"
                     @click="handleSelect(item)"
                 >
-                    <div class="van-multi-ellipsis--l2 title">{{item.Title}}</div>
+                    <div class="van-multi-ellipsis--l2 title" v-html="setHightLightText(item.Title,searchVal)"></div>
                     <img :src="item.ResultImg" alt="">
 
                     <svg v-if="selectChartList.includes(item.SaCompareId)" width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">

+ 2 - 2
src/views/report/components/reportInsert/SheetTableChart.vue

@@ -44,7 +44,7 @@ async function getSheetList(){
         IsShowMe:onlyMe.value
     }
     listState.loading=true
-    let res=await apiSheetChart.sheetList(params)
+    let res=await apiSheetChart.sheetListEs(params)
     listState.loading=false
     if(res.Ret===200){
         const arr=res.Data.List||[]
@@ -136,7 +136,7 @@ watch(
                     :key="item.UniqueCode"
                     @click="handleSelect(item)"
                 >
-                    <div class="van-multi-ellipsis--l2 title">{{item.ExcelName}}</div>
+                    <div class="van-multi-ellipsis--l2 title" v-html="item.SearchText"></div>
                     <img :src="!item.HaveOperaAuth?useNoAuth().noAuthImg:item.ExcelImage" alt="">
 
                     <svg v-if="selectChartList.includes(item.UniqueCode)" width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">

+ 1 - 1
src/views/report/components/reportInsert/StatisticAnalysis.vue

@@ -169,7 +169,7 @@ watch(
                     :key="item.ChartInfoId"
                     @click="handleSelect(item)"
                 >
-                    <div class="van-multi-ellipsis--l2 title">{{item.ChartName}}</div>
+                    <div class="van-multi-ellipsis--l2 title" v-html="item.SearchText"></div>
                     <img :src="!item.HaveOperaAuth?useNoAuth().noAuthImg:item.ChartImage" alt="">
 
                     <svg v-if="selectChartList.includes(item.UniqueCode)" width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">

+ 2 - 1
src/views/reportEn/Search.vue

@@ -1,4 +1,5 @@
 <script setup name="ReportEnSearchList">
+import {setHightLightText} from '@/hooks/common'
 import {ref,reactive} from 'vue'
 import apiReportEn from '@/api/reportEn'
 import { showToast } from 'vant'
@@ -85,7 +86,7 @@ function goDetail(item){
                     class="item" 
                     @click="goDetail(item)"
                 >
-                    <h2 :class="['van-ellipsis title',item.Title.startsWith('【')?'inline-title':'']">{{item.Title}}</h2>
+                    <h2 v-html="setHightLightText(item.Title,keyword)" :class="['van-ellipsis title',item.Title.startsWith('【')?'inline-title':'']"></h2>
                     <p class="van-multi-ellipsis--l2 des">{{item.Abstract}}</p>
                     <div class="bot-info">
                         <div>

+ 2 - 2
src/views/sheetList/sharedSearch.vue

@@ -17,7 +17,7 @@ const listState = reactive({
     loading:false
 })
 async function getList(){
-    const res=await apiSheet.sheetList({
+    const res=await apiSheet.sheetListEs({
         CurrentIndex: listState.page,
         PageSize: listState.pageSize,
         Keyword: keyword.value,
@@ -86,7 +86,7 @@ function goDetail(item){
         >
             <ul class="list-wrap">
                 <li class="item" v-for="item in listState.list" :key="item.ChartInfoId" @click="goDetail(item)">
-                    <div class="van-ellipsis name">{{item.ExcelName}}</div>
+                    <div class="van-ellipsis name" v-html="item.SearchText"></div>
                     <img class="img" :src="!item.HaveOperaAuth?useNoAuth().noAuthImg:item.ExcelImage" alt="">
                     <div class="time">
                         <span>{{moment(item.CreateTime).format('YYYY-MM-DD')}}</span>