public static DateTime GetDateModified(this ESM_COMP_USERS user) { if (user.DATEMODIFIED.HasValue && user.DATEMODIFIED.Value != DateTime.MinValue) { return(user.DATEMODIFIED.Value); } return(DateTime.Now); }
//public static string GetSiteWhiteLabel(this ESM_COMP_USERS user) //{ // var label = AppSetting.DefaultWhiteLabel; // if (!string.IsNullOrWhiteSpace(user.ESM_COMPANY?.WHITE_LABEL)) // { // label = user.ESM_COMPANY?.WHITE_LABEL ?? label; // } // else if (!string.IsNullOrWhiteSpace(user.ESM_SITE?.SITE_LABEL)) // { // label = user.ESM_SITE.SITE_LABEL ?? label; // } // return label; //} //public static UserManager.User GetApprovingManager(this ESM_COMP_USERS user) //{ // UserManager.User approvingManager = null; // var managerId = user.GetUserManager(); // if (managerId.HasValue) // { // var result = new UserManager().Read(managerId.Value); // if (!result.IsError) // { // approvingManager = result.Data; // } // } // return approvingManager; //} //public static void UploadUserImage(this UserManager.User user, string image, Action<UserManager.User, IFileInfo, bool> action, bool userPhoto, bool isTempImage) //{ // if (!string.IsNullOrWhiteSpace(image)) // { // try // { // var finalImage = isTempImage // ? FileFactory.GetInstance(FileLocations.TempStorage, Guid.NewGuid().ToString() + Path.GetExtension(image)) // : FileFactory.GetUserProfileFileName(user.CompanyId, user.UserId, Path.GetExtension(image), userPhoto ? "_user_photo" : "_logo_photo"); // using (var client = new WebClient()) // { // client.DownloadFile(image, finalImage.FullName); // action(user, finalImage, isTempImage); // } // } // catch (Exception err) // { // ErrorHandlingRepositoryFactory.Instance.HandleError(err, "Failed to load User image.", new { user, image, userPhoto, isTempImage }); // } // } //} //public static void MoveUserImage(this UserManager.User user, UserManager manager, Func<UserManager.User, bool> shouldMove, Action<int, IFileInfo, UserManager> update, bool isUserPhoto) //{ // try // { // if (shouldMove(user)) // { // var tempFile = FileFactory.GetInstance(FileLocations.TempStorage, isUserPhoto ? user.Photo : user.DefaultLogo); // if (tempFile.Exists) // { // var userPhoto = FileFactory.GetUserProfileFileName(user.CompanyId, user.UserId, tempFile.Extension, isUserPhoto ? "_user_photo" : "_logo_photo"); // tempFile.CopyTo(userPhoto); // update(user.UserId, userPhoto, manager); // } // } // } // catch (Exception err) // { // ErrorHandlingRepositoryFactory.Instance.HandleError(err, "Failed to map user photo", new { user }); // } //} //public static List<int> GetChildUserIds(this UserManager.User user) //{ // return new HierarchyManager().GetChildUsers(user.UserId).Select(y => y.COMP_USER_ID).ToList(); //} //public static CompUserGroupManager.CompUserGroup GetUserGroup(this ESM_COMP_USERS user) //{ // CompUserGroupManager.CompUserGroup group = null; // if (user?.COMP_USERGROUP_ID != null) // { // var result = new CompUserGroupManager().Read(user.COMP_USERGROUP_ID.Value); // if (!result.IsError) // { // group = result.Data; // } // } // return group; //} //public static bool IsWhiteLabelSite(this ESM_COMP_USERS user) //{ // if (user.ESM_SITE?.SYS_SITE_LIC_PLAN != null) // { // var license = user.ESM_SITE.SYS_SITE_LIC_PLAN.FirstOrDefault(); // return license != null && license.ALLOW_WHITELABLE.GetValueOrDefault(false); // } // if (user.ESM_COMPANY?.ESM_SITE?.SYS_SITE_LIC_PLAN != null) // { // var license = user.ESM_COMPANY.ESM_SITE.SYS_SITE_LIC_PLAN.FirstOrDefault(); // return license != null && license.ALLOW_WHITELABLE.GetValueOrDefault(false); // } // // enables white labeling at the company level. // return user.ESM_COMPANY?.ESM_SITE != null && user.ESM_COMPANY.ESM_SITE.FLAG_ALLOW_COMPANY_WHITE_LABEL; //} //public static bool IsUserGroupManager(this ESM_COMP_USERS user) //{ // return new ArgosyManager<ESM_COMP_USERGROUP>().Any(f => f.GROUP_MANAGER_ID == user.COMP_USER_ID); //} //public static List<int> GetFavoriteParts(this ESM_COMP_USERS user) //{ // return user.ESM_CART_QUICK.Select(e => e.PART_ID).ToList(); //} //public static bool IsFavoritePart(this ESM_COMP_USERS user, int partId) //{ // return user.ESM_CART_QUICK.Any(e => e.PART_ID == partId); //} public static string GetFullName(this ESM_COMP_USERS user) { if (string.IsNullOrWhiteSpace(user.FIRST_NAME) && string.IsNullOrWhiteSpace(user.LAST_NAME)) { return(user.USERNAME); } return((user.FIRST_NAME + " " + user.LAST_NAME).Trim()); }
//public static string GetFullName(this UserManager.User user) //{ // if (string.IsNullOrWhiteSpace(user.FirstName) && string.IsNullOrWhiteSpace(user.LastName)) // { // return user.Username; // } // return (user.FirstName + " " + user.LastName).Trim(); //} //public static ESM_COMP_PRICELIST GetDefaultPriceList(this ESM_COMP_USERS user) //{ // if (user.COMP_USERGROUP_ID.HasValue && user.ESM_COMP_USERGROUP.PRICELISTID.HasValue) // { // return new ArgosyManager<ESM_COMP_PRICELIST>().Get(user.ESM_COMP_USERGROUP.PRICELISTID.Value); // } // return user.ESM_COMPANY.ESM_COMP_PRICELIST.FirstOrDefault(p => p.ISDEFAULT); //} //public static int GetDefaultPriceListId(this ESM_COMP_USERS user) //{ // if (user.COMP_USERGROUP_ID.HasValue && user.ESM_COMP_USERGROUP?.PRICELISTID != null) // { // return user.ESM_COMP_USERGROUP.PRICELISTID.Value; // } // if (user.COMP_USERGROUP_ID.HasValue && user.ESM_COMP_USERGROUP == null) // { // var manager = new ArgosyManager<ESM_COMP_USERGROUP>(); // var userGroup = manager.Get(user.COMP_USERGROUP_ID.Value); // if (userGroup?.PRICELISTID != null) // { // return userGroup.PRICELISTID.Value; // } // } // ESM_COMP_PRICELIST priceList = null; // if (user.ESM_COMPANY != null) // { // priceList = user.ESM_COMPANY.ESM_COMP_PRICELIST.FirstOrDefault(p => p.ISDEFAULT); // } // else if (user.COMPANY_ID > 0) // { // var manager = new ArgosyManager<ESM_COMPANY>(); // var company = manager.Get(user.COMPANY_ID); // if (company != null && company.ESM_COMP_PRICELIST.Any()) // { // priceList = company.ESM_COMP_PRICELIST.FirstOrDefault(p => p.ISDEFAULT); // } // } // return priceList?.COMPPRICELIST_ID ?? 0; //} public static string GetFullNameWithUserName(this ESM_COMP_USERS user) { var userName = string.Empty; if (string.IsNullOrWhiteSpace(user.FIRST_NAME) && string.IsNullOrWhiteSpace(user.LAST_NAME)) { userName = user.USERNAME; } else { userName = (user.FIRST_NAME + " " + user.LAST_NAME).Trim() + " (" + user.USERNAME + ")"; } return(userName); }
//public static decimal GetCoopDollars(this UserManager.User user) //{ // return GetCoopDollarBalance(user.UserId, user.UserGroupId); //} //public static decimal GetCoopDollars(this IUser user) //{ // return GetCoopDollarBalance(user.Id, user.UserGroupId); //} //public static int GetNewMessageCount(this ESM_COMP_USERS user) //{ // return user.ESM_MSGUSER.Count(m => m.MSGREAD == "N"); //APM: based on v4, Read messages are marked as 'Y' //} //public static int? GetUserManager(this ESM_COMP_USERS user) //{ // var manager = new ArgosyManager<ESM_HIERARCHY>(); // var userManager = manager.FirstOrDefault(u => u.COMP_USER_ID == user.COMP_USER_ID); // int? mgrId = null; // if (userManager != null) // { // mgrId = userManager.MGR_USER_ID; // } // return mgrId; //} //public static string GetApprovingManagerName(this UserManager.User user) //{ // var name = "N/A"; // if (user.ApprovingManagerId.HasValue) // { // name = new ArgosyManager<ESM_COMP_USERS>().GetQuery().FirstOrDefault(a => a.COMP_USER_ID == user.Id).GetFullName() ?? "N/A"; // } // return name; //} //public static bool IsEstimatedShipDateVisible(this ESM_COMP_USERS user) //{ // bool isShipDateVisible = false; // if (user.COMP_USERGROUP_ID.HasValue && user.COMP_USERGROUP_ID > 0) // { // isShipDateVisible = user.ESM_COMP_USERGROUP.ESTIMATEDSHIPPINGDATE.HasValue && user.ESM_COMP_USERGROUP.ESTIMATEDSHIPPINGDATE.Value; // } // else // { // isShipDateVisible = user.ESM_COMPANY.FLAG_ESTIMATE_SHIP_DATE.ToUpper() == "Y"; // } // return isShipDateVisible; //} //public static bool ispriceinformationvisible(this esm_comp_users user) //{ // bool ispriceinformationvisible = false; // if (user.comp_usergroup_id.hasvalue && user.comp_usergroup_id > 0) // { // ispriceinformationvisible = user.esm_comp_usergroup.showprice.hasvalue && user.esm_comp_usergroup.showprice.value; // } // else // { // ispriceinformationvisible = user.esm_company.flag_show_price.toupper() == "y"; // } // return ispriceinformationvisible; //} public static bool HasAdminAccess(this ESM_COMP_USERS user) { var hasAdminAccess = user.ADMIN_ACCESS.ToUpper() == "Y"; return(hasAdminAccess); }
//private static decimal GetCoopDollarBalance(int userId, int? userGroupId) //{ // return new ViewCoopDollarBalanceManager().GetUserTotalBalance(userId, userGroupId); //} //public static decimal GetCoopDollarsWithoutBuckets(this ESM_COMP_USERS user) //{ // return GetCoopDollarsWithoutBuckets(user.COMP_USER_ID, user.COMP_USERGROUP_ID); //} //public static decimal GetCoopDollarsWithoutBuckets(this IUser user) //{ // return GetCoopDollarsWithoutBuckets(user.Id, user.UserGroupId); //} //private static decimal GetCoopDollarsWithoutBuckets(int userId, int? userGroupId) //{ // return new ViewCoopDollarBalanceManager().GetUserTotalUnassignedBalance(userId, userGroupId); //} public static decimal GetCoopDollars(this ESM_COMP_USERS user) { return(400);//GetCoopDollarBalance(user.COMP_USER_ID, user.COMP_USERGROUP_ID); }