unit, unit-position,installation-position removes ids

This commit is contained in:
dpurbosakti
2025-11-06 15:48:32 +07:00
parent 42b1b48e36
commit 6ed038eb54
21 changed files with 121 additions and 114 deletions
@@ -175,7 +175,7 @@ func ReadDetail(input e.ReadDetailDto) (*d.Data, error) {
}
func Update(input e.UpdateDto) (*d.Data, error) {
rdDto := e.ReadDetailDto{Id: input.Id}
rdDto := e.ReadDetailDto{Code: &input.Code}
var data *e.InstallationPosition
var err error
@@ -235,7 +235,7 @@ func Update(input e.UpdateDto) (*d.Data, error) {
}
func Delete(input e.DeleteDto) (*d.Data, error) {
rdDto := e.ReadDetailDto{Id: input.Id}
rdDto := e.ReadDetailDto{Code: input.Code}
var data *e.InstallationPosition
var err error
@@ -290,7 +290,7 @@ func Delete(input e.DeleteDto) (*d.Data, error) {
func validateForeignKey(input e.CreateDto) error {
// validate installation_id
if _, err := ui.ReadDetail(ei.ReadDetailDto{Id: *input.Installation_Id}); err != nil {
if _, err := ui.ReadDetail(ei.ReadDetailDto{Code: input.Installation_Code}); err != nil {
return err
}
@@ -17,7 +17,7 @@ func setData[T *e.CreateDto | *e.UpdateDto](input T, data *e.InstallationPositio
inputSrc = &inputTemp.CreateDto
}
data.Installation_Id = inputSrc.Installation_Id
data.Installation_Code = inputSrc.Installation_Code
data.Code = inputSrc.Code
data.Name = inputSrc.Name
data.HeadStatus = inputSrc.HeadStatus
@@ -83,10 +83,10 @@ func ReadDetailData(input e.ReadDetailDto, event *pl.Event, dbx ...*gorm.DB) (*e
}
switch {
case input.Id != 0:
case input.Id != nil:
getData = tx.First(&data, input.Id)
case input.Code != nil && *input.Code != "":
getData = tx.Where("code = ?", *input.Code).First(&data)
getData = tx.Where("\"Code\" = ?", *input.Code).First(&data)
default:
event.Status = "failed"
event.ErrInfo = pl.ErrorInfo{
@@ -175,7 +175,7 @@ func ReadDetail(input e.ReadDetailDto) (*d.Data, error) {
}
func Update(input e.UpdateDto) (*d.Data, error) {
rdDto := e.ReadDetailDto{Id: input.Id}
rdDto := e.ReadDetailDto{Code: &input.Code}
var data *e.UnitPosition
var err error
@@ -235,7 +235,7 @@ func Update(input e.UpdateDto) (*d.Data, error) {
}
func Delete(input e.DeleteDto) (*d.Data, error) {
rdDto := e.ReadDetailDto{Id: input.Id}
rdDto := e.ReadDetailDto{Code: input.Code}
var data *e.UnitPosition
var err error
@@ -290,7 +290,7 @@ func Delete(input e.DeleteDto) (*d.Data, error) {
func validateForeignKey(input e.CreateDto) error {
// validate installation_id
if _, err := uu.ReadDetail(eu.ReadDetailDto{Id: *input.Unit_Id}); err != nil {
if _, err := uu.ReadDetail(eu.ReadDetailDto{Code: &input.Code}); err != nil {
return err
}
@@ -17,7 +17,7 @@ func setData[T *e.CreateDto | *e.UpdateDto](input T, data *e.UnitPosition) {
inputSrc = &inputTemp.CreateDto
}
data.Unit_Id = inputSrc.Unit_Id
data.Unit_Code = inputSrc.Unit_Code
data.Code = inputSrc.Code
data.Name = inputSrc.Name
data.HeadStatus = inputSrc.HeadStatus
@@ -83,7 +83,7 @@ func ReadDetailData(input e.ReadDetailDto, event *pl.Event, dbx ...*gorm.DB) (*e
}
switch {
case input.Id != 0:
case input.Id != nil:
getData = tx.First(&data, input.Id)
case input.Code != nil && *input.Code != "":
getData = tx.Where("code = ?", *input.Code).First(&data)
+2 -2
View File
@@ -166,7 +166,7 @@ func ReadDetail(input e.ReadDetailDto) (*d.Data, error) {
}
func Update(input e.UpdateDto) (*d.Data, error) {
rdDto := e.ReadDetailDto{Id: input.Id}
rdDto := e.ReadDetailDto{Code: &input.Code}
var data *e.Unit
var err error
@@ -222,7 +222,7 @@ func Update(input e.UpdateDto) (*d.Data, error) {
}
func Delete(input e.DeleteDto) (*d.Data, error) {
rdDto := e.ReadDetailDto{Id: input.Id}
rdDto := e.ReadDetailDto{Code: input.Code}
var data *e.Unit
var err error
@@ -17,7 +17,7 @@ func setData[T *e.CreateDto | *e.UpdateDto](input T, data *e.Unit) {
inputSrc = &inputTemp.CreateDto
}
data.Installation_Id = inputSrc.Installation_Id
data.Installation_Code = inputSrc.Installation_Code
data.Code = inputSrc.Code
data.Name = inputSrc.Name
}
+8 -1
View File
@@ -81,9 +81,16 @@ func ReadDetailData(input e.ReadDetailDto, event *pl.Event, dbx ...*gorm.DB) (*e
tx = dg.I
}
if input.Code != nil {
tx = tx.Where("\"Code\" = ?", *input.Code)
}
if input.Id != nil {
tx = tx.Where("\"Id\" = ?", input.Id)
}
if err := tx.
Scopes(gh.Preload(input.Includes)).
First(&data, input.Id).Error; err != nil {
First(&data).Error; err != nil {
if processedErr := pu.HandleReadError(err, event, source, input.Id, data); processedErr != nil {
return nil, processedErr
}