ZHshuibiao/shuibiao/DataService/DAL/pro_data.cs

404 lines
12 KiB
C#

/** 版本信息模板在安装目录下,可自行修改。
* pro_data.cs
*
* 功 能: N/A
* 类 名: pro_data
*
* Ver 变更日期 负责人 变更内容
* ───────────────────────────────────
* V0.01 2023/1/13 16:44:51 N/A 初版
*
* Copyright (c) 2012 Maticsoft Corporation. All rights reserved.
*┌──────────────────────────────────┐
*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
*│ 版权所有:动软卓越(北京)科技有限公司              │
*└──────────────────────────────────┘
*/
using System;
using System.Data;
using System.Text;
using MySql.Data.MySqlClient;
using Maticsoft.DBUtility;//Please add references
namespace DataService.DAL
{
/// <summary>
/// 数据访问类:pro_data
/// </summary>
public partial class pro_data
{
public pro_data()
{}
#region BasicMethod
/// <summary>
/// 是否存在该记录
/// </summary>
public bool Exists(string id)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select count(1) from pro_data");
strSql.Append(" where id=@id ");
MySqlParameter[] parameters = {
new MySqlParameter("@id", MySqlDbType.VarChar,50) };
parameters[0].Value = id;
return DbHelperMySQL.Exists(strSql.ToString(), parameters);
}
/// <summary>
/// 增加一条数据
/// </summary>
public bool Add(DataService.Model.pro_data model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into pro_data(");
strSql.Append("id,device_id,attr_cn,attr_en,attr_unit,data_type_id,collect_data,collect_time,r1,r2,r3,r4,r5)");
strSql.Append(" values (");
strSql.Append("@id,@device_id,@attr_cn,@attr_en,@attr_unit,@data_type_id,@collect_data,@collect_time,@r1,@r2,@r3,@r4,@r5)");
MySqlParameter[] parameters = {
new MySqlParameter("@id", MySqlDbType.VarChar,50),
new MySqlParameter("@device_id", MySqlDbType.VarChar,50),
new MySqlParameter("@attr_cn", MySqlDbType.VarChar,255),
new MySqlParameter("@attr_en", MySqlDbType.VarChar,255),
new MySqlParameter("@attr_unit", MySqlDbType.VarChar,255),
new MySqlParameter("@data_type_id", MySqlDbType.Int32),
new MySqlParameter("@collect_data", MySqlDbType.VarChar,50),
new MySqlParameter("@collect_time", MySqlDbType.DateTime),
new MySqlParameter("@r1", MySqlDbType.VarChar,255),
new MySqlParameter("@r2", MySqlDbType.VarChar,255),
new MySqlParameter("@r3", MySqlDbType.VarChar,255),
new MySqlParameter("@r4", MySqlDbType.VarChar,255),
new MySqlParameter("@r5", MySqlDbType.VarChar,255)};
parameters[0].Value = model.id;
parameters[1].Value = model.device_id;
parameters[2].Value = model.attr_cn;
parameters[3].Value = model.attr_en;
parameters[4].Value = model.attr_unit;
parameters[5].Value = model.data_type_id;
parameters[6].Value = model.collect_data;
parameters[7].Value = model.collect_time;
parameters[8].Value = model.r1;
parameters[9].Value = model.r2;
parameters[10].Value = model.r3;
parameters[11].Value = model.r4;
parameters[12].Value = model.r5;
int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 更新一条数据
/// </summary>
public bool Update(DataService.Model.pro_data model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("update pro_data set ");
strSql.Append("device_id=@device_id,");
strSql.Append("attr_cn=@attr_cn,");
strSql.Append("attr_en=@attr_en,");
strSql.Append("attr_unit=@attr_unit,");
strSql.Append("data_type_id=@data_type_id,");
strSql.Append("collect_data=@collect_data,");
strSql.Append("collect_time=@collect_time,");
strSql.Append("r1=@r1,");
strSql.Append("r2=@r2,");
strSql.Append("r3=@r3,");
strSql.Append("r4=@r4,");
strSql.Append("r5=@r5");
strSql.Append(" where id=@id ");
MySqlParameter[] parameters = {
new MySqlParameter("@device_id", MySqlDbType.VarChar,50),
new MySqlParameter("@attr_cn", MySqlDbType.VarChar,255),
new MySqlParameter("@attr_en", MySqlDbType.VarChar,255),
new MySqlParameter("@attr_unit", MySqlDbType.VarChar,255),
new MySqlParameter("@data_type_id", MySqlDbType.Int32),
new MySqlParameter("@collect_data", MySqlDbType.VarChar,50),
new MySqlParameter("@collect_time", MySqlDbType.DateTime),
new MySqlParameter("@r1", MySqlDbType.VarChar,255),
new MySqlParameter("@r2", MySqlDbType.VarChar,255),
new MySqlParameter("@r3", MySqlDbType.VarChar,255),
new MySqlParameter("@r4", MySqlDbType.VarChar,255),
new MySqlParameter("@r5", MySqlDbType.VarChar,255),
new MySqlParameter("@id", MySqlDbType.VarChar,50)};
parameters[0].Value = model.device_id;
parameters[1].Value = model.attr_cn;
parameters[2].Value = model.attr_en;
parameters[3].Value = model.attr_unit;
parameters[4].Value = model.data_type_id;
parameters[5].Value = model.collect_data;
parameters[6].Value = model.collect_time;
parameters[7].Value = model.r1;
parameters[8].Value = model.r2;
parameters[9].Value = model.r3;
parameters[10].Value = model.r4;
parameters[11].Value = model.r5;
parameters[12].Value = model.id;
int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 删除一条数据
/// </summary>
public bool Delete(string id)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("delete from pro_data ");
strSql.Append(" where id=@id ");
MySqlParameter[] parameters = {
new MySqlParameter("@id", MySqlDbType.VarChar,50) };
parameters[0].Value = id;
int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 批量删除数据
/// </summary>
public bool DeleteList(string idlist)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("delete from pro_data ");
strSql.Append(" where id in (" + idlist + ") ");
int rows = DbHelperMySQL.ExecuteSql(strSql.ToString());
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 得到一个对象实体
/// </summary>
public DataService.Model.pro_data GetModel(string id)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select id,device_id,attr_cn,attr_en,attr_unit,data_type_id,collect_data,collect_time,r1,r2,r3,r4,r5 from pro_data ");
strSql.Append(" where id=@id ");
MySqlParameter[] parameters = {
new MySqlParameter("@id", MySqlDbType.VarChar,50) };
parameters[0].Value = id;
DataService.Model.pro_data model = new DataService.Model.pro_data();
DataSet ds = DbHelperMySQL.Query(strSql.ToString(), parameters);
if (ds.Tables[0].Rows.Count > 0)
{
return DataRowToModel(ds.Tables[0].Rows[0]);
}
else
{
return null;
}
}
/// <summary>
/// 得到一个对象实体
/// </summary>
public DataService.Model.pro_data DataRowToModel(DataRow row)
{
DataService.Model.pro_data model = new DataService.Model.pro_data();
if (row != null)
{
if (row["id"] != null)
{
model.id = row["id"].ToString();
}
if (row["device_id"] != null)
{
model.device_id = row["device_id"].ToString();
}
if (row["attr_cn"] != null)
{
model.attr_cn = row["attr_cn"].ToString();
}
if (row["attr_en"] != null)
{
model.attr_en = row["attr_en"].ToString();
}
if (row["attr_unit"] != null)
{
model.attr_unit = row["attr_unit"].ToString();
}
if (row["data_type_id"] != null && row["data_type_id"].ToString() != "")
{
model.data_type_id = int.Parse(row["data_type_id"].ToString());
}
if (row["collect_data"] != null)
{
model.collect_data = row["collect_data"].ToString();
}
if (row["collect_time"] != null && row["collect_time"].ToString() != "")
{
model.collect_time = DateTime.Parse(row["collect_time"].ToString());
}
if (row["r1"] != null)
{
model.r1 = row["r1"].ToString();
}
if (row["r2"] != null)
{
model.r2 = row["r2"].ToString();
}
if (row["r3"] != null)
{
model.r3 = row["r3"].ToString();
}
if (row["r4"] != null)
{
model.r4 = row["r4"].ToString();
}
if (row["r5"] != null)
{
model.r5 = row["r5"].ToString();
}
}
return model;
}
/// <summary>
/// 获得数据列表
/// </summary>
public DataSet GetList(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select id,device_id,attr_cn,attr_en,attr_unit,data_type_id,collect_data,collect_time,r1,r2,r3,r4,r5 ");
strSql.Append(" FROM pro_data ");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
return DbHelperMySQL.Query(strSql.ToString());
}
/// <summary>
/// 获取记录总数
/// </summary>
public int GetRecordCount(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select count(1) FROM pro_data ");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
object obj = DbHelperSQL.GetSingle(strSql.ToString());
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 分页获取数据列表
/// </summary>
public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT * FROM ( ");
strSql.Append(" SELECT ROW_NUMBER() OVER (");
if (!string.IsNullOrEmpty(orderby.Trim()))
{
strSql.Append("order by T." + orderby);
}
else
{
strSql.Append("order by T.id desc");
}
strSql.Append(")AS Row, T.* from pro_data T ");
if (!string.IsNullOrEmpty(strWhere.Trim()))
{
strSql.Append(" WHERE " + strWhere);
}
strSql.Append(" ) TT");
strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", startIndex, endIndex);
return DbHelperMySQL.Query(strSql.ToString());
}
/*
/// <summary>
/// 分页获取数据列表
/// </summary>
public DataSet GetList(int PageSize,int PageIndex,string strWhere)
{
MySqlParameter[] parameters = {
new MySqlParameter("@tblName", MySqlDbType.VarChar, 255),
new MySqlParameter("@fldName", MySqlDbType.VarChar, 255),
new MySqlParameter("@PageSize", MySqlDbType.Int32),
new MySqlParameter("@PageIndex", MySqlDbType.Int32),
new MySqlParameter("@IsReCount", MySqlDbType.Bit),
new MySqlParameter("@OrderType", MySqlDbType.Bit),
new MySqlParameter("@strWhere", MySqlDbType.VarChar,1000),
};
parameters[0].Value = "pro_data";
parameters[1].Value = "id";
parameters[2].Value = PageSize;
parameters[3].Value = PageIndex;
parameters[4].Value = 0;
parameters[5].Value = 0;
parameters[6].Value = strWhere;
return DbHelperMySQL.RunProcedure("UP_GetRecordByPage",parameters,"ds");
}*/
#endregion BasicMethod
#region ExtensionMethod
/// <summary>
/// 读取采集数据
/// </summary>
/// <param name="strWhere"></param>
/// <returns></returns>
public DataSet GetData(string strWhere)
{
StringBuilder strSql = new StringBuilder();
//strSql.Append("id,device_id,analyse_id,collect_data,collect_time,r1,r2,r3,r4,r5)");
strSql.Append("select T1.id,T1.device_id,T1.collect_data,T1.collect_time,T1.attr_cn,T1.attr_en,T1.attr_unit ");
strSql.Append(" ,T3.type_name,T2.bianhao,T3.type_name_zh ");
strSql.Append(" from pro_data T1 ");
strSql.Append(" left join pro_device T2 on T2.id =T1.device_id ");
strSql.Append(" left join pro_device_type T3 on T2.device_type_id=T3.id ");
if (!string.IsNullOrWhiteSpace(strWhere))
{
strSql.AppendFormat(" WHERE {0} ", strWhere);
}
strSql.AppendFormat(" order by t1.collect_time desc");
return DbHelperMySQL.Query(strSql.ToString());
}
#endregion ExtensionMethod
}
}