using System.Text.RegularExpressions;
public static void Main()
var em = new EmployeeMapping { CchUserType = UserTypeCode.Staff };
var translatedEm = new TranslatedEmployee { CchUserType = UserTypeCode.User };
var isNewUserTaxi = IsNewUserTaxi(em, translatedEm);
var isNewUserTcp = IsNewUserTcp(em, translatedEm);
Console.WriteLine("Is new user TCP: " + isNewUserTcp);
Console.WriteLine("Is new user taxi: " + isNewUserTaxi);
private static bool IsNewUserTaxi(EmployeeMapping employeeMapping, TranslatedEmployee employeeToTranslate)
if (employeeToTranslate.CchUserType == UserTypeCode.User)
return employeeMapping == null || string.IsNullOrWhiteSpace(employeeMapping.CchUserType) || employeeMapping.CchUserType != UserTypeCode.User;
private static bool IsNewUserTcp(EmployeeMapping employeeMapping, TranslatedEmployee employeeToTranslate)
if ((employeeMapping == null && employeeToTranslate.CchUserType.Equals(UserTypeCode.User, StringComparison.OrdinalIgnoreCase))
|| (employeeMapping != null && employeeToTranslate.CchUserType.Equals(UserTypeCode.User, StringComparison.OrdinalIgnoreCase)
&& (string.IsNullOrEmpty(employeeMapping.CchUserType) || !employeeMapping.CchUserType.Equals(UserTypeCode.User, StringComparison.OrdinalIgnoreCase)))
public static class UserTypeCode
public static string Staff => "STF";
public static string User => "USER";
public class EmployeeMapping
public string CchUserType { get; set; }
public class TranslatedEmployee
public string CchUserType { get; set; }