public async Task <MstEmployee> checkEmployeeIsActive(string emailOrPfNumber) { MstEmployee mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.FirstOrDefaultAsync(x => !x.IsDelete && x.EmailId.Trim() == emailOrPfNumber.Trim()); if (mstEmployee == null) { mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.FirstOrDefaultAsync(x => !x.IsDelete && x.EmpPfnumber.Trim() == emailOrPfNumber.Trim()); } return(mstEmployee); }
public async Task <string> GetLineManagerEmail(string UserId) { long Userid = Convert.ToInt64(UserId); string LineManageEmail = string.Empty; MstEmployee mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.FirstOrDefaultAsync(x => !x.IsDelete && x.IsActive && x.UserId == Userid); if (mstEmployee != null) { LineManageEmail = mstEmployee.EmailId; } return(LineManageEmail); }
public async Task <EmployeeProfileAC> GetUserProfile(long userId) { EmployeeProfileAC responseAc = new EmployeeProfileAC(); try { MstEmployee emp = await _dbTeleBilling_V01Context.MstEmployee.FindAsync(userId); EmployeeProfileDetailAC userProfile = new EmployeeProfileDetailAC(); EmployeeProfileDetailSP userProfileData = new EmployeeProfileDetailSP(); SortedList sl = new SortedList(); sl.Add("userId", userId); DataSet ds = _objDalmysql.GetDataSet("uspGetUserProfile", sl); if (ds != null) { if (ds.Tables[0].Rows.Count > 0 && ds.Tables[0] != null) { userProfileData = _objDal.ConvertDataTableToGenericList <EmployeeProfileDetailSP>(ds.Tables[0]).FirstOrDefault(); } if (ds.Tables.Count > 1 && ds.Tables[1].Rows.Count > 0 && ds.Tables[1] != null) { userProfileData.employeeTelephoneDetails = _objDal.ConvertDataTableToGenericList <EmployeeTelephoneDetailsAC>(ds.Tables[1]); } } if (userProfileData.UserId > 0) { userProfile = _mapper.Map <EmployeeProfileDetailAC>(userProfileData); responseAc.Message = _iStringConstant.DataFound; responseAc.StatusCode = Convert.ToInt16(EnumList.ResponseType.Success); responseAc.UserProfileData = userProfile; return(responseAc); } else { responseAc.Message = _iStringConstant.DataNotFound; responseAc.StatusCode = Convert.ToInt16(EnumList.ResponseType.NotFound); return(responseAc); } } catch (Exception e) { responseAc.Message = "Error :" + e.Message; responseAc.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responseAc); } }
public int postEmployee(MstEmployee addEmployee) { try { Data.MstEmployee newEmployee = new Data.MstEmployee(); db.MstEmployees.InsertOnSubmit(newEmployee); db.SubmitChanges(); return(newEmployee.Id); } catch { return(0); } }
public async Task <ResponseAC> resetPassword(EmployeeProfileDetailAC employeeProfileDetailAC, long userId) { ResponseAC responeAC = new ResponseAC(); MstEmployee mstEmployee = new MstEmployee(); try { mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.FindAsync(employeeProfileDetailAC.UserId); if (mstEmployee != null) { #region Transaction Log Entry if (mstEmployee.TransactionId == null) { mstEmployee.TransactionId = _iLogManagement.GenerateTeleBillingTransctionID(); } var jsonSerailzeObj = JsonConvert.SerializeObject(mstEmployee); await _iLogManagement.SaveRequestTraseLog(Convert.ToInt64(mstEmployee.TransactionId), userId, Convert.ToInt64(EnumList.TransactionTraseLog.UpdateRecord), jsonSerailzeObj); #endregion mstEmployee.Password = employeeProfileDetailAC.NewPassword; mstEmployee.UpdatedBy = userId; mstEmployee.UpdatedDate = DateTime.Now; _dbTeleBilling_V01Context.Update(mstEmployee); await _dbTeleBilling_V01Context.SaveChangesAsync(); responeAC.Message = "Password Reset Successfully"; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Success); await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.ResetPassword, mstEmployee.FullName, userId, string.Empty, (int)EnumList.ActionTemplateTypes.ResetPassword, mstEmployee.UserId); } else { responeAC.Message = "Employee does not found"; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); } } catch (Exception e) { throw e; } return(responeAC); }
public async Task <bool> ChangeEmployeeStatus(long Id, long userId, string loginUserName) { MstEmployee mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.FirstOrDefaultAsync(x => x.UserId == Id); if (mstEmployee != null) { #region Transaction Log Entry if (mstEmployee.TransactionId == null) { mstEmployee.TransactionId = _iLogManagement.GenerateTeleBillingTransctionID(); } var jsonSerailzeObj = JsonConvert.SerializeObject(mstEmployee); await _iLogManagement.SaveRequestTraseLog(Convert.ToInt64(mstEmployee.TransactionId), userId, Convert.ToInt64(EnumList.TransactionTraseLog.ChangeStatus), jsonSerailzeObj); #endregion mstEmployee.IsActive = !mstEmployee.IsActive; mstEmployee.UpdatedBy = userId; mstEmployee.UpdatedDate = DateTime.Now; _dbTeleBilling_V01Context.Update(mstEmployee); await _dbTeleBilling_V01Context.SaveChangesAsync(); if (mstEmployee.IsActive) { await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.ActiveEmployee, loginUserName, userId, "Employee(" + mstEmployee.FullName + ")", (int)EnumList.ActionTemplateTypes.Active, mstEmployee.UserId); } else { await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.DeactiveEmployee, loginUserName, userId, "Employee(" + mstEmployee.FullName + ")", (int)EnumList.ActionTemplateTypes.Deactive, mstEmployee.UserId); } return(true); } return(false); }
private async void AddEmploye(IServiceProvider serviceProvider) { var _dbTeleBilling_V01Context = serviceProvider.GetService <TeleBilling_V01Context>(); #region Added Role MstRole mstRole = new MstRole(); mstRole.IsActive = true; mstRole.RoleName = "Super Admin"; mstRole.CreatedBy = 1; mstRole.CreatedDate = DateTime.Now; mstRole.TransactionId = 080820191635; await _dbTeleBilling_V01Context.AddAsync(mstRole); await _dbTeleBilling_V01Context.SaveChangesAsync(); #endregion #region Added Business Unit MstBusinessUnit mstBusinessUnit = new MstBusinessUnit(); mstBusinessUnit.IsActive = true; mstBusinessUnit.Name = "RISK MANAGEMENT & CONTROL"; mstBusinessUnit.CreatedBy = 1; mstBusinessUnit.CreatedDate = DateTime.Now; await _dbTeleBilling_V01Context.AddAsync(mstBusinessUnit); await _dbTeleBilling_V01Context.SaveChangesAsync(); #endregion #region Added Department MstDepartment mstDepartment = new MstDepartment(); mstDepartment.IsActive = true; mstDepartment.Name = "Business"; mstDepartment.BusinessUnitId = mstBusinessUnit.Id; mstDepartment.CreatedBy = 1; mstDepartment.CreatedDate = DateTime.Now; await _dbTeleBilling_V01Context.AddAsync(mstDepartment); await _dbTeleBilling_V01Context.SaveChangesAsync(); #endregion #region Added CostCenter MstCostCenter mstCostCenter = new MstCostCenter(); mstCostCenter.BusinessUnitid = mstBusinessUnit.Id; mstCostCenter.CostCenterCode = "001"; mstCostCenter.Name = "Vadodra Center"; mstCostCenter.CreatedBy = 1; mstCostCenter.CreatedDate = DateTime.Now; await _dbTeleBilling_V01Context.AddAsync(mstCostCenter); await _dbTeleBilling_V01Context.SaveChangesAsync(); #endregion #region Added Dummy User in Employee MstEmployee mstEmployee = new MstEmployee(); mstEmployee.FullName = "Super Admin"; mstEmployee.ExtensionNumber = "08082019"; mstEmployee.EmpPfnumber = "123456"; mstEmployee.EmailId = "*****@*****.**"; mstEmployee.Password = "******"; mstEmployee.RoleId = mstRole.RoleId; mstEmployee.IsActive = true; mstEmployee.IsSystemUser = true; mstEmployee.DepartmentId = mstDepartment.Id; mstEmployee.Designation = "Administrator"; mstEmployee.Description = "super admin role"; mstEmployee.BusinessUnitId = mstBusinessUnit.Id; mstEmployee.CostCenterId = mstCostCenter.Id; mstEmployee.CountryId = 1; mstEmployee.IsPresidentOffice = true; mstEmployee.LineManagerId = 1; mstEmployee.CreatedBy = 1; mstEmployee.CreatedDate = DateTime.Now; mstEmployee.TransactionId = 080820191636; await _dbTeleBilling_V01Context.AddAsync(mstEmployee); await _dbTeleBilling_V01Context.SaveChangesAsync(); #endregion }
public async Task <BulkAssignTelephoneResponseAC> UploadBulkAssignTelePhone(long userId, ExcelUploadResponseAC exceluploadDetail, string loginUserName) { BulkAssignTelephoneResponseAC bulkAssignTelephoneResponseAC = new BulkAssignTelephoneResponseAC(); List <ExcelUploadResult> excelUploadResultList = new List <ExcelUploadResult>(); FileInfo fileinfo = new FileInfo(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid)); try { using (ExcelPackage package = new ExcelPackage(fileinfo)) { for (int i = 1; i <= package.Workbook.Worksheets.Count(); i++) { ExcelWorksheet workSheet = package.Workbook.Worksheets[i]; string sheetName = package.Workbook.Worksheets[i].Name; int totalRows = workSheet.Dimension.Rows; int totalColums = workSheet.Dimension.Columns; for (int j = 1; j <= totalRows - 1; j++) { string mobileNumber = workSheet.Cells[j + 1, 1].Value != null ? workSheet.Cells[j + 1, 1].Value.ToString() : string.Empty; string assignType = workSheet.Cells[j + 1, 2].Value != null ? workSheet.Cells[j + 1, 2].Value.ToString() : string.Empty; string pfNumber = workSheet.Cells[j + 1, 3].Value != null ? workSheet.Cells[j + 1, 3].Value.ToString() : string.Empty; string packageName = workSheet.Cells[j + 1, 4].Value != null ? workSheet.Cells[j + 1, 4].Value.ToString() : string.Empty; string startDate = workSheet.Cells[j + 1, 5].Value != null ? workSheet.Cells[j + 1, 5].Value.ToString() : string.Empty; string endDate = workSheet.Cells[j + 1, 6].Value != null ? workSheet.Cells[j + 1, 6].Value.ToString() : string.Empty; if (!string.IsNullOrEmpty(mobileNumber) && !string.IsNullOrEmpty(assignType) && !string.IsNullOrEmpty(pfNumber) && !string.IsNullOrEmpty(startDate) && !string.IsNullOrEmpty(packageName) && !string.IsNullOrEmpty(endDate)) { Telephonenumberallocation telephoneNumberAllocation = new Telephonenumberallocation(); Telephonenumberallocationpackage telePhoneNumberAllocationPackage = new Telephonenumberallocationpackage(); bulkAssignTelephoneResponseAC.TotalRecords += 1; Telephonenumber telephoneNumber = await _dbTeleBilling_V01Context.Telephonenumber.FirstOrDefaultAsync(x => x.TelephoneNumber1.ToLower().Trim() == mobileNumber.ToLower().Trim() && x.IsActive && !x.IsDelete); if (telephoneNumber != null) { FixAssigntype fixAssigntype = await _dbTeleBilling_V01Context.FixAssigntype.FirstOrDefaultAsync(x => x.IsActive && x.Name == assignType); if (fixAssigntype != null) { MstEmployee mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.FirstOrDefaultAsync(x => x.IsActive && !x.IsDelete && x.EmpPfnumber.ToLower().Trim() == pfNumber.ToLower().Trim()); if (mstEmployee != null) { Providerpackage providerPackage = await _dbTeleBilling_V01Context.Providerpackage.FirstOrDefaultAsync(x => x.IsActive && !x.IsDelete && x.Name.ToLower().Trim() == packageName.ToLower().Trim()); if (providerPackage != null) { if (!string.IsNullOrEmpty(startDate)) { if (!string.IsNullOrEmpty(endDate)) { DateTime newStartDate; DateTime newEndDate; if (DateTime.TryParse(startDate, out newStartDate)) { String.Format("{0:d/MM/yyyy}", newStartDate); if (DateTime.TryParse(endDate, out newEndDate)) { String.Format("{0:d/MM/yyyy}", newEndDate); string lineStatus = workSheet.Cells[j + 1, 7].Value != null ? workSheet.Cells[j + 1, 7].Value.ToString() : ""; FixLinestatus fixLineStatus = await _dbTeleBilling_V01Context.FixLinestatus.FirstOrDefaultAsync(x => x.IsActive && x.Name.ToLower().Trim() == lineStatus.ToLower().Trim()); if (fixLineStatus != null) { if (telephoneNumber.ProviderId == providerPackage.ProviderId) { Telephonenumberallocation newTelephoneNumberAllocation = _dbTeleBilling_V01Context.Telephonenumberallocation.FirstOrDefault(x => x.TelephoneNumberId == telephoneNumber.Id && !x.IsDelete); if (newTelephoneNumberAllocation != null) { Telephonenumberallocationpackage newTelePhoneNumberAllocationPackage = await _dbTeleBilling_V01Context.Telephonenumberallocationpackage.FirstOrDefaultAsync(x => x.TelephoneNumberAllocationId == newTelephoneNumberAllocation.Id && x.PackageId == providerPackage.Id && !x.IsDelete); if (newTelePhoneNumberAllocationPackage == null) { newTelePhoneNumberAllocationPackage = new Telephonenumberallocationpackage(); newTelePhoneNumberAllocationPackage.ServiceId = providerPackage.ServiceTypeId; newTelePhoneNumberAllocationPackage.StartDate = newStartDate; newTelePhoneNumberAllocationPackage.EndDate = newEndDate; newTelePhoneNumberAllocationPackage.PackageId = providerPackage.Id; bulkAssignTelephoneResponseAC.SuccessRecords += 1; newTelePhoneNumberAllocationPackage.TelephoneNumberAllocationId = newTelephoneNumberAllocation.Id; await _dbTeleBilling_V01Context.AddAsync(newTelePhoneNumberAllocationPackage); await _dbTeleBilling_V01Context.SaveChangesAsync(); await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.AssignBulkTelephone, loginUserName, userId, "Telephone Assign(" + newTelephoneNumberAllocation.TelephoneNumber + ")", (int)EnumList.ActionTemplateTypes.Upload, newTelephoneNumberAllocation.Id); } else { //TelphoneNumbeAlready Assigned bulkAssignTelephoneResponseAC.SkipRecords += 1; string message = _iStringConstant.TelphoneNumberPackageAlreadyAssigned.Replace("{{$telephonenumber$}}", mobileNumber); excelUploadResultList = AddedFileDataResponse(1, j + 1, packageName, message, sheetName, excelUploadResultList); } } else { telephoneNumberAllocation.EmployeeId = mstEmployee.UserId; telephoneNumberAllocation.EmpPfnumber = mstEmployee.EmpPfnumber; telephoneNumberAllocation.TelephoneNumberId = telephoneNumber.Id; telephoneNumberAllocation.TelephoneNumber = telephoneNumber.TelephoneNumber1; telephoneNumberAllocation.LineStatusId = fixLineStatus.Id; telephoneNumberAllocation.IsActive = true; telephoneNumberAllocation.TransactionId = _iLogManagement.GenerateTeleBillingTransctionID(); telephoneNumberAllocation.CreatedBy = userId; telephoneNumberAllocation.CreatedDate = DateTime.Now; telephoneNumberAllocation.AssignTypeId = fixAssigntype.Id; bulkAssignTelephoneResponseAC.SuccessRecords += 1; await _dbTeleBilling_V01Context.AddAsync(telephoneNumberAllocation); await _dbTeleBilling_V01Context.SaveChangesAsync(); telePhoneNumberAllocationPackage.ServiceId = providerPackage.ServiceTypeId; telePhoneNumberAllocationPackage.StartDate = newStartDate; telePhoneNumberAllocationPackage.EndDate = newEndDate; telePhoneNumberAllocationPackage.PackageId = providerPackage.Id; telePhoneNumberAllocationPackage.TelephoneNumberAllocationId = telephoneNumberAllocation.Id; await _dbTeleBilling_V01Context.AddAsync(telePhoneNumberAllocationPackage); await _dbTeleBilling_V01Context.SaveChangesAsync(); await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.AssignBulkTelephone, loginUserName, userId, "Telephone Assign(" + newTelephoneNumberAllocation.TelephoneNumber + ")", (int)EnumList.ActionTemplateTypes.Upload, newTelephoneNumberAllocation.Id); } } else { //Packge not same bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(4, j + 1, "Given package not valid for mobilenumber(" + mobileNumber + ")", _iStringConstant.PackageNotMatchWithTelephoneNumber, sheetName, excelUploadResultList); } } else { //LineStatus Not Exists bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(7, j + 1, lineStatus, _iStringConstant.LineStatusNotExists, sheetName, excelUploadResultList); } } else { //End Date Not Valid bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(6, j + 1, endDate, _iStringConstant.EndDateNotValid, sheetName, excelUploadResultList); } } else { //Start Date Not Valid bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(5, j + 1, startDate, _iStringConstant.StartDateNotValid, sheetName, excelUploadResultList); } } else { //End Date Is Empty bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(6, j + 1, endDate, _iStringConstant.EndDateIsEmpty, sheetName, excelUploadResultList); } } else { //Start Date Is Empty bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(5, j, startDate, _iStringConstant.StartDateIsEmpty, sheetName, excelUploadResultList); } } else { //Package Not Exists bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(4, j + 1, packageName, _iStringConstant.PackageNotExists, sheetName, excelUploadResultList); } } else { //Employee Not Exists bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(3, j, pfNumber, _iStringConstant.EmployeeNotExists, sheetName, excelUploadResultList); } //else //{ //TelphoneNumbeAlready Assigned //bulkAssignTelephoneResponseAC.SkipRecords += 1; //excelUploadResultList = AddedFileDataResponse(1, j + 1, mobileNumber, _iStringConstant.TelphoneNumberAlreadyAssigned, sheetName, excelUploadResultList); //} } else { //Employee Not Exists bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(2, j, assignType, _iStringConstant.AssignTypeNotExists, sheetName, excelUploadResultList); } } else { //PhoneNumber Not Exists bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(1, j + 1, mobileNumber, _iStringConstant.PhoneNumberNotExists, sheetName, excelUploadResultList); } } } } } if (File.Exists(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid))) { File.Delete(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid)); } bulkAssignTelephoneResponseAC.excelUploadResultList = excelUploadResultList; return(bulkAssignTelephoneResponseAC); } catch (Exception ex) { if (File.Exists(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid))) { File.Delete(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid)); } throw ex; } }
public async Task <EmployeeDetailAC> GetLoggedInUserDetail(long userId) { MstEmployee mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.Where(x => x.UserId == userId && !x.IsDelete).Include(x => x.Role).FirstOrDefaultAsync(); return(_mapper.Map <EmployeeDetailAC>(mstEmployee)); }
public async Task <BulkAssignTelephoneResponseAC> BulkUploadOperatorCallLog(long userId, ExcelUploadResponseAC exceluploadDetail, string loginUserName) { BulkAssignTelephoneResponseAC bulkAssignTelephoneResponseAC = new BulkAssignTelephoneResponseAC(); List <ExcelUploadResult> excelUploadResultList = new List <ExcelUploadResult>(); List <Operatorcalllog> operatorCallLogList = new List <Operatorcalllog>(); FileInfo fileinfo = new FileInfo(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid)); try { using (ExcelPackage package = new ExcelPackage(fileinfo)) { for (int i = 1; i <= package.Workbook.Worksheets.Count(); i++) { ExcelWorksheet workSheet = package.Workbook.Worksheets[i]; if (workSheet != null) { string sheetName = workSheet.Name; int totalRows = workSheet.Dimension.Rows; int totalColums = workSheet.Dimension.Columns; for (int j = 1; j <= totalRows - 1; j++) { Operatorcalllog operatorCallLog = new Operatorcalllog(); bulkAssignTelephoneResponseAC.TotalRecords += 1; string callDate = workSheet.Cells[j + 1, 1].Value != null ? workSheet.Cells[j + 1, 1].Value.ToString() : string.Empty; if (!string.IsNullOrEmpty(callDate)) { DateTime newCallDate; if (DateTime.TryParse(callDate, out newCallDate)) { String.Format("{0:d/MM/yyyy}", newCallDate); string pfNumber = workSheet.Cells[j + 1, 2].Value != null ? workSheet.Cells[j + 1, 2].Value.ToString() : string.Empty; pfNumber = !string.IsNullOrEmpty(pfNumber) ? pfNumber.ToLower().Trim() : string.Empty; MstEmployee mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.FirstOrDefaultAsync(x => x.IsActive && !x.IsDelete && x.EmpPfnumber.ToLower().Trim() == pfNumber); if (mstEmployee != null) { string telephoneNumber = workSheet.Cells[j + 1, 3].Value != null ? workSheet.Cells[j + 1, 3].Value.ToString() : string.Empty; if (!string.IsNullOrEmpty(telephoneNumber)) { if (telephoneNumber.Length < 50) { string provider = workSheet.Cells[j + 1, 4].Value != null ? workSheet.Cells[j + 1, 4].Value.ToString() : string.Empty; provider = !string.IsNullOrEmpty(provider) ? provider.ToLower().Trim() : string.Empty; TeleBillingUtility.Models.Provider providerObj = await _dbTeleBilling_V01Context.Provider.FirstOrDefaultAsync(x => x.IsActive && !x.IsDelete && x.Name.ToLower().Trim() == provider); if (providerObj != null) { string callType = workSheet.Cells[j + 1, 5].Value != null ? workSheet.Cells[j + 1, 5].Value.ToString() : string.Empty; callType = !string.IsNullOrEmpty(callType) ? callType.ToLower().Trim() : string.Empty; FixCalltype callTypeObj = await _dbTeleBilling_V01Context.FixCalltype.FirstOrDefaultAsync(x => x.IsActive && x.Name.ToLower().Trim() == callType); if (callTypeObj != null) { operatorCallLog.CallDate = newCallDate; operatorCallLog.CallTypeId = callTypeObj.Id; operatorCallLog.ProviderId = providerObj.Id; operatorCallLog.EmployeeId = mstEmployee.UserId; operatorCallLog.EmpPfnumber = mstEmployee.EmpPfnumber; operatorCallLog.ExtensionNumber = mstEmployee.ExtensionNumber; operatorCallLog.TransactionId = _iLogManagement.GenerateTeleBillingTransctionID(); operatorCallLog.DialedNumber = telephoneNumber; operatorCallLog.CreatedBy = userId; operatorCallLog.CreatedDate = DateTime.Now; operatorCallLogList.Add(operatorCallLog); bulkAssignTelephoneResponseAC.SuccessRecords += 1; } else { //Call Type Not Exists bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(4, j, callType, _iStringConstant.CallTypeNotExists, sheetName, excelUploadResultList); } } else { //Provider Not Exists bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(4, j, provider, _iStringConstant.ProviderNotExists, sheetName, excelUploadResultList); } } else { //Telephone Number length bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(3, j, telephoneNumber, _iStringConstant.TelePhoneNumberMaxLength, sheetName, excelUploadResultList); } } else { //Telephone number is empty bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(3, j, telephoneNumber, _iStringConstant.TelePhoneNumberIsEmpty, sheetName, excelUploadResultList); } } else { //Employee Not Exists bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(2, j, pfNumber, _iStringConstant.EmployeeNotExists, sheetName, excelUploadResultList); } } else { //Start Date Not Valid bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(1, j + 1, callDate, _iStringConstant.CallDateNotValid, sheetName, excelUploadResultList); } } else { //Call Date Is Empty bulkAssignTelephoneResponseAC.SkipRecords += 1; excelUploadResultList = AddedFileDataResponse(1, j, callDate, _iStringConstant.CallDateIsEmpty, sheetName, excelUploadResultList); } } } } } if (File.Exists(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid))) { File.Delete(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid)); } if (operatorCallLogList.Any()) { await _dbTeleBilling_V01Context.AddRangeAsync(operatorCallLogList); await _dbTeleBilling_V01Context.SaveChangesAsync(); await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.BulkUploadOperatorCallLog, loginUserName, userId, "Bulk Operator call log", (int)EnumList.ActionTemplateTypes.Upload, null); } bulkAssignTelephoneResponseAC.excelUploadResultList = excelUploadResultList; return(bulkAssignTelephoneResponseAC); } catch (Exception ex) { if (File.Exists(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid))) { File.Delete(Path.Combine(exceluploadDetail.FilePath, exceluploadDetail.FileNameGuid)); } throw ex; } }
public async Task <ResponseAC> EditEmployee(MstEmployeeAC employee, long userId, string loginUserName) { ResponseAC responeAC = new ResponseAC(); try { if (employee != null) { if (employee.UserId > 0) { MstEmployee mstEmployee = new MstEmployee(); mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.FindAsync(employee.UserId); if (mstEmployee != null) { if (mstEmployee.IsSystemUser) { string pfNumber = employee.EmpPFNumber; if (!await checkPFNumberUnique(pfNumber, employee.UserId)) { mstEmployee.FullName = employee.FullName; mstEmployee.ExtensionNumber = employee.ExtensionNumber; mstEmployee.EmpPfnumber = employee.EmpPFNumber; mstEmployee.EmailId = employee.EmailId; mstEmployee.DepartmentId = employee.DepartmentId; mstEmployee.Designation = employee.Designation; mstEmployee.Description = employee.Description; mstEmployee.BusinessUnitId = employee.BusinessUnitId; mstEmployee.CostCenterId = employee.CostCenterId; mstEmployee.CountryId = employee.CountryId; mstEmployee.IsPresidentOffice = employee.IsPresidentOffice; mstEmployee.RoleId = employee.RoleId; if (employee.ManagerEmployee != null) { if (employee.ManagerEmployee.UserId > 0) { mstEmployee.LineManagerId = employee.ManagerEmployee.UserId; } } else { mstEmployee.LineManagerId = employee.LineManagerId; } if (mstEmployee.LineManagerId == 0) { responeAC.Message = "Line Manager is not valid !"; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responeAC); } mstEmployee.UpdatedBy = userId; mstEmployee.UpdatedDate = DateTime.Now; mstEmployee.TransactionId = _iLogManagement.GenerateTeleBillingTransctionID(); _dbTeleBilling_V01Context.Update(mstEmployee); await _dbTeleBilling_V01Context.SaveChangesAsync(); responeAC.Message = "Employee Updated Successfully !"; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Success); await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.EditEmployee, loginUserName, userId, "Employee(" + mstEmployee.FullName + ")", (int)EnumList.ActionTemplateTypes.Edit, mstEmployee.UserId); return(responeAC); } else { responeAC.Message = "PFNumber is already exists!"; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responeAC); } } else { responeAC.Message = "Employee is not system user."; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responeAC); } } } } responeAC.Message = _iStringConstant.DataNotFound; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responeAC); } catch (Exception e) { responeAC.Message = "Error : " + e.Message; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responeAC); } }
public async Task <MstEmployeeAC> GetEmployeeById(long userId) { MstEmployeeAC responseAc = new MstEmployeeAC(); try { MstEmployee employee = await _dbTeleBilling_V01Context.MstEmployee.FindAsync(userId); MstEmployeeAC mstEmployee = new MstEmployeeAC(); MstEmployeeSP mstEmployeeData = new MstEmployeeSP(); SortedList sl = new SortedList(); sl.Add("userId", userId); DataSet ds = _objDalmysql.GetDataSet("uspGetEmployeeById", sl); if (ds != null) { if (ds.Tables[0].Rows.Count > 0 && ds.Tables[0] != null) { mstEmployeeData = _objDal.ConvertDataTableToGenericList <MstEmployeeSP>(ds.Tables[0]).FirstOrDefault(); } } if (mstEmployeeData != null) { if (mstEmployeeData.UserId > 0) { mstEmployee = _mapper.Map <MstEmployeeAC>(mstEmployeeData); } } if (employee != null) { mstEmployee.FullName = employee.FullName; mstEmployee.ExtensionNumber = employee.ExtensionNumber; mstEmployee.EmpPFNumber = employee.EmpPfnumber; mstEmployee.EmailId = employee.EmailId; mstEmployee.Password = employee.Password; mstEmployee.RoleId = employee.RoleId; mstEmployee.IsSystemUser = employee.IsSystemUser; mstEmployee.Designation = employee.Designation; mstEmployee.DepartmentId = employee.DepartmentId; mstEmployee.BusinessUnitId = employee.BusinessUnitId; mstEmployee.CostCenterId = employee.CostCenterId; mstEmployee.CountryId = employee.CountryId; mstEmployee.IsPresidentOffice = employee.IsPresidentOffice; mstEmployee.Description = employee.Description; mstEmployee.TransactionId = employee.TransactionId; mstEmployee.IsActive = employee.IsActive; mstEmployee.IsDelete = employee.IsDelete; //mstEmployee.BusinessUnit = mstEmployeeData.BusinessUnit; //mstEmployee.CostCenter = mstEmployeeData.CostCenter; //mstEmployee.Department = mstEmployeeData.Department; //mstEmployee.Country = mstEmployeeData.Country; if (employee.LineManagerId > 0) { MstEmployee lineManagerEmpDetail = new MstEmployee(); lineManagerEmpDetail = await _dbTeleBilling_V01Context.MstEmployee.Where(x => x.UserId == employee.LineManagerId).FirstOrDefaultAsync(); mstEmployee.LineManagerId = employee.LineManagerId; mstEmployee.ManagerEmployee = _mapper.Map <EmployeeAC>(lineManagerEmpDetail); } } if (mstEmployee != null) { if (mstEmployee.UserId > 0) { responseAc = mstEmployee; return(responseAc); } } return(new MstEmployeeAC()); } catch (Exception e) { return(new MstEmployeeAC()); } }
public async Task <ResponseAC> AddEmployee(MstEmployeeAC employee, long userId, string loginUserName) { ResponseAC responeAC = new ResponseAC(); try { if (employee != null) { string pfNumber = employee.EmpPFNumber; if (!await checkPFNumberUnique(pfNumber, 0)) { MstEmployee mstEmployee = new MstEmployee(); mstEmployee.FullName = employee.FullName; mstEmployee.ExtensionNumber = employee.ExtensionNumber; mstEmployee.EmpPfnumber = employee.EmpPFNumber; mstEmployee.EmailId = employee.EmailId; string randomPassword = "******"; string randomPadding = CreatePassword(4); mstEmployee.Password = randomPassword + randomPadding; mstEmployee.RoleId = employee.RoleId; mstEmployee.IsActive = true; mstEmployee.IsSystemUser = true; mstEmployee.DepartmentId = employee.DepartmentId; mstEmployee.Designation = employee.Designation; mstEmployee.Description = employee.Description; mstEmployee.BusinessUnitId = employee.BusinessUnitId; mstEmployee.CostCenterId = employee.CostCenterId; mstEmployee.CountryId = employee.CountryId; mstEmployee.IsPresidentOffice = employee.IsPresidentOffice; if (employee.ManagerEmployee != null) { if (employee.ManagerEmployee.UserId > 0) { mstEmployee.LineManagerId = employee.ManagerEmployee.UserId; } } if (mstEmployee.LineManagerId == 0) { responeAC.Message = "Line Manager is not valid !"; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responeAC); } mstEmployee.CreatedBy = userId; mstEmployee.CreatedDate = DateTime.Now; mstEmployee.TransactionId = _iLogManagement.GenerateTeleBillingTransctionID(); await _dbTeleBilling_V01Context.AddAsync(mstEmployee); await _dbTeleBilling_V01Context.SaveChangesAsync(); responeAC.Message = "Employee Added Successfully !"; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Success); await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.AddEmployee, loginUserName, userId, "Employee(" + mstEmployee.FullName + ")", (int)EnumList.ActionTemplateTypes.Add, mstEmployee.UserId); #region Send Email for Registration Confirmation EmployeeProfileAC empDetail = new EmployeeProfileAC(); try { empDetail = await GetUserProfile(mstEmployee.UserId); if (empDetail != null) { if (empDetail.UserProfileData.UserId > 0) { Dictionary <string, string> replacement = new Dictionary <string, string>(); replacement.Add("{newEmpName}", empDetail.UserProfileData.FullName); replacement.Add("{PFNumber}", empDetail.UserProfileData.EmpPFNumber); replacement.Add("{Email}", empDetail.UserProfileData.EmailId); replacement.Add("{Password}", empDetail.UserProfileData.Password); replacement.Add("{EmpDesignation}", empDetail.UserProfileData.Designation); replacement.Add("{Emplocation}", empDetail.UserProfileData.Country); replacement.Add("{lineManagerDepartment}", empDetail.UserProfileData.LineManager); replacement.Add("{EmpDepartment}", empDetail.UserProfileData.Department); replacement.Add("{EmpCostCenter}", empDetail.UserProfileData.CostCenter); replacement.Add("{EmpBusinessUnit}", empDetail.UserProfileData.BusinessUnit); bool issent = false; string EmailId = empDetail.UserProfileData.EmailId; if (!(string.IsNullOrEmpty(empDetail.UserProfileData.EmailId) || empDetail.UserProfileData.EmailId == "n/a")) { issent = await _iEmailSender.SendEmail(Convert.ToInt64(EnumList.EmailTemplateType.NewRegistrationConfirmation), replacement, employee.EmailId); } else {// get line manager email string linemanagerEmail = await _dbTeleBilling_V01Context.MstEmployee.Where(x => x.UserId == mstEmployee.LineManagerId).Select(x => x.EmailId).FirstOrDefaultAsync(); issent = await _iEmailSender.SendEmail(Convert.ToInt64(EnumList.EmailTemplateType.NewRegistrationInYourTeam), replacement, linemanagerEmail); } if (!issent) { responeAC.StatusCode = Convert.ToInt32(EnumList.ResponseType.Success); responeAC.Message = "Employee Added Successfully! We Could Not Sent Mail Confirmation."; } } } } catch (Exception e) { responeAC.StatusCode = Convert.ToInt32(EnumList.ResponseType.Success); responeAC.Message = "Employee Added Successfully! Error :" + e.Message + " We Could Not Sent Mail Confirmation."; } #endregion return(responeAC); } else { responeAC.Message = "PFNumber is already exists!"; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responeAC); } } else { responeAC.Message = _iStringConstant.DataNotFound; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responeAC); } } catch (Exception e) { responeAC.Message = "Error : " + e.Message; responeAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Error); return(responeAC); } }
public async Task <ResponseAC> MemoApproval(MemoApprovalAC memoApprovalAC, long userId, string loginUserName) { ResponseAC responseAC = new ResponseAC(); List <Memo> lstMemo = new List <Memo>(); List <Billmaster> billMasters = new List <Billmaster>(); List <string> stringMemoArray = new List <string>(); foreach (var item in memoApprovalAC.billMemoACs) { Memo memoObj = await _dbTeleBilling_V01Context.Memo.Where(x => x.Id == item.Id).Include(x => x.Provider).FirstOrDefaultAsync(); if (memoObj.IsApproved == null) { memoObj.IsApproved = memoApprovalAC.IsApprvoed; memoObj.ApprovedDate = DateTime.Now; memoObj.ApprovedBy = userId; memoObj.Comment = item.Comment; memoObj.UpdatedBy = userId; memoObj.UpdatedDate = DateTime.Now; lstMemo.Add(memoObj); string memoApproval = string.Empty; if (!memoApprovalAC.IsApprvoed) { billMasters.AddRange(await _dbTeleBilling_V01Context.Memobills.Where(x => x.MemoId == item.Id && !x.IsDelete).Include(x => x.Bill).Select(x => x.Bill).ToListAsync()); memoApproval = "Rejected"; } else { memoApproval = "Approved"; } #region Send Mail For Memo Approval TeleBillingUtility.Models.Configuration configuration = await _dbTeleBilling_V01Context.Configuration.FirstOrDefaultAsync(); MstEmployee mstEmployee = await _dbTeleBilling_V01Context.MstEmployee.FirstOrDefaultAsync(x => !x.IsDelete && x.UserId == memoObj.CreatedBy); if (configuration != null && configuration.NMemoApprovalRejection) { if (mstEmployee != null) { if (!string.IsNullOrEmpty(mstEmployee.EmailId)) { Dictionary <string, string> replacements = new Dictionary <string, string>(); EnumList.Month month = (EnumList.Month)memoObj.Month; replacements.Add("{MemoApproval}", memoApproval); replacements.Add("{BillMonth}", month.ToString()); replacements.Add("{BillYear}", memoObj.Year.ToString()); replacements.Add("{RefrenceNo}", memoObj.RefrenceNo); replacements.Add("{newEmpName}", mstEmployee.FullName); replacements.Add("{ApprovalComment}", memoObj.Comment); replacements.Add("{BillAmount}", memoObj.TotalAmount.ToString()); replacements.Add("{MemoSubject}", memoObj.Subject); replacements.Add("{Provider}", memoObj.Provider.Name); if (await _iEmailSender.SendEmail(Convert.ToInt64(EnumList.EmailTemplateType.MemoApproval), replacements, mstEmployee.EmailId)) { await _iEmailSender.AddedReminderNotificationLog(Convert.ToInt64(EnumList.EmailTemplateType.MemoApproval), null, false, mstEmployee.EmailId); } } } } #endregion #region Notification For Memo List <Notificationlog> notificationlogs = new List <Notificationlog>(); if (mstEmployee != null) { if (memoApprovalAC.IsApprvoed) { notificationlogs.Add(_iLogManagement.GenerateNotificationObject(mstEmployee.UserId, userId, Convert.ToInt16(EnumList.NotificationType.MemoApprove), memoObj.Id)); await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.MemoApprove, loginUserName, userId, "Memo(" + memoObj.RefrenceNo + ")", (int)EnumList.ActionTemplateTypes.Approve, memoObj.Id); } else { notificationlogs.Add(_iLogManagement.GenerateNotificationObject(mstEmployee.UserId, userId, Convert.ToInt16(EnumList.NotificationType.MemoReject), memoObj.Id)); await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.MemoReject, loginUserName, userId, "Memo(" + memoObj.RefrenceNo + ")", (int)EnumList.ActionTemplateTypes.Reject, memoObj.Id); } await _iLogManagement.SaveNotificationList(notificationlogs); } #endregion } else { stringMemoArray.Add(memoObj.RefrenceNo); } } #region Update Bill Status if (billMasters.Any()) { foreach (var item in billMasters) { item.BillStatusId = Convert.ToInt16(EnumList.BillStatus.BillAllocated); item.UpdatedBy = userId; item.UpdatedDate = DateTime.Now; } _dbTeleBilling_V01Context.UpdateRange(billMasters); await _dbTeleBilling_V01Context.SaveChangesAsync(); } #endregion if (lstMemo.Any()) { _dbTeleBilling_V01Context.UpdateRange(lstMemo); await _dbTeleBilling_V01Context.SaveChangesAsync(); } if (lstMemo.Count() == memoApprovalAC.billMemoACs.Count()) { responseAC.Message = memoApprovalAC.IsApprvoed ? _iStringConstant.MemoApprovedsuccessfully : _iStringConstant.MemoRejectedsuccessfully; responseAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Success); } else { string message = String.Join(',', stringMemoArray); responseAC.Message = memoApprovalAC.IsApprvoed ? _iStringConstant.MemoApprovalMessagesuccessfully.Replace("{{@currentapproval}}", "approved").Replace("{{@memo}}", message) : _iStringConstant.MemoApprovalMessagesuccessfully.Replace("{{@currentapproval}}", "rejected").Replace("{{@memo}}", message); responseAC.StatusCode = Convert.ToInt16(EnumList.ResponseType.Warning); } return(responseAC); }