menu.vue 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. <template>
  2. <div class="height_100 article_menu">
  3. <!-- 展开后 -->
  4. <div v-if="!isContract" style="width: 300px;height: 100%;">
  5. <el-container>
  6. <el-header
  7. style="width: 100%;display: flex;justify-content: space-evenly; align-items: center; height: 50px;line-height: 50px;">
  8. <el-popover ref="heightPopover" placement="bottom" title="高亮" width="320" trigger="click">
  9. <patent-keywords-highlight :project-id="projectId" />
  10. </el-popover>
  11. <el-tooltip content="返回专题库专利清单" placement="top">
  12. <el-button size="small" @click="goBack()"><i class="iconfont icon-fanhui"></i></el-button>
  13. </el-tooltip>
  14. <el-tooltip :content="isRight ? '设置菜单栏为左侧' : '设置菜单栏为右侧'" placement="top">
  15. <el-button size="small" class="articles-Loop" @click="isRight = !isRight">
  16. <i class="iconfont icon-shezhi2"></i>
  17. </el-button>
  18. </el-tooltip>
  19. <el-tooltip content="设定高亮关键词" placement="top">
  20. <el-button v-popover:heightPopover size="small"><i class="iconfont icon-wodegaoliang"></i></el-button>
  21. </el-tooltip>
  22. <el-tooltip content="对比" placement="top">
  23. <el-button size="small" @click="contrast()">
  24. <i v-if="!value" class="iconfont icon-duibi"></i>
  25. <i v-else class="iconfont icon-duibi1"></i>
  26. </el-button>
  27. </el-tooltip>
  28. <el-tooltip content="收缩" placement="top">
  29. <el-button size="small" @click="isContract = !isContract">
  30. <i class="iconfont icon-shousuo"></i></el-button>
  31. </el-tooltip>
  32. </el-header>
  33. <el-main style="background: #FFFFFF;">
  34. <PatentLeft :patentList="patentList"></PatentLeft>
  35. </el-main>
  36. <el-footer style="text-align: center;">
  37. <el-pagination background layout=" prev, pager, next" :current-page.sync="queryParams.current"
  38. :page-size.sync="queryParams.size" @current-change="handleCurrentChange" :total="total">
  39. </el-pagination>
  40. </el-footer>
  41. </el-container>
  42. </div>
  43. <!-- 收缩后 -->
  44. <div v-else class="articles-Loop-div">
  45. <el-tooltip content="返回专题库专利清单" placement="right">
  46. <div class="articles-Loop">
  47. <i class="iconfont icon-fanhui" @click="goBack()"></i>
  48. </div>
  49. </el-tooltip>
  50. <el-tooltip :content="isRight ? '设置菜单栏为左侧' : '设置菜单栏为右侧'" placement="right-end">
  51. <div class="articles-Loop" @click="isRight = !isRight">
  52. <i class="iconfont icon-shezhi2"></i>
  53. </div>
  54. </el-tooltip>
  55. <el-tooltip content="展开" placement="right">
  56. <div class="articles-Loop" @click="isContract = !isContract">
  57. <i class="iconfont icon-zhankai"></i>
  58. </div>
  59. </el-tooltip>
  60. <el-tooltip content="设定高亮关键词" placement="right-end">
  61. <el-popover placement="right" title="关键词高亮" width="320" trigger="click" style="margin-top:20px">
  62. <patent-keywords-highlight :project-id="projectId" />
  63. <div class="articles-Loop" slot="reference" style="">
  64. <i class="iconfont icon-wodegaoliang"></i>
  65. </div>
  66. </el-popover>
  67. </el-tooltip>
  68. <el-tooltip content="对比" placement="right-end">
  69. <div class="articles-Loop" @click="contrast()" :style="{ background: value ? '#9cb2e5' : 'white' }">
  70. <i v-if="!value" class="iconfont icon-duibi"></i>
  71. <i v-else class="iconfont icon-duibi1"></i>
  72. </div>
  73. </el-tooltip>
  74. <el-tooltip placement="right-end">
  75. <template slot="content">
  76. <div>点击查看上一篇专利</div>
  77. <div>专利:CN202210250237</div>
  78. <div>数量:1</div>
  79. </template>
  80. <div class="articles-Loop">
  81. <i class="el-icon-arrow-up"></i>
  82. </div>
  83. </el-tooltip>
  84. <el-tooltip placement="right-end">
  85. <template slot="content">
  86. <div>点击查看下一篇专利</div>
  87. <div>专利:CN202210250237</div>
  88. <div>数量:1</div>
  89. </template>
  90. <div class="articles-Loop" style="">
  91. <i class="el-icon-arrow-down"></i>
  92. </div>
  93. </el-tooltip>
  94. </div>
  95. </div>
  96. </template>
  97. <script>
  98. import PatentLeft from './PatentLeft.vue';
  99. export default {
  100. components: {
  101. PatentLeft
  102. },
  103. props: {
  104. projectId:{
  105. default:0
  106. }
  107. },
  108. data() {
  109. return {
  110. value:false,//对比
  111. isRight:false,//是否在右侧
  112. isContract:false,//是否收缩
  113. queryParams:{
  114. current:1,
  115. size:10,
  116. },
  117. total:0,
  118. patentList:[]
  119. };
  120. },
  121. watch: {},
  122. computed: {},
  123. created() {},
  124. mounted() {
  125. this.getPatentList()
  126. },
  127. methods: {
  128. getPatentList(){
  129. let params = {
  130. ...this.queryParams,//分页信息
  131. projectId: this.projectId,
  132. // searchQuery: this.$commonJS.objectToString(this.searchOption),//检索条件
  133. // orderDTOList: this.sort,//排序信息
  134. }
  135. this.$api.QueryPatent(params).then(res => {
  136. if (res.code == 200) {
  137. this.patentList = res.data.data
  138. this.total = res.data.total
  139. }
  140. }).catch(error => {
  141. this.patentList = []
  142. this.total = 0
  143. })
  144. },
  145. //分页
  146. handleCurrentChange(val){
  147. this.queryParams.current = val
  148. this.getPatentList()
  149. },
  150. goBack(){
  151. },
  152. contrast(){
  153. this.value = !this.value
  154. this.$emit('contrast',this.value)
  155. }
  156. },
  157. };
  158. </script>
  159. <style lang="scss" scoped>
  160. .article_menu{
  161. .articles-Loop-div {
  162. width: 51px;
  163. height: 100%;
  164. background: #fff;
  165. text-align: center;
  166. .articles-Loop {
  167. height: 50px;
  168. line-height: 50px;
  169. border-bottom: 1px solid #ccc;
  170. background: #fff;
  171. // border-bottom: none;
  172. cursor: pointer;
  173. }
  174. .articles-Loop:hover {
  175. background: #cdd7eb !important;
  176. }
  177. .articles-Loop-number {
  178. overflow: hidden;
  179. white-space: nowrap;
  180. text-overflow: ellipsis;
  181. }
  182. }
  183. }
  184. </style>