@@ -7,8 +7,9 @@ import request from "@/utils/request.js"; | |||
* @returns data | |||
*/ | |||
export function modeListApi(sex, pageNum, pageSize, videoType) { | |||
let api = localStorage.getItem("AccessToken") ? '/api/personPatch/loginList' : '/api/personPatch/list' | |||
return request({ | |||
url: `/api/personPatch/list?sex=${sex}&pageNum=${pageNum}&pageSize=${pageSize}&videoType=${videoType}`, | |||
url: `${api}?sex=${sex}&pageNum=${pageNum}&pageSize=${pageSize}&videoType=${videoType}`, | |||
method: 'get' | |||
}) | |||
} | |||
@@ -19,8 +20,9 @@ export function modeListApi(sex, pageNum, pageSize, videoType) { | |||
* @returns data | |||
*/ | |||
export function voiceTotalApi() { | |||
let api = localStorage.getItem("AccessToken") ? '/api/voiceMould/loginVoiceTotal' : '/api/voiceMould/voiceTotal' | |||
return request({ | |||
url: `api/voiceMould/voiceTotal`, | |||
url: api, | |||
method: 'GET', | |||
}) | |||
} | |||
@@ -2,15 +2,49 @@ import request from "@/utils/request.js"; | |||
/** | |||
* @description 获取我的列表 | |||
* @description 充值订单 | |||
* @params | |||
* @returns | |||
*/ | |||
export function getData() { | |||
export function rechargeListApi(data) { | |||
return request({ | |||
url: ``, | |||
url: `/api/productOrder/myPaiedOrders?projectType=${data.projectType}&pageNum=${data.pageNum}&pageSize=${data.pageSize}`, | |||
method: 'get' | |||
}) | |||
} | |||
/** | |||
* @description 获取详情 | |||
* @params | |||
* @returns | |||
*/ | |||
export function getDetailApi(id) { | |||
return request({ | |||
url: `/api/userVideo/findById?id=${id}`, | |||
method: 'get' | |||
}) | |||
} | |||
/** | |||
* @description 扣币详情 | |||
* @params | |||
* @returns | |||
*/ | |||
export function coindedApi(data) { | |||
return request({ | |||
url: `/api/userVideo/list?videoStatus=2&pageNum=${data.pageNum}&pageSize=${data.pageSize}`, | |||
method: 'get' | |||
}) | |||
} | |||
/** | |||
* @description 当前币值 | |||
* @params | |||
* @returns | |||
*/ | |||
export function getUserPoinsApi() { | |||
return request({ | |||
url: `/api/user/getUserPoins`, | |||
method: 'get' | |||
}) | |||
} |
@@ -66,10 +66,16 @@ | |||
<el-menu-item index="1-2">{{ $t("cooperate.privatization.title") }} </el-menu-item> | |||
</el-menu-item-group> | |||
</el-sub-menu> | |||
<el-menu-item index="2" @click="router.push('/my')"> | |||
<el-icon><icon-menu /></el-icon> | |||
<span>我的</span> | |||
</el-menu-item> | |||
<el-sub-menu index="2"> | |||
<template #title> | |||
<el-icon><location /></el-icon> | |||
<span>我的</span> | |||
</template> | |||
<el-menu-item-group> | |||
<el-menu-item index="2-1" @click="router.push('/myRecharge')">充值订单</el-menu-item> | |||
<el-menu-item index="2-2">扣币订单</el-menu-item> | |||
</el-menu-item-group> | |||
</el-sub-menu> | |||
</el-menu> | |||
</div> | |||
</div> | |||
@@ -128,14 +128,14 @@ export const constantRoutes: RouteRecordRaw[] = [ | |||
},{ | |||
path: "/", | |||
component: Layout, | |||
redirect: "/my", | |||
redirect: "/myRecharge", | |||
children: [ | |||
{ | |||
path: "my", | |||
component: () => import("@/views/my/index.vue"), | |||
name: "my", | |||
path: "/myRecharge", | |||
component: () => import("@/views/my/recharge.vue"), | |||
name: "myRecharge", | |||
meta: { | |||
title: "my", | |||
title: "myRecharge", | |||
icon: "homepage", | |||
affix: true, | |||
name: "my.title", | |||
@@ -13,6 +13,7 @@ declare module '@vue/runtime-core' { | |||
CutImg1: typeof import('./../components/cutImg1.vue')['default'] | |||
EditPosition: typeof import('./../components/EditPosition.vue')['default'] | |||
'EditPosition copy': typeof import('./../components/EditPosition copy.vue')['default'] | |||
ElAlert: typeof import('element-plus/es')['ElAlert'] | |||
ElButton: typeof import('element-plus/es')['ElButton'] | |||
ElDialog: typeof import('element-plus/es')['ElDialog'] | |||
ElDropdown: typeof import('element-plus/es')['ElDropdown'] | |||
@@ -294,7 +294,7 @@ | |||
@click="clickModelItem(item)" | |||
> | |||
<img class="boxCentreImg" :src="item.coverImg" alt="" /> | |||
<div class="subscript">定制分身</div> | |||
<div v-if="item.customized === 1" class="subscript">定制分身</div> | |||
</div> | |||
</div> | |||
</div> | |||
@@ -797,6 +797,10 @@ const modelId = ref(null); // 选中模版的id | |||
async function getModeList(sex, pageNum, pageSize, videoType) { | |||
try { | |||
const res = await modeListApi(sex, pageNum, pageSize, videoType); | |||
// 排序 定制分身在前 | |||
res.data.list.sort(function(a, b){ | |||
return a.customized > b.customized ? 1 : -1 | |||
}) | |||
modeList.value = res.data.list; | |||
overLoadModel.value = false; | |||
} catch (error) { | |||
@@ -1,43 +0,0 @@ | |||
<template> | |||
<el-table :data="tableData" stripe style="width: 100%"> | |||
<el-table-column prop="date" label="我的充值订单" width="180" /> | |||
<el-table-column prop="name" label="扣币订单" width="180" /> | |||
<el-table-column prop="address" label="当前币值" /> | |||
</el-table> | |||
</template> | |||
<script lang="ts" setup> | |||
import { getData } from "@/apis/my"; | |||
const tableData = [ | |||
{ | |||
date: '2016-05-03', | |||
name: 'Tom', | |||
address: 'No. 189, Grove St, Los Angeles', | |||
}, | |||
{ | |||
date: '2016-05-02', | |||
name: 'Tom', | |||
address: 'No. 189, Grove St, Los Angeles', | |||
}, | |||
{ | |||
date: '2016-05-04', | |||
name: 'Tom', | |||
address: 'No. 189, Grove St, Los Angeles', | |||
}, | |||
{ | |||
date: '2016-05-01', | |||
name: 'Tom', | |||
address: 'No. 189, Grove St, Los Angeles', | |||
}, | |||
] | |||
const packageList = ref([]); | |||
async function getPackageList() { | |||
const res = await getData(); | |||
packageList.value = res.data; | |||
} | |||
onMounted(async () => { | |||
getPackageList(); | |||
// createOrderFunc(); | |||
}); | |||
</script> |
@@ -0,0 +1,147 @@ | |||
<template> | |||
<div class="page justify-around"> | |||
<el-alert :title="`当前币值:${currentValue}`" type="success" :closable="false" /> | |||
<el-table :data="tableData" style="width: 100%; height: 90%" size="large" align="center" border> | |||
<el-table-column | |||
prop="title" | |||
label="名称" | |||
align="center" | |||
/> | |||
<el-table-column | |||
prop="address" | |||
label="图片" | |||
align="center" | |||
/> | |||
<el-table-column | |||
prop="createTime" | |||
label="创建时间" | |||
align="center" | |||
> | |||
<template #default="scope"> | |||
{{ getDate(scope.row.createTime) }} | |||
</template> | |||
</el-table-column> | |||
<el-table-column | |||
fixed="right" | |||
:label="$t('keyMangage.operations')" | |||
width="400" | |||
align="center" | |||
> | |||
<template #default="scope"> | |||
<el-button link type="primary" size="small">查看</el-button> | |||
</template> | |||
</el-table-column> | |||
</el-table> | |||
<div class="pagination"> | |||
<el-pagination | |||
v-model:current-page="pageNum" | |||
v-model:page-size="pageSize" | |||
:page-sizes="[10, 50, 100]" | |||
:small="false" | |||
:disabled="false" | |||
:background="true" | |||
layout="total, sizes, prev, pager, next, jumper" | |||
:total="total" | |||
@size-change="handleSizeChange" | |||
@current-change="handleCurrentChange" | |||
/> | |||
</div> | |||
<el-dialog v-model="dialogVisible" title="查看详情" width="40%" :before-close="handleClose" > | |||
<detail @close="handleClose"></detail> | |||
</el-dialog> | |||
</div> | |||
</template> | |||
<!-- videoType==1为竖,==2为横 --> | |||
<script setup> | |||
//#region 导入 | |||
import { rechargeListApi, getDetailApi, getUserPoinsApi, coindedApi } from '@/apis/my.js' | |||
import dayjs from "dayjs"; | |||
import detail from './detail.vue' | |||
const tableData = ref([]); | |||
const pageNum = ref(1); | |||
const pageSize = ref(10); | |||
const total = ref(0); | |||
const getDate = (val) => { | |||
return dayjs(val).format("YYYY-MM-DD"); | |||
}; | |||
const handleSizeChange = (val) => { | |||
pageSize.value = val; | |||
getListData(pageNum.value, pageSize.value); | |||
}; | |||
const handleCurrentChange = (val) => { | |||
pageNum.value = val; | |||
getListData(pageNum.value, pageSize.value); | |||
}; | |||
const getListData = async (PageNum, PageSize) => { | |||
try { | |||
let data = { | |||
projectType: '', | |||
pageNum: 1, | |||
pageSize: 10 | |||
} | |||
const res = await rechargeListApi(data); | |||
tableData.value = res.data.list; | |||
total.value = res.data.total * 1; | |||
} catch (error) { | |||
console.log(error, "err"); | |||
} | |||
}; | |||
// 当前币值 | |||
const currentValue = ref('') | |||
function currentValFn() { | |||
getUserPoinsApi().then(res => { | |||
currentValue.value = res.data | |||
}) | |||
} | |||
// 查看详情 | |||
const dialogVisible = ref(false) | |||
onMounted(() => { | |||
getListData(1, 10); | |||
currentValFn() | |||
}); | |||
</script> | |||
<style lang="scss" scoped> | |||
.page { | |||
height: calc(100vh - 80px); | |||
// height: calc(100vh - 80px); | |||
background-color: #ffffff; | |||
border-radius: 30px 0 0 0; | |||
overflow: hidden; | |||
padding: 10vh; | |||
.addbtn { | |||
margin-bottom: 2vh; | |||
} | |||
.formData { | |||
padding: 5vh 3vh; | |||
} | |||
.pagination { | |||
position: fixed; | |||
left: 55%; | |||
bottom: 8vh; | |||
transform: translateX(-50%); | |||
border-radius: 5px; | |||
padding: 10px 20px; | |||
z-index: 99; | |||
transition: all 0.3s; | |||
cursor: pointer; | |||
&:hover { | |||
background-color: #b8b8b873; | |||
} | |||
} | |||
} | |||
</style> |
@@ -2200,6 +2200,13 @@ decode-uri-component@^0.2.0: | |||
resolved "https://registry.npmmirror.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz" | |||
integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== | |||
decompress-response@^6.0.0: | |||
version "6.0.0" | |||
resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz" | |||
integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== | |||
dependencies: | |||
mimic-response "^3.1.0" | |||
dedent@0.7.0: | |||
version "0.7.0" | |||
resolved "https://registry.npmmirror.com/dedent/-/dedent-0.7.0.tgz" | |||
@@ -3131,6 +3138,17 @@ glob@^7.1.3, glob@7.2.3: | |||
once "^1.3.0" | |||
path-is-absolute "^1.0.0" | |||
glob@^8.0.1: | |||
version "8.1.0" | |||
resolved "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz" | |||
integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== | |||
dependencies: | |||
fs.realpath "^1.0.0" | |||
inflight "^1.0.4" | |||
inherits "2" | |||
minimatch "^5.0.1" | |||
once "^1.3.0" | |||
global-dirs@^0.1.1: | |||
version "0.1.1" | |||
resolved "https://registry.npmmirror.com/global-dirs/-/global-dirs-0.1.1.tgz" | |||
@@ -3727,6 +3745,11 @@ js-base64@^2.1.9: | |||
resolved "https://registry.npmmirror.com/js-base64/-/js-base64-2.6.4.tgz" | |||
integrity sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ== | |||
js-binary-schema-parser@^2.0.2: | |||
version "2.0.3" | |||
resolved "https://registry.npmjs.org/js-binary-schema-parser/-/js-binary-schema-parser-2.0.3.tgz" | |||
integrity sha512-xezGJmOb4lk/M1ZZLTR/jaBHQ4gG/lqQnJqdIv4721DMggsa1bDVlHXNeHYogaIEHD9vCRv0fcL4hMA+Coarkg== | |||
js-sdsl@^4.1.4: | |||
version "4.4.0" | |||
resolved "https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.4.0.tgz" | |||
@@ -4287,6 +4310,11 @@ mimic-fn@^4.0.0: | |||
resolved "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-4.0.0.tgz" | |||
integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== | |||
mimic-response@^3.1.0: | |||
version "3.1.0" | |||
resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz" | |||
integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== | |||
min-indent@^1.0.0: | |||
version "1.0.1" | |||
resolved "https://registry.npmmirror.com/min-indent/-/min-indent-1.0.1.tgz" | |||
@@ -4299,6 +4327,13 @@ minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: | |||
dependencies: | |||
brace-expansion "^1.1.7" | |||
minimatch@^5.0.1: | |||
version "5.1.6" | |||
resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz" | |||
integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== | |||
dependencies: | |||
brace-expansion "^2.0.1" | |||
minimatch@^6.1.6: | |||
version "6.2.0" | |||
resolved "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz" | |||
@@ -4553,7 +4588,7 @@ ohash@^1.1.1: | |||
resolved "https://registry.npmjs.org/ohash/-/ohash-1.1.2.tgz" | |||
integrity sha512-9CIOSq5945rI045GFtcO3uudyOkYVY1nyfFxVQp+9BRgslr8jPNiSSrsFGg/BNTUFOLqx0P5tng6G32brIPw0w== | |||
once@^1.3.0: | |||
once@^1.3.0, once@^1.3.1: | |||
version "1.4.0" | |||
resolved "https://registry.npmmirror.com/once/-/once-1.4.0.tgz" | |||
integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== | |||
@@ -4653,6 +4688,11 @@ parent-module@^1.0.0: | |||
dependencies: | |||
callsites "^3.0.0" | |||
parenthesis@^3.1.5: | |||
version "3.1.8" | |||
resolved "https://registry.npmjs.org/parenthesis/-/parenthesis-3.1.8.tgz" | |||
integrity sha512-KF/U8tk54BgQewkJPvB4s/US3VQY68BRDpH638+7O/n58TpnwiwnOtGIOsT2/i+M78s61BBpeC83STB88d8sqw== | |||
parse-json@^5.0.0: | |||
version "5.2.0" | |||
resolved "https://registry.npmmirror.com/parse-json/-/parse-json-5.2.0.tgz" | |||
@@ -5259,6 +5299,20 @@ signal-exit@^4.0.1: | |||
resolved "https://registry.npmmirror.com/signal-exit/-/signal-exit-4.0.2.tgz" | |||
integrity sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q== | |||
simple-concat@^1.0.0: | |||
version "1.0.1" | |||
resolved "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz" | |||
integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== | |||
simple-get@^4.0.1: | |||
version "4.0.1" | |||
resolved "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz" | |||
integrity sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA== | |||
dependencies: | |||
decompress-response "^6.0.0" | |||
once "^1.3.1" | |||
simple-concat "^1.0.0" | |||
sirv@^2.0.2: | |||
version "2.0.3" | |||
resolved "https://registry.npmmirror.com/sirv/-/sirv-2.0.3.tgz" | |||
@@ -5473,6 +5527,13 @@ string-argv@^0.3.1: | |||
resolved "https://registry.npmmirror.com/string-argv/-/string-argv-0.3.2.tgz" | |||
integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q== | |||
string-split-by@^1.0.0: | |||
version "1.0.0" | |||
resolved "https://registry.npmjs.org/string-split-by/-/string-split-by-1.0.0.tgz" | |||
integrity sha512-KaJKY+hfpzNyet/emP81PJA9hTVSfxNLS9SFTWxdCnnW1/zOOwiV248+EfoX7IQFcBaOp4G5YE6xTJMF+pLg6A== | |||
dependencies: | |||
parenthesis "^3.1.5" | |||
string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: | |||
version "4.2.3" | |||
resolved "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz" | |||
@@ -6241,6 +6302,16 @@ vue-i18n@9: | |||
"@intlify/vue-devtools" "9.2.2" | |||
"@vue/devtools-api" "^6.2.1" | |||
vue-qr@^4.0.9: | |||
version "4.0.9" | |||
resolved "https://registry.npmjs.org/vue-qr/-/vue-qr-4.0.9.tgz" | |||
integrity sha512-pAISV94T0MNEYA3NGjykUpsXRE2QfaNxlu9ZhEL6CERgqNc21hJYuP3hRVzAWfBQlgO18DPmZTbrFerJC3+Ikw== | |||
dependencies: | |||
glob "^8.0.1" | |||
js-binary-schema-parser "^2.0.2" | |||
simple-get "^4.0.1" | |||
string-split-by "^1.0.0" | |||
vue-router@^4.0.13: | |||
version "4.0.13" | |||
resolved "https://registry.npmjs.org/vue-router/-/vue-router-4.0.13.tgz" | |||