投标项目页面,查询出已购买的项目,点击【操作】进入项目流程页面。
将对应项目的信息,流程进度显示出来
在查询数据时,通过自定义事件获取项目ID
$(function () {
//1.2 初始化学生信息表格
tbExamineeInfor = $.fn.bsgrid.init("examineeInfor", {
url: "SelectBidProjectMessage",//请求地址URL
pageSize: 8,//分页显示数
pageSizeSelect: true,//是否出现分页下拉框选项
rowHoverColor: true,//鼠标划过高亮显示
event: {
customRowEvents: {//自定义行事件
//(record行记录值,rowIndex行索引值,trObj:tr目标,options选择的东西)
click: function (record, rowIndex, trObj, options) {
}
}
}
});
});
获取自定义事件的行记录,将ID绑定到按钮
function crearViewButton(record) {
var BidProjectMessageID = record.BidProjectMessageID;
return "<button type='button' style='width:60px;height:29px;line-height:20px;background:url(/image/0017.png); padding-left:18px;' openViewNotice(\"" + record.BidProjectMessageID + "\")><b>操作</b></button>";
}
点击按钮时将ID传到逻辑层,setTimeout 将跳转页面延迟一秒,确保ID已经传到逻辑层。因为我的电脑会出现页面跳转了,但是却没有获取到ID,导致流程控制页面没有数据。
function openViewNotice(BidProjectMessageID) {
$.post("InquireBidProjectMessageID?BidProjectMessageID=" + BidProjectMessageID);
setTimeout(function () {
window.location.href = "/ADC/PayTheBidDond/P170521";
},1000);
}
通过 session绘话机制 传送ID
public ActionResult InquireBidProjectMessageID(string BidProjectMessageID)
{
Session["BidProjectMessageID"] = BidProjectMessageID;
string strMsg = "fail";
strMsg = "success";
return Json(strMsg, JsonRequestBehavior.AllowGet);
}
通过获取到的ID查询出项目信息 通过viewbag 传输到页面
public ActionResult P170521()//P170521投标管理-我的项目-流程控制
{
string strProjectName;
string strProjectNumber;
string strSubpackageName;
string strSubpackageNumber;
string strSubpackageStatusName;
string strBidProjectMessageID = Session["BidProjectMessageID"].ToString();
int intBidProjectMessageID = Convert.ToInt32(strBidProjectMessageID);
var linqItem = (from dbBidProjectMessage in myModels.PW_BidProjectMessage
where dbBidProjectMessage.BidProjectMessageID == intBidProjectMessageID
select dbBidProjectMessage).Single();
var project = (from dbProject in myModels.SYS_Project
where dbProject.ProjectID == linqItem.ProjectID
select dbProject).Single();
var subpackagestatus = (from dbSubpackageStatus in myModels.SYS_SubpackageStatus
where dbSubpackageStatus.SubpackageStatusID == project.SubpackageStatusID
select dbSubpackageStatus).Single();//查询投标企业
var enterprise = (from dbEnterprise in myModels.PW_Enterprise
where dbEnterprise.EnterpriseID == linqItem.BidEnterpriseID
select dbEnterprise).Single();
strProjectName = project.ProjectName;
strProjectNumber = project.ProjectNumber;
strSubpackageName = project.SubpackageName;
strSubpackageNumber = project.SubpackageNumber;
strSubpackageStatusName = subpackagestatus.SubpackageStatusName;
ViewBag.Enterprise = enterprise.EnterpriseName;//企业名称
ViewBag.BidProjectMessage = Session["BidProjectMessageID"].ToString();//投标项目ID
ViewBag.ProjectName = strProjectName; //项目名称
ViewBag.ProjectNumber = strProjectNumber; //项目编号
ViewBag.SubpackageName = strSubpackageName; //分包名称
ViewBag.SubpackageNumber = strSubpackageNumber;//分包编号
ViewBag.SubpackageStatusName = strSubpackageStatusName; //状态名称
ViewBag.BTT = project.RTT; //截止时间
Session["ProjectName"] = strProjectName;
Session["ProjectNumber"] = strProjectNumber;
Session["SubpackageName"] = strSubpackageName;
Session["SubpackageNumber"] = strSubpackageNumber;
Session["BidProjectMessage"] = ViewBag.BidProjectMessage;
Session["Enterprise"] = ViewBag.Enterprise;
Session["SubpackageStatusName"] = strSubpackageStatusName;
return View();
}
在通过@VIEWBAG.
<b>分包编号:</b><span>@ViewBag.SubpackageNumber</span>
<b>分包名称:</b><span>@ViewBag.SubpackageName</span>
<b>分包状态:</b><span>@ViewBag.SubpackageStatusName</span>
<b>投标人名称:</b><span>@ViewBag.Enterprise</span><br />
<b>投标截止时间:</b><span>@ViewBag.BTT</span>
通过自定义事件传送ID,使用绘话机制完成跨页面传输数据。Session、ViewBag运用。