public async Task <ResponseAC> AddTelephone(long userId, TelephoneDetailAC telephoneDetailAC, string loginUserName)
        {
            ResponseAC responseAC = new ResponseAC();

            if (!await _dbTeleBilling_V01Context.Telephonenumber.AnyAsync(x => x.TelephoneNumber1.Trim() == telephoneDetailAC.TelephoneNumber1.Trim() && !x.IsDelete))
            {
                Telephonenumber telephoneNumber = _mapper.Map <Telephonenumber>(telephoneDetailAC);
                telephoneNumber.CreatedBy     = userId;
                telephoneNumber.CreatedDate   = DateTime.Now;
                telephoneNumber.IsActive      = true;
                telephoneNumber.TransactionId = _iLogManagement.GenerateTeleBillingTransctionID();

                await _dbTeleBilling_V01Context.AddAsync(telephoneNumber);

                await _dbTeleBilling_V01Context.SaveChangesAsync();

                await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.AddTelephone, loginUserName, userId, "Telephone(" + telephoneNumber.TelephoneNumber1 + ")", (int)EnumList.ActionTemplateTypes.Add, telephoneNumber.Id);

                responseAC.StatusCode = Convert.ToInt32(EnumList.ResponseType.Success);
                responseAC.Message    = _iStringConstant.TelphoneAddedSuccessfully;
            }
            else
            {
                responseAC.StatusCode = Convert.ToInt32(EnumList.ResponseType.Error);
                responseAC.Message    = _iStringConstant.TelphoneAlreadyExists;
            }
            return(responseAC);
        }
