Update Mitra
This commit is contained in:
@@ -118,7 +118,6 @@ func (b *UserList) ToUserList() []*User {
|
||||
}
|
||||
|
||||
func (u *UserDB) ToUpdatedUser(req User) error {
|
||||
|
||||
if req.Name != "" {
|
||||
u.Name = req.Name
|
||||
}
|
||||
@@ -127,8 +126,12 @@ func (u *UserDB) ToUpdatedUser(req User) error {
|
||||
u.Email = req.Email
|
||||
}
|
||||
|
||||
if *req.PartnerID > 0 {
|
||||
u.PartnerID = req.PartnerID
|
||||
if req.PhoneNumber != "" {
|
||||
u.PhoneNumber = req.PhoneNumber
|
||||
}
|
||||
|
||||
if req.NIK != "" {
|
||||
u.NIK = req.NIK
|
||||
}
|
||||
|
||||
if req.RoleID > 0 {
|
||||
|
||||
+91
-14
@@ -2,13 +2,13 @@ package entity
|
||||
|
||||
import (
|
||||
"furtuna-be/internal/constants/role"
|
||||
"furtuna-be/internal/constants/userstatus"
|
||||
"time"
|
||||
)
|
||||
|
||||
type CreatePartnerRequest struct {
|
||||
Name string `json:"name" validate:"required"`
|
||||
Address string `json:"address"`
|
||||
Username string `json:"username" validate:"required"`
|
||||
FullName string `json:"full_name"`
|
||||
Email string `json:"email"`
|
||||
Password string `json:"password" validate:"required"`
|
||||
@@ -16,6 +16,7 @@ type CreatePartnerRequest struct {
|
||||
PhoneNumber string `json:"phone_number"`
|
||||
BankName string `json:"bank_name"`
|
||||
BankAccountNumber string `json:"bank_account_number"`
|
||||
Status string `json:"status"`
|
||||
BankAccountHolderName string `json:"bank_account_holder_name"`
|
||||
}
|
||||
|
||||
@@ -40,6 +41,35 @@ type Partner struct {
|
||||
AdminEmail string `gorm:"-"`
|
||||
}
|
||||
|
||||
type PartnerUpdate struct {
|
||||
ID int64
|
||||
Email string
|
||||
Name string
|
||||
Status string
|
||||
Address string
|
||||
PhoneNumber string
|
||||
BankName string
|
||||
BankAccountHolderNumber string
|
||||
BankAccountHolderName string
|
||||
NIK string
|
||||
AdminUserID int64
|
||||
AdminName string
|
||||
Password string
|
||||
}
|
||||
|
||||
func (c *PartnerUpdate) ToUserAdmin(partnerID *int64) *User {
|
||||
return &User{
|
||||
ID: c.AdminUserID,
|
||||
Name: c.Name,
|
||||
Password: c.Password,
|
||||
Email: c.Email,
|
||||
NIK: c.NIK,
|
||||
PhoneNumber: c.PhoneNumber,
|
||||
Status: userstatus.UserStatus(c.Status),
|
||||
PartnerID: partnerID,
|
||||
}
|
||||
}
|
||||
|
||||
func (Partner) TableName() string {
|
||||
return "partners"
|
||||
}
|
||||
@@ -77,17 +107,20 @@ func (PartnerDB) TableName() string {
|
||||
|
||||
func (e *PartnerDB) ToPartner() *Partner {
|
||||
return &Partner{
|
||||
ID: e.ID,
|
||||
Name: e.Name,
|
||||
Status: e.Status,
|
||||
Address: e.Address,
|
||||
CreatedAt: e.CreatedAt,
|
||||
UpdatedAt: e.UpdatedAt,
|
||||
CreatedBy: e.CreatedBy,
|
||||
Balance: e.Balance,
|
||||
AdminEmail: e.AdminEmail,
|
||||
AdminPhoneNumber: e.AdminPhoneNumber,
|
||||
AdminName: e.AdminName,
|
||||
ID: e.ID,
|
||||
Name: e.Name,
|
||||
Status: e.Status,
|
||||
Address: e.Address,
|
||||
CreatedAt: e.CreatedAt,
|
||||
UpdatedAt: e.UpdatedAt,
|
||||
CreatedBy: e.CreatedBy,
|
||||
Balance: e.Balance,
|
||||
AdminEmail: e.AdminEmail,
|
||||
AdminPhoneNumber: e.AdminPhoneNumber,
|
||||
AdminName: e.AdminName,
|
||||
BankAccountHolderName: e.BankAccountHolderName,
|
||||
BankName: e.BankName,
|
||||
BankAccountNumber: e.BankAccountNumber,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -113,6 +146,50 @@ func (o *PartnerDB) ToUpdatedPartner(updatedBy int64, req Partner) {
|
||||
if req.Address != "" {
|
||||
o.Address = req.Address
|
||||
}
|
||||
|
||||
if req.BankAccountNumber != "" {
|
||||
o.BankAccountNumber = req.BankAccountNumber
|
||||
}
|
||||
|
||||
if req.BankAccountHolderName != "" {
|
||||
o.BankAccountHolderName = req.BankAccountHolderName
|
||||
}
|
||||
|
||||
if req.Status != "" {
|
||||
o.Status = req.Status
|
||||
}
|
||||
}
|
||||
|
||||
func (o *PartnerDB) ToUpdatedPartnerData(updatedBy int64, req PartnerUpdate) {
|
||||
o.UpdatedBy = updatedBy
|
||||
|
||||
if req.Name != "" {
|
||||
o.Name = req.Name
|
||||
}
|
||||
|
||||
if req.Status != "" {
|
||||
o.Status = req.Status
|
||||
}
|
||||
|
||||
if req.Address != "" {
|
||||
o.Address = req.Address
|
||||
}
|
||||
|
||||
if req.BankName != "" {
|
||||
o.BankName = req.BankName
|
||||
}
|
||||
|
||||
if req.BankAccountHolderNumber != "" {
|
||||
o.BankAccountNumber = req.BankAccountHolderNumber
|
||||
}
|
||||
|
||||
if req.BankAccountHolderName != "" {
|
||||
o.BankAccountHolderName = req.BankAccountHolderName
|
||||
}
|
||||
|
||||
if req.Status != "" {
|
||||
o.Status = req.Status
|
||||
}
|
||||
}
|
||||
|
||||
func (o *PartnerDB) SetDeleted(updatedBy int64) {
|
||||
@@ -128,7 +205,7 @@ func (c *CreatePartnerRequest) ToUserAdmin(partnerID int64) *User {
|
||||
Email: c.Email,
|
||||
NIK: c.NIK,
|
||||
PhoneNumber: c.PhoneNumber,
|
||||
Status: "active",
|
||||
Status: "Active",
|
||||
RoleID: role.PartnerAdmin,
|
||||
PartnerID: &partnerID,
|
||||
}
|
||||
@@ -141,7 +218,7 @@ func (e *CreatePartnerRequest) ToPartnerDB(createdBy int64) *PartnerDB {
|
||||
return &PartnerDB{
|
||||
Partner: Partner{
|
||||
Name: e.Name,
|
||||
Status: "inactive",
|
||||
Status: e.Status,
|
||||
Address: e.Address,
|
||||
CreatedBy: createdBy,
|
||||
CreatedAt: time.Now(),
|
||||
|
||||
Reference in New Issue
Block a user