public void SaveChanges(ObservableCollection <Receiver> receivers, FieldMappingSettingsModel FieldMapping) { try { logger.InfoSender("Save changes of list"); FileInfo file = new FileInfo(FieldMapping.receiverListFilePath); if (!file.Exists) { logger.ErrorSender("Send list file not exist " + FieldMapping.receiverListFilePath); return; } ExcelPackage.LicenseContext = LicenseContext.NonCommercial; int timeSaveStart = TimeUnixService.Timestamp(); using (ExcelPackage excelPackage = new ExcelPackage(file)) { ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets.FirstOrDefault(); foreach (var receiver in receivers) { worksheet.Cells[FieldMapping.fieldValidateStatus + receiver.IdReceiver.ToString()].Value = receiver.StatusEmailExist; worksheet.Cells[FieldMapping.fieldSendingStatus + receiver.IdReceiver.ToString()].Value = receiver.StatusSend; } //save file Byte[] bin = excelPackage.GetAsByteArray(); File.WriteAllBytes(FieldMapping.receiverListFilePath, bin); //excelPackage.SaveAs(file); } int res = TimeUnixService.Timestamp() - timeSaveStart; logger.InfoSender($"save process take {res.ToString()} sec"); } catch (Exception ex) { logger.ErrorSender($"Save process get error {ex.Message}"); } }
public void SaveChanges(ObservableCollection <Receiver> receivers, FieldMappingSettingsModel FieldMapping) { try { logger.InfoSender("Save changes of list"); CreateFile(FieldMapping.receiverListFilePath); FileInfo file = new FileInfo(FieldMapping.receiverListFilePath); if (!file.Exists) { logger.ErrorSender("Send list file not exist " + FieldMapping.receiverListFilePath); return; } ExcelPackage.LicenseContext = LicenseContext.NonCommercial; int timeSaveStart = TimeUnixService.Timestamp(); using (ExcelPackage excelPackage = new ExcelPackage(file)) { ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets.FirstOrDefault(); foreach (var receiver in receivers) { string index = receiver.IdReceiver.ToString(); worksheet.Cells[FieldMapping.fieldValidateStatus + index].Value = receiver.StatusEmailExist; worksheet.Cells[FieldMapping.fieldSendingStatus + index].Value = receiver.StatusSend; worksheet.Cells[FieldMapping.fieldEmail + index].Value = receiver.Email; worksheet.Cells[FieldMapping.fieldOrganizationName + index].Value = receiver.CompanyName; worksheet.Cells[FieldMapping.fieldPersonName + index].Value = receiver.PersonName; worksheet.Cells[FieldMapping.fieldInn + index].Value = receiver.FieldInn; worksheet.Cells[FieldMapping.fieldOkvd + index].Value = receiver.FieldOkvd; worksheet.Cells[FieldMapping.fieldPhone + index].Value = receiver.FieldPhone; worksheet.Cells[FieldMapping.fieldAddress + index].Value = receiver.FieldAddress; worksheet.Cells[FieldMapping.fieldContractAmount + index].Value = receiver.FieldContractAmount; worksheet.Cells[FieldMapping.fieldDate1 + index].Value = receiver.FieldDate1; worksheet.Cells[FieldMapping.fieldDate2 + index].Value = receiver.FieldDate2; worksheet.Cells[FieldMapping.fieldDate3 + index].Value = receiver.FieldDate3; worksheet.Cells[FieldMapping.fieldRecord1 + index].Value = receiver.FieldRecord1; worksheet.Cells[FieldMapping.fieldRecord2 + index].Value = receiver.FieldRecord2; worksheet.Cells[FieldMapping.fieldRecord3 + index].Value = receiver.FieldRecord3; } //save file Byte[] bin = excelPackage.GetAsByteArray(); File.WriteAllBytes(FieldMapping.receiverListFilePath, bin); //excelPackage.SaveAs(file); } int res = TimeUnixService.Timestamp() - timeSaveStart; logger.InfoSender($"save process take {res.ToString()} sec"); } catch (Exception ex) { logger.ErrorSender($"Save process get error {ex.Message}"); } }