SGGL_HBAZ/SGGL/FineUIPro.Web/HJGL/RepairManage/ReleaseRecovery.aspx.cs

373 lines
14 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Data.SqlClient;
using System.Data;
using Newtonsoft.Json.Linq;
using BLL;
using System.Text;
using System.Web;
using System.Reflection;
using System.Diagnostics;
using System.IO;
namespace FineUIPro.Web.HJGL.MaterialManage
{
public partial class ReleaseRecovery : PageBase
{
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
this.drpWeldType.DataTextField = "Text";
this.drpWeldType.DataValueField = "Value";
this.drpWeldType.DataSource = BLL.DropListService.HJGL_ConsumablesTypeList();
this.drpWeldType.DataBind();
Funs.FineUIPleaseSelect(this.drpWeldType);
//Funs.FineUIPleaseSelect(this.drpTeamGroup);
this.drpWelder.DataTextField = "Text";
this.drpWelder.DataValueField = "Value";
this.drpWelder.DataSource = BLL.WelderService.GetWelderCodeListByProjectId(this.CurrUser.LoginProjectId);
this.drpWelder.DataBind();
Funs.FineUIPleaseSelect(this.drpWelder);
BLL.UserService.InitUserDropDownList(this.drpStoreMan,this.CurrUser.LoginProjectId,true);
BindGrid();
}
}
#endregion
#region
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = @"SELECT * FROM Weld_View_ReleaseRecovery WHERE ProjectId=@ProjectId ";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
if (drpWelder.SelectedValue != Const._Null && drpWelder.SelectedValue != null)
{
strSql += " AND WED_ID =@WED_ID";
listStr.Add(new SqlParameter("@WED_ID", drpWelder.SelectedValue));
}
if (drpStoreMan.SelectedValue != Const._Null && drpStoreMan.SelectedValue != null)
{
strSql += " AND StoreMan =@StoreMan";
listStr.Add(new SqlParameter("@StoreMan", drpStoreMan.SelectedValue));
}
if (drpWeldType.SelectedValue != Const._Null)
{
strSql += " AND ConsumablesType =@WeldTypeId";
listStr.Add(new SqlParameter("@WeldTypeId", drpWeldType.SelectedValue));
}
if (!string.IsNullOrEmpty(this.txtWeldCode.Text.Trim()))
{
strSql += " AND ConsumablesCode LIKE @ConsumablesCode";
listStr.Add(new SqlParameter("@ConsumablesCode", "%" + this.txtWeldCode.Text.Trim() + "%"));
}
//if (!string.IsNullOrEmpty(this.txtJOT_ID.Text.Trim()))
//{
// strSql += " AND UsePosition LIKE @UsePosition";
// listStr.Add(new SqlParameter("@UsePosition", "%" + this.txtJOT_ID.Text.Trim() + "%"));
//}
if (!string.IsNullOrEmpty(this.txtStarTime.Text))
{
strSql += " AND UsingDate >=@StarTime";
listStr.Add(new SqlParameter("@StarTime", Convert.ToDateTime(this.txtStarTime.Text.Trim())));
}
if (!string.IsNullOrEmpty(this.txtEndTime.Text))
{
strSql += " AND UsingDate <=@EndTime";
listStr.Add(new SqlParameter("@EndTime", Convert.ToDateTime(this.txtEndTime.Text.Trim()).AddDays(1)));
}
strSql += " ORDER BY Years DESC,Months DESC,Dayt DESC ,UsePosition";
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid1, tb);
this.OutputSummaryData(tb); ///取合计值
Grid1.DataSource = table;
Grid1.DataBind();
}
#endregion
#region
/// <summary>
/// 计算合计
/// </summary>
private void OutputSummaryData(DataTable tb)
{
decimal usingMatSum = 0; //领用数量
decimal recycleMatSum = 0; //退回数量
int RecycleMatTopSum = 0; //退回焊材头数量
for (int i = 0; i < tb.Rows.Count; i++)
{
usingMatSum += Funs.GetNewDecimalOrZero(tb.Rows[i]["Amount"].ToString());
recycleMatSum += Funs.GetNewDecimalOrZero(tb.Rows[i]["RecycleAmount"].ToString());
RecycleMatTopSum += Funs.GetNewIntOrZero(tb.Rows[i]["MatTopAmount"].ToString());
}
JObject summary = new JObject();
summary.Add("UsePosition", "合计:");
summary.Add("Amount", usingMatSum);
summary.Add("RecycleAmount", recycleMatSum);
summary.Add("MatTopAmount", RecycleMatTopSum);
Grid1.SummaryData = summary;
}
#endregion
#region
protected void Grid1_FilterChange(object sender, EventArgs e)
{
BindGrid();
}
#endregion
#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
#region
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSearch_Click(object sender, EventArgs e)
{
BindGrid();
}
#endregion
#region
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut_Click(object sender, EventArgs e)
{
// 测试图片
//string reportId = BLL.Const.HGGL_TestReportId;
//PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../../Common/ReportPrint/ExReportPrint.aspx?ispop=1&reportId={0}&replaceParameter={1}&varValue={2}&projectId=0", reportId, "", "", "打印 - ")));
}
/// <summary>
/// 导出方法
/// </summary>
/// <param name="grid"></param>
/// <returns></returns>
private string GetGridTableHtml(Grid grid)
{
StringBuilder sb = new StringBuilder();
sb.Append("<meta http-equiv=\"content-type\" content=\"application/excel; charset=UTF-8\"/>");
sb.Append("<table cellspacing=\"0\" rules=\"all\" border=\"1\" style=\"border-collapse:collapse;\">");
sb.Append("<tr>");
this.Grid1.PageSize = 10000;
BindGrid();
foreach (GridColumn column in grid.Columns)
{
sb.AppendFormat("<td>{0}</td>", column.HeaderText);
}
sb.Append("</tr>");
foreach (GridRow row in grid.Rows)
{
sb.Append("<tr>");
foreach (GridColumn column in grid.Columns)
{
string html = row.Values[column.ColumnIndex].ToString();
//if (column.ColumnID == "tfNumber")
//{
// html = (row.FindControl("labNumber") as AspNet.Label).Text;
//}
sb.AppendFormat("<td>{0}</td>", html);
}
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
#endregion
#region
/// <summary>
/// 打印
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnPrint_Click(object sender, EventArgs e)
{
//string projectId = this.tvControlItem.SelectedNodeID;
//if (!string.IsNullOrEmpty(projectId))
//{
// var unit = BLL.Base_UnitService.GetUnit(Const.zzfgsId);
// var project = BLL.Base_ProjectService.GetProjectByProjectId(projectId);
// string varValue = "工程名称:" + project.ProjectName;
// if (unit != null)
// {
// varValue = varValue + "|" + unit.UnitName + "|" + unit.UnitName;
// }
// varValue = HttpUtility.UrlEncodeUnicode(varValue);
// string replaceParameter = projectId;
// if (drpWeldType.SelectedValue != Const._Null)
// {
// replaceParameter = replaceParameter + "|" + drpWeldType.SelectedValue;
// }
// else
// {
// replaceParameter = replaceParameter + "|" + "NULL";
// }
// if (drpStoreMan.SelectedValue != Const._Null)
// {
// replaceParameter = replaceParameter + "|" + drpStoreMan.SelectedValue;
// }
// else
// {
// replaceParameter = replaceParameter + "|" + "NULL";
// }
// if (txtStarTime.Text != string.Empty)
// {
// replaceParameter = replaceParameter + "|" + txtStarTime.Text.Trim();
// }
// else
// {
// replaceParameter = replaceParameter + "|" + "NULL";
// }
// if (this.txtEndTime.Text != string.Empty)
// {
// replaceParameter = replaceParameter + "|" + txtEndTime.Text.Trim();
// }
// else
// {
// replaceParameter = replaceParameter + "|" + "NULL";
// }
// string reportId = string.Empty;
// if (drpWeldType.SelectedValue != Const._Null)
// {
// if (drpWeldType.SelectedText == "焊条")
// {
// reportId = BLL.Const.CLGL_ReleaseRecoveryReportId;
// }
// else
// {
// reportId = BLL.Const.HJGL_ElectrodeRecoveryReportId;
// }
// PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../../Common/ReportPrint/ExReportPrint.aspx?ispop=1&reportId={0}&replaceParameter={1}&varValue={2}&projectId=0", reportId, replaceParameter, varValue, "打印 - ")));
// }
// else
// {
// ShowNotify("请选择焊材类型!", MessageBoxIcon.Warning);
// return;
// }
//}
//else
//{
// ShowNotify("请选择施工号!", MessageBoxIcon.Warning);
// return;
//}
}
#endregion
protected void btnPrint2_Click(object sender, EventArgs e)
{
string projectId = this.CurrUser.LoginProjectId;
if (!string.IsNullOrEmpty(projectId))
{
//var project = BLL.Base_ProjectService.GetProjectByProjectId(projectId);
//string varValue = project.ProjectCode + "|" + project.ProjectName;
//varValue = HttpUtility.UrlEncodeUnicode(varValue);
//string replaceParameter = projectId;
//if (txtStarTime.Text != string.Empty)
//{
// replaceParameter = replaceParameter + "|" + txtStarTime.Text.Trim();
//}
//else
//{
// replaceParameter = replaceParameter + "|" + "NULL";
//}
//if (this.txtEndTime.Text != string.Empty)
//{
// replaceParameter = replaceParameter + "|" + txtEndTime.Text.Trim();
//}
//else
//{
// replaceParameter = replaceParameter + "|" + "NULL";
//}
string window = String.Format("ReleaseRecoveryPrint.aspx?projectId={0}&&startDate={1}&&endDate={2}", projectId, this.txtStarTime.Text.Trim(), this.txtEndTime.Text.Trim(), "编辑 - ");
PageContext.RegisterStartupScript(Window1.GetShowReference(window));
}
else
{
ShowNotify("请选择施工号!", MessageBoxIcon.Warning);
return;
}
}
}
}