public bool CreateDeclarationData(DeclarationData declarationData) { var userData = declarationData.PlayerData; if (declarationData.PlayerID == 0 && userData == null) { return(false); } using var mySQLConnector = new MySQLConnector(); var transaction = mySQLConnector.Database.BeginTransaction(); if (declarationData.PlayerID == 0) { declarationData.PlayerID = PlayerDataToPlayerID(userData); if (declarationData.PlayerID == 0) { return(false); } } try { mySQLConnector.Add(declarationData); mySQLConnector.SaveChanges(); transaction.Commit(); return(true); } catch { transaction.Rollback(); return(false); } }
public bool UpdateDeclarationData(DeclarationData declarationData) { var userData = declarationData.PlayerData; if (declarationData.PlayerID == 0 && userData == null) { return(false); } using var mySQLConnector = new MySQLConnector(); var transaction = mySQLConnector.Database.BeginTransaction(); if (declarationData.PlayerID == 0) { declarationData.PlayerID = PlayerDataToPlayerID(userData); if (declarationData.PlayerID == 0) { return(false); } } var updateData = mySQLConnector.DeclarationData .Include(d => d.PlayerData) .Where(d => d.PlayerID == declarationData.PlayerID && d.BattleLap == declarationData.BattleLap && d.BossNumber == declarationData.BossNumber && !d.FinishFlag && !d.DeleteFlag ) .FirstOrDefault(); if (updateData != null) { updateData.FinishFlag = declarationData.FinishFlag; } mySQLConnector.SaveChanges(); transaction.Commit(); return(true); }
public OperationResponse <DeclarationData> Get(CTDS.Declarations.Contracts.EndPoints.GetDeclarationByGuid guid) { OperationResponse <DeclarationData> response = new OperationResponse <DeclarationData>(); try { var id = guid.Guid; var declarationData = DeclarationBll.GetDeclarationById(id); var referenceData = DeclarationBll.GetReferenceData(id); DeclarationData data = new DeclarationData(); data.Declaration = declarationData; data.ReferenceData = referenceData; response.OnSuccess(data, "Declaration successfully fetched"); return(response); } catch (Exception e) { Log.Error(e.Message + " " + e.StackTrace); response.OnException("Failed to Fetch declaration"); return(response); } }
public bool DeleteDeclarationData(DeclarationData declarationData) => DeleteDeclarationData(new[] { declarationData });