Browse Source

单个记账数据

john 8 months ago
parent
commit
67ca72f5a6

+ 7 - 0
frontEndMobile/src/api/api.ts

@@ -78,3 +78,10 @@ export const getAllType = async (book_id: string): Promise<User> => {
   const response = await http.get<User>(`/api/v1/types?book_id=${book_id}`,)
   return response.data
 }
+
+
+// 添加数据
+export const getAllRecordyDate = async (book_id: string, time: string): Promise<User> => {
+  const response = await http.get<User>(`/api/v1/record/${book_id}/${time}`)
+  return response.data
+}

+ 5 - 5
frontEndMobile/src/components/RecordInRow.vue

@@ -5,10 +5,10 @@
     class="records_time_box"
   >
     <div class="time-box">
-      <div>11月30日</div>
+      <div>{{ item.time }}</div>
       <div>
-        <span>收入: 888</span>
-        <span>支出: 888</span>
+        <span>收入: 0</span>
+        <span>支出: {{ item.totalFee }}</span>
       </div>
     </div>
     <!-- 日期 -->
@@ -17,8 +17,8 @@
       class="record-box"
       :key="`${yearStr}_${monthlyStr}_${index}_${recordIndex}`"
     >
-      <div>零食</div>
-      <div>-8</div>
+      <div>{{ record.remark }}</div>
+      <div>-{{ record.total_fee }}</div>
     </div>
   </div>
 </template>

+ 52 - 7
frontEndMobile/src/views/AccountLogPage.vue

@@ -5,22 +5,36 @@
       @change="calendarChange"
       show-arrow
     />
-  </div>
-  <van-sticky :offset-bottom="10" position="bottom" class="add-box">
-    <div class="add-bg" @click="toAdd">
-      <van-icon name="add-o" size="45" />
+    <!-- 时间列表 -->
+    <div class="records-box">
+      <RecordInRow
+        :time_record_list="time_record_list"
+        :monthlyStr="monthlyStr"
+        :yearStr="yearStr"
+      ></RecordInRow>
+    </div>
+    <div :offset-bottom="10" position="bottom" class="add-box">
+      <div class="add-bg" @click="toAdd">
+        <van-icon name="add-o" size="45" />
+      </div>
     </div>
-  </van-sticky>
+  </div>
 </template>
 
 <script setup>
 import { watch, ref, onMounted } from 'vue'
 import dayjs from 'dayjs'
-import { loginUser, getUserInfo } from '@/api/api.ts'
+import { loginUser, getUserInfo, getAllRecordyDate } from '@/api/api.ts'
 import { useRouter, useRoute } from 'vue-router'
+import RecordInRow from '@/components/RecordInRow.vue'
 const router = useRouter()
 const route = useRoute()
-
+const userDate = ref('')
+const yearStr = ref('')
+const monthlyStr = ref('')
+import { useCommonStore } from '@/store/common'
+const commonStore = useCommonStore()
+const time_record_list = ref([])
 
 async function getuserToken() {
   const res = await loginUser({
@@ -38,10 +52,38 @@ async function getuserInfo() {
 
 onMounted(() => {
   console.log('home onShow')
+  commonStore.initBook()
 })
 
 const calendarChange = (date) => {
   console.log(40, dayjs(date).format('YYYY-MM-DD'))
+  userDate.value = dayjs(date).format('YYYY-MM-DD')
+  yearStr.value = dayjs(date).format('YYYY')
+  monthlyStr.value = dayjs(date).format('MM')
+}
+
+watch(userDate, () => {
+  setTimeout(() => {
+    getAllRecordyDateFn()
+  })
+})
+
+const getAllRecordyDateFn = async () => {
+  const res = await getAllRecordyDate(commonStore.bookInfo.id, userDate.value)
+  console.log(59, res)
+  let totalFee = 0
+  res.forEach((element) => {
+    totalFee += Number(element.total_fee)
+  })
+  console.log(64, totalFee)
+
+  time_record_list.value = [
+    {
+      time: userDate,
+      totalFee,
+      record_list: res
+    }
+  ]
 }
 
 const toAdd = () => {
@@ -58,6 +100,9 @@ const toAdd = () => {
 .add-box {
   text-align: right;
   padding-right: 12px;
+  position: fixed;
+  bottom: 30px;
+  right: 12px;
   .add-bg {
     border-radius: 50%;
     background-color: aqua;

+ 1 - 0
frontEndMobile/src/views/AddAccountLogPage.vue

@@ -159,6 +159,7 @@ const onSubmit = async (values) => {
     remark: values.remark,
     files: files.value.map((elm) => elm.file_id)
   })
+  router.back()
 }
 
 function setTypes(tag) {

+ 3 - 0
node_expores/router/record/index.js

@@ -117,7 +117,10 @@ router.get("/about", function (req, res) {
 router.get("/:book_id/:time", async function (req, res) {
   const time = req.params.time; // 获取 fileId 参数
   const book_id = req.params.book_id; // 获取 fileId 参数
+  console.log(120, time, book_id);
   const recordsInfoRes = await getRecordsInfoByTime(time, book_id);
+  console.log(121, recordsInfoRes);
+
 
   res.json({
     code: 200,