Exemplo n.º 2
0
 static async Task Execute() //sms tjänst
 {
     Customer customer         = new Customer();
     var      apiKey           = Environment.GetEnvironmentVariable("NAME_OF_THE_ENVIRONMENT_VARIABLE_FOR_YOUR_SENDGRID_KEY");
     var      client           = new SendGridClient(apiKey);
     var      from             = new Telephonenumber("555-12345678", "PragueParking");
     var      subject          = "Reminder Parking";
     var      to               = new Telephonenumber($"{customer.TelephoneNumber}", $"{customer.FirstName} {customer.LastName}");
     var      plainTextContent = "You have parked for 24 hours";
     var      htmlContent      = "<strong>Please check out the vehicle</strong>";
     var      msg              = TextMessageHelper.CreateSingleEmail(from, to, subject, plainTextContent, htmlContent);
     var      response         = await client.SendEmailAsync(msg);
 }
        public async Task <bool> ChangeTelephoneStatus(long userId, long id, string loginUserName)
        {
            Telephonenumber telephoneNumber = await _dbTeleBilling_V01Context.Telephonenumber.FirstOrDefaultAsync(x => x.Id == id);

            #region telephone already assigned it will not deactivated.
            if (telephoneNumber.IsActive)
            {
                Telephonenumberallocation telephonenumberallocation = await _dbTeleBilling_V01Context.Telephonenumberallocation.FirstOrDefaultAsync(x => !x.IsDelete && x.IsActive && x.TelephoneNumberId == id);

                if (telephonenumberallocation != null)
                {
                    return(false);
                }
            }
            #endregion

            #region Transaction Log Entry
            if (telephoneNumber.TransactionId == null)
            {
                telephoneNumber.TransactionId = _iLogManagement.GenerateTeleBillingTransctionID();
            }

            var jsonSerailzeObj = JsonConvert.SerializeObject(telephoneNumber);
            await _iLogManagement.SaveRequestTraseLog(Convert.ToInt64(telephoneNumber.TransactionId), userId, Convert.ToInt64(EnumList.TransactionTraseLog.ChangeStatus), jsonSerailzeObj);

            #endregion

            telephoneNumber.IsActive    = !telephoneNumber.IsActive;
            telephoneNumber.UpdatedBy   = userId;
            telephoneNumber.UpdatedDate = DateTime.Now;
            _dbTeleBilling_V01Context.Update(telephoneNumber);
            await _dbTeleBilling_V01Context.SaveChangesAsync();

            if (telephoneNumber.IsActive)
            {
                await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.ActiveTelephone, loginUserName, userId, "Telephone(" + telephoneNumber.TelephoneNumber1 + ")", (int)EnumList.ActionTemplateTypes.Active, telephoneNumber.Id);
            }
            else
            {
                await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.DeactiveTelephone, loginUserName, userId, "Telephone(" + telephoneNumber.TelephoneNumber1 + ")", (int)EnumList.ActionTemplateTypes.Deactive, telephoneNumber.Id);
            }
            return(true);
        }
        public async Task <ResponseAC> UpdateTelephone(long userId, TelephoneDetailAC telephoneDetailAC, string loginUserName)
        {
            ResponseAC responseAC = new ResponseAC();

            if (await _dbTeleBilling_V01Context.Telephonenumber.FirstOrDefaultAsync(x => x.TelephoneNumber1.Trim() == telephoneDetailAC.TelephoneNumber1.Trim() && !x.IsDelete && x.Id != telephoneDetailAC.Id) == null)
            {
                Telephonenumber telephoneNumber = await _dbTeleBilling_V01Context.Telephonenumber.FirstOrDefaultAsync(x => x.Id == telephoneDetailAC.Id);

                #region Transaction Log Entry
                if (telephoneNumber.TransactionId == null)
                {
                    telephoneNumber.TransactionId = _iLogManagement.GenerateTeleBillingTransctionID();
                }

                var jsonSerailzeObj = JsonConvert.SerializeObject(telephoneNumber);
                await _iLogManagement.SaveRequestTraseLog(Convert.ToInt64(telephoneNumber.TransactionId), userId, Convert.ToInt64(EnumList.TransactionTraseLog.UpdateRecord), jsonSerailzeObj);

                #endregion

                telephoneNumber             = _mapper.Map(telephoneDetailAC, telephoneNumber);
                telephoneNumber.UpdatedBy   = userId;
                telephoneNumber.UpdatedDate = DateTime.Now;


                _dbTeleBilling_V01Context.Update(telephoneNumber);
                await _dbTeleBilling_V01Context.SaveChangesAsync();

                await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.EditTelephone, loginUserName, userId, "Telephone(" + telephoneNumber.TelephoneNumber1 + ")", (int)EnumList.ActionTemplateTypes.Edit, telephoneNumber.Id);

                responseAC.StatusCode = Convert.ToInt32(EnumList.ResponseType.Success);
                responseAC.Message    = _iStringConstant.TelphoneAddedSuccessfully;
            }
            else
            {
                responseAC.StatusCode = Convert.ToInt32(EnumList.ResponseType.Error);
                responseAC.Message    = _iStringConstant.TelphoneAlreadyExists;
            }
            return(responseAC);
        }
        public async Task <bool> DeleteTelphone(long userId, long id, string loginUserName)
        {
            Telephonenumber telephoneNumber = await _dbTeleBilling_V01Context.Telephonenumber.FirstOrDefaultAsync(x => x.Id == id);

            SortedList sl = new SortedList();

            sl.Add("p_telephoneid", id);
            int result = Convert.ToInt16(_objDalmysql.ExecuteScaler("usp_GetTelephoneExists", sl));

            if (result == 0)
            {
                telephoneNumber.IsDelete    = true;
                telephoneNumber.UpdatedBy   = userId;
                telephoneNumber.UpdatedDate = DateTime.Now;
                _dbTeleBilling_V01Context.Update(telephoneNumber);
                await _dbTeleBilling_V01Context.SaveChangesAsync();

                await _iLogManagement.SaveAuditActionLog((int)EnumList.AuditLogActionType.DeleteTelephone, loginUserName, userId, "Telephone(" + telephoneNumber.TelephoneNumber1 + ")", (int)EnumList.ActionTemplateTypes.Delete, telephoneNumber.Id);

                return(true);
            }
            return(false);
        }
        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 <TelephoneDetailAC> GetTelephoneById(long id)
        {
            Telephonenumber telephoneNumber = await _dbTeleBilling_V01Context.Telephonenumber.FirstAsync(x => x.Id == id);

            return(_mapper.Map <TelephoneDetailAC>(telephoneNumber));
        }
Exemplo n.º 8
0
 private static object CreateSingleEmail(Telephonenumber from, Telephonenumber to, string subject, string plainTextContent, string htmlContent)
 {
     throw new NotImplementedException();
 }