public void Resfresh(Document doc) { var i = _documents.IndexOf(doc); if (i == -1) return; _documents[i] = doc; }
public void Add(Document doc) { if (!doc.HasData) return; if (_dates.Contains(doc.Date)) return; _dates.Add(doc.Date); _documents.Add(doc); }
public Document<Warehouse> GetWarehouses(XmlNodeList methodProperties) { var xmlResponse = MakeTask("Address", "getWarehouses", methodProperties).Result; var doc = new Document<Warehouse>(); doc.LoadFromXml(xmlResponse); return doc; }
public Document<DataItem> GetDocumentList(XmlNodeList methodProperties) { var xmlResponse = MakeTask("InternetDocument", "getDocumentList", methodProperties); var doc = new Document<DataItem>(); doc.LoadFromXml(xmlResponse.Result); return doc; }
public async Task<Document<Warehouse>> GetWarehousesAsync(XmlNodeList methodProperties) { var xmlResponse = await MakeTask("Address", "getWarehouses", methodProperties); var doc = new Document<Warehouse>(); doc.LoadFromXml(xmlResponse); return doc; }
public Document<TrackingItem> DocumentsTracking(XmlNodeList methodProperties) { var task = MakeTask("InternetDocument", "documentsTracking", methodProperties); var document = new Document<TrackingItem>(); document.LoadFromXml(task.Result); return document; }
public async Task<Document<DataItem>> GetDocumentListAsync(XmlNodeList methodProperties) { var xmlResponse = await MakeTask("InternetDocument", "getDocumentList", methodProperties); var doc = new Document<DataItem>(); doc.LoadFromXml(xmlResponse); return doc; }
private Document<City> GetCities(XmlNodeList methodProperties) { var xmlResponse = MakeTask("Address", "getCities", methodProperties); var doc = new Document<City>(); doc.LoadFromXml(xmlResponse.Result); return doc; }
public async Task<Document<TrackingItem>> DocumentsTrackingAsync(XmlNodeList methodProperties) { var task = await MakeTask("InternetDocument", "documentsTracking", methodProperties); var document = new Document<TrackingItem>(); document.LoadFromXml(task); return document; }
private async Task DoWorkAsync(Document<Warehouse> document, SqlConnection connectionWarehouses) { foreach (var item in document.Items) { using ( SqlCommand cmd2 = new SqlCommand( "INSERT INTO [Warehouses] (Description, DescriptionRu, Phone, TypeOfWarehouse," + " Ref, Number, CityRef, Longitude, Latitude) VALUES (@Description, @DescriptionRu, @Phone, @TypeOfWarehouse," + " @Ref, @Number, @CityRef, @Longitude, @Latitude)", connectionWarehouses) ) { cmd2.Parameters.AddWithValue("@Description", item.Description); cmd2.Parameters.AddWithValue("@DescriptionRu", item.DescriptionRu); cmd2.Parameters.AddWithValue("@Phone", item.Phone); cmd2.Parameters.AddWithValue("@TypeOfWarehouse", item.TypeOfWarehouse); cmd2.Parameters.AddWithValue("@Ref", item.Ref); cmd2.Parameters.AddWithValue("@Number", item.Number); cmd2.Parameters.AddWithValue("@CityRef", item.CityRef); cmd2.Parameters.AddWithValue("@Longitude", item.Longitude); cmd2.Parameters.AddWithValue("@Latitude", item.Latitude); await cmd2.ExecuteNonQueryAsync(); cmd2.CommandText = "INSERT INTO [Reception] (Ref, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday) " + "VALUES (@Ref, @Monday, @Tuesday, @Wednesday, @Thursday, @Friday, @Saturday, @Sunday)"; cmd2.Parameters.AddWithValue("@Monday", item.Reception.Monday); cmd2.Parameters.AddWithValue("@Tuesday", item.Reception.Tuesday); cmd2.Parameters.AddWithValue("@Wednesday", item.Reception.Wednesday); cmd2.Parameters.AddWithValue("@Thursday", item.Reception.Thursday); cmd2.Parameters.AddWithValue("@Friday", item.Reception.Friday); cmd2.Parameters.AddWithValue("@Saturday", item.Reception.Saturday); cmd2.Parameters.AddWithValue("@Sunday", item.Reception.Sunday); await cmd2.ExecuteNonQueryAsync(); cmd2.CommandText = "INSERT INTO [Delivery] (Ref, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday) " + "VALUES (@Ref, @Monday, @Tuesday, @Wednesday, @Thursday, @Friday, @Saturday, @Sunday)"; cmd2.Parameters["@Monday"].Value = item.Delivery.Monday; cmd2.Parameters["@Tuesday"].Value = item.Delivery.Tuesday; cmd2.Parameters["@Wednesday"].Value = item.Delivery.Wednesday; cmd2.Parameters["@Thursday"].Value = item.Delivery.Thursday; cmd2.Parameters["@Friday"].Value = item.Delivery.Friday; cmd2.Parameters["@Saturday"].Value = item.Delivery.Saturday; cmd2.Parameters["@Sunday"].Value = item.Delivery.Sunday; await cmd2.ExecuteNonQueryAsync(); cmd2.CommandText = "INSERT INTO [Schedule] (Ref, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday) " + "VALUES (@Ref, @Monday, @Tuesday, @Wednesday, @Thursday, @Friday, @Saturday, @Sunday)"; cmd2.Parameters["@Monday"].Value = item.Schedule.Monday; cmd2.Parameters["@Tuesday"].Value = item.Schedule.Tuesday; cmd2.Parameters["@Wednesday"].Value = item.Schedule.Wednesday; cmd2.Parameters["@Thursday"].Value = item.Schedule.Thursday; cmd2.Parameters["@Friday"].Value = item.Schedule.Friday; cmd2.Parameters["@Saturday"].Value = item.Schedule.Saturday; cmd2.Parameters["@Sunday"].Value = item.Schedule.Sunday; await cmd2.ExecuteNonQueryAsync(); } } }
private async Task AddCitiesToDataBase(Document<City> doc, SqlConnection connection) { foreach (var item in doc.Items) { using ( SqlCommand cmd = new SqlCommand( "INSERT INTO [Cities] (Description, DescriptionRu, Ref, Monday, Tuesday, Wednesday," + " Thursday, Friday, Saturday, Sunday, Area, CityID) VALUES " + "(@Description, @DescriptionRu, @Ref, @Monday, @Tuesday, @Wednesday," + " @Thursday, @Friday, @Saturday, @Sunday, @Area, @CityID)", connection)) { cmd.Parameters.AddWithValue("@Description", item.Description); cmd.Parameters.AddWithValue("@DescriptionRu", item.DescriptionRu); cmd.Parameters.AddWithValue("@Ref", item.Ref); cmd.Parameters.AddWithValue("@Monday", item.Monday); cmd.Parameters.AddWithValue("@Tuesday", item.Tuesday); cmd.Parameters.AddWithValue("@Wednesday", item.Wednesday); cmd.Parameters.AddWithValue("@Thursday", item.Thursday); cmd.Parameters.AddWithValue("@Friday", item.Friday); cmd.Parameters.AddWithValue("@Saturday", item.Saturday); cmd.Parameters.AddWithValue("@Sunday", item.Sunday); cmd.Parameters.AddWithValue("@Area", item.Area); cmd.Parameters.AddWithValue("@CityID", item.CityId); try { await cmd.ExecuteNonQueryAsync(); } catch (SqlException) { return; } } } }
private async void MenuItem_OnClick(object sender, RoutedEventArgs e) { var selectedItems = DG_doc.SelectedItems.Cast<DataItem>().ToList(); var dataGridItems = DG_doc.Items; var newXmlDocument = await Task<List<DataItem>>.Factory.StartNew(() => { var methodPrepetries = CreateXmlListPropertiesForDocumentsTracking(selectedItems); // var task = MakeTask("InternetDocument", "documentsTracking", methodPrepetries); var document = new Document(); // document.LoadResponseXmlDocument(task.Result); return document.Items; }); for (var i = 0; i < selectedItems.Count; i++) { var index = dataGridItems.IndexOf(selectedItems[i]); selectedItems[i].StateName = newXmlDocument[i].StateName; // var oldResponseList = await DeSerializeDocuments(); dataGridItems[index] = selectedItems[i]; } }
private void AddItemsToDataGrid(Document document, DataItem filterItem) { if (!document.Success || !document.HasData) return; AddItemsToDataGrid(document.Items, filterItem); }
private async Task<XmlDocument> MakeTask(string modelName, string methodName, XmlNodeList xmlList) { var newDocument = new Document(); var xmlQuery = newDocument.MakeRequestXmlDocument(_apiKey, modelName, methodName, xmlList); XmlDocument xmlResponse = null; try { Thread.Sleep(new Random().Next(50)); xmlResponse = await newDocument.SendRequestXmlDocumentAsync(xmlQuery); } catch (WebException e) { MessageBox.Show(e.Message); Close(); } newDocument.LoadResponseXmlDocument(xmlResponse); if (!newDocument.Success) { MessageBox.Show("Invalid API key"); this.Close(); } lock (_locker) { using (SqlConnection connection = new SqlConnection(_connectionString)) { connection.Open(); foreach (var item in newDocument.Items) { AddToDateBase(connection, item); } } } return xmlResponse; }