ZHJA_HJGL/HJGL_ZH/FineUIPro.Web/Welder/WeldRecordIn.aspx.cs

516 lines
24 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.IO;
using System.Linq;
using System.Web;
using System.Data.SqlClient;
using System.Web.UI.WebControls;
using BLL;
namespace FineUIPro.Web.Welder
{
public partial class WeldRecordIn : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindGrid();
}
}
private void BindGrid()
{
string strSql = @"select R.*,W.WED_Code,W.IdentityCard,W.WED_Name
from WeldRecordIn R left join HJGL_BS_Welder W on R.WelderId=W.WED_ID where 1=1";
List<SqlParameter> listStr = new List<SqlParameter>();
if (!string.IsNullOrEmpty(this.txtWelderCode.Text.Trim()))
{
strSql += " AND W.WED_Code LIKE @WED_Code";
listStr.Add(new SqlParameter("@WED_Code", "%" + this.txtWelderCode.Text.Trim() + "%"));
}
if (!string.IsNullOrEmpty(this.txtWelderName.Text.Trim()))
{
strSql += " AND W.WED_Name LIKE @WED_Name";
listStr.Add(new SqlParameter("@WED_Name", "%" + this.txtWelderName.Text.Trim() + "%"));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
protected void btnFind_Click(object sender, EventArgs e)
{
this.BindGrid();
}
protected void btnOut_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.txtWelderName.Text.Trim()))
{
Alert.ShowInTop("请输入焊工姓名!", MessageBoxIcon.Warning);
return;
}
if (string.IsNullOrEmpty(this.txtYear.Text.Trim()))
{
Alert.ShowInTop("请选择年份!", MessageBoxIcon.Warning);
return;
}
string welderName = this.txtWelderName.Text.Trim();
Model.HJGL_BS_Welder welder = Funs.DB.HJGL_BS_Welder.FirstOrDefault(x => x.WED_Name == welderName);
string year = this.txtYear.Text.Trim();
DateTime startDate = Convert.ToDateTime(year + "-01-01");
DateTime endDate = Convert.ToDateTime(year + "-12-31");
DateTime endDate1 = Convert.ToDateTime(year + "-3-31");
DateTime startDate2 = Convert.ToDateTime(year + "-04-01");
DateTime endDate2 = Convert.ToDateTime(year + "-6-30");
DateTime startDate3 = Convert.ToDateTime(year + "-07-01");
DateTime endDate3 = Convert.ToDateTime(year + "-9-30");
DateTime startDate4 = Convert.ToDateTime(year + "-10-01");
var list = from x in Funs.DB.WeldRecordIn
join y in Funs.DB.HJGL_BS_Welder on x.WelderId equals y.WED_ID
where y.WED_Name == welderName && x.WeldingDate >= startDate && x.WeldingDate <= endDate
select x;
if (list.Count() > 0)
{
string varValue = string.Empty;
varValue = "特种设备焊接操作人员焊绩记录表(" + year + "年)" + "|" + welderName + "|" + welder.WED_Code + "|" + welder.IdentityCard;
var list1 = list.Where(x => x.WeldingDate >= startDate && x.WeldingDate <= endDate1);
var list2 = list.Where(x => x.WeldingDate >= startDate2 && x.WeldingDate <= endDate2);
var list3 = list.Where(x => x.WeldingDate >= startDate3 && x.WeldingDate <= endDate3);
var list4 = list.Where(x => x.WeldingDate >= startDate4 && x.WeldingDate <= endDate);
var record11 = list1.FirstOrDefault(x => x.WeldMothed == "GTAW");
if (record11 != null)
{
varValue += "|" + record11.QualifiedProjectCode + "|" + (record11.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record11.WeldingDate) : "") + "|" + record11.ProjectCode + "|" + record11.WeldJoint;
}
else
{
varValue += "||||";
}
var record12 = list1.FirstOrDefault(x => x.WeldMothed == "SMAW");
if (record12 != null)
{
varValue += "|" + record12.QualifiedProjectCode + "|" + (record12.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record12.WeldingDate) : "") + "|" + record12.ProjectCode + "|" + record12.WeldJoint;
}
else
{
varValue += "||||";
}
var record13 = list1.FirstOrDefault(x => x.WeldMothed == "GMAW" || x.WeldMothed == "FCAW");
if (record13 != null)
{
varValue += "|" + record13.QualifiedProjectCode + "|" + (record13.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record13.WeldingDate) : "") + "|" + record13.ProjectCode + "|" + record13.WeldJoint;
}
else
{
varValue += "||||";
}
var record14 = list1.FirstOrDefault(x => x.WeldMothed == "SAW");
if (record14 != null)
{
varValue += "|" + record14.QualifiedProjectCode + "|" + (record14.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record14.WeldingDate) : "") + "|" + record14.ProjectCode + "|" + record14.WeldJoint;
}
else
{
varValue += "||||";
}
var record15 = list1.FirstOrDefault(x => x.WeldMothed == "ESW");
if (record15 != null)
{
varValue += "|" + record15.QualifiedProjectCode + "|" + (record15.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record15.WeldingDate) : "") + "|" + record15.ProjectCode + "|" + record15.WeldJoint;
}
else
{
varValue += "||||";
}
var record21 = list2.FirstOrDefault(x => x.WeldMothed == "GTAW");
if (record21 != null)
{
varValue += "|" + record21.QualifiedProjectCode + "|" + (record21.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record21.WeldingDate) : "") + "|" + record21.ProjectCode + "|" + record21.WeldJoint;
}
else
{
varValue += "||||";
}
var record22 = list2.FirstOrDefault(x => x.WeldMothed == "SMAW");
if (record22 != null)
{
varValue += "|" + record22.QualifiedProjectCode + "|" + (record22.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record22.WeldingDate) : "") + "|" + record22.ProjectCode + "|" + record22.WeldJoint;
}
else
{
varValue += "||||";
}
var record23 = list2.FirstOrDefault(x => x.WeldMothed == "GMAW" || x.WeldMothed == "FCAW");
if (record23 != null)
{
varValue += "|" + record23.QualifiedProjectCode + "|" + (record23.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record23.WeldingDate) : "") + "|" + record23.ProjectCode + "|" + record23.WeldJoint;
}
else
{
varValue += "||||";
}
var record24 = list2.FirstOrDefault(x => x.WeldMothed == "SAW");
if (record24 != null)
{
varValue += "|" + record24.QualifiedProjectCode + "|" + (record24.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record24.WeldingDate) : "") + "|" + record24.ProjectCode + "|" + record24.WeldJoint;
}
else
{
varValue += "||||";
}
var record25 = list2.FirstOrDefault(x => x.WeldMothed == "ESW");
if (record25 != null)
{
varValue += "|" + record25.QualifiedProjectCode + "|" + (record25.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record25.WeldingDate) : "") + "|" + record25.ProjectCode + "|" + record25.WeldJoint;
}
else
{
varValue += "||||";
}
var record31 = list3.FirstOrDefault(x => x.WeldMothed == "GTAW");
if (record31 != null)
{
varValue += "|" + record31.QualifiedProjectCode + "|" + (record31.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record31.WeldingDate) : "") + "|" + record31.ProjectCode + "|" + record31.WeldJoint;
}
else
{
varValue += "||||";
}
var record32 = list3.FirstOrDefault(x => x.WeldMothed == "SMAW");
if (record32 != null)
{
varValue += "|" + record32.QualifiedProjectCode + "|" + (record32.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record32.WeldingDate) : "") + "|" + record32.ProjectCode + "|" + record32.WeldJoint;
}
else
{
varValue += "||||";
}
var record33 = list3.FirstOrDefault(x => x.WeldMothed == "GMAW" || x.WeldMothed == "FCAW");
if (record33 != null)
{
varValue += "|" + record33.QualifiedProjectCode + "|" + (record33.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record33.WeldingDate) : "") + "|" + record33.ProjectCode + "|" + record33.WeldJoint;
}
else
{
varValue += "||||";
}
var record34 = list3.FirstOrDefault(x => x.WeldMothed == "SAW");
if (record34 != null)
{
varValue += "|" + record34.QualifiedProjectCode + "|" + (record34.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record34.WeldingDate) : "") + "|" + record34.ProjectCode + "|" + record34.WeldJoint;
}
else
{
varValue += "||||";
}
var record35 = list3.FirstOrDefault(x => x.WeldMothed == "ESW");
if (record35 != null)
{
varValue += "|" + record35.QualifiedProjectCode + "|" + (record35.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record35.WeldingDate) : "") + "|" + record35.ProjectCode + "|" + record35.WeldJoint;
}
else
{
varValue += "||||";
}
var record41 = list4.FirstOrDefault(x => x.WeldMothed == "GTAW");
if (record41 != null)
{
varValue += "|" + record41.QualifiedProjectCode + "|" + (record41.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record41.WeldingDate) : "") + "|" + record41.ProjectCode + "|" + record41.WeldJoint;
}
else
{
varValue += "||||";
}
var record42 = list4.FirstOrDefault(x => x.WeldMothed == "SMAW");
if (record42 != null)
{
varValue += "|" + record42.QualifiedProjectCode + "|" + (record42.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record42.WeldingDate) : "") + "|" + record42.ProjectCode + "|" + record42.WeldJoint;
}
else
{
varValue += "||||";
}
var record43 = list4.FirstOrDefault(x => x.WeldMothed == "GMAW" || x.WeldMothed == "FCAW");
if (record43 != null)
{
varValue += "|" + record43.QualifiedProjectCode + "|" + (record43.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record43.WeldingDate) : "") + "|" + record43.ProjectCode + "|" + record43.WeldJoint;
}
else
{
varValue += "||||";
}
var record44 = list4.FirstOrDefault(x => x.WeldMothed == "SAW");
if (record44 != null)
{
varValue += "|" + record44.QualifiedProjectCode + "|" + (record44.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record44.WeldingDate) : "") + "|" + record44.ProjectCode + "|" + record44.WeldJoint;
}
else
{
varValue += "||||";
}
var record45 = list4.FirstOrDefault(x => x.WeldMothed == "ESW");
if (record45 != null)
{
varValue += "|" + record45.QualifiedProjectCode + "|" + (record45.WeldingDate != null ? string.Format("{0:yyyy-MM-dd}", record45.WeldingDate) : "") + "|" + record45.ProjectCode + "|" + record45.WeldJoint;
}
else
{
varValue += "||||";
}
varValue = HttpUtility.UrlEncodeUnicode(varValue);
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../Common/ReportPrint/ExReportPrint.aspx?ispop=1&reportId={0}&replaceParameter={1}&varValue={2}&projectId=0", BLL.Const.HGGL_WelderRecordReportId, string.Empty, varValue, "打印 - ")));
}
else
{
Alert.ShowInTop("该焊工在所选年份无焊工焊绩可导出!", MessageBoxIcon.Warning);
return;
}
}
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
}
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
protected void imgbtnImport_Click(object sender, EventArgs e)
{
if (GetButtonPower(Const.BtnIn))
{
try
{
if (this.FileExcel.HasFile == false)
{
Alert.ShowInTop("请您选择Excel文件", MessageBoxIcon.Warning);
return;
}
string IsXls = Path.GetExtension(FileExcel.FileName).ToString().Trim().ToLower();
if (IsXls != ".xls")
{
Alert.ShowInTop("只可以选择Excel文件");
return;
}
string rootPath = Server.MapPath("~/");
string initFullPath = rootPath + Const.ExcelUrl;
if (!Directory.Exists(initFullPath))
{
Directory.CreateDirectory(initFullPath);
}
string fileUrl = initFullPath + BLL.Funs.GetNewFileName() + IsXls;
this.FileExcel.PostedFile.SaveAs(fileUrl);
string oleDBConnString = String.Empty;
oleDBConnString = "Provider=Microsoft.Jet.OLEDB.4.0;";
oleDBConnString += "Data Source=";
oleDBConnString += fileUrl;
oleDBConnString += ";Extended Properties=Excel 8.0;";
OleDbConnection oleDBConn = null;
OleDbDataAdapter oleAdMaster = null;
DataTable m_tableName = new DataTable();
DataSet ds = new DataSet();
oleDBConn = new OleDbConnection(oleDBConnString);
oleDBConn.Open();
m_tableName = oleDBConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
if (m_tableName != null && m_tableName.Rows.Count > 0)
{
m_tableName.TableName = m_tableName.Rows[0]["TABLE_NAME"].ToString().Trim();
}
string sqlMaster;
sqlMaster = " SELECT * FROM [" + m_tableName.TableName + "]";
oleAdMaster = new OleDbDataAdapter(sqlMaster, oleDBConn);
oleAdMaster.SelectCommand.CommandTimeout = 3600;
oleAdMaster.Fill(ds, "m_tableName");
oleAdMaster.Dispose();
oleDBConn.Close();
oleDBConn.Dispose();
this.AddDatasetToSQL(ds.Tables[0]);
if (!string.IsNullOrEmpty(fileUrl) && System.IO.File.Exists(fileUrl))
{
System.IO.File.Delete(fileUrl);//删除上传的XLS文件
}
this.FileExcel.Reset();
}
catch (Exception ex)
{
ShowNotify(ex.Message, MessageBoxIcon.Warning);
return;
}
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!");
}
}
#region Dataset的数据导入数据库
/// <summary>
/// 将Dataset的数据导入数据库
/// </summary>
/// <param name="pds">数据集</param>
/// <param name="Cols">数据集列数</param>
/// <returns></returns>
private void AddDatasetToSQL(DataTable pds)
{
string errorInfos = string.Empty;
string result = string.Empty;
if (pds != null && pds.Rows.Count > 0)
{
int ir = pds.Rows.Count;
for (int i = 0; i < ir; i++)
{
string col0 = pds.Rows[i][0].ToString().Trim();//钢印号
string col1 = pds.Rows[i][1].ToString().Trim();//焊接方法
string col2 = pds.Rows[i][2].ToString().Trim();//合格项目代号
string col3 = pds.Rows[i][3].ToString().Trim();//焊接时间
string col4 = pds.Rows[i][4].ToString().Trim();//施焊产品
string col5 = pds.Rows[i][5].ToString().Trim();//焊缝编号
Model.WeldRecordIn NeweldRecord = new Model.WeldRecordIn();
var getWelder = Funs.DB.HJGL_BS_Welder.FirstOrDefault(x => x.WED_Code == col0);
if (getWelder != null)
{
if (getWelder.WED_IfOnGuard == false)
{
result += "第" + (i + 2).ToString() + "行," + "该焊工不在岗" + "|";
}
else if (getWelder.IsOAM == false)
{
result += "第" + (i + 2).ToString() + "行," + "该焊工不是从OA同步" + "|";
}
else
{
NeweldRecord.WelderId = getWelder.WED_ID;
NeweldRecord.WeldMothed = col1;
NeweldRecord.QualifiedProjectCode = col2;
if (!string.IsNullOrEmpty(col3.ToString()))
{
try
{
NeweldRecord.WeldingDate = Convert.ToDateTime(col3);
}
catch (Exception)
{
result += "第" + (i + 2).ToString() + "行," + "焊接时间格式有误!" + "|";
}
}
NeweldRecord.ProjectCode = col4;
NeweldRecord.WeldJoint = col5;
//var GetweldRecord = BLL.WeldRecordInService.GetWeldRecorByWelderId(NeweldRecord.WelderId);
//if (GetweldRecord == null)
//{
NeweldRecord.WeldRecordInId = SQLHelper.GetNewID(typeof(Model.WeldRecordIn));
BLL.WeldRecordInService.AddWeldRecor(NeweldRecord);
//}
//else
//{
// NeweldRecord.WeldRecordInId = GetweldRecord.WelderId;
// BLL.WeldRecordInService.UpdateWeldRecor(NeweldRecord);
//}
}
}
else
{
result += "第" + (i + 2).ToString() + "行," + "该焊工不存在于焊工表!" + "|";
}
}
this.BindGrid();
if (!string.IsNullOrEmpty(result))
{
errorInfos = "未成功数据:" + result.Substring(0, result.LastIndexOf("|"));
Alert.ShowInParent("数据已导入!" + errorInfos, MessageBoxIcon.Warning);
}
else
{
ShowNotify("数据导入成功!", MessageBoxIcon.Success);
}
}
else
{
ShowNotify("导入数据为空!", MessageBoxIcon.Success);
return;
}
}
#endregion
protected void imgbtnUpload_Click(object sender, EventArgs e)
{
string uploadfilepath = Server.MapPath("~/") + BLL.Const.WeldRecordInTemplateUrl;
string fileName = Path.GetFileName(BLL.Const.WeldRecordInTemplateUrl);
FileInfo info = new FileInfo(uploadfilepath);
if (info.Exists)
{
long fileSize = info.Length;
Response.Clear();
Response.ContentType = "application/x-zip-compressed";
Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.AddHeader("Content-Length", fileSize.ToString());
Response.TransmitFile(uploadfilepath, 0, fileSize);
Response.Flush();
Response.Close();
}
else
{
ShowNotify("文件不存在!", MessageBoxIcon.Warning);
}
}
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
if (GetButtonPower(Const.BtnDelete))
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var WeldRecord = BLL.WeldRecordInService.GetWeldRecorById(rowID);
if (WeldRecord != null)
{
BLL.WeldRecordInService.DeleteWeldRecorById(rowID);
ShowNotify("删除数据成功!(表格数据已重新绑定)");
}
}
BindGrid();
}
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!");
}
}
#region
/// <summary>
/// 获取按钮权限
/// </summary>
/// <param name="button"></param>
/// <returns></returns>
private bool GetButtonPower(string button)
{
return BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.WeldRecordInMenuId, button);
}
#endregion
}
}