public List <Employee> EmployeeCompare(string propString, string comType) { var propValue = Convert.ToInt32(propString); if (comType == "gt") { return(FullEmployeeList.Where(emp => emp.Salary > propValue).ToList()); } else { return(FullEmployeeList.Where(emp => emp.Salary < propValue).ToList()); } }
public void Initialize() { try { Employees.Clear(); FullEmployeeList.Clear(); Input = string.Empty; var sheet = Globals.ThisAddIn.Application.ActiveSheet as Worksheet; var columnCount = sheet?.UsedRange.Columns.Count; var rowCount = sheet?.UsedRange.Rows.Count; var columnNameIndexTable = new Dictionary <int, string>(); //Add column names and index. for (var i = 1; i <= columnCount; i++) { var cell = sheet.UsedRange.Cells[1, i] as Range; if (cell != null) { columnNameIndexTable.Add(i, cell.Value.ToString()); } } //Create employees list from row data. for (var r = 2; r <= rowCount; r++) { var employee = new Employee(); for (var c = 1; c <= columnCount; c++) { var cell = sheet.UsedRange.Cells[r, c] as Range; var columnName = columnNameIndexTable[c].ToLower(); var stringCellValue = cell?.Value.ToString(); if (stringCellValue == null) { break; } if (columnName == "id") { employee.Id = int.Parse(stringCellValue); } if (columnName == "salary") { employee.Salary = int.Parse(stringCellValue); } if (columnName == "age") { employee.Age = int.Parse(stringCellValue); } if (columnName == "name") { employee.Name = stringCellValue; } if (columnName == "role") { employee.Role = stringCellValue; } } FullEmployeeList.Add(employee); } Bot = new OscovaBot(); Bot.MainUser.Context.SharedData.Add(this); Bot.Dialogs.Add(new DatabaseGenericDialog()); Bot.Dialogs.Add(new DatabaseEnquiryDialog()); Bot.Dialogs.Add(new DatabaseSuperlativeDialog()); Bot.MainUser.ResponseReceived += (sender, args) => { Output = args.Response.Text; }; Task.Run(() => { Bot.CreateRecognizer("property", new[] { "ID", "Name", "Role", "Age", "Salary" }); Bot.CreateRecognizer("role", new[] { "CEO", "Manager", "Admin", "Engineer", "Tech", "Support" }); AddEmployeeNameRecognizer(); Bot.Trainer.StartTraining(); }); _sendAction = () => { Output = string.Empty; var evaluationResult = Bot.Evaluate(Input); evaluationResult.Invoke(); Input = string.Empty; }; } catch (Exception e) { Console.WriteLine(e); } }