|
|
@@ -18,8 +18,8 @@ import (
|
|
|
"reflect"
|
|
|
)
|
|
|
|
|
|
-func UpdateLeft(leftTableName string, leftDomainCNName string, leftRelationFieldName string,
|
|
|
- rightTableName string, rightDomainCNName string, rightRelationColumnName string) binding.ServiceFunc[any] {
|
|
|
+func UpdateLeft(leftTableName string, leftDomainCNName string, leftRelationFieldName string, leftRelationColumnName string,
|
|
|
+ rightTableName string, rightDomainCNName string) binding.ServiceFunc[any] {
|
|
|
return func(c *api.Context, params request.Params, objects []domain.Object, i *infrastructure.Infrastructure) (any, error) {
|
|
|
object := objects[0]
|
|
|
if object == nil {
|
|
|
@@ -75,8 +75,8 @@ func UpdateLeft(leftTableName string, leftDomainCNName string, leftRelationField
|
|
|
err = database.Transaction(dbExecutor, func(tx database.Executor) error {
|
|
|
err := database.Update(tx, &sql.UpdateExecuteParams{
|
|
|
TableName: rightTableName,
|
|
|
- TableRow: sql.NewTableRow().Add(rightRelationColumnName, ""),
|
|
|
- Conditions: sql.NewConditions().Equal(rightRelationColumnName, leftEntity.GetID()),
|
|
|
+ TableRow: sql.NewTableRow().Add(leftRelationColumnName, ""),
|
|
|
+ Conditions: sql.NewConditions().Equal(leftRelationColumnName, leftEntity.GetID()),
|
|
|
})
|
|
|
if err != nil {
|
|
|
return err
|
|
|
@@ -100,7 +100,7 @@ func UpdateLeft(leftTableName string, leftDomainCNName string, leftRelationField
|
|
|
|
|
|
err = database.Update(tx, &sql.UpdateExecuteParams{
|
|
|
TableName: rightTableName,
|
|
|
- TableRow: sql.NewTableRow().Add(rightRelationColumnName, leftEntity.GetID()),
|
|
|
+ TableRow: sql.NewTableRow().Add(leftRelationColumnName, leftEntity.GetID()),
|
|
|
Conditions: sql.NewConditions().In(entity.ColumnID, rightIDs),
|
|
|
})
|
|
|
if err != nil {
|
|
|
@@ -117,8 +117,8 @@ func UpdateLeft(leftTableName string, leftDomainCNName string, leftRelationField
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-func QueryLeft[RI any](leftTableName string,
|
|
|
- rightTableName string, rightRelationColumnName string) binding.ServiceFunc[response.InfosData[RI]] {
|
|
|
+func QueryLeft[RI any](leftTableName string, leftRelationColumnName string,
|
|
|
+ rightTableName string) binding.ServiceFunc[response.InfosData[RI]] {
|
|
|
return func(c *api.Context, params request.Params, objects []domain.Object, i *infrastructure.Infrastructure) (response.InfosData[RI], error) {
|
|
|
errResponse := response.InfosData[RI]{
|
|
|
Infos: make([]RI, 0),
|
|
|
@@ -160,7 +160,7 @@ func QueryLeft[RI any](leftTableName string,
|
|
|
|
|
|
rightResults, totalCount, err := database.Query(dbExecutor, &sql.QueryExecuteParams{
|
|
|
TableName: rightTableName,
|
|
|
- Conditions: sql.NewConditions().Equal(rightRelationColumnName, leftEntity.GetID()),
|
|
|
+ Conditions: sql.NewConditions().Equal(leftRelationColumnName, leftEntity.GetID()),
|
|
|
})
|
|
|
if err != nil && !database.IsErrorDBRecordNotExist(err) {
|
|
|
return errResponse, err
|
|
|
@@ -180,8 +180,8 @@ func QueryLeft[RI any](leftTableName string,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-func UpdateRight(rightTableName string, rightRelationFieldName string, rightRelationColumnName string,
|
|
|
- leftTableName string, leftDomainCNName string) binding.ServiceFunc[any] {
|
|
|
+func UpdateRight(rightTableName string, rightRelationFieldName string,
|
|
|
+ leftTableName string, leftDomainCNName string, leftRelationColumnName string) binding.ServiceFunc[any] {
|
|
|
return func(c *api.Context, params request.Params, objects []domain.Object, i *infrastructure.Infrastructure) (any, error) {
|
|
|
object := objects[0]
|
|
|
if object == nil {
|
|
|
@@ -239,7 +239,7 @@ func UpdateRight(rightTableName string, rightRelationFieldName string, rightRela
|
|
|
|
|
|
err = database.Update(dbExecutor, &sql.UpdateExecuteParams{
|
|
|
TableName: rightTableName,
|
|
|
- TableRow: sql.NewTableRow().Add(rightRelationColumnName, leftID),
|
|
|
+ TableRow: sql.NewTableRow().Add(leftRelationColumnName, leftID),
|
|
|
Conditions: sql.NewConditions().Equal(entity.ColumnID, rightEntity.GetID()),
|
|
|
})
|
|
|
if err != nil {
|
|
|
@@ -314,7 +314,7 @@ func QueryRight[LI any](rightTableName string, rightRelationFieldName string, le
|
|
|
|
|
|
type ConditionFieldCallback func(conditions *sql.Conditions, fieldName string, columnName string, value any) (hasDeal bool, err error)
|
|
|
|
|
|
-func QueryRightWithLeftInfo[RI any, LI any](rightTableName string, rightRelationColumnName string, rightFieldCallback ConditionFieldCallback, leftTableName string) binding.ServiceFunc[response.InfosData[map[string]any]] {
|
|
|
+func QueryRightWithLeftInfo[RI any, LI any](rightTableName string, rightFieldCallback ConditionFieldCallback, leftTableName string, leftRelationColumnName string) binding.ServiceFunc[response.InfosData[map[string]any]] {
|
|
|
return func(c *api.Context, params request.Params, objects []domain.Object, i *infrastructure.Infrastructure) (response.InfosData[map[string]any], error) {
|
|
|
errResponse := response.InfosData[map[string]any]{
|
|
|
Infos: make([]map[string]any, 0),
|
|
|
@@ -385,7 +385,7 @@ func QueryRightWithLeftInfo[RI any, LI any](rightTableName string, rightRelation
|
|
|
|
|
|
leftIDs := make([]string, 0)
|
|
|
for _, rightResult := range rightResults {
|
|
|
- leftID := rightResult.ColumnValueString(rightRelationColumnName)
|
|
|
+ leftID := rightResult.ColumnValueString(leftRelationColumnName)
|
|
|
if strutils.IsStringNotEmpty(leftID) {
|
|
|
leftIDs = append(leftIDs, leftID)
|
|
|
}
|
|
|
@@ -417,7 +417,7 @@ func QueryRightWithLeftInfo[RI any, LI any](rightTableName string, rightRelation
|
|
|
return errResponse, err
|
|
|
}
|
|
|
|
|
|
- leftID := rightResult.ColumnValueString(rightRelationColumnName)
|
|
|
+ leftID := rightResult.ColumnValueString(leftRelationColumnName)
|
|
|
if strutils.IsStringEmpty(leftID) {
|
|
|
infos[index] = map[string]any{
|
|
|
"self": rightInfo,
|