SGGL_SHJ/SGGL/FineUIPro.Web/HJGL/DataImport/DrawingImport.aspx.cs

425 lines
16 KiB
C#
Raw Normal View History

2022-09-05 16:36:31 +08:00
using BLL;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
namespace FineUIPro.Web.HJGL.DataImport
{
public partial class DrawingImport : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
this.InitTreeMenu();//加载树
2022-09-23 00:01:54 +08:00
Funs.FineUIPleaseSelect(DropImportType);
2022-09-05 16:36:31 +08:00
GetButtonPower();
}
}
#region --
/// <summary>
/// 加载树
/// </summary>
private void InitTreeMenu()
{
this.tvControlItem.Nodes.Clear();
TreeNode rootNode1 = new TreeNode();
rootNode1.NodeID = "1";
rootNode1.Text = "建筑工程";
rootNode1.CommandName = "建筑工程";
rootNode1.EnableClickEvent = true;
rootNode1.EnableCollapseEvent = true;
rootNode1.Selectable = false;
this.tvControlItem.Nodes.Add(rootNode1);
TreeNode rootNode2 = new TreeNode();
rootNode2.NodeID = "2";
rootNode2.Text = "安装工程";
rootNode2.CommandName = "安装工程";
rootNode2.Expanded = true;
rootNode2.EnableClickEvent = true;
rootNode2.EnableCollapseEvent = true;
this.tvControlItem.Nodes.Add(rootNode2);
var pUnits = (from x in Funs.DB.Project_ProjectUnit where x.ProjectId == this.CurrUser.LoginProjectId select x).ToList();
// 获取当前用户所在单位
var currUnit = pUnits.FirstOrDefault(x => x.UnitId == this.CurrUser.UnitId);
var unitWorkList = (from x in Funs.DB.WBS_UnitWork
where x.ProjectId == this.CurrUser.LoginProjectId
&& x.SuperUnitWork == null && x.UnitId != null && x.ProjectType != null
select x).ToList();
List<Model.WBS_UnitWork> unitWork1 = null;
List<Model.WBS_UnitWork> unitWork2 = null;
// 当前为施工单位,只能操作本单位的数据
if (currUnit != null && currUnit.UnitType == Const.ProjectUnitType_2)
{
unitWork1 = (from x in unitWorkList
where x.UnitId == this.CurrUser.UnitId && x.ProjectType == "1"
select x).ToList();
unitWork2 = (from x in unitWorkList
where x.UnitId == this.CurrUser.UnitId && x.ProjectType == "2"
select x).ToList();
}
else
{
unitWork1 = (from x in unitWorkList where x.ProjectType == "1" select x).ToList();
unitWork2 = (from x in unitWorkList where x.ProjectType == "2" select x).ToList();
}
if (unitWork1.Count() > 0)
{
foreach (var q in unitWork1)
{
int a = (from x in Funs.DB.HJGL_Pipeline where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitWorkId == q.UnitWorkId select x).Count();
var u = BLL.UnitService.GetUnitByUnitId(q.UnitId);
TreeNode tn1 = new TreeNode();
tn1.NodeID = q.UnitWorkId;
//tn1.Text = q.UnitWorkName + "【" + a.ToString() + "】" + "管线";
tn1.Text = q.UnitWorkName;
tn1.ToolTip = "施工单位:" + u.UnitName;
tn1.EnableClickEvent = true;
rootNode1.Nodes.Add(tn1);
}
}
if (unitWork2.Count() > 0)
{
foreach (var q in unitWork2)
{
int a = (from x in Funs.DB.HJGL_Pipeline where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitWorkId == q.UnitWorkId select x).Count();
var u = BLL.UnitService.GetUnitByUnitId(q.UnitId);
TreeNode tn2 = new TreeNode();
tn2.NodeID = q.UnitWorkId;
//tn2.Text = q.UnitWorkName + "【" + a.ToString() + "】" + "管线";
tn2.Text = q.UnitWorkName;
tn2.ToolTip = "施工单位:" + u.UnitName;
tn2.EnableClickEvent = true;
rootNode2.Nodes.Add(tn2);
}
}
}
#endregion --
#region TreeView
/// <summary>
/// 点击TreeView
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
{
if (tvControlItem.SelectedNodeID == "1" || tvControlItem.SelectedNodeID == "2")
{
this.btnNew.Hidden = true;
2022-09-23 00:01:54 +08:00
this.btnDelete.Hidden = true;
2022-09-05 16:36:31 +08:00
this.btnSearch.Hidden = true;
}
else
{
this.btnNew.Hidden = false;
2022-09-23 00:01:54 +08:00
this.btnDelete.Hidden = false;
2022-09-05 16:36:31 +08:00
this.btnSearch.Hidden = false;
}
this.BindGrid();
this.Grid2.DataSource = null;
this.Grid2.DataBind();
}
#endregion TreeView
#region
/// <summary>
/// 数据绑定
/// </summary>
private void BindGrid()
{
string strSql = @" select Import.* ,Design.ProfessionalName,Users.PersonName
from ( select * from HJGL_DataImport a where not exists (select 1 from HJGL_DataImport b where a.FileName=b.FileName and a.UnitWorkId=b.UnitWorkId and a.Version<b.Version )) as Import
left join Base_DesignProfessional as Design on Design.DesignProfessionalId=Import.DesignProfessionalId
left join Person_Persons as Users on Users.PersonId=Import.CreateMan
where Import.UnitWorkId=@UnitWorkId and Import.ProjectId=@ProjectId and Import.ImportType in ('0','3','4') ";
2022-09-05 16:36:31 +08:00
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
listStr.Add(new SqlParameter("@UnitWorkId", this.tvControlItem.SelectedNodeID));
if (!string.IsNullOrEmpty(this.txtfilename.Text.Trim()))
{
strSql += " AND Import.FileName LIKE @FileName";
listStr.Add(new SqlParameter("@FileName", "%" + this.txtfilename.Text.Trim() + "%"));
}
2022-09-23 00:01:54 +08:00
if (DropImportType.SelectedValue != Const._Null)
{
strSql += " AND Import.ImportType=@ImportType";
listStr.Add(new SqlParameter("@ImportType", DropImportType.SelectedValue));
}
2022-09-05 16:36:31 +08:00
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// 2.获取当前分页数据
//var table = this.GetPagedDataTable(Grid1, tb1);
Grid1.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
private void BindGrid2(string FileName)
{
string strSql = @" select Import.* ,Design.ProfessionalName,Users.PersonName
from ( select * from HJGL_DataImport a where exists (select 1 from HJGL_DataImport b where a.FileName=b.FileName and a.UnitWorkId=b.UnitWorkId and a.Version<b.Version )) as Import
left join Base_DesignProfessional as Design on Design.DesignProfessionalId=Import.DesignProfessionalId
left join Person_Persons as Users on Users.PersonId=Import.CreateMan
where Import.UnitWorkId=@UnitWorkId and Import.ProjectId=@ProjectId and Import.FileName=@FileName and Import.ImportType in ('0','3','4')";
2022-09-05 16:36:31 +08:00
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
listStr.Add(new SqlParameter("@UnitWorkId", this.tvControlItem.SelectedNodeID));
listStr.Add(new SqlParameter("@FileName", FileName));
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// 2.获取当前分页数据
//var table = this.GetPagedDataTable(Grid1, tb1);
Grid2.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid2.FilteredData, tb);
var table = this.GetPagedDataTable(Grid2, tb);
Grid2.DataSource = table;
Grid2.DataBind();
}
#endregion
#region
#region
/// <summary>
/// 页索引改变事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
#endregion
#region
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
Grid1.SortDirection = e.SortDirection;
Grid1.SortField = e.SortField;
BindGrid();
}
#endregion
#region
/// <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();
}
#endregion
#endregion
#region
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnQuery_Click(object sender, EventArgs e)
{
this.BindGrid();
}
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Tree_TextChanged(object sender, EventArgs e)
{
this.InitTreeMenu();
this.BindGrid();
}
#endregion
#region
/// <summary>
/// 关闭弹出窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindGrid();
}
#endregion
#region
protected void btnNew_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("DrawingImportEdit.aspx?UnitWorkId={0}", tvControlItem.SelectedNodeID, "编辑 - ")));
}
#endregion
#region
protected void Grid1_RowClick(object sender, GridRowClickEventArgs e)
{
if (Grid1.SelectedRowIDArray.Length > 0)
{
string ID = Grid1.SelectedRowID;
var model = BLL.HJGL_DataImportService.GetHJGL_DataImportById(ID);
BindGrid2(model.FileName);
}
}
#endregion
#region
protected void btnMenuDownload_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIDArray.Length > 0)
{
foreach (var item in Grid1.SelectedRowIDArray)
{
string id = item.ToString();
var model = BLL.HJGL_DataImportService.GetHJGL_DataImportById(id);
BLL.HJGL_DataImportService.DownFile(model.FilePath, model.FileName);
}
}
}
protected void btnMenuDownload2_Click(object sender, EventArgs e)
{
if (Grid2.SelectedRowIDArray.Length > 0)
{
foreach (var item in Grid2.SelectedRowIDArray)
{
string id = item.ToString();
var model = BLL.HJGL_DataImportService.GetHJGL_DataImportById(id);
BLL.HJGL_DataImportService.DownFile(model.FilePath, model.FileName);
}
}
}
#endregion
#region
/// <summary>
/// 获取按钮权限
/// </summary>
/// <param name="button"></param>
/// <returns></returns>
private void GetButtonPower()
{
if (Request.Params["value"] == "0")
{
return;
}
var buttonList = CommonService.GetAllButtonList(CurrUser.LoginProjectId, CurrUser.PersonId, Const.HJGL_DrawingImportMenuId);
if (buttonList.Count() > 0)
{
//if (buttonList.Contains(Const.BtnAdd))
//{
// // btnNew.Hidden = false;
//}
//if (buttonList.Contains(Const.BtnModify))
//{
// btnMenuEdit.Hidden = false;
//}
if (buttonList.Contains(Const.BtnDelete))
{
btnMenuDelete.Hidden = false;
btnMenuDelete2.Hidden = false;
}
}
}
#endregion
#region
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIDArray.Length > 0)
{
foreach (var item in Grid1.SelectedRowIDArray)
{
string id = item.ToString();
var model = BLL.HJGL_DataImportService.GetHJGL_DataImportById(id);
if (File.Exists(Funs.RootPath + model.FilePath))
{
File.Delete(Funs.RootPath + model.FilePath);
}
BLL.HJGL_DataImportService.DeleteHJGL_DataImportById(id);
}
BindGrid();
ShowNotify("删除数据成功!", MessageBoxIcon.Success);
}
}
protected void btnMenuDelete2_Click(object sender, EventArgs e)
{
if (Grid2.SelectedRowIDArray.Length > 0)
{
foreach (var item in Grid2.SelectedRowIDArray)
{
string id = item.ToString();
var model = BLL.HJGL_DataImportService.GetHJGL_DataImportById(id);
if (File.Exists(Funs.RootPath + model.FilePath))
{
File.Delete(Funs.RootPath + model.FilePath);
}
BLL.HJGL_DataImportService.DeleteHJGL_DataImportById(id);
}
BindGrid();
ShowNotify("删除数据成功!", MessageBoxIcon.Success);
}
}
#endregion
}
}