using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Collections;
using System.Data.SqlClient;
using System.Data;
using AIAHTML5.Server.Constants;
namespace AIAHTML5.Server.Models
{
public class DbModel
{
String dbConnectionString = System.Configuration.ConfigurationManager.AppSettings["AIADatabaseV5Context"];
SqlConnection connection;
SqlCommand command;
private DataSet GetSQLData(string commandText, bool isSp)
{
connection = new SqlConnection(dbConnectionString);
if (isSp)
{
command = new SqlCommand(commandText, connection);
command.CommandType = CommandType.StoredProcedure;
}
else
{
command = new SqlCommand(commandText, connection);
}
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = command;
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
private DataSet GetAllEditionForLicense(int licenseId)
{
connection = new SqlConnection(dbConnectionString);
command = new SqlCommand();
command.Connection = connection;
command.CommandText = "GetAllEditionForLicense";
command.CommandType = CommandType.StoredProcedure;
command.Parameters.AddWithValue("@iLicenseId", licenseId).DbType = DbType.Int32;
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = command;
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
///
/// This function use to get all account type
///
/// Array of all account type List
public ArrayList GetAllAccountTypes()
{
ArrayList arrAccountType = new ArrayList();
Hashtable hasAccountType = null;
hasAccountType = new Hashtable();
hasAccountType.Add(AdminConstant.KEY_ID, 0);
hasAccountType.Add(AdminConstant.KEY_TITLE, AdminConstant.TITLE_SELECT);
arrAccountType.Add(hasAccountType);
DataSet ds = GetSQLData("EC_GetAccountTypeList", true);
DataTable dt = ds.Tables[0];
foreach (DataRow drActType in dt.Rows)
{
hasAccountType = new Hashtable();
hasAccountType.Add(AdminConstant.KEY_ID, drActType["Id"]);
hasAccountType.Add(AdminConstant.KEY_TITLE, drActType["Title"]);
arrAccountType.Add(hasAccountType);
}
return arrAccountType;
}
///
/// This function use to get all user type
///
/// array of all User Type
public ArrayList GetUserType()
{
ArrayList arrUserType = new ArrayList();
Hashtable hasUserType = null;
hasUserType = new Hashtable();
hasUserType.Add(AdminConstant.KEY_ID, 0);
hasUserType.Add(AdminConstant.KEY_TITLE, AdminConstant.TITLE_ALL);
arrUserType.Add(hasUserType);
DataSet ds = GetSQLData("", false); //Stored procedure not found
DataTable dt = ds.Tables[0];
foreach (DataRow drUserType in dt.Rows)
{
hasUserType = new Hashtable();
hasUserType.Add(AdminConstant.KEY_ID, drUserType["Id"]);
hasUserType.Add(AdminConstant.KEY_TITLE, drUserType["Title"]);
arrUserType.Add(hasUserType);
}
return arrUserType;
}
///
/// This function used to get all countries list
///
/// Array of all country List
public ArrayList GetAllCountries()
{
ArrayList arrCountry = new ArrayList();
Hashtable hasCountry = null;
hasCountry = new Hashtable();
hasCountry.Add(AdminConstant.KEY_ID, 0);
hasCountry.Add(AdminConstant.KEY_TITLE, AdminConstant.TITLE_SELECT);
arrCountry.Add(hasCountry);
////Disconnected -------------------
//connection = new SqlConnection(dbConnsectionString);
//command = new SqlCommand("EC_GetCountryList", connection);
//command.CommandType = CommandType.StoredProcedure;
//SqlDataAdapter da = new SqlDataAdapter();
//da.SelectCommand = command;
//DataSet ds = new DataSet();
//da.Fill(ds);
//DataTable dt = ds.Tables["Country"];
//foreach (DataRow drCountry in dt.Rows)
//{
// hasCountry = new Hashtable();
// hasCountry.Add("Id", drCountry["Id"]);
// hasCountry.Add("Title", drCountry["CountryName"]);
// arrCountry.Add(hasCountry);
//}
//return arrCountry;
////Connected
//connection = new SqlConnection(dbConnsectionString);
//command = new SqlCommand();
//command.Connection = connection;
//command.CommandType = CommandType.StoredProcedure;
//command.CommandText = "EC_GetCountryList";
//connection.Open();
//reader = command.ExecuteReader();
//while (reader.Read())
//{
// hasCountry = new Hashtable();
// hasCountry.Add("Id", reader["Id"]);
// hasCountry.Add("Title", reader["CountryName"]);
// arrCountry.Add(hasCountry);
//}
//connection.Close();
DataSet ds = GetSQLData("EC_GetCountryList", true);
DataTable dt = ds.Tables[0];
foreach (DataRow drCountry in dt.Rows)
{
hasCountry = new Hashtable();
hasCountry.Add(AdminConstant.KEY_ID, drCountry["Id"]);
hasCountry.Add(AdminConstant.KEY_TITLE, drCountry["CountryName"]);
arrCountry.Add(hasCountry);
}
return arrCountry;
}
///
/// This function used to get all states (U.S.)
///
/// Array of all state List
public ArrayList GetAllUSStates()
{
ArrayList arrState = new ArrayList();
Hashtable hasState = null;
hasState = new Hashtable();
hasState.Add(AdminConstant.KEY_ID, 0);
hasState.Add(AdminConstant.KEY_TITLE, AdminConstant.TITLE_SELECT);
arrState.Add(hasState);
DataSet ds = GetSQLData("EC_GetStateList", true);
DataTable dt = ds.Tables[0];
foreach (DataRow drState in dt.Rows)
{
hasState = new Hashtable();
hasState.Add(AdminConstant.KEY_ID, drState["Id"]);
hasState.Add(AdminConstant.KEY_TITLE, drState["StateName"]);
arrState.Add(hasState);
}
return arrState;
}
///
/// This function used to get all edition type with "All" at the 0 index
///
/// array of all Edition Type
public ArrayList GetAllEditionTypes()
{
ArrayList arrEditionType = new ArrayList();
Hashtable hasEditionType = null;
hasEditionType = new Hashtable();
hasEditionType.Add(AdminConstant.KEY_ID, 0);
hasEditionType.Add(AdminConstant.KEY_TITLE, AdminConstant.TITLE_ALL);
arrEditionType.Add(hasEditionType);
DataSet ds = GetSQLData("getEditionData", true);
DataTable dt = ds.Tables[0];
foreach (DataRow drEdition in dt.Rows)
{
hasEditionType = new Hashtable();
hasEditionType.Add(AdminConstant.KEY_ID, drEdition["Id"]);
hasEditionType.Add(AdminConstant.KEY_TITLE, drEdition["Title"]);
arrEditionType.Add(hasEditionType);
}
return arrEditionType;
}
///
/// This function used to get all Secuirty Question type
///
/// array of all security question
public ArrayList GetSecuirtyQuestionsList()
{
ArrayList arrQuestionType = new ArrayList();
Hashtable hasQuestionType = new Hashtable();
hasQuestionType.Add(AdminConstant.KEY_ID, 0);
hasQuestionType.Add(AdminConstant.KEY_TITLE, AdminConstant.TITLE_SELECT);
arrQuestionType.Add(hasQuestionType);
DataSet ds = GetSQLData("EC_GetSecurityQuestionList", true);
DataTable dt = ds.Tables[0];
foreach (DataRow drSQ in dt.Rows)
{
hasQuestionType = new Hashtable();
hasQuestionType.Add(AdminConstant.KEY_ID, drSQ["Id"]);
hasQuestionType.Add(AdminConstant.KEY_TITLE, drSQ["Title"]);
arrQuestionType.Add(hasQuestionType);
}
return arrQuestionType;
}
///
/// This function use to get all License type
///
/// array of License Types
public ArrayList GetAllLicenseType()
{
//ArrayList arrLicenseType = new ArrayList();
//Hashtable hasLicenseType = null;
//hasLicenseType = new Hashtable();
//hasLicenseType.Add(HelperConst.KEY_ID, 0);
//hasLicenseType.Add(HelperConst.KEY_TITLE, HelperConst.TITLE_ALL);
//arrLicenseType.Add(hasLicenseType);
ArrayList arrLicenseType = new ArrayList();
Hashtable hasLicenseType = null;
hasLicenseType = new Hashtable();
hasLicenseType.Add(AdminConstant.KEY_ID, 0);
hasLicenseType.Add(AdminConstant.KEY_TITLE, AdminConstant.TITLE_ALL);
arrLicenseType.Add(hasLicenseType);
string sqlCommand = "SELECT lic.Id, lic.Title FROM LicenseType lic WHERE isActive=1";
DataSet ds = GetSQLData(sqlCommand, false);
DataTable dt = ds.Tables[0];
foreach (DataRow drLicenseType in dt.Rows)
{
hasLicenseType = new Hashtable();
hasLicenseType.Add(AdminConstant.KEY_ID, drLicenseType["Id"]);
hasLicenseType.Add(AdminConstant.KEY_TITLE, drLicenseType["Title"]);
arrLicenseType.Add(hasLicenseType);
}
return arrLicenseType;
}
public int UpdateUserProfile(int intUserID, string strEmailID, string strFirstName, string strLastName) //, int intLicenseId
{
int rowsUpdated = 0;
int userId = 0;
string fName = string.Empty;
string lName = string.Empty;
string email = string.Empty;
//foreach (KeyValuePair obj in userInfo)
//{
// if (obj.Key == "")
// userId = Convert.ToInt32(obj.Value);
// if (obj.Key == "")
// fName = obj.Value.ToString();
// if (obj.Key == "")
// lName = obj.Value.ToString();
// if (obj.Key == "EMAIL")
// email = obj.Value.ToString();
//}
try
{
using (connection = new SqlConnection(dbConnectionString))
{
using (command = connection.CreateCommand())
//new SqlCommand("UPDATE AIAUser SET FirstName = @FirstName, LastName = @LastName, EmailId = @EmailId, ModifierId = @ModifierId, ModifiedDate = GETDATE() WHERE(Id = @iUserId)", connection))
{
command.CommandText = "UPDATE AIAUser SET FirstName = @FirstName, LastName = @LastName, EmailId = @EmailId, ModifierId = @ModifierId, ModifiedDate = GETDATE() WHERE(Id = @iUserId)";
command.Parameters.AddWithValue("@FirstName", strFirstName);
command.Parameters.AddWithValue("@LastName", strLastName);
command.Parameters.AddWithValue("@EmailId", strEmailID);
command.Parameters.AddWithValue("@ModifierId", intUserID);
command.Parameters.AddWithValue("@iUserId", intUserID);
connection.Open();
rowsUpdated = command.ExecuteNonQuery(); //rows number of record got updated
connection.Close();
}
}
}
catch (SqlException ex)
{
rowsUpdated = 0;
}
return rowsUpdated;
}
public int UpdateUserProfile(int intUserID, string strEmailID, string strFirstName, string strLastName, int intLicenseId)
{
int rowsUpdated = 0;
try
{
using (connection = new SqlConnection(dbConnectionString))
{
connection.Open();
using (SqlCommand cmd =
new SqlCommand("UPDATE AIAUser SET FirstName = @FirstName, LastName = @LastName, EmailId = @EmailId, ModifierId = @ModifierId, ModifiedDate = GETDATE() WHERE(Id = @iUserId)", connection))
{
cmd.Parameters.AddWithValue("@FirstName", strFirstName);
cmd.Parameters.AddWithValue("@LastName", strLastName);
cmd.Parameters.AddWithValue("@EmailId", strEmailID);
cmd.Parameters.AddWithValue("@ModifierId", intUserID);
cmd.Parameters.AddWithValue("@iUserId", intUserID);
rowsUpdated = cmd.ExecuteNonQuery();
//rows number of record got updated
}
}
}
catch (SqlException ex)
{
rowsUpdated = 0;
}
return rowsUpdated;
}
}
}