public static MailAddressCollection GetCC(RecommendRequestObj obj) { try { using (var context = new SalesReturndbEntities()) { MailAddressCollection ccEmail = new MailAddressCollection(); RequestDetailObj_Render data1 = CommonDAL.GetRequestDetails(obj.Request_Id, obj.CurrentStatus_Id, obj.FutureStatus_Id); var RegionalHead = context.SP_LFGDetails(data1.EmployeeCode).FirstOrDefault(); if (RegionalHead != null) { if (!(RegionalHead.Regional_Head.ToUpper().Trim().Equals("NA") || RegionalHead.Regional_Head.Trim().Equals(string.Empty))) { var RegionalHeadData = context.SP_LFGDetails(RegionalHead.Regional_Head).FirstOrDefault(); ccEmail.Add(RegionalHeadData.email_id); } if (!(RegionalHead.segmentHead.ToUpper().Trim().Equals("NA") || RegionalHead.segmentHead.Trim().Equals(string.Empty))) { var SegmentHeadData = context.SP_LFGDetails(RegionalHead.segmentHead).FirstOrDefault(); ccEmail.Add(SegmentHeadData.email_id); } ccEmail.Add(RegionalHead.email_id);//Email Id of Requestor } var DepotMaster = context.SP_GetDepotList().Where(x => x.DepotId == data1.DepotId).FirstOrDefault(); var AssintoEmp = context.TblEmployeeMasters.Where(x => x.IsActive == true && x.DepotName == DepotMaster.DepotName).FirstOrDefault(); var ComplaintHandler = context.SP_LFGDetails(AssintoEmp.ComplaintHandler).FirstOrDefault(); var CompalintManager = context.SP_LFGDetails(AssintoEmp.ComplaintManager).FirstOrDefault(); ccEmail.Add(ComplaintHandler.email_id); ccEmail.Add(CompalintManager.email_id); var LogistickHead = context.SP_LFGDetails(AssintoEmp.LogisticsHead).FirstOrDefault(); ccEmail.Add(LogistickHead.email_id); if (RegionalHead != null) { if (!(RegionalHead.VPHead.ToUpper().Trim().Equals("NA") || RegionalHead.VPHead.Trim().Equals(string.Empty))) { var vphead = context.sp_GetuserDetailsFromLFG(RegionalHead.VPHead).FirstOrDefault(); ccEmail.Add(vphead.email_id); } if (!(RegionalHead.President_Code.ToUpper().Trim().Equals("NA") || RegionalHead.President_Code.Trim().Equals(string.Empty))) { var President_Code = context.sp_GetuserDetailsFromLFG(RegionalHead.President_Code).FirstOrDefault(); ccEmail.Add(President_Code.email_id); } } var depot = context.SP_LFGDetails(AssintoEmp.Depotcode).FirstOrDefault(); ccEmail.Add(depot.email_id); var cso = context.SP_LFGDetails(AssintoEmp.CSO).FirstOrDefault(); ccEmail.Add(cso.email_id); return(ccEmail); } } catch (Exception ex) { throw ex; } }
public static string ApproveRequest(RecommendRequestObj data) { try { using (var context = new SalesReturndbEntities()) { string RequestType = "approve"; var RequestDetail = context.tblRequestDtls.Where(x => x.RequestHeaderId == data.Request_Id && x.IsActive == true).ToList(); var approvalHeader = context.TblApproverHeaders.Where(x => x.Request_Id == data.Request_Id && x.IsActive == true).FirstOrDefault(); var ReqHdr = context.TblRequestHeaders.Where(x => x.RequestHeaderId == data.Request_Id && x.IsActive == true).FirstOrDefault(); RequestDetailObj_Render data1 = CommonDAL.GetRequestDetails(data.Request_Id, data.CurrentStatus_Id, data.FutureStatus_Id); var UserDetail = context.SP_LFGDetails(approvalHeader.CreatedBy).FirstOrDefault(); var DepotDTl = context.sp_GetDealerDtlBy_DealerRepositoryId(ReqHdr.DealerId).FirstOrDefault(); string assignTo = string.Empty; var DepotPersonDtl = context.TblEmployeeMasters.Where(x => x.DepotName == DepotDTl.Depot).FirstOrDefault(); if (data.FutureStatus_Id == 10019) { assignTo = DepotPersonDtl.Depotcode; } ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, assignTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); SendMail(approvalHeader, data, RequestType, assignTo); return("Success : " + ReqHdr.RequestTypeOption + "-" + data.Request_Id + " Requested has been approved successfully."); } } catch (Exception ex) { throw ex; } }
public static List <PendingRequestModel> getPendingRequest(string EmployeeCode) { using (var context = new SalesReturndbEntities()) { List <PendingRequestModel> dataList = null; var PendingRequestList = context.SP_GetPendingRequest(EmployeeCode).ToList(); if (PendingRequestList != null) { dataList = PendingRequestList.Select(x => new PendingRequestModel() { BatchNo = x.BatchNo, DealerAddress = x.DealerAddress, DealerCode = x.DealerCode, DealerName = x.DealerName, DepotName = x.DepotName, DepotAddress = x.DepotAddress, DepotCode = x.DepotCode, FutureStatus = x.FutureStatus, RequestHeaderId = x.RequestHeaderId, FutureStatus_Id = x.FutureStatus_Id, CurrentStatus_Id = x.CurrentStatus_Id, SKUCode = x.SKUCode, SKUName = x.SKUName, CreatedBy_EMP_CODE = x.CreatedBy, CreatedBy = context.SP_LFGDetails(x.CreatedBy).FirstOrDefault().Emp_First_name, CreatedDate = x.CreatedDate, TotalSRV = context.tblRequestDtls.Where(o => o.RequestHeaderId == x.RequestHeaderId && o.IsActive == true).Sum(p => p.SRVValue).Value, RequestTypeOption = x.SKUCode,// for access data behalf on skucode }).ToList(); return(dataList); } return(dataList); } }
public static List <PendingRequestModel> GetOpenRequest(string empCode) { List <PendingRequestModel> List = new List <PendingRequestModel>(); using (var context = new SalesReturndbEntities()) { var data = context.SP_GetOpenRequest(empCode).ToList(); if (data.Count != 0) { List = data.Select(x => new PendingRequestModel() { BatchNo = x.BatchNo, DealerAddress = x.DealerAddress, DealerCode = x.DealerCode, DealerName = x.DealerName, DepotName = x.DealerName, DepotAddress = x.DepotAddress, DepotCode = x.DepotCode, RequestHeaderId = x.RequestHeaderId, CurrentStatus = x.CurrentStatus, CurrentStatus_Id = x.CurrentStatus_Id, SKUCode = x.SKUCode, SKUName = x.SKUName, CreatedBy_EMP_CODE = x.CreatedBy, CreatedBy = context.SP_LFGDetails(x.CreatedBy).FirstOrDefault().Emp_First_name, CreatedDate = x.CreatedDate, TotalSRV = context.tblRequestDtls.Where(o => o.RequestHeaderId == x.RequestHeaderId && o.IsActive == true).Sum(p => p.SRVValue), }).ToList(); } return(List); } }
public static string CloseRequest(CloseRequestObjForStg_4 data) { using (var context = new SalesReturndbEntities()) { string AssignTo = string.Empty; string RetMsg = string.Empty; var RequestDetail = context.tblRequestDtls.Where(x => x.RequestHeaderId == data.Request_Id).ToList(); var approvalHeader = context.TblApproverHeaders.Where(x => x.Request_Id == data.Request_Id).FirstOrDefault(); var ReqHdr = context.TblRequestHeaders.Where(x => x.RequestHeaderId == data.Request_Id && x.IsActive == true).FirstOrDefault(); var UserDetail = context.SP_LFGDetails(approvalHeader.CreatedBy).FirstOrDefault(); var DlrDtl = context.sp_GetDealerDtlBy_DealerRepositoryId(data.Request.DealerId).FirstOrDefault(); if (data.FutureStatus_Id == 10027 || data.CurrentStatus_Id == 10028 || data.CurrentStatus_Id == 10029) { var EmpMaster = context.TblEmployeeMasters.Where(x => x.DepotName == DlrDtl.Depot && x.IsActive == true).FirstOrDefault(); AssignTo = data.FutureStatus_Id == 10027 ? EmpMaster.Depotcode : ""; if (data.Request.IsCommercialSettlement == true) { var EpCheck = context.sp_CheckEPNumber(data.Request.EPNo).FirstOrDefault(); if (EpCheck == null) { return("Error: EP Number does not exists"); } } ReqHdr.IsCommercialSettlement = data.Request.IsCommercialSettlement; ReqHdr.MaterialWillGoToDealer = data.Request.IsCommercialSettlement == true ? false : true; ReqHdr.ReasonForCommercialSettlement = data.Request.IsCommercialSettlement == true ? data.Request.ReasonForCommercialSettlement : ""; ReqHdr.DetailsForMaterialGoToDealer = data.Request.IsCommercialSettlement == false ? data.Request.DetailsForMaterialGoToDealer : ""; ReqHdr.EPNo = data.Request.IsCommercialSettlement == true ? data.Request.EPNo : ""; ReqHdr.ModifiedBy = data.EmployeeCode; ReqHdr.ModifiedDate = DateTime.Now; context.Entry(ReqHdr).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); RetMsg = data.FutureStatus_Id == 10027 ? "Request has been forwarded to Depot!" : "Request has been closed successfully!"; } else if (data.CurrentStatus_Id == 10030) { ReqHdr.DocketNumber = data.Request.DocketNumber; ReqHdr.DocketDate = data.Request.DocketDate; context.Entry(ReqHdr).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); RetMsg = "Request has been closed successfully!"; } else { RetMsg = "Request has been closed successfully!"; } ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); return("Success : " + ReqHdr.RequestTypeOption + data.Request_Id + " " + RetMsg); } }
public static string RejectRequest(RecommendRequestObj data) { using (var context = new SalesReturndbEntities()) { string RequestProcessType = "reject"; string AssignTo = string.Empty; var RequestDetail = context.tblRequestDtls.Where(x => x.RequestHeaderId == data.Request_Id).ToList(); var approvalHeader = context.TblApproverHeaders.Where(x => x.Request_Id == data.Request_Id).FirstOrDefault(); var ReqHdr = context.TblRequestHeaders.Where(x => x.RequestHeaderId == data.Request_Id && x.IsActive == true).FirstOrDefault(); var IfDepotPerson = context.TblEmployeeMasters.Where(x => x.Depotcode == ReqHdr.EmployeeCode && x.IsActive == true).FirstOrDefault(); var UserDetail = context.SP_LFGDetails(approvalHeader.CreatedBy).FirstOrDefault(); var Reqfuturestatus = context.TblFutureStatus.Where(x => x.IsActive == true && x.Request_ID == ReqHdr.RequestHeaderId).OrderByDescending(y => y.FutStatus_ID).FirstOrDefault(); if (data.FutureStatus_Id == 10026 && IfDepotPerson == null) { if (UserDetail.Regional_Head.Trim().Equals("NA") || UserDetail.Regional_Head.Trim().Equals("N/A")) { return("Error: Approval Matrix not defined!!"); } else { AssignTo = UserDetail.Regional_Head; ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); } } else if (data.FutureStatus_Id == 10026 && IfDepotPerson != null) { var DealerDtl = context.sp_GetDealerDtlBy_DealerRepositoryId(ReqHdr.DealerId).FirstOrDefault(); bool IsRMExist = DealerDtl != null ? (DealerDtl.RMCode.Equals(string.Empty) ? false : (DealerDtl.RMCode.Contains("NA") ? false : (DealerDtl.RMCode == null ? false : true))) : false; //if (IsRMExist) { if (UserDetail.Regional_Head != "NA" && UserDetail.Regional_Head != null && UserDetail.Regional_Head != "") { // AssignTo = DealerDtl.RMCode; AssignTo = UserDetail.Regional_Head; ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); } else { return("Error: Approval Matrix not defined!!"); } } else { ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); } SendMail(approvalHeader, data, RequestProcessType, ReqHdr.EmployeeCode); return("Success : " + ReqHdr.RequestTypeOption + data.Request_Id + " Requested has been rejected successfully."); } }
public static bool CheckIfEmployeeExist(string EmployeeCode) { using (var context = new SalesReturndbEntities()) { var check = context.SP_LFGDetails(EmployeeCode).FirstOrDefault(); if (check != null) { return(true); } else { return(false); } } }
public static LoginModel GetEmployeeDetails(string id, string conn) { LoginModel user = null; using (var DbContext = new SalesReturndbEntities()) { var source = DbContext.SP_LFGDetails(id).FirstOrDefault(); var IfDepotPerson = DbContext.sp_CheckIfDepotPerson(id).FirstOrDefault(); if (source != null) { user = new LoginModel { EMP_CODE = source.EMP_CODE.ToString(), Emp_First_name = source.Emp_First_name.ToString(), Desg_Desc = source.Desg_Desc, Dept_name = source.Dept_name, IsDepotPerson = IfDepotPerson != null?true:false, DepotName = IfDepotPerson?.DepotName, DepotCode = IfDepotPerson?.DepotCode, Seg_Name = source.Seg_Name, DepotId = IfDepotPerson != null? IfDepotPerson.DepotId:0, email_id = source.email_id, Mobile_no = source.Mobile_no, SBU_Name = source.SBU_Name, Zone = source.Zone, RegionHead = source.Regional_Head, SegmentHead = source.Country_Head, Oth_key = id, Country = source.Country }; var checkAdmin = DbContext.TblAdminMasters.Where(x => x.EmployeeCode.Equals(id) && x.IsActive == true).FirstOrDefault(); if (id.Equals("0") || checkAdmin != null) { user.RoleName = "Admin"; } } } return(user); }
public static RequestDetailObj_Render GetRequestDetailsforNextStage(int RequestId, int CurrentStatus_Id, int FutureStatus_Id) { using (var context = new SalesReturndbEntities()) { RequestDetailObj_Render obj = new RequestDetailObj_Render(); var ReqHeaderdetail = context.SP_GetRequestDetail(RequestId).FirstOrDefault(); var UserDetail = context.SP_LFGDetails(ReqHeaderdetail.CreatedBy).FirstOrDefault(); var AppMatrixValue = context.TblFlowMatrices.Where(x => x.RequestType == (ReqHeaderdetail.RequestType_Id) && x.IsActive == true && x.Options == "Value").FirstOrDefault(); var AppMatrixPeriod = context.TblFlowMatrices.Where(x => x.RequestType == (ReqHeaderdetail.RequestType_Id) && x.IsActive == true && x.Options == "Period").FirstOrDefault(); if (ReqHeaderdetail != null) { var ReqHDR = context.TblRequestHeaders.Where(x => x.RequestHeaderId == RequestId && x.IsActive == true).FirstOrDefault(); obj.RequestHeader_Id = ReqHeaderdetail.RequestHeaderId; obj.DealerName = ReqHeaderdetail.DealerName + ":" + ReqHeaderdetail.DealerCode; obj.DealerId = ReqHeaderdetail.DealerId; obj.DepotName = ReqHeaderdetail.DepotName + " : " + ReqHeaderdetail.DealerCode; obj.DepotId = ReqHeaderdetail.DepotId; obj.ReasonForReturn = ReqHeaderdetail.RequestType; obj.ReasonForReturn_Id = ReqHeaderdetail.RequestType_Id; obj.RequestTypeOption = ReqHDR.RequestTypeOption; obj.RequestDetail = new List <RequestDetailArray_Render>(); var ReqDetailList = context.tblRequestDtls.Where(x => x.RequestHeaderId == RequestId && x.IsActive == true).ToList(); int InvoiceAge = 0; decimal? TotalSRV_Value = 0; DateTime date = DateTime.Now; foreach (var pt in ReqDetailList) { if (pt.ReleaseByCM == false) { continue; } RequestDetailArray_Render detailArray = new RequestDetailArray_Render() { Detail_Id = pt.Id, InvoiceDate = pt.InvoiceDate, InvoiceNo = pt.InvoiceNumber, InvoiceQuantity = pt.InvoiceQuantity, PackSize = pt.PackSize, ProvideGST_Yes = pt.ReadyToProvideGST, ProvideGST_No = (pt.ReadyToProvideGST != null && pt.ReadyToProvideGST.Value == true) ? false : true, Remarks = pt.Remarks, SRVQuantity = pt.SRVQuantity, SRVValue = pt.SRVValue, Unit = pt.Unit, Volume = (pt.SRVQuantity * pt.PackSize), SKUCode = pt.SKUCode, SKUName = pt.SKUName, Acknowledge = pt.Acknowledge, Damaged = pt.DamagedQTY, Excess = pt.ExccessQTY, ReceivedQuantity = pt.ReceivedQTY, SAPsubReasonID = pt.ReasonforSAP, Short = pt.ShortQTY, Manufacturing_Date = context.TblBarCodeDetails.Where(x => x.SKU_Code == pt.SKUCode).Select(y => y.Manufacturing_Date).FirstOrDefault(), Shelf_Life = context.spGetShelfLifeData(pt.SKUCode).FirstOrDefault().Shelf_Life.ToString(), BatchNo = pt.BatchNo, ComplaintNumber = obj.ReasonForReturn_Id == 1 ? context.SP_GetCCNumber(pt.CCNo).FirstOrDefault().ComplaintNumber : 0, SubReasonName = context.TblSalesReasonMasters.Where(x => x.SalesReason_Id == pt.SubReason).Select(y => y.SubReason).FirstOrDefault(), SubReason = pt.SubReason, UploadedInvoice = (pt.ReadyToProvideGST != null && pt.ReadyToProvideGST.Value == true) ? context.TblUploadedInvoices.Where(x => x.RequestDetail_Id == pt.Id && x.IsActive == true).FirstOrDefault().ImageUploaded : "", UploadedInvoice_Id = (pt.ReadyToProvideGST != null && pt.ReadyToProvideGST.Value == true) ? context.TblUploadedInvoices.Where(x => x.RequestDetail_Id == pt.Id && x.IsActive == true).FirstOrDefault().Id : 0, DONo = pt.DONo, SRVInvoiceNo = pt.SRVInvoiceNo, ReleaseByCM = pt.ReleaseByCM, ReleaseByCM_Date = pt.ReleaseByCM_Date }; obj.RequestDetail.Add(detailArray); TotalSRV_Value = TotalSRV_Value + detailArray.SRVValue; // getting invoice age from the oldest invoice date. if (pt.InvoiceDate != null) { int InvoiceDateAge = ((date.Year - pt.InvoiceDate.Value.Year) * 12) + date.Month - pt.InvoiceDate.Value.Month; if (InvoiceAge <= InvoiceDateAge) { InvoiceAge = InvoiceDateAge; } } } // if request is pending to user. if (FutureStatus_Id == 17) { foreach (var item in obj.RequestDetail) { if (ReqHeaderdetail.RequestType_Id == 1) { var ccDetail = context.SP_GetCCNumber(item.ComplaintNumber).FirstOrDefault(); item.selectedComplaint = new ComplaintDetail_Render(); item.selectedComplaint.Complaint_ID = ccDetail.Complaint_ID; item.selectedComplaint.ComplaintDesc = ccDetail.ComplaintDesc; item.selectedComplaint.ComplaintNumber = ccDetail.ComplaintNumber; } var SKUDetail = context.SP_GetSKUCode(item.SKUCode).FirstOrDefault(); if (SKUDetail != null) { //item.selectedSKU = new SKUClass(); item.selectedSKU = new SKUClass(); item.selectedSKU.SKUCode = SKUDetail.SKUCode; item.selectedSKU.SKUName = SKUDetail.SKUName; item.selectedSKU.SKUDescription = SKUDetail.SKUDescription; } } } if (CurrentStatus_Id == 10 || CurrentStatus_Id == 11) { //if (TotalSRV_Value < AppMatrixValue.ComplaintHandler && InvoiceAge < AppMatrix.InvoiceAge) if (TotalSRV_Value < AppMatrixValue.ComplaintHandler) { obj.ShowApproveButton = false; } else { obj.ShowApproveButton = true; } } else if (CurrentStatus_Id == 12 || CurrentStatus_Id == 13 || CurrentStatus_Id == 14 || FutureStatus_Id == 6 || FutureStatus_Id == 7 || FutureStatus_Id == 8) { obj.ShowApproveButton = true; } return(obj); } return(obj); } }
public static RequestDetailObj_Render GetRequestDetails(int?RequestId, int CurrentStatus_Id, int FutureStatus_Id) { using (var context = new SalesReturndbEntities()) { RequestDetailObj_Render obj = new RequestDetailObj_Render(); var ReqHeaderdetail = context.SP_GetRequestDetail(RequestId).FirstOrDefault(); var UserDetail = context.SP_LFGDetails(ReqHeaderdetail.CreatedBy).FirstOrDefault(); var AppMatrixValue = context.TblFlowMatrices.Where(x => x.RequestType == (ReqHeaderdetail.RequestType_Id) && x.IsActive == true && x.Options == "Value").FirstOrDefault(); var AppMatrixPeriod = context.TblFlowMatrices.Where(x => x.RequestType == (ReqHeaderdetail.RequestType_Id) && x.IsActive == true && x.Options == "Period").FirstOrDefault(); if (ReqHeaderdetail != null) { var ReqHDR = context.TblRequestHeaders.Where(x => x.RequestHeaderId == RequestId && x.IsActive == true).FirstOrDefault(); obj.RequestHeader_Id = ReqHeaderdetail.RequestHeaderId; obj.DealerName = ReqHeaderdetail.DealerName + " : " + ReqHeaderdetail.DealerCode; obj.DealerId = ReqHeaderdetail.DealerId; obj.DepotName = ReqHeaderdetail.DepotName + " : " + ReqHeaderdetail.DepotCode; obj.DepotId = ReqHeaderdetail.DepotId; obj.ReasonForReturn = ReqHeaderdetail.RequestType; obj.ReasonForReturn_Id = ReqHeaderdetail.RequestType_Id; obj.RequestTypeOption = ReqHDR.RequestTypeOption; obj.DocketNumber = ReqHDR.DocketNumber; obj.IsCommercialSettlement = ReqHDR.IsCommercialSettlement; obj.MaterialWillGoToDealer = ReqHDR.MaterialWillGoToDealer; obj.ParentRequest = ReqHDR.ParentRequest; obj.ReasonForCommercialSettlement = ReqHDR.ReasonForCommercialSettlement; obj.DetailsForMaterialGoToDealer = ReqHDR.DetailsForMaterialGoToDealer; obj.EPNo = ReqHDR.EPNo; obj.DealerNameForMail = ReqHeaderdetail.DealerName; obj.DealerCodeForMail = ReqHeaderdetail.DealerCode; obj.RequestDetail = new List <RequestDetailArray_Render>(); obj.DepotNameForMail = ReqHeaderdetail.DepotName; var ReqDetailList = context.tblRequestDtls.Where(x => x.RequestHeaderId == RequestId && x.IsActive == true).ToList(); double InvoiceAge = 0; decimal? TotalSRV_Value = 0; DateTime date = DateTime.Now; foreach (var pt in ReqDetailList) { var BarCodeDetails = context.TblBarCodeDetails.Where(x => x.SKU_Code == pt.SKUCode).FirstOrDefault(); var GetCCNumber = context.SP_GetCCNumber(pt.CCNo).FirstOrDefault(); var SalesReasonMasters = context.TblSalesReasonMasters.Where(x => x.SalesReason_Id == pt.SubReason).FirstOrDefault(); RequestDetailArray_Render detailArray = new RequestDetailArray_Render() { Detail_Id = pt.Id, InvoiceDate = pt.InvoiceDate, InvoiceNo = pt.InvoiceNumber, InvoiceQuantity = pt.InvoiceQuantity, PackSize = pt.PackSize, ProvideGST_Yes = pt.ReadyToProvideGST, ProvideGST_No = (pt.ReadyToProvideGST != null && pt.ReadyToProvideGST.Value == true) ? false : true, Remarks = pt.Remarks, SRVQuantity = pt.SRVQuantity, SRVValue = pt.SRVValue, Unit = pt.Unit, Volume = (pt.SRVQuantity * pt.PackSize), SKUCode = pt.SKUCode, SKUName = pt.SKUName, Damaged = pt.DamagedQTY, DONo = pt.DONo, Acknowledge = pt.Acknowledge, Excess = pt.ExccessQTY, ReceivedQuantity = pt.ReceivedQTY, Short = pt.ShortQTY, SRVInvoiceNo = pt.SRVInvoiceNo, // Manufacturing_Date = BarCodeDetails != null ? BarCodeDetails.Manufacturing_Date : null, //Shelf_Life = context.spGetShelfLifeData(pt.SKUCode).FirstOrDefault().Shelf_Life.ToString(), Manufacturing_Date = pt.MFG_Date, Shelf_Life = pt.Shelf_Life, BatchNo = pt.BatchNo, ComplaintNumber = obj.ReasonForReturn_Id == 1 ? GetCCNumber != null ? GetCCNumber.ComplaintNumber : 0 : 0, SubReasonName = SalesReasonMasters != null ? SalesReasonMasters.SubReason : "", SubReason = pt.SubReason, UploadedInvoice = (pt.ReadyToProvideGST != null && pt.ReadyToProvideGST.Value == true) ? context.TblUploadedInvoices.Where(x => x.RequestDetail_Id == pt.Id && x.IsActive == true).FirstOrDefault().ImageUploaded : "", UploadedInvoice_Id = (pt.ReadyToProvideGST != null && pt.ReadyToProvideGST.Value == true) ? context.TblUploadedInvoices.Where(x => x.RequestDetail_Id == pt.Id && x.IsActive == true).FirstOrDefault().Id : 0, selectedSKU = new SKUClass { SKUCode = pt.SKUCode, SKUName = pt.SKUName } }; obj.RequestDetail.Add(detailArray); TotalSRV_Value = TotalSRV_Value + detailArray.SRVValue; // getting invoice age from the oldest invoice date. if (pt.InvoiceDate != null) { double InvoiceDateAge = DateTime.Now.Subtract(pt.InvoiceDate.Value).Days / (365.25 / 12); //int InvoiceDateAge = ((date.Year - pt.InvoiceDate.Value.Year) * 12) + date.Month - pt.InvoiceDate.Value.Month; if (InvoiceAge <= InvoiceDateAge) { InvoiceAge = InvoiceDateAge; } } } // if request is pending to user. if (ReqHeaderdetail.RequestType_Id != 3) { if (FutureStatus_Id == 17) { foreach (var item in obj.RequestDetail) { if (ReqHeaderdetail.RequestType_Id == 1) { var ccDetail = context.SP_GetCCNumber(item.ComplaintNumber).FirstOrDefault(); item.selectedComplaint = new ComplaintDetail_Render(); item.selectedComplaint.Complaint_ID = ccDetail.Complaint_ID; item.selectedComplaint.ComplaintDesc = ccDetail.ComplaintDesc; item.selectedComplaint.ComplaintNumber = ccDetail.ComplaintNumber; } var SKUDetail = context.SP_GetSKUCode(item.SKUCode).FirstOrDefault(); if (SKUDetail != null) { //item.selectedSKU = new SKUClass(); item.selectedSKU = new SKUClass(); item.selectedSKU.SKUCode = SKUDetail.SKUCode; item.selectedSKU.SKUName = SKUDetail.SKUName; item.selectedSKU.SKUDescription = SKUDetail.SKUDescription; } } } if (CurrentStatus_Id == 10) { if (ReqHeaderdetail.RequestType_Id == 1) { if (TotalSRV_Value <= AppMatrixValue.ComplaintHandler && InvoiceAge <= AppMatrixPeriod.ComplaintHandler && FutureStatus_Id != 9) { obj.ShowApproveButton = true; } else if (FutureStatus_Id == 9) { obj.ShowApproveButton = true; } else { obj.ShowApproveButton = false; } } } else if (CurrentStatus_Id == 11) { if (ReqHeaderdetail.RequestType_Id == 2) { if (TotalSRV_Value < AppMatrixValue.LogisticsHead && InvoiceAge < AppMatrixPeriod.LogisticsHead) { obj.ShowApproveButton = true; } else if (FutureStatus_Id == 9) { obj.ShowApproveButton = true; } else { obj.ShowApproveButton = false; } } } else if (CurrentStatus_Id == 12 || CurrentStatus_Id == 13 || CurrentStatus_Id == 14 || FutureStatus_Id == 6 || FutureStatus_Id == 7 || FutureStatus_Id == 8) { obj.ShowApproveButton = true; } } else { if (FutureStatus_Id == 6) { if (TotalSRV_Value <= AppMatrixValue.RH && InvoiceAge <= AppMatrixPeriod.RH) { obj.ShowApproveButton = true; } else { obj.ShowApproveButton = false; } } else if (FutureStatus_Id == 7) { if (TotalSRV_Value <= AppMatrixValue.SegmentHead && InvoiceAge <= AppMatrixPeriod.SegmentHead) { obj.ShowApproveButton = true; } else { obj.ShowApproveButton = false; } } else if (FutureStatus_Id == 8) { if (TotalSRV_Value <= AppMatrixValue.VP && InvoiceAge <= AppMatrixPeriod.VP) { obj.ShowApproveButton = true; } else { obj.ShowApproveButton = false; } } else if (FutureStatus_Id == 9) { obj.ShowApproveButton = true; } //if (TotalSRV_Value <= AppMatrixValue.RH && InvoiceAge <= AppMatrixPeriod.RH) //{ // ApproverDAL.UpdateRequestStatus(isNew, Convert.ToInt32(RequestHeaderId), obj.EmployeeCode, UserDetail.Regional_Head, 1, 7, 1, 6, ""); //} //else if (TotalSRV_Value <= AppMatrixValue.SegmentHead && InvoiceAge <= AppMatrixPeriod.SegmentHead) //{ // ApproverDAL.UpdateRequestStatus(isNew, Convert.ToInt32(RequestHeaderId), obj.EmployeeCode, UserDetail.segmentHead, 1, 8, 1, 7, ""); //} //else if (TotalSRV_Value <= AppMatrixValue.VP && InvoiceAge <= AppMatrixPeriod.VP) //{ // ApproverDAL.UpdateRequestStatus(isNew, Convert.ToInt32(RequestHeaderId), obj.EmployeeCode, UserDetail.VPHead, 1, 9, 1, 8, ""); //} //else //{ // ApproverDAL.UpdateRequestStatus(isNew, Convert.ToInt32(RequestHeaderId), obj.EmployeeCode, UserDetail.President_Code, 1, 6, 1, 9, ""); //} } return(obj); } return(obj); } }
public static void SendMail(TblApproverHeader ApproverHdr, RecommendRequestObj data, string ProcessType, string to) { try { using (var context = new SalesReturndbEntities()) { TblMailTemplate EmailTemplate = new TblMailTemplate(); string subject = string.Empty; if (ProcessType == "reject") { if (data.Active_Role == 2)//ch { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 5).FirstOrDefault(); } else if (data.Active_Role == 3)//cm { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 8).FirstOrDefault(); } else if (data.Active_Role == 4)//lm { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 11).FirstOrDefault(); } else if (data.Active_Role == 5)//ISC/Vp { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 14).FirstOrDefault(); } else if (data.Active_Role == 8)//sh { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 21).FirstOrDefault(); } else if (data.Active_Role == 7)//Regionl Head { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 18).FirstOrDefault(); } else if (data.Active_Role == 5)//Vp Head { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 24).FirstOrDefault(); } else if (data.Active_Role == 6)//President { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 27).FirstOrDefault(); } // subject = EmailTemplate.Subject.Replace("<RequestNo.>", "S" + "-" + data.Request_Id); } if (ProcessType == "reconsider") { if (data.Active_Role == 2) //ch { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 6).FirstOrDefault(); } else if (data.Active_Role == 3) //cm { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 9).FirstOrDefault(); } else if (data.Active_Role == 4) //lm { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 12).FirstOrDefault(); } else if (data.Active_Role == 5) //isc Vp { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 15).FirstOrDefault(); } else if (data.Active_Role == 7) //regional head { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 19).FirstOrDefault(); } else if (data.Active_Role == 8) //Segment head { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 22).FirstOrDefault(); } else if (data.Active_Role == 5) //isc Vp { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 25).FirstOrDefault(); } else if (data.Active_Role == 6) //presdient { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 28).FirstOrDefault(); } // subject = EmailTemplate.Subject.Replace("<RequestNo.>", "S" + "-" + data.Request_Id); } if (ProcessType == "recommended") { if (data.Active_Role == 2) { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 4).FirstOrDefault(); } else if (data.Active_Role == 4) { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 10).FirstOrDefault(); } else if (data.Active_Role == 7) { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 17).FirstOrDefault(); } //subject = EmailTemplate.Subject.Replace("<RequestNo.>", data.Request_Id.ToString()); } if (ProcessType == "approve") { if (data.Active_Role == 5) { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 13).FirstOrDefault(); } else if (data.Active_Role == 3)//cm { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 7).FirstOrDefault(); } else if (data.Active_Role == 7)//rh { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 26).FirstOrDefault(); } else if (data.Active_Role == 9)//sh { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 20).FirstOrDefault(); } else if (data.Active_Role == 6) //president { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 26).FirstOrDefault(); } else if (data.Active_Role == 7) //RegionalHead { EmailTemplate = context.TblMailTemplates.Where(x => x.Id == 16).FirstOrDefault(); } // subject = EmailTemplate.Subject.Replace("<RequestNo.>", data.Request_Id.ToString()); } subject = EmailTemplate.Subject; subject = GetSubject(subject, data); string Body = GetHtml(EmailTemplate.MailBody, data); //var CCMails = GetCC(data); MailAddressCollection CCMails = new MailAddressCollection(); //CCMails.Add("*****@*****.**"); CCMails.Add("*****@*****.**"); int RequestType = data.RequestType_Id; var UserDetail = context.SP_LFGDetails(to).FirstOrDefault(); var FromEmail = context.SP_LFGDetails(data.EmployeeCode).FirstOrDefault(); Body = Body.Replace("Requestor Name", FromEmail.Emp_First_name); MailAddressCollection toMail = new MailAddressCollection(); MailAddressCollection fromMail = new MailAddressCollection(); subject = subject.Replace("<EmployeeName>", FromEmail.Emp_First_name); // toMail.Add(UserDetail.email_id); // toMail.Add("*****@*****.**"); toMail.Add("*****@*****.**"); fromMail.Add(FromEmail.email_id); Email.sendEmail(subject, "*****@*****.**", toMail, CCMails, Body); } } catch (Exception ex) { throw ex; } }
public static string RecommendRequest(RecommendRequestObj data) { using (var context = new SalesReturndbEntities()) { string RequestProcessType = "recommended"; var RequestDetail = context.tblRequestDtls.Where(x => x.RequestHeaderId == data.Request_Id && x.IsActive == true).ToList(); var approvalHeader = context.TblApproverHeaders.Where(x => x.Request_Id == data.Request_Id && x.IsActive == true).FirstOrDefault(); var ReqHdrDetail = context.SP_GetRequestDetail(data.Request_Id).FirstOrDefault(); var RequestHdr = context.TblRequestHeaders.Where(x => x.RequestHeaderId == data.Request_Id && x.IsActive == true).FirstOrDefault(); var UserDetail = context.SP_LFGDetails(approvalHeader.CreatedBy).FirstOrDefault(); var Reqfuturestatus = context.TblFutureStatus.Where(x => x.IsActive == true && x.Request_ID == ReqHdrDetail.RequestHeaderId).OrderByDescending(y => y.FutStatus_ID).FirstOrDefault(); string AssignedTo = ""; string Message = ""; var CurrStatus = 0; var FutStatus = 0; var Active_role = 0; var Requested_role = 0; decimal? TotalSRV_Value = 0; DateTime date = DateTime.Now; double InvoiceAge = 0; //int FutureStatus_Id = 0; foreach (var pt in RequestDetail) { TotalSRV_Value = TotalSRV_Value + pt.SRVValue; // getting invoice age from the oldest invoice date. double InvoiceDateAge = DateTime.Now.Subtract(pt.InvoiceDate.Value).Days / (365.25 / 12); if (InvoiceAge <= InvoiceDateAge) { InvoiceAge = InvoiceDateAge; } } //var ApprovalMatrixData = context.TblApprovalMatrices.Where(x => x.RequestType == data.RequestType_Id && x.Country.Equals(data.Country) && x.BUType.Equals(UserDetail.SBU_Name) && x.Division.Equals(UserDetail.Dept_name) && x.IsActive == true).FirstOrDefault(); var FlowMatrixValue = context.TblFlowMatrices.Where(x => x.RequestType == data.RequestType_Id && x.Options.Equals("Value") && x.IsActive == true).FirstOrDefault(); var FlowMatrixPeriod = context.TblFlowMatrices.Where(x => x.RequestType == data.RequestType_Id && x.Options.Equals("Period") && x.IsActive == true).FirstOrDefault(); var EmployeeMatrixData = context.TblEmployeeMasters.Where(x => x.IsActive == true && x.DepotName == ReqHdrDetail.DepotName).FirstOrDefault(); if (FlowMatrixValue != null && FlowMatrixPeriod != null && EmployeeMatrixData != null) { if (approvalHeader.Status_Id == 1) { if (data.RequestType_Id == 1) { if (EmployeeMatrixData.ComplaintManager != null || EmployeeMatrixData.ComplaintManager != "") { if (TotalSRV_Value <= FlowMatrixValue.ComplaintHandler && InvoiceAge <= FlowMatrixPeriod.ComplaintHandler) { AssignedTo = EmployeeMatrixData.ComplaintManager; } else { AssignedTo = UserDetail.President_Code; data.Requested_Role = 6; data.FutureStatus_Id = 9; } if (data.EmployeeCode.Equals(AssignedTo)) { //auto approval code here. ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignedTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); if (TotalSRV_Value <= FlowMatrixValue.ComplaintHandler && InvoiceAge <= FlowMatrixPeriod.ComplaintHandler) { //Recommeneded complaint manager. CurrStatus = 12; FutStatus = 9; Active_role = 3; Requested_role = 6; } else { //Approve complaint manager. CurrStatus = 16; FutStatus = 0; Active_role = 3; Requested_role = 0; } data.Active_Role = Active_role; data.Requested_Role = Requested_role; data.CurrentStatus_Id = CurrStatus; data.FutureStatus_Id = FutStatus; } } else { return("Error : Complaint Manager is not defined in Approval Matrix"); } } else if (data.RequestType_Id == 2) { if (EmployeeMatrixData.ISC != null || EmployeeMatrixData.ISC != "") { if (TotalSRV_Value <= FlowMatrixValue.LogisticsHead && InvoiceAge <= FlowMatrixPeriod.LogisticsHead) { AssignedTo = EmployeeMatrixData.ISC; } else { AssignedTo = UserDetail.President_Code; data.Requested_Role = 6; data.FutureStatus_Id = 9; } //AssignedTo = EmployeeMatrixData.LogisticsHead; if (data.EmployeeCode.Equals(AssignedTo)) { //auto approval code here. ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignedTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); if (TotalSRV_Value <= FlowMatrixValue.LogisticsHead && InvoiceAge <= FlowMatrixPeriod.LogisticsHead) { //Recommeneded Logictic Head/ VP. CurrStatus = 13; FutStatus = 9; Active_role = 5; Requested_role = 6; } else { //Approve Logictic Head/ VP. CurrStatus = 16; FutStatus = 0; Active_role = 5; Requested_role = 0; } data.Active_Role = Active_role; data.Requested_Role = Requested_role; data.CurrentStatus_Id = CurrStatus; data.FutureStatus_Id = FutStatus; } } else { return("Error : Logistic Head is not set in Approval Matrix"); } } else if (data.RequestType_Id == 3) { var ReqHdr = context.TblRequestHeaders.Where(x => x.RequestHeaderId == data.Request_Id && x.IsActive == true).FirstOrDefault(); if (ReqHdr.RequestTypeOption == "D") { //In D type request we will refer VP/SH/President of RM not of requester var RM_Trail = context.SP_LFGDetails(data.EmployeeCode).FirstOrDefault(); if (TotalSRV_Value <= FlowMatrixValue.VP && InvoiceAge <= FlowMatrixPeriod.VP) { if (RM_Trail.VPHead != "NA" && RM_Trail.VPHead != "" && RM_Trail.VPHead != null) { AssignedTo = UserDetail.VPHead; data.FutureStatus_Id = 8; //Pending Sales Director / VP Head; data.Requested_Role = 9; if (data.EmployeeCode.Equals(AssignedTo)) { //auto approval code here. ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignedTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); data.Active_Role = 9; data.Requested_Role = 0; data.CurrentStatus_Id = 16; data.FutureStatus_Id = 0; } } else { return("Error : Sales Director/VP Head is not Defined."); } } else { if (RM_Trail.President_Code != "NA" && RM_Trail.President_Code != "" && RM_Trail.President_Code != null) { AssignedTo = UserDetail.President_Code; data.FutureStatus_Id = 9;//Pending President data.Requested_Role = 6; if (data.EmployeeCode.Equals(AssignedTo)) { //auto approval code here. ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignedTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); data.Active_Role = 6; data.Requested_Role = 0; data.CurrentStatus_Id = 16; data.FutureStatus_Id = 0; } } else { return("Error : President code is not in LFG."); } } } else { if (TotalSRV_Value <= FlowMatrixValue.SegmentHead && InvoiceAge <= FlowMatrixPeriod.SegmentHead) { var DealerDtl = context.sp_GetDealerDtlBy_DealerRepositoryId(ReqHdr.DealerId).FirstOrDefault(); // if (DealerDtl!=null) if (UserDetail.segmentHead != "NA" && UserDetail.segmentHead != "" && UserDetail.segmentHead != null) { //AssignedTo = context.SP_LFGDetailsBasedOnName(DealerDtl.Segment).FirstOrDefault().EMP_CODE; if (UserDetail.segmentHead != "NA" && UserDetail.segmentHead != "" && UserDetail.segmentHead != null) { AssignedTo = UserDetail.segmentHead; } else { return("Error : Segment Head is not in LFG."); if (DealerDtl != null) { AssignedTo = context.SP_LFGDetailsBasedOnName(DealerDtl.Segment).FirstOrDefault().EMP_CODE; } } data.FutureStatus_Id = 7; //Pending Segment Head; data.Requested_Role = 8; if (data.EmployeeCode.Equals(AssignedTo)) { //auto approval code here. ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignedTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); data.Active_Role = 8; data.Requested_Role = 0; data.CurrentStatus_Id = 16; data.FutureStatus_Id = 0; } } else { return("Error : Segment head is not defined in PMS."); } } else if (TotalSRV_Value <= FlowMatrixValue.VP && InvoiceAge <= FlowMatrixPeriod.VP) { var DealerDtl = context.sp_GetDealerDtlBy_DealerRepositoryId(ReqHdr.DealerId).FirstOrDefault(); //if (DealerDtl!=null) if (UserDetail.VPHead != "NA" && UserDetail.VPHead != "" && UserDetail.VPHead != null) { // AssignedTo = context.SP_LFGDetailsBasedOnName(DealerDtl.Segment).FirstOrDefault().VPHead; if (UserDetail.VPHead != "NA" && UserDetail.VPHead != "" && UserDetail.VPHead != null) { AssignedTo = UserDetail.VPHead; } else { return("Error : VP Head is not in LFG."); if (DealerDtl != null) { AssignedTo = context.SP_LFGDetailsBasedOnName(DealerDtl.Segment).FirstOrDefault().VPHead; } } data.FutureStatus_Id = 8; //Pending Sales Director / VP Head; data.Requested_Role = 9; if (data.EmployeeCode.Equals(AssignedTo)) { //auto approval code here. ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignedTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); data.Active_Role = 9; data.Requested_Role = 0; data.CurrentStatus_Id = 16; data.FutureStatus_Id = 0; } } else { return("Error : Sales Director/VP Head is not Defined."); } } else { var DealerDtl = context.sp_GetDealerDtlBy_DealerRepositoryId(ReqHdr.DealerId).FirstOrDefault(); //if (DealerDtl!=null) if (UserDetail.President_Code != "NA" && UserDetail.President_Code != "" && UserDetail.President_Code != null) { // AssignedTo = context.SP_LFGDetailsBasedOnName(DealerDtl.Segment).FirstOrDefault().President_Code; if (UserDetail.President_Code != "NA" && UserDetail.President_Code != "" && UserDetail.President_Code != null) { AssignedTo = UserDetail.President_Code; } else { return("Error : President code is not in LFG."); if (DealerDtl != null) { AssignedTo = context.SP_LFGDetailsBasedOnName(DealerDtl.Segment).FirstOrDefault().President_Code; } } data.FutureStatus_Id = 9;//Pending President data.Requested_Role = 6; if (data.EmployeeCode.Equals(AssignedTo)) { //auto approval code here. ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignedTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); data.Active_Role = 6; data.Requested_Role = 0; data.CurrentStatus_Id = 16; data.FutureStatus_Id = 0; } } else { return("Error : President code is not in LFG."); } } } } } else if (approvalHeader.Status_Id == 10 || approvalHeader.Status_Id == 11) { if (UserDetail.President_Code.ToUpper().Trim() != "NA" && UserDetail.President_Code.Trim() != "" && UserDetail.President_Code != null) { AssignedTo = UserDetail.President_Code;//context.SP_LFGDetails(approvalHeader.CreatedBy).FirstOrDefault().President_Code; if (data.EmployeeCode.Equals(AssignedTo)) { //auto approval code here. ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignedTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); data.Active_Role = 6; data.Requested_Role = 0; data.CurrentStatus_Id = 16; data.FutureStatus_Id = 0; } } else { return("Error : President code is not in LFG."); } } ApproverDAL.UpdateRequestStatus(false, Convert.ToInt32(data.Request_Id), data.EmployeeCode, AssignedTo, data.Active_Role, data.Requested_Role, data.CurrentStatus_Id, data.FutureStatus_Id, data.Remarks); SendMail(approvalHeader, data, RequestProcessType, AssignedTo); Message = "Success : " + RequestHdr.RequestTypeOption + "-" + data.Request_Id + " Request has been Updated."; } else { Message = "Error : Approval matrix is not Defined. Please contact admin."; } return(Message); } }