using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Configuration;
namespace SaleLog
{
///
/// Summary description for frmsales.
///
public class frmsales : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.DataGrid dgclient;
protected System.Web.UI.WebControls.Image Image1;
protected System.Web.UI.WebControls.Image Image2;
protected System.Web.UI.WebControls.Image Image4;
protected System.Web.UI.WebControls.Label Label2;
protected System.Web.UI.WebControls.Label Label3;
protected System.Web.UI.WebControls.Label lblbuilding;
protected System.Web.UI.WebControls.Label Label4;
protected System.Web.UI.WebControls.Label lblunitno;
protected System.Web.UI.WebControls.Label Label5;
protected System.Web.UI.WebControls.Label lblunittype;
protected System.Web.UI.WebControls.Label Label6;
protected System.Web.UI.WebControls.Label lblrent;
protected System.Web.UI.WebControls.Label Label7;
protected System.Web.UI.WebControls.Label lblprice;
protected System.Web.UI.WebControls.Label Label9;
protected System.Web.UI.WebControls.Label lblexpdate;
protected System.Web.UI.WebControls.Label Label10;
protected System.Web.UI.WebControls.Label lbldeposit;
protected System.Web.UI.WebControls.Label Label8;
protected System.Web.UI.WebControls.Label lblotype;
protected System.Web.UI.WebControls.LinkButton lnbcontract;
protected System.Web.UI.WebControls.LinkButton lnbeditcontract;
protected System.Web.UI.WebControls.CheckBox chkavailable;
protected System.Web.UI.WebControls.CheckBox chkactive;
protected System.Web.UI.WebControls.CheckBox chkclosed;
protected System.Web.UI.WebControls.CheckBox chkreserved;
protected System.Web.UI.WebControls.LinkButton lnbreserve;
protected System.Web.UI.WebControls.Panel pnlmain;
protected System.Web.UI.WebControls.Button cmdreserve;
protected System.Web.UI.WebControls.TextBox txtcomment;
protected System.Web.UI.WebControls.Label Label13;
protected System.Web.UI.WebControls.TextBox txtreservedate;
protected System.Web.UI.WebControls.Label Label12;
protected System.Web.UI.WebControls.DropDownList cboclient;
protected System.Web.UI.WebControls.Label Label11;
protected System.Web.UI.WebControls.LinkButton lnbclear;
protected System.Web.UI.WebControls.Image Image3;
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
if(!IsPostBack)
{
populateSales();
populateClienttolist();
lnbcontract.Attributes.Add("onclick","javascript:openclient();");
lnbreserve.Attributes.Add("onclick","return reserveunit();");
if(Request.QueryString["InventoryID"] != "0")
{
Session["InventoryID"]=Request.QueryString["InventoryID"];
populateInventory();
lnbeditcontract.Attributes.Add("onclick","javascript:editclient();");
}
}
}
public void populateSales()
{
string strQry =string.Empty;
//if(Request.QueryString["CStatus"].ToString() == "")
//{
strQry = "SELECT Building.BuildingName AS Bldg, Inventory.UnitNo, Inventory.InventoryID AS InventoryId, (IIf(Not IsNull([ReservClientID]),'Reserved',IIf(IsNull([ContractID]),'Available',[ContractStatusVal]))) AS [Contract Status], Inventory.BuildingID, [BuildingName] & '-' &[UnitNo] AS BuildingUnit, Inventory.ReservClientID,ActiveContractsList.ContractID ";
strQry = strQry + " FROM ActiveContractsList RIGHT JOIN (Inventory INNER JOIN Building ON Inventory.BuildingID = Building.BuildingID) ON ActiveContractsList.InventoryID = Inventory.InventoryID";
strQry = strQry + " WHERE Inventory.UnitNo Is Not Null AND Inventory.BuildingID Is Not Null AND Inventory.ProjectID=" + Convert.ToInt32(Session["ProjId"]);
strQry = strQry + " ORDER BY Building.BuildingName, Inventory.UnitNo";
//}
//if(Request.QueryString["CStatus"].ToString() == "Available")
//{
// strQry = "SELECT Building.BuildingName AS Bldg, Inventory.UnitNo, Inventory.InventoryID AS InventoryId, 'Available' AS [Contract Status], Inventory.BuildingID, [BuildingName] & '-' &[UnitNo] AS BuildingUnit, Inventory.ReservClientID,ActiveContractsList.ContractID ";
// strQry = strQry + " FROM ActiveContractsList RIGHT JOIN (Inventory INNER JOIN Building ON Inventory.BuildingID = Building.BuildingID) ON ActiveContractsList.InventoryID = Inventory.InventoryID";
// strQry = strQry + " WHERE Inventory.UnitNo Is Not Null AND Inventory.BuildingID Is Not Null AND Inventory.ProjectID=" + Convert.ToInt32(Session["ProjId"]) + " AND ContractID=null";
// strQry = strQry + " ORDER BY Building.BuildingName, Inventory.UnitNo";
//}
//Response.Write(strQry);
//Response.End();
OleDbConnection cn=new OleDbConnection(ConfigurationSettings.AppSettings["ConnectionString"].ToString());
cn.Open();
OleDbDataAdapter DaCmtLog=new OleDbDataAdapter(strQry,cn);
DataSet ds=new DataSet();
DaCmtLog.Fill(ds);
dgclient.DataSource=ds;
dgclient.DataBind();
DaCmtLog.Dispose();
cn.Close();
}
public void populateInventory()
{
string NoReserve=string.Empty;
int InventoryID = Convert.ToInt32(Request.QueryString["InventoryID"]);
string strQry =" SELECT b.BuildingName AS Building_Name, I.InventoryID, I.UnitNo,I.ReservClientID,I.ReservComment,I.ReservExpDate, u.UnitTypeCode,u.UnitTypeID, I.TenantDeposit, I.PurchasePrice, I.MonthlyRent, s.UnitStatus, o.OccupantType, I.LeaseExpDate";
strQry = strQry + " FROM Inventory AS I, Building AS b, UnitType AS u, UnitStatus AS s, OccupantType AS o ";
strQry = strQry + " WHERE I.BuildingID = b.BuildingID AND ";
strQry = strQry + " I.UnitType = u.UnittypeId AND ";
strQry = strQry + " I.UnitStatus = s.UnitStatusID AND ";
strQry = strQry + " I.OccupantType = o.OccupantTypeID AND ";
strQry = strQry + " I.ProjectID = " + Convert.ToInt32(Session["ProjID"]);
strQry = strQry + " AND I.InventoryID = " + InventoryID;
//Response.Write(strQry);
//Response.End();
OleDbConnection cn=new OleDbConnection(ConfigurationSettings.AppSettings["ConnectionString"].ToString());
cn.Open();
OleDbCommand cl=new OleDbCommand(strQry,cn);
OleDbDataReader dr;
dr=cl.ExecuteReader();
while (dr.Read())
{
Application.Lock();
Application["InventoryID"]=dr["InventoryID"];
Application.UnLock();
if(dr["ReservClientID"].ToString() != "" || dr["ReservClientID"]==null)
{
Session["ReserveClientID"]=dr["ReservClientID"].ToString();
pnlmain.Style["Display"]="";
lnbreserve.Visible=false;
lnbclear.Visible=true;
cboclient.SelectedValue=dr["ReservClientID"].ToString();
txtreservedate.Text=dr["ReservExpDate"].ToString();
txtcomment.Text=dr["ReservComment"].ToString();
}
else
{
NoReserve="Yes";
}
lblbuilding.Text = dr["Building_Name"].ToString();
if(dr["TenantDeposit"].ToString() != "")
{
lbldeposit.Text="$ " + dr["TenantDeposit"].ToString();
}
else
{
lbldeposit.Text=dr["TenantDeposit"].ToString();
}
lblexpdate.Text=dr["LeaseExpDate"].ToString();
lblotype.Text=dr["OccupantType"].ToString();
if(dr["PurchasePrice"].ToString() != "")
{
lblprice.Text="$ " + dr["PurchasePrice"].ToString();
Session["PurchasePrice"]=dr["PurchasePrice"].ToString();
}
else
{
lblprice.Text=dr["PurchasePrice"].ToString();
}
if(dr["MonthlyRent"].ToString() != "")
{
lblrent.Text= "$ " + dr["MonthlyRent"].ToString();
}
else
{
lblrent.Text= dr["MonthlyRent"].ToString();
}
lblunitno.Text=dr["UnitNo"].ToString();
lblunittype.Text=dr["UnitTypeCode"].ToString();
Session["UnitID"]=dr["UnitTypeID"].ToString();
}
dr.Close();
cl.Dispose();
cn.Close();
string strQryChk ="SELECT ContractID From Contract Where InventoryID= " + InventoryID + " AND ContractStatus <> 2 and ProjectID = " + Convert.ToInt32(Session["ProjID"]);
//Response.Write(strQryChk);
//Response.End();
OleDbConnection cnChk=new OleDbConnection(ConfigurationSettings.AppSettings["ConnectionString"].ToString());
cnChk.Open();
OleDbCommand clChk=new OleDbCommand(strQryChk,cnChk);
OleDbDataReader drChk;
drChk=clChk.ExecuteReader();
int intCounter=0;
while (drChk.Read())
{
intCounter=intCounter + 1;
Session["ContractID"] = drChk["ContractID"].ToString();
lnbeditcontract.Visible=true;
}
if(intCounter==0)
{
lnbcontract.Visible=true;
Session["ContractID"] = "0";
}
if(intCounter==0 && NoReserve=="Yes")
{
lnbreserve.Visible=true;
}
drChk.Close();
clChk.Dispose();
cnChk.Close();
}
public void Paginate(object source,DataGridPageChangedEventArgs e)
{
dgclient.CurrentPageIndex=e.NewPageIndex;
populateSales();
}
public void populateClienttolist()
{
string strCLQuery;
OleDbConnection cn=new OleDbConnection(ConfigurationSettings.AppSettings["ConnectionString"].ToString());
cn.Open();
strCLQuery="select FirstName & ',' & LastName AS ClientName,ClientID from Client order by LastName";
OleDbCommand cmdClientStatus=new OleDbCommand(strCLQuery,cn);
cmdClientStatus.ExecuteNonQuery();
OleDbDataAdapter DAStatus = new OleDbDataAdapter();
DAStatus.SelectCommand=cmdClientStatus;
DataSet dsStatus=new DataSet();
DAStatus.Fill(dsStatus);
cboclient.DataSource=dsStatus;
cboclient.DataTextField="ClientName";
cboclient.DataValueField="ClientID";
cboclient.DataBind();
cn.Close();
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
///
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
///
private void InitializeComponent()
{
this.cmdreserve.Click += new System.EventHandler(this.cmdreserve_Click);
this.chkavailable.CheckedChanged += new System.EventHandler(this.chkavailable_CheckedChanged);
this.lnbclear.Click += new System.EventHandler(this.lnbclear_Click);
this.dgclient.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.Paginate);
this.dgclient.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.dgclient_ItemDataBound);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void cmdreserve_Click(object sender, System.EventArgs e)
{
string strQuery;
OleDbConnection cn=new OleDbConnection(ConfigurationSettings.AppSettings["ConnectionString"].ToString());
cn.Open();
strQuery = "UPDATE Inventory ";
strQuery=strQuery+"Set ReservClientID = '" + Request["cboclient"] + "', ReservComment='" + Request["txtcomment"] + "', ReservExpDate=#" + Request["txtreservedate"] + "#" + " WHERE InventoryID=" + Convert.ToInt32(Request.QueryString["InventoryID"]) + " AND ProjectID=" + Convert.ToInt32(Session["ProjID"]);
//Response.Write(strQuery);
//Response.End();
OleDbCommand cmdInsClient=new OleDbCommand(strQuery,cn);
cmdInsClient.CommandType.ToString();
cmdInsClient.ExecuteNonQuery();
cmdInsClient.Dispose();
}
private void lnbclear_Click(object sender, System.EventArgs e)
{
string strQuery;
OleDbConnection cn=new OleDbConnection(ConfigurationSettings.AppSettings["ConnectionString"].ToString());
cn.Open();
strQuery = "UPDATE Inventory ";
strQuery=strQuery+"Set ReservClientID = null, ReservComment='" + "" + "', ReservExpDate=null" + " WHERE InventoryID=" + Convert.ToInt32(Request.QueryString["InventoryID"]) + " AND ProjectID=" + Convert.ToInt32(Session["ProjID"]);
//Response.Write(strQuery);
//Response.End();
OleDbCommand cmdInsClient=new OleDbCommand(strQuery,cn);
cmdInsClient.CommandType.ToString();
cmdInsClient.ExecuteNonQuery();
cmdInsClient.Dispose();
populateSales();
}
private void chkavailable_CheckedChanged(object sender, System.EventArgs e)
{
if(chkavailable.Checked==true)
{
Response.Redirect("frmsales.aspx?CStatus=Available");
}
}
private void dgclient_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
}
}
}