This commit is contained in:
oneao committed 2026-03-04 22:22:07 +08:00
1 parent 34240d2e16
commit bf350d8d35
21 files changed
+670 -304

No files matched your search

@@ -5,6 +5,7 @@ import (
"allapp/api/types"
"allapp/db"
"allapp/db/repo"
"allapp/utils/errorx"
"allapp/utils/pgtypex"
"allapp/utils/requestx"
"allapp/utils/responsex"
@@ -57,6 +58,7 @@ func ListFinanceRecords(c fiber.Ctx) error {
RecordTime: pgtypex.TimePtrToPgDate(startTime),
RecordTime_2: pgtypex.TimePtrToPgDate(endTime),
Column4: categoryId,
Column5: dto.CategoryType,
})
if err != nil {
@@ -131,7 +133,7 @@ func UpdateFinanceRecord(c fiber.Ctx) error {
}
err = db.Queries.UpdateFinanceRecord(c.Context(), repo.UpdateFinanceRecordParams{
ID: uniqueid.NextId(),
ID: dto.Id,
CategoryID: dto.CategoryId,
Amount: pgtypex.StringToNumeric(dto.Amount),
Remark: pgtypex.StringToText(dto.Remark),
@@ -161,3 +163,38 @@ func DeleteFinanceRecord(c fiber.Ctx) error {
return responsex.OK(c, nil)
}
// GetFinanceRecordDetail 删除记账记录
func GetFinanceRecordDetail(c fiber.Ctx) error {
dto := new(types.FinanceRecordDetailDTO)
if err := requestx.BindAndValidate(c, dto); err != nil {
return err
}
recordDetail, err := db.Queries.GetFinanceRecordDetail(c.Context(), dto.Id)
if err != nil {
if errorx.IsNotFound(err) {
return responsex.Error(c, "该条记录不存在")
}
return err
}
vo := new(types.FinanceRecordDetailVO)
vo.Id = recordDetail.ID
vo.CategoryId = recordDetail.CategoryID
vo.Amount = pgtypex.NumericToString(recordDetail.Amount)
vo.RecordTime = pgtypex.DateToString(recordDetail.RecordTime)
vo.Remark = pgtypex.TextToString(recordDetail.Remark)
vo.CreateTime = pgtypex.TimestamptzToMillis(recordDetail.CreateTime)
vo.CreateMemberId = recordDetail.CreateBy
vo.CreateMemberName = pgtypex.TextToString(recordDetail.CreateMemberName)
vo.UpdateTime = pgtypex.TimestamptzToMillis(recordDetail.UpdateTime)
vo.UpdateMemberId = recordDetail.UpdateBy
vo.UpdateMemberName = pgtypex.TextToString(recordDetail.UpdateMemberName)
return responsex.OK(c, vo)
}
@@ -52,6 +52,7 @@ func SetupRouters(app *fiber.App) {
financeRouter.Post("/record/create", finance.CreateFinanceRecord)
financeRouter.Post("/record/update", finance.UpdateFinanceRecord)
financeRouter.Post("/record/delete", finance.DeleteFinanceRecord)
financeRouter.Post("/record/detail", finance.GetFinanceRecordDetail)
// authGroup.Get("/user/profile", user.GetProfile)
// spaceGroup.Get("/space/info", space.GetInfo)
+22 -3
View File
@@ -63,9 +63,10 @@ type FinanceRecord struct {
}
type ListFinanceRecordsDTO struct {
StartTime string `json:"start_time"`
EndTime string `json:"end_time"`
CategoryId int64 `json:"category_id"`
StartTime string `json:"start_time"`
EndTime string `json:"end_time"`
CategoryId int64 `json:"category_id"`
CategoryType int16 `json:"category_type"`
}
type ListFinanceRecordsVO struct {
@@ -93,3 +94,21 @@ type UpdateFinanceRecordDTO struct {
type DeleteFinanceRecordDTO struct {
Id int64 `json:"id" validate:"required"`
}
type FinanceRecordDetailDTO struct {
Id int64 `json:"id" validate:"required"`
}
type FinanceRecordDetailVO struct {
Id int64 `json:"id"`
CategoryId int64 `json:"category_id"`
Amount string `json:"amount"`
RecordTime string `json:"record_time"`
Remark string `json:"remark"`
CreateTime int64 `json:"create_time"`
CreateMemberId int64 `json:"create_member_id"`
CreateMemberName string `json:"create_member_name"`
UpdateTime int64 `json:"update_time"`
UpdateMemberId int64 `json:"update_member_id"`
UpdateMemberName string `json:"update_member_name"`
}