u
This commit is contained in:
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)
|
||||
|
||||
@@ -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"`
|
||||
}
|
||||
Reference in new issue
Block a user