|
|
using Dapper;
|
|
|
using Estsh.Core.Dapper;
|
|
|
using Estsh.Core.IRepositories;
|
|
|
using Estsh.Core.Models;
|
|
|
using System.Collections;
|
|
|
using System.Data;
|
|
|
using System.Text;
|
|
|
|
|
|
|
|
|
/***************************************************************************************************
|
|
|
*
|
|
|
* 更新人:sitong.dong
|
|
|
* 描述:部门管理
|
|
|
* 修改时间:2022.06.22
|
|
|
* 修改日志:系统迭代升级
|
|
|
*
|
|
|
**************************************************************************************************/
|
|
|
namespace Estsh.Core.Repositories
|
|
|
{
|
|
|
/// <summary>
|
|
|
/// 部门管理
|
|
|
/// </summary>
|
|
|
public class DeptRepository : BaseRepository<SysDept>, IDeptRepository
|
|
|
{
|
|
|
public DeptRepository(DapperDbContext _dapperDbContext) : base(_dapperDbContext)
|
|
|
{
|
|
|
}
|
|
|
#region 成员方法
|
|
|
|
|
|
/// <summary>
|
|
|
/// 根据传入条件获得部门列表数据
|
|
|
/// </summary>
|
|
|
public List<SysDept> getList(string strWhere, string filedOrder)
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
strSql.Append(" select * from dbo.sys_dept");
|
|
|
if (strWhere != null && !strWhere.Trim().Equals(""))
|
|
|
{
|
|
|
strSql.Append(" where " + strWhere);
|
|
|
}
|
|
|
if (filedOrder != null && !filedOrder.Trim().Equals(""))
|
|
|
{
|
|
|
strSql.Append(" order by " + filedOrder);
|
|
|
}
|
|
|
List<SysDept> result = dbConn.Query<SysDept>(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 paras = new DynamicParameters();
|
|
|
paras.Add("@Table", typeof(SysDept).GetEntityTableName());
|
|
|
paras.Add("@Column", " * ");
|
|
|
paras.Add("@OrderColumn", OrderBy);
|
|
|
paras.Add("@GroupColumn", "");
|
|
|
paras.Add("@PageSize", PageSize);
|
|
|
paras.Add("@CurrentPage", PageIndex);
|
|
|
paras.Add("@Group", 0);
|
|
|
paras.Add("@Condition", strWhere);
|
|
|
paras.Add("@TotalCount", 0, DbType.Int32, ParameterDirection.Output);
|
|
|
paras.Add("@TotalPage", 0, DbType.Int32, ParameterDirection.Output);
|
|
|
|
|
|
List<SysDept> depts = dbConn.Query<SysDept>("Com_Pagination", paras, commandType: CommandType.StoredProcedure).ToList();
|
|
|
result.Add("dataList", depts);
|
|
|
result.Add("totalCount", paras.Get<int>("@TotalCount"));
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 插入部门数据
|
|
|
/// </summary>
|
|
|
/// <param name="htParams"></param>
|
|
|
/// <returns></returns>
|
|
|
public int saveDept(SysDept dept)
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
|
SqlStringBuilder.Append("INSERT INTO sys_dept (dept_code ");
|
|
|
SqlStringBuilder.Append(" , dept_name ");
|
|
|
SqlStringBuilder.Append(" , guid ");
|
|
|
SqlStringBuilder.Append(" ,dept_desc ");
|
|
|
SqlStringBuilder.Append(" ,create_userid ");
|
|
|
SqlStringBuilder.Append(" ,create_time ");
|
|
|
SqlStringBuilder.Append(" ,enabled) ");
|
|
|
SqlStringBuilder.Append(" VALUES(@deptCode ");
|
|
|
SqlStringBuilder.Append(" , @deptName ");
|
|
|
SqlStringBuilder.Append(" , @guid ");
|
|
|
SqlStringBuilder.Append(" ,@deptDesc");
|
|
|
SqlStringBuilder.Append(" ,@createUserid");
|
|
|
SqlStringBuilder.Append(" ,CONVERT(varchar(50), GETDATE(), 21)");
|
|
|
SqlStringBuilder.Append(" ,'Y')");
|
|
|
|
|
|
var result = dbConn.Execute(SqlStringBuilder.ToString(), dept);
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 更新部门数据
|
|
|
/// </summary>
|
|
|
/// <param name="htParams"></param>
|
|
|
/// <returns></returns>
|
|
|
public int updateDept(SysDept dept)
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
|
SqlStringBuilder.Append("update sys_dept ");
|
|
|
SqlStringBuilder.Append("SET dept_code=@deptCode ");
|
|
|
SqlStringBuilder.Append(", dept_name=@deptName ");
|
|
|
SqlStringBuilder.Append(", dept_desc=@deptDesc ");
|
|
|
SqlStringBuilder.Append(",update_userid = @updateUserId ");
|
|
|
SqlStringBuilder.Append(",update_time = CONVERT(varchar(50), GETDATE(), 21)");
|
|
|
SqlStringBuilder.Append("WHERE dept_id=@deptId ");
|
|
|
|
|
|
var result = dbConn.Execute(SqlStringBuilder.ToString(), dept);
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 删除部门数据
|
|
|
/// </summary>
|
|
|
/// <param name="ruid"></param>
|
|
|
/// <returns></returns>
|
|
|
public int deleteDept(String deptId)
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
String delStr = "update sys_dept set Enabled='N' where dept_id = "+ deptId;
|
|
|
var result = dbConn.Execute(delStr);
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//启用
|
|
|
public int EnableData(String ids)
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
String delStr = "update sys_dept set Enabled='Y' WHERE dept_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 sys_dept set Enabled='N' WHERE dept_id in (" + ids + ")";
|
|
|
int result = dbConn.Execute(delStr);
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public async Task<List<SysDept>> GetAll()
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
var result = await Task.Run(() => dbConn.Query<SysDept>("SELECT * FROM sys_dept").ToList());
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
#endregion 成员方法
|
|
|
}
|
|
|
}
|