Ejemplo n.º 1
0
        /// <summary>
        /// Update a status into pdf request table.
        /// </summary>
        /// <param name="strID">The uniqueidentified string</param>
        /// <param name="eStatus">The value must be a PdfRequestStatus</param>
        /// <exception cref="SSG.PDF.Exceptions.UpdateStatusException">Thrown when update database has error.</exception>
        public void UpdateDatabaseStatus(string strID, PdfRequestStatus eStatus)
        {
            try
            {
                // Create connection
                SqlConnection oConn = new SqlConnection(m_oPiConfig.GetDatabaseConnectionString());
                SqlCommand    oCmd;
                string        strSQL;

                // Open database connection
                oConn.Open();

                // Create sql statment for update a status
                if (eStatus == PdfRequestStatus.New)
                {
                    strSQL = "INSERT INTO " + PDF_REQUEST_TABLE + " (ID, Status, CreatedDate, LastUpdate) VALUES(@ID, @Status, @CreatedDate, @LastUpdate);";
                }
                else
                {
                    strSQL = "UPDATE " + PDF_REQUEST_TABLE + " SET Status=@Status, LastUpdate=@LastUpdate WHERE ID=@ID;";
                }

                // Assign a parameters for sql statement
                oCmd = new SqlCommand(strSQL, oConn);
                SqlParameter oParamID = new SqlParameter("@ID", SqlDbType.UniqueIdentifier);
                Guid         oID      = new Guid(strID);
                oParamID.Value = oID;
                oCmd.Parameters.Add(oParamID);
                SqlParameter oParamStatus = new SqlParameter("@Status", SqlDbType.Int);
                oParamStatus.Value = eStatus;
                oCmd.Parameters.Add(oParamStatus);
                if (eStatus == PdfRequestStatus.New)
                {
                    SqlParameter oParamCreatedDate = new SqlParameter("@CreatedDate", SqlDbType.DateTime);
                    oParamCreatedDate.Value = DateTime.Now;
                    oCmd.Parameters.Add(oParamCreatedDate);
                }
                SqlParameter oParamLastUpdate = new SqlParameter("@LastUpdate", SqlDbType.DateTime);
                oParamLastUpdate.Value = DateTime.Now;
                oCmd.Parameters.Add(oParamLastUpdate);

                // Execute sql statement
                oCmd.ExecuteNonQuery();

                // Close database connection
                oConn.Close();
            }
            catch (Exception ex)
            {
                // Write error log and thrown a UpdateStatusException.
                Logger.WriteLog(ex);
                throw new UpdateStatusException(ex.Message);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Get list of requested id from specific status
        /// </summary>
        /// <param name="eStatus">The status want to get list</param>
        /// <returns>List of guid</returns>
        public List <Guid> GetListFromStatus(PdfRequestStatus eStatus)
        {
            try
            {
                // Create connection.
                SqlConnection oConn = new SqlConnection(m_oPiConfig.GetDatabaseConnectionString());
                SqlCommand    oCmd;
                SqlDataReader oReader;
                List <Guid>   oGuidList = new List <Guid>();

                string strSQL;

                // Open database connection
                oConn.Open();

                strSQL = "SELECT ID FROM " + PDF_REQUEST_TABLE + " WHERE (Status=@Status);";

                // Assign a parameters for sql statement
                oCmd = new SqlCommand(strSQL, oConn);
                SqlParameter oParamStatus = new SqlParameter("@Status", SqlDbType.Int);
                oParamStatus.Value = eStatus;
                oCmd.Parameters.Add(oParamStatus);
                // Execute sql statement
                oReader = oCmd.ExecuteReader();
                if (oReader.HasRows)
                {
                    // Save requested id into list
                    while (oReader.Read())
                    {
                        oGuidList.Add(oReader.GetGuid(0));
                    }
                }

                oReader.Close();

                // Close database connection
                oConn.Close();

                // Return list of requested id.
                return(oGuidList);
            }
            catch (Exception ex)
            {
                // Write error log and return empty list
                Logger.WriteLog(ex);
                return(new List <Guid>());
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Get a pdf requested status from database.
        /// </summary>
        /// <param name="strID">The uniqueidentified string</param>
        /// <returns>The status of a pdf requested.</returns>
        public PdfRequestStatus GetStatus(string strID)
        {
            try
            {
                // Create connection.
                SqlConnection oConn = new SqlConnection(m_oPiConfig.GetDatabaseConnectionString());
                SqlCommand    oCmd;

                PdfRequestStatus eStatus = PdfRequestStatus.None;

                string strSQL;

                // Open database connection
                oConn.Open();

                strSQL = "SELECT Status FROM " + PDF_REQUEST_TABLE + " WHERE (ID=@ID);";

                // Assign a parameters for sql statement
                oCmd = new SqlCommand(strSQL, oConn);
                SqlParameter oParamID = new SqlParameter("@ID", SqlDbType.UniqueIdentifier);
                Guid         oID      = new Guid(strID);
                oParamID.Value = oID;
                oCmd.Parameters.Add(oParamID);
                // Execute sql statement
                eStatus = (PdfRequestStatus)oCmd.ExecuteScalar();

                // Close database connection
                oConn.Close();

                // Return the status of a pdf requested.
                return(eStatus);
            }
            catch (Exception ex)
            {
                // Write error log and return PdfRequestStatus.None.
                Logger.WriteLog(ex);
                return(PdfRequestStatus.None);
            }
        }