Bladeren bron

Merge branch 'dev' of https://git.citupro.com/zhengnaiwen_citu/menduner into dev

lifanagju_citu 10 maanden geleden
bovenliggende
commit
d638028450

+ 6 - 1
src/views/enterprise/memberCenter/myAccount/index.vue

@@ -6,14 +6,19 @@
         <div class="mdi mdi-alert font-20"></div>
         <div class="font-15 ml-1">您还未购买任何会员!购买会员可享受VIP待遇!</div>
       </div>
-      <v-btn color="primary" variant="text"  @click="router.push({ path: '/enterprise/purchasePackage' })">{{ $t('vipPackage.buyNow') }}</v-btn>
+      <v-btn color="primary" variant="text"  @click="handleToPurchasePackage">{{ $t('vipPackage.buyNow') }}</v-btn>
     </div>
   </v-card>
 </template>
 
 <script setup>
 defineOptions({name: 'enterprise-memberCenter-myAccount'})
+
+const handleToPurchasePackage = () => {
+  window.open('/enterprise/purchasePackage')
+}
 </script>
+
 <style lang="scss" scoped>
 .font-13 { font-size: 13px; }
 .font-15 { font-size: 15px; }

+ 6 - 8
src/views/enterprise/memberCenter/myPoints/components/integralTable.vue

@@ -1,11 +1,9 @@
 <template>
   <v-data-table
     class="mt-3"
-    v-model="selected"
     :items="items"
     :headers="headers"
     hover
-    height="60vh"
     item-value="id"
   >
     <template #bottom></template>
@@ -14,18 +12,18 @@
 
 <script setup>
 defineOptions({ name: 'myRegistration-integralTable'})
-import { ref } from 'vue'
+import { timesTampChange } from '@/utils/date'
+
 defineProps({
   tab: String,
   items: Array
 })
 
-
-const selected = ref([])
 const headers = [
-  { title: '积分类型', key: '积分类型' },
-  { title: '变更时间', key: '时间' },
-  { title: '积分', key: '积分' },
+  { title: '积分数', key: 'point' },
+  { title: '总积分数', key: 'totalPoint' },
+  { title: '来源', key: 'description' },
+  { title: '获得时间', key: 'createTime', value: item =>  timesTampChange(item.createTime) },
 ]
 
 </script>

+ 1 - 1
src/views/enterprise/memberCenter/myPoints/index.vue

@@ -1,7 +1,7 @@
 <!-- 积分管理 -->
 <template>
   <div class="white-bgc pa-3">
-    <integralShow :showMall="false" :taskCenter="false" :title="descriptiveTitle"></integralShow>
+    <integralShow :showMall="false" :taskCenter="false" :title="descriptiveTitle" :isEnterprise="true"></integralShow>
     <div>
       <v-tabs v-model="tab" align-tabs="start" color="primary" bg-color="#fff" @update:model-value="getPositionList">
         <v-tab :value="1">{{ $t('points.redemptionOfPoints') }}</v-tab>

+ 27 - 11
src/views/enterprise/memberCenter/myPoints/pointsDetails.vue

@@ -3,34 +3,50 @@
   <div class="mt-3">
     <v-tabs v-model="tab" style="border-radius: 5px;" align-tabs="start" color="primary" bg-color="#f7f8fa" @update:model-value="handleChangeTab">
       <v-tab :value="1"> {{ $t('points.whole') }}</v-tab>
-      <v-tab :value="2"> {{ $t('points.In') }}</v-tab>
+      <!-- <v-tab :value="2"> {{ $t('points.In') }}</v-tab>
       <v-tab :value="3"> {{ $t('points.freezing') }}</v-tab>
-      <v-tab :value="4"> {{ $t('points.pay') }}</v-tab>
+      <v-tab :value="4"> {{ $t('points.pay') }}</v-tab> -->
     </v-tabs>
     <TablePage  :items="dataList"></TablePage>
+    <CtPagination
+      v-if="total > 0"
+      :total="total"
+      :page="pageNo"
+      :limit="pageSize"
+      @handleChange="handleChangePage"
+    ></CtPagination>
   </div>
 </template>
 
 <script setup>
-import TablePage from './components/integralTable.vue'
-import { ref } from 'vue'
 defineOptions({name: 'personal-pointsManagement-pointsDetails'})
+import { ref } from 'vue'
+import { getUserRewardPointPage } from '@/api/integral'
+import TablePage from './components/integralTable.vue'
 const tab = ref(0)
 
 // 数据
+const total = ref(0)
+const pageNo = ref(1)
+const pageSize = ref(10)
 const dataList = ref([])
-const getData = () => {
-  dataList.value = [
-    { 积分类型: '积分签到', 时间: '2024-06-20 20:00', 积分: '5' },
-    { 积分类型: '积分到期', 时间: '2024-06-20 00:00', 积分: '-100' },
-    { 积分类型: '浏览积分', 时间: '2024-06-21 09:05', 积分: '15' },
-    { 积分类型: '浏览职业分析报告', 时间: '2024-06-22 10:27', 积分: '-20' },
-  ]
+
+// 积分明细
+const getData = async () => {
+  const res = await getUserRewardPointPage(pageNo.value, pageSize.value)
+  dataList.value = res.list
+  total.value = res.total
 }
 getData()
 
+const handleChangePage = (e) => {
+  pageNo.value = e
+  getData()
+}
+
 // 切换
 const handleChangeTab = () => {
+  pageNo.value = 1
   // tab
   // getData()
 }

+ 7 - 2
src/views/personal/components/integralShow.vue

@@ -42,6 +42,11 @@ const props = defineProps({
     type: Boolean,
     default: false
   },
+  // 招聘端
+  isEnterprise: {
+    type: Boolean,
+    default: false
+  }
 })
 const integral = ref(0)
 
@@ -60,8 +65,8 @@ const integralRulesClick = () => {
 
 // 跳转臻选商城
 const handleClickMall = (has) => {
-  if (has) return window.open('/pointsManagement?tab=2')
-  window.open('/pointsManagement')
+  if (has) return window.open(props.isEnterprise ? '/enterprise/memberCenter/myPoints?tab=2' : '/pointsManagement?tab=2')
+  window.open(props.isEnterprise ? '/enterprise/memberCenter/myPoints' : '/pointsManagement')
 }
 </script>
 <style lang="scss" scoped>