当前位置: 首页 > news >正文

visual studio 2022 初学流程

本文采用总-分的形式讲述流程
1.前端外部可以使用的接口 
     ExternalDataWebService.asmx?op=ReportWaterForWayder
   新建ExternalDataWebService.asmx 文件

<%@ WebService Language="C#" CodeBehind="~/App_Code/ExternalDataWebService.cs" Class="ExternalDataWebService" %>

新建ExternalDataWebService.cs文件,用于外部使用的接口方法

public void ReportWaterForWayder(string userid, string token, string begindate, string enddate)
{Context.Response.ContentType = "application/json";Context.Response.ContentEncoding = System.Text.Encoding.UTF8;Newtonsoft.Json.JsonSerializerSettings jsetting = new Newtonsoft.Json.JsonSerializerSettings();JsonConvert.DefaultSettings = new Func<JsonSerializerSettings>(() =>{//日期类型默认格式化处理jsetting.DateFormatHandling = Newtonsoft.Json.DateFormatHandling.MicrosoftDateFormat;jsetting.DateFormatString = "yyyy-MM-dd HH:mm:ss";//空值处理jsetting.NullValueHandling = NullValueHandling.Ignore;return jsetting;});Resultobject<List<WayderWaterReport>> result = new Resultobject<List<WayderWaterReport>>();try{result.Reponsecode = "0000";result.Reponsedesc = "";result.Resultmsg = new ExternalDataBizService().WayderWaterReportDingzhi(userid, token, begindate, enddate);Context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented, jsetting));}catch (AuthException ae){result.Reponsecode = "2001";result.Reponsedesc = ae.Message;result.Resultmsg = null;Context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented, jsetting));}catch (BizException le){result.Reponsecode = "1001";result.Reponsedesc = le.Message;result.Resultmsg = null;Context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented, jsetting));}catch (Exception e){result.Reponsecode = "1002";result.Reponsedesc = e.Message;result.Resultmsg = null;Context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented, jsetting));}finally{Context.Response.End();}
}

2.文中使用到的 new ExternalDataBizService().WayderWaterReportDingzhi(userid, token, begindate, enddate)方法以及WayderWaterReport的数据类型需要分别在ExternalDataBizService.cs文件和WayderWaterReport.cs文件中声明

public List<WayderWaterReport> WayderWaterReportDingzhi(string userid, string token, string begindate,string enddate)
{#region  日志信息UploadLog uploadLog = new UploadLog();uploadLog.Uuid = Guid.NewGuid().ToString();uploadLog.Cixu = 1;uploadLog.Commiter = userid;uploadLog.Committime = DateTime.Now;uploadLog.Methodname = "WayderWaterReportDingzhi";uploadLog.JsonString = token.ToString() + "," + userid + "," + begindate + "," + enddate;uploadLog.Desc = "伟达定制:水报表";uploadLog.Isdeal = 0;#endregion#region 初始化json类Newtonsoft.Json.JsonSerializerSettings jsetting = new Newtonsoft.Json.JsonSerializerSettings();JsonConvert.DefaultSettings = new Func<JsonSerializerSettings>(() =>{//日期类型默认格式化处理jsetting.DateFormatHandling = Newtonsoft.Json.DateFormatHandling.MicrosoftDateFormat;jsetting.DateFormatString = "yyyy-MM-dd HH:mm:ss";//空值处理jsetting.NullValueHandling = NullValueHandling.Ignore;return jsetting;});#endregiontry{#region 判断token有效性try{Api_Auth api_Auth = new Api_Auth(true, DbUtility.getDbconn());Api_Auth.AuthInfo authInfo = api_Auth.CheckAuth(userid, token);if (authInfo.AccessRes == false){throw new AuthException(authInfo.ResMsg);}userid = authInfo.Username;}catch (Exception e){throw new AuthException(e.Message);}#endregion//数据库连接MySqlConnection conn = new MySqlConnection(DbUtility.getDbconn());MySqlTransaction trans = null;try{conn.Open();if (String.IsNullOrEmpty(begindate)){throw new BizException("begindate不能为空,请检查");}if (String.IsNullOrEmpty(enddate)){throw new BizException("enddate不能为空,请检查");}//获得用户信息Xt_user user = new Xt_userDataService().Get(conn, trans, userid);if (user == null) throw new BizException("用户不存在,请检查");Xt_dept dept = new Xt_deptDataService().Get(conn, trans, user.Dept);if (dept == null) throw new BizException("部门不存在,请检查");String cuscode = dept.Abbr;if (String.IsNullOrEmpty(cuscode)) throw new BizException("客户代码未设置,请检查");//List<Bb_api_authorization> authorization = new Bb_api_authorizationDataService().GetValid(conn, trans, cuscode);//if ((authorization == null) || (authorization.Count == 0)) throw new BizException("客户API访问未授权,请检查");Report_dailywaterDataService report_DailywaterDataService = new Report_dailywaterDataService(cuscode);Wayder_watersetDataService wayder_WatersetDataService = new Wayder_watersetDataService();List<WayderWaterReport> result = new List<WayderWaterReport>();DateTime begintime = Convert.ToDateTime(begindate);DateTime endtime = Convert.ToDateTime(enddate);//循环体按照日期处理do{WayderWaterReport setdataItem = new WayderWaterReport();setdataItem.date = begintime.Date.ToString("yyyy-MM-dd");//水表1Report_dailywater dailywater1=  report_DailywaterDataService.GetStationDaily(conn,trans, "3007001", begintime.Date);if (dailywater1 != null) setdataItem.dailywater3007001 = dailywater1; else setdataItem.dailywater3007001 = new Report_dailywater();//水表2Report_dailywater dailywater2 = report_DailywaterDataService.GetStationDaily(conn, trans, "30501", begintime.Date);if (dailywater1 != null) setdataItem.dailywater30501 = dailywater2; else setdataItem.dailywater30501 = new Report_dailywater();//水表3Report_dailywater dailywater3 = report_DailywaterDataService.GetStationDaily(conn, trans, "3007002", begintime.Date);if (dailywater1 != null) setdataItem.dailywater3007002 = dailywater3; else setdataItem.dailywater3007002 = new Report_dailywater();//获取设置值Wayder_waterset waterset =wayder_WatersetDataService.GetByDate(conn, trans, begintime.Date);if (waterset != null){setdataItem.wayder_Waterset = waterset;}else{setdataItem.wayder_Waterset = new Wayder_waterset();setdataItem.wayder_Waterset.Wastewater_living = 0;setdataItem.wayder_Waterset.Unpolluted_used = 0;setdataItem.wayder_Waterset.Unpolluted_living = 0;setdataItem.wayder_Waterset.Total_water = (decimal)141.3;setdataItem.wayder_Waterset.Industrial_wastewater = 0;}result.Add(setdataItem);begintime = begintime.AddDays(1);} while (begintime <= endtime);if (trans != null){trans.Commit(); ;}return result;}catch (Exception e){if (trans != null){trans.Rollback();}uploadLog.Isdeal = 1;uploadLog.Desc = "出错" + e.Message;throw new BizException(e.Message);}finally{trans = null;new UploadLogDataService().AddData(conn, trans, uploadLog);conn.Close();}}catch (AuthException ea){throw ea;}catch (Exception e){throw new BizException(e.Message);}
}
using ENMSLibrary.entity.enms;
using ENMSLibrary.entity.enms.wayder;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;/// <summary>
/// WayderWaterReport 的摘要说明
/// </summary>
public class WayderWaterReport
{public WayderWaterReport(){//// TODO: 在此处添加构造函数逻辑//}/// <summary>/// /// </summary>public string date { get; set; }public Report_dailywater dailywater3007001 { get; set; }public Report_dailywater dailywater30501 { get; set; }public Report_dailywater dailywater3007002 { get; set; }public Wayder_waterset wayder_Waterset { get; set; }
}public class SetdataItem
{/// <summary>/// /// </summary>public string date { get; set; }public Report_dailywater dailywater3007001 { get; set; }public Report_dailywater dailywater30501 { get; set; }public Report_dailywater dailywater3007002 { get; set; }public Wayder_waterset wayder_Waterset { get; set; }/// <summary>/// /// </summary>public int WASTEWATER_LIVING { get; set; }/// <summary>/// /// </summary>public int UNPOLLUTED_USED { get; set; }/// <summary>/// /// </summary>public int UNPOLLUTED_LIVING { get; set; }/// <summary>/// /// </summary>public int TOTAL_WATER { get; set; }/// <summary>/// /// </summary>public int INDUSTRIAL_WASTEWATER { get; set; }}public class WaterdataItem
{/// <summary>/// /// </summary>public string date { get; set; }/// <summary>/// /// </summary>public string deviceid { get; set; }/// <summary>/// 工业用水总表/// </summary>public string devicename { get; set; }/// <summary>/// /// </summary>public string occurdate { get; set; }/// <summary>/// /// </summary>public double watermin { get; set; }/// <summary>/// /// </summary>public double watermax { get; set; }/// <summary>/// /// </summary>public double waterdata { get; set; }}

我们在业务层面使用到的文件ExternalDataBizService.cs。处理业务逻辑,通过数据库的方式,找到对应的数据。其中还包含其他的数据格式Wayder_waterset.cs和Report_dailywater.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ENMSLibrary.entity.enms.wayder
{[Serializable]public class Wayder_waterset{/// <summary>/// ID/// </summary>[DisplayName("ID")]public string Id { get; set; }/// <summary>/// CREATTIME/// </summary>[DisplayName("CREATTIME")]public DateTime Creattime { get; set; }/// <summary>/// 废水回收-用于生活/// </summary>[DisplayName("废水回收-用于生活")]public decimal? Wastewater_living { get; set; }/// <summary>/// 未污染-用于生产/// </summary>[DisplayName("未污染-用于生产")]public decimal? Unpolluted_used { get; set; }/// <summary>/// 未污染--用于生活/// </summary>[DisplayName("未污染--用于生活")]public decimal? Unpolluted_living { get; set; }/// <summary>/// 总储水量/// </summary>[DisplayName("总储水量")]public decimal? Total_water { get; set; }/// <summary>/// 工业废水排放量/// </summary>[DisplayName("工业废水排放量")]public decimal? Industrial_wastewater { get; set; }/// <summary>/// 生效时间/// </summary>[DisplayName("生效时间")]public DateTime Begintime { get; set; }}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ENMSLibrary.entity.enms
{[Serializable]public class Report_dailywater{/// <summary>/// id/// </summary>[DisplayName("id")]public Int64 Id { get; set; }/// <summary>/// deviceid/// </summary>[DisplayName("deviceid")]public int Deviceid { get; set; }/// <summary>/// devicetype/// </summary>[DisplayName("devicetype")]public int Devicetype { get; set; }/// <summary>/// devicename/// </summary>[DisplayName("devicename")]public string Devicename { get; set; }/// <summary>/// occurdate/// </summary>[DisplayName("occurdate")]public DateTime Occurdate { get; set; }/// <summary>/// watermin/// </summary>[DisplayName("watermin")]public decimal? Watermin { get; set; }/// <summary>/// watermax/// </summary>[DisplayName("watermax")]public decimal? Watermax { get; set; }/// <summary>/// waterdata/// </summary>[DisplayName("waterdata")]public decimal? Waterdata { get; set; }/// <summary>/// creattime/// </summary>[DisplayName("creattime")]public DateTime Creattime { get; set; }}
}

两个数据库处理方式

Report_dailywaterDataService.cs和Wayder_watersetDataService.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MySql.Data.MySqlClient;
using MySql.Data;
using ENMSLibrary.entity.enms;
using QCLibrary.exception;
using System.Data;namespace ENMSLibrary.dataservice.enms
{public class Report_dailywaterDataService{private string cuscode = "";private string custable = "";/// <summary>/// 构造函数/// </summary>public Report_dailywaterDataService(string cuscode){this.cuscode = cuscode;this.custable = cuscode + "_" + "report_dailywater";}/// <summary>/// 生成创建 增加sql语句 /// </summary>/// <param name="data">Report_dailywater实体类</param>/// <returns>新建类SQL语句</returns>private string GenerateAddSql(Report_dailywater data){string ls_pre = "INSERT INTO " + custable + "(";string ls_value = "VALUES(";if (data == null){throw new BizException("新建的数据不能为空");}#region deviceidif (data.Deviceid == null){}else{ls_pre = ls_pre + " DEVICEID";ls_value = ls_value + " " + data.Deviceid + "";}#endregion#region devicetypeif (data.Devicetype == null){}else{ls_pre = ls_pre + ", DEVICETYPE";ls_value = ls_value + "," + data.Devicetype + "";}#endregion#region devicenameif (data.Devicename == null){}else{if (data.Devicename.Length > 255){throw new BizException("devicename不能超过255");}ls_pre = ls_pre + ", DEVICENAME";ls_value = ls_value + ",'" + data.Devicename + "'";}#endregion#region occurdateif (data.Occurdate == null){}else{ls_pre = ls_pre + ", OCCURDATE";ls_value = ls_value + ",'" + data.Occurdate.ToString("yyyy-MM-dd HH:mm:ss") + "'";}#endregion#region waterminif (data.Watermin == null){}else{ls_pre = ls_pre + ", watermin";ls_value = ls_value + "," + data.Watermin.ToString() + "";}#endregion#region watermaxif (data.Watermax == null){}else{ls_pre = ls_pre + ", watermax";ls_value = ls_value + "," + data.Watermax.ToString() + "";}#endregion#region waterdataif (data.Waterdata == null){}else{ls_pre = ls_pre + ", waterdata";ls_value = ls_value + "," + data.Waterdata.ToString() + "";}#endregion#region creattimeif ((data.Creattime == null) || (data.Creattime.ToString().Substring(0, 4).Equals("1900")) || (data.Creattime.ToString().Substring(0, 4).Equals("0001"))){}else{ls_pre = ls_pre + ", CREATTIME";ls_value = ls_value + ",'" + data.Creattime.ToString("yyyy-MM-dd HH:mm:ss") + "'";}#endregionreturn ls_pre + ") " + ls_value + ")";}/// <summary>/// 添加记录/// </summary>/// <param name="model">Data.Model.Report_dailywater实体类</param>/// <returns>新增记录的ID</returns>public void Add(MySqlConnection conn, MySqlTransaction trans, Report_dailywater data){try{if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}string sql = this.GenerateAddSql(data);MySqlCommand command;if (trans != null){command = new MySqlCommand(sql, conn, trans);}else{command = new MySqlCommand(sql, conn);}command.ExecuteNonQuery();}catch (BizException be){throw be;}catch (Exception e){throw new BizException(e.Message);}}/// <summary>/// 生成修改sql语句 /// </summary>/// <param name="data">Report_dailywater实体类</param>/// <returns>修改类SQL语句</returns>private string GenerateUpdateSql(Report_dailywater data){string ls_pre = "UPDATE " + custable + " SET ";string ls_value = "";if (data == null){throw new BizException("新建的数据不能为空");}#region deviceidif (data.Deviceid == null){}else{ls_value = "DEVICEID=" + data.Deviceid + "";ls_pre = ls_pre + ls_value;}#endregion#region devicetypeif (data.Devicetype == null){}else{ls_value = ",DEVICETYPE=" + data.Devicetype + "";ls_pre = ls_pre + ls_value;}#endregion#region devicenameif (data.Devicename == null){}else{if (data.Devicename.Length > 255){throw new BizException("devicename不能超过255");}ls_value = ",DEVICENAME='" + data.Devicename + "'";ls_pre = ls_pre + ls_value;}#endregion#region occurdateif (data.Occurdate == null){}else{ls_value = ",OCCURDATE='" + data.Occurdate.ToString("yyyy-MM-dd HH:mm:ss") + "'";ls_pre = ls_pre + ls_value;}#endregion#region waterminif (data.Watermin == null){}else{ls_value = ",watermin='" + data.Watermin.ToString() + "'";ls_pre = ls_pre + ls_value;}#endregion#region watermaxif (data.Watermax == null){}else{ls_value = ",watermax='" + data.Watermax.ToString() + "'";ls_pre = ls_pre + ls_value;}#endregion#region waterdataif (data.Waterdata == null){}else{ls_value = ",waterdata='" + data.Waterdata.ToString() + "'";ls_pre = ls_pre + ls_value;}#endregion#region creattimeif (data.Creattime == null){}else{ls_value = ",CREATTIME='" + data.Creattime.ToString("yyyy-MM-dd HH:mm:ss") + "'";ls_pre = ls_pre + ls_value;}#endregionstring result = ls_pre + " WHERE id='" + data.Id + "'";return result;}/// <summary>/// 根据主键修改记录/// </summary>public int Update(MySqlConnection conn, MySqlTransaction trans, Report_dailywater data){string sql = GenerateUpdateSql(data);if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}try{MySqlCommand command;if (trans != null){command = new MySqlCommand(sql, conn, trans);}else{command = new MySqlCommand(sql, conn);}return command.ExecuteNonQuery();}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{}}/// <summary>/// 删除记录/// </summary>public int Delete(MySqlConnection conn, MySqlTransaction trans, Int64 id){string sql = "DELETE FROM " + custable + " WHERE id='" + id + "'";if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}try{MySqlCommand command;if (trans != null){command = new MySqlCommand(sql, conn, trans);}else{command = new MySqlCommand(sql, conn);}return command.ExecuteNonQuery();}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{}}/// <summary>/// 将DataSet转换为List/// </summary>private List<Report_dailywater> DataSetToList(DataSet dataSet){List<Report_dailywater> resultList = new List<Report_dailywater>();Report_dailywater model = null;for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++){model = new Report_dailywater();model.Id = Convert.ToInt64(dataSet.Tables[0].Rows[i]["ID"].ToString());if (dataSet.Tables[0].Rows[i]["DEVICEID"] != DBNull.Value)model.Deviceid = Convert.ToInt32(dataSet.Tables[0].Rows[i]["DEVICEID"].ToString());if (dataSet.Tables[0].Rows[i]["DEVICETYPE"] != DBNull.Value)model.Devicetype = Convert.ToInt32(dataSet.Tables[0].Rows[i]["DEVICETYPE"].ToString());if (dataSet.Tables[0].Rows[i]["DEVICENAME"] != DBNull.Value)model.Devicename = dataSet.Tables[0].Rows[i]["DEVICENAME"].ToString();if (dataSet.Tables[0].Rows[i]["OCCURDATE"] != DBNull.Value)model.Occurdate = Convert.ToDateTime(dataSet.Tables[0].Rows[i]["OCCURDATE"].ToString());if (dataSet.Tables[0].Rows[i]["WATERMIN"] != DBNull.Value)model.Watermin = Convert.ToDecimal(dataSet.Tables[0].Rows[i]["WATERMIN"].ToString());if (dataSet.Tables[0].Rows[i]["WATERMAX"] != DBNull.Value)model.Watermax = Convert.ToDecimal(dataSet.Tables[0].Rows[i]["WATERMAX"].ToString());if (dataSet.Tables[0].Rows[i]["WATERDATA"] != DBNull.Value)model.Waterdata = Convert.ToDecimal(dataSet.Tables[0].Rows[i]["WATERDATA"].ToString());if (dataSet.Tables[0].Rows[i]["CREATTIME"] != DBNull.Value)model.Creattime = Convert.ToDateTime(dataSet.Tables[0].Rows[i]["CREATTIME"].ToString());resultList.Add(model);}return resultList;}/// <summary>/// 查询所有记录/// </summary>public List<Report_dailywater> GetAll(MySqlConnection conn, MySqlTransaction trans){string sql = "SELECT * FROM " + custable;if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}DataSet dataSet = new DataSet();try{MySqlDataAdapter sqlDA = new MySqlDataAdapter(sql, conn);if (trans != null) sqlDA.SelectCommand.Transaction = trans;sqlDA.Fill(dataSet);if (dataSet.Tables[0].Rows.Count > 0){List<Report_dailywater> resultList = DataSetToList(dataSet);return resultList;}else{return null;}}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{dataSet = null;}}/// <summary>/// 查询所有记录数量/// </summary>public Int32 GetCount(MySqlConnection conn, MySqlTransaction trans){string sql = "SELECT COUNT(*) FROM " + custable;if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}DataSet dataSet = new DataSet();try{MySqlDataAdapter sqlDA = new MySqlDataAdapter(sql, conn);if (trans != null) sqlDA.SelectCommand.Transaction = trans;sqlDA.Fill(dataSet);if (dataSet.Tables[0].Rows.Count > 0){return Convert.ToInt32(dataSet.Tables[0].Rows[0][0].ToString());}else{return 0;}}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{dataSet = null;}}/// <summary>/// 查询所有记录/// </summary>public Report_dailywater Get(MySqlConnection conn, MySqlTransaction trans, Int64 id){string sql = "SELECT * FROM " + custable + " WHERE id='" + id + "'";if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}DataSet dataSet = new DataSet();try{MySqlDataAdapter sqlDA = new MySqlDataAdapter(sql, conn);if (trans != null) sqlDA.SelectCommand.Transaction = trans;sqlDA.Fill(dataSet);if (dataSet.Tables[0].Rows.Count > 0){List<Report_dailywater> resultList = DataSetToList(dataSet);return resultList[0];}else{return null;}}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{dataSet = null;}}/// <summary>/// 删除记录/// </summary>public int DeleteByOccuerdate(MySqlConnection conn, MySqlTransaction trans, DateTime occuerdate){string sql = "DELETE FROM " + custable + " WHERE occurdate='" + occuerdate.ToString("yyyy-MM-dd HH:mm:ss") + "'";if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}try{MySqlCommand command;if (trans != null){command = new MySqlCommand(sql, conn, trans);}else{command = new MySqlCommand(sql, conn);}return command.ExecuteNonQuery();}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{}}/// <summary>/// 查询所有记录/// </summary>public List<Report_dailywater> GetAllByDate(MySqlConnection conn, MySqlTransaction trans, DateTime ocuordate){string sql = "SELECT * FROM " + custable + " where occurdate='" + ocuordate.Date.ToString("yyyy-MM-dd HH:mm:ss") + "'";if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}DataSet dataSet = new DataSet();try{MySqlDataAdapter sqlDA = new MySqlDataAdapter(sql, conn);if (trans != null) sqlDA.SelectCommand.Transaction = trans;sqlDA.Fill(dataSet);if (dataSet.Tables[0].Rows.Count > 0){List<Report_dailywater> resultList = DataSetToList(dataSet);return resultList;}else{return null;}}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{dataSet = null;}}/// <summary>/// 查询站点日数据/// </summary>public Report_dailywater GetStationDaily(MySqlConnection conn, MySqlTransaction trans, string stationid, DateTime ocuordate){string sql = "SELECT * FROM " + custable + " where deviceid='" + stationid + "' and occurdate='" + ocuordate.Date.ToString("yyyy-MM-dd HH:mm:ss") + "'";if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}DataSet dataSet = new DataSet();try{MySqlDataAdapter sqlDA = new MySqlDataAdapter(sql, conn);if (trans != null) sqlDA.SelectCommand.Transaction = trans;sqlDA.Fill(dataSet);if (dataSet.Tables[0].Rows.Count > 0){List<Report_dailywater> resultList = DataSetToList(dataSet);return resultList[0];}else{return null;}}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{dataSet = null;}}/// <summary>/// 汇总月数据/// </summary>public Decimal GetSum(MySqlConnection conn, MySqlTransaction trans, string stationid, DateTime begintime, DateTime endtime){string sql = "SELECT SUM(waterdata) FROM " + custable + " where deviceid='" + stationid + "' and occurdate >= '" + begintime.ToString("yyyy-MM-dd HH:mm:ss") + "' and occurdate <= '" + endtime.ToString("yyyy-MM-dd HH:mm:ss") + "'";if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}DataSet dataSet = new DataSet();try{MySqlDataAdapter sqlDA = new MySqlDataAdapter(sql, conn);if (trans != null) sqlDA.SelectCommand.Transaction = trans;sqlDA.Fill(dataSet);if ((dataSet.Tables[0].Rows != null) && (dataSet.Tables[0].Rows.Count > 0)){return Convert.ToDecimal(dataSet.Tables[0].Rows[0][0].ToString());}else{return 0;}}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{dataSet = null;}}}
}
using ENMSLibrary.entity.enms.wayder;
using MySql.Data.MySqlClient;
using QCLibrary.exception;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ENMSLibrary.dataservice.enms.wayder
{public class Wayder_watersetDataService{/// <summary>/// 构造函数/// </summary>public Wayder_watersetDataService(){}/// <summary>/// 生成创建 增加sql语句 /// </summary>/// <param name="data">Wayder_waterset实体类</param>/// <returns>新建类SQL语句</returns>private string GenerateAddSql(Wayder_waterset data){string ls_pre = "INSERT INTO WAYDER_WATERSET(";string ls_value = "VALUES(";if (data == null){throw new BizException("新建的数据不能为空");}#region IDif (data.Id == null){}else{if (data.Id.Length > 36){throw new BizException("ID不能超过36");}ls_pre = ls_pre + " ID";ls_value = ls_value + "'" + data.Id + "'";}#endregion#region CREATTIMEif (data.Creattime == null){}else{ls_pre = ls_pre + ", CREATTIME";ls_value = ls_value + ",'" + data.Creattime + "'";}#endregion#region WASTEWATER_LIVINGif (data.Wastewater_living == null){}else{ls_pre = ls_pre + ", WASTEWATER_LIVING";ls_value = ls_value + "," + data.Wastewater_living + "";}#endregion#region UNPOLLUTED_USEDif (data.Unpolluted_used == null){}else{ls_pre = ls_pre + ", UNPOLLUTED_USED";ls_value = ls_value + "," + data.Unpolluted_used + "";}#endregion#region UNPOLLUTED_LIVINGif (data.Unpolluted_living == null){}else{ls_pre = ls_pre + ", UNPOLLUTED_LIVING";ls_value = ls_value + "," + data.Unpolluted_living + "";}#endregion#region TOTAL_WATERif (data.Total_water == null){}else{ls_pre = ls_pre + ", TOTAL_WATER";ls_value = ls_value + "," + data.Total_water + "";}#endregion#region INDUSTRIAL_WASTEWATERif (data.Industrial_wastewater == null){}else{ls_pre = ls_pre + ", INDUSTRIAL_WASTEWATER";ls_value = ls_value + "," + data.Industrial_wastewater + "";}#endregion#region BEGINTIMEif (data.Begintime == null){}else{ls_pre = ls_pre + ", BEGINTIME";ls_value = ls_value + ",'" + data.Begintime + "'";}#endregionreturn ls_pre + ") " + ls_value + ")";}/// <summary>/// 添加记录/// </summary>/// <param name="model">Data.Model.Wayder_waterset实体类</param>/// <returns>操作所影响的行数</returns>public void Add(MySqlConnection conn, MySqlTransaction trans, Wayder_waterset data){try{if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}string sql = this.GenerateAddSql(data);MySqlCommand command;if (trans != null){command = new MySqlCommand(sql, conn, trans);}else{command = new MySqlCommand(sql, conn);}command.ExecuteNonQuery();}catch (BizException be){throw be;}catch (Exception e){throw new BizException(e.Message);}}/// <summary>/// 将DataSet转换为List/// </summary>private List<Wayder_waterset> DataSetToList(DataSet dataSet){List<Wayder_waterset> resultList = new List<Wayder_waterset>();Wayder_waterset model = null;for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++){model = new Wayder_waterset();if (dataSet.Tables[0].Rows[i]["ID"] != DBNull.Value)model.Id = dataSet.Tables[0].Rows[i]["ID"].ToString();if (dataSet.Tables[0].Rows[i]["CREATTIME"] != DBNull.Value)model.Creattime = Convert.ToDateTime(dataSet.Tables[0].Rows[i]["CREATTIME"].ToString());if (dataSet.Tables[0].Rows[i]["WASTEWATER_LIVING"] != DBNull.Value)model.Wastewater_living = Convert.ToDecimal(dataSet.Tables[0].Rows[i]["WASTEWATER_LIVING"].ToString());if (dataSet.Tables[0].Rows[i]["UNPOLLUTED_USED"] != DBNull.Value)model.Unpolluted_used = Convert.ToDecimal(dataSet.Tables[0].Rows[i]["UNPOLLUTED_USED"].ToString());if (dataSet.Tables[0].Rows[i]["UNPOLLUTED_LIVING"] != DBNull.Value)model.Unpolluted_living = Convert.ToDecimal(dataSet.Tables[0].Rows[i]["UNPOLLUTED_LIVING"].ToString());if (dataSet.Tables[0].Rows[i]["TOTAL_WATER"] != DBNull.Value)model.Total_water = Convert.ToDecimal(dataSet.Tables[0].Rows[i]["TOTAL_WATER"].ToString());if (dataSet.Tables[0].Rows[i]["INDUSTRIAL_WASTEWATER"] != DBNull.Value)model.Industrial_wastewater = Convert.ToDecimal(dataSet.Tables[0].Rows[i]["INDUSTRIAL_WASTEWATER"].ToString());if (dataSet.Tables[0].Rows[i]["BEGINTIME"] != DBNull.Value)model.Begintime = Convert.ToDateTime(dataSet.Tables[0].Rows[i]["BEGINTIME"].ToString());resultList.Add(model);}return resultList;}/// <summary>/// 查询所有记录/// </summary>public List<Wayder_waterset> GetAll(MySqlConnection conn, MySqlTransaction trans){string sql = "SELECT * FROM wayder_waterset";if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}DataSet dataSet = new DataSet();try{MySqlDataAdapter sqlDA = new MySqlDataAdapter(sql, conn);if (trans != null) sqlDA.SelectCommand.Transaction = trans;sqlDA.Fill(dataSet);if (dataSet.Tables[0].Rows.Count > 0){List<Wayder_waterset> resultList = DataSetToList(dataSet);return resultList;}else{return null;}}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{dataSet = null;}}/// <summary>/// 查询所有记录/// </summary>public Wayder_waterset GetByDate(MySqlConnection conn, MySqlTransaction trans,DateTime queryDate){string sql = "SELECT * FROM wayder_waterset where Begintime <='"+ queryDate.ToString("yyyy-MM-dd") + "' order by Begintime desc limit 0,1 ";if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}DataSet dataSet = new DataSet();try{MySqlDataAdapter sqlDA = new MySqlDataAdapter(sql, conn);if (trans != null) sqlDA.SelectCommand.Transaction = trans;sqlDA.Fill(dataSet);if (dataSet.Tables[0].Rows.Count > 0){List<Wayder_waterset> resultList = DataSetToList(dataSet);return resultList[0];}else{return null;}}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{dataSet = null;}}/// <summary>/// 查询所有记录数量/// </summary>public Int32 GetCount(MySqlConnection conn, MySqlTransaction trans){string sql = "SELECT COUNT(*) FROM wayder_waterset";if (conn == null || conn.State != ConnectionState.Open){throw new Exception("数据连接不可用");}DataSet dataSet = new DataSet();try{MySqlDataAdapter sqlDA = new MySqlDataAdapter(sql, conn);if (trans != null) sqlDA.SelectCommand.Transaction = trans;sqlDA.Fill(dataSet);if (dataSet.Tables[0].Rows.Count > 0){return Convert.ToInt32(dataSet.Tables[0].Rows[0][0].ToString());}else{return 0;}}catch (System.Data.OleDb.OleDbException ex){throw new Exception("数据库操作异常", ex);}catch (Exception e){throw e;}finally{dataSet = null;}}}
}

相关文章:

  • Photoshop使用钢笔绘制图形
  • 【ArcGIS微课1000例】0147:Geographic Imager6.2下载安装教程
  • CPT302 Multi-Agent Systems 题型
  • Axure疑难杂症:中继器新增数据时如何上传并存储图片(玩转中继器)
  • ch12 课堂参考代码 及 题目参考思路
  • 简述synchronized和java.util.concurrent.locks.Lock的异同 ?
  • 历年中国科学技术大学计算机保研上机真题
  • 历年中国农业大学计算机保研上机真题
  • 【TTS】基于GRPO的流匹配文本到语音改进:F5R-TTS
  • Kotlin-特殊类型
  • ArcGIS Pro 3.4 二次开发 - 图形图层
  • (笔记+作业)第五期书生大模型实战营---L1G2000 OpenCompass 评测书生大模型实践
  • 【sa-token】 sa-token非 web 上下文无法获取 HttpServletRequest。
  • 【前端】macOS 的 Gatekeeper 安全机制阻止你加载 bcrypt_lib.node 文件 如何解决
  • Spring Boot3.4.1 集成redis
  • 小黑大语言模型通过设计demo进行应用探索:langchain中chain的简单理解demo
  • 几种常用的Agent的Prompt格式
  • 基于cornerstone3D的dicom影像浏览器 第二十七章 设置vr相机,复位视图
  • 【大模型】Bert应对超长文本
  • CSS Day07
  • 网站建设合同英文版/上海疫情又要爆发了
  • 设计网红打卡/seo系统培训哪家好
  • 仿站违法吗/域名搜索引擎
  • 舆情网站大全/网络优化工程师是干什么的
  • win10建站wordpress/自己做一个网站
  • 重新安装 wordpress/百度关键词相关性优化软件