index.vue 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. <template>
  2. <view class="content">
  3. <view class="message" @click="openPage('pages/inbuild/inbuild','消息中心')" >
  4. <u-icon name="chat" color="#000000" size="48"></u-icon>
  5. <u-badge size="mini" type="success" count="7"></u-badge>
  6. </view>
  7. <u-swiper
  8. :list="bannerList"
  9. name="bannerUrl"
  10. border-radius="0"
  11. mode="none"
  12. height="427"
  13. img-mode="scaleToFill"
  14. @click="swiperClick"
  15. ></u-swiper>
  16. <!-- <view class="notice u-flex u-p-l-35 u-p-r-40">
  17. <u-image width="113rpx" height="83rpx" src="/static/img/tip.png"></u-image>
  18. <view class="notice-wrap u-flex-1">
  19. <u-notice-bar
  20. @click="noticeClick"
  21. mode="vertical"
  22. :list="noticeList"
  23. :more-icon="true"
  24. :volume-icon="false"
  25. bg-color="#fff"
  26. color="#373737"></u-notice-bar>
  27. </view>
  28. </view> -->
  29. <u-card class="service" :border="false" :foot-border-top="false" :full="true" border-radius="0">
  30. <view class="service-head" slot="head">
  31. <view class="card-head-title">综合服务</view>
  32. </view>
  33. <view class="service-body u-flex u-flex-wrap u-row-left" slot="body">
  34. <view class="service-item" @click="openPage('pages/policyNews/policyNews')">
  35. <image class="service-item-img" src="../../static/img/index-service-01.png" mode="aspectFill"></image>
  36. <view class="service-item-text">政策资讯</view>
  37. </view>
  38. <view class="service-item" @click="openPage('pages/inbuild/inbuild','招聘就业')" >
  39. <image class="service-item-img" src="../../static/img/index-service-02.png" mode="aspectFill"></image>
  40. <view class="service-item-text">招聘就业</view>
  41. </view>
  42. <view class="service-item" @click="openPage('pages/inbuild/inbuild','合作企业')" >
  43. <image class="service-item-img" src="../../static/img/index-service-03.png" mode="aspectFill"></image>
  44. <view class="service-item-text">合作企业</view>
  45. </view>
  46. <view class="service-item" @click="openPage('pages/schools/schools')" >
  47. <image class="service-item-img" src="../../static/img/index-service-04.png" mode="aspectFill"></image>
  48. <view class="service-item-text">合作院校</view>
  49. </view>
  50. <view class="service-item" @click="openPage('pages/skillsTraining/skillsTraining')" >
  51. <image class="service-item-img" src="../../static/img/index-service-05.png" mode="aspectFill"></image>
  52. <view class="service-item-text">技能培训</view>
  53. </view>
  54. <view class="service-item" @click="openPage('pages/basicTraining/basicTraining')" >
  55. <image class="service-item-img" src="../../static/img/index-service-06.png" mode="aspectFill"></image>
  56. <view class="service-item-text">适应性培训</view>
  57. </view>
  58. <view class="service-item" @click="openPage('pages/upgrade/upgrade')" >
  59. <image class="service-item-img" src="../../static/img/index-service-07.png" mode="aspectFill"></image>
  60. <view class="service-item-text">学历提升</view>
  61. </view>
  62. <view class="service-item" @click="openPage('pages/inbuild/inbuild','创业指引')" >
  63. <image class="service-item-img" src="../../static/img/index-service-08.png" mode="aspectFill"></image>
  64. <view class="service-item-text">创业指导</view>
  65. </view>
  66. </view>
  67. </u-card>
  68. <u-card class="news-list"
  69. :body-style="{'padding-top':0}"
  70. :border="false"
  71. :foot-border-top="false"
  72. :full="true" border-radius="0">
  73. <view class="news-list-head" slot="head">
  74. <view class="card-head-title">新闻动态</view>
  75. </view>
  76. <view class="news-list-body" slot="body">
  77. <u-nodata notice="暂无新闻" v-if="newsList.length==0"></u-nodata>
  78. <view v-for="(item,index) in newsList"
  79. @click="$u.route('/pages/newsDetails/newsDetails',{artId:item.artId})"
  80. :key="item.artId"
  81. class="u-body-item u-flex u-border-bottom u-col-between u-row-between">
  82. <view class="news-text">
  83. <view class="u-body-item-title u-line-2">{{item.artTitle}}</view>
  84. <view class="foot u-flex">
  85. <view class="">{{item.artCategoryName}}</view>
  86. <view class="time">{{$u.timeFormat(item.createTime.replace(/-/g, '/'), 'mm月dd日 hh时MM分')}}</view>
  87. </view>
  88. </view>
  89. <image :src="item.artImage" mode="aspectFill"></image>
  90. </view>
  91. </view>
  92. </u-card>
  93. </view>
  94. </template>
  95. <script>
  96. export default {
  97. data() {
  98. return {
  99. paginationConfig:{
  100. pageNo: 1,
  101. pageSize: 10
  102. },
  103. bannerList: [],
  104. newsList:[],
  105. noticeList:['贵州轮胎股份有限公司对您感兴趣,为您提供了职位。','您有一个面试邀请'],
  106. }
  107. },
  108. onLoad() {
  109. // console.log(this.$u.config.v);
  110. },
  111. onShow() {
  112. this.getBannerList();
  113. this.getNewsList();
  114. },
  115. methods: {
  116. /**
  117. * 打开新页面
  118. * @param {String} path 跳转路径
  119. * */
  120. openPage(path,msg) {
  121. this.$u.route({
  122. url: path,
  123. params:{
  124. msg:msg
  125. }
  126. })
  127. },
  128. getNewsList(){
  129. let params ={
  130. // artCategoryId:2,
  131. pageNum:1,
  132. pageSize:10
  133. }
  134. this.$u.api.getIndexNewsList(params)
  135. .then(res=>{
  136. if(res.code==200){
  137. this.newsList = res.rows;
  138. }else{
  139. uni.showToast({
  140. icon:'none',
  141. title:res.msg
  142. })
  143. }
  144. // console.log('newsList',JSON.parse(JSON.stringify(res.rows)));
  145. })
  146. },
  147. getBannerList(){
  148. this.$u.api.getIndexBannerList()
  149. .then(res=>{
  150. this.bannerList = res.data;
  151. // console.log('bannerList',JSON.parse(JSON.stringify(res)));
  152. })
  153. },
  154. // 轮播图点击
  155. swiperClick (index) {
  156. // console.log('swiperClick',index);
  157. // console.log('bannerList',this.bannerList);
  158. if(this.bannerList[index].jumpUrl){
  159. // console.log(this.bannerList[index].jumpUrl);
  160. let url = this.bannerList[index].jumpUrl.split('#')[1];
  161. // console.log('url',url);
  162. this.$u.route({
  163. url: url,
  164. });
  165. }else{
  166. this.$u.route({
  167. url: 'pages/bannerDetails/bannerDetails',
  168. params: {
  169. id: this.bannerList[index].id
  170. }
  171. })
  172. }
  173. },
  174. noticeClick(e){
  175. console.log('e',e)
  176. this.openPage('pages/inbuild/inbuild','我的消息')
  177. }
  178. }
  179. }
  180. </script>
  181. <style lang="scss" scoped>
  182. @import "./index.scss";
  183. </style>