/// <summary> /// 计算SQL语句开始和结束时间 /// </summary> public void SqlQueryTimeStragety_Test() { ISqlQueryTime service = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(MonthSqlQueryTime).Name); SqlQueryTimeStragety bll = new SqlQueryTimeStragety(service); Console.WriteLine($"ISqlQueryTime月开始时间:{bll.GetStartTime(DateTime.Now)}-结束时间:{bll.GetEndTime(DateTime.Now)}"); service = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(WeekSqlQueryTime).Name); bll = new SqlQueryTimeStragety(service); Console.WriteLine($"ISqlQueryTime周开始时间:{bll.GetStartTime(DateTime.Now)}-结束时间:{bll.GetEndTime(DateTime.Now)}"); service = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(DaySqlQueryTime).Name); bll = new SqlQueryTimeStragety(service); Console.WriteLine($"ISqlQueryTime日开始时间:{bll.GetStartTime(DateTime.Now)}-结束时间:{bll.GetEndTime(DateTime.Now)}"); }
public override void BuildDbFile() { Action <TaskEntity> action = t8Task => { try { BuildInstanceObject buildInstanceService = new BuildInstanceObject(); //1得到数据库文件路径 AFileName fileNameStragety = buildInstanceService.GetGenerateFileNameStragety(3); ISqlQueryTime SqlQueryTimeStragety = buildInstanceService.GetSqlQueryTimeStragety(t8Task.CycleType); FileInfoEntity fileInfoEntity = new FileInfoEntity(); fileInfoEntity.NormalFileName = fileNameStragety.FileName(t8Task); fileInfoEntity.NormalFilePath = fileNameStragety.FileFullName(t8Task); fileInfoEntity.SqlStartTime = SqlQueryTimeStragety.StartTime(DateTime.Now); fileInfoEntity.SqlEndTime = SqlQueryTimeStragety.EndTime(DateTime.Now); t8Task.FileInfo = fileInfoEntity; //2创建数据库文件并添加数据 IDataHandler handler = DataHandlerFactory.GetHandler(t8Task.DataHandler); handler.DBConnectStr = Common.DecryptData(t8Task.DBConnectString_Hashed); string sql = t8Task.SQL; bool isSuccess = handler.OutputDataToSQLite(sql, fileInfoEntity.SqlStartTime, fileInfoEntity.SqlEndTime, fileInfoEntity.NormalFilePath); Thread.Sleep(300); if (!isSuccess) { LogUtil.WriteLog($"从数据库向数据文件[{fileInfoEntity.NormalFilePath}]导入数据出现错误"); throw new Exception($"从数据库向数据文件[{fileInfoEntity.NormalFilePath}]导入数据出现错误"); } LogUtil.WriteLog($"数据文件[{fileInfoEntity.NormalFilePath}]创建并添加数据完成"); } catch (Exception ex) { LogUtil.WriteLog(ex); throw new Exception(ex.Message); } }; product.AddPart(action); }
/// <summary> /// 获取SQL查询条件开始和结束时间 /// </summary> /// <param name="dateType"></param> /// <returns></returns> public virtual SqlQueryTimeStragety GetSqlQueryTimeStragety(DateType dateType) { ISqlQueryTime sqlQueryTime = null; switch (dateType) { case DateType.Month: sqlQueryTime = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(MonthSqlQueryTime).Name); break; case DateType.Week: sqlQueryTime = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(WeekSqlQueryTime).Name); break; case DateType.Day: sqlQueryTime = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(DaySqlQueryTime).Name); break; } SqlQueryTimeStragety service = new SqlQueryTimeStragety(sqlQueryTime); return(service); }
/// <summary> /// 获取SQL查询条件开始和结束时间 /// </summary> /// <param name="cycleType"></param> /// <returns></returns> public virtual ISqlQueryTime GetSqlQueryTimeStragety(CycleTypes cycleType) { ISqlQueryTime sqlQueryTime = null; switch (cycleType) { case CycleTypes.M: sqlQueryTime = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(MonthSqlQueryTime).Name); break; case CycleTypes.W: sqlQueryTime = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(WeekSqlQueryTime).Name); break; case CycleTypes.D: sqlQueryTime = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(DaySqlQueryTime).Name); break; default: throw new ArgumentNullException("GetSqlQueryTimeStragety()方法,参数cycleType为空"); } return(sqlQueryTime); }
public SqlQueryTimeStragety(ISqlQueryTime sqlQueryTime) { this.sqlQueryTime = sqlQueryTime; }