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.

179 lines
7.4 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.Model.Result;
using Estsh.Core.Models;
using Estsh.Core.Repository.IRepositories;
using System.Collections;
using System.Data;
using System.Text;
/***************************************************************************************************
*
* 更新人sitong.dong
* 描述:库位管理
* 修改时间2022.06.22
* 修改日志:系统迭代升级
*
**************************************************************************************************/
namespace Estsh.Core.Repositories
{
/// <summary>
/// 数据访问类
/// </summary>
public class WarehouseDefineRepository : BaseRepository<SysWarehouse>, IWarehouseDefineRepository
{
public WarehouseDefineRepository(DapperDbContext _dapperDbContext) : base(_dapperDbContext)
{
}
#region 成员方法
/// <summary>
/// 获得菜单列表数据
/// </summary>
public List<SysWarehouse> getList(string strWhere,string filedOrder)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select warehouse_id,warehouse_name,warehouse_desc,a.enabled,b.factory_id,b.factory_name from sys_warehouse a LEFT JOIN sys_factory b ON a.factory_id = b.factory_id ");
if (!strWhere.Trim().Equals(""))
{
strSql.Append(" where " + strWhere);
}
if (filedOrder != null && !filedOrder.Trim().Equals(""))
{
strSql.Append(" order by " + filedOrder);
}
List<SysWarehouse> result = dbConn.Query<SysWarehouse>(strSql.ToString()).ToList();
return result;
}
}
/// <summary>
/// 获取分页数据列表
/// </summary>
public Hashtable getListByPage(int PageSize, int PageIndex, string strWhere, string OrderBy)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
Hashtable result = new Hashtable();
DynamicParameters Params = new DynamicParameters();
Params.Add("@TotalCount", 0, DbType.Int32, ParameterDirection.Output);
Params.Add("@TotalPage", 0, DbType.Int32, ParameterDirection.Output);
Params.Add("@GroupColumn", "");
Params.Add("@Table", "sys_warehouse a LEFT JOIN sys_factory b ON a.factory_id = b.factory_id");
Params.Add("@Column", "warehouse_id,warehouse_name,warehouse_desc,a.enabled,b.factory_id,b.factory_name");
Params.Add("@PageSize", PageSize);
Params.Add("@CurrentPage", PageIndex);
Params.Add("@Condition", strWhere);
Params.Add("@OrderColumn", OrderBy);
Params.Add("@Group", 0);
List<SysWarehouse> dataList = dbConn.Query<SysWarehouse>("Com_Pagination", Params, commandType: CommandType.StoredProcedure).ToList();
result.Add("dataList", dataList);
result.Add("totalCount", Params.Get<int>("@TotalCount"));
return result;
}
}
public SysWarehouse getWarehouseByExistName(string warehouseName)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_warehouse where warehouse_name='"+ warehouseName + "'");
SysWarehouse result = dbConn.Query<SysWarehouse>(strSql.ToString()).FirstOrDefault();
return result;
}
}
/// <summary>
/// 获取下拉框菜单数据 这里显示的是待添加的厂区信息,厂区名称
/// </summary>
/// <returns></returns>
public List<KeyValueResult> getSelectFactory()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select factory_id as [value],factory_name as [key] from sys_factory where Enabled = 'Y'");
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql.ToString()).ToList();
return result;
}
}
/// <summary>
/// 插入菜单数据
/// </summary>
/// <param name="htParams"></param>
/// <returns></returns>
public int saveWarehouse(SysWarehouse htParams)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("INSERT INTO dbo.sys_warehouse( warehouse_name ,warehouse_desc ,factory_id,factory_code,enabled , create_userid, create_time,guid)VALUES ");
SqlStringBuilder.Append("(@warehouseName,@warehouseDesc,@factoryId,@factoryCode,@enabled, @createUserid, CONVERT(varchar(50), GETDATE(), 21),newid()) ");
int result = dbConn.Execute(SqlStringBuilder.ToString(), htParams);
return result;
}
}
/// <summary>
/// 更新菜单数据
/// </summary>
/// <param name="htParams"></param>
/// <returns></returns>
public int updateWarehouse(SysWarehouse htParams)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("UPDATE sys_warehouse SET ");
SqlStringBuilder.Append("warehouse_name=@warehouseName,warehouse_desc=@warehouseDesc,factory_id=@factoryId,factory_code=@factoryCode,enabled=@enabled ,update_userid = @updateUserId ,update_time=CONVERT(varchar(50), GETDATE(), 21) ");
SqlStringBuilder.Append("WHERE warehouse_id=@warehouseId ");
int result = dbConn.Execute(SqlStringBuilder.ToString(), htParams);
return result;
}
}
//启用
public int EnableWarehouse(String warehouse_id)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
String delStr = "update sys_warehouse set Enabled='Y' WHERE warehouse_id = @warehouseId";
DynamicParameters htparams = new DynamicParameters();
htparams.Add("@warehouseId", warehouse_id);
int result = dbConn.Execute(delStr, htparams);
return result;
}
}
//禁用
public int DisableWarehouse(String warehouse_id)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
String delStr = "update sys_warehouse set Enabled='N' WHERE warehouse_id = @warehouseId";
DynamicParameters htparams = new DynamicParameters();
htparams.Add("@warehouseId", warehouse_id);
int result = dbConn.Execute(delStr, htparams);
return result;
}
}
#endregion 成员方法
}
}