using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CY.IDAL;
using System.Data.SqlClient;
using System.Data;
using CY.Model;
using System.Transactions;
namespace CY.SQLDAL
{
//行政物品管理
public class OA_ShebeiManageDAL : IOA_ShebeiManageDAL
{
private Database _dataBase = null;
public OA_ShebeiManageDAL()
{
_dataBase = new Database();
}
public OA_ShebeiManageDAL(Database dataBase)
{
_dataBase = dataBase;
}
///
/// 新增
///
///
///
public bool InserModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.OA_ShebeiManage trueModel = model as Model.OA_ShebeiManage;
if (trueModel == null)
{
return false;
}
SqlParameter QiyongTime = null;
if (trueModel.QiyongTime.HasValue)
{
QiyongTime = new SqlParameter("@QiyongTime", trueModel.QiyongTime.Value);
}
else
{
QiyongTime = new SqlParameter("@QiyongTime", DBNull.Value);
}
IList sqlParms = new List()
{ new SqlParameter("@MemberId", trueModel.MemberId) ,
new SqlParameter("@CateId", trueModel.CateId) ,
new SqlParameter("@Name", trueModel.Name) ,
new SqlParameter("@Price", trueModel.Price.HasValue?trueModel.Price.Value:0) ,
new SqlParameter("@Anzhuangdidian", string.IsNullOrEmpty(trueModel.Anzhuangdidian)?"":trueModel.Anzhuangdidian) ,
QiyongTime,
new SqlParameter("@Zerenren",trueModel.Zerenren.HasValue?trueModel.Zerenren.Value:0 ) ,
new SqlParameter("@ZerenrenName", string.IsNullOrEmpty(trueModel.ZerenrenName)?"":trueModel.ZerenrenName) ,
new SqlParameter("@Status", trueModel.Status) ,
new SqlParameter("@LastUpdateTime", trueModel.LastUpdateTime) ,
new SqlParameter("@Operator", trueModel.Operator) ,
new SqlParameter("@Remark",string.IsNullOrEmpty(trueModel.Remark)?"":trueModel.Remark )
};
string sql = "Insert Into OA_ShebeiManage ([MemberId],[CateId],[Name],[Price], [Status],[Anzhuangdidian],[QiyongTime],[Zerenren],[ZerenrenName],[LastUpdateTime],[Operator],[Remark])"
+ " Values (@MemberId,@CateId,@Name, @Price, @Status,@Anzhuangdidian,@QiyongTime,@Zerenren,@ZerenrenName,@LastUpdateTime,@Operator,@Remark )";
try
{
_dataBase.ExecuteSql(sql, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 修改
///
///
///
public bool UpdateModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.OA_ShebeiManage trueModel = model as Model.OA_ShebeiManage;
if (trueModel == null)
{
return false;
}
SqlParameter QiyongTime = null;
if (trueModel.QiyongTime.HasValue)
{
QiyongTime = new SqlParameter("@QiyongTime", trueModel.QiyongTime.Value);
}
else
{
QiyongTime = new SqlParameter("@QiyongTime", DBNull.Value);
}
IList sqlParms = new List()
{ new SqlParameter("@Keyid", trueModel.Keyid) ,
new SqlParameter("@MemberId", trueModel.MemberId) ,
new SqlParameter("@CateId", trueModel.CateId) ,
new SqlParameter("@Name", trueModel.Name) ,
new SqlParameter("@Price", trueModel.Price.HasValue?trueModel.Price.Value:0) ,
new SqlParameter("@Anzhuangdidian", string.IsNullOrEmpty(trueModel.Anzhuangdidian)?"":trueModel.Anzhuangdidian) ,
QiyongTime,
new SqlParameter("@Zerenren",trueModel.Zerenren.HasValue?trueModel.Zerenren.Value:0 ) ,
new SqlParameter("@ZerenrenName", string.IsNullOrEmpty(trueModel.ZerenrenName)?"":trueModel.ZerenrenName) ,
new SqlParameter("@Status", trueModel.Status) ,
new SqlParameter("@LastUpdateTime", trueModel.LastUpdateTime) ,
new SqlParameter("@Operator", trueModel.Operator) ,
new SqlParameter("@Remark",string.IsNullOrEmpty(trueModel.Remark)?"":trueModel.Remark )
};
string sql = "Update OA_ShebeiManage Set [MemberId]=@MemberId,[CateId]=@CateId,[Name]=@Name,[Price]=@Price,[Status]=@Status,[Anzhuangdidian]=@Anzhuangdidian,[QiyongTime]=@QiyongTime,[Zerenren]=@Zerenren,[ZerenrenName]=@ZerenrenName, [LastUpdateTime]=@LastUpdateTime, [Operator]=@Operator,[Remark]=@Remark where [Keyid] =@Keyid ";
try
{
_dataBase.ExecuteSql(sql, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 删除
///
///
///
public bool DeleteModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.OA_ShebeiManage trueModel = model as Model.OA_ShebeiManage;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{
new SqlParameter("@Keyid",trueModel.Keyid)
};
string sql = "Delete OA_ShebeiManage Where [Keyid] = @Keyid ";
try
{
_dataBase.ExecuteSql(sql, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 分页查询
///
///
///
///
public IEnumerable SelectModelPage(Infrastructure.Query.Query query, Infrastructure.Query.Pagination pagination)
{
throw new NotImplementedException();
}
///
/// 单个查询
///
///
///
public IEnumerable SelectAllModel(Infrastructure.Query.Query query)
{
return _dataBase.SelectModel(" * ", " OA_ShebeiManage ") as IList;//执行查询
}
///
/// 根据编号获得信息
///
/// 编号
///
public OA_ShebeiManage GetModelByKeyid(int? Keyid)
{
try
{
if (Keyid == null || Keyid < 0)
return null;//错误数据返会空
IList result = _dataBase.SelectModel(" * ", " OA_ShebeiManage ", string.Format(" Keyid='{0}'", Keyid)) as IList;//执行查询
return (null == result || result.Count == 0) ? null : result[0];//返回结果
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 分页查询
///
///
///
public IEnumerable SelectModelPage(Infrastructure.Query.Pagination pagination, Guid _MemberId, int? _CateId, string _Name, int? _Status, string Anzhuangdidian, int? Zerenren)
{
try
{
string condition = " 1=1 ";
if (_MemberId != Guid.Empty)
condition += " and a.MemberId = '" + _MemberId + "'";
if (_CateId.HasValue)
condition += " and a.CateId = '" + _CateId + "'";
if (!string.IsNullOrEmpty(_Name))
condition += " and a.Name = '" + _Name + "'";
if (!string.IsNullOrEmpty(Anzhuangdidian))
condition += " and a.Anzhuangdidian = '" + Anzhuangdidian + "'";
if (_Status.HasValue)
condition += " and a.Status = '" + _Status + "'";
if (Zerenren.HasValue)
condition += " and a.Zerenren = '" + Zerenren + "'";
return _dataBase.SelectModelPage(pagination, " a.*,b.Name as CateName ", " OA_ShebeiManage as a left join OA_ShebeiCate as b on a.CateId = b.Keyid ", " a.CateId ASC,a.Keyid DESC", " Keyid desc ", condition);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 检测物品是否重复
///
///
///
///
///
public int IsExitsName(string Name, Guid MemberId, string Keyid)
{
try
{
IList result = _dataBase.SelectModel("*", "OA_ShebeiManage", " Name = '" + Name + "' and MemberId ='" + MemberId + "' and Keyid <> '" + Keyid + "'") as IList;//执行查询
if (null == result || result.Count == 0)
return 0;
else
return 1;
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 获取物品分类
///
///
///
public IEnumerable GetDataByType(Guid _MemberId)
{
try
{
string condition = " 1=1 ";
if (_MemberId != Guid.Empty)
condition += " and MemberId = '" + _MemberId + "'";
return _dataBase.SelectModel(" * ", " OA_ShebeiCate ", condition);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 根据分类获取物品列表
///
///
///
///
///
public IEnumerable GetDataByCate(Guid _MemberId,int? _CateId,bool IsSearch)
{
try
{
string condition = " 1=1 ";
if (_MemberId != Guid.Empty)
condition += " and MemberId = '" + _MemberId + "'";
if (_CateId>0)
condition += " and CateId = '" + _CateId + "'";
if (!IsSearch)
condition += " and AllNum > ReceiveNum and Status = '1' ";
return _dataBase.SelectModel(" * ", " OA_ShebeiManage ", condition);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 根据客户编号获取客户
///
/// 客户编号
///
public IEnumerable SelectListListByCustomId(string CustomId, Guid MemberId)
{
if (string.IsNullOrEmpty(CustomId))
return null;//错误数据返会空
try
{
IList result = _dataBase.SelectModel(" a.*,a.AllNum-a.ReceiveNum as havenum,b.Name as CateName", "OA_ShebeiManage as a left join OA_ShebeiCate as b on a.CateId = b.Keyid", string.Format(" a.Keyid in ({0}) and a.MemberId ='{1}' order by b.Name ASC", CustomId, MemberId)) as IList;//执行查询
return result;//返回结果
}
catch (Exception ex)
{
throw ex;
}
}
}
}