using System; using System.Collections.Generic; using System.Linq; using System.Text; using QMAPP.MD.Entity; using QMFrameWork.Data; using QMFrameWork.Log; using System.Data; using QMAPP.DAL; using QMAPP.Entity; using QMAPP.FJC.Entity.CCParameters; namespace QMAPP.FJC.DAL.CCParameters { /// /// 作 用:加工参数采集 /// 作 者:张松男 /// 编写日期:2023年02月06日 /// public class PARAMETERSCONFIGDAL : BaseDAL { #region 获取信息 /// /// 获取信息 /// /// 条件 /// *信息 public PARAMETERSCONFIG Get(PARAMETERSCONFIG info) { try { using (IDataSession session = AppDataFactory.CreateSession("maindbEQUIPMENT")) { //获取信息 info = session.Get(info); } return info; } catch (Exception ex) { throw ex; } } #endregion #region 获取列表 /// /// 获取列表 /// /// 条件 /// 数据页 /// 数据页 public DataPage GetList(PARAMETERSCONFIG condition, DataPage page) { string sql = null; List parameters = new List(); try { sql = this.GetQuerySql(condition, ref parameters); //分页关键字段及排序 page.KeyName = "pid"; if (string.IsNullOrEmpty(page.SortExpression)) page.SortExpression = "createdata DESC"; //创建时间倒叙排列 using (IDataSession session = AppDataFactory.CreateSession("maindbEQUIPMENT")) { // 对应多种数据库 //string sqlChange = this.ChangeSqlByDB(sql, session); page = session.GetDataPage(sql, parameters.ToArray(), page); } return page; } catch (Exception ex) { throw ex; } } /// /// 获取全部规则 /// /// public List GetAllList() { try { string sql = "SELECT * FROM [T_DIM_PARAMETERSCONFIG]"; List parameters = new List(); using (IDataSession session = AppDataFactory.CreateSession("maindbEQUIPMENT")) { return session.GetList(sql, parameters.ToArray()).ToList(); } } catch (Exception ex) { throw ex; } } #endregion #region 获取查询语句 /// /// 获取查询语句 /// /// 查询条件 /// 参数 /// 查询语句 private string GetQuerySql(PARAMETERSCONFIG condition, ref List parameters) { StringBuilder sqlBuilder = new StringBuilder(); StringBuilder whereBuilder = new StringBuilder(); try { //构成查询语句 sqlBuilder.Append("SELECT pid,supplier,supplierName,vehicleType,partNumber,partName,variance,station,parameter,lower_limit,upper_limit,createdata,creatauser "); sqlBuilder.Append("FROM T_DIM_PARAMETERSCONFIG "); //查询条件 //查询条件 if (string.IsNullOrEmpty(condition.vehicleType) == false) { whereBuilder.Append(" AND vehicleType like @vehicleType "); parameters.Add(new DataParameter { ParameterName = "vehicleType", DataType = DbType.String, Value = condition.vehicleType }); } if (string.IsNullOrEmpty(condition.parameter) == false) { whereBuilder.Append(" AND parameter like @parameter "); parameters.Add(new DataParameter { ParameterName = "parameter", DataType = DbType.String, Value = condition.parameter }); } if (string.IsNullOrEmpty(condition.station) == false) { whereBuilder.Append(" AND station like @station "); parameters.Add(new DataParameter { ParameterName = "station", DataType = DbType.String, Value = condition.station }); } if (whereBuilder.Length > 0) { sqlBuilder.Append(" WHERE " + whereBuilder.ToString().Substring(4)); } return sqlBuilder.ToString(); } catch (Exception ex) { throw ex; } } #endregion #region 获取导出的数据 /// /// 获取导出的数据 /// /// 查询条件 /// 数据 public DataTable GetExportData(PARAMETERSCONFIG info) { DataTable dt = null; string sql = null; List parameters = new List(); try { //构成查询语句 sql = this.GetQuerySql(info, ref parameters); using (IDataSession session = AppDataFactory.CreateSession("maindbEQUIPMENT")) { dt = session.GetTable(sql, parameters.ToArray()); dt.TableName = "PARAMETERSCONFIG"; } return dt; } catch (Exception ex) { throw ex; } } #endregion #region 信息是否重复 /// /// 判断名称是否存在 /// /// /// true:已存在;fasel:不存在。 public bool Exists(PARAMETERSCONFIG info) { StringBuilder sqlBuilder = new StringBuilder(); StringBuilder whereBuilder = new StringBuilder(); List parameters = new List(); int count = 0; try { sqlBuilder.Append("SELECT COUNT(0) FROM T_DIM_PARAMETERSCONFIG"); if (info.pid == null) { info.pid = ""; } whereBuilder.Append(" AND pid <> @pid "); parameters.Add(new DataParameter { ParameterName = "pid", DataType = DbType.String, Value = info.pid }); //添加进行无重复字段判断代码 if (whereBuilder.Length > 0) { sqlBuilder.Append(" WHERE " + whereBuilder.ToString().Substring(4)); } using (IDataSession session = AppDataFactory.CreateSession("maindbEQUIPMENT")) { count = Convert.ToInt32(session.ExecuteSqlScalar(sqlBuilder.ToString(), parameters.ToArray())); } return count > 0; } catch (Exception ex) { throw ex; } } #endregion #region 插入信息 /// /// 插入信息(单表) /// /// 信息 /// 插入行数 public int Insert(PARAMETERSCONFIG info) { List parameters = new List(); int count = 0; try { var sql = $"INSERT INTO [dbo].[T_DIM_PARAMETERSCONFIG] ([pid], [supplier], [supplierName], [vehicleType], [partNumber], [partName], [variance], [station], [parameter], [lower_limit ], [upper_limit], [createdata], [creatauser]) VALUES (" + $"'{info.pid}', '{info.supplier}', '{info.supplierName}', '{info.vehicleType}', '{info.partNumber}', '{info.partName}', '{info.variance}', '{info.station}', '{info.parameter}', {info.lower_limit}, {info.upper_limit}, '{info.createdata}', '{info.creatauser}');"; using (IDataSession session = AppDataFactory.CreateSession("maindbEQUIPMENT")) { //插入基本信息 count = session.ExecuteSql(sql, parameters.ToArray()); } return count; } catch (Exception ex) { throw ex; } } #endregion #region 更新信息 /// /// 更新信息 /// /// /// 更新行数 public int Update(PARAMETERSCONFIG info) { int count = 0; List parameters = new List(); try { var sql = $"update T_DIM_PARAMETERSCONFIG set supplier='{info.supplier}',supplierName='{info.supplierName}',vehicleType='{info.vehicleType}',partNumber='{info.partNumber}',partName='{info.partName}',variance='{info.variance}',station='{info.station}',parameter='{info.parameter}',lower_limit='{info.lower_limit}',upper_limit='{info.upper_limit}'where pid = '{info.pid}'"; using (IDataSession session = AppDataFactory.CreateSession("maindbEQUIPMENT")) { //更新基本信息 count = session.ExecuteSql(sql, parameters.ToArray()); } return count; } catch (Exception ex) { throw ex; } } #endregion #region 逻辑删除 /// /// 逻辑删除信息 /// /// /// 删除个数 public int Delete(PARAMETERSCONFIG info) { StringBuilder sqlBuilder = new StringBuilder(); List parameters = new List(); int count = 0; try { using (IDataSession session = AppDataFactory.CreateSession("maindbEQUIPMENT")) { //删除基本信息 sqlBuilder.Append("delete T_DIM_PARAMETERSCONFIG "); sqlBuilder.Append("WHERE pid = @pid "); parameters.Add(new DataParameter { ParameterName = "pid", DataType = DbType.String, Value = info.pid }); count = session.ExecuteSql(sqlBuilder.ToString(), parameters.ToArray()); } return count; } catch (Exception ex) { throw ex; } } #endregion } }