namespace BLL { using System.Collections.Generic; using System.Linq; using Model; public static class SubcontractLeasingProtocolService { public static Model.SUBQHSEDB db = Funs.DB; /// ///获取协议信息 /// /// public static Model.QualityAudit_SubcontractLeasingProtocol GetSubcontractLeasingProtocolById(string id) { return Funs.DB.QualityAudit_SubcontractLeasingProtocol.FirstOrDefault(e => e.Id == id); } /// ///获取协议信息 /// /// public static Model.QualityAudit_SubcontractLeasingProtocol GetSubcontractLeasingProtocolByUnitIdProjectId(string projectId, string unitId) { return Funs.DB.QualityAudit_SubcontractLeasingProtocol.FirstOrDefault(e => e.ProjectId == projectId && e.UnitId == unitId); } /// ///获取分包协议信息 /// /// public static List GetSubcontractLeasingProtocolListByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { return (from x in db.QualityAudit_SubcontractLeasingProtocol join y in db.Base_Unit on x.UnitId equals y.UnitId where x.ProjectId == projectId orderby x.CompileDate, y.UnitCode descending select x).ToList(); } } /// /// 根据项目及单位类型获取单位信息 /// /// public static List GetSubcontractLeasingProtocolListByProjectIdUnitType(string projectId, string unitType) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { return (from x in db.QualityAudit_SubcontractLeasingProtocol join y in db.Base_Unit on x.UnitId equals y.UnitId where x.ProjectId == projectId// && x.UnitType == unitType orderby x.CompileDate, y.UnitCode descending select x).ToList(); } } /// /// 增加分包协议信息 /// /// public static void AddSubcontractLeasingProtocol(QualityAudit_SubcontractLeasingProtocol model) { SUBQHSEDB db = Funs.DB; QualityAudit_SubcontractLeasingProtocol newmodel = new QualityAudit_SubcontractLeasingProtocol { Id = SQLHelper.GetNewID(typeof(Model.QualityAudit_SubcontractLeasingProtocol)), ProjectId = model.ProjectId, UnitId = model.UnitId, Code = model.Code, Name = model.Name, Content = model.Content, ValidStartDate = model.ValidStartDate, ValidEndDate = model.ValidEndDate, CompileMan = model.CompileMan, CompileDate = model.CompileDate, }; db.QualityAudit_SubcontractLeasingProtocol.InsertOnSubmit(newmodel); db.SubmitChanges(); } /// ///修改分包协议信息 /// /// public static void UpdateSubcontractLeasingProtocol(Model.QualityAudit_SubcontractLeasingProtocol model) { Model.SUBQHSEDB db = Funs.DB; Model.QualityAudit_SubcontractLeasingProtocol newmodel = db.QualityAudit_SubcontractLeasingProtocol.FirstOrDefault(e => e.Id == model.Id); if (newmodel != null) { newmodel.Code = model.Code; newmodel.Name = model.Name; newmodel.Content = model.Content; newmodel.UnitId = model.UnitId; newmodel.CompileMan = model.CompileMan; newmodel.CompileDate = model.CompileDate; newmodel.ValidStartDate = model.ValidStartDate; newmodel.ValidEndDate = model.ValidEndDate; db.SubmitChanges(); } } /// /// 根据分包协议Id删除一个分包协议信息 /// /// public static void DeleteProjectSubcontractLeasingProtocolById(string modelId) { Model.SUBQHSEDB db = Funs.DB; Model.QualityAudit_SubcontractLeasingProtocol delModel = db.QualityAudit_SubcontractLeasingProtocol.FirstOrDefault(e => e.Id == modelId); if (delModel != null) { db.QualityAudit_SubcontractLeasingProtocol.DeleteOnSubmit(delModel); db.SubmitChanges(); } } /// ///获取当前人单位是否 施工工分包单位且非本单位 /// /// public static bool GetSubcontractLeasingProtocolTypeByProjectIdUnitId(string projectId, string unitId) { bool isShow = false; string thisUnitId = string.Empty; var thisUnit = CommonService.GetIsThisUnit(); if (thisUnit != null) { thisUnitId = thisUnit.UnitId; } if (unitId != thisUnitId) { var pUnit = Funs.DB.QualityAudit_SubcontractLeasingProtocol.FirstOrDefault(e => e.ProjectId == projectId && e.UnitId == unitId); if (pUnit != null) { //if (pUnit.UnitType == Const.SubcontractLeasingProtocolType_2 || pUnit.UnitType == Const.SubcontractLeasingProtocolType_0) //{ // isShow = true; //} } } return isShow; } #region 项目类型单位表下拉框 /// /// 项目类型单位表下拉框 /// /// 下拉框名字 /// 是否显示请选择 public static void InitUnitDropDownList(FineUIPro.DropDownList dropName, string projectId, string unitType, bool isShowPlease) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var pUnit = (from x in db.QualityAudit_SubcontractLeasingProtocol join y in db.Base_Unit on x.UnitId equals y.UnitId where x.ProjectId == projectId //&& x.UnitType == unitType orderby y.UnitCode select y).ToList(); dropName.DataValueField = "UnitId"; dropName.DataTextField = "UnitName"; dropName.DataSource = pUnit; dropName.DataBind(); if (isShowPlease) { Funs.FineUIPleaseSelect(dropName); } } } #endregion /// /// 根据Id删除分包协议 /// /// public static void DeleteSubcontractLeasingProtocolById(string id) { var q = (from x in db.QualityAudit_SubcontractLeasingProtocol where x.Id == id select x).ToList(); if (q != null) { db.QualityAudit_SubcontractLeasingProtocol.DeleteAllOnSubmit(q); db.SubmitChanges(); } } //public static List GetSubcontractLeasingProtocolListByProjectIdForApi(string projectId, string unitType, string name) //{ // Model.SUBQHSEDB db = Funs.DB; // string[] types = unitType.Split(','); // return (from x in db.QualityAudit_SubcontractLeasingProtocol // join y in db.Base_Unit on x.UnitId equals y.UnitId // where x.ProjectId == projectId // where unitType == "" || types.Contains(x.UnitType) // where name == "" || y.UnitName.Contains(name) // orderby x.UnitType, y.UnitCode // select x).ToList(); //} } }