public int DeleteRetailCSV(Cliente_Retail cliente) { var resourceName = "ListaClienti.csv"; string line; List <string> values = new List <string>(); Cliente_Retail ClToDel = cliente; int checkInsLista; //Get headers and customers list List <string> headersList = GetAllHeaders(); List <Cliente_Retail> CustomersList = GetAllRetail(); //Insert headers in list to write var headersInsert = string.Join(";", headersList); values.Add(headersInsert); //delete customer from list var itemToRemove = CustomersList.Single(r => r.Cl_Ret_Code == cliente.Cl_Ret_Code); CustomersList.Remove(itemToRemove); //check if inserted List <Cliente_Retail> results = CustomersList.FindAll(x => x.Cl_Ret_Code == cliente.Cl_Ret_Code); if (results.Count > 0) { checkInsLista = (int)DelResultsCodes.ListElementNotDeleted; return(checkInsLista); } else { checkInsLista = (int)DelResultsCodes.ListElementDeleted; } //Write on string List foreach (Cliente_Retail c in CustomersList) { line = Convert.ToString(c.Cl_Ret_Code) + ";" + Convert.ToString(c.Cl_Ret_Name) + ";" + Convert.ToString(c.Cl_Ret_Nickname) + ";" + Convert.ToString(c.Cl_Ret_Tot) + ";" + Convert.ToString(c.Cl_Ret_Act) + ";" + Convert.ToString(c.Cl_Ret_Comment); values.Add(line); } String[] str = values.ToArray(); FileManager.DeviceIO fileManager = new FileManager.DeviceIO(); var checkIO = fileManager.UpdateTextFile(resourceName, str); if (checkIO == true) { checkInsLista = (int)DelResultsCodes.ElementDeletedOnFile; } else { checkInsLista = (int)DelResultsCodes.ElementNotDeletedOnFile; } return(checkInsLista); }
public int InsRetailCSV(Cliente_Retail cliente) { var resourceName = "ListaClienti.csv"; string line; List <string> values = new List <string>(); Cliente_Retail ClToAdd = new Cliente_Retail(); Cliente_Retail oldElement = new Cliente_Retail(); int idSave = 0; int checkInsLista; //Get headers and customers list List <string> headersList = GetAllHeaders(); List <Cliente_Retail> ListToSort = GetAllRetail(); //Insert headers in list to write var headersInsert = string.Join(";", headersList); values.Add(headersInsert); //check if element already exists bool containsItem = ListToSort.Any(item => item.Cl_Ret_Code == cliente.Cl_Ret_Code); List <Cliente_Retail> SortedList = new List <Cliente_Retail>(); if (!containsItem) { //check available id ClToAdd = cliente; ClToAdd.Cl_Ret_Code = GetId(ListToSort); idSave = ClToAdd.Cl_Ret_Code; } else { List <Cliente_Retail> check = ListToSort.FindAll(x => x.Cl_Ret_Code == cliente.Cl_Ret_Code); oldElement = check[0]; idSave = check[0].Cl_Ret_Code; var itemToRemove = ListToSort.Single(r => r.Cl_Ret_Code == cliente.Cl_Ret_Code); ListToSort.Remove(itemToRemove); ClToAdd.Cl_Ret_Code = oldElement.Cl_Ret_Code; // ClToAdd.Cl_Ret_Name = cliente.Cl_Ret_Name; ClToAdd.Cl_Ret_Nickname = cliente.Cl_Ret_Nickname; ClToAdd.Cl_Ret_Tot = cliente.Cl_Ret_Tot; // ClToAdd.Cl_Ret_Act = cliente.Cl_Ret_Act; ClToAdd.Cl_Ret_Comment = cliente.Cl_Ret_Comment; } //add new customer with proper id ListToSort.Add(ClToAdd); SortedList = ListToSort.OrderBy(o => o.Cl_Ret_Name).ToList(); //check if inserted in list List <Cliente_Retail> results = SortedList.FindAll(x => x.Cl_Ret_Code == idSave); if (results.Count == 0) { checkInsLista = (int)InsResultsCodes.NotCreatedAfterIns; return(checkInsLista); } else { checkInsLista = (int)InsResultsCodes.ListNewElementCreated; } //Write on string List foreach (Cliente_Retail c in SortedList) { line = Convert.ToString(c.Cl_Ret_Code) + ";" + Convert.ToString(c.Cl_Ret_Name) + ";" + Convert.ToString(c.Cl_Ret_Nickname) + ";" + Convert.ToString(c.Cl_Ret_Tot) + ";" + Convert.ToString(c.Cl_Ret_Act) + ";" + Convert.ToString(c.Cl_Ret_Comment); //Convert.ToString(c.Cl_Ret_Comment); values.Add(line); } string[] str = values.ToArray(); FileManager.DeviceIO fileManager = new FileManager.DeviceIO(); var checkIO = fileManager.UpdateTextFile(resourceName, str); if (checkIO == true) { checkInsLista = (int)InsResultsCodes.ElementAddedSaveOnFile; } else { checkInsLista = (int)InsResultsCodes.ElementNotAddedOnFile; } return(checkInsLista); }