public void addContentPropertiesToList(ArchiveContentPropertiesModel propertiesModel) { EARSIV_PROPERTIES archiveProperties = new EARSIV_PROPERTIES(); archiveProperties.SUB_STATUS = SUB_STATUS_VALUE.NEW; // archiveProperties.SERI = seriName; //burayı dıkkate almıyor neden ? if (propertiesModel.mail != null) //null degılse maıl gonderılmek ıstıyoddur,nullsa ıstemıyo { archiveProperties.EARSIV_EMAIL_FLAG = FLAG_VALUE.Y; archiveProperties.EARSIV_EMAIL = new string[] { propertiesModel.mail }; } if (propertiesModel.archiveType == EARSIV_TYPE_VALUE.NORMAL.ToString()) { archiveProperties.EARSIV_TYPE = EARSIV_TYPE_VALUE.NORMAL; } else { archiveProperties.EARSIV_TYPE = EARSIV_TYPE_VALUE.INTERNET; } ArchiveInvoiceExtendedContentINVOICE_PROPERTIES contentProps = new ArchiveInvoiceExtendedContentINVOICE_PROPERTIES(); contentProps.EARSIV_PROPERTIES = archiveProperties; contentProps.EARSIV_FLAG = FLAG_VALUE.Y; contentProps.INVOICE_CONTENT = new base64Binary { Value = Compress.compressFile(propertiesModel.content) }; contentPropsList.Add(contentProps); }
private void btnSendDraftArchive_Click(object sender, EventArgs e) { try { //db den getırılen serı Namelerı comboboxda sectır FrmDialogSelectItem frmDialogSelectSeriName = new FrmDialogSelectItem(true, ""); if (frmDialogSelectSeriName.ShowDialog() == DialogResult.OK) { ArchiveContentPropertiesModel[] archiveModelArr = new ArchiveContentPropertiesModel[tableArchiveGrid.SelectedRows.Count]; string seriName = frmDialogSelectSeriName.selectedValue; string[] newIdArr = InvoiceIdSetSerilaze.createNewInvId(seriName, tableArchiveGrid.SelectedRows.Count); for (int cnt = 0; cnt < tableArchiveGrid.SelectedRows.Count; cnt++) { ArchiveContentPropertiesModel archiveContentPropertiesModel = new ArchiveContentPropertiesModel(); archiveContentPropertiesModel.uuid = tableArchiveGrid.SelectedRows[cnt].Cells[nameof(EI.Invoice.uuid)].Value.ToString(); archiveContentPropertiesModel.archiveType = tableArchiveGrid.SelectedRows[cnt].Cells[nameof(EI.Invoice.eArchiveType)].Value.ToString(); //alınan contenttın ıdsını degıstırerek koy string content = Singl.archiveControllerGet.getArchiveContentXml(archiveContentPropertiesModel.uuid); archiveContentPropertiesModel.content = XmlControl.xmlInvoiceChangeIdValue(content, newIdArr[cnt]); if (tableArchiveGrid.SelectedRows[cnt].Cells[nameof(EI.Invoice.receiverMail)].Value != null) //mail gonderılmek ısstenıyorsa { archiveContentPropertiesModel.mail = tableArchiveGrid.SelectedRows[cnt].Cells[nameof(EI.Invoice.receiverMail)].Value.ToString(); } Singl.archiveControllerGet.addContentPropertiesToList(archiveContentPropertiesModel); archiveModelArr[cnt] = archiveContentPropertiesModel; } string responseErrorMessage = Singl.archiveControllerGet.sendEarchive(); if (responseErrorMessage != null) { MessageBox.Show(responseErrorMessage, Lang.operationFailed, MessageBoxButtons.OK, MessageBoxIcon.Error); } else { //db de fatura durumunu taslaktan cıkar for (int cnt = 0; cnt < archiveModelArr.Length; cnt++) { string oldFolderPath = Singl.archiveInvoiceDalGet.findArchive(archiveModelArr[cnt].uuid).folderPath; //path degıstır string newFolderPath = FolderControl.inboxFolderArchive + newIdArr[cnt] + "." + nameof(EI.DocumentType.XML); //guncelleme basarılıysa if (Singl.archiveInvoiceDalGet.updateArchiveIdStateNoteDraftFlagFolderPath(archiveModelArr[cnt].uuid, newIdArr[cnt], EI.StateNote.SEND.ToString(), false, newFolderPath) == 1) { //diskten xmli sil FolderControl.deleteFileFromPath(oldFolderPath); //yenı kontentı dıske kaydet FolderControl.writeFileOnDiskWithString(archiveModelArr[cnt].content, newFolderPath); } else { MessageBox.Show("Db ye kaydetme işlemi basarısız,İşlemi tekrar gerceklestırınız" + tableArchiveGrid.SelectedRows[cnt].Cells[nameof(EI.Invoice.ID)].Value.ToString()); return; } } //db ye, en son olusturulan yenı ınv id serisinin son itemi ıle serı no ve yıl guncelle Singl.invIdSerilazeDalGet.updateLastAddedInvIdSeri(newIdArr.Last()); MessageBox.Show(Lang.succesful);//"Başarılı" gridArchiveUpdateList(Singl.archiveInvoiceDalGet.getArchiveList(true)); } } } catch (FaultException <REQUEST_ERRORType> ex) { if (ex.Detail.ERROR_CODE == 2005) { Singl.authControllerGet.Login(FrmLogin.usurname, FrmLogin.password); } MessageBox.Show(ex.Detail.ERROR_SHORT_DES, "ProcessingFault", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (System.Data.Entity.Infrastructure.DbUpdateException ex) { MessageBox.Show(Lang.dbFault + " " + ex.InnerException.Message.ToString(), "DataBaseFault", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (System.Data.DataException ex) { MessageBox.Show(ex.InnerException.Message.ToString()); } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } }