Example #1
0
        public static int GetTicketActionCount(LoginUser loginUser, int ticketID)
        {
            int cnt = 0;

            using (SqlCommand command = new SqlCommand())
            {
                command.CommandText = "SELECT COUNT(*) FROM ACTIONS WHERE TICKETID = @TicketID";
                command.CommandType = CommandType.Text;
                command.Parameters.AddWithValue("@TicketID", ticketID);
                object o = SqlExecutor.ExecuteScalar(loginUser, command);
                if (o == DBNull.Value)
                {
                    return(-1);
                }
                cnt = (int)o;
            }
            return(cnt);
        }
Example #2
0
        public static int GetCheckSum(LoginUser loginUser, ReferenceType refType)
        {
            string sql = "SELECT CHECKSUM_AGG(CHECKSUM(*)) FROM {0} WHERE OrganizationID = " + loginUser.OrganizationID.ToString();

            switch (refType)
            {
            case ReferenceType.ActionTypes:
                sql = string.Format(sql, "ActionTypes");
                break;

            case ReferenceType.CustomFields:
                sql = string.Format(sql, "CustomFields");
                break;

            case ReferenceType.Groups:
                sql = string.Format(sql, "Groups");
                break;

            case ReferenceType.PhoneTypes:
                sql = string.Format(sql, "PhoneTypes");
                break;

            case ReferenceType.Products:
                sql = string.Format(sql, "Products");
                break;

            case ReferenceType.ProductVersions:
                sql = "SELECT CHECKSUM_AGG(CHECKSUM(p.Name, pv.VersionNumber)) FROM ProductVersions pv LEFT JOIN Products p ON p.ProductID = pv.ProductID WHERE p.OrganizationID = " + loginUser.OrganizationID.ToString();
                break;

            case ReferenceType.ProductVersionStatuses:
                sql = string.Format(sql, "ProductVersionStatuses");
                break;

            case ReferenceType.ProductFamilies:
                sql = string.Format(sql, "ProductFamilies");
                break;

            case ReferenceType.TicketSeverities:
                sql = string.Format(sql, "TicketSeverities");
                break;

            case ReferenceType.TicketStatuses:
                sql = string.Format(sql, "TicketStatuses");
                break;

            case ReferenceType.TicketTypes:
                sql = string.Format(sql, "TicketTypes");
                break;

            case ReferenceType.Users:
                //sql = "SELECT CHECKSUM_AGG(CHECKSUM(FirstName, LastName, Email, IsActive, MarkDeleted, TimeZoneID, CultureName, IsSystemAdmin, IsChatUser, InOffice, InOfficeComment)) FROM Users WHERE OrganizationID = " + loginUser.OrganizationID.ToString();
                sql = "SELECT CHECKSUM_AGG(CHECKSUM(FirstName, LastName, InOfficeComment)) FROM Users WHERE OrganizationID = " + loginUser.OrganizationID.ToString();
                break;

            case ReferenceType.TicketNextStatuses:
                sql = "SELECT CHECKSUM_AGG(CHECKSUM(*)) FROM TicketNextStatuses tns LEFT JOIN TicketStatuses ts ON ts.TicketStatusID = tns.CurrentStatusID WHERE ts.OrganizationID = " + loginUser.OrganizationID.ToString();
                break;

            case ReferenceType.ForumCategories:
                sql = string.Format(sql, "ForumCategories");
                break;

            default:
                return(0);
            }

            SqlCommand command = new SqlCommand();

            command.CommandText = sql;
            command.CommandType = CommandType.Text;
            object o = SqlExecutor.ExecuteScalar(loginUser, command);

            if (o == null || o == DBNull.Value)
            {
                return(0);
            }
            return((int)o);
        }