using IStation.CalcModel;
|
using SqlSugar;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
|
namespace IStation.DAL
|
{
|
/// <summary>
|
/// 数据库访问基类
|
/// </summary>
|
public partial class AnaProject
|
{
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
public AnaProject()
|
{
|
|
}
|
|
|
|
/// <summary>
|
/// 数据库连接
|
/// </summary>
|
public virtual ISqlSugarClient Connection
|
{
|
get
|
{
|
var connection = CreateConnection();
|
return connection;
|
}
|
}
|
public static ISqlSugarClient CreateConnection()
|
{
|
var path = System.IO.Path.Combine(IStation.DataFolderHelper.GetRootPath(), "AnaProject.db");
|
if (!System.IO.File.Exists(path))
|
{
|
throw new Exception($"缺少Project.db文件");
|
}
|
|
ConnectionConfig connectionConfig = new ConnectionConfig()
|
{
|
DbType = SqlSugar.DbType.Sqlite,
|
ConnectionString = "Data Source=" + path,// + ";Version=3;",
|
IsAutoCloseConnection = true,//是否自动关闭
|
};
|
ISqlSugarClient conn = new SqlSugarClient(connectionConfig);
|
return conn;
|
}
|
#region Insert
|
|
/// <summary>
|
/// 插入指定对象到数据库中
|
/// </summary>
|
public long Insert(IStation.CalcModel.AnaPrj result_prj, IStation.CalcModel.AnaRequest ana_request)
|
{
|
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;
|
entity.TotalFlow = (int)ana_request.TotalFlow取水总量;
|
entity.CalcOptType = (int)ana_request.CalcOptType;
|
|
SnowFlakeSingle.WorkId = 1;
|
|
using (ISqlSugarClient db = Connection)
|
{
|
return db.Insertable(entity).ExecuteReturnSnowflakeId();
|
}
|
}
|
|
/// <summary>
|
/// 插入指定对象到数据库中
|
/// </summary>
|
public long Insert(IStation.CalcModel.AnaPrj result_prj, IStation.CalcModel.AnaRequestBase ana_request)
|
{
|
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;
|
entity.TotalFlow = (int)ana_request.TotalFlow取水总量;
|
entity.CalcOptType = (int)ana_request.CalcOptType;
|
|
SnowFlakeSingle.WorkId = 1;
|
|
using (ISqlSugarClient db = Connection)
|
{
|
return db.Insertable(entity).ExecuteReturnSnowflakeId();
|
}
|
}
|
|
#endregion
|
|
|
|
#region Query
|
|
/// <summary>
|
/// 返回数据库所有的对象集合
|
/// </summary>
|
public List<Entity.AnaProjectEntity> GetAll()
|
{
|
using (ISqlSugarClient db = Connection)
|
{
|
return db.Queryable<Entity.AnaProjectEntity>()?.ToList();
|
}
|
}
|
|
/// <summary>
|
/// 查询数据库,返回指定ID的对象
|
/// </summary>
|
public Entity.AnaProjectEntity GetByPrjID(string prj_id)
|
{
|
using (ISqlSugarClient db = Connection)
|
{
|
return db.Queryable<Entity.AnaProjectEntity>().Single(x => x.PrjID == prj_id);
|
}
|
}
|
|
public Entity.AnaProjectEntity GetLastRecord()
|
{
|
using (ISqlSugarClient db = Connection)
|
{
|
return db.Queryable<Entity.AnaProjectEntity>().OrderByDescending(i => i.ID).Take(1).First();
|
}
|
}
|
|
|
#endregion
|
|
|
|
|
|
}
|
}
|