using System; using System.Collections.Generic; using System.Linq; using System.Text; using QMAPP.FJC.Entity.Basic; using QMFrameWork.Data; using System.Data; namespace QMAPP.FJC.DAL.Basic { public class CapacityDAL { #region 获取信息 /// <summary> /// 获取信息 /// </summary> /// <param name="">条件</param> /// <returns>*信息</returns> public Capacity Get(Capacity info) { try { using (IDataSession session = AppDataFactory.CreateMainSession()) { //获取信息 info = session.Get<Capacity>(info); } return info; } catch (Exception ex) { throw ex; } } #endregion #region 获取列表 /// <summary> /// 获取列表 /// </summary> /// <param name="condition">条件</param> /// <returns>数据页</returns> public List<Capacity> GetList(Capacity condition) { string sql = null; List<Capacity> list = null; List<DataParameter> parameters = new List<DataParameter>(); try { sql = this.GetQuerySql(condition, ref parameters); using (IDataSession session = AppDataFactory.CreateMainSession()) { list = session.GetList<Capacity>(sql, parameters.ToArray()).ToList(); } return list; } catch (Exception ex) { throw ex; } } #endregion #region 获取原数据表 /// <summary> /// 获取原数据表 /// <param name="condition">条件</param> /// </summary> /// <returns>原数据表</returns> public DataTable GetTable(Capacity condition) { string sql = null; DataTable dt = null; List<DataParameter> parameters = new List<DataParameter>(); try { sql = GetQuerySql(condition, ref parameters); using (IDataSession session = AppDataFactory.CreateMainSession()) { //dt = session.GetTableWithSchema(sql, "T_BD_CAPACITY", parameters.ToArray()); } return dt; } catch (Exception ex) { throw ex; } } #endregion #region 保存数据 /// <summary> /// 保存数据 /// <param name="dt"></param> /// </summary> /// <returns>原数据表</returns> public void Save(DataTable dt) { DateTime nowTime; try { using (IDataSession session = AppDataFactory.CreateMainSession()) { //nowTime = session.GetNowDataTime(); nowTime = DateTime.Now; foreach (DataRow row in dt.Rows) { if (row.RowState == DataRowState.Unchanged) continue; if (row.RowState == DataRowState.Added) { row["CREATEDATA"] = nowTime; row["UPDATEDATA"] = nowTime; row["FLGDEL"] = "0"; } if (row.RowState == DataRowState.Modified) { row["UPDATEDATA"] = nowTime; } } session.UpdateTable(dt); } } catch (Exception ex) { throw ex; } } #endregion #region 获取查询语句 /// <summary> /// 获取查询语句 /// </summary> /// <param name="user">查询条件</param> /// <param name="parameters">参数</param> /// <returns>查询语句</returns> private string GetQuerySql(Capacity condition, ref List<DataParameter> parameters) { StringBuilder sqlBuilder = new StringBuilder(); StringBuilder whereBuilder = new StringBuilder(); try { //构成查询语句 sqlBuilder.Append("SELECT PID,SHIFT_PID,WORKCENTER_PID,CAPACITY,CREATEUSER,CREATEDATA,UPDATEUSER,UPDATEDATA,FLGDEL "); sqlBuilder.Append("FROM T_BD_CAPACITY "); if (!string.IsNullOrWhiteSpace(condition.WORKCENTER_PID)) { whereBuilder.AppendLine(" AND WORKCENTER_PID=@workcenterid"); parameters.Add(new DataParameter("workcenterid", condition.WORKCENTER_PID)); } //查询条件 if (whereBuilder.Length > 0) { sqlBuilder.Append(" WHERE " + whereBuilder.ToString().Substring(4)); } return sqlBuilder.ToString(); } catch (Exception ex) { throw ex; } } #endregion } }