ZHshuibiao/shuibiao/DataService/DAL/electricity_data.cs

545 lines
22 KiB
C#

/** 版本信息模板在安装目录下,可自行修改。
* electricity_data.cs
*
* 功 能: N/A
* 类 名: electricity_data
*
* Ver 变更日期 负责人 变更内容
* ───────────────────────────────────
* V0.01 2023/2/27 11:27:20 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>
/// 数据访问类:electricity_data
/// </summary>
public partial class electricity_data
{
public electricity_data()
{}
#region BasicMethod
/// <summary>
/// 是否存在该记录
/// </summary>
public bool Exists(string electricity_id)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("select count(1) from electricity_data");
strSql.Append(" where electricity_id=@electricity_id ");
MySqlParameter[] parameters = {
new MySqlParameter("@electricity_id", MySqlDbType.VarChar,50) };
parameters[0].Value = electricity_id;
return DbHelperMySQL.Exists(strSql.ToString(),parameters);
}
/// <summary>
/// 增加一条数据
/// </summary>
public bool Add(DataService.Model.electricity_data model)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("insert into electricity_data(");
strSql.Append("electricity_id,total_active_power,positive_active_power,reverse_active_power,electricity_meter_working_quadrant,combination_reactive_power,history_month_electricity,total_rate,peak_rate,flat_valley_rate,step_electricity_price,power_factor,time_interval,step_electricity_price_set,measurement_unit,amount_unit,communication_status,inverse_phase_order,battery_capacity_alarm,each_phase_voltage_prompt,each_phase_current_prompt,report_police,laboratory_status,password_lock,relay_status,electric_energy_direction,acquisition_time,create_time,r1,r2,r3)");
strSql.Append(" values (");
strSql.Append("@electricity_id,@total_active_power,@positive_active_power,@reverse_active_power,@electricity_meter_working_quadrant,@combination_reactive_power,@history_month_electricity,@total_rate,@peak_rate,@flat_valley_rate,@step_electricity_price,@power_factor,@time_interval,@step_electricity_price_set,@measurement_unit,@amount_unit,@communication_status,@inverse_phase_order,@battery_capacity_alarm,@each_phase_voltage_prompt,@each_phase_current_prompt,@report_police,@laboratory_status,@password_lock,@relay_status,@electric_energy_direction,@acquisition_time,@create_time,@r1,@r2,@r3)");
MySqlParameter[] parameters = {
new MySqlParameter("@electricity_id", MySqlDbType.VarChar,50),
new MySqlParameter("@total_active_power", MySqlDbType.Decimal,10),
new MySqlParameter("@positive_active_power", MySqlDbType.Decimal,10),
new MySqlParameter("@reverse_active_power", MySqlDbType.Decimal,10),
new MySqlParameter("@electricity_meter_working_quadrant", MySqlDbType.VarChar,50),
new MySqlParameter("@combination_reactive_power", MySqlDbType.VarChar,50),
new MySqlParameter("@history_month_electricity", MySqlDbType.VarChar,255),
new MySqlParameter("@total_rate", MySqlDbType.Decimal,10),
new MySqlParameter("@peak_rate", MySqlDbType.Decimal,10),
new MySqlParameter("@flat_valley_rate", MySqlDbType.Decimal,10),
new MySqlParameter("@step_electricity_price", MySqlDbType.Int32),
new MySqlParameter("@power_factor", MySqlDbType.VarChar,255),
new MySqlParameter("@time_interval", MySqlDbType.VarChar,50),
new MySqlParameter("@step_electricity_price_set", MySqlDbType.VarChar,50),
new MySqlParameter("@measurement_unit", MySqlDbType.VarChar,255),
new MySqlParameter("@amount_unit", MySqlDbType.VarChar,50),
new MySqlParameter("@communication_status", MySqlDbType.VarChar,255),
new MySqlParameter("@inverse_phase_order", MySqlDbType.VarChar,255),
new MySqlParameter("@battery_capacity_alarm", MySqlDbType.VarChar,255),
new MySqlParameter("@each_phase_voltage_prompt", MySqlDbType.VarChar,255),
new MySqlParameter("@each_phase_current_prompt", MySqlDbType.VarChar,255),
new MySqlParameter("@report_police", MySqlDbType.VarChar,255),
new MySqlParameter("@laboratory_status", MySqlDbType.VarChar,255),
new MySqlParameter("@password_lock", MySqlDbType.VarChar,255),
new MySqlParameter("@relay_status", MySqlDbType.VarChar,255),
new MySqlParameter("@electric_energy_direction", MySqlDbType.VarChar,255),
new MySqlParameter("@acquisition_time", MySqlDbType.DateTime),
new MySqlParameter("@create_time", MySqlDbType.DateTime),
new MySqlParameter("@r1", MySqlDbType.VarChar,255),
new MySqlParameter("@r2", MySqlDbType.VarChar,255),
new MySqlParameter("@r3", MySqlDbType.VarChar,255)};
parameters[0].Value = model.electricity_id;
parameters[1].Value = model.total_active_power;
parameters[2].Value = model.positive_active_power;
parameters[3].Value = model.reverse_active_power;
parameters[4].Value = model.electricity_meter_working_quadrant;
parameters[5].Value = model.combination_reactive_power;
parameters[6].Value = model.history_month_electricity;
parameters[7].Value = model.total_rate;
parameters[8].Value = model.peak_rate;
parameters[9].Value = model.flat_valley_rate;
parameters[10].Value = model.step_electricity_price;
parameters[11].Value = model.power_factor;
parameters[12].Value = model.time_interval;
parameters[13].Value = model.step_electricity_price_set;
parameters[14].Value = model.measurement_unit;
parameters[15].Value = model.amount_unit;
parameters[16].Value = model.communication_status;
parameters[17].Value = model.inverse_phase_order;
parameters[18].Value = model.battery_capacity_alarm;
parameters[19].Value = model.each_phase_voltage_prompt;
parameters[20].Value = model.each_phase_current_prompt;
parameters[21].Value = model.report_police;
parameters[22].Value = model.laboratory_status;
parameters[23].Value = model.password_lock;
parameters[24].Value = model.relay_status;
parameters[25].Value = model.electric_energy_direction;
parameters[26].Value = model.acquisition_time;
parameters[27].Value = model.create_time;
parameters[28].Value = model.r1;
parameters[29].Value = model.r2;
parameters[30].Value = model.r3;
int rows=DbHelperMySQL.ExecuteSql(strSql.ToString(),parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 更新一条数据
/// </summary>
public bool Update(DataService.Model.electricity_data model)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("update electricity_data set ");
strSql.Append("total_active_power=@total_active_power,");
strSql.Append("positive_active_power=@positive_active_power,");
strSql.Append("reverse_active_power=@reverse_active_power,");
strSql.Append("electricity_meter_working_quadrant=@electricity_meter_working_quadrant,");
strSql.Append("combination_reactive_power=@combination_reactive_power,");
strSql.Append("history_month_electricity=@history_month_electricity,");
strSql.Append("total_rate=@total_rate,");
strSql.Append("peak_rate=@peak_rate,");
strSql.Append("flat_valley_rate=@flat_valley_rate,");
strSql.Append("step_electricity_price=@step_electricity_price,");
strSql.Append("power_factor=@power_factor,");
strSql.Append("time_interval=@time_interval,");
strSql.Append("step_electricity_price_set=@step_electricity_price_set,");
strSql.Append("measurement_unit=@measurement_unit,");
strSql.Append("amount_unit=@amount_unit,");
strSql.Append("communication_status=@communication_status,");
strSql.Append("inverse_phase_order=@inverse_phase_order,");
strSql.Append("battery_capacity_alarm=@battery_capacity_alarm,");
strSql.Append("each_phase_voltage_prompt=@each_phase_voltage_prompt,");
strSql.Append("each_phase_current_prompt=@each_phase_current_prompt,");
strSql.Append("report_police=@report_police,");
strSql.Append("laboratory_status=@laboratory_status,");
strSql.Append("password_lock=@password_lock,");
strSql.Append("relay_status=@relay_status,");
strSql.Append("electric_energy_direction=@electric_energy_direction,");
strSql.Append("acquisition_time=@acquisition_time,");
strSql.Append("create_time=@create_time,");
strSql.Append("r1=@r1,");
strSql.Append("r2=@r2,");
strSql.Append("r3=@r3");
strSql.Append(" where electricity_id=@electricity_id ");
MySqlParameter[] parameters = {
new MySqlParameter("@total_active_power", MySqlDbType.Decimal,10),
new MySqlParameter("@positive_active_power", MySqlDbType.Decimal,10),
new MySqlParameter("@reverse_active_power", MySqlDbType.Decimal,10),
new MySqlParameter("@electricity_meter_working_quadrant", MySqlDbType.VarChar,50),
new MySqlParameter("@combination_reactive_power", MySqlDbType.VarChar,50),
new MySqlParameter("@history_month_electricity", MySqlDbType.VarChar,255),
new MySqlParameter("@total_rate", MySqlDbType.Decimal,10),
new MySqlParameter("@peak_rate", MySqlDbType.Decimal,10),
new MySqlParameter("@flat_valley_rate", MySqlDbType.Decimal,10),
new MySqlParameter("@step_electricity_price", MySqlDbType.Int32),
new MySqlParameter("@power_factor", MySqlDbType.VarChar,255),
new MySqlParameter("@time_interval", MySqlDbType.VarChar,50),
new MySqlParameter("@step_electricity_price_set", MySqlDbType.VarChar,50),
new MySqlParameter("@measurement_unit", MySqlDbType.VarChar,255),
new MySqlParameter("@amount_unit", MySqlDbType.VarChar,50),
new MySqlParameter("@communication_status", MySqlDbType.VarChar,255),
new MySqlParameter("@inverse_phase_order", MySqlDbType.VarChar,255),
new MySqlParameter("@battery_capacity_alarm", MySqlDbType.VarChar,255),
new MySqlParameter("@each_phase_voltage_prompt", MySqlDbType.VarChar,255),
new MySqlParameter("@each_phase_current_prompt", MySqlDbType.VarChar,255),
new MySqlParameter("@report_police", MySqlDbType.VarChar,255),
new MySqlParameter("@laboratory_status", MySqlDbType.VarChar,255),
new MySqlParameter("@password_lock", MySqlDbType.VarChar,255),
new MySqlParameter("@relay_status", MySqlDbType.VarChar,255),
new MySqlParameter("@electric_energy_direction", MySqlDbType.VarChar,255),
new MySqlParameter("@acquisition_time", MySqlDbType.DateTime),
new MySqlParameter("@create_time", MySqlDbType.DateTime),
new MySqlParameter("@r1", MySqlDbType.VarChar,255),
new MySqlParameter("@r2", MySqlDbType.VarChar,255),
new MySqlParameter("@r3", MySqlDbType.VarChar,255),
new MySqlParameter("@electricity_id", MySqlDbType.VarChar,50)};
parameters[0].Value = model.total_active_power;
parameters[1].Value = model.positive_active_power;
parameters[2].Value = model.reverse_active_power;
parameters[3].Value = model.electricity_meter_working_quadrant;
parameters[4].Value = model.combination_reactive_power;
parameters[5].Value = model.history_month_electricity;
parameters[6].Value = model.total_rate;
parameters[7].Value = model.peak_rate;
parameters[8].Value = model.flat_valley_rate;
parameters[9].Value = model.step_electricity_price;
parameters[10].Value = model.power_factor;
parameters[11].Value = model.time_interval;
parameters[12].Value = model.step_electricity_price_set;
parameters[13].Value = model.measurement_unit;
parameters[14].Value = model.amount_unit;
parameters[15].Value = model.communication_status;
parameters[16].Value = model.inverse_phase_order;
parameters[17].Value = model.battery_capacity_alarm;
parameters[18].Value = model.each_phase_voltage_prompt;
parameters[19].Value = model.each_phase_current_prompt;
parameters[20].Value = model.report_police;
parameters[21].Value = model.laboratory_status;
parameters[22].Value = model.password_lock;
parameters[23].Value = model.relay_status;
parameters[24].Value = model.electric_energy_direction;
parameters[25].Value = model.acquisition_time;
parameters[26].Value = model.create_time;
parameters[27].Value = model.r1;
parameters[28].Value = model.r2;
parameters[29].Value = model.r3;
parameters[30].Value = model.electricity_id;
int rows=DbHelperMySQL.ExecuteSql(strSql.ToString(),parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 删除一条数据
/// </summary>
public bool Delete(string electricity_id)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("delete from electricity_data ");
strSql.Append(" where electricity_id=@electricity_id ");
MySqlParameter[] parameters = {
new MySqlParameter("@electricity_id", MySqlDbType.VarChar,50) };
parameters[0].Value = electricity_id;
int rows=DbHelperMySQL.ExecuteSql(strSql.ToString(),parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 批量删除数据
/// </summary>
public bool DeleteList(string electricity_idlist )
{
StringBuilder strSql=new StringBuilder();
strSql.Append("delete from electricity_data ");
strSql.Append(" where electricity_id in ("+electricity_idlist + ") ");
int rows=DbHelperMySQL.ExecuteSql(strSql.ToString());
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 得到一个对象实体
/// </summary>
public DataService.Model.electricity_data GetModel(string electricity_id)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("select electricity_id,total_active_power,positive_active_power,reverse_active_power,electricity_meter_working_quadrant,combination_reactive_power,history_month_electricity,total_rate,peak_rate,flat_valley_rate,step_electricity_price,power_factor,time_interval,step_electricity_price_set,measurement_unit,amount_unit,communication_status,inverse_phase_order,battery_capacity_alarm,each_phase_voltage_prompt,each_phase_current_prompt,report_police,laboratory_status,password_lock,relay_status,electric_energy_direction,acquisition_time,create_time,r1,r2,r3 from electricity_data ");
strSql.Append(" where electricity_id=@electricity_id ");
MySqlParameter[] parameters = {
new MySqlParameter("@electricity_id", MySqlDbType.VarChar,50) };
parameters[0].Value = electricity_id;
DataService.Model.electricity_data model=new DataService.Model.electricity_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.electricity_data DataRowToModel(DataRow row)
{
DataService.Model.electricity_data model=new DataService.Model.electricity_data();
if (row != null)
{
if(row["electricity_id"]!=null)
{
model.electricity_id=row["electricity_id"].ToString();
}
if(row["total_active_power"]!=null && row["total_active_power"].ToString()!="")
{
model.total_active_power=decimal.Parse(row["total_active_power"].ToString());
}
if(row["positive_active_power"]!=null && row["positive_active_power"].ToString()!="")
{
model.positive_active_power=decimal.Parse(row["positive_active_power"].ToString());
}
if(row["reverse_active_power"]!=null && row["reverse_active_power"].ToString()!="")
{
model.reverse_active_power=decimal.Parse(row["reverse_active_power"].ToString());
}
if(row["electricity_meter_working_quadrant"]!=null)
{
model.electricity_meter_working_quadrant=row["electricity_meter_working_quadrant"].ToString();
}
if(row["combination_reactive_power"]!=null)
{
model.combination_reactive_power=row["combination_reactive_power"].ToString();
}
if(row["history_month_electricity"]!=null)
{
model.history_month_electricity=row["history_month_electricity"].ToString();
}
if(row["total_rate"]!=null && row["total_rate"].ToString()!="")
{
model.total_rate=decimal.Parse(row["total_rate"].ToString());
}
if(row["peak_rate"]!=null && row["peak_rate"].ToString()!="")
{
model.peak_rate=decimal.Parse(row["peak_rate"].ToString());
}
if(row["flat_valley_rate"]!=null && row["flat_valley_rate"].ToString()!="")
{
model.flat_valley_rate=decimal.Parse(row["flat_valley_rate"].ToString());
}
if(row["step_electricity_price"]!=null && row["step_electricity_price"].ToString()!="")
{
model.step_electricity_price=int.Parse(row["step_electricity_price"].ToString());
}
if(row["power_factor"]!=null)
{
model.power_factor=row["power_factor"].ToString();
}
if(row["time_interval"]!=null)
{
model.time_interval=row["time_interval"].ToString();
}
if(row["step_electricity_price_set"]!=null)
{
model.step_electricity_price_set=row["step_electricity_price_set"].ToString();
}
if(row["measurement_unit"]!=null)
{
model.measurement_unit=row["measurement_unit"].ToString();
}
if(row["amount_unit"]!=null)
{
model.amount_unit=row["amount_unit"].ToString();
}
if(row["communication_status"]!=null)
{
model.communication_status=row["communication_status"].ToString();
}
if(row["inverse_phase_order"]!=null)
{
model.inverse_phase_order=row["inverse_phase_order"].ToString();
}
if(row["battery_capacity_alarm"]!=null)
{
model.battery_capacity_alarm=row["battery_capacity_alarm"].ToString();
}
if(row["each_phase_voltage_prompt"]!=null)
{
model.each_phase_voltage_prompt=row["each_phase_voltage_prompt"].ToString();
}
if(row["each_phase_current_prompt"]!=null)
{
model.each_phase_current_prompt=row["each_phase_current_prompt"].ToString();
}
if(row["report_police"]!=null)
{
model.report_police=row["report_police"].ToString();
}
if(row["laboratory_status"]!=null)
{
model.laboratory_status=row["laboratory_status"].ToString();
}
if(row["password_lock"]!=null)
{
model.password_lock=row["password_lock"].ToString();
}
if(row["relay_status"]!=null)
{
model.relay_status=row["relay_status"].ToString();
}
if(row["electric_energy_direction"]!=null)
{
model.electric_energy_direction=row["electric_energy_direction"].ToString();
}
if(row["acquisition_time"]!=null && row["acquisition_time"].ToString()!="")
{
model.acquisition_time=DateTime.Parse(row["acquisition_time"].ToString());
}
if(row["create_time"]!=null && row["create_time"].ToString()!="")
{
model.create_time=DateTime.Parse(row["create_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();
}
}
return model;
}
/// <summary>
/// 获得数据列表
/// </summary>
public DataSet GetList(string strWhere)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("select electricity_id,total_active_power,positive_active_power,reverse_active_power,electricity_meter_working_quadrant,combination_reactive_power,history_month_electricity,total_rate,peak_rate,flat_valley_rate,step_electricity_price,power_factor,time_interval,step_electricity_price_set,measurement_unit,amount_unit,communication_status,inverse_phase_order,battery_capacity_alarm,each_phase_voltage_prompt,each_phase_current_prompt,report_police,laboratory_status,password_lock,relay_status,electric_energy_direction,acquisition_time,create_time,r1,r2,r3 ");
strSql.Append(" FROM electricity_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 electricity_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.electricity_id desc");
}
strSql.Append(")AS Row, T.* from electricity_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 = "electricity_data";
parameters[1].Value = "electricity_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
#endregion ExtensionMethod
}
}