|
|
@ -220,7 +220,12 @@ func (impl *PackOrderDAOImplement) SelectAndPaging(paging *grmi.Paging, predicat |
|
|
|
|
|
|
|
parameters := []interface{}{impl.plantNr} |
|
|
|
where := fmt.Sprintf("%s = ?", meta.PackOrder_PlantNr.ColumnName) |
|
|
|
|
|
|
|
condition := fmt.Sprintf("%s = %s and %s = %s", |
|
|
|
meta.PackOrder_PlantNr.ColumnName, |
|
|
|
meta.PackOrderStatus_PlantNr.ColumnName, |
|
|
|
meta.PackOrder_PackOrderId.ColumnName, |
|
|
|
meta.PackOrderStatus_PackOrderId.ColumnName) |
|
|
|
joinStr := fmt.Sprintf(" left join %s on %s ", meta.PackOrderStatus.TableName, condition) |
|
|
|
session := impl.session.Table(impl.meta.TableName) |
|
|
|
if predicates != nil { |
|
|
|
for _, predicate := range predicates { |
|
|
@ -248,13 +253,19 @@ func (impl *PackOrderDAOImplement) SelectAndPaging(paging *grmi.Paging, predicat |
|
|
|
} |
|
|
|
} |
|
|
|
parameters = append(parameters, paging.Offset(), paging.Size) |
|
|
|
data := make([]model.PackOrder, 0, 10) |
|
|
|
data := make([]model.PackOrderWithStatus, 0, 10) |
|
|
|
where = " where " + where |
|
|
|
err = impl.session.Table(impl.meta.TableName).SQL("select * from ["+impl.meta.TableName+"]"+where+orderBy+" offset ? row fetch next ? row only", parameters...).Find(&data) |
|
|
|
err = impl.session.Table(impl.meta.TableName).SQL(fmt.Sprintf("select %s.*,%s.* from [", meta.PackOrder.TableName, meta.PackOrderStatus.TableName)+impl.meta.TableName+"]" + joinStr +where+orderBy+" offset ? row fetch next ? row only", parameters...).Find(&data) |
|
|
|
if err != nil { |
|
|
|
return grmi.EmptyPagingResult, err |
|
|
|
} |
|
|
|
return grmi.PagingResult{Records: data, Count: count, PageNumber: paging.Number, PageSize: paging.Size}, nil |
|
|
|
packOrderLi := make([]model.PackOrder, 0, len(data)) |
|
|
|
for _, item := range data { |
|
|
|
packOrder := item.PackOrder |
|
|
|
packOrder.PackOrderStatus = item.PackOrderStatus |
|
|
|
packOrderLi = append(packOrderLi, packOrder) |
|
|
|
} |
|
|
|
return grmi.PagingResult{Records: packOrderLi, Count: count, PageNumber: paging.Number, PageSize: paging.Size}, nil |
|
|
|
} |
|
|
|
|
|
|
|
/****************************************************************************** |
|
|
|