Add expense CRUD
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
package transformer
|
||||
|
||||
import (
|
||||
"apskel-pos-be/internal/contract"
|
||||
"apskel-pos-be/internal/models"
|
||||
)
|
||||
|
||||
func CreateExpenseRequestToModel(req *contract.CreateExpenseRequest) *models.CreateExpenseRequest {
|
||||
return &models.CreateExpenseRequest{
|
||||
Receiver: req.Receiver,
|
||||
TransactionDate: req.TransactionDate,
|
||||
CodeNumber: req.CodeNumber,
|
||||
ChartOfAccountID: req.ChartOfAccountID,
|
||||
OutletID: req.OutletID,
|
||||
Description: req.Description,
|
||||
Tax: req.Tax,
|
||||
Total: req.Total,
|
||||
}
|
||||
}
|
||||
|
||||
func UpdateExpenseRequestToModel(req *contract.UpdateExpenseRequest) *models.UpdateExpenseRequest {
|
||||
return &models.UpdateExpenseRequest{
|
||||
Receiver: req.Receiver,
|
||||
TransactionDate: req.TransactionDate,
|
||||
CodeNumber: req.CodeNumber,
|
||||
ChartOfAccountID: req.ChartOfAccountID,
|
||||
OutletID: req.OutletID,
|
||||
Description: req.Description,
|
||||
Tax: req.Tax,
|
||||
Total: req.Total,
|
||||
Reserved1: req.Reserved1,
|
||||
}
|
||||
}
|
||||
|
||||
func ListExpenseRequestToModel(req *contract.ListExpenseRequest) *models.ListExpenseRequest {
|
||||
return &models.ListExpenseRequest{
|
||||
Page: req.Page,
|
||||
Limit: req.Limit,
|
||||
Search: req.Search,
|
||||
}
|
||||
}
|
||||
|
||||
func ExpenseModelResponseToResponse(expense *models.ExpenseResponse) *contract.ExpenseResponse {
|
||||
return &contract.ExpenseResponse{
|
||||
ID: expense.ID,
|
||||
OrganizationID: expense.OrganizationID,
|
||||
OutletID: expense.OutletID,
|
||||
Receiver: expense.Receiver,
|
||||
TransactionDate: expense.TransactionDate,
|
||||
CodeNumber: expense.CodeNumber,
|
||||
ChartOfAccountID: expense.ChartOfAccountID,
|
||||
ChartOfAccountName: expense.ChartOfAccountName,
|
||||
Description: expense.Description,
|
||||
Tax: expense.Tax,
|
||||
Total: expense.Total,
|
||||
Reserved1: expense.Reserved1,
|
||||
CreatedAt: expense.CreatedAt,
|
||||
UpdatedAt: expense.UpdatedAt,
|
||||
}
|
||||
}
|
||||
|
||||
func ExpenseModelResponsesToResponses(expenses []*models.ExpenseResponse) []contract.ExpenseResponse {
|
||||
if expenses == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
responses := make([]contract.ExpenseResponse, len(expenses))
|
||||
for i, expense := range expenses {
|
||||
response := ExpenseModelResponseToResponse(expense)
|
||||
if response != nil {
|
||||
responses[i] = *response
|
||||
}
|
||||
}
|
||||
return responses
|
||||
}
|
||||
Reference in New Issue
Block a user