using Dapper; using Estsh.Core.Dapper; using Estsh.Core.IRepositories; using Estsh.Core.Model.Result; using Estsh.Core.Models; using Estsh.Core.Repository.IRepositories; using System.Collections; using System.Data; using System.Text; /*************************************************************************************************** * * 更新人:sitong.dong * 描述:看板模块DAL类 * 修改时间:2022.06.22 * 修改日志:系统迭代升级 * **************************************************************************************************/ namespace Estsh.Core.Repositories { /// /// 处理抽样模块的业务数据 /// public class SampleTestDefineRepository : BaseRepository, ISampleTestDefineRepository { public SampleTestDefineRepository(DapperDbContext _dapperDbContext) : base(_dapperDbContext) { } #region 成员方法 /// /// 根据传入条件获得抽样列表数据 /// public List GetList(string strWhere, string filedOrder) { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); StringBuilder strSql = new StringBuilder(); strSql.Append(" select a.*,b.model_name,c.type_name,a.lot_qty-a.counter as qty from dbo.g_ab_testplan a LEFT JOIN dbo.sys_model b ON a.model_id = b.model_id LEFT JOIN dbo.sys_model_type c ON b.model_type_id = c.type_id "); if (strWhere != null && !strWhere.Trim().Equals("")) { strSql.Append(" where " + strWhere); } if (filedOrder != null && !filedOrder.Trim().Equals("")) { strSql.Append(" order by " + filedOrder); } List result = dbConn.Query(strSql.ToString()).ToList(); return result; } } /// /// 根据传入条件获得抽样列表数据 /// public DataTable GetDataTable(string strWhere, string filedOrder) { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); StringBuilder strSql = new StringBuilder(); strSql.Append(" select a.*,b.model_name,c.type_name,a.lot_qty-a.counter as qty from dbo.g_ab_testplan a LEFT JOIN dbo.sys_model b ON a.model_id = b.model_id LEFT JOIN dbo.sys_model_type c ON b.model_type_id = c.type_id "); if (strWhere != null && !strWhere.Trim().Equals("")) { strSql.Append(" where " + strWhere); } if (filedOrder != null && !filedOrder.Trim().Equals("")) { strSql.Append(" order by " + filedOrder); } DataTable table = new DataTable(); var reader = dbConn.ExecuteReader(strSql.ToString()); table.Load(reader); return table; } } /// /// 根据分页条件获取分页数据列表 /// public Hashtable GetListByPage(int PageSize, int PageIndex, string strWhere, string OrderBy) { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); Hashtable result = new Hashtable(); string table = "dbo.g_ab_testplan a LEFT JOIN dbo.sys_model b ON a.model_id = b.model_id LEFT JOIN dbo.sys_model_type c ON b.model_type_id = c.type_id "; DynamicParameters parameters = new DynamicParameters(); parameters.Add("@TotalCount", 0, DbType.Int32, ParameterDirection.Output); parameters.Add("@TotalPage", 0,DbType.Int32, ParameterDirection.Output); parameters.Add("@Table", table); parameters.Add("@Column", "a.*,b.model_name,c.type_name,a.lot_qty-a.counter as qty "); parameters.Add("@OrderColumn", OrderBy); parameters.Add("@GroupColumn", ""); parameters.Add("@PageSize", PageSize); parameters.Add("@CurrentPage", PageIndex); parameters.Add("@Group", 0); parameters.Add("@Condition", strWhere); List depts = dbConn.Query("Com_Pagination", parameters, commandType: CommandType.StoredProcedure).ToList(); result.Add("dataList", depts); result.Add("totalCount", parameters.Get("@TotalCount")); return result; } } /// /// 获取下拉框抽样车型ModelType数据 /// /// public List GetSelectModelType() { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); StringBuilder strSql = new StringBuilder(); strSql.Append("select type_id as [value],type_name as [key] from sys_model_type where enabled='Y' "); List result = dbConn.Query(strSql.ToString()).ToList(); return result; } } /// /// 获取下拉框抽样配置Model数据 /// /// public List GetSelectModel() { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); StringBuilder strSql = new StringBuilder(); strSql.Append("select model_id as [value],model_name as [key] from sys_model where enabled='Y' "); List result = dbConn.Query(strSql.ToString()).ToList(); return result; } } /// /// 插入抽样数据 /// /// /// public int Insert(GAbTestplan htParams) { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); StringBuilder SqlStringBuilder = new StringBuilder(1024); SqlStringBuilder.Append("INSERT INTO g_ab_testplan( model_id"); SqlStringBuilder.Append(" , start_date "); SqlStringBuilder.Append(" , end_date "); SqlStringBuilder.Append(" , lot_qty "); SqlStringBuilder.Append(" , counter "); SqlStringBuilder.Append(" , location_counter "); SqlStringBuilder.Append(" , enabled "); SqlStringBuilder.Append(" ,create_userid "); SqlStringBuilder.Append(" ,create_time "); SqlStringBuilder.Append(" ,guid) "); SqlStringBuilder.Append(" VALUES(@modelId "); SqlStringBuilder.Append(" , @startDate "); SqlStringBuilder.Append(" , @endDate "); SqlStringBuilder.Append(" , @lotQty "); SqlStringBuilder.Append(" , 0 "); SqlStringBuilder.Append(" , 0 "); SqlStringBuilder.Append(" , @enabled "); SqlStringBuilder.Append(" , @createUserid "); SqlStringBuilder.Append(" , CONVERT(varchar(50), GETDATE(), 21)"); SqlStringBuilder.Append(" , NEWID()) "); int result = dbConn.Execute(SqlStringBuilder.ToString(), htParams); return result; } } /// /// 更新抽样数据 /// /// /// public int Update(GAbTestplan htParams) { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); StringBuilder SqlStringBuilder = new StringBuilder(1024); SqlStringBuilder.Append("update g_ab_testplan "); SqlStringBuilder.Append("SET model_id=@modelId "); SqlStringBuilder.Append(" ,start_date=@startDate "); SqlStringBuilder.Append(" , end_date=@endDate "); SqlStringBuilder.Append(" , lot_qty=@lotQty "); SqlStringBuilder.Append(" , enabled=@enabled "); SqlStringBuilder.Append(" ,update_userid=@updateUserid "); SqlStringBuilder.Append(" ,update_time=CONVERT(varchar(50), GETDATE(), 21)"); SqlStringBuilder.Append(" "); SqlStringBuilder.Append("WHERE testplan_id=@testplanId "); int result = dbConn.Execute(SqlStringBuilder.ToString(), htParams); return result; } } /// /// 删除抽样数据 /// /// /// public int Delete(String testplan_id) { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); String delStr = "update g_ab_testplan set Enabled='N' where testplan_id = @testplan_id"; DynamicParameters htparams = new DynamicParameters(); htparams.Add("@testplan_id", testplan_id); int result = dbConn.Execute(delStr, htparams); return result; } } //启用 public int EnableData(String ids) { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); String delStr = "update g_ab_testplan set Enabled='Y' WHERE testplan_id in (" + ids + ")"; int result = dbConn.Execute(delStr); return result; } } //禁用 public int DisableData(String ids) { using (IDbConnection dbConn = dapperDbContext.GetDbConnection()) { dbConn.Open(); String delStr = "update g_ab_testplan set Enabled='N' WHERE testplan_id in (" + ids + ")"; int result = dbConn.Execute(delStr); return result; } } #endregion 成员方法 } }