/// <summary> /// Edit project Details. /// </summary> /// <param name="contractDetails"></param> /// <param name="contractProject"></param> /// <returns></returns> private bool EditProjects(BusinessEntities.Contract contractDetails, DataTable contractProject, RaveHRCollection CRDetailsCollection) { int counter = 0; bool sucess = true; Rave.HR.BusinessLayer.Contracts.ContractProject editContractProject = new Rave.HR.BusinessLayer.Contracts.ContractProject(); List <BusinessEntities.ContractProject> listProjectData = new List <BusinessEntities.ContractProject>(); StringBuilder allProjectsName = new StringBuilder(string.Empty); RaveHRCollection AddedCRDetailsCollection = new RaveHRCollection(); foreach (DataRow dr in contractProject.Rows) { counter++; BusinessEntities.ContractProject ProjectData = new BusinessEntities.ContractProject(); ProjectData.ContractID = contractDetails.ContractID; ProjectData.ProjectType = dr[DbTableColumn.ProjectType].ToString(); ProjectData.ProjectStartDate = Convert.ToDateTime(dr[DbTableColumn.ProjectStartDate]); ProjectData.ProjectEndDate = Convert.ToDateTime(dr[DbTableColumn.ProjectEndDate]); ProjectData.ProjectName = dr[DbTableColumn.Con_ProjectName].ToString(); ProjectData.NoOfResources = Convert.ToDecimal(dr[DbTableColumn.NoOfResources]); ProjectData.ProjectsDescription = dr[DbTableColumn.Description].ToString(); ProjectData.ProjectCategoryID = Convert.ToInt32(dr[DbTableColumn.Con_ProjectCategoryID]); // Mohamed : Issue 49791 : 15/09/2014 : Starts // Desc : Add project group in Contract page ProjectData.ProjectGroup = dr[DbTableColumn.ProjectGroup].ToString(); // Mohamed : Issue 49791 : 15/09/2014 : Ends // Mohamed : Issue : 23/09/2014 : Starts // Desc : Add Division, Business Area, Business Segment, Project Alias in Contract page -- NIS-RMS ProjectData.ProjectDivision = Convert.ToInt32(dr[DbTableColumn.ProjectDivision].ToString()); ProjectData.ProjectBussinessArea = Convert.ToInt32(dr[DbTableColumn.ProjectBusinessArea].ToString()); ProjectData.ProjectBussinessSegment = Convert.ToInt32(dr[DbTableColumn.ProjectBusinessSegment].ToString()); //ProjectData.ProjectAlias = dr[DbTableColumn.ProjectAlias].ToString(); // Mohamed : Issue : 23/09/2014 : Ends //Siddharth 13 March 2015 Start //Note the below line is commented bcoz in session First time Project model is not stored //ProjectData.ProjectModel = dr[DbTableColumn.ProjectModel].ToString(); ProjectData.ProjectModel = dr[DbTableColumn.ProjectModel].ToString(); //Siddharth 13 March 2015 End //Siddharth 9 Sept 2015 Start ProjectData.BusinessVertical = dr[DbTableColumn.BusinessVertical].ToString(); //Siddharth 9 Sept 2015 End //Added by Shrinivas for implementing new project code if (!string.IsNullOrEmpty(dr[DbTableColumn.ProjectCode].ToString())) { ProjectData.ProjectCode = dr[DbTableColumn.ProjectCode].ToString(); } else { ProjectData.ProjectCode = contractDetails.ClinetAbbrivation + "_" + contractDetails.ProjectAbbrivation + "_" + contractDetails.Phase; } //Edit only those have project code. if (dr[DbTableColumn.ProjectCode].ToString() != string.Empty) { sucess = editContractProject.Edit(ProjectData, null); } listProjectData.Add(ProjectData); if (counter == 1) { allProjectsName.Append(",Project:"); } //append all projects name to dispaly in Email. allProjectsName.Append(","); allProjectsName.Append(ProjectData.ProjectName); } foreach (BusinessEntities.Contract CRdetails in CRDetailsCollection) { if (CRdetails.Mode == "1") { AddedCRDetailsCollection.Add(CRdetails); } } if (sucess) { SendMailForEditContract(contractDetails, listProjectData, allProjectsName.ToString(), AddedCRDetailsCollection); } return(sucess); }
/// <summary> /// Save project Details. /// </summary> /// <param name="contractAdd"></param> /// <param name="projectDetails"></param> /// <returns></returns> private bool SaveProjects(BusinessEntities.Contract contractAdd, DataTable projectDetails) { int counter = 0; bool sucess = true; string ProjectCodeAbbreviation = string.Empty; StringBuilder allProjectsName = new StringBuilder(string.Empty); try { List <BusinessEntities.ContractProject> listProjectData = new List <BusinessEntities.ContractProject>(); contractAdd.ContractCode = "C" + contractAdd.ContractID.ToString(); if (projectDetails != null) { Rave.HR.BusinessLayer.Contracts.ContractProject ContractProjectBL = new Rave.HR.BusinessLayer.Contracts.ContractProject(); foreach (DataRow dr in projectDetails.Rows) { counter++; BusinessEntities.ContractProject ProjectData = new BusinessEntities.ContractProject(); ProjectData.ClientName = contractAdd.ClientName; ProjectData.ContractID = contractAdd.ContractID; ProjectData.ProjectName = dr[DbTableColumn.Con_ProjectName].ToString(); ProjectData.ProjectType = dr[DbTableColumn.ProjectType].ToString(); ProjectData.ProjectTypeID = Convert.ToInt32(dr[DbTableColumn.ProjectTypeID]); ProjectData.ProjectLocationName = dr[DbTableColumn.ProjectLocation].ToString(); ProjectData.ProjectStartDate = Convert.ToDateTime(dr[DbTableColumn.ProjectStartDate]); ProjectData.ProjectEndDate = Convert.ToDateTime(dr[DbTableColumn.ProjectEndDate]); ProjectData.CreatedByEmailId = contractAdd.CreatedByEmailId; ProjectData.NoOfResources = Convert.ToDecimal(dr[DbTableColumn.NoOfResources]); ProjectData.ProjectCode = contractAdd.ClinetAbbrivation + "_" + contractAdd.ProjectAbbrivation + "_" + contractAdd.Phase; //Rakesh : HOD for Employees 11/07/2016 Begin ProjectData.ProjectHeadId = Convert.ToInt32(dr[DbTableColumn.ProjectHeadId]); //Rakesh : HOD for Employees 11/07/2016 End if (dr[DbTableColumn.Description].ToString() != string.Empty) { ProjectData.ProjectsDescription = dr[DbTableColumn.Description].ToString(); } else { ProjectData.ProjectsDescription = string.Empty; } ProjectData.ProjectCategoryID = Convert.ToInt32(dr[DbTableColumn.Con_ProjectCategoryID]); ProjectData.ProjectCodeAbbreviation = contractAdd.ClinetAbbrivation + "_" + contractAdd.ProjectAbbrivation + "_" + contractAdd.Phase; // Mohamed : Issue : 26/09/2014 : Starts // Desc : Add Division, Business Area, Business Segment, Project Alias in Contract page -- NIS-RMS ProjectData.ProjectGroup = dr[DbTableColumn.Con_ProjectGroup].ToString(); ProjectData.ProjectDivision = Convert.ToInt32(dr[DbTableColumn.Con_ProjectDivision].ToString()); ProjectData.ProjectBussinessArea = Convert.ToInt32(dr[DbTableColumn.Con_ProjectBusinessArea].ToString()); ProjectData.ProjectBussinessSegment = Convert.ToInt32(dr[DbTableColumn.Con_ProjectBusinessSegment].ToString()); //ProjectData.ProjectAlias = dr[DbTableColumn.Con_ProjectAlias].ToString(); // Mohamed : Issue : 26/09/2014 : Ends //Siddharth 9 Sept 2015 Start ProjectData.BusinessVertical = dr[DbTableColumn.BusinessVertical].ToString(); ProjectData.ProjectModel = dr[DbTableColumn.ProjectModel].ToString(); //Siddharth 9 Sept 2015 End sucess = ContractProjectBL.Save(ProjectData, ref ProjectCodeAbbreviation); if (sucess == true) { ProjectData.ProjectCodeAbbreviation = ProjectCodeAbbreviation; } listProjectData.Add(ProjectData); if (counter == 1) { allProjectsName.Append(",Project:"); } //append all projects name to dispaly in Email. allProjectsName.Append(","); allProjectsName.Append(ProjectData.ProjectName); } } if (sucess == true) { SendMailForSaveContract(contractAdd, listProjectData, allProjectsName.ToString()); } return(sucess); } catch (RaveHRException ex) { throw ex; } catch (Exception ex) { throw new RaveHRException(ex.Message, ex, Sources.BusinessLayer, CONTRACT, "SaveProjects", EventIDConstants.RAVE_HR_CONTRACT_BUSNIESS_LAYER); } }