protected void ddlExtend_SelectedIndexChanged(object sender, EventArgs e) { string today = DateTime.Now.ToShortDateString(); int numberofday = Convert.ToInt32(ddlExtend.SelectedValue.ToString()); int user = Convert.ToInt32(userLogin.UserId); clientbus = new ClientBUS(); DataTable dtClient = new DataTable(); dtClient = clientbus.GetByID(user); int registerId = Convert.ToInt32(dtClient.Rows[0]["registerId"].ToString()); clientRegister = new ClientRegisterBUS(); DataTable dtClientRegister = new DataTable(); dtClientRegister = clientRegister.GetbyID(registerId); int packageId = Convert.ToInt32(dtClientRegister.Rows[0]["packageId"].ToString()); pkgCostBus = new PackageCostBUS(); DataTable dtCost = pkgCostBus.GetPackageCost(packageId); lblExtendCost.Text = dtCost.Rows[0]["cost"].ToString(); DateTime expiredays = Convert.ToDateTime(today).AddMonths(numberofday); if (dayleft != null) { expiredays = expiredays.AddDays(Convert.ToInt32(dayleft)); lblExpireDate.Text = expiredays.ToString("dd/MM/yyyy"); Session["expireDays"] = expiredays.ToString(); } else { lblExpireDate.Text = expiredays.ToString("dd/MM/yyyy"); Session["expireDays"] = expiredays.ToString(); } btnGiahan.Enabled = true; ; btnGiahan.CssClass = "button round blue image-right ic-add text-upper"; }
protected void ddlUpgradeTime_SelectedIndexChanged(object sender, EventArgs e) { int value=Convert.ToInt32(ddlUpgradeServices.SelectedValue); if (value != 0 ) { string today = DateTime.Now.ToShortDateString(); int packageId = Convert.ToInt32(ddlUpgradeServices.SelectedValue); int numberofday = Convert.ToInt32(ddlUpgradeTime.SelectedValue.ToString()); pkgCostBus = new PackageCostBUS(); DataTable dtCost = pkgCostBus.GetPackageCost(packageId); int cost = Convert.ToInt32(dtCost.Rows[0]["cost"].ToString()); int numberoftime = Convert.ToInt32(ddlUpgradeTime.SelectedValue); double dayleft = Convert.ToDouble(Session["totalDayLeft"]); int totalFee = cost * numberoftime; double costperday = cost / 30; double feeRemain = GetFeeRemain(Convert.ToInt32(userLogin.UserId)); double finalFeeRemain = Math.Round(feeRemain * dayleft); if (numberofday > 0) { DateTime expiredays = Convert.ToDateTime(today).AddMonths(numberofday); if (dayleft != null) { expiredays = expiredays.AddDays(Convert.ToInt32(dayleft)); double daybonus = (finalFeeRemain / costperday); string temp = daybonus.ToString(); if (temp == "NaN") { daybonus = 0; } expiredays = expiredays.AddDays(Math.Round(daybonus)); if (daybonus > 0) { lblUpgradeExpireTime.Text = expiredays.ToString("dd/MM/yyyy") + " (+" + Math.Round(daybonus) + " ngày)"; Session["expireDays"] = expiredays.ToString(); } else { lblUpgradeExpireTime.Text = expiredays.ToString("dd/MM/yyyy"); Session["expireDays"] = expiredays.ToString(); } } else { lblUpgradeExpireTime.Text = expiredays.ToString("dd/MM/yyyy"); Session["expireDays"] = expiredays.ToString(); } btnUpgrade.Enabled = true; btnUpgrade.CssClass = "button round blue image-right ic-add text-upper"; lblFee.Text = totalFee.ToString(); lblFeeRemain.Text = finalFeeRemain.ToString(); } else { DateTime expiredays = Convert.ToDateTime(today).AddMonths(numberofday); if (dayleft != null) { expiredays = expiredays.AddDays(Convert.ToInt32(dayleft)); lblUpgradeExpireTime.Text = expiredays.ToString("dd/MM/yyyy"); Session["expireDays"] = expiredays.ToString(); } else { lblUpgradeExpireTime.Text = expiredays.ToString("dd/MM/yyyy"); Session["expireDays"] = expiredays.ToString(); } lblFee.Text = totalFee.ToString(); lblFeeRemain.Text = Math.Round(feeRemain).ToString(); } #region loadfunction pkgFunctionBus = new PackageFunctionBUS(); DataTable dtfunction = pkgFunctionBus.GetFunctionbyPackageId(Convert.ToInt32(packageId)); DataTable dtFunctionTemmp = new DataTable(); dtFunctionTemmp.Columns.Add("functionId"); dtFunctionTemmp.Columns.Add("functionName"); dtFunctionTemmp.Columns.Add("cost"); dtFunctionTemmp.Columns.Add("isDefault"); foreach (DataRow drfunction in dtfunction.Rows) { int id = Convert.ToInt32(drfunction["functionId"].ToString()); function = new FunctionBUS(); DataTable dtTemp = function.GetByUserId(id); DataRow dr = dtFunctionTemmp.NewRow(); dr["functionId"] = dtTemp.Rows[0]["functionId"].ToString(); dr["functionName"] = dtTemp.Rows[0]["functionName"].ToString(); dr["cost"] = dtTemp.Rows[0]["cost"].ToString(); dr["isDefault"] = dtTemp.Rows[0]["isDefault"].ToString(); dtFunctionTemmp.Rows.Add(dr); } rptListOptionsUpgrade.DataSource = dtFunctionTemmp; rptListOptionsUpgrade.DataBind(); pkgBus = new PackageBUS(); DataTable dtPackage = pkgBus.GetById(Convert.ToInt32(packageId)); int currentLimitID = Convert.ToInt32(dtPackage.Rows[0]["limitId"].ToString()); pkglimitBus = new PackageLimitBUS(); DataTable dtTempp = pkglimitBus.GetAll(); ddlPackageLimitUpgrade.DataSource = dtTempp; ddlPackageLimitUpgrade.DataTextField = "namepackagelimit"; ddlPackageLimitUpgrade.DataValueField = "limitId"; ddlPackageLimitUpgrade.DataBind(); ddlPackageLimitUpgrade.SelectedValue = currentLimitID.ToString(); #endregion } }
protected void btnUpgrade_Click(object sender, EventArgs e) { //int limitId = Convert.ToInt32(ddlUpgradeServices.SelectedValue.ToString()); int packageid = Convert.ToInt32(ddlUpgradeServices.SelectedValue.ToString()); int user = Convert.ToInt32(userLogin.UserId); clientbus = new ClientBUS(); DataTable dtClient = new DataTable(); dtClient = clientbus.GetByID(user); DateTime dateexpire = Convert.ToDateTime(dtClient.Rows[0]["expireDate"].ToString()); int registerId = Convert.ToInt32(dtClient.Rows[0]["registerId"].ToString()); int clientId = Convert.ToInt32(dtClient.Rows[0]["clientId"].ToString()); DateTime dayactive = Convert.ToDateTime(dtClient.Rows[0]["activeDate"].ToString()); DateTime dayexpire = Convert.ToDateTime(dtClient.Rows[0]["expireDate"].ToString()); clientRegister = new ClientRegisterBUS(); DataTable dtClientRegister = new DataTable(); dtClientRegister = clientRegister.GetbyID(registerId); int limitId = Convert.ToInt32(dtClientRegister.Rows[0]["limitId"].ToString()); string lastRegisterFrom = Convert.ToDateTime(dtClientRegister.Rows[0]["from"].ToString()).ToString("dd/MM/yyyy"); ; string lastRegisterTo = Convert.ToDateTime(dtClientRegister.Rows[0]["to"].ToString()).ToString("dd/MM/yyyy"); clientRegister = new ClientRegisterBUS(); DataTable dtpackage = new DataTable(); pkgBus = new PackageBUS(); dtpackage = pkgBus.GetById(Convert.ToInt32(packageid)); int SubAccount = Convert.ToInt32(dtpackage.Rows[0]["subAccontCount"].ToString()); int packagelimitid = Convert.ToInt32(dtpackage.Rows[0]["limitid"].ToString()); DataTable dtlimit = new DataTable(); pkglimitBus = new PackageLimitBUS(); dtlimit = pkglimitBus.GetByUserIdPackageLimit(limitId); pkgCostBus = new PackageCostBUS(); DataTable dtCost = pkgCostBus.GetPackageCost(packageid); int cost = Convert.ToInt32(dtCost.Rows[0]["cost"].ToString()); int numberoftime = Convert.ToInt32(ddlUpgradeTime.SelectedValue); int value = 0; int totalFee = Convert.ToInt32(lblFee.Text); string status = Request.QueryString["type"].ToString(); int registerType; if (status == "extend") { registerType = 1; } else if (status == "upgrade") { registerType = 2; } else if (status == "addfunction") { registerType = 3; } else { registerType = 0; } string today = DateTime.Now.ToShortDateString(); int numberofday = Convert.ToInt32(ddlUpgradeTime.SelectedValue.ToString()); //DateTime expiredays = Convert.ToDateTime(today).AddMonths(numberofday); //DateTime activedays = Convert.ToDateTime(today); string registerDate = DateTime.Now.ToString("dd/MM/yyyy"); string registerTime = DateTime.Now.ToString("dd/MM/yyyy"); string from = DateTime.Now.ToString("dd/MM/yyyy"); string to = DateTime.Parse(Session["expireDays"].ToString()).ToString("dd/MM/yyyy"); int lastRegisterFee = Convert.ToInt32(dtClientRegister.Rows[0]["totalFee"].ToString()); int lastRegisterFeeRemain = Convert.ToInt32(lblFeeRemain.Text); int packagetimeid = Convert.ToInt32(ddlUpgradeServices.SelectedValue); int newregisterid = clientRegister.UpdateUpgrade(clientId, packageid, limitId, SubAccount, totalFee, registerType, packagetimeid, from, to, lastRegisterFrom, lastRegisterTo, lastRegisterFee, lastRegisterFeeRemain); clientbus.UpdateRegiterId(clientId, from, to, registerId, newregisterid); foreach (RepeaterItem rptItems in rptListOptionsUpgrade.Items) { CheckBox chk = (CheckBox)rptItems.FindControl("chkOptionsUpgrade"); Label lbl = (Label)rptItems.FindControl("lblIDUpgrade"); int functionId = Convert.ToInt32(lbl.Text); if (chk.Checked == true) { clientFunction = new ClientFunctionBUS(); clientFunction.UpdateFunction(newregisterid, clientId, functionId); } } btnUpgrade.Enabled = false; btnUpgrade.CssClass = "button round text-upper"; btnUpgrade.Text = "Đã nâng cấp gói thành công!!!"; }