|
|
@ -134,23 +134,44 @@ func (impl *BomLstServiceImplement) InsertOne(user *global.User, entity *model.B |
|
|
|
******************************************************************************/ |
|
|
|
func (impl *BomLstServiceImplement) DeleteOne(user *global.User, bomId string, fmatNr string, cmatNr string) error { |
|
|
|
|
|
|
|
|
|
|
|
grmi.Log(user, "/services/me/implments/BomLst.service.impl.go", "DeleteOneBomLst", "删除一个BomLst") |
|
|
|
|
|
|
|
engine := db.Eloquent.Master() |
|
|
|
session := engine.NewSession() |
|
|
|
defer session.Close() |
|
|
|
if err := session.Begin(); err != nil { |
|
|
|
return err |
|
|
|
} |
|
|
|
dao := dal.NewBomLstDAO(session, user.PlantNr, user.UserId) |
|
|
|
headDao := dal.NewBomHeadDAO(session, user.PlantNr, user.UserId) |
|
|
|
record, err := dao.SelectOne(bomId, fmatNr, cmatNr) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return err |
|
|
|
} |
|
|
|
if record == nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("不存在指定记录!") |
|
|
|
} |
|
|
|
err = dao.DeleteOne(bomId, fmatNr, cmatNr) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return err |
|
|
|
} |
|
|
|
lstLi, err := dao.Select([]grmi.Predicate{meta.BomLst_BomId.NewPredicate(grmi.Equal, bomId)}, nil) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return err |
|
|
|
} |
|
|
|
if len(lstLi) == 0 { |
|
|
|
err = headDao.DeleteOne(bomId) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return err |
|
|
|
} |
|
|
|
} |
|
|
|
_ = session.Commit() |
|
|
|
return nil |
|
|
|
} |
|
|
|
|
|
|
|