diff --git a/src/apis.js b/src/apis.js index ce68424..cf4eb4d 100644 --- a/src/apis.js +++ b/src/apis.js @@ -432,3 +432,7 @@ export const getPointBookListAPI = async ( export const getPointBookDetailAPI = async (id) => { return request("GET", `/user/score/sheet/detail?id=${id}`); }; + +export const getPractiseDataAPI = async () => { + return request("GET", "/user/score/sheet/statistics"); +}; diff --git a/src/components/EditOption.vue b/src/components/EditOption.vue index 78b2996..53a656a 100644 --- a/src/components/EditOption.vue +++ b/src/components/EditOption.vue @@ -304,7 +304,7 @@ onMounted(async () => { .bowtarget-items > view, .amount-items > view { width: 20vw; - height: 14vw; + height: 12vw; border-radius: 10px; border: 2px solid #eeeeee; margin-bottom: 2vw; diff --git a/src/pages/point-book-create.vue b/src/pages/point-book-create.vue index 2e32310..3965059 100644 --- a/src/pages/point-book-create.vue +++ b/src/pages/point-book-create.vue @@ -3,6 +3,7 @@ import { ref, onMounted, onUnmounted } from "vue"; import Container from "@/components/Container.vue"; import EditOption from "@/components/EditOption.vue"; import SButton from "@/components/SButton.vue"; +import { getPractiseDataAPI } from "@/apis"; const clickable = ref(false); const expandIndex = ref(-1); @@ -10,6 +11,9 @@ const bowType = ref({}); const distance = ref(0); const bowtargetType = ref(""); const amountGroup = ref(""); +const days = ref(0); +const arrows = ref(0); + const onExpandChange = (index, expand) => { if (expandIndex.value !== -1) { expandIndex.value = -1; @@ -59,6 +63,11 @@ onMounted(async () => { distance.value = pointBook.distance; bowtargetType.value = pointBook.bowtargetType; } + const result = await getPractiseDataAPI(); + if (result) { + days.value = result.total_day || 0; + arrows.value = result.total_arrow || 0; + } }); @@ -70,10 +79,26 @@ onMounted(async () => { title="计分本" > - + + + + + {{ days }} + + + 训练天数 + + + + {{ arrows }} + + + 训练箭数 + + { flex-direction: column; align-items: center; } -.container > image { +.container > view:nth-child(2) { + margin: 0 10px; +} +.header { + width: 100%; + height: 27vw; + position: relative; + display: flex; + align-items: center; + color: #ffffffc7; + font-size: 14px; +} +.header > image { + position: absolute; width: 100%; border: 2px solid #fff; box-sizing: border-box; border-radius: 10px; } -.container > view:nth-child(2) { - margin: 0 10px; +.header > view { + position: relative; +} +.header > view:nth-child(2) { + margin-left: 7vw; + margin-right: 7vw; +} +.header > view > view > text:first-child { + font-size: 27px; + font-weight: 500; + margin-right: 5px; + color: #fff; } diff --git a/src/pages/point-book-detail.vue b/src/pages/point-book-detail.vue index 0c37373..f04e9d0 100644 --- a/src/pages/point-book-detail.vue +++ b/src/pages/point-book-detail.vue @@ -62,20 +62,21 @@ onLoad(async (options) => { v-for="(_, index) in groups" :key="index" @click="onSelect(index)" + :style="{ borderColor: selectedIndex === index ? '#FED847' : '#fff' }" > {{ index === 0 ? "全部" : `第${index}组` }} - + /> --> @@ -159,6 +160,8 @@ onLoad(async (options) => { color: transparent; } .tab-bar > view { + box-sizing: border-box; + border: 2px solid #fff; border-radius: 10px; background-color: #fff; width: 24vw; diff --git a/src/pages/point-book-list.vue b/src/pages/point-book-list.vue index 6b6229d..55ee7cd 100644 --- a/src/pages/point-book-list.vue +++ b/src/pages/point-book-list.vue @@ -89,6 +89,7 @@ const toDetailPage = (id) => { > + 暂无数据 { margin-bottom: 0; height: calc(100% - 70px); } +.no-data { + width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center; + color: #999999; + font-size: 14px; +} diff --git a/src/static/app-bg3.png b/src/static/app-bg3.png index 43288cb..8ea821a 100644 Binary files a/src/static/app-bg3.png and b/src/static/app-bg3.png differ