501 lines
19 KiB
C#
501 lines
19 KiB
C#
|
using BLL;
|
|||
|
using FineUIPro.Web.DataShow;
|
|||
|
using FineUIPro.Web.SysManage;
|
|||
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Configuration;
|
|||
|
using System.Data;
|
|||
|
using System.Data.SqlClient;
|
|||
|
using System.Linq;
|
|||
|
using System.Threading.Tasks;
|
|||
|
using System.Web;
|
|||
|
using System.Web.UI;
|
|||
|
using System.Web.UI.WebControls;
|
|||
|
using System.Windows.Forms;
|
|||
|
using static System.Windows.Forms.AxHost;
|
|||
|
|
|||
|
namespace FineUIPro.Web
|
|||
|
{
|
|||
|
public partial class WorkBench : PageBase
|
|||
|
{
|
|||
|
protected void Page_Init(object sender, EventArgs e)
|
|||
|
{
|
|||
|
string themeStr = Request.QueryString["theme"];
|
|||
|
string menuStr = Request.QueryString["menu"];
|
|||
|
string https = ConfigurationManager.AppSettings["Https"];
|
|||
|
if (!String.IsNullOrEmpty(themeStr) || !String.IsNullOrEmpty(menuStr))
|
|||
|
{
|
|||
|
if (!String.IsNullOrEmpty(themeStr))
|
|||
|
{
|
|||
|
HttpCookie cookie = new HttpCookie("Theme_Pro", "Cupertino")
|
|||
|
{
|
|||
|
Expires = DateTime.Now.AddYears(1)
|
|||
|
};
|
|||
|
Response.Cookies.Add(cookie);
|
|||
|
}
|
|||
|
|
|||
|
if (!String.IsNullOrEmpty(menuStr))
|
|||
|
{
|
|||
|
HttpCookie cookie = new HttpCookie("MenuStyle_Pro", menuStr)
|
|||
|
{
|
|||
|
Expires = DateTime.Now.AddYears(1)
|
|||
|
};
|
|||
|
if (https == "true")
|
|||
|
{
|
|||
|
cookie.Secure = true;
|
|||
|
}
|
|||
|
Response.Cookies.Add(cookie);
|
|||
|
}
|
|||
|
|
|||
|
PageContext.Redirect("~/default.aspx");
|
|||
|
return;
|
|||
|
}
|
|||
|
////////////////////////////////////////////////////////////////
|
|||
|
if (!IsPostBack)
|
|||
|
{
|
|||
|
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
protected void Page_Load(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (!IsPostBack)
|
|||
|
{
|
|||
|
var user = BLL.UserService.GetUserByUserId(this.CurrUser.UserId);
|
|||
|
if (user != null)
|
|||
|
{
|
|||
|
this.lName.Text = user.UserName;
|
|||
|
this.lblName.Text = Resources.Lan.Welcome + "," + user.UserName;
|
|||
|
this.lAccount.Text = user.Account;
|
|||
|
this.lUnitName.Text = BLL.UnitService.GetUnitNameByUnitId(user.UnitId);
|
|||
|
this.lEmail.Text = user.Email;
|
|||
|
//this.lPostName.Text = user.WorkPostId;
|
|||
|
}
|
|||
|
//公司级看板权限
|
|||
|
if (this.CurrUser.IsOffice == true || this.CurrUser.UserId == Const.sysglyId || this.CurrUser.UserId == Const.hfnbdId)
|
|||
|
{
|
|||
|
divgsj.Visible = true;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
divgsj.Visible = false;
|
|||
|
}
|
|||
|
BindGridToDo("1");//待办预警
|
|||
|
BindGrid("1",""); //我的项目
|
|||
|
|
|||
|
if (Request.Cookies["SelectLan"] != null)
|
|||
|
{
|
|||
|
HttpCookie lanCookie = Request.Cookies["SelectLan"];
|
|||
|
if (lanCookie["lan"] != null)
|
|||
|
{
|
|||
|
drpSelectLan.SelectedValue = lanCookie["lan"];
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
#region 待办预警
|
|||
|
#region 绑定数据
|
|||
|
/// <summary>
|
|||
|
/// 绑定数据
|
|||
|
/// </summary>
|
|||
|
private void BindGridToDo(string sType)
|
|||
|
{
|
|||
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
listStr.Add(new SqlParameter("@userId", this.CurrUser.UserId));
|
|||
|
listStr.Add(new SqlParameter("@sType", sType));
|
|||
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
DataTable tb = BLL.SQLHelper.GetDataTableRunProc("Sp_WorkBench_GetToDoItems", parameter);
|
|||
|
Grid2.RecordCount = tb.Rows.Count;
|
|||
|
Grid2.DataSource = this.GetPagedDataTable(Grid2, tb);
|
|||
|
this.Grid2.DataBind();
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Grid
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid2_PageIndexChange(object sender, GridPageEventArgs e)
|
|||
|
{
|
|||
|
BindGridToDo(hdToDoState.Text.Trim());
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
//protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
|||
|
//{
|
|||
|
// Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
|||
|
// BindGrid(hdState.Text.Trim());
|
|||
|
//}
|
|||
|
|
|||
|
protected void Grid2_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
|||
|
{
|
|||
|
BindGridToDo(hdToDoState.Text.Trim());
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 双击行事件
|
|||
|
/// <summary>
|
|||
|
/// 双击事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid2_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(Grid2.SelectedRowID))
|
|||
|
{
|
|||
|
int i = Grid2.SelectedRowIndex;
|
|||
|
string url = Grid2.Rows[i].Values[4].ToString();
|
|||
|
if (!string.IsNullOrEmpty(url))
|
|||
|
{
|
|||
|
//url = "CQMS/Comprehensive/InspectionMachineEdit.aspx?ToDo=ToDo&&InspectionMachineId=3df44927-074a-4381-9cfe-a050ff4c2185";
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format(url), "待办"));
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 切换待办预警
|
|||
|
protected void btnAll_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
hdToDoState.Text = "1";
|
|||
|
BindGridToDo("1");//全部
|
|||
|
}
|
|||
|
|
|||
|
protected void btnTo_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
hdToDoState.Text = "2";
|
|||
|
BindGridToDo("2");//待办
|
|||
|
}
|
|||
|
|
|||
|
protected void btnDo_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
hdToDoState.Text = "3";
|
|||
|
BindGridToDo("3");//预警
|
|||
|
}
|
|||
|
#endregion
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 我的项目
|
|||
|
#region 绑定数据
|
|||
|
/// <summary>
|
|||
|
/// 绑定数据
|
|||
|
/// </summary>
|
|||
|
private void BindGrid(string proState,string urlType="")
|
|||
|
{
|
|||
|
if (this.CurrUser.UserId == Const.sysglyId || this.CurrUser.UserId == Const.hfnbdId || this.CurrUser.UserId == Const.sedinId)
|
|||
|
{
|
|||
|
string strSql = @"select ProjectId,ProjectCode,(ProjectCode+' '+ProjectName) as ProjectName,ProjectState from Base_Project"
|
|||
|
+ @" WHERE 1=1";
|
|||
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
if (proState == "2")
|
|||
|
{
|
|||
|
strSql += " AND (ProjectState = '2' )";
|
|||
|
}
|
|||
|
else if (proState == "3")
|
|||
|
{
|
|||
|
strSql += " AND (ProjectState = '3' )";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
strSql += " AND (ProjectState = '1' OR ProjectState IS NULL)";
|
|||
|
}
|
|||
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
Grid1.RecordCount = tb.Rows.Count;
|
|||
|
Grid1.DataSource = this.GetPagedDataTable(Grid1, tb);
|
|||
|
Grid1.DataBind();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
var getUser = UserService.GetUserByUserId(this.CurrUser.UserId);
|
|||
|
if (getUser != null)
|
|||
|
{
|
|||
|
/// 获取角色类型
|
|||
|
var getRoleP = Funs.DB.Sys_RolePower.FirstOrDefault(x => x.RoleId == getUser.RoleId && x.IsOffice == false);
|
|||
|
//如果是项目级别,获取到他的类型后,并且还要单位是五环的
|
|||
|
if (!string.IsNullOrEmpty(urlType))
|
|||
|
{
|
|||
|
//五环的能看所有项目,否则只能看项目用户中有自己或者所属单位是自己单位的
|
|||
|
if (getRoleP != null && getUser.UnitId == Const.UnitId_CWCEC)
|
|||
|
{
|
|||
|
string strSql = @"select ProjectId,ProjectCode,(ProjectCode+' '+ProjectName) as ProjectName,ProjectState from Base_Project"
|
|||
|
+ @" WHERE 1=1";
|
|||
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
if (proState == "2")
|
|||
|
{
|
|||
|
strSql += " AND (ProjectState = '2' )";
|
|||
|
}
|
|||
|
else if (proState == "3")
|
|||
|
{
|
|||
|
strSql += " AND (ProjectState = '3' )";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
strSql += " AND (ProjectState = '1' OR ProjectState IS NULL)";
|
|||
|
}
|
|||
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
Grid1.RecordCount = tb.Rows.Count;
|
|||
|
Grid1.DataSource = this.GetPagedDataTable(Grid1, tb);
|
|||
|
Grid1.DataBind();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
string strSql = @"select distinct p.ProjectId,p.ProjectCode,(p.ProjectCode+' '+p.ProjectName) as ProjectName from Base_Project p
|
|||
|
left join Project_ProjectUser as pu on pu.ProjectId = p.ProjectId
|
|||
|
where ((pu.UserId=@userId and pu.IsPost='true') or p.UnitId=@unitId)
|
|||
|
and p.ProjectState = @state"
|
|||
|
+ @" WHERE 1=1";
|
|||
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
listStr.Add(new SqlParameter("@userId", this.CurrUser.UserId));
|
|||
|
listStr.Add(new SqlParameter("@unitId", getUser.UnitId));
|
|||
|
listStr.Add(new SqlParameter("@state", proState));
|
|||
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
Grid1.RecordCount = tb.Rows.Count;
|
|||
|
Grid1.DataSource = this.GetPagedDataTable(Grid1, tb);
|
|||
|
Grid1.DataBind();
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (getRoleP != null)
|
|||
|
{
|
|||
|
string strSql = @"select ProjectId,ProjectCode,(ProjectCode+' '+ProjectName) as ProjectName,ProjectState from Base_Project"
|
|||
|
+ @" WHERE 1=1";
|
|||
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
if (proState == "2")
|
|||
|
{
|
|||
|
strSql += " AND (ProjectState = '2' )";
|
|||
|
}
|
|||
|
else if (proState == "3")
|
|||
|
{
|
|||
|
strSql += " AND (ProjectState = '3' )";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
strSql += " AND (ProjectState = '1' OR ProjectState IS NULL)";
|
|||
|
}
|
|||
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
Grid1.RecordCount = tb.Rows.Count;
|
|||
|
Grid1.DataSource = this.GetPagedDataTable(Grid1, tb);
|
|||
|
Grid1.DataBind();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
string strSql = @"select distinct p.ProjectId,p.ProjectCode,(p.ProjectCode+' '+p.ProjectName) as ProjectName from Base_Project p
|
|||
|
left join Project_ProjectUser as pu on pu.ProjectId = p.ProjectId
|
|||
|
where pu.UserId=@userId and pu.IsPost='true'
|
|||
|
and p.ProjectState = @state";
|
|||
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
listStr.Add(new SqlParameter("@userId", this.CurrUser.UserId));
|
|||
|
listStr.Add(new SqlParameter("@state", proState));
|
|||
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
Grid1.RecordCount = tb.Rows.Count;
|
|||
|
Grid1.DataSource = this.GetPagedDataTable(Grid1, tb);
|
|||
|
Grid1.DataBind();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 显示项目图片
|
|||
|
/// <summary>
|
|||
|
/// 显示项目图片
|
|||
|
/// </summary>
|
|||
|
/// <param name="projectId"></param>
|
|||
|
/// <returns></returns>
|
|||
|
protected string ConvertProjectImage(object projectId)
|
|||
|
{
|
|||
|
string url = string.Empty;
|
|||
|
if (projectId != null)
|
|||
|
{
|
|||
|
var att = Funs.DB.AttachFile.FirstOrDefault(x => x.ToKeyId == projectId);
|
|||
|
if (att != null)
|
|||
|
{
|
|||
|
url = BLL.UploadAttachmentService.ShowProjectImage("../../", att.AttachUrl);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
url = BLL.UploadAttachmentService.ShowProjectImage("../../", "res/images/16.png");
|
|||
|
}
|
|||
|
}
|
|||
|
return url;
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Grid
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
|||
|
{
|
|||
|
BindGrid(hdState.Text.Trim(),"");
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
//protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
|||
|
//{
|
|||
|
// Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
|||
|
// BindGrid(hdState.Text.Trim());
|
|||
|
//}
|
|||
|
|
|||
|
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
|||
|
{
|
|||
|
BindGrid(hdState.Text.Trim(),"");
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 双击行事件
|
|||
|
/// <summary>
|
|||
|
/// 双击事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(Grid1.SelectedRowID))
|
|||
|
{
|
|||
|
string url = "~/indexProject.aspx?projectId=" + Grid1.SelectedRowID;
|
|||
|
UserService.UpdateLastUserInfo(this.CurrUser.UserId, null, false, Grid1.SelectedRowID);
|
|||
|
PageContext.Redirect(url, "_top");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ShowNotify("请选择项目进入!", MessageBoxIcon.Warning);
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 右键进入项目
|
|||
|
/// <summary>
|
|||
|
/// 右键进入项目
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnEnter_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(Grid1.SelectedRowID))
|
|||
|
{
|
|||
|
string url = "~/indexProject.aspx?projectId=" + Grid1.SelectedRowID;
|
|||
|
UserService.UpdateLastUserInfo(this.CurrUser.UserId, null, false, Grid1.SelectedRowID);
|
|||
|
PageContext.Redirect(url, "_top");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ShowNotify("请选择项目进入!", MessageBoxIcon.Warning);
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 切换项目状态
|
|||
|
protected void zjProject_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
hdState.Text = "1";
|
|||
|
BindGrid("1","");//在建项目
|
|||
|
}
|
|||
|
|
|||
|
protected void ztProject_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
hdState.Text = "2";
|
|||
|
BindGrid("2","");//暂停项目
|
|||
|
}
|
|||
|
|
|||
|
protected void wgProject_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
hdState.Text = "3";
|
|||
|
BindGrid("3","");//完工项目
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Grid行点击事件
|
|||
|
/// <summary>
|
|||
|
/// Grid行点击事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
|
|||
|
{
|
|||
|
if (e.CommandName == "LoginProject")
|
|||
|
{
|
|||
|
string url = "~/indexProject.aspx?projectId=" + Grid1.SelectedRowID;
|
|||
|
UserService.UpdateLastUserInfo(this.CurrUser.UserId, null, false, Grid1.SelectedRowID);
|
|||
|
PageContext.Redirect(url, "_top");
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 跳转公司级看板
|
|||
|
/// <summary>
|
|||
|
/// 跳转公司级看板
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void gsjkb_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (this.CurrUser.IsOffice == true || this.CurrUser.UserId == Const.sysglyId || this.CurrUser.UserId == Const.hfnbdId)
|
|||
|
{
|
|||
|
PageContext.Redirect("~/index.aspx", "_top");
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 任务中心
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void rwzx_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
ShowNotify("开发中");
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 系统管理
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void xtgl_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
ShowNotify("开发中");
|
|||
|
}
|
|||
|
|
|||
|
#region 中英文切换
|
|||
|
/// <summary>
|
|||
|
/// 中英文切换
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void drpSelectLan_SelectedIndexChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
string https = ConfigurationManager.AppSettings["Https"];
|
|||
|
HttpCookie lanCookie = Request.Cookies["SelectLan"];
|
|||
|
lanCookie["lan"] = drpSelectLan.SelectedValue;
|
|||
|
lanCookie.Expires = DateTime.Now.AddDays(1);
|
|||
|
if (https == "true")
|
|||
|
{
|
|||
|
lanCookie.Secure = true;
|
|||
|
}
|
|||
|
Response.Cookies.Add(lanCookie);
|
|||
|
Response.Redirect(Request.UrlReferrer.ToString());//刷新当前页面
|
|||
|
}
|
|||
|
#endregion
|
|||
|
}
|
|||
|
}
|