| | |
| | | /// <summary> |
| | | /// 数据库访问基类 |
| | | /// </summary> |
| | | public partial class AnaProject |
| | | public partial class AnaProject |
| | | { |
| | | |
| | | /// <summary> |
| | |
| | | /// </summary> |
| | | public AnaProject() |
| | | { |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | /// </summary> |
| | | public long Insert(IStation.CalcModel.AnaPrj result_prj, IStation.CalcModel.AnaRequest ana_request) |
| | | { |
| | | RefreshSameTime(result_prj.StartTime, result_prj.EndTime); |
| | | |
| | | IStation.Entity.AnaProjectEntity entity = new Entity.AnaProjectEntity(); |
| | | entity.PrjID = result_prj.ID; |
| | | entity.PrjName = result_prj.Name; |
| | | entity.StartTime = result_prj.StartTime; |
| | | entity.EndTime = result_prj.EndTime; |
| | | entity.CreateTime = DateTime.Now; |
| | | if(ana_request.TotalFlowIn != null) |
| | | entity.UseStatus = 0; |
| | | if (ana_request.TotalFlowIn != null) |
| | | { |
| | | entity.TotalFlowIn = ana_request.TotalFlowIn.ToString(); |
| | | } |
| | | if (ana_request.SpaceFlowOut != null) |
| | | if (ana_request.PerHourFlowOut != null) |
| | | { |
| | | entity.TotalFlowOut = string.Join(",", ana_request.SpaceFlowOut) ; |
| | | entity.TotalFlowOut = string.Join(",", ana_request.PerHourFlowOut); |
| | | } |
| | | if(ana_request.MaxReservoirLevel != null) |
| | | if (ana_request.MaxReservoirLevel != null) |
| | | { |
| | | entity.LevelRequest = string.Format("{0}@{1}", ana_request.MaxReservoirLevel, ana_request.MaxReservoirLevelTime); |
| | | } |
| | | ana_request.StartReservoirLevel = ana_request.StartReservoirLevel; |
| | | |
| | | entity.CalcOptType = (int)ana_request.CalcOptType; |
| | | |
| | | if (ana_request.IsKnownStartOpenPump && ana_request.StartOpenPumpIndexArray != null) |
| | | { |
| | | entity.StartOpenPumpIndexs = string.Join(",", ana_request.StartOpenPumpIndexArray); |
| | | } |
| | | if (result_prj.EndTimeOpenPumpStatus != null) |
| | | { |
| | | entity.EndOpenPumpIndexs = string.Join(",", result_prj.EndTimeOpenPumpStatus); |
| | | } |
| | | entity.StartReservoirLevel = ana_request.StartReservoirLevel.ToString(); |
| | | if (result_prj.BlockTimes != null && result_prj.BlockTimes.Count > 0) |
| | | { |
| | | entity.EndReservoirLevel = result_prj.BlockTimes.Last().ReservoirEndHeight.ToString(); |
| | | } |
| | | |
| | | SnowFlakeSingle.WorkId = 1; |
| | | |
| | |
| | | /// </summary> |
| | | public long Insert(IStation.CalcModel.AnaPrj result_prj, IStation.CalcModel.AnaRequestBase ana_request) |
| | | { |
| | | RefreshSameTime(result_prj.StartTime, result_prj.EndTime); |
| | | |
| | | IStation.Entity.AnaProjectEntity entity = new Entity.AnaProjectEntity(); |
| | | entity.PrjID = result_prj.ID; |
| | | entity.StartTime = result_prj.StartTime; |
| | | entity.EndTime = result_prj.EndTime; |
| | | entity.CreateTime = DateTime.Now; |
| | | if(ana_request.TotalFlowIn != null) |
| | | entity.UseStatus = 1; |
| | | if (ana_request.TotalFlowIn != null) |
| | | { |
| | | entity.TotalFlowIn = ana_request.TotalFlowIn.ToString(); |
| | | entity.TotalFlowIn = ana_request.TotalFlowIn.ToString(); |
| | | } |
| | | if (ana_request.SpaceFlowOut != null) |
| | | if (ana_request.PerHourFlowOut != null) |
| | | { |
| | | entity.TotalFlowOut = string.Join(",", ana_request.SpaceFlowOut); |
| | | entity.TotalFlowOut = string.Join(",", ana_request.PerHourFlowOut); |
| | | } |
| | | if (ana_request.MaxReservoirLevel != null) |
| | | { |
| | |
| | | { |
| | | entity.StartOpenPumpIndexs = string.Join(",", ana_request.StartOpenPumpIndexArray); |
| | | } |
| | | if (result_prj.EndTimeOpenPumpStaus != null) { |
| | | entity.EndOpenPumpIndexs = string.Join(",", result_prj.EndTimeOpenPumpStaus); |
| | | if (result_prj.EndTimeOpenPumpStatus != null) |
| | | { |
| | | entity.EndOpenPumpIndexs = string.Join(",", result_prj.EndTimeOpenPumpStatus); |
| | | } |
| | | entity.StartReservoirLevel = ana_request.StartReservoirLevel.ToString(); |
| | | entity.StartReservoirLevel = ana_request.StartReservoirLevel.ToString(); |
| | | if (result_prj.BlockTimes != null && result_prj.BlockTimes.Count > 0) |
| | | { |
| | | entity.EndReservoirLevel = result_prj.BlockTimes.Last().ReservoirEndHeight.ToString(); |
| | |
| | | { |
| | | return db.Insertable(entity).ExecuteReturnSnowflakeId(); |
| | | } |
| | | } |
| | | |
| | | private void RefreshSameTime(DateTime startTime, DateTime endTime) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | //db.Updateable<Entity.AnaProjectEntity>(updateObj).UpdateColumns(it => new { it.Name, it.CreateTime }).ExecuteCommand(); |
| | | var list = db.Queryable<Entity.AnaProjectEntity>().Where(x => x.StartTime == startTime && x.EndTime == endTime).ToList(); |
| | | if (list == null || list.Count == 0) |
| | | return; |
| | | foreach (var m in list) |
| | | { |
| | | if (m.UseStatus == 1) |
| | | { |
| | | m.UseStatus = 0; |
| | | db.Updateable<Entity.AnaProjectEntity>(m).UpdateColumns(x => x.UseStatus ).ExecuteCommand(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | //确认方案 |
| | | public string SetConfirmStatusByID(string PrjID) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | var f_p = db.Queryable<Entity.AnaProjectEntity>().Where(x => x.PrjID == PrjID).First(); |
| | | if (f_p == null) |
| | | return "未找到对应项目"; |
| | | var startTime = f_p.StartTime.Date; |
| | | var all = db.Queryable<Entity.AnaProjectEntity>().Where(x => x.StartTime >= startTime && x.StartTime <= startTime.AddDays(1)).ToList(); |
| | | if(all == null || all.Count == 0) |
| | | { |
| | | return "未找到对应项目 StartTime = " + f_p.StartTime.Date; |
| | | } |
| | | //IStation.LogHelper.Info("Count" + all.Count); |
| | | foreach(var m in all) |
| | | { |
| | | |
| | | if (m.ID == f_p.ID) |
| | | { |
| | | //IStation.LogHelper.Info("id set 1 :" + m.ID); |
| | | m.UseStatus = 1; |
| | | db.Updateable<Entity.AnaProjectEntity>(m).UpdateColumns(x => x.UseStatus).ExecuteCommand(); |
| | | } |
| | | else |
| | | { |
| | | if (m.UseStatus == 1) |
| | | {//设置为失效 |
| | | //IStation.LogHelper.Info("id set 0:" + m.ID); |
| | | |
| | | m.UseStatus = 0; |
| | | db.Updateable<Entity.AnaProjectEntity>(m).UpdateColumns(x => x.UseStatus).ExecuteCommand(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | return null; |
| | | } |
| | | |
| | | #endregion |
| | |
| | | return db.Queryable<Entity.AnaProjectEntity>().Single(x => x.PrjID == prj_id); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 完整时间(带小时) |
| | | /// </summary> |
| | | public List<Entity.AnaProjectEntity> GetByEndTimeH相同(DateTime endTime) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | return db.Queryable<Entity.AnaProjectEntity>().Where(x => x.EndTime == endTime && x.UseStatus == 1).ToList(); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 完整时间(带小时) |
| | | /// </summary> |
| | | public List<Entity.AnaProjectEntity> GetByEndTimeH大于(DateTime endTime) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | return db.Queryable<Entity.AnaProjectEntity>().Where(x => x.EndTime >= endTime && x.UseStatus == 1).ToList(); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 日期(不带小时) |
| | | /// </summary> |
| | | public List<Entity.AnaProjectEntity> GetByEndDay(DateTime endTime) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | var end_day = endTime.Date; |
| | | return db.Queryable<Entity.AnaProjectEntity>().Where(x => x.EndTime>= endTime && x.StartTime <= endTime.AddDays(1) && x.UseStatus == 1).ToList(); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 日期(不带小时) |
| | | /// </summary> |
| | | /// <param name="startTime"></param> |
| | | /// <returns></returns> |
| | | public List<Entity.AnaProjectEntity> GetByStartDay(DateTime startTime) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | var start_day = startTime.Date; |
| | | return db.Queryable<Entity.AnaProjectEntity>().Where(x => x.StartTime >= start_day && x.StartTime <= start_day.AddDays(1) && x.UseStatus == 1).ToList(); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 日期(不带小时) |
| | | /// </summary> |
| | | /// <param name="startTime"></param> |
| | | /// <returns></returns> |
| | | public List<Entity.AnaProjectEntity> GetByCreateDay(DateTime startTime) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | var start_day = startTime.Date; |
| | | return db.Queryable<Entity.AnaProjectEntity>().Where(x => x.CreateTime >= start_day && x.CreateTime <= start_day.AddDays(1) && x.UseStatus == 1).ToList(); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 日期(不带小时) |
| | | /// </summary> |
| | | /// <param name="startTime"></param> |
| | | /// <returns></returns> |
| | | public List<Entity.AnaProjectEntity> GetAllByCreateDay(DateTime startTime) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | var start_day = startTime.Date; |
| | | return db.Queryable<Entity.AnaProjectEntity>().Where(x => x.CreateTime >= start_day && x.CreateTime <= start_day.AddDays(1)).ToList(); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 完整时间( 带小时) |
| | | /// </summary> |
| | | /// <param name="startTime"></param> |
| | | /// <returns></returns> |
| | | public List<Entity.AnaProjectEntity> GetByStartTimeH(DateTime startTime) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | return db.Queryable<Entity.AnaProjectEntity>().Where(x => x.StartTime == startTime && x.UseStatus == 1).ToList(); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 完整时间( 带小时) |
| | | /// </summary> |
| | | /// <param name="startTime"></param> |
| | | /// <returns></returns> |
| | | public List<Entity.AnaProjectEntity> GetByTimeRangeH(DateTime startTime,DateTime endTime) |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | | { |
| | | return db.Queryable<Entity.AnaProjectEntity>().Where(x => x.StartTime == startTime && x.EndTime == endTime && x.UseStatus == 1).ToList(); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 最后一条记录 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public Entity.AnaProjectEntity GetLastRecord() |
| | | { |
| | | using (ISqlSugarClient db = Connection) |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | #endregion |
| | | |