public static bool DbUpdate(this TCreatureQuality entity, DbSession session, params PDMDbProperty[] fields) { var query = IORMProvider.GetDbQueryBuilder(session); UpdateBuilder builder = new UpdateBuilder(); builder.ComponentWhere.Add(new ComponentValueOfWhere(TCreatureQualityProperties.CreatureId, entity.CreatureId, LocateType.Equal)); if (fields == null || fields.Length == 0) { builder.ComponentSet.Add(new ComponentValueOfSet(TCreatureQualityProperties.CreatureId, entity.CreatureId)); builder.ComponentSet.Add(new ComponentValueOfSet(TCreatureQualityProperties.FirstLevelQuality, entity.FirstLevelQuality)); builder.ComponentSet.Add(new ComponentValueOfSet(TCreatureQualityProperties.SecondLevelQuality, entity.SecondLevelQuality)); builder.ComponentSet.Add(new ComponentValueOfSet(TCreatureQualityProperties.ThirdLevelQuality, entity.ThirdLevelQuality)); } else { if (fields.Contains(TCreatureQualityProperties.FirstLevelQuality)) { builder.ComponentSet.Add(new ComponentValueOfSet(TCreatureQualityProperties.FirstLevelQuality, entity.FirstLevelQuality)); } if (fields.Contains(TCreatureQualityProperties.SecondLevelQuality)) { builder.ComponentSet.Add(new ComponentValueOfSet(TCreatureQualityProperties.SecondLevelQuality, entity.SecondLevelQuality)); } if (fields.Contains(TCreatureQualityProperties.ThirdLevelQuality)) { builder.ComponentSet.Add(new ComponentValueOfSet(TCreatureQualityProperties.ThirdLevelQuality, entity.ThirdLevelQuality)); } } query.UpdateBuilders.Add(builder); return(IORMProvider.GetQueryOperator(session).Update <TCreatureQuality>(session, query)); }
public static bool DbDelete(this TCreatureQuality entity, DbSession session) { var query = IORMProvider.GetDbQueryBuilder(session); query.DeleteBuilder.ComponentWhere.Add(new ComponentValueOfWhere(TCreatureQualityProperties.CreatureId, entity.CreatureId, LocateType.Equal)); return(IORMProvider.GetQueryOperator(session).Delete <TCreatureQuality>(session, query)); }
public static bool DbInsert(this TCreatureQuality entity, DbSession session) { var query = IORMProvider.GetDbQueryBuilder(session); InsertBuilder builder = new InsertBuilder(); builder.ComponentInsert.Add(new ComponentValueOfInsert(TCreatureQualityProperties.CreatureId, entity.CreatureId)); builder.ComponentInsert.Add(new ComponentValueOfInsert(TCreatureQualityProperties.FirstLevelQuality, entity.FirstLevelQuality)); builder.ComponentInsert.Add(new ComponentValueOfInsert(TCreatureQualityProperties.SecondLevelQuality, entity.SecondLevelQuality)); builder.ComponentInsert.Add(new ComponentValueOfInsert(TCreatureQualityProperties.ThirdLevelQuality, entity.ThirdLevelQuality)); query.InsertBuilders.Add(builder); return(IORMProvider.GetQueryOperator(session).Insert <TCreatureQuality>(session, query)); }
public static void DbLoad(this TCreatureQuality entity, DbSession session, params PDMDbProperty[] fields) { var result = entity.DbSelect(session, fields); if (fields.Contains(TCreatureQualityProperties.FirstLevelQuality)) { entity.FirstLevelQuality = result.FirstLevelQuality; } if (fields.Contains(TCreatureQualityProperties.SecondLevelQuality)) { entity.SecondLevelQuality = result.SecondLevelQuality; } if (fields.Contains(TCreatureQualityProperties.ThirdLevelQuality)) { entity.ThirdLevelQuality = result.ThirdLevelQuality; } }
public static TCreatureQuality DbSelect(this TCreatureQuality entity, DbSession session, params PDMDbProperty[] fields) { var query = IORMProvider.GetDbQueryBuilder(session); SelectBuilder builder = new SelectBuilder(); if (fields.Count() == 0) { builder.ComponentSelect.Add(TCreatureQualityProperties.CreatureId); builder.ComponentSelect.Add(TCreatureQualityProperties.FirstLevelQuality); builder.ComponentSelect.Add(TCreatureQualityProperties.SecondLevelQuality); builder.ComponentSelect.Add(TCreatureQualityProperties.ThirdLevelQuality); } else { builder.ComponentSelect.Add(TCreatureQualityProperties.CreatureId); foreach (var field in fields) { builder.ComponentSelect.Add(field); } } builder.ComponentWhere.Add(new ComponentValueOfWhere(TCreatureQualityProperties.CreatureId, entity.CreatureId, LocateType.Equal)); query.SelectBuilders.Add(builder); return(IORMProvider.GetQueryOperator(session).Select <TCreatureQuality>(session, query)); }