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_DepartmentDAL : IOA_DepartmentDAL { private Database _dataBase = null; public OA_DepartmentDAL() { _dataBase = new Database(); } /// /// 新增 /// /// /// public bool InserModel(Infrastructure.Domain.IAggregateRoot model) { Model.OA_Department trueModel = model as Model.OA_Department; if (trueModel == null) { return false; } IList sqlParms = new List() { new SqlParameter("@FirmId",trueModel.FirmId), new SqlParameter("@Name",trueModel.Name), new SqlParameter("@Status",trueModel.Status), new SqlParameter("@LastUpdateTime",trueModel.LastUpdateTime), new SqlParameter("@Operator",trueModel.Operator), new SqlParameter("@Remark",trueModel.Remark) }; try { _dataBase.Query("sp_OA_Department_Insert", CommandType.StoredProcedure, sqlParms.ToArray()); } catch (Exception ex) { throw ex; } return true; } /// /// 修改 /// /// /// public bool UpdateModel(Infrastructure.Domain.IAggregateRoot model) { Model.OA_Department trueModel = model as Model.OA_Department; if (trueModel == null) { return false; } IList sqlParms = new List() { new SqlParameter("@Keyid",trueModel.Keyid), new SqlParameter("@FirmId",trueModel.FirmId), new SqlParameter("@Name",trueModel.Name), new SqlParameter("@Status",trueModel.Status), new SqlParameter("@LastUpdateTime",trueModel.LastUpdateTime), new SqlParameter("@Operator",trueModel.Operator), new SqlParameter("@Remark",trueModel.Remark) }; try { _dataBase.Query("sp_OA_Department_Update", CommandType.StoredProcedure, sqlParms.ToArray()); } catch (Exception ex) { throw ex; } return true; } /// /// 删除 /// /// /// public bool DeleteModel(Infrastructure.Domain.IAggregateRoot model) { Model.OA_Department trueModel = model as Model.OA_Department; if (trueModel == null) { return false; } IList sqlParms = new List() { new SqlParameter("@Keyid",trueModel.Keyid) }; try { _dataBase.Query("sp_OA_Department_DeleteRow", CommandType.StoredProcedure, 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) { throw new NotImplementedException(); } /// /// 根据编号获得信息 /// /// 编号 /// public OA_Department GetModelByKeyid(int? Keyid) { try { if (Keyid == null || Keyid < 0) return null;//错误数据返会空 IList result = _dataBase.SelectModel("*", "OA_Department", 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, string MemberName, string Status) { try { string condition = " 1=1 "; if (!string.IsNullOrEmpty(MemberName)) { condition += "and Name like '%" + MemberName + "%'"; } if (!string.IsNullOrEmpty(Status)) { condition += " and Status = '" + Status + "'"; } if (MemberId != Guid.Empty) { condition += " and FirmId = '" + MemberId + "'"; } return _dataBase.SelectModelPage(pagination, "*", " OA_Department", " Keyid", "Keyid ", condition); } catch (Exception ex) { throw ex; } } /// /// 根据厂商编号获取部门列表 /// /// /// public IEnumerable SelectListByFirmId(Guid FirmId) { try { if (FirmId == null || FirmId == Guid.Empty) return null;//错误数据返会空 IList result = _dataBase.SelectModel("*", "OA_Staff", string.Format(" FirmId='{0}'", FirmId)) as IList;//执行查询 return result;//返回结果 } catch (Exception ex) { throw ex; } } /// /// 检测部门名称是否重复 /// /// /// /// /// public int IsExitsName(string Name, Guid MemberId, int? Keyid) { try { IList result = _dataBase.SelectModel("*", "OA_Department", " FirmId ='" + MemberId + "' And Name = '" + Name + "'") as IList;//执行查询 if (null == result || result.Count == 0) { return 0; } else { if (result[0].Keyid == Keyid) return 0; else return 1; } } catch (Exception ex) { throw ex; } } } }