You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

248 lines
10 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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
{
/// <summary>
/// 处理抽样模块的业务数据
/// </summary>
public class SampleTestDefineRepository : BaseRepository<GAbTestplan>, ISampleTestDefineRepository
{
public SampleTestDefineRepository(DapperDbContext _dapperDbContext) : base(_dapperDbContext)
{
}
#region 成员方法
/// <summary>
/// 根据传入条件获得抽样列表数据
/// </summary>
public List<GAbTestplan> 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<GAbTestplan> result = dbConn.Query<GAbTestplan>(strSql.ToString()).ToList();
return result;
}
}
/// <summary>
/// 根据传入条件获得抽样列表数据
/// </summary>
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;
}
}
/// <summary>
/// 根据分页条件获取分页数据列表
/// </summary>
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<GAbTestplan> depts = dbConn.Query<GAbTestplan>("Com_Pagination", parameters, commandType: CommandType.StoredProcedure).ToList();
result.Add("dataList", depts);
result.Add("totalCount", parameters.Get<int>("@TotalCount"));
return result;
}
}
/// <summary>
/// 获取下拉框抽样车型ModelType数据
/// </summary>
/// <returns></returns>
public List<KeyValueResult> 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<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql.ToString()).ToList();
return result;
}
}
/// <summary>
/// 获取下拉框抽样配置Model数据
/// </summary>
/// <returns></returns>
public List<KeyValueResult> 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<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql.ToString()).ToList();
return result;
}
}
/// <summary>
/// 插入抽样数据
/// </summary>
/// <param name="htParams"></param>
/// <returns></returns>
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;
}
}
/// <summary>
/// 更新抽样数据
/// </summary>
/// <param name="htParams"></param>
/// <returns></returns>
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;
}
}
/// <summary>
/// 删除抽样数据
/// </summary>
/// <param name="ruid"></param>
/// <returns></returns>
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 成员方法
}
}