Przeglądaj źródła

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

lifanagju_citu 9 miesięcy temu
rodzic
commit
52a4bdb011

+ 8 - 0
src/api/recruit/personal/personalCenter/index.js

@@ -30,4 +30,12 @@ export const userInterviewInviteReject = async (id) => {
   return await request.post({
   return await request.post({
     url: `/app-api/menduner/system/interview-invite/reject?id=${id}`
     url: `/app-api/menduner/system/interview-invite/reject?id=${id}`
   })
   })
+}
+
+// 交易订单
+export const getUserTradeOrder = async (params) => {
+  return await request.get({
+    url: '/app-api/menduner/system/trade/order/page',
+    params
+  })
 }
 }

+ 7 - 0
src/router/modules/components/recruit/personal.js

@@ -71,6 +71,13 @@ const personal = [
       {
       {
         path: '/recruit/personal/personalCenter',
         path: '/recruit/personal/personalCenter',
         component: () => import('@/views/recruit/personal/PersonalCenter/index')
         component: () => import('@/views/recruit/personal/PersonalCenter/index')
+      },
+      {
+        path: '/recruit/personal/tradeOrder',
+        meta: {
+          title: '我的订单'
+        },
+        component: () => import('@/views/recruit/personal/PersonalCenter/components/order.vue')
       }
       }
     ]
     ]
   },
   },

+ 83 - 0
src/views/recruit/personal/PersonalCenter/components/order.vue

@@ -0,0 +1,83 @@
+<!--  -->
+<template>
+  <div class="white-bgc pa-3 ma-3">
+    <v-tabs v-model="tab" align-tabs="start" color="primary" bg-color="#f7f8fa" @update:model-value="handleChangeTab">
+      <v-tab :value="0">{{ '交易订单' }}</v-tab>
+    </v-tabs>
+    <CtTable
+      class="mt-3"
+      :items="dataList"
+      :headers="headers[tab]"
+      :loading="false"
+      :elevation="0"
+      :isTools="false"
+      :showPage="true"
+      :total="total"
+      :page-info="query"
+      itemKey="id"
+      @pageHandleChange="handleChangePage"
+    >
+    </CtTable>
+  </div>
+</template>
+
+<script setup>
+defineOptions({name: 'personal-tradingOrder'})
+import { getUserTradeOrder } from '@/api/recruit/personal/personalCenter'
+import { ref } from 'vue'
+import { timesTampChange } from '@/utils/date'
+import { getDict } from '@/hooks/web/useDictionaries'
+
+const tab = ref(0)
+const total = ref(0)
+const query = ref({
+  pageNo: 1,
+  pageSize: 10
+})
+const dataList = ref([])
+
+// 支付渠道
+const channelData = ref([])
+const getPayChannelCode = async () => {
+  const { data } = await getDict('pay_channel_code')
+  channelData.value = data
+}
+getPayChannelCode()
+
+
+const orderHeaders = ref([
+  { title: '商品名称', key: 'spuName', sortable: false },
+  { title: '价格', key: 'price', sortable: false },
+  { title: '是否已支付', key: 'payStatus', sortable: false, value: item => item.payStatus ? '已支付' : '未支付' },
+  { title: '支付订单编号', key: 'payOrderId', sortable: false },
+  { title: '支付渠道', key: 'payChannelCode', value: item => channelData.value.find(e => e.value === item.payChannelCode)?.label, sortable: false },
+  { title: '订单支付时间', key: 'payTime', value: item =>  timesTampChange(item.payTime), sortable: false },
+  { title: '退款订单编号', key: 'payReFundId', sortable: false },
+  { title: '退款金额', key: 'refundPrice', sortable: false },
+  { title: '退款时间', key: 'refundTime', value: item =>  timesTampChange(item.refundTime), sortable: false },
+  { title: '更新时间', key: 'updateTime', value: item =>  timesTampChange(item.updateTime), sortable: false },
+])
+
+const getData = async () => {
+  const res = await getUserTradeOrder(query.value)
+  dataList.value = res.list
+  total.value = res.total
+}
+getData()
+
+const handleChangePage = (e) => {
+  query.value.pageNo = e
+  getData()
+}
+
+// 切换
+const handleChangeTab = () => {
+  query.value.pageNo = 1
+  query.value.type = tab.value
+  getData()
+}
+
+const headers = ref([orderHeaders.value])
+</script>
+<style lang="scss" scoped>
+</style>

+ 7 - 5
src/views/recruit/personal/PersonalCenter/dynamic/right.vue

@@ -89,14 +89,16 @@ userStore.$subscribe((mutation, state) => {
 
 
 const resumeList = ref([
 const resumeList = ref([
   { name: 'refresh', icon: 'mdi-refresh', title: t('resume.refreshResume'), desc: t('resume.enhanceResumeActivity') },
   { name: 'refresh', icon: 'mdi-refresh', title: t('resume.refreshResume'), desc: t('resume.enhanceResumeActivity') },
-  { name: 'interview', icon: 'mdi-account-multiple-check-outline', title: t('resume.interviewSchedule'), desc: '' },
+  // { name: 'interview', icon: 'mdi-account-multiple-check-outline', title: t('resume.interviewSchedule'), desc: '' },
+  { name: 'order', icon: 'mdi-clipboard-list-outline', title: '我的订单', desc: '交易订单' },
 ])
 ])
 const showInterviewSchedule = ref(false)
 const showInterviewSchedule = ref(false)
 const resumeClick = async (val) => {
 const resumeClick = async (val) => {
-  if (val.name === 'interview') {
-    await getUserInterviewInvitePageList() // 获取最新数据
-    showInterviewSchedule.value = true
-  }
+  // if (val.name === 'interview') {
+  //   await getUserInterviewInvitePageList() // 获取最新数据
+  //   showInterviewSchedule.value = true
+  // }
+  if (val.name === 'order') router.push('/recruit/personal/tradeOrder')
 }
 }
 
 
 // 获取附件
 // 获取附件