/// <summary> /// 结束会战 /// </summary> /// <returns> /// <para><see langword="1"/> 成功结束统计</para> /// <para><see langword="0"/> 未开始会战</para> /// <para><see langword="-1"/> 数据库错误</para> /// </returns> public int EndBattle() { try { using var dbClient = SugarUtils.CreateSqlSugarClient(DBPath); if (SugarUtils.TableExists <GuildBattle>(dbClient, BattleTableName)) { Log.Warning("会战管理数据库", "结束一期会战统计删除旧表"); SugarUtils.DeletTable <GuildBattle>(dbClient, BattleTableName); return(dbClient.Updateable <GuildInfo>() .Where(guild => guild.Gid == GuildEventArgs.SourceGroup.Id) .SetColumns(i => new GuildInfo { InBattle = false }) .ExecuteCommandHasChange() ? 1 : -1); } else { Log.Info("会战管理数据库", "会战表为空,请确认是否已经开始会战统计"); return(0); } } catch (Exception e) { Log.Error("Database error", Log.ErrorLogBuilder(e)); return(-1); } }