From 5bcbd8a2f0c951b6a279088aa3a31fc5046a2c4f Mon Sep 17 00:00:00 2001 From: liyh Date: Sat, 11 May 2024 15:25:15 +0800 Subject: [PATCH 01/10] iiui --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 0623f6c..e82d945 100644 --- a/.gitignore +++ b/.gitignore @@ -5731,3 +5731,4 @@ HJGLPackFile/版本日志/HJGLDB_2024.05.02.sql /HJGL/FineUIPro.Web/File/Excel /HJGLPackFile/PackFile /HJGL/.vs/HJGL/v17/.suo +/CreateModel2017.bat From a8a0d6142f502162799c766e274ff5dad1b97d12 Mon Sep 17 00:00:00 2001 From: liyh Date: Sun, 12 May 2024 10:16:07 +0800 Subject: [PATCH 02/10] 111 --- .../WeldingProcess/PMI/PMIDetectionEntry.aspx | 177 +++++++++++ .../PMI/PMIDetectionEntry.aspx.cs | 298 ++++++++++++++++++ .../PMI/PMIDetectionEntry.aspx.designer.cs | 251 +++++++++++++++ 3 files changed, 726 insertions(+) create mode 100644 HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx create mode 100644 HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx.cs create mode 100644 HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx.designer.cs diff --git a/HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx b/HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx new file mode 100644 index 0000000..79410dd --- /dev/null +++ b/HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx @@ -0,0 +1,177 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="PMIDetectionEntry.aspx.cs" Inherits="FineUIPro.Web.WeldingProcess.PMI.PMIDetectionEntry" %> + + + + + + + PMI检测录入 + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx.cs b/HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx.cs new file mode 100644 index 0000000..92ae0a2 --- /dev/null +++ b/HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx.cs @@ -0,0 +1,298 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Data.SqlClient; +using System.Linq; +using BLL; +using System.Web; +using System.Collections; +using Model; +using static System.Windows.Forms.VisualStyles.VisualStyleElement; + +namespace FineUIPro.Web.WeldingProcess.PMI +{ + public partial class PMIDetectionEntry : PageBase + { + #region 定义项 + /// + /// 检测单主键 + /// + public string PMIID + { + get + { + return (string)ViewState["PMIID"]; + } + set + { + ViewState["PMIID"] = value; + } + } + #endregion + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + this.txtNDEDateMonth.Text = string.Format("{0:yyyy-MM}", DateTime.Now); + this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString(); + this.PMIID = string.Empty; + this.InitTreeMenu();//加载树 + } + } + + #region 加载树 + /// + /// 加载树 + /// + private void InitTreeMenu() + { + if (!string.IsNullOrEmpty(this.txtNDEDateMonth.Text.Trim())) + { + DateTime startTime = Convert.ToDateTime(this.txtNDEDateMonth.Text.Trim() + "-01"); + DateTime endTime = startTime.AddMonths(1); + this.tvControlItem.Nodes.Clear(); + List units = new List(); + Model.Project_Unit pUnit = BLL.Project_UnitService.GetProject_UnitByProjectIdUnitId(this.CurrUser.LoginProjectId, this.CurrUser.UnitId); + if (pUnit == null || pUnit.UnitType == BLL.Const.UnitType_1 || pUnit.UnitType == BLL.Const.UnitType_2 + || pUnit.UnitType == BLL.Const.UnitType_3 || pUnit.UnitType == BLL.Const.UnitType_4 + || pUnit.UnitType == BLL.Const.UnitType_6) + { + units = (from x in Funs.DB.Base_Unit + join y in Funs.DB.Project_Unit on x.UnitId equals y.UnitId + where y.ProjectId == this.CurrUser.LoginProjectId && y.UnitType.Contains(BLL.Const.UnitType_5) + select x).ToList(); + } + else + { + units.Add(BLL.Base_UnitService.GetUnit(this.CurrUser.UnitId)); + } + if (units != null) + { + foreach (var unit in units) + { + TreeNode newNode = new TreeNode();//定义根节点 + newNode.Text = unit.UnitName; + newNode.NodeID = unit.UnitId; + newNode.Expanded = true; + newNode.ToolTip = "Unit"; + this.tvControlItem.Nodes.Add(newNode); + this.BindNodes(newNode); + } + } + else + { + Alert.ShowInTop(Resources.Lan.PleaseAddUnitFirst, MessageBoxIcon.Warning); + } + } + else + { + Alert.ShowInTop(Resources.Lan.PleaseSelectTrustMonth, MessageBoxIcon.Warning); + } + } + + /// + /// 绑定树节点 + /// + /// + private void BindNodes(TreeNode node) + { + if (node.ToolTip == "Unit") + { + ///装置 + var install = (from x in Funs.DB.Project_Installation + join y in Funs.DB.PMI_Delegation on x.InstallationId equals y.InstallationId + where y.UnitId == node.NodeID && x.ProjectId == this.CurrUser.LoginProjectId + orderby x.InstallationCode + select x).Distinct(); + foreach (var q in install) + { + TreeNode newNode = new TreeNode(); + newNode.Text = q.InstallationName; + newNode.NodeID = q.InstallationId + "|" + node.NodeID; + newNode.ToolTip = "Installation"; + node.Nodes.Add(newNode); + BindNodes(newNode); + } + } + else if (node.ToolTip == "Installation") + { + string[] unitAndInstallationArr= node.NodeID.Split('|'); + var ndt = from x in Funs.DB.PMI_Delegation where x.UnitId == unitAndInstallationArr[1] + && x.InstallationId == unitAndInstallationArr[0] + && x.ProjectId == this.CurrUser.LoginProjectId select x; + foreach (var q in ndt) + { + + TreeNode newNode = new TreeNode(); + newNode.Text = q.DelegationNo; + newNode.NodeID = q.Id; + newNode.ToolTip = "DelegationNo"; + newNode.EnableClickEvent = true; + node.Nodes.Add(newNode); + BindNodes(newNode); + } + } + } + #endregion + + #region 点击TreeView + /// + /// 点击TreeView + /// + /// + /// + protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e) + { + this.PMIID = tvControlItem.SelectedNodeID; + this.hdPMIId.Text = this.PMIID; + this.BindGrid(); + } + #endregion + + #region 数据绑定 + protected void TextBox_TextChanged(object sender, EventArgs e) + { + this.BindGrid(); + } + + /// + /// 数据绑定 + /// + private void BindGrid() + { + if (!string.IsNullOrWhiteSpace(this.hdPMIId.Text) && this.tvControlItem.SelectedNode.ToolTip == "DelegationNo") + { + this.SetTextTemp(); + this.PageInfoLoad(); ///页面输入提交信息 + + } + } + + #region 加载页面输入提交信息 + /// + /// 加载页面输入提交信息 + /// + private void PageInfoLoad() + { + this.SimpleForm1.Reset(); ///重置所有字段 + var pageInfo = (from x in Funs.DB.PMI_Delegation + join y in Funs.DB.Base_Unit on x.UnitId equals y.UnitId + join n in Funs.DB.Project_Installation on x.InstallationId equals n.InstallationId + join u in Funs.DB.Sys_User on x.DetectionStandard equals u.UserId into u1 //左连接查询 + from u in u1.DefaultIfEmpty() + where x.Id==hdPMIId.Text + select new { DelegationNo=x.DelegationNo, + DelegationDate=x.DelegationDate, + InstallationName=n.InstallationName, + UnitName=y.UnitName, + DetectionMethod="待定", + Tabler=x.Tabler, + Remark=x.Remark, + }).ToList(); + if (pageInfo.Count>0) + { + this.txtDelegationNo.Text = pageInfo[0].DelegationNo; + this.txtDelegationDate.Text = pageInfo[0].DelegationDate.ToString(); + this.txtInstallationName.Text = pageInfo[0].InstallationName; + this.txtUnitName.Text = pageInfo[0].UnitName; + this.txtDetectionMethod.Text = pageInfo[0].DetectionMethod; + this.txtTabler.Text = pageInfo[0].Tabler; + this.txtRemark.Text = pageInfo[0].Remark; + } + } + #endregion + + /// + /// 清空 + /// + private void SetTextTemp() + { + this.txtDelegationNo.Text = string.Empty; + this.txtDelegationDate.Text = string.Empty; + this.txtInstallationName.Text = string.Empty; + this.txtUnitName.Text = string.Empty; + this.txtDetectionMethod.Text = string.Empty; + this.txtTabler.Text = string.Empty; + this.txtRemark.Text = string.Empty; + } + #endregion + + #region 分页排序 + #region 页索引改变事件 + /// + /// 页索引改变事件 + /// + /// + /// + protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) + { + BindGrid(); + } + #endregion + + #region 排序 + /// + /// 排序 + /// + /// + /// + protected void Grid1_Sort(object sender, GridSortEventArgs e) + { + BindGrid(); + } + #endregion + + #region 分页选择下拉改变事件 + /// + /// 分页选择下拉改变事件 + /// + /// + /// + protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) + { + Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); + BindGrid(); + } + #endregion + #endregion + + #region 关闭弹出窗口及刷新页面 + + /// + /// 查询 + /// + /// + /// + protected void Tree_TextChanged(object sender, EventArgs e) + { + this.InitTreeMenu(); + //this.BindGrid(); + } + #endregion + + #region 格式化字符串 + /// + /// 获取缺陷 + /// + /// + /// + protected string ConvertCheckDefects(object CheckDefects) + { + string str = string.Empty; + if (CheckDefects != null) + { + HttpCookie lanCookie = Request.Cookies["SelectLan"]; + if (lanCookie["lan"] == "zh-CN") //中文 + { + str = BLL.Base_DefectService.GetDefectNameStrByDefectIdStr(CheckDefects.ToString()); + } + else + { + str = BLL.Base_DefectService.GetDefectEngNameStrByDefectIdStr(CheckDefects.ToString()); + } + } + return str; + } + #endregion + } +} \ No newline at end of file diff --git a/HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx.designer.cs b/HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx.designer.cs new file mode 100644 index 0000000..76a035a --- /dev/null +++ b/HJGL/FineUIPro.Web/WeldingProcess/PMI/PMIDetectionEntry.aspx.designer.cs @@ -0,0 +1,251 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.WeldingProcess.PMI +{ + + + public partial class PMIDetectionEntry + { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// Panel1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel1; + + /// + /// panelLeftRegion 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel panelLeftRegion; + + /// + /// Toolbar1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar1; + + /// + /// txtNDEDateMonth 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DatePicker txtNDEDateMonth; + + /// + /// Toolbar5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar5; + + /// + /// txtSearchCode 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtSearchCode; + + /// + /// tvControlItem 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Tree tvControlItem; + + /// + /// panelCenterRegion 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel panelCenterRegion; + + /// + /// Toolbar2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar2; + + /// + /// hdPMIId 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.HiddenField hdPMIId; + + /// + /// ToolbarFill1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarFill ToolbarFill1; + + /// + /// SimpleForm1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form SimpleForm1; + + /// + /// txtDelegationNo 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label txtDelegationNo; + + /// + /// txtDelegationDate 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label txtDelegationDate; + + /// + /// txtInstallationName 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label txtInstallationName; + + /// + /// txtUnitName 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label txtUnitName; + + /// + /// txtDetectionMethod 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label txtDetectionMethod; + + /// + /// txtDetectionStandard 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label txtDetectionStandard; + + /// + /// txtTabler 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label txtTabler; + + /// + /// txtRemark 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label txtRemark; + + /// + /// Grid1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid1; + + /// + /// ToolbarSeparator1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1; + + /// + /// ToolbarText1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarText ToolbarText1; + + /// + /// ddlPageSize 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList ddlPageSize; + } +} From 8929edac2c4ffe6562b1407c1874f54dbb9826d7 Mon Sep 17 00:00:00 2001 From: liyh Date: Sun, 12 May 2024 10:16:13 +0800 Subject: [PATCH 03/10] 111 --- HJGL/.vs/HJGL/config/applicationhost.config | 4 +-- HJGL/.vs/HJGL/v17/.suo | Bin 1040896 -> 976896 bytes HJGL/FineUIPro.Web/FineUIPro.Web.csproj.user | 5 ++- HJGL/FineUIPro.Web/Web.config | 2 +- .../WeldingReport/WeldDailyExport.aspx.cs | 30 +++++++++--------- 5 files changed, 20 insertions(+), 21 deletions(-) diff --git a/HJGL/.vs/HJGL/config/applicationhost.config b/HJGL/.vs/HJGL/config/applicationhost.config index b8c8efa..9292fa5 100644 --- a/HJGL/.vs/HJGL/config/applicationhost.config +++ b/HJGL/.vs/HJGL/config/applicationhost.config @@ -162,7 +162,7 @@ - + @@ -250,7 +250,7 @@ - + diff --git a/HJGL/.vs/HJGL/v17/.suo b/HJGL/.vs/HJGL/v17/.suo index 6d6b55e792c4adb36c1ff3aa87691ece3f9d6fbc..c5ac5e85f777581e23a57ea73fb707a4c771292c 100644 GIT binary patch delta 75315 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 R?0nq;+X?vxC(j{S{vQm5?#KWD diff --git a/HJGL/FineUIPro.Web/FineUIPro.Web.csproj.user b/HJGL/FineUIPro.Web/FineUIPro.Web.csproj.user index 6f3d27a..8d0cdf2 100644 --- a/HJGL/FineUIPro.Web/FineUIPro.Web.csproj.user +++ b/HJGL/FineUIPro.Web/FineUIPro.Web.csproj.user @@ -15,9 +15,8 @@ - - - CurrentPage + Login.aspx + SpecificPage True False False diff --git a/HJGL/FineUIPro.Web/Web.config b/HJGL/FineUIPro.Web/Web.config index baa8804..9ecdad1 100644 --- a/HJGL/FineUIPro.Web/Web.config +++ b/HJGL/FineUIPro.Web/Web.config @@ -9,7 +9,7 @@

- + diff --git a/HJGL/FineUIPro.Web/WeldingProcess/WeldingReport/WeldDailyExport.aspx.cs b/HJGL/FineUIPro.Web/WeldingProcess/WeldingReport/WeldDailyExport.aspx.cs index 6c475bd..c0d8937 100644 --- a/HJGL/FineUIPro.Web/WeldingProcess/WeldingReport/WeldDailyExport.aspx.cs +++ b/HJGL/FineUIPro.Web/WeldingProcess/WeldingReport/WeldDailyExport.aspx.cs @@ -291,32 +291,32 @@ namespace FineUIPro.Web.WeldingProcess.WeldingReport ws.GetRow(rowIndex + 2).GetCell(19).SetCellValue("Remark"); ws.GetRow(rowIndex).Height = 69 * 20; - ws.GetRow(rowIndex + 1).Height = 12 * 20; - ws.GetRow(rowIndex + 2).Height = 24 * 20; + ws.GetRow(rowIndex + 1).Height = 15 * 20; + ws.GetRow(rowIndex + 2).Height = 30 * 20; ws.SetColumnWidth(0, 4 * 256); ws.SetColumnWidth(1, (int)(22.67 * 256)); ws.SetColumnWidth(2, (int)(9.78 * 256)); - ws.SetColumnWidth(3, (int)(6.78 * 256)); + ws.SetColumnWidth(3, (int)(5.33 * 256)); ws.SetColumnWidth(4, (int)(7.67 * 256)); ws.SetColumnWidth(5, (int)(8.33 * 256)); - ws.SetColumnWidth(6, (int)(6.33 * 256)); - ws.SetColumnWidth(7, (int)(9.11 * 256)); + ws.SetColumnWidth(6, (int)(4.42 * 256)); + ws.SetColumnWidth(7, (int)(10.82 * 256)); ws.SetColumnWidth(8, (int)(8.33 * 256)); ws.SetColumnWidth(9, (int)(8.40 * 256)); ws.SetColumnWidth(10, (int)(15.67 * 256)); - ws.SetColumnWidth(11, (int)(11.67 * 256)); + ws.SetColumnWidth(11, (int)(12 * 256)); ws.SetColumnWidth(12, (int)(8.22 * 256)); ws.SetColumnWidth(13, (int)(16.33 * 256)); - ws.SetColumnWidth(14, (int)(11.22 * 256)); - ws.SetColumnWidth(15, (int)(10.44 * 256)); - ws.SetColumnWidth(16, (int)(5.56 * 256)); - ws.SetColumnWidth(17, (int)(5.56 * 256)); - ws.SetColumnWidth(18, (int)(7.89 * 256)); + ws.SetColumnWidth(14, (int)(11.45 * 256)); + ws.SetColumnWidth(15, (int)(11.00 * 256)); + ws.SetColumnWidth(16, (int)(4.00 * 256)); + ws.SetColumnWidth(17, (int)(4.00 * 256)); + ws.SetColumnWidth(18, (int)(9.00 * 256)); ws.SetColumnWidth(19, (int)(9.33 * 256)); #endregion - - const int pageSize = 64; + + const int pageSize = 67; DataTable dt = GetDataTable(); var style3 = CommonPrint.SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Center, NPOI.SS.UserModel.HorizontalAlignment.Center, 9, false, false, "sans-serif"); @@ -370,7 +370,7 @@ namespace FineUIPro.Web.WeldingProcess.WeldingReport var distinctWelder = dt.AsEnumerable().GroupBy(row => row.Field("WelderCode")).Select(group => group.First()); decimal sumSize = decimal.Parse(dt.Compute("sum(Size)", "").ToString()); - ws.GetRow(dt.Rows.Count + 3).GetCell(0).SetCellValue("合计"); + ws.GetRow(dt.Rows.Count + 3).GetCell(0).SetCellValue("Total"); ws.GetRow(dt.Rows.Count + 3).GetCell(1).SetCellValue($"{distinctPipelineCode.Count().ToString()}"); ws.GetRow(dt.Rows.Count + 3).GetCell(3).SetCellValue($"{dt.Rows.Count}"); ws.GetRow(dt.Rows.Count + 3).GetCell(6).SetCellValue($"{sumSize}"); @@ -382,7 +382,7 @@ namespace FineUIPro.Web.WeldingProcess.WeldingReport #region 页脚部分 IFooter footer = ws.Footer; - string str = "CC7: 监理: Worley:"; + string str = " CC7: 监理: Worley:"; str += "\n\n第 &P 页,共 &N 页"; footer.Center = str; From cd0275d2bc7c87e179867036b8055225203265fe Mon Sep 17 00:00:00 2001 From: shecs <408299694@qq.com> Date: Sun, 12 May 2024 10:29:59 +0800 Subject: [PATCH 04/10] 11 --- DataBase/版本日志/HJGLDB_2024.05.12.sql | 206 +++++++++++++ HJGL/.vs/HJGL/v17/.suo | Bin 1040896 -> 1281024 bytes .../File/Excel/JointComprehensive.xlsx | Bin 9777 -> 9842 bytes HJGL/FineUIPro.Web/FineUIPro.Web.csproj.user | 5 +- .../WeldingManage/JointInfo.aspx.cs | 23 +- .../WeldingManage/WeldReport.aspx | 283 ++++++++---------- .../WeldingManage/WeldReport.aspx.cs | 269 +++++++++-------- .../WeldingManage/WeldReport.aspx.designer.cs | 118 +++----- .../WeldingReport/JointComprehensive.aspx | 10 + .../WeldingReport/JointComprehensive.aspx.cs | 172 ++++++----- .../WebApi.csproj.AssemblyReference.cache | Bin 42852 -> 32130 bytes 11 files changed, 634 insertions(+), 452 deletions(-) create mode 100644 DataBase/版本日志/HJGLDB_2024.05.12.sql diff --git a/DataBase/版本日志/HJGLDB_2024.05.12.sql b/DataBase/版本日志/HJGLDB_2024.05.12.sql new file mode 100644 index 0000000..c62f498 --- /dev/null +++ b/DataBase/版本日志/HJGLDB_2024.05.12.sql @@ -0,0 +1,206 @@ + +ALTER VIEW [dbo].[View_Pipeline_WeldJoint] +AS +/************Ϣͼ*****************/ +SELECT WeldJoint.WeldJointId, +WeldJoint.ProjectId, +WeldJoint.PipelineId, +WeldJoint.WeldJointCode, +dbo.Fun_GetParseInt(WeldJoint.WeldJointCode) AS ConvertWeldJoint, +WeldJoint.WeldTypeId, +WeldJoint.Material1Id, +WeldJoint.Material2Id, +WeldJoint.ANSISCH, +WeldJoint.Thickness, +WeldJoint.Dia, +WeldJoint.Size, +WeldJoint.JointAttribute, +WeldJoint.JointArea, +WeldJoint.WeldingMethodId, +WeldJoint.IsHotProess, +WeldJoint.WeldingLocationId, +WeldJoint.WeldMatId, +WeldJoint.WeldSilkId, +WeldJoint.GrooveTypeId, +WeldJoint.PipeSegment, +WeldJoint.PipeAssembly1Id, +WeldJoint.PipeAssembly2Id, +WeldJoint.PipeAssemblyCount, +WeldJoint.HeartNo1, +WeldJoint.HeartNo2, +WeldJoint.LastTemp, +WeldJoint.CellTemp, +WeldJoint.PrepareTemp, +WeldJoint.Electricity, +WeldJoint.SystemNumber, +WeldJoint.Remark, +WeldJoint.DoneDin, +WeldJoint.Voltage, +WeldJoint.TestPackageNo, +WeldJoint.WeldingDailyCode, +WeldJoint.WeldingDailyId, +WeldJoint.BackingWelderId, +WeldJoint.CoverWelderId, +WeldJoint.PipingClassId, +WeldJoint.Specification, +WeldJoint.CancelResult, +Project.ProjectCode, +Project.ProjectName, +Pipeline.PipelineCode, +Pipeline.InstallationId, +Pipeline.UnitId, +Pipeline.SingleNumber, +Pipeline.WorkAreaId, +WeldType.WeldTypeCode, +Material1.MaterialCode AS Material1Code, +Material2.MaterialCode AS Material2Code, +WeldingMethod.WeldingMethodCode, +WeldingLocation.WeldingLocationCode, +WeldMat.ConsumablesCode AS WeldMatCode, +--WeldSilk.ConsumablesCode AS WeldSilkCode, +'' AS WeldSilkCode, +GrooveType.GrooveTypeCode, +CASE WHEN WeldJoint.WeldingDailyId IS NULL THEN '' ELSE '' END AS Is_hjName, +CASE WHEN WeldJoint.IsHotProess=1 THEN '' ELSE '' END AS IsHotProessStr, +Components1.ComponentsCode AS ComponentsCode1, +Components2.ComponentsCode AS ComponentsCode2, +BackingWelder.WelderCode AS BackingWelderCode, +BackingWelder.WelderName AS BackingWelderName, +CoverWelder.WelderCode AS CoverWelderCode, +CoverWelder.WelderName AS CoverWelderName, +(CASE WHEN CoverWelder.WelderCode IS NOT NULL AND BackingWelder.WelderCode IS NOT NULL + THEN CoverWelder.WelderCode + '/' + BackingWelder.WelderCode + ELSE (ISNULL(CoverWelder.WelderCode,'') + ISNULL(BackingWelder.WelderCode,'')) END) AS WelderCode, -- + (CASE WHEN Material1.MaterialCode IS NOT NULL AND Material2.MaterialCode IS NOT NULL + THEN Material1.MaterialCode + '/' + Material2.MaterialCode + ELSE (ISNULL(Material1.MaterialCode,'') + ISNULL(Material2.MaterialCode,'')) END) AS MaterialCode, -- +pipingClass.PipingClassCode,pip.PIPClassCode, +CONVERT(VARCHAR(100), WeldingDaily.WeldingDate, 23) AS WeldingDate, +WeldJoint.IsCancel, +WeldJoint.IsGoldJoint, +WeldJoint.WPQId,wps.WPQCode, +WeldJoint.DetectionType, +WeldJoint.PageNum +FROM Pipeline_WeldJoint AS WeldJoint +LEFT JOIN Base_Project AS Project ON Project.ProjectId=WeldJoint.ProjectId +LEFT JOIN Pipeline_Pipeline AS Pipeline ON Pipeline.PipelineId = WeldJoint.PipelineId +LEFT JOIN Base_WeldType AS WeldType ON WeldType.WeldTypeId=WeldJoint.WeldTypeId +LEFT JOIN Base_Material AS Material1 ON Material1.MaterialId = WeldJoint.Material1Id +LEFT JOIN Base_Material AS Material2 ON Material2.MaterialId = WeldJoint.Material2Id +LEFT JOIN Base_WeldingMethod AS WeldingMethod ON WeldingMethod.WeldingMethodId=WeldJoint.WeldingMethodId +LEFT JOIN Base_WeldingLocation AS WeldingLocation ON WeldingLocation.WeldingLocationId=WeldJoint.WeldingLocationId +LEFT JOIN Base_Consumables AS WeldMat ON WeldMat.ConsumablesId=WeldJoint.WeldMatId +--LEFT JOIN Base_Consumables AS WeldSilk ON WeldSilk.ConsumablesId=WeldJoint.WeldSilkId +LEFT JOIN Base_GrooveType AS GrooveType ON GrooveType.GrooveTypeId=WeldJoint.GrooveTypeId +LEFT JOIN Base_Components AS Components1 ON Components1.ComponentsId = WeldJoint.PipeAssembly1Id +LEFT JOIN Base_Components AS Components2 ON Components2.ComponentsId = WeldJoint.PipeAssembly2Id +LEFT JOIN Welder_Welder AS BackingWelder ON BackingWelder.WelderId=WeldJoint.BackingWelderId +LEFT JOIN Welder_Welder AS CoverWelder ON CoverWelder.WelderId=WeldJoint.CoverWelderId +LEFT JOIN Pipeline_WeldingDaily AS WeldingDaily ON WeldingDaily.WeldingDailyId=WeldJoint.WeldingDailyId +LEFT JOIN Base_PipingClass AS pipingClass ON pipingClass.PipingClassId=WeldJoint.PipingClassId +LEFT JOIN dbo.Base_PIPClass pip ON pip.PIPClassId = Pipeline.PIPClassId +LEFT JOIN dbo.WPQ_WPQList wps ON wps.WPQId=WeldJoint.WPQId + + + +GO + + + + +ALTER PROC [dbo].[sp_rpt_JointComprehensive] + @projectId NVARCHAR(50), + @workAreaId NVARCHAR(50)=NULL, + @pipelineIds NVARCHAR(MAX) = NULL + +AS +/**********ۺϢ**********/ +SELECT + weldJoint.WeldJointId, + weldJoint.ProjectId, + WorkArea.WorkAreaId, + WorkArea.WorkAreaCode, + weldJoint.SystemNumber, + weldJoint.TestPackageNo, + pipeline.SingleNumber, + pipeline.PipelineCode, + pipeline.DrawingsNum, + pipingClass.PipingClassCode,pip.PIPClassCode, + weldJoint.PageNum, + weldJoint.PipeSegment,--ܶ + weldJoint.WeldJointCode, + weldType.WeldTypeCode, + weldJoint.JointAttribute, + wl.WeldingLocationCode, + weldJoint.Dia, + weldJoint.Thickness,--ں + weldJoint.HeartNo1, + weldJoint.HeartNo2, + com1.ComponentsName AS PipeAssembly1, + com2.ComponentsName AS PipeAssembly2, + --material.MaterialCode, + mat1.MaterialCode AS MaterialCode1, + mat2.MaterialCode AS MaterialCode2, + cw.WelderCode AS CoverWelderCode, + fw.WelderCode AS BackingWelderCode, + WeldMethod.WeldingMethodName, + medium.MediumName, + weldingDaily.WeldingDate, + weldingDaily.WeldingDailyCode, + trust.TrustBatchCode, + --TrustBatchCode.DetectionRateCode, + --TrustBatchCode.AcceptLevel, + (CASE WHEN weldJoint.IsHotProess=1 THEN '' ELSE '' END) AS IsHotProess, + null as TrustBatchCode, + null as DetectionRateCode, + null as AcceptLevel, + nde.NDEDate AS CHT_CHECKDATE, + ndeItem.NDEReportNo, + CAST(CAST(ISNULL(weldJoint.Size,0) AS REAL) AS NVARCHAR(8)) AS JOT_Size, + WeldMaterialMat.ConsumablesCode AS WMT_MatCode, + WeldMaterialMat.ConsumablesName AS WMT_Matname, + weldJoint.WeldSilkId, + --WeldMaterialSilk.ConsumablesCode AS hsCode, + --WeldMaterialSilk.ConsumablesName AS hsname, + --WeldMaterialSilk.UserFlux, + weldJoint.Specification, + wps.WPQCode,ndttype.DetectionTypeCode,NULL AS HotReportCode, + (CASE WHEN (PointBatchItem.PointState='1' OR PointBatchItem.PointState='2') + THEN (CASE WHEN PointBatchItem.IsWelderFirst=1 THEN '' ELSE '' END) ELSE '' END) AS if_dk +FROM Pipeline_WeldJoint AS weldJoint + LEFT JOIN Pipeline_Pipeline AS pipeline ON pipeline.PipelineId = weldJoint.PipelineId + LEFT JOIN Project_WorkArea AS WorkArea ON WorkArea.WorkAreaId = pipeline.WorkAreaId + LEFT JOIN Base_Material AS mat1 ON mat1.MaterialId = weldJoint.Material1Id + LEFT JOIN Base_Material AS mat2 ON mat2.MaterialId = weldJoint.Material2Id + LEFT JOIN Base_WeldingMethod AS WeldMethod ON WeldMethod.WeldingMethodId = weldJoint.WeldingMethodId + LEFT JOIN dbo.Base_WeldType weldType ON weldType.WeldTypeId = weldJoint.WeldTypeId + LEFT JOIN dbo.Base_WeldingLocation wl ON wl.WeldingLocationId = weldJoint.WeldingLocationId + LEFT JOIN Base_Medium AS medium ON medium.MediumId = pipeline.MediumId + LEFT JOIN Base_Components com1 ON com1.ComponentsId=weldJoint.PipeAssembly1Id + LEFT JOIN Base_Components com2 ON com2.ComponentsId=weldJoint.PipeAssembly2Id + LEFT JOIN Base_PipingClass AS pipingClass ON pipingClass.PipingClassId=WeldJoint.PipingClassId + LEFT JOIN dbo.Base_PIPClass pip ON pip.PIPClassId = Pipeline.PIPClassId + LEFT JOIN Pipeline_WeldingDaily AS weldingDaily ON weldingDaily.WeldingDailyId = weldJoint.WeldingDailyId + LEFT JOIN dbo.WPQ_WPQList wps ON wps.WPQId = weldJoint.WPQId + left join Welder_Welder AS fw on weldJoint.BackingWelderId = fw.WelderId + left join Welder_Welder AS cw on weldJoint.CoverWelderId = cw.WelderId + LEFT JOIN Base_Consumables AS WeldMaterialMat ON WeldMaterialMat.ConsumablesId =weldJoint.WeldMatId + --LEFT JOIN Base_Consumables AS WeldMaterialSilk ON WeldMaterialSilk.ConsumablesId =weldJoint.WeldSilkId + LEFT JOIN Batch_PointBatchItem AS PointBatchItem ON PointBatchItem.WeldJointId =weldJoint.WeldJointId + LEFT JOIN dbo.Batch_PointBatch point ON point.PointBatchId = PointBatchItem.PointBatchId + LEFT JOIN dbo.Base_DetectionType ndttype ON ndttype.DetectionTypeId = point.DetectionTypeId + LEFT JOIN dbo.Batch_BatchTrustItem trustItem ON trustItem.PointBatchItemId = PointBatchItem.PointBatchItemId + LEFT JOIN dbo.Batch_BatchTrust trust ON trust.TrustBatchId = trustItem.TrustBatchId + LEFT JOIN dbo.Batch_NDEItem ndeItem ON ndeItem.TrustBatchItemId = trustItem.TrustBatchItemId + LEFT JOIN dbo.Batch_NDE nde ON nde.NDEID = ndeItem.NDEID + + WHERE weldJoint.ProjectId=@projectId + AND(pipeline.WorkAreaId=@workAreaId OR @workAreaId IS NULL) + AND (CHARINDEX(weldJoint.PipelineId,@pipelineIds)>0 or @pipelineIds IS NULl) + --AND(pipeline.PipelineCode=@pipelineCode OR @pipelineCode IS NULl) + + GO + + + + diff --git a/HJGL/.vs/HJGL/v17/.suo b/HJGL/.vs/HJGL/v17/.suo index 1594d9ac213381115e1906f4984e1731b3e78513..d295d438d75197e2452d3e7925b54e8f9d561a18 100644 GIT binary patch delta 98787 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 diff --git a/HJGL/FineUIPro.Web/File/Excel/JointComprehensive.xlsx b/HJGL/FineUIPro.Web/File/Excel/JointComprehensive.xlsx index 7e6d7f71eb5b49ed67e9b5b804dd6b3ec7c15e64..9bb2609d120013809e3bc98a20b9afb302712c19 100644 GIT binary patch delta 3142 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 delta 3075 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 z02BZK00000000000001RlgK3}8wo>I2TcJ00BZsO01*HH00000000000000-lL{t2 R0?QziN+u!(n - - - CurrentPage + Login.aspx + SpecificPage True False False diff --git a/HJGL/FineUIPro.Web/WeldingProcess/WeldingManage/JointInfo.aspx.cs b/HJGL/FineUIPro.Web/WeldingProcess/WeldingManage/JointInfo.aspx.cs index 4d86810..6370c42 100644 --- a/HJGL/FineUIPro.Web/WeldingProcess/WeldingManage/JointInfo.aspx.cs +++ b/HJGL/FineUIPro.Web/WeldingProcess/WeldingManage/JointInfo.aspx.cs @@ -962,7 +962,14 @@ namespace FineUIPro.Web.WeldingProcess.WeldingManage } string ReportFileName = filePath + "管道焊接工作记录.xlsx"; - string sqlStr = @"SELECT WeldSilkId,PipelineId,WorkAreaId,a.ProjectName,a.WeldJointCode,a.Specification,a.Material1Code,a.WeldingMethodCode,a.WeldingDate,a.WeldSilkCode,a.WeldMatCode,a.BackingWelderCode,a.CoverWelderCode,a.IsHotProess,(case a.IsHotProess when 1 then '是' else '否' end) as IsHotProessName,PrepareTemp,WeldingLocationCode FROM View_Pipeline_WeldJoint as a WHERE 1= 1 AND PipelineId =@PipelineId and Is_hjName='是' "; + string sqlStr = @"SELECT WeldSilkId,PipelineId,WorkAreaId,a.ProjectName,a.WeldJointCode,a.Specification,a.Material1Code, + a.WeldingMethodCode,a.WeldingDate,a.WeldSilkCode,a.WeldMatCode,a.BackingWelderCode,a.CoverWelderCode, + a.IsHotProess,(case a.IsHotProess when 1 then '是' else '否' end) as IsHotProessName,PrepareTemp, + WeldingLocationCode,a.WeldTypeCode, + (SELECT TOP 1 n.NDEReportNo FROM dbo.Batch_NDEItem n WHERE n.TrustBatchItemId= + (SELECT TOP 1 bt.TrustBatchItemId FROM dbo.Batch_BatchTrustItem bt WHERE bt.WeldJointId=a.WeldJointId)) AS NDEReportNo + FROM View_Pipeline_WeldJoint as a + WHERE 1= 1 AND PipelineId =@PipelineId and Is_hjName='是' "; List listStr = new List(); listStr.Add(new SqlParameter("@PipelineId", this.tvControlItem.SelectedNodeID)); SqlParameter[] parameter = listStr.ToArray(); @@ -970,8 +977,8 @@ namespace FineUIPro.Web.WeldingProcess.WeldingManage var titleQuery = from a in Funs.DB.Pipeline_Pipeline join b in Funs.DB.Base_Project on a.ProjectId equals b.ProjectId - join c in Funs.DB.Base_Unit on a.UnitId equals c.UnitId - select new { a.PipelineId, a.PipelineCode, b.ProjectName, c.UnitName }; + join c in Funs.DB.Project_WorkArea on a.WorkAreaId equals c.WorkAreaId + select new { a.PipelineId, a.PipelineCode, b.EnProjectName, b.ProjectName, c.WorkAreaName, c.EnWorkAreaName }; var titleModel = titleQuery.FirstOrDefault(); if (titleModel != null && tb.Rows.Count > 0) { @@ -1030,19 +1037,19 @@ namespace FineUIPro.Web.WeldingProcess.WeldingManage //行1 region = new CellRangeAddress(rowIndex + 1, rowIndex + 1, 11, 14); ws.AddMergedRegion(region); - ws.GetRow(rowIndex + 1).GetCell(11).SetCellValue("Project Name:"); + ws.GetRow(rowIndex + 1).GetCell(11).SetCellValue($"Project Name:{titleModel.EnProjectName}"); ws.GetRow(rowIndex + 1).GetCell(11).CellStyle = CommonPrint.SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Center, HorizontalAlignment.Justify, 9, true, false); //行2 region = new CellRangeAddress(rowIndex + 2, rowIndex + 2, 11, 14); ws.AddMergedRegion(region); - ws.GetRow(rowIndex + 2).GetCell(11).SetCellValue($"单位工程名称:{titleModel.UnitName}"); + ws.GetRow(rowIndex + 2).GetCell(11).SetCellValue($"单位工程名称:{titleModel.WorkAreaName}"); ws.GetRow(rowIndex + 2).GetCell(11).CellStyle = CommonPrint.SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Center, HorizontalAlignment.Justify, 10, true, false); //行3 region = new CellRangeAddress(rowIndex + 3, rowIndex + 3, 11, 14); ws.AddMergedRegion(region); - ws.GetRow(rowIndex + 3).GetCell(11).SetCellValue("Unit Name:"); + ws.GetRow(rowIndex + 3).GetCell(11).SetCellValue($"Unit Name:{titleModel.EnWorkAreaName}"); ws.GetRow(rowIndex + 3).GetCell(11).CellStyle = CommonPrint.SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Center, HorizontalAlignment.Justify, 10, true, false); //画线 @@ -1140,7 +1147,7 @@ namespace FineUIPro.Web.WeldingProcess.WeldingManage //焊口编号 ws.GetRow(dataIndex).GetCell(1).SetCellValue(tb.Rows[i]["WeldJointCode"].ToString()); //焊接形式 - ws.GetRow(dataIndex).GetCell(3).SetCellValue(""); + ws.GetRow(dataIndex).GetCell(3).SetCellValue(tb.Rows[i]["WeldTypeCode"].ToString()); //焊工代号 List welderStr = new List(); if (!string.IsNullOrWhiteSpace(tb.Rows[i]["BackingWelderCode"].ToString())) @@ -1178,7 +1185,7 @@ namespace FineUIPro.Web.WeldingProcess.WeldingManage //焊接日期 ws.GetRow(dataIndex).GetCell(13).SetCellValue(tb.Rows[i]["WeldingDate"].ToString()); //无损检查报告 - ws.GetRow(dataIndex).GetCell(14).SetCellValue(""); + ws.GetRow(dataIndex).GetCell(14).SetCellValue(tb.Rows[i]["NDEReportNo"].ToString()); } rowIndex += tIndex; diff --git a/HJGL/FineUIPro.Web/WeldingProcess/WeldingManage/WeldReport.aspx b/HJGL/FineUIPro.Web/WeldingProcess/WeldingManage/WeldReport.aspx index b111b95..40f72f6 100644 --- a/HJGL/FineUIPro.Web/WeldingProcess/WeldingManage/WeldReport.aspx +++ b/HJGL/FineUIPro.Web/WeldingProcess/WeldingManage/WeldReport.aspx @@ -7,157 +7,134 @@
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +