endActivity.vue 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. <template>
  2. <view class="container container-end-actibity">
  3. <!-- 筛选部分 -->
  4. <view class="select-content-activity">
  5. <view class="screen-item" v-if="endType == 'hongze'">
  6. <text :class="[isShowJurisdiction ? 'active' : '', 'text-item']" @click="permissioActivity">有权限行业</text>
  7. <!-- 各种状态选择 -->
  8. <view class="select-conyent" ref="select-conyent">
  9. <van-dropdown-menu active-color="#333333">
  10. <van-dropdown-item id="industry" :title="chartPermissionName">
  11. <view class="menu-items">
  12. <view class="menu-items-box" v-for="item in listChartPermission" :key="item.ChartPermissionId" @click="overallClick(item)">
  13. <view class="items-box">
  14. <u-icon v-if="item.IsChoose" name="checkbox-mark" :color="isShowJurisdiction ? '#ccc' : '#376cbb'" size="24"></u-icon>
  15. </view>
  16. <text>{{ item.PermissionName }}</text>
  17. </view>
  18. </view>
  19. <view class="replacement">
  20. <text @click="replacementBtn" class="replacement-box">重置</text>
  21. <text @click="replacementConfirm">确定</text>
  22. </view>
  23. </van-dropdown-item>
  24. </van-dropdown-menu>
  25. </view>
  26. <text @click="selectMultipleHandler(item, '类型')" v-for="item in activityTypeList" :key="item.Id" :class="['select-item-multiple', item.IsChoose && 'active']">{{ item.StatusName }}</text>
  27. </view>
  28. <view class="screen-item screen-item-ul" :style="endType == 'research' ? 'margin-top:0' : ''">
  29. <text @click="monthWeekHandler(item)" v-for="item in activityMonthWeekList" :key="item.Id" :class="['text-item', item.IsChoose && 'active']">{{ item.StatusName }}</text>
  30. </view>
  31. </view>
  32. <view class="content-box" v-if="haveData">
  33. <view class="content-ul">
  34. <view @click="goThemeActivity(item)" class="item-text text_oneLine" v-for="item in dataList" :key="item.ActivityId">
  35. {{ item.KeyWord }}
  36. </view>
  37. </view>
  38. </view>
  39. <view class="nodata" v-else>
  40. <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/act_search.png" mode="" class="nodata_ico"></image>
  41. <text>暂时没有符合条件的活动</text>
  42. </view>
  43. <Loading />
  44. </view>
  45. </template>
  46. <script>
  47. import selectMixins from "../components/selectMixins.js";
  48. import { activity } from "@/config/api";
  49. export default {
  50. mixins: [selectMixins],
  51. data() {
  52. return {
  53. dateType: "", //日期的类型
  54. selectMultipleType: "", // 筛选的类型
  55. dataList: [],
  56. haveData: true,
  57. // hongze 弘则活动 research 研选活动
  58. endType: "",
  59. hideResearch: true,
  60. };
  61. },
  62. methods: {
  63. async getActivityList() {
  64. const res = await activity.activityOverActivityList({
  65. WhichDay: this.whichDay,
  66. TypeName: this.selectActiveId,
  67. IsPower: this.isGetJurisdiction,
  68. ChartPermissionIds: this.chartPermissionIds,
  69. });
  70. if (res.Ret === 200) {
  71. this.dataList = res.Data.List || [];
  72. this.haveData = this.dataList.length ? true : false;
  73. }
  74. },
  75. // 跳转到主题详情
  76. goThemeActivity(item) {
  77. let obj = {
  78. select_type: "end",
  79. data_activeId: this.whichDay,
  80. select_activeId: this.selectActiveId,
  81. };
  82. uni.navigateTo({
  83. url: "/activityPages/themeActivity/themeActivity?title=" + item.KeyWord + "&id=" + item.ActivityId + "&endList=" + JSON.stringify(obj),
  84. });
  85. },
  86. },
  87. onLoad(options) {
  88. this.endType = options.type ? options.type : "hongze";
  89. this.getActivityList();
  90. },
  91. };
  92. </script>
  93. <style lang="scss" scoped>
  94. .container-end-actibity {
  95. background-color: $uni-bg-color;
  96. .content-box {
  97. padding: 25rpx;
  98. }
  99. .content-ul {
  100. display: flex;
  101. flex-wrap: wrap;
  102. justify-content: space-between;
  103. padding: 30rpx 20rpx;
  104. background-color: #fff;
  105. border-radius: 8rpx;
  106. .item-text {
  107. text-align: center;
  108. line-height: 52rpx;
  109. width: 321rpx;
  110. height: 52rpx;
  111. background: #e5efff;
  112. color: $uni-color-new;
  113. border-radius: 8rpx;
  114. margin-bottom: 30rpx;
  115. padding: 0 20rpx;
  116. }
  117. }
  118. @import "../components/selectCss.scss";
  119. }
  120. </style>