예제 #1
0
        /// <summary>
        /// Получить цвет по статусу
        /// </summary>
        public string GetColorByStat(int stat, string defaultColor)
        {
            lock (baseLock)
            {
                try
                {
                    dataCache.RefreshBaseTables();

                    DataTable tblEvType = dataCache.BaseTables.EvTypeTable;
                    BaseTables.CheckIsNotEmpty(tblEvType, true);
                    tblEvType.DefaultView.RowFilter = "CnlStatus = " + stat;

                    if (tblEvType.DefaultView.Count > 0)
                    {
                        object colorObj = tblEvType.DefaultView[0]["Color"];
                        if (colorObj != DBNull.Value)
                        {
                            return(colorObj.ToString());
                        }
                    }
                }
                catch (Exception ex)
                {
                    log.WriteException(ex, Localization.UseRussian ?
                                       "Ошибка при получении цвета по статусу {0}" :
                                       "Error getting color by status {0}", stat);
                }

                return(defaultColor);
            }
        }
예제 #2
0
        /// <summary>
        /// Получить свойства представления по идентификатору
        /// </summary>
        /// <remarks>Используется таблица объектов интерфейса</remarks>
        public ViewProps GetViewProps(int viewID)
        {
            lock (baseLock)
            {
                try
                {
                    dataCache.RefreshBaseTables();

                    DataTable tblInterface = dataCache.BaseTables.InterfaceTable;
                    BaseTables.CheckIsNotEmpty(tblInterface, true);
                    tblInterface.DefaultView.RowFilter = "ItfID = " + viewID;

                    if (tblInterface.DefaultView.Count > 0)
                    {
                        ViewProps viewProps = new ViewProps(viewID);
                        viewProps.FileName     = (string)tblInterface.DefaultView[0]["Name"];
                        viewProps.ViewTypeCode = Path.GetExtension(viewProps.FileName);
                        return(viewProps);
                    }
                    else
                    {
                        return(null);
                    }
                }
                catch (Exception ex)
                {
                    log.WriteException(ex, Localization.UseRussian ?
                                       "Ошибка при получении свойств представления по ид.={0}" :
                                       "Error getting view properties by ID={0}", viewID);
                    return(null);
                }
            }
        }
예제 #3
0
        /// <summary>
        /// Получить идентификатор пользователя по имени
        /// </summary>
        public int GetUserID(string username)
        {
            lock (baseLock)
            {
                try
                {
                    username = username ?? "";
                    dataCache.RefreshBaseTables();

                    DataTable tblUser = dataCache.BaseTables.UserTable;
                    BaseTables.CheckIsNotEmpty(tblUser, true);
                    tblUser.DefaultView.RowFilter = "Name = '" + username + "'";

                    return(tblUser.DefaultView.Count > 0 ?
                           (int)tblUser.DefaultView[0]["UserID"] :
                           BaseValues.EmptyDataID);
                }
                catch (Exception ex)
                {
                    log.WriteException(ex, Localization.UseRussian ?
                                       "Ошибка при получении идентификатора пользователя по имени \"{0}\"" :
                                       "Error getting user ID by name \"{0}\"", username);
                    return(BaseValues.EmptyDataID);
                }
            }
        }
예제 #4
0
        /// <summary>
        /// Получить наименование роли по идентификатору из базы конфигурации
        /// </summary>
        protected string GetRoleNameFromBase(int roleID, string defaultRoleName)
        {
            lock (baseLock)
            {
                try
                {
                    dataCache.RefreshBaseTables();

                    DataTable tblRole = dataCache.BaseTables.RightTable;
                    BaseTables.CheckIsNotEmpty(tblRole, true);
                    tblRole.DefaultView.RowFilter = "RoleID = " + roleID;

                    return(tblRole.DefaultView.Count > 0 ?
                           (string)tblRole.DefaultView[0]["Name"] :
                           defaultRoleName);
                }
                catch (Exception ex)
                {
                    log.WriteException(ex, Localization.UseRussian ?
                                       "Ошибка при получении наименования роли по идентификатору {0}" :
                                       "Error getting role name by ID {0}", roleID);
                    return(defaultRoleName);
                }
            }
        }